summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--ChangeLog.pre-2-06
-rw-r--r--ChangeLog.pre-2-106
-rw-r--r--ChangeLog.pre-2-126
-rw-r--r--ChangeLog.pre-2-26
-rw-r--r--ChangeLog.pre-2-46
-rw-r--r--ChangeLog.pre-2-66
-rw-r--r--ChangeLog.pre-2-86
-rw-r--r--Makefile.am10
-rwxr-xr-xconfig.guess13
-rwxr-xr-xconfig.sub38
-rw-r--r--glib-config.in4
-rw-r--r--glib/Makefile.am10
-rw-r--r--gmodule/ChangeLog6
-rw-r--r--gmodule/Makefile.am22
-rwxr-xr-xltconfig303
-rw-r--r--ltmain.sh658
17 files changed, 665 insertions, 447 deletions
diff --git a/ChangeLog b/ChangeLog
index 038473474..fe05aa0c9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org>
* glib.h: explicitely include the prototypes for inline functions
diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0
index 038473474..fe05aa0c9 100644
--- a/ChangeLog.pre-2-0
+++ b/ChangeLog.pre-2-0
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org>
* glib.h: explicitely include the prototypes for inline functions
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index 038473474..fe05aa0c9 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org>
* glib.h: explicitely include the prototypes for inline functions
diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12
index 038473474..fe05aa0c9 100644
--- a/ChangeLog.pre-2-12
+++ b/ChangeLog.pre-2-12
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org>
* glib.h: explicitely include the prototypes for inline functions
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index 038473474..fe05aa0c9 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org>
* glib.h: explicitely include the prototypes for inline functions
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index 038473474..fe05aa0c9 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org>
* glib.h: explicitely include the prototypes for inline functions
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index 038473474..fe05aa0c9 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org>
* glib.h: explicitely include the prototypes for inline functions
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index 038473474..fe05aa0c9 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am glib-config.in l*: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org>
* glib.h: explicitely include the prototypes for inline functions
diff --git a/Makefile.am b/Makefile.am
index 3f1529c47..4c79cecce 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -17,9 +17,9 @@ EXTRA_DIST = \
# build . first, then SUBDIRS
all-recursive-am: all-am
-lib_LTLIBRARIES = libglib-1.1.la
+lib_LTLIBRARIES = libglib.la
-libglib_1_1_la_SOURCES = \
+libglib_la_SOURCES = \
garray.c \
gcache.c \
gcompletion.c \
@@ -46,12 +46,12 @@ include_HEADERS = \
configinclude_DATA = \
glibconfig.h
-libglib_1_1_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
-
+libglib_la_LDFLAGS = \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE)
INCLUDES = -I$(top_srcdir)
noinst_PROGRAMS = testglib
-testglib_LDADD = libglib-@LT_RELEASE@.la
+testglib_LDADD = libglib.la
m4datadir = $(datadir)/aclocal
m4data_DATA = glib.m4
diff --git a/config.guess b/config.guess
index 413ed41c0..30230b3df 100755
--- a/config.guess
+++ b/config.guess
@@ -1,6 +1,6 @@
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
+# Copyright (C) 1992, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -478,10 +478,10 @@ EOF
echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
i*:CYGWIN*:*)
- echo i386-pc-cygwin32
+ echo ${UNAME_MACHINE}-pc-cygwin32
exit 0 ;;
i*:MINGW*:*)
- echo i386-pc-mingw32
+ echo ${UNAME_MACHINE}-pc-mingw32
exit 0 ;;
p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin32
@@ -493,6 +493,12 @@ EOF
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit 0 ;;
*:Linux:*:*)
+ # uname on the ARM produces all sorts of strangeness, and we need to
+ # filter it out.
+ case "$UNAME_MACHINE" in
+ arm* | sa110*) UNAME_MACHINE="arm" ;;
+ esac
+
# The BFD linker knows what the default object file format is, so
# first see if it will tell us.
ld_help_string=`ld --help 2>&1`
@@ -506,6 +512,7 @@ EOF
i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;;
i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;;
sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
+ armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
elf32ppc) echo "powerpc-unknown-linux-gnu" ; exit 0 ;;
esac
diff --git a/config.sub b/config.sub
index 213a6d47d..e24b85041 100755
--- a/config.sub
+++ b/config.sub
@@ -1,6 +1,6 @@
#! /bin/sh
# Configuration validation subroutine script, version 1.1.
-# Copyright (C) 1991, 92, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
+# Copyright (C) 1991, 92-97, 1998 Free Software Foundation, Inc.
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
# can handle that machine. It does not imply ALL GNU software can.
@@ -162,7 +162,7 @@ case $basic_machine in
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users.
- i[3456]86)
+ i[34567]86)
basic_machine=$basic_machine-pc
;;
# Object if more than one company name word.
@@ -171,7 +171,7 @@ case $basic_machine in
exit 1
;;
# Recognize the basic CPU types with company name.
- vax-* | tahoe-* | i[3456]86-* | i860-* | m32r-* | m68k-* | m68000-* \
+ vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \
| m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
| power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \
@@ -350,19 +350,19 @@ case $basic_machine in
os=-mvs
;;
# I'm not sure what "Sysv32" means. Should this be sysv3.2?
- i[3456]86v32)
+ i[34567]86v32)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv32
;;
- i[3456]86v4*)
+ i[34567]86v4*)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv4
;;
- i[3456]86v)
+ i[34567]86v)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv
;;
- i[3456]86sol2)
+ i[34567]86sol2)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-solaris2
;;
@@ -469,25 +469,23 @@ case $basic_machine in
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
- pentium | p5)
- basic_machine=i586-intel
+ pentium | p5 | k5 | nexen)
+ basic_machine=i586-pc
;;
- pentiumpro | p6)
- basic_machine=i686-intel
+ pentiumpro | p6 | k6 | 6x86)
+ basic_machine=i686-pc
;;
- pentium-* | p5-*)
+ pentiumii | pentium2)
+ basic_machine=i786-pc
+ ;;
+ pentium-* | p5-* | k5-* | nexen-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
- pentiumpro-* | p6-*)
+ pentiumpro-* | p6-* | k6-* | 6x86-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
- k5)
- # We don't have specific support for AMD's K5 yet, so just call it a Pentium
- basic_machine=i586-amd
- ;;
- nexen)
- # We don't have specific support for Nexgen yet, so just call it a Pentium
- basic_machine=i586-nexgen
+ pentiumii-* | pentium2-*)
+ basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pn)
basic_machine=pn-gould
diff --git a/glib-config.in b/glib-config.in
index 7e4fed651..a3b264c13 100644
--- a/glib-config.in
+++ b/glib-config.in
@@ -88,10 +88,10 @@ fi
if test "$echo_libs" = "yes"; then
libs=""
if test "$lib_glib" = "yes"; then
- libs="$libs -lglib-@LT_RELEASE@"
+ libs="$libs -lglib"
fi
if test "$lib_gmodule" = "yes"; then
- libs="@G_MODULE_LDFLAGS@ -lgmodule-@LT_RELEASE@ $libs @G_MODULE_LIBS@"
+ libs="@G_MODULE_LDFLAGS@ -lgmodule $libs @G_MODULE_LIBS@"
fi
echo "-L@libdir@ $libs"
fi
diff --git a/glib/Makefile.am b/glib/Makefile.am
index 3f1529c47..4c79cecce 100644
--- a/glib/Makefile.am
+++ b/glib/Makefile.am
@@ -17,9 +17,9 @@ EXTRA_DIST = \
# build . first, then SUBDIRS
all-recursive-am: all-am
-lib_LTLIBRARIES = libglib-1.1.la
+lib_LTLIBRARIES = libglib.la
-libglib_1_1_la_SOURCES = \
+libglib_la_SOURCES = \
garray.c \
gcache.c \
gcompletion.c \
@@ -46,12 +46,12 @@ include_HEADERS = \
configinclude_DATA = \
glibconfig.h
-libglib_1_1_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
-
+libglib_la_LDFLAGS = \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE)
INCLUDES = -I$(top_srcdir)
noinst_PROGRAMS = testglib
-testglib_LDADD = libglib-@LT_RELEASE@.la
+testglib_LDADD = libglib.la
m4datadir = $(datadir)/aclocal
m4data_DATA = glib.m4
diff --git a/gmodule/ChangeLog b/gmodule/ChangeLog
index 2cc6751ef..ba2cfaf7f 100644
--- a/gmodule/ChangeLog
+++ b/gmodule/ChangeLog
@@ -1,3 +1,9 @@
+Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
+
+ * Makefile.am: Update to libtool-1.2b,
+ change library versioning scheme to drop LT_RELEASE
+ from the -l line, while keeping it in the soname.
+
Thu Aug 20 07:08:16 1998 Tim Janik <timj@gtk.org>
* gmodule.c: provide no operation implementation for the underlying
diff --git a/gmodule/Makefile.am b/gmodule/Makefile.am
index fe44d90a3..3cc594715 100644
--- a/gmodule/Makefile.am
+++ b/gmodule/Makefile.am
@@ -14,14 +14,18 @@ gmoduleconf.h: gmoduleconf.h.in
include_HEADERS = \
gmodule.h
-libglib = $(top_builddir)/libglib-@LT_RELEASE@.la # -lglib-@LT_RELEASE@
+libglib = $(top_builddir)/libglib.la # -lglib
-lib_LTLIBRARIES = libgmodule-1.1.la libgplugin_a.la libgplugin_b.la
+lib_LTLIBRARIES = libgmodule.la libgplugin_a.la libgplugin_b.la
-libgmodule_1_1_la_SOURCES = gmodule.c
-libgmodule_1_1_la_LDFLAGS = @G_MODULE_LDFLAGS@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
-libgmodule_1_1_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
-# we should really depend on $(libglib) for libgmodule-1.1.la, but libtool has a
+libgmodule_la_SOURCES = gmodule.c
+libgmodule_la_LDFLAGS = \
+ @G_MODULE_LDFLAGS@ \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+ -release $(LT_RELEASE)
+
+libgmodule_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
+# we should really depend on $(libglib) for libgmodule.la, but libtool has a
# problem with this ;(
libgplugin_a_la_SOURCES = libgplugin_a.c
@@ -34,7 +38,7 @@ libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
noinst_PROGRAMS = testgmodule
testgmodule_LDFLAGS += @G_MODULE_LDFLAGS@
-testgmodule_LDADD = libgmodule-@LT_RELEASE@.la $(libglib) @G_MODULE_LIBS@
+testgmodule_LDADD = libgmodule.la $(libglib) @G_MODULE_LIBS@
.PHONY: files release
@@ -43,10 +47,10 @@ files:
echo $$p; \
done
-install-libLTLIBRARIES: libgmodule-1.1.la
+install-libLTLIBRARIES: libgmodule.la
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(libdir)
- @list='libgmodule-1.1.la'; for p in $$list; do \
+ @list='libgmodule.la'; for p in $$list; do \
if test -f $$p; then \
echo "$(LIBTOOL) --mode=install $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p"; \
$(LIBTOOL) --mode=install $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$p; \
diff --git a/ltconfig b/ltconfig
index 8d9d4e35f..906526a6b 100755
--- a/ltconfig
+++ b/ltconfig
@@ -25,13 +25,25 @@
# A lot of this script is taken from autoconf-2.10.
+# Check that we are running under the correct shell.
+SHELL=${CONFIG_SHELL-/bin/sh}
+echo=echo
+if test "X$1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
+ # Yippee, $echo works!
+ :
+else
+ # Restart under the correct shell.
+ exec "$SHELL" "$0" --no-reexec ${1+"$@"}
+fi
+
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
if test "${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
-echo=echo
-if test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then :
-else
+if test "X`($echo '\t') 2>/dev/null`" != 'X\t'; then
# The Solaris, AIX, and Digital Unix default echo programs unquote
# backslashes. This makes it impossible to quote backslashes using
# echo "$something" | sed 's/\\/\\\\/g'
@@ -51,20 +63,15 @@ else
if test "X`(print -r '\t') 2>/dev/null`" = 'X\t'; then
# This shell has a builtin print -r that does the trick.
echo='print -r'
-#
-# The following is from libtool-1.2a, won't work with this patched
-# libtool-1.2
-#
-# elif test -f /bin/ksh && test "X$CONFIG_SHELL" != X/bin/ksh; then
-# # If we have ksh, try running ltconfig again with it.
-# CONFIG_SHELL=/bin/ksh
-# export CONFIG_SHELL
-# exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"}
+ elif test -f /bin/ksh && test "X$CONFIG_SHELL" != X/bin/ksh; then
+ # If we have ksh, try running ltconfig again with it.
+ CONFIG_SHELL=/bin/ksh
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"}
else
# Try using printf.
echo='printf %s\n'
- if test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then :
- else
+ if test "X`($echo '\t') 2>/dev/null`" != 'X\t'; then
# Oops. We lost completely, so just stick with echo.
echo=echo
fi
@@ -86,7 +93,7 @@ progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'`
# Constants:
PROGRAM=ltconfig
PACKAGE=libtool
-VERSION=1.2
+VERSION=1.2b
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5'
ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5'
rm="rm -f"
@@ -94,6 +101,7 @@ rm="rm -f"
help="Try \`$progname --help' for more information."
# Global variables:
+default_ofile=libtool
can_build_shared=yes
enable_shared=yes
# All known linkers require a `.a' archive for static linking.
@@ -105,6 +113,7 @@ ac_config_guess=
ac_config_sub=
host=
nonopt=
+ofile="$default_ofile"
verify_host=yes
with_gcc=no
with_gnu_ld=no
@@ -141,10 +150,12 @@ Usage: $progname [OPTION]... LTMAIN [HOST]
Generate a system-specific libtool script.
+ --debug enable verbose shell tracing
--disable-shared do not build shared libraries
--disable-static do not build static libraries
--help display this help and exit
--no-verify do not verify that HOST is a valid host type
+-o, --output=FILE specify the output file [default=$default_ofile]
--quiet same as \`--silent'
--silent do not print informational messages
--srcdir=DIR find \`config.guess' in DIR
@@ -160,6 +171,11 @@ EOM
exit 0
;;
+ --debug)
+ echo "$progname: enabling shell trace mode"
+ set -x
+ ;;
+
--disable-shared) enable_shared=no ;;
--disable-static) enable_static=no ;;
@@ -171,6 +187,9 @@ EOM
--no-verify) verify_host=no ;;
+ --output | -o) prev=ofile ;;
+ --output=*) ofile="$optarg" ;;
+
--version) echo "$PROGRAM (GNU $PACKAGE) $VERSION"; exit 0 ;;
--with-gcc) with_gcc=yes ;;
@@ -205,8 +224,7 @@ if test -z "$ltmain"; then
exit 1
fi
-if test -f "$ltmain"; then :
-else
+if test ! -f "$ltmain"; then
echo "$progname: \`$ltmain' does not exist" 1>&2
echo "$help" 1>&2
exit 1
@@ -284,7 +302,7 @@ if test "$verify_host" = yes; then
ac_config_sub=$ac_aux_dir/config.sub
# Make sure we can run config.sub.
- if $ac_config_sub sun4 >/dev/null 2>&1; then :
+ if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then :
else
echo "$progname: cannot run $ac_config_sub" 1>&2
echo "$help" 1>&2
@@ -296,14 +314,14 @@ if test "$verify_host" = yes; then
host_alias=$host
case "$host_alias" in
"")
- if host_alias=`$ac_config_guess`; then :
+ if host_alias=`$SHELL $ac_config_guess`; then :
else
echo "$progname: cannot guess host type; you must specify one" 1>&2
echo "$help" 1>&2
exit 1
fi ;;
esac
- host=`$ac_config_sub $host_alias`
+ host=`$SHELL $ac_config_sub $host_alias`
echo "$ac_t$host" 1>&6
# Make sure the host verified.
@@ -441,7 +459,7 @@ if test "$with_gcc" != yes || test -z "$CC"; then
# Now see if the compiler is really GCC.
with_gcc=no
echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6
- echo "$progname:444: checking whether we are using GNU C" >&5
+ echo "$progname:462: checking whether we are using GNU C" >&5
$rm conftest.c
cat > conftest.c <<EOF
@@ -449,7 +467,7 @@ if test "$with_gcc" != yes || test -z "$CC"; then
yes;
#endif
EOF
- if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:452: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+ if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:470: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
with_gcc=yes
fi
$rm conftest.c
@@ -497,7 +515,7 @@ else
link_static_flag='-bnso -bI:/lib/syscalls.exp'
;;
- hpux9* | hpux10*)
+ hpux9* | hpux10* | hpux11*)
# Is there a better link_static_flag that works with the bundled CC?
wl='-Wl,'
link_static_flag="${wl}-a ${wl}archive"
@@ -549,22 +567,6 @@ else
link_static_flag='-Bstatic'
;;
- linux*aout)
- can_build_shared=no
- ;;
-
- linux*)
- case "$CC" in
- *lcc | *lcc\ *)
- wl=-Wl
- link_static_flag='-static'
- pic_flag=
- ;;
- *)
- can_build_shared=no
- esac
- ;;
-
*)
can_build_shared=no
;;
@@ -580,8 +582,8 @@ if test -n "$pic_flag"; then
echo "int some_variable = 0;" > conftest.c
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $pic_flag -DPIC"
- echo "$progname:567: checking if $compiler PIC flag $pic_flag works" >&5
- if { (eval echo $progname:568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
+ echo "$progname:585: checking if $compiler PIC flag $pic_flag works" >&5
+ if { (eval echo $progname:586: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
# Append any warnings to the config.log.
cat conftest.err 1>&5
@@ -624,8 +626,8 @@ $rm conftest*
echo 'main(){return(0);}' > conftest.c
save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $link_static_flag"
-echo "$progname:611: checking if $compiler static flag $link_static_flag works" >&5
-if { (eval echo $progname:612: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+echo "$progname:629: checking if $compiler static flag $link_static_flag works" >&5
+if { (eval echo $progname:630: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
echo "$ac_t$link_static_flag" 1>&6
else
echo "$ac_t"none 1>&6
@@ -657,11 +659,11 @@ if test -z "$LD"; then
if test "$with_gcc" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6
- echo "$progname:644: checking for ld used by GCC" >&5
+ echo "$progname:662: checking for ld used by GCC" >&5
ac_prog=`($CC -print-prog-name=ld) 2>&5`
case "$ac_prog" in
# Accept absolute paths.
- /* | [A-Za-z]:\\*)
+ /* | [A-Za-z]:[/\\]*)
test -z "$LD" && LD="$ac_prog"
;;
"")
@@ -675,10 +677,10 @@ if test -z "$LD"; then
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld... $ac_c" 1>&6
- echo "$progname:662: checking for GNU ld" >&5
+ echo "$progname:680: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
- echo "$progname:665: checking for non-GNU ld" >&5
+ echo "$progname:683: checking for non-GNU ld" >&5
fi
if test -z "$LD"; then
@@ -730,6 +732,7 @@ no_undefined_flag=
archive_cmds=
old_archive_from_new_cmds=
export_dynamic_flag_spec=
+whole_archive_flag_spec=
hardcode_libdir_flag_spec=
hardcode_libdir_separator=
hardcode_direct=no
@@ -737,31 +740,42 @@ hardcode_minus_L=no
hardcode_shlibpath_var=unsupported
runpath_var=
-case "$host_os" in
-amigaos* | sunos4*)
- # On these operating systems, we should treat GNU ld like the system ld.
- gnu_ld_acts_native=yes
- ;;
-*)
- gnu_ld_acts_native=no
- ;;
-esac
-
ld_shlibs=yes
-if test "$with_gnu_ld" = yes && test "$gnu_ld_acts_native" != yes; then
+if test "$with_gnu_ld" = yes; then
# See if GNU ld supports shared libraries.
- if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs'
- runpath_var=LD_RUN_PATH
- ld_shlibs=yes
- else
- ld_shlibs=no
- fi
+ case "$host_os" in
+ amigaos*)
+ archive_cmds='$rm $objdir/a2ixlibrary.data;$echo "#define NAME $libname" > $objdir/a2ixlibrary.data;$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data;$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data;$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data;$AR cru $lib$libobjs;$RANLIB $lib;(cd $objdir && a2ixlibrary -32)'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+
+ sunos4*)
+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ hardcode_shlibpath_var=no
+ ;;
+
+ linux-gnu*)
+ archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs $deplibs'
+ ;;
+
+ *)
+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+ archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
if test "$ld_shlibs" = yes; then
+ runpath_var=LD_RUN_PATH
hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
export_dynamic_flag_spec='${wl}--export-dynamic'
+ whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
fi
else
# PORTME fill in a description of your system's linker (not GNU ld)
@@ -817,7 +831,7 @@ else
archive_cmds='$CC -shared -o $lib$libobjs'
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
- hardcode_minus_L=yes
+ hardcode_minus_L=no
hardcode_shlibpath_var=no
;;
@@ -829,7 +843,7 @@ else
export_dynamic_flag_spec='${wl}-E'
;;
- hpux10*)
+ hpux10* | hpux11*)
archive_cmds='$LD -b +h $soname +s +b $install_libdir -o $lib$libobjs'
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_direct=yes
@@ -838,7 +852,11 @@ else
;;
irix5* | irix6*)
- archive_cmds='$LD -shared -o $lib -soname $soname -set_version $verstring$libobjs'
+ if test "$with_gcc" = yes; then
+ archive_cmds='$CC -shared -o $lib ${wl}-soname ${wl}$soname ${wl}-set_version ${wl}$verstring$libobjs'
+ else
+ archive_cmds='$LD -shared -o $lib -soname $soname -set_version $verstring$libobjs'
+ fi
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
;;
@@ -892,15 +910,7 @@ else
;;
sunos4*)
- if test "$with_gcc" = yes; then
- archive_cmds='$CC -shared -o $lib$libobjs'
- else
- archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
- fi
-
- if test "$with_gnu_ld" = yes; then
- export_dynamic_flag_spec='${wl}-export-dynamic'
- fi
+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
@@ -926,7 +936,7 @@ echo "$ac_t$ld_shlibs" 1>&6
if test -z "$NM"; then
echo $ac_n "checking for BSD-compatible nm... $ac_c" 1>&6
case "$NM" in
- /* | [A-Za-z]:\\*) ;; # Let the user override the test with a path.
+ /* | [A-Za-z]:[/\\]*) ;; # Let the user override the test with a path.
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do
@@ -1004,11 +1014,11 @@ void nm_test_func(){}
main(){nm_test_var='a';nm_test_func();return(0);}
EOF
-echo "$progname:991: checking if global_symbol_pipe works" >&5
-if { (eval echo $progname:992: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then
+echo "$progname:1017: checking if global_symbol_pipe works" >&5
+if { (eval echo $progname:1018: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then
# Now try to grab the symbols.
nlist=conftest.nm
- if { echo "$progname:995: eval \"$NM conftest.o | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.o | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
+ if { echo "$progname:1021: eval \"$NM conftest.o | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.o | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
@@ -1066,7 +1076,7 @@ EOF
save_CFLAGS="$CFLAGS"
LIBS='conftestm.o'
CFLAGS="$CFLAGS$no_builtin_flag"
- if { (eval echo $progname:1053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+ if { (eval echo $progname:1079: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
pipe_works=yes
else
echo "$progname: failed program was:" >&5
@@ -1109,25 +1119,20 @@ if test -n "$hardcode_libdir_flag_spec" || \
# We can link without hardcoding, and we can hardcode nonexisting dirs.
hardcode_action=immediate
fi
-elif test "$hardcode_direct" != yes && \
- test "$hardcode_minus_L" != yes && \
- test "$hardcode_shlibpath_var" != yes; then
- # We cannot hardcode anything.
- hardcode_action=unsupported
else
- # We can only hardcode existing directories.
- hardcode_action=relink
+ # We cannot hardcode anything, or else we can only hardcode existing
+ # directories.
+ hardcode_action=unsupported
fi
echo "$ac_t$hardcode_action" 1>&6
-test "$hardcode_action" = unsupported && can_build_shared=no
reload_flag=
reload_cmds='$LD$reload_flag -o $output$reload_objs'
echo $ac_n "checking for $LD option to reload object files... $ac_c" 1>&6
-# PORTME Some linker may need a different reload flag.
+# PORTME Some linkers may need a different reload flag.
reload_flag='-r'
-echo "$ac_t$reload_flag"
+echo "$ac_t$reload_flag" 1>&6
test -n "$reload_flag" && reload_flag=" $reload_flag"
# PORTME Fill in your ld.so characteristics
@@ -1146,11 +1151,11 @@ echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6
case "$host_os" in
aix3* | aix4*)
version_type=linux
- library_names_spec='${libname}${release}.so.$versuffix $libname.a'
+ library_names_spec='${libname}${release}.so$versuffix $libname.a'
shlibpath_var=LIBPATH
# AIX has no versioning support, so we append a major version to the name.
- soname_spec='${libname}${release}.so.$major'
+ soname_spec='${libname}${release}.so$major'
;;
amigaos*)
@@ -1161,25 +1166,25 @@ amigaos*)
freebsd2* | freebsd3*)
version_type=sunos
- library_names_spec='${libname}${release}.so.$versuffix $libname.so'
- finish_cmds='PATH="$PATH:/sbin" ldconfig -m $libdir'
+ library_names_spec='${libname}${release}.so$versuffix $libname.so'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=LD_LIBRARY_PATH
;;
gnu*)
- version_type=sunos
- library_names_spec='${libname}${release}.so.$versuffix'
+ version_type=linux
+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so'
shlibpath_var=LD_LIBRARY_PATH
;;
-hpux9* | hpux10*)
+hpux9* | hpux10* | hpux11*)
# Give a soname corresponding to the major version so that dld.sl refuses to
# link against other versions.
dynamic_linker="$host_os dld.sl"
version_type=sunos
shlibpath_var=SHLIB_PATH
- library_names_spec='${libname}${release}.sl.$versuffix ${libname}${release}.sl.$major $libname.sl'
- soname_spec='${libname}${release}.sl.$major'
+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
+ soname_spec='${libname}${release}.sl$major'
# HP-UX runs *really* slowly unless shared libraries are mode 555.
postinstall_cmds='chmod 555 $lib'
;;
@@ -1187,7 +1192,7 @@ hpux9* | hpux10*)
irix5* | irix6*)
version_type=osf
soname_spec='${libname}${release}.so'
- library_names_spec='${libname}${release}.so.$versuffix $libname.so'
+ library_names_spec='${libname}${release}.so$versuffix $libname.so'
shlibpath_var=LD_LIBRARY_PATH
;;
@@ -1199,9 +1204,9 @@ linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
# This must be Linux ELF.
linux-gnu*)
version_type=linux
- library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major $libname.so'
- soname_spec='${libname}${release}.so.$major'
- finish_cmds='PATH="$PATH:/sbin" ldconfig -n $libdir'
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+ soname_spec='${libname}${release}.so$major'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
shlibpath_var=LD_LIBRARY_PATH
if test -f /lib/ld.so.1; then
@@ -1217,8 +1222,8 @@ linux-gnu*)
netbsd* | openbsd*)
version_type=sunos
- library_names_spec='${libname}${release}.so.$versuffix'
- finish_cmds='PATH="$PATH:/sbin" ldconfig -m $libdir'
+ library_names_spec='${libname}${release}.so$versuffix'
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=LD_LIBRARY_PATH
;;
@@ -1232,42 +1237,44 @@ os2*)
osf3* | osf4*)
version_type=osf
soname_spec='${libname}${release}.so'
- library_names_spec='${libname}${release}.so.$versuffix $libname.so'
+ library_names_spec='${libname}${release}.so$versuffix $libname.so'
shlibpath_var=LD_LIBRARY_PATH
;;
sco3.2v5*)
version_type=osf
- soname_spec='${libname}${release}.so.$major'
- library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major $libname.so'
+ soname_spec='${libname}${release}.so$major'
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
shlibpath_var=LD_LIBRARY_PATH
;;
solaris2*)
version_type=linux
- library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major $libname.so'
- soname_spec='${libname}${release}.so.$major'
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+ soname_spec='${libname}${release}.so$major'
shlibpath_var=LD_LIBRARY_PATH
+ # ldd complains unless libraries are executable
+ postinstall_cmds='chmod +x $lib'
;;
sunos4*)
version_type=sunos
- library_names_spec='${libname}${release}.so.$versuffix'
- finish_cmds='PATH="$PATH:/usr/etc" ldconfig $libdir'
+ library_names_spec='${libname}${release}.so$versuffix'
+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
shlibpath_var=LD_LIBRARY_PATH
;;
sysv4.2uw2*)
version_type=linux
- library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major $libname.so'
- soname_spec='${libname}${release}.so.$major'
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+ soname_spec='${libname}${release}.so$major'
shlibpath_var=LD_LIBRARY_PATH
;;
uts4*)
version_type=linux
- library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major $libname.so'
- soname_spec='${libname}${release}.so.$major'
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+ soname_spec='${libname}${release}.so$major'
shlibpath_var=LD_LIBRARY_PATH
;;
@@ -1323,7 +1330,7 @@ ltecho="$echo"
for var in ltecho old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \
old_LN_S AR CC LD LN_S NM reload_flag reload_cmds wl pic_flag \
link_static_flag no_builtin_flag export_dynamic_flag_spec \
- libname_spec library_names_spec soname_spec RANLIB \
+ whole_archive_flag_spec libname_spec library_names_spec soname_spec RANLIB \
old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
old_postuninstall_cmds archive_cmds postinstall_cmds postuninstall_cmds \
allow_undefined_flag no_undefined_flag \
@@ -1343,14 +1350,13 @@ for var in ltecho old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \
esac
done
-ofile=libtool
-trap "$rm $ofile; exit 1" 1 2 15
-echo creating $ofile
-$rm $ofile
-cat <<EOF > $ofile
-#! /bin/sh
+trap "$rm \"$ofile\"; exit 1" 1 2 15
+echo "creating $ofile"
+$rm "$ofile"
+cat <<EOF > "$ofile"
+#! $SHELL
-# libtool - Provide generalized library-building support services.
+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
# Generated automatically by $PROGRAM - GNU $PACKAGE $VERSION
# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
#
@@ -1376,16 +1382,6 @@ cat <<EOF > $ofile
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
-# This program was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# CC="$old_CC" CFLAGS="$old_CFLAGS" CPPFLAGS="$old_CPPFLAGS" \\
-# LD="$old_LD" NM="$old_NM" RANLIB="$old_RANLIB" LN_S="$old_LN_S" \\
-# $0$ltconfig_args
-#
-# Compiler and other test output produced by $progname, useful for
-# debugging $progname, is in ./config.log if it exists.
-
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
Xsed="sed -e s/^X//"
@@ -1393,25 +1389,35 @@ Xsed="sed -e s/^X//"
# if CDPATH is set.
if test "\${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
-# An echo program that does not interpret backslashes.
-echo="$ltecho"
+### BEGIN LIBTOOL CONFIG
+# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+#
+# CC="$old_CC" CFLAGS="$old_CFLAGS" CPPFLAGS="$old_CPPFLAGS" \\
+# LD="$old_LD" NM="$old_NM" RANLIB="$old_RANLIB" LN_S="$old_LN_S" \\
+# $0$ltconfig_args
+#
+# Compiler and other test output produced by $progname, useful for
+# debugging $progname, is in ./config.log if it exists.
# The version of $progname that generated this script.
LTCONFIG_VERSION="$VERSION"
# Shell to use when invoking shell scripts.
-SHELL=${CONFIG_SHELL-/bin/sh}
+SHELL="$SHELL"
-# Whether or not to build libtool libraries.
+# Whether or not to build shared libraries.
build_libtool_libs=$enable_shared
-# Whether or not to build old-style libraries.
+# Whether or not to build static libraries.
build_old_libs=$enable_static
# The host system.
host_alias="$host_alias"
host="$host"
+# An echo program that does not interpret backslashes.
+echo="$ltecho"
+
# The archiver.
AR="$AR"
@@ -1449,6 +1455,9 @@ no_builtin_flag="$no_builtin_flag"
# Compiler flag to allow reflexive dlopens.
export_dynamic_flag_spec="$export_dynamic_flag_spec"
+# Compiler flag to generate shared objects directly from archives.
+whole_archive_flag_spec="$whole_archive_flag_spec"
+
# Library versioning type.
version_type=$version_type
@@ -1518,12 +1527,12 @@ hardcode_minus_L=$hardcode_minus_L
# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
# the resulting binary.
hardcode_shlibpath_var=$hardcode_shlibpath_var
-
EOF
case "$host_os" in
aix3*)
- cat <<\EOF >> $ofile
+ cat <<\EOF >> "$ofile"
+
# AIX sometimes has problems with the GCC collect2 program. For some
# reason, if we set the COLLECT_NAMES environment variable, the problems
# vanish in a puff of smoke.
@@ -1531,15 +1540,17 @@ if test "${COLLECT_NAMES+set}" != set; then
COLLECT_NAMES=
export COLLECT_NAMES
fi
-
EOF
;;
esac
+echo '### END LIBTOOL CONFIG' >> "$ofile"
+echo >> "$ofile"
+
# Append the ltmain.sh script.
-cat "$ltmain" >> $ofile || (rm -f $ofile; exit 1)
+cat "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1)
-chmod +x $ofile
+chmod +x "$ofile"
exit 0
# Local Variables:
diff --git a/ltmain.sh b/ltmain.sh
index 0e884205b..cb8174715 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -23,6 +23,18 @@
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
+# Check that we have a working $echo.
+if test "X$1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
+ # Yippee, $echo works!
+ :
+else
+ # Restart under the correct shell, and then maybe $echo will work.
+ exec $SHELL "$0" --no-reexec ${1+"$@"}
+fi
+
# The name of this program.
progname=`$echo "$0" | sed 's%^.*/%%'`
modename="$progname"
@@ -30,7 +42,7 @@ modename="$progname"
# Constants.
PROGRAM=ltmain.sh
PACKAGE=libtool
-VERSION=1.2
+VERSION=1.2b
default_mode=
help="Try \`$progname --help' for more information."
@@ -48,8 +60,13 @@ sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
# Only set LANG and LC_ALL to C if already set.
# These must not be set unconditionally because not all systems understand
# e.g. LANG=C (notably SCO).
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
+# We save the old values to restore during execute mode.
+if test "${LC_ALL+set}" = set; then
+ save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
+fi
+if test "${LANG+set}" = set; then
+ save_LANG="$LANG"; LANG=C; export LANG
+fi
if test "$LTCONFIG_VERSION" != "$VERSION"; then
echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
@@ -111,6 +128,16 @@ do
exit 0
;;
+ --config)
+ sed -e '1,/^### BEGIN LIBTOOL CONFIG/d' -e '/^### END LIBTOOL CONFIG/,$d' $0
+ exit 0
+ ;;
+
+ --debug)
+ echo "$progname: enabling shell trace mode"
+ set -x
+ ;;
+
--dry-run | -n)
run=:
;;
@@ -180,7 +207,7 @@ if test -z "$show_help"; then
esac
done
;;
- *db | *dbx)
+ *db | *dbx | *strace | *truss)
mode=execute
;;
*install*|cp|mv)
@@ -238,7 +265,6 @@ if test -z "$show_help"; then
;;
-static)
- build_libtool_libs=no
build_old_libs=yes
continue
;;
@@ -337,7 +363,7 @@ if test -z "$show_help"; then
# Just move the object, then go on to compile the next one
$show "$mv $obj $libobj"
- $run $mv $obj $libobj || exit 1
+ $run $mv $obj $libobj || exit $?
# Allow error messages only from the first compilation.
suppress_output=' >/dev/null 2>&1'
@@ -374,10 +400,13 @@ if test -z "$show_help"; then
compile_shlibpath=
finalize_shlibpath=
+ convenience=
+ old_convenience=
deplibs=
dlfiles=
dlprefiles=
export_dynamic=no
+ generated=
hardcode_libdirs=
libobjs=
link_against_libtool_libs=
@@ -386,7 +415,6 @@ if test -z "$show_help"; then
prev=
prevarg=
release=
- postfix=
rpath=
perm_rpath=
temp_rpath=
@@ -411,8 +439,10 @@ if test -z "$show_help"; then
test -n "$old_archive_from_new_cmds" && build_old_libs=yes
# Go through the arguments, transforming them on the way.
- for arg
- do
+ while test $# -gt 0; do
+ arg="$1"
+ shift
+
# If the previous option needs an argument, assign it.
if test -n "$prev"; then
case "$prev" in
@@ -438,11 +468,6 @@ if test -z "$show_help"; then
prev=
continue
;;
- postfix)
- postfix="-$arg"
- prev=
- continue
- ;;
rpath)
rpath="$rpath $arg"
prev=
@@ -501,7 +526,7 @@ if test -z "$show_help"; then
-L*)
dir=`$echo "X$arg" | $Xsed -e 's%^-L\(.*\)$%\1%'`
case "$dir" in
- /* | [A-Za-z]:\\*)
+ /* | [A-Za-z]:[/\\]*)
# Add the corresponding hardcode_libdir_flag, if it is not identical.
;;
*)
@@ -526,11 +551,6 @@ if test -z "$show_help"; then
continue
;;
- -postfix)
- prev=postfix
- continue
- ;;
-
-rpath)
prev=rpath
continue
@@ -582,7 +602,7 @@ if test -z "$show_help"; then
if test "$prev" = dlprefiles; then
# Preload the old-style object.
- dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e 's/\.lo$/\.o/'`
+ dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e 's/\.lo$/.o/'`
prev=
fi
libobjs="$libobjs $arg"
@@ -597,7 +617,7 @@ if test -z "$show_help"; then
old_library=
# Check to see that this really is a libtool archive.
- if (sed -e '2q' $arg | egrep '^# Generated by ltmain\.sh') >/dev/null 2>&1; then :
+ if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$arg' is not a valid libtool archive" 1>&2
exit 1
@@ -609,11 +629,6 @@ if test -z "$show_help"; then
*) . ./$arg ;;
esac
- if test -z "$libdir"; then
- $echo "$modename: \`$arg' contains no -rpath information" 1>&2
- exit 1
- fi
-
# Get the name of the library we link against.
linklib=
for l in $old_library $library_names; do
@@ -634,6 +649,15 @@ if test -z "$show_help"; then
dir="$dir/$objdir"
fi
+ if test -z "$libdir"; then
+ # It is a libtool convenience library, so add in its objects.
+ convenience="$convenience $dir/$old_library"l
+ old_convenience="$old_convenience $dir/$old_library"
+ compile_command="$compile_command $dir/$old_library"
+ finalize_command="$finalize_command $dir/$old_library"
+ continue
+ fi
+
# This library was specified with -dlopen.
if test "$prev" = dlfiles; then
dlfiles="$dlfiles $arg"
@@ -707,8 +731,9 @@ if test -z "$show_help"; then
fi
+ lib_linked=yes
case "$hardcode_action" in
- immediate)
+ immediate | unsupported)
if test "$hardcode_direct" = no; then
compile_command="$compile_command $dir/$linklib"
elif test "$hardcode_minus_L" = no; then
@@ -716,13 +741,15 @@ if test -z "$show_help"; then
elif test "$hardcode_shlibpath_var" = no; then
compile_shlibpath="$compile_shlibpath$dir:"
compile_command="$compile_command -l$name"
+ else
+ lib_linked=no
fi
;;
relink)
# We need an absolute path.
case "$dir" in
- /* | [A-Za-z]:\\*) ;;
+ /* | [A-Za-z]:[/\\]*) ;;
*)
absdir=`cd "$dir" && pwd`
if test -z "$absdir"; then
@@ -740,15 +767,21 @@ if test -z "$show_help"; then
elif test "$hardcode_shlibpath_var" = yes; then
compile_shlibpath="$compile_shlibpath$dir:"
compile_command="$compile_command -l$name"
+ else
+ lib_linked=no
fi
;;
- *)
- $echo "$modename: \`$hardcode_action' is an unknown hardcode action" 1>&2
- exit 1
- ;;
+ *)
+ lib_linked=no
+ ;;
esac
+ if test "$lib_linked" != yes; then
+ $echo "$modename: configuration error: unsupported hardcode properties"
+ exit 1
+ fi
+
# Finalize command for both is simple: just hardcode it.
if test "$hardcode_direct" = yes; then
finalize_command="$finalize_command $libdir/$linklib"
@@ -813,14 +846,7 @@ if test -z "$show_help"; then
exit 1
fi
- if test -n "$vinfo" && test -n "$release"; then
- $echo "$modename: you cannot specify both \`-version-info' and \`-release'" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
-
- oldlib=
- oldobjs=
+ oldlibs=
case "$output" in
"")
$echo "$modename: you must specify an output file" 1>&2
@@ -830,16 +856,39 @@ if test -z "$show_help"; then
*/* | *\\*)
$echo "$modename: output file \`$output' must have no directory components" 1>&2
+ $echo "$help" 1>&2
exit 1
;;
*.a)
+ if test -n "$link_against_libtool_libs"; then
+ $echo "$modename: error: cannot link libtool libraries into archives" 1>&2
+ exit 1
+ fi
+
+ if test -n "$deplibs"; then
+ $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2
+ fi
+
+ if test -n "$dlfiles$dlprefiles"; then
+ $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
+ fi
+
+ if test -n "$rpath"; then
+ $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2
+ fi
+
+ if test -n "$vinfo"; then
+ $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2
+ fi
+
+ if test -n "$release"; then
+ $echo "$modename: warning: \`-release' is ignored for archives" 1>&2
+ fi
+
# Now set the variables for building old libraries.
build_libtool_libs=no
- build_old_libs=yes
- oldlib="$output"
- $show "$rm $oldlib"
- $run $rm $oldlib
+ oldlibs="$output"
;;
*.la)
@@ -847,22 +896,19 @@ if test -z "$show_help"; then
case "$output" in
lib*) ;;
*)
- $echo "$modename: libtool library \`$arg' must begin with \`lib'" 1>&2
+ $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
$echo "$help" 1>&2
exit 1
;;
esac
- name=`$echo "X$output" | $Xsed -e 's/\.la$//' -e 's/^lib//'`$postfix
+ name=`$echo "X$output" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
eval libname=\"$libname_spec\"
# All the library-specific variables (install_libdir is set above).
library_names=
old_library=
dlname=
- current=0
- revision=0
- age=0
if test -n "$objs"; then
$echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
@@ -871,21 +917,12 @@ if test -z "$show_help"; then
# How the heck are we supposed to write a wrapper for a shared library?
if test -n "$link_against_libtool_libs"; then
- $echo "$modename: libtool library \`$output' may not depend on uninstalled libraries:$link_against_libtool_libs" 1>&2
+ $echo "$modename: error: cannot link shared libraries into libtool libraries" 1>&2
exit 1
fi
if test -n "$dlfiles$dlprefiles"; then
- $echo "$modename: warning: \`-dlopen' is ignored while creating libtool libraries" 1>&2
- # Nullify the symbol file.
- compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
- fi
-
- if test -z "$rpath"; then
- $echo "$modename: you must specify an installation directory with \`-rpath'" 1>&2
- $echo "$help" 1>&2
- exit 1
+ $echo "$modename: warning: \`-dlopen' is ignored for libtool libraries" 1>&2
fi
set dummy $rpath
@@ -894,203 +931,250 @@ if test -z "$show_help"; then
fi
install_libdir="$2"
- # Parse the version information argument.
- IFS="${IFS= }"; save_ifs="$IFS"; IFS=':'
- set dummy $vinfo
- IFS="$save_ifs"
+ # Now set the variables for building old libraries.
+ oldlibs="$objdir/$libname.a"
+ if test -z "$rpath"; then
+ # Building a libtool convenience library.
+ oldlibs="$objdir/$libname.al $oldlibs"
+ build_libtool_libs=convenience
- if test -n "$5"; then
- $echo "$modename: too many parameters to \`-version-info'" 1>&2
- $echo "$help" 1>&2
- exit 1
- fi
+ if test -n "$vinfo"; then
+ $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2
+ fi
- test -n "$2" && current="$2"
- test -n "$3" && revision="$3"
- test -n "$4" && age="$4"
+ if test -n "$release"; then
+ $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2
+ fi
+ else
- # Check that each of the things are valid numbers.
- case "$current" in
- 0 | [1-9] | [1-9][0-9]*) ;;
- *)
- $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
- ;;
- esac
+ # Parse the version information argument.
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=':'
+ set dummy $vinfo 0 0 0
+ IFS="$save_ifs"
- case "$revision" in
- 0 | [1-9] | [1-9][0-9]*) ;;
- *)
- $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
- ;;
- esac
+ if test -n "$8"; then
+ $echo "$modename: too many parameters to \`-version-info'" 1>&2
+ $echo "$help" 1>&2
+ exit 1
+ fi
- case "$age" in
- 0 | [1-9] | [1-9][0-9]*) ;;
- *)
- $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
- ;;
- esac
+ current="$2"
+ revision="$3"
+ age="$4"
- if test $age -gt $current; then
- $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
- exit 1
- fi
+ # Check that each of the things are valid numbers.
+ case "$current" in
+ 0 | [1-9] | [1-9][0-9]*) ;;
+ *)
+ $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
+ exit 1
+ ;;
+ esac
- # Calculate the version variables.
- version_vars="version_type current age revision"
- case "$version_type" in
- none) ;;
+ case "$revision" in
+ 0 | [1-9] | [1-9][0-9]*) ;;
+ *)
+ $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
+ exit 1
+ ;;
+ esac
- linux)
- version_vars="$version_vars major versuffix"
- major=`expr $current - $age`
- versuffix="$major.$age.$revision"
- ;;
+ case "$age" in
+ 0 | [1-9] | [1-9][0-9]*) ;;
+ *)
+ $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
+ exit 1
+ ;;
+ esac
- osf)
- version_vars="$version_vars versuffix verstring"
- major=`expr $current - $age`
- versuffix="$current.$age.$revision"
- verstring="$versuffix"
-
- # Add in all the interfaces that we are compatible with.
- loop=$age
- while test $loop != 0; do
- iface=`expr $current - $loop`
- loop=`expr $loop - 1`
- verstring="$verstring:${iface}.0"
- done
+ if test $age -gt $current; then
+ $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
+ exit 1
+ fi
- # Make executables depend on our current version.
- verstring="$verstring:${current}.0"
- ;;
+ # Calculate the version variables.
+ major=
+ versuffix=
+ verstring=
+ case "$version_type" in
+ none) ;;
- sunos)
- version_vars="$version_vars major versuffix"
- major="$current"
- versuffix="$current.$revision"
- ;;
+ linux)
+ major=.`expr $current - $age`
+ versuffix="$major.$age.$revision"
+ ;;
- *)
- $echo "$modename: unknown library version type \`$version_type'" 1>&2
- echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
- exit 1
- ;;
- esac
+ osf)
+ major=`expr $current - $age`
+ versuffix=".$current.$age.$revision"
+ verstring="$current.$age.$revision"
+
+ # Add in all the interfaces that we are compatible with.
+ loop=$age
+ while test $loop != 0; do
+ iface=`expr $current - $loop`
+ loop=`expr $loop - 1`
+ verstring="$verstring:${iface}.0"
+ done
+
+ # Make executables depend on our current version.
+ verstring="$verstring:${current}.0"
+ ;;
+
+ sunos)
+ major=".$current"
+ versuffix=".$current.$revision"
+ ;;
+
+ *)
+ $echo "$modename: unknown library version type \`$version_type'" 1>&2
+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
+ exit 1
+ ;;
+ esac
+
+ # Clear the version info if we defaulted, and they specified a release.
+ if test -z "$vinfo" && test -n "$release"; then
+ major=
+ versuffix=
+ verstring="0.0"
+ fi
+
+ # Check to see if the archive will have undefined symbols.
+ if test "$allow_undefined" = yes; then
+ if test "$allow_undefined_flag" = unsupported; then
+ $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
+ build_libtool_libs=no
+ build_old_libs=yes
+ fi
+ else
+ # Don't allow undefined symbols.
+ allow_undefined_flag="$no_undefined_flag"
+ fi
+
+ # Add libc to deplibs on all systems.
+ dependency_libs="$deplibs"
+ deplibs="$deplibs -lc"
+ fi
# Create the output directory, or remove our outputs if we need to.
if test -d $objdir; then
- $show "$rm $objdir/$output $objdir/$libname.* $objdir/${libname}${release}.*"
- $run $rm $objdir/$output $objdir/$libname.* $objdir/${libname}${release}.*
+ $show "${rm}r $objdir/$output $objdir/$libname.* $objdir/${libname}${release}.*"
+ $run ${rm}r $objdir/$output $objdir/$libname.* $objdir/${libname}${release}.*
else
$show "$mkdir $objdir"
$run $mkdir $objdir
- status=$?
- if test $status -eq 0 || test -d $objdir; then :
- else
- exit $status
- fi
- fi
-
- # Check to see if the archive will have undefined symbols.
- if test "$allow_undefined" = yes; then
- if test "$allow_undefined_flag" = unsupported; then
- $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
- build_libtool_libs=no
- build_old_libs=yes
+ status=$?
+ if test $status -ne 0 && test ! -d $objdir; then
+ exit $status
fi
- else
- # Don't allow undefined symbols.
- allow_undefined_flag="$no_undefined_flag"
fi
- # Add libc to deplibs on all systems.
- dependency_libs="$deplibs"
- deplibs="$deplibs -lc"
-
if test "$build_libtool_libs" = yes; then
- # Get the real and link names of the library.
- eval library_names=\"$library_names_spec\"
- set dummy $library_names
- realname="$2"
- shift; shift
-
- if test -n "$soname_spec"; then
- eval soname=\"$soname_spec\"
- else
- soname="$realname"
- fi
+ # Get the real and link names of the library.
+ eval library_names=\"$library_names_spec\"
+ set dummy $library_names
+ realname="$2"
+ shift; shift
+
+ if test -n "$soname_spec"; then
+ eval soname=\"$soname_spec\"
+ else
+ soname="$realname"
+ fi
- lib="$objdir/$realname"
+ lib="$objdir/$realname"
for link
do
linknames="$linknames $link"
done
- # Use standard objects if they are PIC.
- test -z "$pic_flag" && libobjs=`$echo "X$libobjs " | $Xsed -e 's/\.lo /.o /g' -e 's/ $//g'`
+ # Use standard objects if they are PIC.
+ test -z "$pic_flag" && libobjs=`$echo "X$libobjs " | $Xsed -e 's/\.lo /.o /g' -e 's/ $//g'`
- # Do each of the archive commands.
- eval cmds=\"$archive_cmds\"
- IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
- for cmd in $cmds; do
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
- IFS="$save_ifs"
+ # Transform .lo files to .o files.
+ test "$build_old_libs" = yes && oldobjs="$objs"`$echo "X$libobjs " | $Xsed -e 's/[^ ]*\.a //g' -e 's/\.lo /.o /g' -e 's/ $//g'`
- # Create links to the real library.
- for linkname in $linknames; do
- $show "(cd $objdir && $LN_S $realname $linkname)"
- $run eval '(cd $objdir && $LN_S $realname $linkname)' || exit $?
- done
+ if test -n "$whole_archive_flag_spec"; then
+ if test -n "$convenience"; then
+ eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
+ fi
+ else
+ for xlib in $convenience; do
+ # Extract the objects.
+ xdir="$xlib"x
+ generated="$generated $xdir"
+ xlib=`echo "$xlib" | $Xsed -e 's%^.*/%%'`
+
+ $show "${rm}r $xdir"
+ $run ${rm}r "$xdir"
+ $show "mkdir $xdir"
+ $run mkdir "$xdir"
+ status=$?
+ if test $status -ne 0 && test ! -d "$xdir"; then
+ exit $status
+ fi
+ $show "(cd $xdir && $AR x ../$xlib)"
+ $run eval "(cd \$xdir && $AR x ../\$xlib)" || exit $?
- # If -export-dynamic was specified, set the dlname.
- if test "$export_dynamic" = yes; then
- # On all known operating systems, these are identical.
- dlname="$soname"
- fi
- fi
+ libobjs="$libobjs `echo $xdir/*`"
+ done
+ fi
- # Now set the variables for building old libraries.
- oldlib="$objdir/$libname.a"
+ # Do each of the archive commands.
+ eval cmds=\"$archive_cmds\"
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ $show "$cmd"
+ $run eval "$cmd" || exit $?
+ done
+ IFS="$save_ifs"
+
+ # Create links to the real library.
+ for linkname in $linknames; do
+ if test "$realname" != "$linkname"; then
+ $show "(cd $objdir && $LN_S $realname $linkname)"
+ $run eval '(cd $objdir && $LN_S $realname $linkname)' || exit $?
+ fi
+ done
+
+ # If -export-dynamic was specified, set the dlname.
+ if test "$export_dynamic" = yes; then
+ # On all known operating systems, these are identical.
+ dlname="$soname"
+ fi
+ fi
;;
*.lo | *.o)
if test -n "$link_against_libtool_libs"; then
- $echo "$modename: error: cannot link libtool libraries into reloadable objects" 1>&2
+ $echo "$modename: error: cannot link libtool libraries into objects" 1>&2
exit 1
fi
if test -n "$deplibs"; then
- $echo "$modename: warning: \`-l' and \`-L' are ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
fi
if test -n "$dlfiles$dlprefiles"; then
- $echo "$modename: warning: \`-dlopen' is ignored while creating objects" 1>&2
- # Nullify the symbol file.
- compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
+ $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2
fi
if test -n "$rpath"; then
- $echo "$modename: warning: \`-rpath' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2
fi
if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2
fi
if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
fi
case "$output" in
@@ -1150,7 +1234,7 @@ if test -z "$show_help"; then
else
# Just create a symlink.
$show "$LN_S $obj $libobj"
- $run $LN_S $obj $libobj || exit 1
+ $run $LN_S $obj $libobj || exit $?
fi
exit 0
@@ -1158,11 +1242,11 @@ if test -z "$show_help"; then
*)
if test -n "$vinfo"; then
- $echo "$modename: warning: \`-version-info' is ignored while linking programs" 1>&2
+ $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
fi
if test -n "$release"; then
- $echo "$modename: warning: \`-release' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-release' is ignored for programs" 1>&2
fi
if test -n "$rpath"; then
@@ -1234,8 +1318,7 @@ if test -z "$show_help"; then
$show "$mkdir $objdir"
$run $mkdir $objdir
status=$?
- if test $status -eq 0 || test -d $objdir; then :
- else
+ if test $status -ne 0 && test ! -d $objdir; then
exit $status
fi
fi
@@ -1366,13 +1449,11 @@ dld_preloaded_symbols[] =
finalize_command=`$echo "X$finalize_command" | $Xsed -e 's%@OUTPUT@%'"$objdir/$output"'T%g'`
# Create the binary in the object directory, then wrap it.
- if test -d $objdir; then :
- else
+ if test ! -d $objdir; then
$show "$mkdir $objdir"
$run $mkdir $objdir
status=$?
- if test $status -eq 0 || test -d $objdir; then :
- else
+ if test $status -ne 0 && test ! -d $objdir; then
exit $status
fi
fi
@@ -1382,7 +1463,7 @@ dld_preloaded_symbols[] =
rpath=
for dir in $temp_rpath; do
case "$dir" in
- /* | [A-Za-z]:\\*)
+ /* | [A-Za-z]:[/\\]*)
# Absolute path.
rpath="$rpath$dir:"
;;
@@ -1415,13 +1496,11 @@ dld_preloaded_symbols[] =
finalize_command="$runpath_var=\"$rpath\$$runpath_var\" $finalize_command"
fi
- case "$hardcode_action" in
- relink)
+ if test "$hardcode_action" = relink; then
# AGH! Flame the AIX and HP-UX people for me, will ya?
$echo "$modename: warning: using a buggy system linker" 1>&2
$echo "$modename: relinking will be required before \`$output' can be installed" 1>&2
- ;;
- esac
+ fi
$show "$compile_command"
$run eval "$compile_command" || exit $?
@@ -1441,10 +1520,10 @@ dld_preloaded_symbols[] =
trap "$rm $output; exit 1" 1 2 15
$echo > $output "\
-#! /bin/sh
+#! $SHELL
# $output - temporary wrapper script for $objdir/$output
-# Generated by ltmain.sh - GNU $PACKAGE $VERSION
+# Generated by $PROGRAM - GNU $PACKAGE $VERSION
#
# The $output program cannot be directly executed until all the libtool
# libraries that it depends on are installed.
@@ -1468,10 +1547,20 @@ if test \"\$libtool_install_magic\" = \"$magic\"; then
finalize_command=\"$finalize_command\"
else
# When we are sourced in execute mode, \$file and \$echo are already set.
- if test \"\$libtool_execute_magic\" = \"$magic\"; then :
- else
+ if test \"\$libtool_execute_magic\" != \"$magic\"; then
echo=\"$qecho\"
file=\"\$0\"
+ # Make sure echo works.
+ if test \"X\$1\" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+ elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then
+ # Yippee, \$echo works!
+ :
+ else
+ # Restart under the correct shell, and then maybe \$echo will work.
+ exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
+ fi
fi\
"
$echo >> $output "\
@@ -1488,7 +1577,7 @@ else
# If there was a directory component, then change thisdir.
if test \"x\$destdir\" != \"x\$file\"; then
case \"\$destdir\" in
- /* | [A-Za-z]:\\*) thisdir=\"\$destdir\" ;;
+ /* | [A-Za-z]:[/\\]*) thisdir=\"\$destdir\" ;;
*) thisdir=\"\$thisdir/\$destdir\" ;;
esac
fi
@@ -1548,9 +1637,36 @@ fi\
esac
# See if we need to build an old-fashioned archive.
- if test "$build_old_libs" = "yes"; then
- # Transform .lo files to .o files.
- oldobjs="$objs"`$echo "X$libobjs " | $Xsed -e 's/[^ ]*\.a //g' -e 's/\.lo /.o /g' -e 's/ $//g'`
+ for oldlib in $oldlibs; do
+
+ if test "$build_libtool_libs" = convenience; then
+ oldobjs="$libobjs"
+ addlibs="$convenience"
+ build_libtool_libs=no
+ else
+ addlibs="$old_convenience"
+ fi
+
+ # Add in members from convenience archives.
+ for xlib in $addlibs; do
+ # Extract the objects.
+ xdir="$xlib"x
+ generated="$generated $xdir"
+ xlib=`echo "$xlib" | $Xsed -e 's%^.*/%%'`
+
+ $show "${rm}r $xdir"
+ $run ${rm}r "$xdir"
+ $show "mkdir $xdir"
+ $run mkdir "$xdir"
+ status=$?
+ if test $status -ne 0 && test ! -d "$xdir"; then
+ exit $status
+ fi
+ $show "(cd $xdir && $AR x ../$xlib)"
+ $run eval "(cd \$xdir && $AR x ../\$xlib)" || exit $?
+
+ oldobjs="$oldobjs `echo $xdir/*`"
+ done
# Do each command in the archive commands.
if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
@@ -1565,6 +1681,11 @@ fi\
$run eval "$cmd" || exit $?
done
IFS="$save_ifs"
+ done
+
+ if test -n "$generated"; then
+ $show "${rm}r$generated"
+ $run ${rm}r$generated
fi
# Now create the libtool archive.
@@ -1572,14 +1693,13 @@ fi\
*.la)
old_library=
test "$build_old_libs" = yes && old_library="$libname.a"
-
$show "creating $output"
# Only create the output if not a dry run.
if test -z "$run"; then
$echo > $output "\
# $output - a libtool library file
-# Generated by ltmain.sh - GNU $PACKAGE $VERSION
+# Generated by $PROGRAM - GNU $PACKAGE $VERSION
# The name that we can dlopen(3).
dlname='$dlname'
@@ -1606,7 +1726,7 @@ libdir='$install_libdir'\
# Do a symbolic link so that the libtool archive can be found in
# LD_LIBRARY_PATH before the program is installed.
$show "(cd $objdir && $LN_S ../$output $output)"
- $run eval "(cd $objdir && $LN_S ../$output $output)" || exit 1
+ $run eval "(cd $objdir && $LN_S ../$output $output)" || exit $?
;;
esac
exit 0
@@ -1616,7 +1736,7 @@ libdir='$install_libdir'\
install)
modename="$modename: install"
- # There may be an optional /bin/sh argument at the beginning of
+ # There may be an optional sh(1) argument at the beginning of
# install_prog (especially on Windows NT).
if test "$nonopt" = "$SHELL"; then
# Aesthetically quote it.
@@ -1650,7 +1770,7 @@ libdir='$install_libdir'\
opts=
prev=
install_type=
- isdir=
+ isdir=no
stripme=
for arg
do
@@ -1720,7 +1840,7 @@ libdir='$install_libdir'\
# Check to see that the destination is a directory.
test -d "$dest" && isdir=yes
- if test -n "$isdir"; then
+ if test "$isdir" = yes; then
destdir="$dest"
destname=
else
@@ -1737,7 +1857,7 @@ libdir='$install_libdir'\
fi
fi
case "$destdir" in
- /* | [A-Za-z]:\\*) ;;
+ /* | [A-Za-z]:[/\\]*) ;;
*)
for file in $files; do
case "$file" in
@@ -1770,7 +1890,7 @@ libdir='$install_libdir'\
*.la)
# Check to see that this really is a libtool archive.
- if (sed -e '2q' $file | egrep '^# Generated by ltmain\.sh') >/dev/null 2>&1; then :
+ if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$file' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
@@ -1875,7 +1995,7 @@ libdir='$install_libdir'\
# Deduce the name of the destination old-style object file.
case "$destfile" in
*.lo)
- staticdest=`$echo "X$destfile" | $Xsed -e 's/\.lo$/\.o/'`
+ staticdest=`$echo "X$destfile" | $Xsed -e 's/\.lo$/.o/'`
;;
*.o)
staticdest="$destfile"
@@ -1897,7 +2017,7 @@ libdir='$install_libdir'\
# Install the old object if enabled.
if test "$build_old_libs" = yes; then
# Deduce the name of the old-style object file.
- staticobj=`$echo "X$file" | $Xsed -e 's/\.lo$/\.o/'`
+ staticobj=`$echo "X$file" | $Xsed -e 's/\.lo$/.o/'`
$show "$install_prog $staticobj $staticdest"
$run eval "$install_prog \$staticobj \$staticdest" || exit $?
@@ -1906,8 +2026,16 @@ libdir='$install_libdir'\
;;
*)
+ # Figure out destination file name, if it wasn't already specified.
+ if test -n "$destname"; then
+ destfile="$destdir/$destname"
+ else
+ destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
+ destfile="$destdir/$destfile"
+ fi
+
# Do a test to see if this is really a libtool program.
- if (sed -e '4q' $file | egrep '^# Generated by ltmain\.sh') >/dev/null 2>&1; then
+ if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
link_against_libtool_libs=
finalize_command=
@@ -1935,10 +2063,7 @@ libdir='$install_libdir'\
esac
fi
libfile="$libdir/`$echo "X$lib" | $Xsed -e 's%^.*/%%g'`"
- if test -z "$libdir"; then
- $echo "$modename: warning: \`$lib' contains no -rpath information" 1>&2
- elif test -f "$libfile"; then :
- else
+ if test -n "$libdir" && test ! -f "$libfile"; then
$echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
finalize=no
fi
@@ -1963,8 +2088,8 @@ libdir='$install_libdir'\
fi
fi
- $show "$install_prog$stripme $file $dest"
- $run eval "$install_prog\$stripme \$file \$dest" || exit $?
+ $show "$install_prog$stripme $file $destfile"
+ $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
;;
esac
done
@@ -2007,6 +2132,7 @@ libdir='$install_libdir'\
finish)
modename="$modename: finish"
libdirs="$nonopt"
+ admincmds=
if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
for dir
@@ -2022,19 +2148,21 @@ libdir='$install_libdir'\
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
- $run eval "$cmd"
+ $run eval "$cmd" || admincmds="$admincmds
+ $cmd"
done
IFS="$save_ifs"
fi
if test -n "$finish_eval"; then
# Do the single finish_eval.
eval cmds=\"$finish_eval\"
- $run eval "$cmds"
+ $run eval "$cmds" || admincmds="$admincmds
+ $cmds"
fi
done
fi
- echo "------------------------------------------------------------------------------"
+ echo "----------------------------------------------------------------------"
echo "Libraries have been installed in:"
for libdir in $libdirs; do
echo " $libdir"
@@ -2043,7 +2171,7 @@ libdir='$install_libdir'\
echo "To link against installed libraries in a given directory, LIBDIR,"
echo "you must use the \`-LLIBDIR' flag during linking."
echo
- echo " You will also need to do one of the following:"
+ echo " You will also need to do at least one of the following:"
if test -n "$shlibpath_var"; then
echo " - add LIBDIR to the \`$shlibpath_var' environment variable"
echo " during execution"
@@ -2058,13 +2186,16 @@ libdir='$install_libdir'\
echo " - use the \`$flag' linker flag"
fi
+ if test -n "$admincmds"; then
+ echo " - have your system administrator run these commands:$admincmds"
+ fi
if test -f /etc/ld.so.conf; then
echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
fi
echo
echo "See any operating system documentation about shared libraries for"
echo "more information, such as the ld(1) and ld.so(8) manual pages."
- echo "------------------------------------------------------------------------------"
+ echo "----------------------------------------------------------------------"
exit 0
;;
@@ -2082,8 +2213,7 @@ libdir='$install_libdir'\
# Handle -dlopen flags immediately.
for file in $execute_dlfiles; do
- if test -f "$file"; then :
- else
+ if test ! -f "$file"; then
$echo "$modename: \`$file' is not a file" 1>&2
$echo "$help" 1>&2
exit 1
@@ -2093,7 +2223,7 @@ libdir='$install_libdir'\
case "$file" in
*.la)
# Check to see that this really is a libtool archive.
- if (sed -e '2q' $file | egrep '^# Generated by ltmain\.sh') >/dev/null 2>&1; then :
+ if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
@@ -2164,7 +2294,7 @@ libdir='$install_libdir'\
-*) ;;
*)
# Do a test to see if this is really a libtool program.
- if (sed -e '4q' $file | egrep '^# Generated by ltmain\.sh') >/dev/null 2>&1; then
+ if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
# If there is no directory component, then add one.
case "$file" in
*/* | *\\*) . $file ;;
@@ -2185,6 +2315,14 @@ libdir='$install_libdir'\
# Export the shlibpath_var.
eval "export $shlibpath_var"
+ # Restore saved enviroment variables
+ if test "${save_LC_ALL+set}" = set; then
+ LC_ALL="$save_LC_ALL"; export LC_ALL
+ fi
+ if test "${save_LANG+set}" = set; then
+ LANG="$save_LANG"; export LANG
+ fi
+
# Now actually exec the command.
eval "exec \$cmd$args"
@@ -2229,7 +2367,7 @@ libdir='$install_libdir'\
case "$name" in
*.la)
# Possibly a libtool archive, so verify it.
- if (sed -e '2q' $file | egrep '^# Generated by ltmain\.sh') >/dev/null 2>&1; then
+ if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
. $dir/$name
# Delete the libtool libraries and symlinks.
@@ -2273,7 +2411,7 @@ libdir='$install_libdir'\
*.lo)
if test "$build_old_libs" = yes; then
- oldobj=`$echo "X$name" | $Xsed -e 's/\.lo$/\.o/'`
+ oldobj=`$echo "X$name" | $Xsed -e 's/\.lo$/.o/'`
rmfiles="$rmfiles $dir/$oldobj"
fi
$show "$rm $rmfiles"
@@ -2308,8 +2446,10 @@ case "$mode" in
Provide generalized library-building support services.
+ --config show all configuration variables
+ --debug enable verbose shell tracing
-n, --dry-run display commands without modifying any files
- --features display configuration information and exit
+ --features display basic configuration information and exit
--finish same as \`--mode=finish'
--help display this help message and exit
--mode=MODE use operation mode MODE [default=inferred from MODE-ARGS]
@@ -2337,6 +2477,10 @@ compile)
Compile a source file into a libtool library object.
+This mode accepts the following additional options:
+
+ -static always build a \`.o' file suitable for static linking
+
COMPILE-COMMAND is a command to be used in creating a \`standard' object file
from the given SOURCEFILE.