+++ /dev/null
-[PATCH] fix libtool
-
-Update to 1.5.22 so it doesn't get confused about rpath, and apply
-buildroot-libtool-v1.5.patch so cross compilation works.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- admin/ltmain.sh | 2080 ++++++++++++++++++++++++++++++++++----------------------
- 1 file changed, 1284 insertions(+), 796 deletions(-)
-
-Index: taglib-1.5/admin/ltmain.sh
-===================================================================
---- taglib-1.5.orig/admin/ltmain.sh
-+++ taglib-1.5/admin/ltmain.sh
-@@ -1,7 +1,7 @@
- # ltmain.sh - Provide generalized library-building support services.
- # NOTE: Changing this file will not affect anything until you rerun configure.
- #
--# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003
-+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
- # Free Software Foundation, Inc.
- # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
- #
-@@ -24,6 +24,34 @@
- # configuration script generated by Autoconf, you may include it under
- # the same distribution terms that you use for the rest of that program.
-
-+basename="s,^.*/,,g"
-+
-+# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
-+# is ksh but when the shell is invoked as "sh" and the current value of
-+# the _XPG environment variable is not equal to 1 (one), the special
-+# positional parameter $0, within a function call, is the name of the
-+# function.
-+progpath="$0"
-+
-+# The name of this program:
-+progname=`echo "$progpath" | $SED $basename`
-+modename="$progname"
-+
-+# Global variables:
-+EXIT_SUCCESS=0
-+EXIT_FAILURE=1
-+
-+PROGRAM=ltmain.sh
-+PACKAGE=libtool
-+VERSION=1.5.22
-+TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)"
-+
-+# See if we are running on zsh, and set the options which allow our
-+# commands through without removal of \ escapes.
-+if test -n "${ZSH_VERSION+set}" ; then
-+ setopt NO_GLOB_SUBST
-+fi
-+
- # Check that we have a working $echo.
- if test "X$1" = X--no-reexec; then
- # Discard the --no-reexec flag, and continue.
-@@ -36,7 +64,7 @@
- :
- else
- # Restart under the correct shell, and then maybe $echo will work.
-- exec $SHELL "$0" --no-reexec ${1+"$@"}
-+ exec $SHELL "$progpath" --no-reexec ${1+"$@"}
- fi
-
- if test "X$1" = X--fallback-echo; then
-@@ -45,19 +73,9 @@
- cat <<EOF
- $*
- EOF
-- exit 0
-+ exit $EXIT_SUCCESS
- fi
-
--# The name of this program.
--progname=`$echo "$0" | ${SED} 's%^.*/%%'`
--modename="$progname"
--
--# Constants.
--PROGRAM=ltmain.sh
--PACKAGE=libtool
--VERSION=1.5a
--TIMESTAMP=" (1.1240 2003/06/26 06:55:19)"
--
- default_mode=
- help="Try \`$progname --help' for more information."
- magic="%%%MAGIC variable%%%"
-@@ -70,14 +88,15 @@
- Xsed="${SED}"' -e 1s/^X//'
- sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
- # test EBCDIC or ASCII
--case `echo A|tr A '\301'` in
-- A) # EBCDIC based system
-- SP2NL="tr '\100' '\n'"
-- NL2SP="tr '\r\n' '\100\100'"
-+case `echo X|tr X '\101'` in
-+ A) # ASCII based system
-+ # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
-+ SP2NL='tr \040 \012'
-+ NL2SP='tr \015\012 \040\040'
- ;;
-- *) # Assume ASCII based system
-- SP2NL="tr '\040' '\012'"
-- NL2SP="tr '\015\012' '\040\040'"
-+ *) # EBCDIC based system
-+ SP2NL='tr \100 \n'
-+ NL2SP='tr \r\n \100\100'
- ;;
- esac
-
-@@ -94,12 +113,14 @@
- fi
-
- # Make sure IFS has a sensible default
--: ${IFS=" "}
-+lt_nl='
-+'
-+IFS=" $lt_nl"
-
- if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
- $echo "$modename: not configured to build any kind of library" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Global variables.
-@@ -111,6 +132,8 @@
- show="$echo"
- show_help=
- execute_dlfiles=
-+duplicate_deps=no
-+preserve_args=
- lo2o="s/\\.lo\$/.${objext}/"
- o2lo="s/\\.${objext}\$/.lo/"
-
-@@ -118,10 +141,51 @@
- # Shell function definitions:
- # This seems to be the best place for them
-
-+# func_mktempdir [string]
-+# Make a temporary directory that won't clash with other running
-+# libtool processes, and avoids race conditions if possible. If
-+# given, STRING is the basename for that directory.
-+func_mktempdir ()
-+{
-+ my_template="${TMPDIR-/tmp}/${1-$progname}"
-+
-+ if test "$run" = ":"; then
-+ # Return a directory name, but don't create it in dry-run mode
-+ my_tmpdir="${my_template}-$$"
-+ else
-+
-+ # If mktemp works, use that first and foremost
-+ my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
-+
-+ if test ! -d "$my_tmpdir"; then
-+ # Failing that, at least try and use $RANDOM to avoid a race
-+ my_tmpdir="${my_template}-${RANDOM-0}$$"
-+
-+ save_mktempdir_umask=`umask`
-+ umask 0077
-+ $mkdir "$my_tmpdir"
-+ umask $save_mktempdir_umask
-+ fi
-+
-+ # If we're not in dry-run mode, bomb out on failure
-+ test -d "$my_tmpdir" || {
-+ $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2
-+ exit $EXIT_FAILURE
-+ }
-+ fi
-+
-+ $echo "X$my_tmpdir" | $Xsed
-+}
-+
-+
-+# func_win32_libid arg
-+# return the library type of file 'arg'
-+#
- # Need a lot of goo to handle *both* DLLs and import libs
- # Has to be a shell function in order to 'eat' the argument
- # that is supplied when $file_magic_command is called.
--win32_libid () {
-+func_win32_libid ()
-+{
- win32_libid_type="unknown"
- win32_fileres=`file -L $1 2>/dev/null`
- case $win32_fileres in
-@@ -130,17 +194,16 @@
- ;;
- *ar\ archive*) # could be an import, or static
- if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \
-- grep -E 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
-+ $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
- win32_nmres=`eval $NM -f posix -A $1 | \
-- sed -n -e '1,100{/ I /{x;/import/!{s/^/import/;h;p;};x;};}'`
-- if test "X$win32_nmres" = "Ximport" ; then
-- win32_libid_type="x86 archive import"
-- else
-- win32_libid_type="x86 archive static"
-- fi
-+ $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'`
-+ case $win32_nmres in
-+ import*) win32_libid_type="x86 archive import";;
-+ *) win32_libid_type="x86 archive static";;
-+ esac
- fi
- ;;
-- *DLL*)
-+ *DLL*)
- win32_libid_type="x86 DLL"
- ;;
- *executable*) # but shell scripts are "executable" too...
-@@ -154,9 +217,182 @@
- $echo $win32_libid_type
- }
-
-+
-+# func_infer_tag arg
-+# Infer tagged configuration to use if any are available and
-+# if one wasn't chosen via the "--tag" command line option.
-+# Only attempt this if the compiler in the base compile
-+# command doesn't match the default compiler.
-+# arg is usually of the form 'gcc ...'
-+func_infer_tag ()
-+{
-+ if test -n "$available_tags" && test -z "$tagname"; then
-+ CC_quoted=
-+ for arg in $CC; do
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ CC_quoted="$CC_quoted $arg"
-+ done
-+ case $@ in
-+ # Blanks in the command may have been stripped by the calling shell,
-+ # but not from the CC environment variable when configure was run.
-+ " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) ;;
-+ # Blanks at the start of $base_compile will cause this to fail
-+ # if we don't check for them as well.
-+ *)
-+ for z in $available_tags; do
-+ if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
-+ # Evaluate the configuration.
-+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
-+ CC_quoted=
-+ for arg in $CC; do
-+ # Double-quote args containing other shell metacharacters.
-+ case $arg in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ arg="\"$arg\""
-+ ;;
-+ esac
-+ CC_quoted="$CC_quoted $arg"
-+ done
-+ case "$@ " in
-+ " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*)
-+ # The compiler in the base compile command matches
-+ # the one in the tagged configuration.
-+ # Assume this is the tagged configuration we want.
-+ tagname=$z
-+ break
-+ ;;
-+ esac
-+ fi
-+ done
-+ # If $tagname still isn't set, then no tagged configuration
-+ # was found and let the user know that the "--tag" command
-+ # line option must be used.
-+ if test -z "$tagname"; then
-+ $echo "$modename: unable to infer tagged configuration"
-+ $echo "$modename: defaulting to \`CC'"
-+ $echo "$modename: if this is not correct, specify a tag with \`--tag'"
-+# exit $EXIT_FAILURE
-+# else
-+# $echo "$modename: using $tagname tagged configuration"
-+ fi
-+ ;;
-+ esac
-+ fi
-+}
-+
-+
-+# func_extract_an_archive dir oldlib
-+func_extract_an_archive ()
-+{
-+ f_ex_an_ar_dir="$1"; shift
-+ f_ex_an_ar_oldlib="$1"
-+
-+ $show "(cd $f_ex_an_ar_dir && $AR x $f_ex_an_ar_oldlib)"
-+ $run eval "(cd \$f_ex_an_ar_dir && $AR x \$f_ex_an_ar_oldlib)" || exit $?
-+ if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
-+ :
-+ else
-+ $echo "$modename: ERROR: object name conflicts: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" 1>&2
-+ exit $EXIT_FAILURE
-+ fi
-+}
-+
-+# func_extract_archives gentop oldlib ...
-+func_extract_archives ()
-+{
-+ my_gentop="$1"; shift
-+ my_oldlibs=${1+"$@"}
-+ my_oldobjs=""
-+ my_xlib=""
-+ my_xabs=""
-+ my_xdir=""
-+ my_status=""
-+
-+ $show "${rm}r $my_gentop"
-+ $run ${rm}r "$my_gentop"
-+ $show "$mkdir $my_gentop"
-+ $run $mkdir "$my_gentop"
-+ my_status=$?
-+ if test "$my_status" -ne 0 && test ! -d "$my_gentop"; then
-+ exit $my_status
-+ fi
-+
-+ for my_xlib in $my_oldlibs; do
-+ # Extract the objects.
-+ case $my_xlib in
-+ [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
-+ *) my_xabs=`pwd`"/$my_xlib" ;;
-+ esac
-+ my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'`
-+ my_xdir="$my_gentop/$my_xlib"
-+
-+ $show "${rm}r $my_xdir"
-+ $run ${rm}r "$my_xdir"
-+ $show "$mkdir $my_xdir"
-+ $run $mkdir "$my_xdir"
-+ exit_status=$?
-+ if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then
-+ exit $exit_status
-+ fi
-+ case $host in
-+ *-darwin*)
-+ $show "Extracting $my_xabs"
-+ # Do not bother doing anything if just a dry run
-+ if test -z "$run"; then
-+ darwin_orig_dir=`pwd`
-+ cd $my_xdir || exit $?
-+ darwin_archive=$my_xabs
-+ darwin_curdir=`pwd`
-+ darwin_base_archive=`$echo "X$darwin_archive" | $Xsed -e 's%^.*/%%'`
-+ darwin_arches=`lipo -info "$darwin_archive" 2>/dev/null | $EGREP Architectures 2>/dev/null`
-+ if test -n "$darwin_arches"; then
-+ darwin_arches=`echo "$darwin_arches" | $SED -e 's/.*are://'`
-+ darwin_arch=
-+ $show "$darwin_base_archive has multiple architectures $darwin_arches"
-+ for darwin_arch in $darwin_arches ; do
-+ mkdir -p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
-+ lipo -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
-+ cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
-+ func_extract_an_archive "`pwd`" "${darwin_base_archive}"
-+ cd "$darwin_curdir"
-+ $rm "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
-+ done # $darwin_arches
-+ ## Okay now we have a bunch of thin objects, gotta fatten them up :)
-+ darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print| xargs basename | sort -u | $NL2SP`
-+ darwin_file=
-+ darwin_files=
-+ for darwin_file in $darwin_filelist; do
-+ darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`
-+ lipo -create -output "$darwin_file" $darwin_files
-+ done # $darwin_filelist
-+ ${rm}r unfat-$$
-+ cd "$darwin_orig_dir"
-+ else
-+ cd "$darwin_orig_dir"
-+ func_extract_an_archive "$my_xdir" "$my_xabs"
-+ fi # $darwin_arches
-+ fi # $run
-+ ;;
-+ *)
-+ func_extract_an_archive "$my_xdir" "$my_xabs"
-+ ;;
-+ esac
-+ my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
-+ done
-+ func_extract_archives_result="$my_oldobjs"
-+}
- # End of Shell function definitions
- #####################################
-
-+# Darwin sucks
-+eval std_shrext=\"$shrext_cmds\"
-+
-+disable_libs=no
-+
- # Parse our command line options once, thoroughly.
- while test "$#" -gt 0
- do
-@@ -176,12 +412,13 @@
- ;;
- tag)
- tagname="$arg"
-+ preserve_args="${preserve_args}=$arg"
-
- # Check whether tagname contains only valid characters
- case $tagname in
- *[!-_A-Za-z0-9,/]*)
- $echo "$progname: invalid tag name: $tagname" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
-
-@@ -191,10 +428,10 @@
- # not specially marked.
- ;;
- *)
-- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then
-+ if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$progpath" > /dev/null; then
- taglist="$taglist $tagname"
- # Evaluate the configuration.
-- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`"
-+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $progpath`"
- else
- $echo "$progname: ignoring unknown tag $tagname" 1>&2
- fi
-@@ -220,24 +457,25 @@
- --version)
- $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"
- $echo
-- $echo "Copyright (C) 2003 Free Software Foundation, Inc."
-+ $echo "Copyright (C) 2005 Free Software Foundation, Inc."
- $echo "This is free software; see the source for copying conditions. There is NO"
- $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-- exit 0
-+ exit $?
- ;;
-
- --config)
-- ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
-+ ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $progpath
- # Now print the configurations for the tags.
- for tagname in $taglist; do
-- ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0"
-+ ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$progpath"
- done
-- exit 0
-+ exit $?
- ;;
-
- --debug)
- $echo "$progname: enabling shell trace mode"
- set -x
-+ preserve_args="$preserve_args $arg"
- ;;
-
- --dry-run | -n)
-@@ -256,7 +494,7 @@
- else
- $echo "disable static libraries"
- fi
-- exit 0
-+ exit $?
- ;;
-
- --finish) mode="finish" ;;
-@@ -268,13 +506,19 @@
-
- --quiet | --silent)
- show=:
-+ preserve_args="$preserve_args $arg"
- ;;
-
-- --tag) prevopt="--tag" prev=tag ;;
-+ --tag)
-+ prevopt="--tag"
-+ prev=tag
-+ preserve_args="$preserve_args --tag"
-+ ;;
- --tag=*)
- set tag "$optarg" ${1+"$@"}
- shift
- prev=tag
-+ preserve_args="$preserve_args --tag"
- ;;
-
- -dlopen)
-@@ -285,7 +529,7 @@
- -*)
- $echo "$modename: unrecognized option \`$arg'" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
-
- *)
-@@ -298,9 +542,21 @@
- if test -n "$prevopt"; then
- $echo "$modename: option \`$prevopt' requires an argument" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
-+case $disable_libs in
-+no)
-+ ;;
-+shared)
-+ build_libtool_libs=no
-+ build_old_libs=yes
-+ ;;
-+static)
-+ build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
-+ ;;
-+esac
-+
- # If this variable is set in any of the actions, the command in it
- # will be execed at the end. This prevents here-documents from being
- # left over by shells.
-@@ -311,7 +567,7 @@
- # Infer the operation mode.
- if test -z "$mode"; then
- $echo "*** Warning: inferring the mode of operation is deprecated." 1>&2
-- $echo "*** Future versions of Libtool will require -mode=MODE be specified." 1>&2
-+ $echo "*** Future versions of Libtool will require --mode=MODE be specified." 1>&2
- case $nonopt in
- *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*)
- mode=link
-@@ -354,7 +610,7 @@
- if test -n "$execute_dlfiles" && test "$mode" != execute; then
- $echo "$modename: unrecognized option \`-dlopen'" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Change the help message to a mode-specific one.
-@@ -369,13 +625,15 @@
- # Get the compilation command and the source file.
- base_compile=
- srcfile="$nonopt" # always keep a non-empty value in "srcfile"
-+ suppress_opt=yes
- suppress_output=
- arg_mode=normal
- libobj=
-+ later=
-
- for arg
- do
-- case "$arg_mode" in
-+ case $arg_mode in
- arg )
- # do not "continue". Instead, add this to base_compile
- lastarg="$arg"
-@@ -394,24 +652,19 @@
- -o)
- if test -n "$libobj" ; then
- $echo "$modename: you cannot specify \`-o' more than once" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- arg_mode=target
- continue
- ;;
-
-- -static)
-- build_old_libs=yes
-+ -static | -prefer-pic | -prefer-non-pic)
-+ later="$later $arg"
- continue
- ;;
-
-- -prefer-pic)
-- pic_mode=yes
-- continue
-- ;;
--
-- -prefer-non-pic)
-- pic_mode=no
-+ -no-suppress)
-+ suppress_opt=no
- continue
- ;;
-
-@@ -424,7 +677,7 @@
- args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
- lastarg=
- save_ifs="$IFS"; IFS=','
-- for arg in $args; do
-+ for arg in $args; do
- IFS="$save_ifs"
-
- # Double-quote args containing other shell metacharacters.
-@@ -462,7 +715,10 @@
- case $lastarg in
- # Double-quote args containing other shell metacharacters.
- # Many Bourne shells cannot handle close brackets correctly
-- # in scan sets, so we specify it separately.
-+ # in scan sets, and some SunOS ksh mistreat backslash-escaping
-+ # in scan sets (worked around with variable expansion),
-+ # and furthermore cannot handle '|' '&' '(' ')' in scan sets
-+ # at all, so we specify them separately.
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- lastarg="\"$lastarg\""
- ;;
-@@ -474,11 +730,11 @@
- case $arg_mode in
- arg)
- $echo "$modename: you must specify an argument for -Xcompile"
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- target)
- $echo "$modename: you must specify a target with \`-o'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- *)
- # Get the name of the library object.
-@@ -511,51 +767,39 @@
- *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
- *)
- $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
-
-- # Infer tagged configuration to use if any are available and
-- # if one wasn't chosen via the "--tag" command line option.
-- # Only attempt this if the compiler in the base compile
-- # command doesn't match the default compiler.
-- if test -n "$available_tags" && test -z "$tagname"; then
-- case $base_compile in
-- # Blanks in the command may have been stripped by the calling shell,
-- # but not from the CC environment variable when configure was run.
-- " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "*) ;;
-- # Blanks at the start of $base_compile will cause this to fail
-- # if we don't check for them as well.
-- *)
-- for z in $available_tags; do
-- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then
-- # Evaluate the configuration.
-- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`"
-- case "$base_compile " in
-- "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*)
-- # The compiler in the base compile command matches
-- # the one in the tagged configuration.
-- # Assume this is the tagged configuration we want.
-- tagname=$z
-- break
-- ;;
-- esac
-- fi
-- done
-- # If $tagname still isn't set, then no tagged configuration
-- # was found and let the user know that the "--tag" command
-- # line option must be used.
-- if test -z "$tagname"; then
-- $echo "$modename: unable to infer tagged configuration"
-- $echo "$modename: specify a tag with \`--tag'" 1>&2
-- exit 1
--# else
--# $echo "$modename: using $tagname tagged configuration"
-- fi
-+ func_infer_tag $base_compile
-+
-+ for arg in $later; do
-+ case $arg in
-+ -static)
-+ build_old_libs=yes
-+ continue
-+ ;;
-+
-+ -prefer-pic)
-+ pic_mode=yes
-+ continue
-+ ;;
-+
-+ -prefer-non-pic)
-+ pic_mode=no
-+ continue
- ;;
- esac
-- fi
-+ done
-
-+ qlibobj=`$echo "X$libobj" | $Xsed -e "$sed_quote_subst"`
-+ case $qlibobj in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ qlibobj="\"$qlibobj\"" ;;
-+ esac
-+ test "X$libobj" != "X$qlibobj" \
-+ && $echo "X$libobj" | grep '[]~#^*{};<>?"'"'"' &()|`$[]' \
-+ && $echo "$modename: libobj name \`$libobj' may not contain shell special characters."
- objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
- xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
- if test "X$xdir" = "X$obj"; then
-@@ -568,7 +812,7 @@
- if test -z "$base_compile"; then
- $echo "$modename: you must specify a compilation command" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Delete any leftover library objects.
-@@ -579,7 +823,7 @@
- fi
-
- $run $rm $removelist
-- trap "$run $rm $removelist; exit 1" 1 2 15
-+ trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15
-
- # On Cygwin there's no "real" PIC flag so we must build both object types
- case $host_os in
-@@ -598,7 +842,7 @@
- output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
- lockfile="$output_obj.lock"
- removelist="$removelist $output_obj $lockfile"
-- trap "$run $rm $removelist; exit 1" 1 2 15
-+ trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15
- else
- output_obj=
- need_locks=no
-@@ -608,7 +852,7 @@
- # Lock this critical section if it is needed
- # We use this script file to make the link, it avoids creating a new file
- if test "$need_locks" = yes; then
-- until $run ln "$0" "$lockfile" 2>/dev/null; do
-+ until $run ln "$progpath" "$lockfile" 2>/dev/null; do
- $show "Waiting for $lockfile to be removed"
- sleep 2
- done
-@@ -626,14 +870,19 @@
- compiler."
-
- $run $rm $removelist
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-- $echo $srcfile > "$lockfile"
-+ $echo "$srcfile" > "$lockfile"
- fi
-
- if test -n "$fix_srcfile_path"; then
- eval srcfile=\"$fix_srcfile_path\"
- fi
-+ qsrcfile=`$echo "X$srcfile" | $Xsed -e "$sed_quote_subst"`
-+ case $qsrcfile in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ qsrcfile="\"$qsrcfile\"" ;;
-+ esac
-
- $run $rm "$libobj" "${libobj}T"
-
-@@ -655,18 +904,18 @@
- fbsd_hideous_sh_bug=$base_compile
-
- if test "$pic_mode" != no; then
-- command="$base_compile $srcfile $pic_flag"
-+ command="$base_compile $qsrcfile $pic_flag"
- else
- # Don't build PIC code
-- command="$base_compile $srcfile"
-+ command="$base_compile $qsrcfile"
- fi
-
- if test ! -d "${xdir}$objdir"; then
- $show "$mkdir ${xdir}$objdir"
- $run $mkdir ${xdir}$objdir
-- status=$?
-- if test "$status" -ne 0 && test ! -d "${xdir}$objdir"; then
-- exit $status
-+ exit_status=$?
-+ if test "$exit_status" -ne 0 && test ! -d "${xdir}$objdir"; then
-+ exit $exit_status
- fi
- fi
-
-@@ -681,7 +930,7 @@
- if $run eval "$command"; then :
- else
- test -n "$output_obj" && $run $rm $removelist
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- if test "$need_locks" = warn &&
-@@ -701,7 +950,7 @@
- compiler."
-
- $run $rm $removelist
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Just move the object if needed, then go on to compile the next one
-@@ -722,7 +971,9 @@
- EOF
-
- # Allow error messages only from the first compilation.
-- suppress_output=' >/dev/null 2>&1'
-+ if test "$suppress_opt" = yes; then
-+ suppress_output=' >/dev/null 2>&1'
-+ fi
- else
- # No PIC object so indicate it doesn't exist in the libtool
- # object file.
-@@ -736,9 +987,9 @@
- if test "$build_old_libs" = yes; then
- if test "$pic_mode" != yes; then
- # Don't build PIC code
-- command="$base_compile $srcfile"
-+ command="$base_compile $qsrcfile"
- else
-- command="$base_compile $srcfile $pic_flag"
-+ command="$base_compile $qsrcfile $pic_flag"
- fi
- if test "$compiler_c_o" = yes; then
- command="$command -o $obj"
-@@ -751,7 +1002,7 @@
- if $run eval "$command"; then :
- else
- $run $rm $removelist
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- if test "$need_locks" = warn &&
-@@ -771,7 +1022,7 @@
- compiler."
-
- $run $rm $removelist
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Just move the object if needed
-@@ -809,7 +1060,7 @@
- $run $rm "$lockfile"
- fi
-
-- exit 0
-+ exit $EXIT_SUCCESS
- ;;
-
- # libtool link mode
-@@ -835,7 +1086,7 @@
- ;;
- esac
- libtool_args="$nonopt"
-- base_compile="$nonopt"
-+ base_compile="$nonopt $@"
- compile_command="$nonopt"
- finalize_command="$nonopt"
-
-@@ -847,7 +1098,6 @@
- old_convenience=
- deplibs=
- old_deplibs=
-- add_flags=
- compiler_flags=
- linker_flags=
- dllsearchpath=
-@@ -868,6 +1118,8 @@
- no_install=no
- objs=
- non_pic_objects=
-+ notinst_path= # paths that contain not-installed libtool libraries
-+ precious_files_regex=
- prefer_static_libs=no
- preload=no
- prev=
-@@ -881,6 +1133,8 @@
- vinfo=
- vinfo_number=no
-
-+ func_infer_tag $base_compile
-+
- # We need to know -static, to get the right output filenames.
- for arg
- do
-@@ -893,14 +1147,15 @@
- if test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
-+ prefer_static_libs=yes
- else
- if test -z "$pic_flag" && test -n "$link_static_flag"; then
- dlopen_self=$dlopen_self_static
- fi
-+ prefer_static_libs=built
- fi
- build_libtool_libs=no
- build_old_libs=yes
-- prefer_static_libs=yes
- break
- ;;
- esac
-@@ -912,7 +1167,6 @@
- # Go through the arguments, transforming them on the way.
- while test "$#" -gt 0; do
- arg="$1"
-- base_compile="$base_compile $arg"
- shift
- case $arg in
- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-@@ -976,7 +1230,7 @@
- export_symbols="$arg"
- if test ! -f "$arg"; then
- $echo "$modename: symbol file \`$arg' does not exist"
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- prev=
- continue
-@@ -991,6 +1245,11 @@
- prev=
- continue
- ;;
-+ precious_regex)
-+ precious_files_regex="$arg"
-+ prev=
-+ continue
-+ ;;
- release)
- release="-$arg"
- prev=
-@@ -1023,7 +1282,7 @@
- test "$pic_object" = none && \
- test "$non_pic_object" = none; then
- $echo "$modename: cannot find name of object for \`$arg'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Extract subdirectory from the argument.
-@@ -1071,12 +1330,17 @@
- if test -z "$pic_object" || test "$pic_object" = none ; then
- arg="$non_pic_object"
- fi
-+ else
-+ # If the PIC object exists, use it instead.
-+ # $xdir was prepended to $pic_object above.
-+ non_pic_object="$pic_object"
-+ non_pic_objects="$non_pic_objects $non_pic_object"
- fi
- else
- # Only an error if not doing a dry-run.
- if test -z "$run"; then
- $echo "$modename: \`$arg' is not a valid libtool object" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- else
- # Dry-run case.
-
-@@ -1097,7 +1361,7 @@
- done
- else
- $echo "$modename: link input file \`$save_arg' does not exist"
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- arg=$save_arg
- prev=
-@@ -1109,7 +1373,7 @@
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
- if test "$prev" = rpath; then
-@@ -1149,16 +1413,15 @@
- finalize_command="$finalize_command $qarg"
- continue
- ;;
-- framework)
-- case $host in
-- *-*-darwin*)
-- case "$deplibs " in
-- *" $qarg.ltframework "*) ;;
-- *) deplibs="$deplibs $qarg.ltframework" # this is fixed later
-- ;;
-- esac
-- ;;
-- esac
-+ shrext)
-+ shrext_cmds="$arg"
-+ prev=
-+ continue
-+ ;;
-+ darwin_framework|darwin_framework_skip)
-+ test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg"
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
- prev=
- continue
- ;;
-@@ -1210,7 +1473,7 @@
- -export-symbols | -export-symbols-regex)
- if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
- $echo "$modename: more than one -exported-symbols argument is not allowed"
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- if test "X$arg" = "X-export-symbols"; then
- prev=expsyms
-@@ -1220,6 +1483,18 @@
- continue
- ;;
-
-+ -framework|-arch|-isysroot)
-+ case " $CC " in
-+ *" ${arg} ${1} "* | *" ${arg} ${1} "*)
-+ prev=darwin_framework_skip ;;
-+ *) compiler_flags="$compiler_flags $arg"
-+ prev=darwin_framework ;;
-+ esac
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ continue
-+ ;;
-+
- -inst-prefix-dir)
- prev=inst_prefix
- continue
-@@ -1246,7 +1521,8 @@
- absdir=`cd "$dir" && pwd`
- if test -z "$absdir"; then
- $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
-- exit 1
-+ absdir="$dir"
-+ notinst_path="$notinst_path $dir"
- fi
- dir="$absdir"
- ;;
-@@ -1260,10 +1536,15 @@
- esac
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'`
- case :$dllsearchpath: in
- *":$dir:"*) ;;
- *) dllsearchpath="$dllsearchpath:$dir";;
- esac
-+ case :$dllsearchpath: in
-+ *":$testbindir:"*) ;;
-+ *) dllsearchpath="$dllsearchpath:$testbindir";;
-+ esac
- ;;
- esac
- continue
-@@ -1272,26 +1553,35 @@
- -l*)
- if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
- case $host in
-- *-*-cygwin* | *-*-pw32* | *-*-beos*)
-+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*)
- # These systems don't actually have a C or math library (as such)
- continue
- ;;
-- *-*-mingw* | *-*-os2*)
-+ *-*-os2*)
- # These systems don't actually have a C library (as such)
- test "X$arg" = "X-lc" && continue
- ;;
-- *-*-openbsd* | *-*-freebsd*)
-+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc due to us having libc/libc_r.
- test "X$arg" = "X-lc" && continue
- ;;
- *-*-rhapsody* | *-*-darwin1.[012])
- # Rhapsody C and math libraries are in the System framework
-- deplibs="$deplibs System.ltframework"
-+ deplibs="$deplibs -framework System"
- continue
-+ ;;
-+ *-*-sco3.2v5* | *-*-sco5v6*)
-+ # Causes problems with __ctype
-+ test "X$arg" = "X-lc" && continue
-+ ;;
-+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
-+ # Compiler inserts libc in the correct place for threads to work
-+ test "X$arg" = "X-lc" && continue
-+ ;;
- esac
- elif test "X$arg" = "X-lc_r"; then
- case $host in
-- *-*-openbsd*)
-+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc_r directly, use -pthread flag.
- continue
- ;;
-@@ -1301,18 +1591,41 @@
- continue
- ;;
-
-+ # Tru64 UNIX uses -model [arg] to determine the layout of C++
-+ # classes, name mangling, and exception handling.
-+ -model)
-+ compile_command="$compile_command $arg"
-+ compiler_flags="$compiler_flags $arg"
-+ finalize_command="$finalize_command $arg"
-+ prev=xcompiler
-+ continue
-+ ;;
-+
-+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
-+ compiler_flags="$compiler_flags $arg"
-+ compile_command="$compile_command $arg"
-+ finalize_command="$finalize_command $arg"
-+ continue
-+ ;;
-+
- -module)
- module=yes
- continue
- ;;
-
-- # gcc -m* arguments should be passed to the linker via $compiler_flags
-- # in order to pass architecture information to the linker
-- # (e.g. 32 vs 64-bit). This may also be accomplished via -Wl,-mfoo
-- # but this is not reliable with gcc because gcc may use -mfoo to
-- # select a different linker, different libraries, etc, while
-- # -Wl,-mfoo simply passes -mfoo to the linker.
-- -m*)
-+ # -64, -mips[0-9] enable 64-bit mode on the SGI compiler
-+ # -r[0-9][0-9]* specifies the processor on the SGI compiler
-+ # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler
-+ # +DA*, +DD* enable 64-bit mode on the HP compiler
-+ # -q* pass through compiler args for the IBM compiler
-+ # -m* pass through architecture-specific compiler args for GCC
-+ # -m*, -t[45]*, -txscale* pass through architecture-specific
-+ # compiler args for GCC
-+ # -pg pass through profiling flag for GCC
-+ # @file GCC response files
-+ -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \
-+ -t[45]*|-txscale*|@*)
-+
- # Unknown arguments in both finalize_command and compile_command need
- # to be aesthetically quoted because they are evaled later.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-@@ -1323,9 +1636,7 @@
- esac
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
-- if test "$with_gcc" = "yes" ; then
-- compiler_flags="$compiler_flags $arg"
-- fi
-+ compiler_flags="$compiler_flags $arg"
- continue
- ;;
-
-@@ -1365,6 +1676,11 @@
-
- -o) prev=output ;;
-
-+ -precious-files-regex)
-+ prev=precious_regex
-+ continue
-+ ;;
-+
- -release)
- prev=release
- continue
-@@ -1387,7 +1703,7 @@
- [\\/]* | [A-Za-z]:[\\/]*) ;;
- *)
- $echo "$modename: only absolute run-paths are allowed" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
- case "$xrpath " in
-@@ -1473,11 +1789,6 @@
- continue
- ;;
-
-- -framework)
-- prev=framework
-- continue
-- ;;
--
- # Some other compiler flag.
- -* | +*)
- # Unknown arguments in both finalize_command and compile_command need
-@@ -1488,7 +1799,6 @@
- arg="\"$arg\""
- ;;
- esac
-- add_flags="$add_flags $arg"
- ;;
-
- *.$objext)
-@@ -1516,7 +1826,7 @@
- test "$pic_object" = none && \
- test "$non_pic_object" = none; then
- $echo "$modename: cannot find name of object for \`$arg'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Extract subdirectory from the argument.
-@@ -1564,12 +1874,17 @@
- if test -z "$pic_object" || test "$pic_object" = none ; then
- arg="$non_pic_object"
- fi
-+ else
-+ # If the PIC object exists, use it instead.
-+ # $xdir was prepended to $pic_object above.
-+ non_pic_object="$pic_object"
-+ non_pic_objects="$non_pic_objects $non_pic_object"
- fi
- else
- # Only an error if not doing a dry-run.
- if test -z "$run"; then
- $echo "$modename: \`$arg' is not a valid libtool object" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- else
- # Dry-run case.
-
-@@ -1623,7 +1938,6 @@
- arg="\"$arg\""
- ;;
- esac
-- add_flags="$add_flags $arg"
- ;;
- esac # arg
-
-@@ -1637,48 +1951,7 @@
- if test -n "$prev"; then
- $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
- $echo "$help" 1>&2
-- exit 1
-- fi
--
-- # Infer tagged configuration to use if any are available and
-- # if one wasn't chosen via the "--tag" command line option.
-- # Only attempt this if the compiler in the base link
-- # command doesn't match the default compiler.
-- if test -n "$available_tags" && test -z "$tagname"; then
-- case $base_compile in
-- # Blanks in the command may have been stripped by the calling shell,
-- # but not from the CC environment variable when configure was run.
-- "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) ;;
-- # Blanks at the start of $base_compile will cause this to fail
-- # if we don't check for them as well.
-- *)
-- for z in $available_tags; do
-- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then
-- # Evaluate the configuration.
-- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`"
-- case $base_compile in
-- "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*)
-- # The compiler in $compile_command matches
-- # the one in the tagged configuration.
-- # Assume this is the tagged configuration we want.
-- tagname=$z
-- break
-- ;;
-- esac
-- fi
-- done
-- # If $tagname still isn't set, then no tagged configuration
-- # was found and let the user know that the "--tag" command
-- # line option must be used.
-- if test -z "$tagname"; then
-- $echo "$modename: unable to infer tagged configuration"
-- $echo "$modename: specify a tag with \`--tag'" 1>&2
-- exit 1
--# else
--# $echo "$modename: using $tagname tagged configuration"
-- fi
-- ;;
-- esac
-+ exit $EXIT_FAILURE
- fi
-
- if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
-@@ -1711,9 +1984,9 @@
- if test ! -d "$output_objdir"; then
- $show "$mkdir $output_objdir"
- $run $mkdir $output_objdir
-- status=$?
-- if test "$status" -ne 0 && test ! -d "$output_objdir"; then
-- exit $status
-+ exit_status=$?
-+ if test "$exit_status" -ne 0 && test ! -d "$output_objdir"; then
-+ exit $exit_status
- fi
- fi
-
-@@ -1722,7 +1995,7 @@
- "")
- $echo "$modename: you must specify an output file" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- *.$libext) linkmode=oldlib ;;
- *.lo | *.$objext) linkmode=obj ;;
-@@ -1732,7 +2005,7 @@
-
- case $host in
- *cygwin* | *mingw* | *pw32*)
-- # don't eliminate duplcations in $postdeps and $predeps
-+ # don't eliminate duplications in $postdeps and $predeps
- duplicate_compiler_generated_deps=yes
- ;;
- *)
-@@ -1776,7 +2049,6 @@
- newlib_search_path=
- need_relink=no # whether we're linking any uninstalled libtool libraries
- notinst_deplibs= # not-installed libtool libraries
-- notinst_path= # paths that contain not-installed libtool libraries
- case $linkmode in
- lib)
- passes="conv link"
-@@ -1785,7 +2057,7 @@
- *.la) ;;
- *)
- $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
- done
-@@ -1823,18 +2095,23 @@
- lib=
- found=no
- case $deplib in
-+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
-+ if test "$linkmode,$pass" = "prog,link"; then
-+ compile_deplibs="$deplib $compile_deplibs"
-+ finalize_deplibs="$deplib $finalize_deplibs"
-+ else
-+ compiler_flags="$compiler_flags $deplib"
-+ fi
-+ continue
-+ ;;
- -l*)
- if test "$linkmode" != lib && test "$linkmode" != prog; then
- $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2
- continue
- fi
-- if test "$pass" = conv && test "$allow_undefined" = yes; then
-- deplibs="$deplib $deplibs"
-- continue
-- fi
- name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
- for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
-- for search_ext in .la $shrext .so .a; do
-+ for search_ext in .la $std_shrext .so .a; do
- # Search the libtool library
- lib="$searchdir/lib${name}${search_ext}"
- if test -f "$lib"; then
-@@ -1895,18 +2172,6 @@
- fi
- fi
- ;; # -l
-- *.ltframework)
-- if test "$linkmode,$pass" = "prog,link"; then
-- compile_deplibs="$deplib $compile_deplibs"
-- finalize_deplibs="$deplib $finalize_deplibs"
-- else
-- deplibs="$deplib $deplibs"
-- if test "$linkmode" = lib ; then
-- newdependency_libs="$deplib $newdependency_libs"
-- fi
-- fi
-- continue
-- ;;
- -L*)
- case $linkmode in
- lib)
-@@ -1922,11 +2187,11 @@
- fi
- if test "$pass" = scan; then
- deplibs="$deplib $deplibs"
-- newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- else
- compile_deplibs="$deplib $compile_deplibs"
- finalize_deplibs="$deplib $finalize_deplibs"
- fi
-+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
- ;;
- *)
- $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2
-@@ -1954,7 +2219,22 @@
- fi
- case $linkmode in
- lib)
-- if test "$deplibs_check_method" != pass_all; then
-+ valid_a_lib=no
-+ case $deplibs_check_method in
-+ match_pattern*)
-+ set dummy $deplibs_check_method
-+ match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
-+ if eval $echo \"$deplib\" 2>/dev/null \
-+ | $SED 10q \
-+ | $EGREP "$match_pattern_regex" > /dev/null; then
-+ valid_a_lib=yes
-+ fi
-+ ;;
-+ pass_all)
-+ valid_a_lib=yes
-+ ;;
-+ esac
-+ if test "$valid_a_lib" != yes; then
- $echo
- $echo "*** Warning: Trying to link with static lib archive $deplib."
- $echo "*** I have the capability to make that library automatically link in when"
-@@ -2004,15 +2284,15 @@
- esac # case $deplib
- if test "$found" = yes || test -f "$lib"; then :
- else
-- $echo "$modename: cannot find the library \`$lib'" 1>&2
-- exit 1
-+ $echo "$modename: cannot find the library \`$lib' or unhandled argument \`$deplib'" 1>&2
-+ exit $EXIT_FAILURE
- fi
-
- # Check to see that this really is a libtool archive.
- if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
- else
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
-@@ -2028,6 +2308,8 @@
- # it will not redefine variables installed, or shouldnotlink
- installed=yes
- shouldnotlink=no
-+ avoidtemprpath=
-+
-
- # Read the .la file
- case $lib in
-@@ -2035,13 +2317,6 @@
- *) . ./$lib ;;
- esac
-
-- case $host in
-- *-*-darwin*)
-- # Convert "-framework foo" to "foo.ltframework" in dependency_libs
-- test -n "$dependency_libs" && dependency_libs=`$echo "X$dependency_libs" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'`
-- ;;
-- esac
--
- if test "$linkmode,$pass" = "lib,link" ||
- test "$linkmode,$pass" = "prog,scan" ||
- { test "$linkmode" != prog && test "$linkmode" != lib; }; then
-@@ -2052,33 +2327,32 @@
- if test "$pass" = conv; then
- # Only check for convenience libraries
- deplibs="$lib $deplibs"
-- tmp_libs=
-- for deplib in $dependency_libs; do
-- #echo "Adding $deplib to \$deplibs"
-- deplibs="$deplib $deplibs"
-- if test "X$duplicate_deps" = "Xyes" ; then
-- case "$tmp_libs " in
-- *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-- esac
-- fi
-- tmp_libs="$tmp_libs $deplib"
-- done
- if test -z "$libdir"; then
- if test -z "$old_library"; then
- $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- # It is a libtool convenience library, so add in its objects.
- convenience="$convenience $ladir/$objdir/$old_library"
- old_convenience="$old_convenience $ladir/$objdir/$old_library"
-+ tmp_libs=
-+ for deplib in $dependency_libs; do
-+ deplibs="$deplib $deplibs"
-+ if test "X$duplicate_deps" = "Xyes" ; then
-+ case "$tmp_libs " in
-+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
-+ esac
-+ fi
-+ tmp_libs="$tmp_libs $deplib"
-+ done
- elif test "$linkmode" != prog && test "$linkmode" != lib; then
- $echo "$modename: \`$lib' is not a convenience library" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- continue
- fi # $pass = conv
-
--
-+
- # Get the name of the library we link against.
- linklib=
- for l in $old_library $library_names; do
-@@ -2086,16 +2360,18 @@
- done
- if test -z "$linklib"; then
- $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # This library was specified with -dlopen.
- if test "$pass" = dlopen; then
- if test -z "$libdir"; then
- $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-- if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
-+ if test -z "$dlname" ||
-+ test "$dlopen_support" != yes ||
-+ test "$build_libtool_libs" = no; then
- # If there is no dlname, no dlopen support or we're linking
- # statically, we need to preload. We also need to preload any
- # dependent libraries so libltdl's deplib preloader doesn't
-@@ -2129,14 +2405,28 @@
- absdir="$abs_ladir"
- libdir="$abs_ladir"
- else
-- dir="$libdir"
-- absdir="$libdir"
-+ # Adding 'libdir' from the .la file to our library search paths
-+ # breaks crosscompilation horribly. We cheat here and don't add
-+ # it, instead adding the path where we found the .la. -CL
-+ dir="$abs_ladir"
-+ absdir="$abs_ladir"
-+ libdir="$abs_ladir"
-+ #dir="$libdir"
-+ #absdir="$libdir"
- fi
-+ test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
- else
-- dir="$ladir/$objdir"
-- absdir="$abs_ladir/$objdir"
-- # Remove this search path later
-- notinst_path="$notinst_path $abs_ladir"
-+ if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
-+ dir="$ladir"
-+ absdir="$abs_ladir"
-+ # Remove this search path later
-+ notinst_path="$notinst_path $abs_ladir"
-+ else
-+ dir="$ladir/$objdir"
-+ absdir="$abs_ladir/$objdir"
-+ # Remove this search path later
-+ notinst_path="$notinst_path $abs_ladir"
-+ fi
- fi # $installed = yes
- name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
-
-@@ -2144,7 +2434,7 @@
- if test "$pass" = dlpreopen; then
- if test -z "$libdir"; then
- $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- # Prefer using a static library (so that no silly _DYNAMIC symbols
- # are required to link).
-@@ -2171,7 +2461,7 @@
- continue
- fi
-
--
-+
- if test "$linkmode" = prog && test "$pass" != link; then
- newlib_search_path="$newlib_search_path $ladir"
- deplibs="$lib $deplibs"
-@@ -2209,12 +2499,12 @@
- if test -n "$library_names" &&
- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
- # We need to hardcode the library path
-- if test -n "$shlibpath_var"; then
-+ if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
- # Make sure the rpath contains only unique directories.
- case "$temp_rpath " in
- *" $dir "*) ;;
- *" $absdir "*) ;;
-- *) temp_rpath="$temp_rpath $dir" ;;
-+ *) temp_rpath="$temp_rpath $absdir" ;;
- esac
- fi
-
-@@ -2251,24 +2541,29 @@
- fi
-
- link_static=no # Whether the deplib will be linked statically
-+ use_static_libs=$prefer_static_libs
-+ if test "$use_static_libs" = built && test "$installed" = yes ; then
-+ use_static_libs=no
-+ fi
- if test -n "$library_names" &&
-- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
-+ { test "$use_static_libs" = no || test -z "$old_library"; }; then
- if test "$installed" = no; then
- notinst_deplibs="$notinst_deplibs $lib"
-- need_relink=yes
-+ need_relink=no
- fi
- # This is a shared library
--
-- # Warn about portability, can't link against -module's on some systems (darwin)
-- if test "$shouldnotlink" = yes && test "$pass" = link ; then
-+
-+ # Warn about portability, can't link against -module's on
-+ # some systems (darwin)
-+ if test "$shouldnotlink" = yes && test "$pass" = link ; then
- $echo
- if test "$linkmode" = prog; then
- $echo "*** Warning: Linking the executable $output against the loadable module"
- else
- $echo "*** Warning: Linking the shared library $output against the loadable module"
- fi
-- $echo "*** $linklib is not portable!"
-- fi
-+ $echo "*** $linklib is not portable!"
-+ fi
- if test "$linkmode" = lib &&
- test "$hardcode_into_libs" = yes; then
- # Hardcode the library path.
-@@ -2326,9 +2621,10 @@
- else
- $show "extracting exported symbol list from \`$soname'"
- save_ifs="$IFS"; IFS='~'
-- eval cmds=\"$extract_expsyms_cmds\"
-+ cmds=$extract_expsyms_cmds
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
-@@ -2339,9 +2635,10 @@
- if test -f "$output_objdir/$newlib"; then :; else
- $show "generating import library for \`$soname'"
- save_ifs="$IFS"; IFS='~'
-- eval cmds=\"$old_archive_from_expsyms_cmds\"
-+ cmds=$old_archive_from_expsyms_cmds
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
-@@ -2362,11 +2659,15 @@
- if test "$hardcode_direct" = no; then
- add="$dir/$linklib"
- case $host in
-- *-*-sco3.2v5* ) add_dir="-L$dir" ;;
-+ *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
-+ *-*-sysv4*uw2*) add_dir="-L$dir" ;;
-+ *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
-+ *-*-unixware7*) add_dir="-L$dir" ;;
- *-*-darwin* )
-- # if the lib is a module then we can not link against it, someone
-- # is ignoring the new warnings I added
-- if /usr/bin/file -L $add 2> /dev/null | grep "bundle" >/dev/null ; then
-+ # if the lib is a module then we can not link against
-+ # it, someone is ignoring the new warnings I added
-+ if /usr/bin/file -L $add 2> /dev/null |
-+ $EGREP ": [^:]* bundle" >/dev/null ; then
- $echo "** Warning, lib $linklib is a module, not a shared library"
- if test -z "$old_library" ; then
- $echo
-@@ -2374,7 +2675,7 @@
- $echo "** The link will probably fail, sorry"
- else
- add="$dir/$old_library"
-- fi
-+ fi
- fi
- esac
- elif test "$hardcode_minus_L" = no; then
-@@ -2397,9 +2698,9 @@
- add_dir="-L$dir"
- # Try looking first in the location we're being installed to.
- if test -n "$inst_prefix_dir"; then
-- case "$libdir" in
-+ case $libdir in
- [\\/]*)
-- add_dir="-L$inst_prefix_dir$libdir $add_dir"
-+ add_dir="$add_dir -L$inst_prefix_dir$libdir"
- ;;
- esac
- fi
-@@ -2416,7 +2717,7 @@
-
- if test "$lib_linked" != yes; then
- $echo "$modename: configuration error: unsupported hardcode properties"
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- if test -n "$add_shlibpath"; then
-@@ -2459,7 +2760,8 @@
- esac
- add="-l$name"
- elif test "$hardcode_automatic" = yes; then
-- if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib" ; then
-+ if test -n "$inst_prefix_dir" &&
-+ test -f "$inst_prefix_dir$libdir/$linklib" ; then
- add="$inst_prefix_dir$libdir/$linklib"
- else
- add="$libdir/$linklib"
-@@ -2469,9 +2771,9 @@
- add_dir="-L$libdir"
- # Try looking first in the location we're being installed to.
- if test -n "$inst_prefix_dir"; then
-- case "$libdir" in
-+ case $libdir in
- [\\/]*)
-- add_dir="-L$inst_prefix_dir$libdir $add_dir"
-+ add_dir="$add_dir -L$inst_prefix_dir$libdir"
- ;;
- esac
- fi
-@@ -2530,17 +2832,16 @@
- fi
- fi
- else
-- convenience="$convenience $dir/$old_library"
-- old_convenience="$old_convenience $dir/$old_library"
- deplibs="$dir/$old_library $deplibs"
- link_static=yes
- fi
- fi # link shared/static library?
-
- if test "$linkmode" = lib; then
-- #if test -n "$dependency_libs" &&
-- # { test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes ||
-- # test "$link_static" = yes; }; then
-+ if test -n "$dependency_libs" &&
-+ { test "$hardcode_into_libs" != yes ||
-+ test "$build_old_libs" = yes ||
-+ test "$link_static" = yes; }; then
- # Extract -R from dependency_libs
- temp_deplibs=
- for libdir in $dependency_libs; do
-@@ -2554,7 +2855,7 @@
- esac
- done
- dependency_libs="$temp_deplibs"
-- #fi
-+ fi
-
- newlib_search_path="$newlib_search_path $absdir"
- # Link against this library
-@@ -2596,20 +2897,18 @@
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- if test -z "$libdir"; then
- $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- if test "$absdir" != "$libdir"; then
-- # Sure, some shells/systems don't implement the -ef.
-- # Those will have to live with the warning.
-- test "$absdir" -ef "$libdir" > /dev/null 2>&1 ||
-- $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
-+ $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
- fi
- path="$absdir"
- fi
- depdepl=
- case $host in
- *-*-darwin*)
-- # we do not want to link against static libs, but need to link against shared
-+ # we do not want to link against static libs,
-+ # but need to link against shared
- eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
- if test -n "$deplibrary_names" ; then
- for tmp in $deplibrary_names ; do
-@@ -2617,46 +2916,36 @@
- done
- if test -f "$path/$depdepl" ; then
- depdepl="$path/$depdepl"
-- fi
-+ fi
- # do not add paths which are already there
- case " $newlib_search_path " in
- *" $path "*) ;;
- *) newlib_search_path="$newlib_search_path $path";;
- esac
-- path=""
- fi
-+ path=""
- ;;
- *)
-- path="-L$path"
-- ;;
-- esac
--
-+ path="-L$path"
-+ ;;
-+ esac
- ;;
-- -l*)
-+ -l*)
- case $host in
- *-*-darwin*)
-- # Again, we only want to link against shared libraries
-- eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"`
-- for tmp in $newlib_search_path ; do
-- if test -f "$tmp/lib$tmp_libs.dylib" ; then
-- eval depdepl="$tmp/lib$tmp_libs.dylib"
-- break
-- fi
-- done
-- path=""
-+ # Again, we only want to link against shared libraries
-+ eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"`
-+ for tmp in $newlib_search_path ; do
-+ if test -f "$tmp/lib$tmp_libs.dylib" ; then
-+ eval depdepl="$tmp/lib$tmp_libs.dylib"
-+ break
-+ fi
-+ done
-+ path=""
- ;;
- *) continue ;;
-- esac
-- ;;
--
-- *.ltframework)
-- case $host in
-- *-*-darwin*)
-- depdepl="$deplib"
-- ;;
- esac
- ;;
--
- *) continue ;;
- esac
- case " $deplibs " in
-@@ -2660,12 +2949,12 @@
- *) continue ;;
- esac
- case " $deplibs " in
-- *" $depdepl "*) ;;
-- *) deplibs="$deplibs $depdepl" ;;
-- esac
-- case " $deplibs " in
- *" $path "*) ;;
-- *) deplibs="$deplibs $path" ;;
-+ *) deplibs="$path $deplibs" ;;
-+ esac
-+ case " $deplibs " in
-+ *" $depdepl "*) ;;
-+ *) deplibs="$depdepl $deplibs" ;;
- esac
- done
- fi # link_all_deplibs != no
-@@ -2752,7 +3041,8 @@
- eval $var=\"$tmp_libs\"
- done # for var
- fi
-- # Last step: remove runtime libs from dependency_libs (they stay in deplibs)
-+ # Last step: remove runtime libs from dependency_libs
-+ # (they stay in deplibs)
- tmp_libs=
- for i in $dependency_libs ; do
- case " $predeps $postdeps $compiler_lib_search_path " in
-@@ -2812,19 +3102,19 @@
- case $outputname in
- lib*)
- name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
-- eval shared_ext=\"$shrext\"
-+ eval shared_ext=\"$shrext_cmds\"
- eval libname=\"$libname_spec\"
- ;;
- *)
- if test "$module" = no; then
- $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- if test "$need_lib_prefix" != no; then
- # Add the "lib" prefix for modules if required
- name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
-- eval shared_ext=\"$shrext\"
-+ eval shared_ext=\"$shrext_cmds\"
- eval libname=\"$libname_spec\"
- else
- libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
-@@ -2835,7 +3125,7 @@
- if test -n "$objs"; then
- if test "$deplibs_check_method" != pass_all; then
- $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
-- exit 1
-+ exit $EXIT_FAILURE
- else
- $echo
- $echo "*** Warning: Linking the shared library $output against the non-libtool"
-@@ -2883,13 +3173,13 @@
- if test -n "$8"; then
- $echo "$modename: too many parameters to \`-version-info'" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # convert absolute version numbers to libtool ages
- # this retains compatibility with .la files and attempts
- # to make the code below a bit more comprehensible
--
-+
- case $vinfo_number in
- yes)
- number_major="$2"
-@@ -2929,36 +3219,36 @@
-
- # Check that each of the things are valid numbers.
- case $current in
-- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
-+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
-- $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
-+ $echo "$modename: CURRENT \`$current' must be a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
-
- case $revision in
-- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
-+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
-- $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
-+ $echo "$modename: REVISION \`$revision' must be a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
-
- case $age in
-- 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
-+ 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
- *)
-- $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
-+ $echo "$modename: AGE \`$age' must be a nonnegative integer" 1>&2
- $echo "$modename: \`$vinfo' is not valid version information" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
-
- 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
-+ exit $EXIT_FAILURE
- fi
-
- # Calculate the version variables.
-@@ -2975,7 +3265,7 @@
- versuffix="$major.$age.$revision"
- # Darwin ld doesn't like 0 for these options...
- minor_current=`expr $current + 1`
-- verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
-+ verstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
- ;;
-
- freebsd-aout)
-@@ -3047,7 +3337,7 @@
- *)
- $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
-+ exit $EXIT_FAILURE
- ;;
- esac
-
-@@ -3098,9 +3388,15 @@
- tempremovelist=`$echo "$output_objdir/*"`
- for p in $tempremovelist; do
- case $p in
-- *.$objext | *$exeext)
-+ *.$objext)
- ;;
- $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
-+ if test "X$precious_files_regex" != "X"; then
-+ if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
-+ then
-+ continue
-+ fi
-+ fi
- removelist="$removelist $p"
- ;;
- *) ;;
-@@ -3122,9 +3418,9 @@
-
- # Eliminate all temporary directories.
- for path in $notinst_path; do
-- lib_search_path=`$echo "$lib_search_path " | ${SED} -e 's% $path % %g'`
-- deplibs=`$echo "$deplibs " | ${SED} -e 's% -L$path % %g'`
-- dependency_libs=`$echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'`
-+ lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
-+ deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
-+ dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
- done
-
- if test -n "$xrpath"; then
-@@ -3137,7 +3433,7 @@
- *) finalize_rpath="$finalize_rpath $libdir" ;;
- esac
- done
-- if true || test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
-+ if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
- dependency_libs="$temp_xrpath $dependency_libs"
- fi
- fi
-@@ -3170,14 +3466,19 @@
- ;;
- *-*-rhapsody* | *-*-darwin1.[012])
- # Rhapsody C library is in the System framework
-- deplibs="$deplibs System.ltframework"
-+ deplibs="$deplibs -framework System"
- ;;
- *-*-netbsd*)
- # Don't link with libc until the a.out ld.so is fixed.
- ;;
-- *-*-openbsd* | *-*-freebsd*)
-+ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
- # Do not include libc due to us having libc/libc_r.
-- test "X$arg" = "X-lc" && continue
-+ ;;
-+ *-*-sco3.2v5* | *-*-sco5v6*)
-+ # Causes problems with __ctype
-+ ;;
-+ *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
-+ # Compiler inserts libc in the correct place for threads to work
- ;;
- *)
- # Add libc to deplibs on all other systems if necessary.
-@@ -3221,11 +3522,11 @@
- int main() { return 0; }
- EOF
- $rm conftest
-- $LTCC -o conftest conftest.c $deplibs
-+ $LTCC $LTCFLAGS -o conftest conftest.c $deplibs
- if test "$?" -eq 0 ; then
- ldd_output=`ldd conftest`
- for i in $deplibs; do
-- name="`expr $i : '-l\(.*\)'`"
-+ name=`expr $i : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" -ne "0"; then
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-@@ -3262,11 +3563,11 @@
- # Error occurred in the first compile. Let's try to salvage
- # the situation: Compile a separate program for each library.
- for i in $deplibs; do
-- name="`expr $i : '-l\(.*\)'`"
-+ name=`expr $i : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" != "0"; then
- $rm conftest
-- $LTCC -o conftest conftest.c $i
-+ $LTCC $LTCFLAGS -o conftest conftest.c $i
- # Did it work?
- if test "$?" -eq 0 ; then
- ldd_output=`ldd conftest`
-@@ -3314,7 +3615,7 @@
- set dummy $deplibs_check_method
- file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- for a_deplib in $deplibs; do
-- name="`expr $a_deplib : '-l\(.*\)'`"
-+ name=`expr $a_deplib : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
- if test "$name" != "" && test "$name" != "0"; then
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-@@ -3383,7 +3684,7 @@
- set dummy $deplibs_check_method
- match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
- for a_deplib in $deplibs; do
-- name="`expr $a_deplib : '-l\(.*\)'`"
-+ name=`expr $a_deplib : '-l\(.*\)'`
- # If $name is empty we are operating on a -L argument.
- if test -n "$name" && test "$name" != "0"; then
- if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-@@ -3463,7 +3764,7 @@
- case $host in
- *-*-rhapsody* | *-*-darwin1.[012])
- # On Rhapsody replace the C library is the System framework
-- newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
-+ newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
- ;;
- esac
-
-@@ -3509,17 +3810,39 @@
- fi
- fi
- fi
-- # Time to change all our "foo.ltframework" stuff back to "-framework foo"
-- case $host in
-- *-*-darwin*)
-- newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
-- dependency_libs=`$echo "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
-- ;;
-- esac
- # Done checking deplibs!
- deplibs=$newdeplibs
- fi
-
-+
-+ # move library search paths that coincide with paths to not yet
-+ # installed libraries to the beginning of the library search list
-+ new_libs=
-+ for path in $notinst_path; do
-+ case " $new_libs " in
-+ *" -L$path/$objdir "*) ;;
-+ *)
-+ case " $deplibs " in
-+ *" -L$path/$objdir "*)
-+ new_libs="$new_libs -L$path/$objdir" ;;
-+ esac
-+ ;;
-+ esac
-+ done
-+ for deplib in $deplibs; do
-+ case $deplib in
-+ -L*)
-+ case " $new_libs " in
-+ *" $deplib "*) ;;
-+ *) new_libs="$new_libs $deplib" ;;
-+ esac
-+ ;;
-+ *) new_libs="$new_libs $deplib" ;;
-+ esac
-+ done
-+ deplibs="$new_libs"
-+
-+
- # All the library-specific variables (install_libdir is set above).
- library_names=
- old_library=
-@@ -3532,7 +3855,7 @@
- hardcode_libdirs=
- dep_rpath=
- rpath="$finalize_rpath"
-- test "$mode" != relink && test "$fast_install" = no && rpath="$compile_rpath$rpath"
-+ test "$mode" != relink && rpath="$compile_rpath$rpath"
- for libdir in $rpath; do
- if test -n "$hardcode_libdir_flag_spec"; then
- if test -n "$hardcode_libdir_separator"; then
-@@ -3587,7 +3910,7 @@
- fi
-
- # Get the real and link names of the library.
-- eval shared_ext=\"$shrext\"
-+ eval shared_ext=\"$shrext_cmds\"
- eval library_names=\"$library_names_spec\"
- set dummy $library_names
- realname="$2"
-@@ -3603,6 +3926,7 @@
- fi
-
- lib="$output_objdir/$realname"
-+ linknames=
- for link
- do
- linknames="$linknames $link"
-@@ -3617,10 +3941,11 @@
- $show "generating symbol list for \`$libname.la'"
- export_symbols="$output_objdir/$libname.exp"
- $run $rm $export_symbols
-- eval cmds=\"$export_symbols_cmds\"
-+ cmds=$export_symbols_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- if len=`expr "X$cmd" : ".*"` &&
- test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
- $show "$cmd"
-@@ -3630,6 +3955,9 @@
- # The command line is too long to execute in one step.
- $show "using reloadable object file for export list..."
- skipped_export=:
-+ # Break out early, otherwise skipped_export may be
-+ # set to false by a later but shorter cmd.
-+ break
- fi
- done
- IFS="$save_ifs"
-@@ -3650,12 +3978,12 @@
- for test_deplib in $deplibs; do
- case " $convenience " in
- *" $test_deplib "*) ;;
-- *)
-+ *)
- tmp_deplibs="$tmp_deplibs $test_deplib"
- ;;
- esac
- done
-- deplibs="$tmp_deplibs"
-+ deplibs="$tmp_deplibs"
-
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
-@@ -3663,67 +3991,13 @@
- eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
- else
- gentop="$output_objdir/${outputname}x"
-- $show "${rm}r $gentop"
-- $run ${rm}r "$gentop"
-- $show "$mkdir $gentop"
-- $run $mkdir "$gentop"
-- status=$?
-- if test "$status" -ne 0 && test ! -d "$gentop"; then
-- exit $status
-- fi
- generated="$generated $gentop"
-
-- for xlib in $convenience; do
-- # Extract the objects.
-- case $xlib in
-- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
-- *) xabs=`pwd`"/$xlib" ;;
-- esac
-- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
-- xdir="$gentop/$xlib"
--
-- $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
-- # We will extract separately just the conflicting names and we will no
-- # longer touch any unique names. It is faster to leave these extract
-- # automatically by $AR in one run.
-- $show "(cd $xdir && $AR x $xabs)"
-- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-- if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then
-- :
-- else
-- $echo "$modename: warning: object name conflicts; renaming object files" 1>&2
-- $echo "$modename: warning: to ensure that they will not overwrite" 1>&2
-- $AR t "$xabs" | sort | uniq -cd | while read -r count name
-- do
-- i=1
-- while test "$i" -le "$count"
-- do
-- # Put our $i before any first dot (extension)
-- # Never overwrite any file
-- name_to="$name"
-- while test "X$name_to" = "X$name" || test -f "$xdir/$name_to"
-- do
-- name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"`
-- done
-- $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')"
-- $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $?
-- i=`expr $i + 1`
-- done
-- done
-- fi
--
-- libobjs="$libobjs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
-- done
-+ func_extract_archives $gentop $convenience
-+ libobjs="$libobjs $func_extract_archives_result"
- fi
- fi
--
-+
- if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
- eval flag=\"$thread_safe_flag_spec\"
- linker_flags="$linker_flags $flag"
-@@ -3734,31 +4008,27 @@
- $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
- fi
-
-- # Add all flags from the command line. We here create a library,
-- # but those flags were only added to compile_command and
-- # finalize_command, which are only used when creating executables.
-- # So do it by hand here.
-- compiler_flags="$compiler_flags $add_flags"
-- # Only add it to commands which use CC, instead of LD, i.e.
-- # only to $compiler_flags
-- #linker_flags="$linker_flags $add_flags"
--
- # Do each of the archive commands.
- if test "$module" = yes && test -n "$module_cmds" ; then
- if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
-- eval cmds=\"$module_expsym_cmds\"
-+ eval test_cmds=\"$module_expsym_cmds\"
-+ cmds=$module_expsym_cmds
- else
-- eval cmds=\"$module_cmds\"
-+ eval test_cmds=\"$module_cmds\"
-+ cmds=$module_cmds
- fi
- else
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
-- eval cmds=\"$archive_expsym_cmds\"
-+ eval test_cmds=\"$archive_expsym_cmds\"
-+ cmds=$archive_expsym_cmds
- else
-- eval cmds=\"$archive_cmds\"
-+ eval test_cmds=\"$archive_cmds\"
-+ cmds=$archive_cmds
- fi
- fi
-
-- if test "X$skipped_export" != "X:" && len=`expr "X$cmds" : ".*"` &&
-+ if test "X$skipped_export" != "X:" &&
-+ len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
- test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
- :
- else
-@@ -3777,6 +4047,7 @@
- save_libobjs=$libobjs
- fi
- save_output=$output
-+ output_la=`$echo "X$output" | $Xsed -e "$basename"`
-
- # Clear the reloadable object creation command queue and
- # initialize k to one.
-@@ -3786,13 +4057,13 @@
- delfiles=
- last_robj=
- k=1
-- output=$output_objdir/$save_output-${k}.$objext
-+ output=$output_objdir/$output_la-${k}.$objext
- # Loop over the list of objects to be linked.
- for obj in $save_libobjs
- do
- eval test_cmds=\"$reload_cmds $objlist $last_robj\"
- if test "X$objlist" = X ||
-- { len=`expr "X$test_cmds" : ".*"` &&
-+ { len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
- test "$len" -le "$max_cmd_len"; }; then
- objlist="$objlist $obj"
- else
-@@ -3806,9 +4077,9 @@
- # the last one created.
- eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\"
- fi
-- last_robj=$output_objdir/$save_output-${k}.$objext
-+ last_robj=$output_objdir/$output_la-${k}.$objext
- k=`expr $k + 1`
-- output=$output_objdir/$save_output-${k}.$objext
-+ output=$output_objdir/$output_la-${k}.$objext
- objlist=$obj
- len=1
- fi
-@@ -3828,13 +4099,13 @@
- eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\"
- fi
-
-- # Set up a command to remove the reloadale object files
-+ # Set up a command to remove the reloadable object files
- # after they are used.
- i=0
- while test "$i" -lt "$k"
- do
- i=`expr $i + 1`
-- delfiles="$delfiles $output_objdir/$save_output-${i}.$objext"
-+ delfiles="$delfiles $output_objdir/$output_la-${i}.$objext"
- done
-
- $echo "creating a temporary reloadable object file: $output"
-@@ -3859,28 +4130,54 @@
- # value of $libobjs for piecewise linking.
-
- # Do each of the archive commands.
-+ if test "$module" = yes && test -n "$module_cmds" ; then
-+ if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
-+ cmds=$module_expsym_cmds
-+ else
-+ cmds=$module_cmds
-+ fi
-+ else
- if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
-- eval cmds=\"$archive_expsym_cmds\"
-+ cmds=$archive_expsym_cmds
- else
-- eval cmds=\"$archive_cmds\"
-+ cmds=$archive_cmds
-+ fi
- fi
-
- # Append the command to remove the reloadable object files
- # to the just-reset $cmds.
-- eval cmds=\"\$cmds~$rm $delfiles\"
-+ eval cmds=\"\$cmds~\$rm $delfiles\"
- fi
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
-- $run eval "$cmd" || exit $?
-+ $run eval "$cmd" || {
-+ lt_exit=$?
-+
-+ # Restore the uninstalled library and exit
-+ if test "$mode" = relink; then
-+ $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)'
-+ fi
-+
-+ exit $lt_exit
-+ }
- done
- IFS="$save_ifs"
-
- # Restore the uninstalled library and exit
- if test "$mode" = relink; then
- $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
-- exit 0
-+
-+ if test -n "$convenience"; then
-+ if test -z "$whole_archive_flag_spec"; then
-+ $show "${rm}r $gentop"
-+ $run ${rm}r "$gentop"
-+ fi
-+ fi
-+
-+ exit $EXIT_SUCCESS
- fi
-
- # Create links to the real library.
-@@ -3928,7 +4225,7 @@
- *.lo)
- if test -n "$objs$old_deplibs"; then
- $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- libobj="$output"
- obj=`$echo "X$output" | $Xsed -e "$lo2o"`
-@@ -3957,64 +4254,10 @@
- eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
- else
- gentop="$output_objdir/${obj}x"
-- $show "${rm}r $gentop"
-- $run ${rm}r "$gentop"
-- $show "$mkdir $gentop"
-- $run $mkdir "$gentop"
-- status=$?
-- if test "$status" -ne 0 && test ! -d "$gentop"; then
-- exit $status
-- fi
- generated="$generated $gentop"
-
-- for xlib in $convenience; do
-- # Extract the objects.
-- case $xlib in
-- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
-- *) xabs=`pwd`"/$xlib" ;;
-- esac
-- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
-- xdir="$gentop/$xlib"
--
-- $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
-- # We will extract separately just the conflicting names and we will no
-- # longer touch any unique names. It is faster to leave these extract
-- # automatically by $AR in one run.
-- $show "(cd $xdir && $AR x $xabs)"
-- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-- if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then
-- :
-- else
-- $echo "$modename: warning: object name conflicts; renaming object files" 1>&2
-- $echo "$modename: warning: to ensure that they will not overwrite" 1>&2
-- $AR t "$xabs" | sort | uniq -cd | while read -r count name
-- do
-- i=1
-- while test "$i" -le "$count"
-- do
-- # Put our $i before any first dot (extension)
-- # Never overwrite any file
-- name_to="$name"
-- while test "X$name_to" = "X$name" || test -f "$xdir/$name_to"
-- do
-- name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"`
-- done
-- $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')"
-- $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $?
-- i=`expr $i + 1`
-- done
-- done
-- fi
--
-- reload_conv_objs="$reload_objs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
-- done
-+ func_extract_archives $gentop $convenience
-+ reload_conv_objs="$reload_objs $func_extract_archives_result"
- fi
- fi
-
-@@ -4022,10 +4265,11 @@
- reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
-
- output="$obj"
-- eval cmds=\"$reload_cmds\"
-+ cmds=$reload_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
-@@ -4038,7 +4282,7 @@
- $run ${rm}r $gentop
- fi
-
-- exit 0
-+ exit $EXIT_SUCCESS
- fi
-
- if test "$build_libtool_libs" != yes; then
-@@ -4051,17 +4295,18 @@
- # accidentally link it into a program.
- # $show "echo timestamp > $libobj"
- # $run eval "echo timestamp > $libobj" || exit $?
-- exit 0
-+ exit $EXIT_SUCCESS
- fi
-
- if test -n "$pic_flag" || test "$pic_mode" != default; then
- # Only do commands if we really have different PIC objects.
- reload_objs="$libobjs $reload_conv_objs"
- output="$libobj"
-- eval cmds=\"$reload_cmds\"
-+ cmds=$reload_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
-@@ -4073,7 +4318,7 @@
- $run ${rm}r $gentop
- fi
-
-- exit 0
-+ exit $EXIT_SUCCESS
- ;;
-
- prog)
-@@ -4098,24 +4343,50 @@
- case $host in
- *-*-rhapsody* | *-*-darwin1.[012])
- # On Rhapsody replace the C library is the System framework
-- compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
-- finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
-+ compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
-+ finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
- ;;
- esac
-
- case $host in
-- *-*-darwin*)
-+ *darwin*)
- # Don't allow lazy linking, it breaks C++ global constructors
- if test "$tagname" = CXX ; then
- compile_command="$compile_command ${wl}-bind_at_load"
- finalize_command="$finalize_command ${wl}-bind_at_load"
- fi
-- # Time to change all our "foo.ltframework" stuff back to "-framework foo"
-- compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
-- finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
- ;;
- esac
-
-+
-+ # move library search paths that coincide with paths to not yet
-+ # installed libraries to the beginning of the library search list
-+ new_libs=
-+ for path in $notinst_path; do
-+ case " $new_libs " in
-+ *" -L$path/$objdir "*) ;;
-+ *)
-+ case " $compile_deplibs " in
-+ *" -L$path/$objdir "*)
-+ new_libs="$new_libs -L$path/$objdir" ;;
-+ esac
-+ ;;
-+ esac
-+ done
-+ for deplib in $compile_deplibs; do
-+ case $deplib in
-+ -L*)
-+ case " $new_libs " in
-+ *" $deplib "*) ;;
-+ *) new_libs="$new_libs $deplib" ;;
-+ esac
-+ ;;
-+ *) new_libs="$new_libs $deplib" ;;
-+ esac
-+ done
-+ compile_deplibs="$new_libs"
-+
-+
- compile_command="$compile_command $compile_deplibs"
- finalize_command="$finalize_command $finalize_deplibs"
-
-@@ -4160,10 +4431,15 @@
- fi
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
-+ testbindir=`$echo "X$libdir" | $Xsed -e 's*/lib$*/bin*'`
- case :$dllsearchpath: in
- *":$libdir:"*) ;;
- *) dllsearchpath="$dllsearchpath:$libdir";;
- esac
-+ case :$dllsearchpath: in
-+ *":$testbindir:"*) ;;
-+ *) dllsearchpath="$dllsearchpath:$testbindir";;
-+ esac
- ;;
- esac
- done
-@@ -4277,13 +4553,25 @@
-
- # Prepare the list of exported symbols
- if test -z "$export_symbols"; then
-- export_symbols="$output_objdir/$output.exp"
-+ export_symbols="$output_objdir/$outputname.exp"
- $run $rm $export_symbols
-- $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
-+ $run eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
-+ case $host in
-+ *cygwin* | *mingw* )
-+ $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
-+ $run eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
-+ ;;
-+ esac
- else
-- $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
-- $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
-+ $run eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
-+ $run eval 'grep -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
- $run eval 'mv "$nlist"T "$nlist"'
-+ case $host in
-+ *cygwin* | *mingw* )
-+ $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
-+ $run eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
-+ ;;
-+ esac
- fi
- fi
-
-@@ -4334,7 +4622,26 @@
- #endif
-
- /* The mapping between symbol names and symbols. */
-+"
-+
-+ case $host in
-+ *cygwin* | *mingw* )
-+ $echo >> "$output_objdir/$dlsyms" "\
-+/* DATA imports from DLLs on WIN32 can't be const, because
-+ runtime relocations are performed -- see ld's documentation
-+ on pseudo-relocs */
-+struct {
-+"
-+ ;;
-+ * )
-+ $echo >> "$output_objdir/$dlsyms" "\
- const struct {
-+"
-+ ;;
-+ esac
-+
-+
-+ $echo >> "$output_objdir/$dlsyms" "\
- const char *name;
- lt_ptr address;
- }
-@@ -4381,20 +4688,33 @@
- esac
-
- # Now compile the dynamic symbol file.
-- $show "(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
-- $run eval '(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
-+ $show "(cd $output_objdir && $LTCC $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
-+ $run eval '(cd $output_objdir && $LTCC $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
-
- # Clean up the generated files.
- $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T"
- $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T"
-
- # Transform the symbol file into the correct name.
-- compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ case $host in
-+ *cygwin* | *mingw* )
-+ if test -f "$output_objdir/${outputname}.def" ; then
-+ compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
-+ finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
-+ else
-+ compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ fi
-+ ;;
-+ * )
-+ compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
-+ ;;
-+ esac
- ;;
- *)
- $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
- else
-@@ -4407,17 +4727,6 @@
- finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
- fi
-
-- # AIX runtime linking requires linking programs with -Wl,-brtl and libs with -Wl,-G
-- # Also add -bnolibpath to the beginning of the link line, to clear the hardcoded runpath.
-- # Otherwise, things like the -L path to libgcc.a are accidentally hardcoded by ld.
-- # This does not apply on AIX for ia64, which uses a SysV linker.
-- case "$host" in
-- ia64-*-aix5*) ;;
-- *-*-aix4* | *-*-aix5*)
-- compile_command=`$echo "X$compile_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"`
-- finalize_command=`$echo "X$finalize_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` ;;
-- esac
--
- if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
- # Replace the output file specification.
- compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
-@@ -4426,7 +4735,7 @@
- # We have no uninstalled library dependencies, so finalize right now.
- $show "$link_command"
- $run eval "$link_command"
-- status=$?
-+ exit_status=$?
-
- # Delete the generated files.
- if test -n "$dlsyms"; then
-@@ -4434,7 +4743,7 @@
- $run $rm "$output_objdir/${outputname}S.${objext}"
- fi
-
-- exit $status
-+ exit $exit_status
- fi
-
- if test -n "$shlibpath_var"; then
-@@ -4493,7 +4802,7 @@
- # Link the executable and exit
- $show "$link_command"
- $run eval "$link_command" || exit $?
-- exit 0
-+ exit $EXIT_SUCCESS
- fi
-
- if test "$hardcode_action" = relink; then
-@@ -4548,10 +4857,10 @@
- fi
-
- # Quote $echo for shipping.
-- if test "X$echo" = "X$SHELL $0 --fallback-echo"; then
-- case $0 in
-- [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";;
-- *) qecho="$SHELL `pwd`/$0 --fallback-echo";;
-+ if test "X$echo" = "X$SHELL $progpath --fallback-echo"; then
-+ case $progpath in
-+ [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";;
-+ *) qecho="$SHELL `pwd`/$progpath --fallback-echo";;
- esac
- qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"`
- else
-@@ -4573,11 +4882,13 @@
- *) exeext= ;;
- esac
- case $host in
-- *mingw* )
-- cwrappersource=`$echo ${output_objdir}/lt-${outputname}.c`
-- cwrapper=`$echo ${output}.exe`
-- $rm $cwrappersource $cwrapper
-- trap "$rm $cwrappersource $cwrapper; exit 1" 1 2 15
-+ *cygwin* | *mingw* )
-+ output_name=`basename $output`
-+ output_path=`dirname $output`
-+ cwrappersource="$output_path/$objdir/lt-$output_name.c"
-+ cwrapper="$output_path/$output_name.exe"
-+ $rm $cwrappersource $cwrapper
-+ trap "$rm $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
-
- cat > $cwrappersource <<EOF
-
-@@ -4586,7 +4897,7 @@
-
- The $output program cannot be directly executed until all the libtool
- libraries that it depends on are installed.
--
-+
- This wrapper executable should never be moved out of the build directory.
- If it is, it will not operate correctly.
-
-@@ -4602,6 +4913,9 @@
- #include <malloc.h>
- #include <stdarg.h>
- #include <assert.h>
-+#include <string.h>
-+#include <ctype.h>
-+#include <sys/stat.h>
-
- #if defined(PATH_MAX)
- # define LT_PATHMAX PATH_MAX
-@@ -4612,15 +4926,19 @@
- #endif
-
- #ifndef DIR_SEPARATOR
--#define DIR_SEPARATOR '/'
-+# define DIR_SEPARATOR '/'
-+# define PATH_SEPARATOR ':'
- #endif
-
- #if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
- defined (__OS2__)
--#define HAVE_DOS_BASED_FILE_SYSTEM
--#ifndef DIR_SEPARATOR_2
--#define DIR_SEPARATOR_2 '\\'
--#endif
-+# define HAVE_DOS_BASED_FILE_SYSTEM
-+# ifndef DIR_SEPARATOR_2
-+# define DIR_SEPARATOR_2 '\\'
-+# endif
-+# ifndef PATH_SEPARATOR_2
-+# define PATH_SEPARATOR_2 ';'
-+# endif
- #endif
-
- #ifndef DIR_SEPARATOR_2
-@@ -4630,17 +4948,32 @@
- (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
- #endif /* DIR_SEPARATOR_2 */
-
-+#ifndef PATH_SEPARATOR_2
-+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
-+#else /* PATH_SEPARATOR_2 */
-+# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
-+#endif /* PATH_SEPARATOR_2 */
-+
- #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type)))
- #define XFREE(stale) do { \
- if (stale) { free ((void *) stale); stale = 0; } \
- } while (0)
-
-+/* -DDEBUG is fairly common in CFLAGS. */
-+#undef DEBUG
-+#if defined DEBUGWRAPPER
-+# define DEBUG(format, ...) fprintf(stderr, format, __VA_ARGS__)
-+#else
-+# define DEBUG(format, ...)
-+#endif
-+
- const char *program_name = NULL;
-
- void * xmalloc (size_t num);
- char * xstrdup (const char *string);
--char * basename (const char *name);
--char * fnqualify(const char *path);
-+const char * base_name (const char *name);
-+char * find_executable(const char *wrapper);
-+int check_executable(const char *path);
- char * strendzap(char *str, const char *pat);
- void lt_fatal (const char *message, ...);
-
-@@ -4649,30 +4982,52 @@
- {
- char **newargz;
- int i;
--
-- program_name = (char *) xstrdup ((char *) basename (argv[0]));
-+
-+ program_name = (char *) xstrdup (base_name (argv[0]));
-+ DEBUG("(main) argv[0] : %s\n",argv[0]);
-+ DEBUG("(main) program_name : %s\n",program_name);
- newargz = XMALLOC(char *, argc+2);
- EOF
-
-- cat >> $cwrappersource <<EOF
-- newargz[0] = "$SHELL";
-+ cat >> $cwrappersource <<EOF
-+ newargz[0] = (char *) xstrdup("$SHELL");
- EOF
-
-- cat >> $cwrappersource <<"EOF"
-- newargz[1] = fnqualify(argv[0]);
-+ cat >> $cwrappersource <<"EOF"
-+ newargz[1] = find_executable(argv[0]);
-+ if (newargz[1] == NULL)
-+ lt_fatal("Couldn't find %s", argv[0]);
-+ DEBUG("(main) found exe at : %s\n",newargz[1]);
- /* we know the script has the same name, without the .exe */
- /* so make sure newargz[1] doesn't end in .exe */
-- strendzap(newargz[1],".exe");
-+ strendzap(newargz[1],".exe");
- for (i = 1; i < argc; i++)
- newargz[i+1] = xstrdup(argv[i]);
- newargz[argc+1] = NULL;
-+
-+ for (i=0; i<argc+1; i++)
-+ {
-+ DEBUG("(main) newargz[%d] : %s\n",i,newargz[i]);
-+ ;
-+ }
-+
- EOF
-
-- cat >> $cwrappersource <<EOF
-+ case $host_os in
-+ mingw*)
-+ cat >> $cwrappersource <<EOF
-+ execv("$SHELL",(char const **)newargz);
-+EOF
-+ ;;
-+ *)
-+ cat >> $cwrappersource <<EOF
- execv("$SHELL",newargz);
- EOF
-+ ;;
-+ esac
-
-- cat >> $cwrappersource <<"EOF"
-+ cat >> $cwrappersource <<"EOF"
-+ return 127;
- }
-
- void *
-@@ -4685,59 +5040,159 @@
- return p;
- }
-
--char *
-+char *
- xstrdup (const char *string)
- {
- return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL
- ;
- }
-
--char *
--basename (const char *name)
-+const char *
-+base_name (const char *name)
- {
- const char *base;
-
- #if defined (HAVE_DOS_BASED_FILE_SYSTEM)
- /* Skip over the disk name in MSDOS pathnames. */
-- if (isalpha (name[0]) && name[1] == ':')
-+ if (isalpha ((unsigned char)name[0]) && name[1] == ':')
- name += 2;
- #endif
-
- for (base = name; *name; name++)
- if (IS_DIR_SEPARATOR (*name))
- base = name + 1;
-- return (char *) base;
-+ return base;
-+}
-+
-+int
-+check_executable(const char * path)
-+{
-+ struct stat st;
-+
-+ DEBUG("(check_executable) : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!");
-+ if ((!path) || (!*path))
-+ return 0;
-+
-+ if ((stat (path, &st) >= 0) &&
-+ (
-+ /* MinGW & native WIN32 do not support S_IXOTH or S_IXGRP */
-+#if defined (S_IXOTH)
-+ ((st.st_mode & S_IXOTH) == S_IXOTH) ||
-+#endif
-+#if defined (S_IXGRP)
-+ ((st.st_mode & S_IXGRP) == S_IXGRP) ||
-+#endif
-+ ((st.st_mode & S_IXUSR) == S_IXUSR))
-+ )
-+ return 1;
-+ else
-+ return 0;
- }
-
--char *
--fnqualify(const char *path)
-+/* Searches for the full path of the wrapper. Returns
-+ newly allocated full path name if found, NULL otherwise */
-+char *
-+find_executable (const char* wrapper)
- {
-- size_t size;
-- char *p;
-+ int has_slash = 0;
-+ const char* p;
-+ const char* p_next;
-+ /* static buffer for getcwd */
- char tmp[LT_PATHMAX + 1];
-+ int tmp_len;
-+ char* concat_name;
-+
-+ DEBUG("(find_executable) : %s\n", wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!");
-
-- assert(path != NULL);
-+ if ((wrapper == NULL) || (*wrapper == '\0'))
-+ return NULL;
-
-- /* Is it qualified already? */
-+ /* Absolute path? */
- #if defined (HAVE_DOS_BASED_FILE_SYSTEM)
-- if (isalpha (path[0]) && path[1] == ':')
-- return xstrdup (path);
-+ if (isalpha ((unsigned char)wrapper[0]) && wrapper[1] == ':')
-+ {
-+ concat_name = xstrdup (wrapper);
-+ if (check_executable(concat_name))
-+ return concat_name;
-+ XFREE(concat_name);
-+ }
-+ else
-+ {
-+#endif
-+ if (IS_DIR_SEPARATOR (wrapper[0]))
-+ {
-+ concat_name = xstrdup (wrapper);
-+ if (check_executable(concat_name))
-+ return concat_name;
-+ XFREE(concat_name);
-+ }
-+#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
-+ }
- #endif
-- if (IS_DIR_SEPARATOR (path[0]))
-- return xstrdup (path);
-
-- /* prepend the current directory */
-- /* doesn't handle '~' */
-+ for (p = wrapper; *p; p++)
-+ if (*p == '/')
-+ {
-+ has_slash = 1;
-+ break;
-+ }
-+ if (!has_slash)
-+ {
-+ /* no slashes; search PATH */
-+ const char* path = getenv ("PATH");
-+ if (path != NULL)
-+ {
-+ for (p = path; *p; p = p_next)
-+ {
-+ const char* q;
-+ size_t p_len;
-+ for (q = p; *q; q++)
-+ if (IS_PATH_SEPARATOR(*q))
-+ break;
-+ p_len = q - p;
-+ p_next = (*q == '\0' ? q : q + 1);
-+ if (p_len == 0)
-+ {
-+ /* empty path: current directory */
-+ if (getcwd (tmp, LT_PATHMAX) == NULL)
-+ lt_fatal ("getcwd failed");
-+ tmp_len = strlen(tmp);
-+ concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1);
-+ memcpy (concat_name, tmp, tmp_len);
-+ concat_name[tmp_len] = '/';
-+ strcpy (concat_name + tmp_len + 1, wrapper);
-+ }
-+ else
-+ {
-+ concat_name = XMALLOC(char, p_len + 1 + strlen(wrapper) + 1);
-+ memcpy (concat_name, p, p_len);
-+ concat_name[p_len] = '/';
-+ strcpy (concat_name + p_len + 1, wrapper);
-+ }
-+ if (check_executable(concat_name))
-+ return concat_name;
-+ XFREE(concat_name);
-+ }
-+ }
-+ /* not found in PATH; assume curdir */
-+ }
-+ /* Relative path | not found in path: prepend cwd */
- if (getcwd (tmp, LT_PATHMAX) == NULL)
- lt_fatal ("getcwd failed");
-- size = strlen(tmp) + 1 + strlen(path) + 1; /* +2 for '/' and '\0' */
-- p = XMALLOC(char, size);
-- sprintf(p, "%s%c%s", tmp, DIR_SEPARATOR, path);
-- return p;
-+ tmp_len = strlen(tmp);
-+ concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1);
-+ memcpy (concat_name, tmp, tmp_len);
-+ concat_name[tmp_len] = '/';
-+ strcpy (concat_name + tmp_len + 1, wrapper);
-+
-+ if (check_executable(concat_name))
-+ return concat_name;
-+ XFREE(concat_name);
-+ return NULL;
- }
-
- char *
--strendzap(char *str, const char *pat)
-+strendzap(char *str, const char *pat)
- {
- size_t len, patlen;
-
-@@ -4757,7 +5212,7 @@
- }
-
- static void
--lt_error_core (int exit_status, const char * mode,
-+lt_error_core (int exit_status, const char * mode,
- const char * message, va_list ap)
- {
- fprintf (stderr, "%s: %s: ", program_name, mode);
-@@ -4777,16 +5232,16 @@
- va_end (ap);
- }
- EOF
-- # we should really use a build-platform specific compiler
-- # here, but OTOH, the wrappers (shell script and this C one)
-- # are only useful if you want to execute the "real" binary.
-- # Since the "real" binary is built for $host, then this
-- # wrapper might as well be built for $host, too.
-- $run $LTCC -s -o $cwrapper $cwrappersource
-- ;;
-- esac
-- $rm $output
-- trap "$rm $output; exit 1" 1 2 15
-+ # we should really use a build-platform specific compiler
-+ # here, but OTOH, the wrappers (shell script and this C one)
-+ # are only useful if you want to execute the "real" binary.
-+ # Since the "real" binary is built for $host, then this
-+ # wrapper might as well be built for $host, too.
-+ $run $LTCC $LTCFLAGS -s -o $cwrapper $cwrappersource
-+ ;;
-+ esac
-+ $rm $output
-+ trap "$rm $output; exit $EXIT_FAILURE" 1 2 15
-
- $echo > $output "\
- #! $SHELL
-@@ -4807,7 +5262,7 @@
-
- # 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
-+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
- relink_command=\"$relink_command\"
-
-@@ -4886,7 +5341,7 @@
- else
- $echo \"\$relink_command_output\" >&2
- $rm \"\$progdir/\$file\"
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- fi
-
-@@ -4936,34 +5391,32 @@
- # Backslashes separate directories on plain windows
- *-*-mingw | *-*-os2*)
- $echo >> $output "\
-- exec \$progdir\\\\\$program \${1+\"\$@\"}
-+ exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
- "
- ;;
-
- *)
-- # Need to set LD_LIBRARY_PATH, to the value already
-- # computed within libtool.
- $echo >> $output "\
-- LD_LIBRARY_PATH=\"$rpath\" exec \$progdir/\$program \${1+\"\$@\"}
-+ exec \"\$progdir/\$program\" \${1+\"\$@\"}
- "
- ;;
- esac
- $echo >> $output "\
- \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- else
- # The program doesn't exist.
-- \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2
-+ \$echo \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
- \$echo \"This script is just a wrapper for \$program.\" 1>&2
- $echo \"See the $PACKAGE documentation for more information.\" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- fi\
- "
- chmod +x $output
- fi
-- exit 0
-+ exit $EXIT_SUCCESS
- ;;
- esac
-
-@@ -4986,78 +5439,78 @@
-
- if test -n "$addlibs"; then
- gentop="$output_objdir/${outputname}x"
-- $show "${rm}r $gentop"
-- $run ${rm}r "$gentop"
-- $show "$mkdir $gentop"
-- $run $mkdir "$gentop"
-- status=$?
-- if test "$status" -ne 0 && test ! -d "$gentop"; then
-- exit $status
-- fi
- generated="$generated $gentop"
-
-- # Add in members from convenience archives.
-- for xlib in $addlibs; do
-- # Extract the objects.
-- case $xlib in
-- [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
-- *) xabs=`pwd`"/$xlib" ;;
-- esac
-- xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
-- xdir="$gentop/$xlib"
--
-- $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
-- # We will extract separately just the conflicting names and we will no
-- # longer touch any unique names. It is faster to leave these extract
-- # automatically by $AR in one run.
-- $show "(cd $xdir && $AR x $xabs)"
-- $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
-- if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then
-- :
-- else
-- $echo "$modename: warning: object name conflicts; renaming object files" 1>&2
-- $echo "$modename: warning: to ensure that they will not overwrite" 1>&2
-- $AR t "$xabs" | sort | uniq -cd | while read -r count name
-- do
-- i=1
-- while test "$i" -le "$count"
-- do
-- # Put our $i before any first dot (extension)
-- # Never overwrite any file
-- name_to="$name"
-- while test "X$name_to" = "X$name" || test -f "$xdir/$name_to"
-- do
-- name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"`
-- done
-- $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')"
-- $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $?
-- i=`expr $i + 1`
-- done
-- done
-- fi
--
-- oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP`
-- done
-+ func_extract_archives $gentop $addlibs
-+ oldobjs="$oldobjs $func_extract_archives_result"
- fi
-
-- compiler_flags="$compiler_flags $add_flags"
--
- # Do each command in the archive commands.
- if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
-- eval cmds=\"$old_archive_from_new_cmds\"
-+ cmds=$old_archive_from_new_cmds
- else
-+ # POSIX demands no paths to be encoded in archives. We have
-+ # to avoid creating archives with duplicate basenames if we
-+ # might have to extract them afterwards, e.g., when creating a
-+ # static archive out of a convenience library, or when linking
-+ # the entirety of a libtool archive into another (currently
-+ # not supported by libtool).
-+ if (for obj in $oldobjs
-+ do
-+ $echo "X$obj" | $Xsed -e 's%^.*/%%'
-+ done | sort | sort -uc >/dev/null 2>&1); then
-+ :
-+ else
-+ $echo "copying selected object files to avoid basename conflicts..."
-+
-+ if test -z "$gentop"; then
-+ gentop="$output_objdir/${outputname}x"
-+ generated="$generated $gentop"
-+
-+ $show "${rm}r $gentop"
-+ $run ${rm}r "$gentop"
-+ $show "$mkdir $gentop"
-+ $run $mkdir "$gentop"
-+ exit_status=$?
-+ if test "$exit_status" -ne 0 && test ! -d "$gentop"; then
-+ exit $exit_status
-+ fi
-+ fi
-+
-+ save_oldobjs=$oldobjs
-+ oldobjs=
-+ counter=1
-+ for obj in $save_oldobjs
-+ do
-+ objbase=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
-+ case " $oldobjs " in
-+ " ") oldobjs=$obj ;;
-+ *[\ /]"$objbase "*)
-+ while :; do
-+ # Make sure we don't pick an alternate name that also
-+ # overlaps.
-+ newobj=lt$counter-$objbase
-+ counter=`expr $counter + 1`
-+ case " $oldobjs " in
-+ *[\ /]"$newobj "*) ;;
-+ *) if test ! -f "$gentop/$newobj"; then break; fi ;;
-+ esac
-+ done
-+ $show "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
-+ $run ln "$obj" "$gentop/$newobj" ||
-+ $run cp "$obj" "$gentop/$newobj"
-+ oldobjs="$oldobjs $gentop/$newobj"
-+ ;;
-+ *) oldobjs="$oldobjs $obj" ;;
-+ esac
-+ done
-+ fi
-+
- eval cmds=\"$old_archive_cmds\"
-
- if len=`expr "X$cmds" : ".*"` &&
- test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
-- :
-+ cmds=$old_archive_cmds
- else
- # the command line is too long to link in one step, link in parts
- $echo "using piecewise archive linking..."
-@@ -5066,31 +5519,18 @@
- objlist=
- concat_cmds=
- save_oldobjs=$oldobjs
-- # GNU ar 2.10+ was changed to match POSIX; thus no paths are
-- # encoded into archives. This makes 'ar r' malfunction in
-- # this piecewise linking case whenever conflicting object
-- # names appear in distinct ar calls; check, warn and compensate.
-- if (for obj in $save_oldobjs
-- do
-- $echo "X$obj" | $Xsed -e 's%^.*/%%'
-- done | sort | sort -uc >/dev/null 2>&1); then
-- :
-- else
-- $echo "$modename: warning: object name conflicts; overriding AR_FLAGS to 'cq'" 1>&2
-- $echo "$modename: warning: to ensure that POSIX-compatible ar will work" 1>&2
-- AR_FLAGS=cq
-- fi
-+
- # Is there a better way of finding the last object in the list?
- for obj in $save_oldobjs
- do
- last_oldobj=$obj
-- done
-+ done
- for obj in $save_oldobjs
- do
- oldobjs="$objlist $obj"
- objlist="$objlist $obj"
- eval test_cmds=\"$old_archive_cmds\"
-- if len=`expr "X$test_cmds" : ".*"` &&
-+ if len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
- test "$len" -le "$max_cmd_len"; then
- :
- else
-@@ -5098,7 +5538,7 @@
- oldobjs=$objlist
- if test "$obj" = "$last_oldobj" ; then
- RANLIB=$save_RANLIB
-- fi
-+ fi
- test -z "$concat_cmds" || concat_cmds=$concat_cmds~
- eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
- objlist=
-@@ -5109,12 +5549,13 @@
- if test "X$oldobjs" = "X" ; then
- eval cmds=\"\$concat_cmds\"
- else
-- eval cmds=\"\$concat_cmds~$old_archive_cmds\"
-+ eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
- fi
- fi
- fi
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
-+ eval cmd=\"$cmd\"
- IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd" || exit $?
-@@ -5146,11 +5587,13 @@
- fi
- done
- # Quote the link command for shipping.
-- relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)"
-+ relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
- relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
- if test "$hardcode_automatic" = yes ; then
-- relink_command=
-- fi
-+ relink_command=
-+ fi
-+
-+
- # Only create the output if not a dry run.
- if test -z "$run"; then
- for installed in no yes; do
-@@ -5162,13 +5605,17 @@
- # Replace all uninstalled libtool libraries with the installed ones
- newdependency_libs=
- for deplib in $dependency_libs; do
-+ # Replacing uninstalled with installed can easily break crosscompilation,
-+ # since the installed path is generally the wrong architecture. -CL
-+ newdependency_libs="$newdependency_libs $deplib"
-+ continue
- case $deplib in
- *.la)
- name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
- if test -z "$libdir"; then
- $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- newdependency_libs="$newdependency_libs $libdir/$name"
- ;;
-@@ -5182,7 +5629,7 @@
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
- if test -z "$libdir"; then
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- newdlfiles="$newdlfiles $libdir/$name"
- done
-@@ -5193,11 +5640,30 @@
- eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
- if test -z "$libdir"; then
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- newdlprefiles="$newdlprefiles $libdir/$name"
- done
- dlprefiles="$newdlprefiles"
-+ else
-+ newdlfiles=
-+ for lib in $dlfiles; do
-+ case $lib in
-+ [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
-+ *) abs=`pwd`"/$lib" ;;
-+ esac
-+ newdlfiles="$newdlfiles $abs"
-+ done
-+ dlfiles="$newdlfiles"
-+ newdlprefiles=
-+ for lib in $dlprefiles; do
-+ case $lib in
-+ [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
-+ *) abs=`pwd`"/$lib" ;;
-+ esac
-+ newdlprefiles="$newdlprefiles $abs"
-+ done
-+ dlprefiles="$newdlprefiles"
- fi
- $rm $output
- # place dlname in correct position for cygwin
-@@ -5241,7 +5707,7 @@
-
- # Directory that this library needs to be installed in:
- libdir='$install_libdir'"
-- if test "$installed" = no && test "$need_relink" = yes && test "$fast_install" = no; then
-+ if test "$installed" = no && test "$need_relink" = yes; then
- $echo >> $output "\
- relink_command=\"$relink_command\""
- fi
-@@ -5254,7 +5720,7 @@
- $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
- ;;
- esac
-- exit 0
-+ exit $EXIT_SUCCESS
- ;;
-
- # libtool install mode
-@@ -5265,11 +5731,11 @@
- # install_prog (especially on Windows NT).
- if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
- # Allow the use of GNU shtool's install command.
-- $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then
-+ $echo "X$nonopt" | grep shtool > /dev/null; then
- # Aesthetically quote it.
- arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
- case $arg in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
-@@ -5278,14 +5744,14 @@
- shift
- else
- install_prog=
-- arg="$nonopt"
-+ arg=$nonopt
- fi
-
- # The real first argument should be the name of the installation program.
- # Aesthetically quote it.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
-@@ -5303,28 +5769,31 @@
- do
- if test -n "$dest"; then
- files="$files $dest"
-- dest="$arg"
-+ dest=$arg
- continue
- fi
-
- case $arg in
- -d) isdir=yes ;;
-- -f) prev="-f" ;;
-- -g) prev="-g" ;;
-- -m) prev="-m" ;;
-- -o) prev="-o" ;;
-+ -f)
-+ case " $install_prog " in
-+ *[\\\ /]cp\ *) ;;
-+ *) prev=$arg ;;
-+ esac
-+ ;;
-+ -g | -m | -o) prev=$arg ;;
- -s)
- stripme=" -s"
- continue
- ;;
-- -*) ;;
--
-+ -*)
-+ ;;
- *)
- # If the previous option needed an argument, then skip it.
- if test -n "$prev"; then
- prev=
- else
-- dest="$arg"
-+ dest=$arg
- continue
- fi
- ;;
-@@ -5333,7 +5802,7 @@
- # Aesthetically quote the argument.
- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
- case $arg in
-- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
- arg="\"$arg\""
- ;;
- esac
-@@ -5343,13 +5812,13 @@
- if test -z "$install_prog"; then
- $echo "$modename: you must specify an install program" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- if test -n "$prev"; then
- $echo "$modename: the \`$prev' option requires an argument" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- if test -z "$files"; then
-@@ -5359,7 +5828,7 @@
- $echo "$modename: you must specify a destination" 1>&2
- fi
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Strip any trailing slash from the destination.
-@@ -5380,7 +5849,7 @@
- if test "$#" -gt 2; then
- $echo "$modename: \`$dest' is not a directory" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- fi
- case $destdir in
-@@ -5392,7 +5861,7 @@
- *)
- $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
- done
-@@ -5421,7 +5890,7 @@
- else
- $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- library_names=
-@@ -5461,10 +5930,13 @@
- # At present, this check doesn't affect windows .dll's that
- # are installed into $libdir/../bin (currently, that works fine)
- # but it's something to keep an eye on.
-- if test "$inst_prefix_dir" = "$destdir"; then
-- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
-- exit 1
-- fi
-+ #
-+ # This breaks install into our staging area. -PB
-+ #
-+ # if test "$inst_prefix_dir" = "$destdir"; then
-+ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
-+ # exit $EXIT_FAILURE
-+ # fi
-
- if test -n "$inst_prefix_dir"; then
- # Stick the inst_prefix_dir data into the link command.
-@@ -5478,7 +5950,7 @@
- if $run eval "$relink_command"; then :
- else
- $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- fi
-
-@@ -5502,23 +5974,36 @@
-
- if test "$#" -gt 0; then
- # Delete the old symlinks, and create new ones.
-+ # Try `ln -sf' first, because the `ln' binary might depend on
-+ # the symlink we replace! Solaris /bin/ln does not understand -f,
-+ # so we also need to try rm && ln -s.
- for linkname
- do
- if test "$linkname" != "$realname"; then
-- $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
-- $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
-+ $show "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })"
-+ $run eval "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })"
- fi
- done
- fi
-
- # Do each command in the postinstall commands.
- lib="$destdir/$realname"
-- eval cmds=\"$postinstall_cmds\"
-+ cmds=$postinstall_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
-- $run eval "$cmd" || exit $?
-+ $run eval "$cmd" || {
-+ lt_exit=$?
-+
-+ # Restore the uninstalled library and exit
-+ if test "$mode" = relink; then
-+ $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)'
-+ fi
-+
-+ exit $lt_exit
-+ }
- done
- IFS="$save_ifs"
- fi
-@@ -5556,7 +6041,7 @@
- *)
- $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
-
-@@ -5574,7 +6059,7 @@
- $show "$install_prog $staticobj $staticdest"
- $run eval "$install_prog \$staticobj \$staticdest" || exit $?
- fi
-- exit 0
-+ exit $EXIT_SUCCESS
- ;;
-
- *)
-@@ -5612,23 +6097,21 @@
- notinst_deplibs=
- relink_command=
-
-- # To insure that "foo" is sourced, and not "foo.exe",
-- # finese the cygwin/MSYS system by explicitly sourcing "foo."
-- # which disallows the automatic-append-.exe behavior.
-- case $build in
-- *cygwin* | *mingw*) wrapperdot=${wrapper}. ;;
-- *) wrapperdot=${wrapper} ;;
-- esac
-+ # Note that it is not necessary on cygwin/mingw to append a dot to
-+ # foo even if both foo and FILE.exe exist: automatic-append-.exe
-+ # behavior happens only for exec(3), not for open(2)! Also, sourcing
-+ # `FILE.' does not work on cygwin managed mounts.
-+ #
- # If there is no directory component, then add one.
-- case $file in
-- */* | *\\*) . ${wrapperdot} ;;
-- *) . ./${wrapperdot} ;;
-+ case $wrapper in
-+ */* | *\\*) . ${wrapper} ;;
-+ *) . ./${wrapper} ;;
- esac
-
- # Check the variables that should have been set.
- if test -z "$notinst_deplibs"; then
- $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- finalize=yes
-@@ -5650,30 +6133,21 @@
- done
-
- relink_command=
-- # To insure that "foo" is sourced, and not "foo.exe",
-- # finese the cygwin/MSYS system by explicitly sourcing "foo."
-- # which disallows the automatic-append-.exe behavior.
-- case $build in
-- *cygwin* | *mingw*) wrapperdot=${wrapper}. ;;
-- *) wrapperdot=${wrapper} ;;
-- esac
-+ # Note that it is not necessary on cygwin/mingw to append a dot to
-+ # foo even if both foo and FILE.exe exist: automatic-append-.exe
-+ # behavior happens only for exec(3), not for open(2)! Also, sourcing
-+ # `FILE.' does not work on cygwin managed mounts.
-+ #
- # If there is no directory component, then add one.
-- case $file in
-- */* | *\\*) . ${wrapperdot} ;;
-- *) . ./${wrapperdot} ;;
-+ case $wrapper in
-+ */* | *\\*) . ${wrapper} ;;
-+ *) . ./${wrapper} ;;
- esac
-
- outputname=
- if test "$fast_install" = no && test -n "$relink_command"; then
- if test "$finalize" = yes && test -z "$run"; then
-- tmpdir="/tmp"
-- test -n "$TMPDIR" && tmpdir="$TMPDIR"
-- tmpdir="$tmpdir/libtool-$$"
-- if $mkdir "$tmpdir" && chmod 700 "$tmpdir"; then :
-- else
-- $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
-- continue
-- fi
-+ tmpdir=`func_mktempdir`
- file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'`
- outputname="$tmpdir/$file"
- # Replace the output file specification.
-@@ -5697,7 +6171,7 @@
- fi
-
- # remove .exe since cygwin /usr/bin/install will append another
-- # one anyways
-+ # one anyway
- case $install_prog,$host in
- */usr/bin/install*,*cygwin*)
- case $file:$destfile in
-@@ -5729,16 +6203,17 @@
- $show "$install_prog $file $oldlib"
- $run eval "$install_prog \$file \$oldlib" || exit $?
-
-- if test -n "$stripme" && test -n "$striplib"; then
-+ if test -n "$stripme" && test -n "$old_striplib"; then
- $show "$old_striplib $oldlib"
- $run eval "$old_striplib $oldlib" || exit $?
- fi
-
- # Do each command in the postinstall commands.
-- eval cmds=\"$old_postinstall_cmds\"
-+ cmds=$old_postinstall_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || exit $?
- done
-@@ -5752,9 +6227,9 @@
- if test -n "$current_libdirs"; then
- # Maybe just do a dry run.
- test -n "$run" && current_libdirs=" -n$current_libdirs"
-- exec_cmd='$SHELL $0 --finish$current_libdirs'
-+ exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
- else
-- exit 0
-+ exit $EXIT_SUCCESS
- fi
- ;;
-
-@@ -5773,10 +6248,11 @@
- for libdir in $libdirs; do
- if test -n "$finish_cmds"; then
- # Do each command in the finish commands.
-- eval cmds=\"$finish_cmds\"
-+ cmds=$finish_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd" || admincmds="$admincmds
- $cmd"
-@@ -5793,9 +6269,9 @@
- fi
-
- # Exit here if they wanted silent mode.
-- exit 0
-+ test "$show" = : && exit $EXIT_SUCCESS
-
-- $echo "----------------------------------------------------------------------"
-+ $echo "X----------------------------------------------------------------------" | $Xsed
- $echo "Libraries have been installed in:"
- for libdir in $libdirs; do
- $echo " $libdir"
-@@ -5828,8 +6304,8 @@
- $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 "----------------------------------------------------------------------"
-- exit 0
-+ $echo "X----------------------------------------------------------------------" | $Xsed
-+ exit $EXIT_SUCCESS
- ;;
-
- # libtool execute mode
-@@ -5841,7 +6317,7 @@
- if test -z "$cmd"; then
- $echo "$modename: you must specify a COMMAND" 1>&2
- $echo "$help"
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Handle -dlopen flags immediately.
-@@ -5849,7 +6325,7 @@
- if test ! -f "$file"; then
- $echo "$modename: \`$file' is not a file" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- dir=
-@@ -5860,7 +6336,7 @@
- else
- $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # Read the libtool library.
-@@ -5887,7 +6363,7 @@
- dir="$dir/$objdir"
- else
- $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- ;;
-
-@@ -5967,7 +6443,7 @@
- $echo "export $shlibpath_var"
- fi
- $echo "$cmd$args"
-- exit 0
-+ exit $EXIT_SUCCESS
- fi
- ;;
-
-@@ -5995,7 +6471,7 @@
- if test -z "$rm"; then
- $echo "$modename: you must specify an RM program" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- rmdirs=
-@@ -6045,15 +6521,24 @@
- rmfiles="$rmfiles $objdir/$n"
- done
- test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
-- test "$mode" = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
-
-- if test "$mode" = uninstall; then
-+ case "$mode" in
-+ clean)
-+ case " $library_names " in
-+ # " " in the beginning catches empty $dlname
-+ *" $dlname "*) ;;
-+ *) rmfiles="$rmfiles $objdir/$dlname" ;;
-+ esac
-+ test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
-+ ;;
-+ uninstall)
- if test -n "$library_names"; then
- # Do each command in the postuninstall commands.
-- eval cmds=\"$postuninstall_cmds\"
-+ cmds=$postuninstall_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd"
- if test "$?" -ne 0 && test "$rmforce" != yes; then
-@@ -6065,10 +6550,11 @@
-
- if test -n "$old_library"; then
- # Do each command in the old_postuninstall commands.
-- eval cmds=\"$old_postuninstall_cmds\"
-+ cmds=$old_postuninstall_cmds
- save_ifs="$IFS"; IFS='~'
- for cmd in $cmds; do
- IFS="$save_ifs"
-+ eval cmd=\"$cmd\"
- $show "$cmd"
- $run eval "$cmd"
- if test "$?" -ne 0 && test "$rmforce" != yes; then
-@@ -6078,7 +6564,8 @@
- IFS="$save_ifs"
- fi
- # FIXME: should reinstall the best remaining shared library.
-- fi
-+ ;;
-+ esac
- fi
- ;;
-
-@@ -6107,7 +6594,7 @@
- if test "$mode" = clean ; then
- noexename=$name
- case $file in
-- *.exe)
-+ *.exe)
- file=`$echo $file|${SED} 's,.exe$,,'`
- noexename=`$echo $name|${SED} 's,.exe$,,'`
- # $file with .exe has already been added to rmfiles,
-@@ -6152,20 +6639,20 @@
- "")
- $echo "$modename: you must specify a MODE" 1>&2
- $echo "$generic_help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
-
- if test -z "$exec_cmd"; then
- $echo "$modename: invalid operation mode \`$mode'" 1>&2
- $echo "$generic_help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- fi
- fi # test -z "$show_help"
-
- if test -n "$exec_cmd"; then
- eval exec $exec_cmd
-- exit 1
-+ exit $EXIT_FAILURE
- fi
-
- # We need to display help for each of the modes.
-@@ -6201,7 +6688,7 @@
- a more detailed description of MODE.
-
- Report bugs to <bug-libtool@gnu.org>."
-- exit 0
-+ exit $EXIT_SUCCESS
- ;;
-
- clean)
-@@ -6313,6 +6800,8 @@
- -no-undefined declare that a library does not refer to external symbols
- -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
- -objectlist FILE Use a list of object files found in FILE to specify objects
-+ -precious-files-regex REGEX
-+ don't remove output files matching REGEX
- -release RELEASE specify package release information
- -rpath LIBDIR the created library will eventually be installed in LIBDIR
- -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
-@@ -6354,14 +6843,14 @@
- *)
- $echo "$modename: invalid operation mode \`$mode'" 1>&2
- $echo "$help" 1>&2
-- exit 1
-+ exit $EXIT_FAILURE
- ;;
- esac
-
- $echo
- $echo "Try \`$modename --help' for more information about other modes."
-
--exit 0
-+exit $?
-
- # The TAGs below are defined such that we never get into a situation
- # in which we disable both kinds of libraries. Given conflicting
-@@ -6375,12 +6864,11 @@
- # configuration. But we'll never go from static-only to shared-only.
-
- # ### BEGIN LIBTOOL TAG CONFIG: disable-shared
--build_libtool_libs=no
--build_old_libs=yes
-+disable_libs=shared
- # ### END LIBTOOL TAG CONFIG: disable-shared
-
- # ### BEGIN LIBTOOL TAG CONFIG: disable-static
--build_old_libs=`case $build_libtool_libs in yes) $echo no;; *) $echo yes;; esac`
-+disable_libs=static
- # ### END LIBTOOL TAG CONFIG: disable-static
-
- # Local Variables: