diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | ChangeLog.pre-2-0 | 6 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 6 | ||||
-rw-r--r-- | ChangeLog.pre-2-12 | 6 | ||||
-rw-r--r-- | ChangeLog.pre-2-2 | 6 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 6 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 6 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 6 | ||||
-rw-r--r-- | Makefile.am | 10 | ||||
-rwxr-xr-x | config.guess | 13 | ||||
-rwxr-xr-x | config.sub | 38 | ||||
-rw-r--r-- | glib-config.in | 4 | ||||
-rw-r--r-- | glib/Makefile.am | 10 | ||||
-rw-r--r-- | gmodule/ChangeLog | 6 | ||||
-rw-r--r-- | gmodule/Makefile.am | 22 | ||||
-rwxr-xr-x | ltconfig | 303 | ||||
-rw-r--r-- | ltmain.sh | 658 |
17 files changed, 665 insertions, 447 deletions
@@ -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; \ @@ -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: @@ -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. |