diff options
| author | Marcus Brinkmann <[email protected]> | 2009-12-08 21:38:22 +0000 | 
|---|---|---|
| committer | Marcus Brinkmann <[email protected]> | 2009-12-08 21:38:22 +0000 | 
| commit | 0a80f620897355a7b264c8fa1047c47fe2e86970 (patch) | |
| tree | 37251d6c9d3d9c0071cb7c8be9c015f89033a0ce | |
| parent | 2009-12-08 Marcus Brinkmann <[email protected]> (diff) | |
| download | gpgme-0a80f620897355a7b264c8fa1047c47fe2e86970.tar.gz gpgme-0a80f620897355a7b264c8fa1047c47fe2e86970.zip  | |
2009-12-08  Marcus Brinkmann  <[email protected]>
	Update to libtool 2.2.6a.
	* configure.ac: Invoke AC_CONFIG_MACRO_DIR.
	(AC_LIBTOOL_WIN32_DLL, AC_LIBTOOL_RC): Replace by ...
	(LT_PREREQ, LT_INIT, LT_LANG): ... these.
	* config.guess, config.sub, install-sh, ltmain.sh, m4/libtool.m4:
	Updated to libtool 2.2.6a.
	* m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4,
	m4/lt~obsolete.m4: New files from libtool 2.2.6a.
src/
2009-12-08  Marcus Brinkmann  <[email protected]>
	* Makefile.am (LTRCCOMPILE): Refactor with ...
	(RCCOMPILE): ... this new macro.
	(SUFFIXES): Add .lo.
	(gpgme_res_ldflag): Removed.
	(gpgme_res): Use libtool object file name here.
	(libgpgme_la_LDFLAGS): Remove gpgme_res_ldflag usage.
Diffstat (limited to '')
| -rw-r--r-- | configure.ac | 8 | ||||
| -rw-r--r-- | ltmain.sh | 8452 | ||||
| -rw-r--r-- | m4/libtool.m4 | 8825 | ||||
| -rw-r--r-- | m4/ltoptions.m4 | 368 | ||||
| -rw-r--r-- | m4/ltsugar.m4 | 123 | ||||
| -rw-r--r-- | m4/ltversion.m4 | 23 | ||||
| -rw-r--r-- | m4/lt~obsolete.m4 | 92 | ||||
| -rw-r--r-- | src/ChangeLog | 8 | ||||
| -rw-r--r-- | src/Makefile.am | 34 | 
9 files changed, 10985 insertions, 6948 deletions
diff --git a/configure.ac b/configure.ac index dc5ebe26..9d4cf425 100644 --- a/configure.ac +++ b/configure.ac @@ -66,6 +66,7 @@ AC_CONFIG_SRCDIR(src/gpgme.h.in)  dnl FIXME: Enable this with autoconf 2.59.  dnl AC_CONFIG_MACRO_DIR(m4)  AM_CONFIG_HEADER(config.h) +AC_CONFIG_MACRO_DIR([m4])  AM_INIT_AUTOMAKE($PACKAGE, $VERSION)  AM_MAINTAINER_MODE  AC_CANONICAL_HOST @@ -95,10 +96,9 @@ AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package])  AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version of this package])  # Don't default to build static libs. -AC_DISABLE_STATIC -AC_LIBTOOL_WIN32_DLL -AC_LIBTOOL_RC -AC_PROG_LIBTOOL +LT_PREREQ([2.2.6]) +LT_INIT([win32-dll disable-static]) +LT_LANG([Windows Resource])  # For now we hardcode the use of version scripts.  It would be better  # to write a test for this or even implement this within libtool. @@ -1,30 +1,174 @@ -# 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, 2004 -# Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit <[email protected]>, 1996 -# -# This program is free software; you can redistribute it and/or modify +# Generated from ltmain.m4sh. + +# ltmain.sh (GNU libtool) 2.2.6 +# Written by Gordon Matzigkeit <[email protected]>, 1996 + +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions.  There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify  # it under the terms of the GNU General Public License as published by  # the Free Software Foundation; either version 2 of the License, or  # (at your option) any later version.  # -# This program is distributed in the hope that it will be useful, but +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but  # WITHOUT ANY WARRANTY; without even the implied warranty of  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU  # General Public License for more details.  #  # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# along with GNU Libtool; see the file COPYING.  If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, +# or obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +# Usage: $progname [OPTION]... [MODE-ARG]... +# +# Provide generalized library-building support services. +# +#     --config             show all configuration variables +#     --debug              enable verbose shell tracing +# -n, --dry-run            display commands without modifying any files +#     --features           display basic configuration information and exit +#     --mode=MODE          use operation mode MODE +#     --preserve-dup-deps  don't remove duplicate dependency libraries +#     --quiet, --silent    don't print informational messages +#     --tag=TAG            use configuration variables from tag TAG +# -v, --verbose            print informational messages (default) +#     --version            print version information +# -h, --help               print short or long help message +# +# MODE must be one of the following: +# +#       clean              remove files from the build directory +#       compile            compile a source file into a libtool object +#       execute            automatically set library path, then run a program +#       finish             complete the installation of libtool libraries +#       install            install libraries or executables +#       link               create a library or an executable +#       uninstall          remove libraries from an installed directory +# +# MODE-ARGS vary depending on the MODE. +# Try `$progname --help --mode=MODE' for a more detailed description of MODE. +# +# When reporting a bug, please describe a test case to reproduce it and +# include the following information:  # -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. +#       host-triplet:	$host +#       shell:		$SHELL +#       compiler:		$LTCC +#       compiler flags:		$LTCFLAGS +#       linker:		$LD (gnu? $with_gnu_ld) +#       $progname:		(GNU libtool) 2.2.6 Debian-2.2.6a-4 +#       automake:		$automake_version +#       autoconf:		$autoconf_version +# +# Report bugs to <[email protected]>. + +PROGRAM=ltmain.sh +PACKAGE=libtool +VERSION="2.2.6 Debian-2.2.6a-4" +TIMESTAMP="" +package_revision=1.3012 + +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +  emulate sh +  NULLCMD=: +  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which +  # is contrary to our usage.  Disable this feature. +  alias -g '${1+"$@"}'='"$@"' +  setopt NO_GLOB_SUBST +else +  case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# NLS nuisances: We save the old values to restore during execute mode. +# Only set LANG and LC_ALL to C if already set. +# These must not be set unconditionally because not all systems understand +# e.g. LANG=C (notably SCO). +lt_user_locale= +lt_safe_locale= +for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +do +  eval "if test \"\${$lt_var+set}\" = set; then +          save_$lt_var=\$$lt_var +          $lt_var=C +	  export $lt_var +	  lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" +	  lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" +	fi" +done + +$lt_unset CDPATH -basename="s,^.*/,,g" + + + + +: ${CP="cp -f"} +: ${ECHO="echo"} +: ${EGREP="/bin/grep -E"} +: ${FGREP="/bin/grep -F"} +: ${GREP="/bin/grep"} +: ${LN_S="ln -s"} +: ${MAKE="make"} +: ${MKDIR="mkdir"} +: ${MV="mv -f"} +: ${RM="rm -f"} +: ${SED="/bin/sed"} +: ${SHELL="${CONFIG_SHELL-/bin/sh}"} +: ${Xsed="$SED -e 1s/^X//"} + +# Global variables: +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63  # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77	  # $? = 77 is used to indicate a skipped test to automake. + +exit_status=$EXIT_SUCCESS + +# Make sure IFS has a sensible default +lt_nl=' +' +IFS=" 	$lt_nl" + +dirname="s,/[^/]*$,," +basename="s,^.*/,," + +# func_dirname_and_basename file append nondir_replacement +# perform func_basename and func_dirname in a single function +# call: +#   dirname:  Compute the dirname of FILE.  If nonempty, +#             add APPEND to the result, otherwise set result +#             to NONDIR_REPLACEMENT. +#             value returned in "$func_dirname_result" +#   basename: Compute filename of FILE. +#             value retuned in "$func_basename_result" +# Implementation must be kept synchronized with func_dirname +# and func_basename. For efficiency, we do not delegate to +# those functions but instead duplicate the functionality here. +func_dirname_and_basename () +{ +  # Extract subdirectory from the argument. +  func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` +  if test "X$func_dirname_result" = "X${1}"; then +    func_dirname_result="${3}" +  else +    func_dirname_result="$func_dirname_result${2}" +  fi +  func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` +} + +# Generated shell functions inserted here.  # 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 @@ -34,31 +178,396 @@ basename="s,^.*/,,g"  progpath="$0"  # The name of this program: -progname=`echo "$progpath" | $SED $basename` -modename="$progname" +# In the unlikely event $progname began with a '-', it would play havoc with +# func_echo (imagine progname=-n), so we prepend ./ in that case: +func_dirname_and_basename "$progpath" +progname=$func_basename_result +case $progname in +  -*) progname=./$progname ;; +esac -# Global variables: -EXIT_SUCCESS=0 -EXIT_FAILURE=1 +# Make sure we have an absolute path for reexecution: +case $progpath in +  [\\/]*|[A-Za-z]:\\*) ;; +  *[\\/]*) +     progdir=$func_dirname_result +     progdir=`cd "$progdir" && pwd` +     progpath="$progdir/$progname" +     ;; +  *) +     save_IFS="$IFS" +     IFS=: +     for progdir in $PATH; do +       IFS="$save_IFS" +       test -x "$progdir/$progname" && break +     done +     IFS="$save_IFS" +     test -n "$progdir" || progdir=`pwd` +     progpath="$progdir/$progname" +     ;; +esac -PROGRAM=ltmain.sh -PACKAGE=libtool -VERSION=1.5.4 -TIMESTAMP=" (1.1220.2.90 2004/04/03 14:10:19) Debian$Rev$" +# Sed substitution that helps us do robust quoting.  It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed="${SED}"' -e 1s/^X//' +sed_quote_subst='s/\([`"$\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Re-`\' parameter expansions in output of double_quote_subst that were +# `\'-ed in input to the same.  If an odd number of `\' preceded a '$' +# in input to double_quote_subst, that '$' was protected from expansion. +# Since each input `\' is now two `\'s, look for any number of runs of +# four `\'s followed by two `\'s and then a '$'.  `\' that '$'. +bs='\\' +bs2='\\\\' +bs4='\\\\\\\\' +dollar='\$' +sed_double_backslash="\ +  s/$bs4/&\\ +/g +  s/^$bs2$dollar/$bs&/ +  s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g +  s/\n//g" + +# Standard options: +opt_dry_run=false +opt_help=false +opt_quiet=false +opt_verbose=false +opt_warning=: + +# func_echo arg... +# Echo program name prefixed message, along with the current mode +# name if it has been set yet. +func_echo () +{ +    $ECHO "$progname${mode+: }$mode: $*" +} + +# func_verbose arg... +# Echo program name prefixed message in verbose mode only. +func_verbose () +{ +    $opt_verbose && func_echo ${1+"$@"} + +    # A bug in bash halts the script if the last line of a function +    # fails when set -e is in force, so we need another command to +    # work around that: +    : +} + +# func_error arg... +# Echo program name prefixed message to standard error. +func_error () +{ +    $ECHO "$progname${mode+: }$mode: "${1+"$@"} 1>&2 +} + +# func_warning arg... +# Echo program name prefixed warning message to standard error. +func_warning () +{ +    $opt_warning && $ECHO "$progname${mode+: }$mode: warning: "${1+"$@"} 1>&2 + +    # bash bug again: +    : +} + +# func_fatal_error arg... +# Echo program name prefixed message to standard error, and exit. +func_fatal_error () +{ +    func_error ${1+"$@"} +    exit $EXIT_FAILURE +} + +# func_fatal_help arg... +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () +{ +    func_error ${1+"$@"} +    func_fatal_error "$help" +} +help="Try \`$progname --help' for more information."  ## default + + +# func_grep expression filename +# Check whether EXPRESSION matches any line of FILENAME, without output. +func_grep () +{ +    $GREP "$1" "$2" >/dev/null 2>&1 +} -# Check that we have a working $echo. +# func_mkdir_p directory-path +# Make sure the entire path to DIRECTORY-PATH is available. +func_mkdir_p () +{ +    my_directory_path="$1" +    my_dir_list= + +    if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then + +      # Protect directory names starting with `-' +      case $my_directory_path in +        -*) my_directory_path="./$my_directory_path" ;; +      esac + +      # While some portion of DIR does not yet exist... +      while test ! -d "$my_directory_path"; do +        # ...make a list in topmost first order.  Use a colon delimited +	# list incase some portion of path contains whitespace. +        my_dir_list="$my_directory_path:$my_dir_list" + +        # If the last portion added has no slash in it, the list is done +        case $my_directory_path in */*) ;; *) break ;; esac + +        # ...otherwise throw away the child directory and loop +        my_directory_path=`$ECHO "X$my_directory_path" | $Xsed -e "$dirname"` +      done +      my_dir_list=`$ECHO "X$my_dir_list" | $Xsed -e 's,:*$,,'` + +      save_mkdir_p_IFS="$IFS"; IFS=':' +      for my_dir in $my_dir_list; do +	IFS="$save_mkdir_p_IFS" +        # mkdir can fail with a `File exist' error if two processes +        # try to create one of the directories concurrently.  Don't +        # stop in that case! +        $MKDIR "$my_dir" 2>/dev/null || : +      done +      IFS="$save_mkdir_p_IFS" + +      # Bail out if we (or some other process) failed to create a directory. +      test -d "$my_directory_path" || \ +        func_fatal_error "Failed to create \`$1'" +    fi +} + + +# 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 "$opt_dry_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" || \ +        func_fatal_error "cannot create temporary directory \`$my_tmpdir'" +    fi + +    $ECHO "X$my_tmpdir" | $Xsed +} + + +# func_quote_for_eval arg +# Aesthetically quote ARG to be evaled later. +# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT +# is double-quoted, suitable for a subsequent eval, whereas +# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters +# which are still active within double quotes backslashified. +func_quote_for_eval () +{ +    case $1 in +      *[\\\`\"\$]*) +	func_quote_for_eval_unquoted_result=`$ECHO "X$1" | $Xsed -e "$sed_quote_subst"` ;; +      *) +        func_quote_for_eval_unquoted_result="$1" ;; +    esac + +    case $func_quote_for_eval_unquoted_result in +      # Double-quote args containing shell metacharacters to delay +      # word splitting, command substitution and and variable +      # expansion for a subsequent eval. +      # Many Bourne shells cannot handle close brackets correctly +      # in scan sets, so we specify it separately. +      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") +        func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" +        ;; +      *) +        func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" +    esac +} + + +# func_quote_for_expand arg +# Aesthetically quote ARG to be evaled later; same as above, +# but do not quote variable references. +func_quote_for_expand () +{ +    case $1 in +      *[\\\`\"]*) +	my_arg=`$ECHO "X$1" | $Xsed \ +	    -e "$double_quote_subst" -e "$sed_double_backslash"` ;; +      *) +        my_arg="$1" ;; +    esac + +    case $my_arg in +      # Double-quote args containing shell metacharacters to delay +      # word splitting and command substitution for a subsequent eval. +      # Many Bourne shells cannot handle close brackets correctly +      # in scan sets, so we specify it separately. +      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") +        my_arg="\"$my_arg\"" +        ;; +    esac + +    func_quote_for_expand_result="$my_arg" +} + + +# func_show_eval cmd [fail_exp] +# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is +# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. +func_show_eval () +{ +    my_cmd="$1" +    my_fail_exp="${2-:}" + +    ${opt_silent-false} || { +      func_quote_for_expand "$my_cmd" +      eval "func_echo $func_quote_for_expand_result" +    } + +    if ${opt_dry_run-false}; then :; else +      eval "$my_cmd" +      my_status=$? +      if test "$my_status" -eq 0; then :; else +	eval "(exit $my_status); $my_fail_exp" +      fi +    fi +} + + +# func_show_eval_locale cmd [fail_exp] +# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is +# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it.  Use the saved locale for evaluation. +func_show_eval_locale () +{ +    my_cmd="$1" +    my_fail_exp="${2-:}" + +    ${opt_silent-false} || { +      func_quote_for_expand "$my_cmd" +      eval "func_echo $func_quote_for_expand_result" +    } + +    if ${opt_dry_run-false}; then :; else +      eval "$lt_user_locale +	    $my_cmd" +      my_status=$? +      eval "$lt_safe_locale" +      if test "$my_status" -eq 0; then :; else +	eval "(exit $my_status); $my_fail_exp" +      fi +    fi +} + + + + + +# func_version +# Echo version message to standard output and exit. +func_version () +{ +    $SED -n '/^# '$PROGRAM' (GNU /,/# warranty; / { +        s/^# // +	s/^# *$// +        s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ +        p +     }' < "$progpath" +     exit $? +} + +# func_usage +# Echo short help message to standard output and exit. +func_usage () +{ +    $SED -n '/^# Usage:/,/# -h/ { +        s/^# // +	s/^# *$// +	s/\$progname/'$progname'/ +	p +    }' < "$progpath" +    $ECHO +    $ECHO "run \`$progname --help | more' for full usage" +    exit $? +} + +# func_help +# Echo long help message to standard output and exit. +func_help () +{ +    $SED -n '/^# Usage:/,/# Report bugs to/ { +        s/^# // +	s/^# *$// +	s*\$progname*'$progname'* +	s*\$host*'"$host"'* +	s*\$SHELL*'"$SHELL"'* +	s*\$LTCC*'"$LTCC"'* +	s*\$LTCFLAGS*'"$LTCFLAGS"'* +	s*\$LD*'"$LD"'* +	s/\$with_gnu_ld/'"$with_gnu_ld"'/ +	s/\$automake_version/'"`(automake --version) 2>/dev/null |$SED 1q`"'/ +	s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/ +	p +     }' < "$progpath" +    exit $? +} + +# func_missing_arg argname +# Echo program name prefixed message to standard error and set global +# exit_cmd. +func_missing_arg () +{ +    func_error "missing argument for $1" +    exit_cmd=exit +} + +exit_cmd=: + + + + + +# Check that we have a working $ECHO.  if test "X$1" = X--no-reexec; then    # Discard the --no-reexec flag, and continue.    shift  elif test "X$1" = X--fallback-echo; then    # Avoid inline document here, it may be left over    : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then -  # Yippee, $echo works! +elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then +  # Yippee, $ECHO works!    :  else -  # Restart under the correct shell, and then maybe $echo will work. +  # Restart under the correct shell, and then maybe $ECHO will work.    exec $SHELL "$progpath" --no-reexec ${1+"$@"}  fi @@ -71,104 +580,424 @@ EOF    exit $EXIT_SUCCESS  fi -default_mode= -help="Try \`$progname --help' for more information."  magic="%%%MAGIC variable%%%" -mkdir="mkdir" -mv="mv -f" -rm="rm -f" - -# Sed substitution that helps us do robust quoting.  It backslashifies -# metacharacters that are still active within double-quoted strings. -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'" -  ;; - *) # Assume ASCII based system -  SP2NL="tr '\040' '\012'" -  NL2SP="tr '\015\012' '\040\040'" -  ;; -esac - -# NLS nuisances. -# Only set LANG and LC_ALL to C if already set. -# These must not be set unconditionally because not all systems understand -# e.g. LANG=C (notably SCO). -# We save the old values to restore during execute mode. -if test "${LC_ALL+set}" = set; then -  save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL -fi -if test "${LANG+set}" = set; then -  save_LANG="$LANG"; LANG=C; export LANG -fi - -# Make sure IFS has a sensible default -: ${IFS=" 	 -"} - -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 $EXIT_FAILURE -fi +magic_exe="%%%MAGIC EXE variable%%%"  # Global variables. -mode=$default_mode +# $mode is unset  nonopt= -prev= -prevopt= -run= -show="$echo" -show_help=  execute_dlfiles= +preserve_args=  lo2o="s/\\.lo\$/.${objext}/"  o2lo="s/\\.${objext}\$/.lo/" +extracted_archives= +extracted_serial=0 -##################################### -# Shell function definitions: -# This seems to be the best place for them +opt_dry_run=false +opt_duplicate_deps=false +opt_silent=false +opt_debug=: -# 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. -func_win32_libid () { -  win32_libid_type="unknown" -  win32_fileres=`file -L $1 2>/dev/null` -  case $win32_fileres in -  *ar\ archive\ import\ library*) # definitely import -    win32_libid_type="x86 archive import" -    ;; -  *ar\ archive*) # could be an import, or static -    if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ -      $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" +# 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. +exec_cmd= + +# func_fatal_configuration arg... +# Echo program name prefixed message to standard error, followed by +# a configuration failure hint, and exit. +func_fatal_configuration () +{ +    func_error ${1+"$@"} +    func_error "See the $PACKAGE documentation for more information." +    func_fatal_error "Fatal configuration error." +} + + +# func_config +# Display the configuration for all the tags in this script. +func_config () +{ +    re_begincf='^# ### BEGIN LIBTOOL' +    re_endcf='^# ### END LIBTOOL' + +    # Default configuration. +    $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" + +    # Now print the configurations for the tags. +    for tagname in $taglist; do +      $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" +    done + +    exit $? +} + +# func_features +# Display the features supported by this script. +func_features () +{ +    $ECHO "host: $host" +    if test "$build_libtool_libs" = yes; then +      $ECHO "enable shared libraries" +    else +      $ECHO "disable shared libraries" +    fi +    if test "$build_old_libs" = yes; then +      $ECHO "enable static libraries" +    else +      $ECHO "disable static libraries" +    fi + +    exit $? +} + +# func_enable_tag tagname +# Verify that TAGNAME is valid, and either flag an error and exit, or +# enable the TAGNAME tag.  We also add TAGNAME to the global $taglist +# variable here. +func_enable_tag () +{ +  # Global variable: +  tagname="$1" + +  re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" +  re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" +  sed_extractcf="/$re_begincf/,/$re_endcf/p" + +  # Validate tagname. +  case $tagname in +    *[!-_A-Za-z0-9,/]*) +      func_fatal_error "invalid tag name: $tagname" +      ;; +  esac + +  # Don't test for the "default" C tag, as we know it's +  # there but not specially marked. +  case $tagname in +    CC) ;; +    *) +      if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then +	taglist="$taglist $tagname" + +	# Evaluate the configuration.  Be careful to quote the path +	# and the sed script, to avoid splitting on whitespace, but +	# also don't use non-portable quotes within backquotes within +	# quotes we have to do it in 2 steps: +	extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` +	eval "$extractedcf"        else -        win32_libid_type="x86 archive static" +	func_error "ignoring unknown tag $tagname"        fi -    fi +      ;; +  esac +} + +# Parse options once, thoroughly.  This comes as soon as possible in +# the script to make things like `libtool --version' happen quickly. +{ + +  # Shorthand for --mode=foo, only valid as the first argument +  case $1 in +  clean|clea|cle|cl) +    shift; set dummy --mode clean ${1+"$@"}; shift      ;; -  *DLL*) -    win32_libid_type="x86 DLL" +  compile|compil|compi|comp|com|co|c) +    shift; set dummy --mode compile ${1+"$@"}; shift      ;; -  *executable*) # but shell scripts are "executable" too... -    case $win32_fileres in -    *MS\ Windows\ PE\ Intel*) -      win32_libid_type="x86 DLL" -      ;; -    esac +  execute|execut|execu|exec|exe|ex|e) +    shift; set dummy --mode execute ${1+"$@"}; shift +    ;; +  finish|finis|fini|fin|fi|f) +    shift; set dummy --mode finish ${1+"$@"}; shift      ;; +  install|instal|insta|inst|ins|in|i) +    shift; set dummy --mode install ${1+"$@"}; shift +    ;; +  link|lin|li|l) +    shift; set dummy --mode link ${1+"$@"}; shift +    ;; +  uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) +    shift; set dummy --mode uninstall ${1+"$@"}; shift +    ;; +  esac + +  # Parse non-mode specific arguments: +  while test "$#" -gt 0; do +    opt="$1" +    shift + +    case $opt in +      --config)		func_config					;; + +      --debug)		preserve_args="$preserve_args $opt" +			func_echo "enabling shell trace mode" +			opt_debug='set -x' +			$opt_debug +			;; + +      -dlopen)		test "$#" -eq 0 && func_missing_arg "$opt" && break +			execute_dlfiles="$execute_dlfiles $1" +			shift +			;; + +      --dry-run | -n)	opt_dry_run=:					;; +      --features)       func_features					;; +      --finish)		mode="finish"					;; + +      --mode)		test "$#" -eq 0 && func_missing_arg "$opt" && break +			case $1 in +			  # Valid mode arguments: +			  clean)	;; +			  compile)	;; +			  execute)	;; +			  finish)	;; +			  install)	;; +			  link)		;; +			  relink)	;; +			  uninstall)	;; + +			  # Catch anything else as an error +			  *) func_error "invalid argument for $opt" +			     exit_cmd=exit +			     break +			     ;; +		        esac + +			mode="$1" +			shift +			;; + +      --preserve-dup-deps) +			opt_duplicate_deps=:				;; + +      --quiet|--silent)	preserve_args="$preserve_args $opt" +			opt_silent=: +			;; + +      --verbose| -v)	preserve_args="$preserve_args $opt" +			opt_silent=false +			;; + +      --tag)		test "$#" -eq 0 && func_missing_arg "$opt" && break +			preserve_args="$preserve_args $opt $1" +			func_enable_tag "$1"	# tagname is set here +			shift +			;; + +      # Separate optargs to long options: +      -dlopen=*|--mode=*|--tag=*) +			func_opt_split "$opt" +			set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"} +			shift +			;; + +      -\?|-h)		func_usage					;; +      --help)		opt_help=:					;; +      --version)	func_version					;; + +      -*)		func_fatal_help "unrecognized option \`$opt'"	;; + +      *)		nonopt="$opt" +			break +			;; +    esac +  done + + +  case $host in +    *cygwin* | *mingw* | *pw32* | *cegcc*) +      # don't eliminate duplications in $postdeps and $predeps +      opt_duplicate_compiler_generated_deps=: +      ;; +    *) +      opt_duplicate_compiler_generated_deps=$opt_duplicate_deps +      ;;    esac -  $echo $win32_libid_type + +  # Having warned about all mis-specified options, bail out if +  # anything was wrong. +  $exit_cmd $EXIT_FAILURE +} + +# func_check_version_match +# Ensure that we are using m4 macros, and libtool script from the same +# release of libtool. +func_check_version_match () +{ +  if test "$package_revision" != "$macro_revision"; then +    if test "$VERSION" != "$macro_version"; then +      if test -z "$macro_version"; then +        cat >&2 <<_LT_EOF +$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from an older release. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF +      else +        cat >&2 <<_LT_EOF +$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF +      fi +    else +      cat >&2 <<_LT_EOF +$progname: Version mismatch error.  This is $PACKAGE $VERSION, revision $package_revision, +$progname: but the definition of this LT_INIT comes from revision $macro_revision. +$progname: You should recreate aclocal.m4 with macros from revision $package_revision +$progname: of $PACKAGE $VERSION and run autoconf again. +_LT_EOF +    fi + +    exit $EXIT_MISMATCH +  fi +} + + +## ----------- ## +##    Main.    ## +## ----------- ## + +$opt_help || { +  # Sanity checks first: +  func_check_version_match + +  if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then +    func_fatal_configuration "not configured to build any kind of library" +  fi + +  test -z "$mode" && func_fatal_error "error: you must specify a MODE." + + +  # Darwin sucks +  eval std_shrext=\"$shrext_cmds\" + + +  # Only execute mode is allowed to have -dlopen flags. +  if test -n "$execute_dlfiles" && test "$mode" != execute; then +    func_error "unrecognized option \`-dlopen'" +    $ECHO "$help" 1>&2 +    exit $EXIT_FAILURE +  fi + +  # Change the help message to a mode-specific one. +  generic_help="$help" +  help="Try \`$progname --help --mode=$mode' for more information." +} + + +# func_lalib_p file +# True iff FILE is a libtool `.la' library or `.lo' object file. +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_lalib_p () +{ +    test -f "$1" && +      $SED -e 4q "$1" 2>/dev/null \ +        | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + +# func_lalib_unsafe_p file +# True iff FILE is a libtool `.la' library or `.lo' object file. +# This function implements the same check as func_lalib_p without +# resorting to external programs.  To this end, it redirects stdin and +# closes it afterwards, without saving the original file descriptor. +# As a safety measure, use it only where a negative result would be +# fatal anyway.  Works if `file' does not exist. +func_lalib_unsafe_p () +{ +    lalib_p=no +    if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then +	for lalib_p_l in 1 2 3 4 +	do +	    read lalib_p_line +	    case "$lalib_p_line" in +		\#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; +	    esac +	done +	exec 0<&5 5<&- +    fi +    test "$lalib_p" = yes +} + +# func_ltwrapper_script_p file +# True iff FILE is a libtool wrapper script +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_script_p () +{ +    func_lalib_p "$1" +} + +# func_ltwrapper_executable_p file +# True iff FILE is a libtool wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_executable_p () +{ +    func_ltwrapper_exec_suffix= +    case $1 in +    *.exe) ;; +    *) func_ltwrapper_exec_suffix=.exe ;; +    esac +    $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 +} + +# func_ltwrapper_scriptname file +# Assumes file is an ltwrapper_executable +# uses $file to determine the appropriate filename for a +# temporary ltwrapper_script. +func_ltwrapper_scriptname () +{ +    func_ltwrapper_scriptname_result="" +    if func_ltwrapper_executable_p "$1"; then +	func_dirname_and_basename "$1" "" "." +	func_stripname '' '.exe' "$func_basename_result" +	func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" +    fi +} + +# func_ltwrapper_p file +# True iff FILE is a libtool wrapper script or wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_p () +{ +    func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" +} + + +# func_execute_cmds commands fail_cmd +# Execute tilde-delimited COMMANDS. +# If FAIL_CMD is given, eval that upon failure. +# FAIL_CMD may read-access the current command in variable CMD! +func_execute_cmds () +{ +    $opt_debug +    save_ifs=$IFS; IFS='~' +    for cmd in $1; do +      IFS=$save_ifs +      eval cmd=\"$cmd\" +      func_show_eval "$cmd" "${2-:}" +    done +    IFS=$save_ifs +} + + +# func_source file +# Source FILE, adding directory component if necessary. +# Note that it is not necessary on cygwin/mingw to append a dot to +# FILE even if both FILE 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. +func_source () +{ +    $opt_debug +    case $1 in +    */* | *\\*)	. "$1" ;; +    *)		. "./$1" ;; +    esac  } @@ -178,40 +1007,34 @@ func_win32_libid () {  # 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 () { +func_infer_tag () +{ +    $opt_debug      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" +        func_quote_for_eval "$arg" +	CC_quoted="$CC_quoted $func_quote_for_eval_result"        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` "*) ;; +      " $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 +	  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 +	      # Double-quote args containing other shell metacharacters. +	      func_quote_for_eval "$arg" +	      CC_quoted="$CC_quoted $func_quote_for_eval_result" +	    done  	    case "$@ " in -	      " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) +	      " $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. @@ -225,235 +1048,59 @@ func_infer_tag () {  	# 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 $EXIT_FAILURE -#        else -#          $echo "$modename: using $tagname tagged configuration" +	  func_echo "unable to infer tagged configuration" +	  func_fatal_error "specify a tag with \`--tag'" +#	else +#	  func_verbose "using $tagname tagged configuration"  	fi  	;;        esac      fi  } -# End of Shell function definitions -##################################### - -# Darwin sucks -eval std_shrext=\"$shrext_cmds\" - -# Parse our command line options once, thoroughly. -while test "$#" -gt 0 -do -  arg="$1" -  shift -  case $arg in -  -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; -  *) optarg= ;; -  esac -  # If the previous option needs an argument, assign it. -  if test -n "$prev"; then -    case $prev in -    execute_dlfiles) -      execute_dlfiles="$execute_dlfiles $arg" -      ;; -    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 $EXIT_FAILURE -	;; -      esac -      case $tagname in -      CC) -	# Don't test for the "default" C tag, as we know, it's there, but -	# not specially marked. -	;; -      *) -	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' < $progpath`" -	else -	  $echo "$progname: ignoring unknown tag $tagname" 1>&2 -	fi -	;; -      esac -      ;; -    *) -      eval "$prev=\$arg" -      ;; -    esac - -    prev= -    prevopt= -    continue -  fi - -  # Have we seen a non-optional argument yet? -  case $arg in -  --help) -    show_help=yes -    ;; - -  --version) -    $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" -    $echo -    $echo "Copyright (C) 2003  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 $EXIT_SUCCESS -    ;; - -  --config) -    ${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" < "$progpath" -    done -    exit $EXIT_SUCCESS -    ;; - -  --debug) -    $echo "$progname: enabling shell trace mode" -    set -x -    preserve_args="$preserve_args $arg" -    ;; - -  --dry-run | -n) -    run=: -    ;; - -  --features) -    $echo "host: $host" +# func_write_libtool_object output_name pic_name nonpic_name +# Create a libtool object file (analogous to a ".la" file), +# but don't create it if we're doing a dry run. +func_write_libtool_object () +{ +    write_libobj=${1}      if test "$build_libtool_libs" = yes; then -      $echo "enable shared libraries" +      write_lobj=\'${2}\'      else -      $echo "disable shared libraries" +      write_lobj=none      fi +      if test "$build_old_libs" = yes; then -      $echo "enable static libraries" +      write_oldobj=\'${3}\'      else -      $echo "disable static libraries" +      write_oldobj=none      fi -    exit $EXIT_SUCCESS -    ;; - -  --finish) mode="finish" ;; - -  --mode) prevopt="--mode" prev=mode ;; -  --mode=*) mode="$optarg" ;; - -  --preserve-dup-deps) duplicate_deps="yes" ;; - -  --quiet | --silent) -    show=: -    preserve_args="$preserve_args $arg" -    ;; - -  --tag) prevopt="--tag" prev=tag ;; -  --tag=*) -    set tag "$optarg" ${1+"$@"} -    shift -    prev=tag -    preserve_args="$preserve_args --tag" -    ;; - -  -dlopen) -    prevopt="-dlopen" -    prev=execute_dlfiles -    ;; - -  -*) -    $echo "$modename: unrecognized option \`$arg'" 1>&2 -    $echo "$help" 1>&2 -    exit $EXIT_FAILURE -    ;; - -  *) -    nonopt="$arg" -    break -    ;; -  esac -done - -if test -n "$prevopt"; then -  $echo "$modename: option \`$prevopt' requires an argument" 1>&2 -  $echo "$help" 1>&2 -  exit $EXIT_FAILURE -fi -# 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. -exec_cmd= - -if test -z "$show_help"; then - -  # 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 -    case $nonopt in -    *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*) -      mode=link -      for arg -      do -	case $arg in -	-c) -	   mode=compile -	   break -	   ;; -	esac -      done -      ;; -    *db | *dbx | *strace | *truss) -      mode=execute -      ;; -    *install*|cp|mv) -      mode=install -      ;; -    *rm) -      mode=uninstall -      ;; -    *) -      # If we have no mode, but dlfiles were specified, then do execute mode. -      test -n "$execute_dlfiles" && mode=execute +    $opt_dry_run || { +      cat >${write_libobj}T <<EOF +# $write_libobj - a libtool object file +# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# +# Please DO NOT delete this file! +# It is necessary for linking the library. -      # Just use the default operation mode. -      if test -z "$mode"; then -	if test -n "$nonopt"; then -	  $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 -	else -	  $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 -	fi -      fi -      ;; -    esac -  fi +# Name of the PIC object. +pic_object=$write_lobj -  # Only execute mode is allowed to have -dlopen flags. -  if test -n "$execute_dlfiles" && test "$mode" != execute; then -    $echo "$modename: unrecognized option \`-dlopen'" 1>&2 -    $echo "$help" 1>&2 -    exit $EXIT_FAILURE -  fi +# Name of the non-PIC object +non_pic_object=$write_oldobj -  # Change the help message to a mode-specific one. -  generic_help="$help" -  help="Try \`$modename --help --mode=$mode' for more information." +EOF +      $MV "${write_libobj}T" "${write_libobj}" +    } +} -  # These modes are in order of execution frequency so that they run quickly. -  case $mode in -  # libtool compile mode -  compile) -    modename="$modename: compile" +# func_mode_compile arg... +func_mode_compile () +{ +    $opt_debug      # Get the compilation command and the source file.      base_compile=      srcfile="$nonopt"  #  always keep a non-empty value in "srcfile" @@ -462,10 +1109,11 @@ if test -z "$show_help"; then      arg_mode=normal      libobj=      later= +    pie_flag=      for arg      do -      case "$arg_mode" in +      case $arg_mode in        arg  )  	# do not "continue".  Instead, add this to base_compile  	lastarg="$arg" @@ -482,15 +1130,18 @@ if test -z "$show_help"; then  	# Accept any command-line options.  	case $arg in  	-o) -	  if test -n "$libobj" ; then -	    $echo "$modename: you cannot specify \`-o' more than once" 1>&2 -	    exit $EXIT_FAILURE -	  fi +	  test -n "$libobj" && \ +	    func_fatal_error "you cannot specify \`-o' more than once"  	  arg_mode=target  	  continue  	  ;; -	-static | -prefer-pic | -prefer-non-pic) +	-pie | -fpie | -fPIE) +          pie_flag="$pie_flag $arg" +	  continue +	  ;; + +	-shared | -static | -prefer-pic | -prefer-non-pic)  	  later="$later $arg"  	  continue  	  ;; @@ -506,31 +1157,25 @@ if test -z "$show_help"; then  	  ;;            #  replaced later.  I would guess that would be a bug.  	-Wc,*) -	  args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` +	  func_stripname '-Wc,' '' "$arg" +	  args=$func_stripname_result  	  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. -	    # Many Bourne shells cannot handle close brackets correctly -	    # in scan sets, so we specify it separately. -	    case $arg in -	      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") -	      arg="\"$arg\"" -	      ;; -	    esac -	    lastarg="$lastarg $arg" +	    func_quote_for_eval "$arg" +	    lastarg="$lastarg $func_quote_for_eval_result"  	  done  	  IFS="$save_ifs" -	  lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` +	  func_stripname ' ' '' "$lastarg" +	  lastarg=$func_stripname_result  	  # Add the arguments to base_compile.  	  base_compile="$base_compile $lastarg"  	  continue  	  ;; -	* ) +	*)  	  # Accept the current argument as the source file.  	  # The previous "srcfile" becomes the current argument.  	  # @@ -542,61 +1187,42 @@ if test -z "$show_help"; then        esac    #  case $arg_mode        # Aesthetically quote the previous argument. -      lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` - -      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. -      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") -	lastarg="\"$lastarg\"" -	;; -      esac - -      base_compile="$base_compile $lastarg" +      func_quote_for_eval "$lastarg" +      base_compile="$base_compile $func_quote_for_eval_result"      done # for arg      case $arg_mode in      arg) -      $echo "$modename: you must specify an argument for -Xcompile" -      exit $EXIT_FAILURE +      func_fatal_error "you must specify an argument for -Xcompile"        ;;      target) -      $echo "$modename: you must specify a target with \`-o'" 1>&2 -      exit $EXIT_FAILURE +      func_fatal_error "you must specify a target with \`-o'"        ;;      *)        # Get the name of the library object. -      [ -z "$libobj" ] && libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` +      test -z "$libobj" && { +	func_basename "$srcfile" +	libobj="$func_basename_result" +      }        ;;      esac      # Recognize several different file suffixes.      # If the user specifies -o file.o, it is replaced with file.lo -    xform='[cCFSifmso]'      case $libobj in -    *.ada) xform=ada ;; -    *.adb) xform=adb ;; -    *.ads) xform=ads ;; -    *.asm) xform=asm ;; -    *.c++) xform=c++ ;; -    *.cc) xform=cc ;; -    *.ii) xform=ii ;; -    *.class) xform=class ;; -    *.cpp) xform=cpp ;; -    *.cxx) xform=cxx ;; -    *.f90) xform=f90 ;; -    *.for) xform=for ;; -    *.java) xform=java ;; +    *.[cCFSifmso] | \ +    *.ada | *.adb | *.ads | *.asm | \ +    *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ +    *.[fF][09]? | *.for | *.java | *.obj | *.sx) +      func_xform "$libobj" +      libobj=$func_xform_result +      ;;      esac -    libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` -      case $libobj in -    *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; +    *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;      *) -      $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 -      exit $EXIT_FAILURE +      func_fatal_error "cannot determine name of library object from \`$libobj'"        ;;      esac @@ -604,7 +1230,15 @@ if test -z "$show_help"; then      for arg in $later; do        case $arg in +      -shared) +	test "$build_libtool_libs" != yes && \ +	  func_fatal_configuration "can not build a shared library" +	build_old_libs=no +	continue +	;; +        -static) +	build_libtool_libs=no  	build_old_libs=yes  	continue  	;; @@ -621,20 +1255,17 @@ if test -z "$show_help"; then        esac      done -    objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` -    xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` -    if test "X$xdir" = "X$obj"; then -      xdir= -    else -      xdir=$xdir/ -    fi +    func_quote_for_eval "$libobj" +    test "X$libobj" != "X$func_quote_for_eval_result" \ +      && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"'	 &()|`$[]' \ +      && func_warning "libobj name \`$libobj' may not contain shell special characters." +    func_dirname_and_basename "$obj" "/" "" +    objname="$func_basename_result" +    xdir="$func_dirname_result"      lobj=${xdir}$objdir/$objname -    if test -z "$base_compile"; then -      $echo "$modename: you must specify a compilation command" 1>&2 -      $echo "$help" 1>&2 -      exit $EXIT_FAILURE -    fi +    test -z "$base_compile" && \ +      func_fatal_help "you must specify a compilation command"      # Delete any leftover library objects.      if test "$build_old_libs" = yes; then @@ -643,12 +1274,9 @@ if test -z "$show_help"; then        removelist="$lobj $libobj ${libobj}T"      fi -    $run $rm $removelist -    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 -    cygwin* | mingw* | pw32* | os2*) +    cygwin* | mingw* | pw32* | os2* | cegcc*)        pic_mode=default        ;;      esac @@ -660,10 +1288,8 @@ if test -z "$show_help"; then      # Calculate the filename of the output object if compiler does      # not support -o with -c      if test "$compiler_c_o" = no; then -      output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} +      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 $EXIT_FAILURE" 1 2 15      else        output_obj=        need_locks=no @@ -673,13 +1299,13 @@ if test -z "$show_help"; then      # 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 "$progpath" "$lockfile" 2>/dev/null; do -	$show "Waiting for $lockfile to be removed" +      until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do +	func_echo "Waiting for $lockfile to be removed"  	sleep 2        done      elif test "$need_locks" = warn; then        if test -f "$lockfile"; then -	$echo "\ +	$ECHO "\  *** ERROR, $lockfile exists and contains:  `cat $lockfile 2>/dev/null` @@ -690,29 +1316,22 @@ repeat this compilation, it may succeed, by chance, but you had better  avoid parallel builds (make -j) in this platform, or get a better  compiler." -	$run $rm $removelist +	$opt_dry_run || $RM $removelist  	exit $EXIT_FAILURE        fi -      $echo $srcfile > "$lockfile" +      removelist="$removelist $output_obj" +      $ECHO "$srcfile" > "$lockfile"      fi +    $opt_dry_run || $RM $removelist +    removelist="$removelist $lockfile" +    trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 +      if test -n "$fix_srcfile_path"; then        eval srcfile=\"$fix_srcfile_path\"      fi - -    $run $rm "$libobj" "${libobj}T" - -    # Create a libtool object file (analogous to a ".la" file), -    # but don't create it if we're doing a dry run. -    test -z "$run" && cat > ${libobj}T <<EOF -# $libobj - a libtool object file -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# Name of the PIC object. -EOF +    func_quote_for_eval "$srcfile" +    qsrcfile=$func_quote_for_eval_result      # Only build a PIC object if we are building libtool libraries.      if test "$build_libtool_libs" = yes; then @@ -720,38 +1339,25 @@ EOF        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 -	fi -      fi +      func_mkdir_p "$xdir$objdir"        if test -z "$output_obj"; then  	# Place PIC objects in $objdir  	command="$command -o $lobj"        fi -      $run $rm "$lobj" "$output_obj" - -      $show "$command" -      if $run eval "$command"; then : -      else -	test -n "$output_obj" && $run $rm $removelist -	exit $EXIT_FAILURE -      fi +      func_show_eval_locale "$command"	\ +          'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'        if test "$need_locks" = warn &&  	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then -	$echo "\ +	$ECHO "\  *** ERROR, $lockfile contains:  `cat $lockfile 2>/dev/null` @@ -765,47 +1371,29 @@ repeat this compilation, it may succeed, by chance, but you had better  avoid parallel builds (make -j) in this platform, or get a better  compiler." -	$run $rm $removelist +	$opt_dry_run || $RM $removelist  	exit $EXIT_FAILURE        fi        # Just move the object if needed, then go on to compile the next one        if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then -	$show "$mv $output_obj $lobj" -	if $run $mv $output_obj $lobj; then : -	else -	  error=$? -	  $run $rm $removelist -	  exit $error -	fi +	func_show_eval '$MV "$output_obj" "$lobj"' \ +	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'        fi -      # Append the name of the PIC object to the libtool object file. -      test -z "$run" && cat >> ${libobj}T <<EOF -pic_object='$objdir/$objname' - -EOF -        # Allow error messages only from the first compilation.        if test "$suppress_opt" = yes; then -        suppress_output=' >/dev/null 2>&1' +	suppress_output=' >/dev/null 2>&1'        fi -    else -      # No PIC object so indicate it doesn't exist in the libtool -      # object file. -      test -z "$run" && cat >> ${libobj}T <<EOF -pic_object=none - -EOF      fi      # Only build a position-dependent object if we build old libraries.      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$pie_flag"        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" @@ -813,17 +1401,12 @@ EOF        # Suppress compiler output if we already did a PIC compilation.        command="$command$suppress_output" -      $run $rm "$obj" "$output_obj" -      $show "$command" -      if $run eval "$command"; then : -      else -	$run $rm $removelist -	exit $EXIT_FAILURE -      fi +      func_show_eval_locale "$command" \ +        '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'        if test "$need_locks" = warn &&  	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then -	$echo "\ +	$ECHO "\  *** ERROR, $lockfile contains:  `cat $lockfile 2>/dev/null` @@ -837,53 +1420,2620 @@ repeat this compilation, it may succeed, by chance, but you had better  avoid parallel builds (make -j) in this platform, or get a better  compiler." -	$run $rm $removelist +	$opt_dry_run || $RM $removelist  	exit $EXIT_FAILURE        fi        # Just move the object if needed        if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then -	$show "$mv $output_obj $obj" -	if $run $mv $output_obj $obj; then : +	func_show_eval '$MV "$output_obj" "$obj"' \ +	  'error=$?; $opt_dry_run || $RM $removelist; exit $error' +      fi +    fi + +    $opt_dry_run || { +      func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" + +      # Unlock the critical section if it was locked +      if test "$need_locks" != no; then +	removelist=$lockfile +        $RM "$lockfile" +      fi +    } + +    exit $EXIT_SUCCESS +} + +$opt_help || { +test "$mode" = compile && func_mode_compile ${1+"$@"} +} + +func_mode_help () +{ +    # We need to display help for each of the modes. +    case $mode in +      "") +        # Generic help is extracted from the usage comments +        # at the start of this file. +        func_help +        ;; + +      clean) +        $ECHO \ +"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." +        ;; + +      compile) +      $ECHO \ +"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + +  -o OUTPUT-FILE    set the output file name to OUTPUT-FILE +  -no-suppress      do not suppress compiler output for multiple passes +  -prefer-pic       try to building PIC objects only +  -prefer-non-pic   try to building non-PIC objects only +  -shared           do not build a \`.o' file suitable for static linking +  -static           only build a \`.o' file suitable for static linking + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." +        ;; + +      execute) +        $ECHO \ +"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + +  -dlopen FILE      add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." +        ;; + +      finish) +        $ECHO \ +"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges.  Use +the \`--dry-run' option if you just want to see what would be executed." +        ;; + +      install) +        $ECHO \ +"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command.  The first component should be +either the \`install' or \`cp' program. + +The following components of INSTALL-COMMAND are treated specially: + +  -inst-prefix PREFIX-DIR  Use PREFIX-DIR as a staging area for installation + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." +        ;; + +      link) +        $ECHO \ +"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + +  -all-static       do not do any dynamic linking at all +  -avoid-version    do not add a version suffix if possible +  -dlopen FILE      \`-dlpreopen' FILE if it cannot be dlopened at runtime +  -dlpreopen FILE   link in FILE and add its symbols to lt_preloaded_symbols +  -export-dynamic   allow symbols from OUTPUT-FILE to be resolved with dlsym(3) +  -export-symbols SYMFILE +                    try to export only the symbols listed in SYMFILE +  -export-symbols-regex REGEX +                    try to export only the symbols matching REGEX +  -LLIBDIR          search LIBDIR for required installed libraries +  -lNAME            OUTPUT-FILE requires the installed library libNAME +  -module           build a library that can dlopened +  -no-fast-install  disable the fast-install mode +  -no-install       link a not-installable executable +  -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 +  -shared           only do dynamic linking of libtool libraries +  -shrext SUFFIX    override the standard shared library file extension +  -static           do not do any dynamic linking of uninstalled libtool libraries +  -static-libtool-libs +                    do not do any dynamic linking of libtool libraries +  -version-info CURRENT[:REVISION[:AGE]] +                    specify library version info [each variable defaults to 0] +  -weak LIBNAME     declare that the target provides the LIBNAME interface + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename.  Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." +        ;; + +      uninstall) +        $ECHO \ +"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." +        ;; + +      *) +        func_fatal_help "invalid operation mode \`$mode'" +        ;; +    esac + +    $ECHO +    $ECHO "Try \`$progname --help' for more information about other modes." + +    exit $? +} + +  # Now that we've collected a possible --mode arg, show help if necessary +  $opt_help && func_mode_help + + +# func_mode_execute arg... +func_mode_execute () +{ +    $opt_debug +    # The first argument is the command name. +    cmd="$nonopt" +    test -z "$cmd" && \ +      func_fatal_help "you must specify a COMMAND" + +    # Handle -dlopen flags immediately. +    for file in $execute_dlfiles; do +      test -f "$file" \ +	|| func_fatal_help "\`$file' is not a file" + +      dir= +      case $file in +      *.la) +	# Check to see that this really is a libtool archive. +	func_lalib_unsafe_p "$file" \ +	  || func_fatal_help "\`$lib' is not a valid libtool archive" + +	# Read the libtool library. +	dlname= +	library_names= +	func_source "$file" + +	# Skip this library if it cannot be dlopened. +	if test -z "$dlname"; then +	  # Warn if it was a shared library. +	  test -n "$library_names" && \ +	    func_warning "\`$file' was not linked with \`-export-dynamic'" +	  continue +	fi + +	func_dirname "$file" "" "." +	dir="$func_dirname_result" + +	if test -f "$dir/$objdir/$dlname"; then +	  dir="$dir/$objdir"  	else -	  error=$? -	  $run $rm $removelist -	  exit $error +	  if test ! -f "$dir/$dlname"; then +	    func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" +	  fi  	fi +	;; + +      *.lo) +	# Just add the directory containing the .lo file. +	func_dirname "$file" "" "." +	dir="$func_dirname_result" +	;; + +      *) +	func_warning "\`-dlopen' is ignored for non-libtool libraries and objects" +	continue +	;; +      esac + +      # Get the absolute pathname. +      absdir=`cd "$dir" && pwd` +      test -n "$absdir" && dir="$absdir" + +      # Now add the directory to shlibpath_var. +      if eval "test -z \"\$$shlibpath_var\""; then +	eval "$shlibpath_var=\"\$dir\"" +      else +	eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""        fi +    done -      # Append the name of the non-PIC object the libtool object file. -      # Only append if the libtool object file exists. -      test -z "$run" && cat >> ${libobj}T <<EOF -# Name of the non-PIC object. -non_pic_object='$objname' +    # This variable tells wrapper scripts just to set shlibpath_var +    # rather than running their programs. +    libtool_execute_magic="$magic" -EOF +    # Check if any of the arguments is a wrapper script. +    args= +    for file +    do +      case $file in +      -*) ;; +      *) +	# Do a test to see if this is really a libtool program. +	if func_ltwrapper_script_p "$file"; then +	  func_source "$file" +	  # Transform arg to wrapped name. +	  file="$progdir/$program" +	elif func_ltwrapper_executable_p "$file"; then +	  func_ltwrapper_scriptname "$file" +	  func_source "$func_ltwrapper_scriptname_result" +	  # Transform arg to wrapped name. +	  file="$progdir/$program" +	fi +	;; +      esac +      # Quote arguments (to preserve shell metacharacters). +      func_quote_for_eval "$file" +      args="$args $func_quote_for_eval_result" +    done + +    if test "X$opt_dry_run" = Xfalse; then +      if test -n "$shlibpath_var"; then +	# Export the shlibpath_var. +	eval "export $shlibpath_var" +      fi + +      # Restore saved environment variables +      for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +      do +	eval "if test \"\${save_$lt_var+set}\" = set; then +                $lt_var=\$save_$lt_var; export $lt_var +	      else +		$lt_unset $lt_var +	      fi" +      done + +      # Now prepare to actually exec the command. +      exec_cmd="\$cmd$args"      else -      # Append the name of the non-PIC object the libtool object file. -      # Only append if the libtool object file exists. -      test -z "$run" && cat >> ${libobj}T <<EOF -# Name of the non-PIC object. -non_pic_object=none +      # Display what would be done. +      if test -n "$shlibpath_var"; then +	eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" +	$ECHO "export $shlibpath_var" +      fi +      $ECHO "$cmd$args" +      exit $EXIT_SUCCESS +    fi +} -EOF +test "$mode" = execute && func_mode_execute ${1+"$@"} + + +# func_mode_finish arg... +func_mode_finish () +{ +    $opt_debug +    libdirs="$nonopt" +    admincmds= + +    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then +      for dir +      do +	libdirs="$libdirs $dir" +      done + +      for libdir in $libdirs; do +	if test -n "$finish_cmds"; then +	  # Do each command in the finish commands. +	  func_execute_cmds "$finish_cmds" 'admincmds="$admincmds +'"$cmd"'"' +	fi +	if test -n "$finish_eval"; then +	  # Do the single finish_eval. +	  eval cmds=\"$finish_eval\" +	  $opt_dry_run || eval "$cmds" || admincmds="$admincmds +       $cmds" +	fi +      done      fi -    $run $mv "${libobj}T" "${libobj}" +    # Exit here if they wanted silent mode. +    $opt_silent && exit $EXIT_SUCCESS -    # Unlock the critical section if it was locked -    if test "$need_locks" != no; then -      $run $rm "$lockfile" +    $ECHO "X----------------------------------------------------------------------" | $Xsed +    $ECHO "Libraries have been installed in:" +    for libdir in $libdirs; do +      $ECHO "   $libdir" +    done +    $ECHO +    $ECHO "If you ever happen to want to link against installed libraries" +    $ECHO "in a given directory, LIBDIR, you must either use libtool, and" +    $ECHO "specify the full pathname of the library, or use the \`-LLIBDIR'" +    $ECHO "flag during linking and do at least one of the following:" +    if test -n "$shlibpath_var"; then +      $ECHO "   - add LIBDIR to the \`$shlibpath_var' environment variable" +      $ECHO "     during execution" +    fi +    if test -n "$runpath_var"; then +      $ECHO "   - add LIBDIR to the \`$runpath_var' environment variable" +      $ECHO "     during linking"      fi +    if test -n "$hardcode_libdir_flag_spec"; then +      libdir=LIBDIR +      eval flag=\"$hardcode_libdir_flag_spec\" + +      $ECHO "   - use the \`$flag' linker flag" +    fi +    if test -n "$admincmds"; then +      $ECHO "   - have your system administrator run these commands:$admincmds" +    fi +    if test -f /etc/ld.so.conf; then +      $ECHO "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" +    fi +    $ECHO +    $ECHO "See any operating system documentation about shared libraries for" +    case $host in +      solaris2.[6789]|solaris2.1[0-9]) +        $ECHO "more information, such as the ld(1), crle(1) and ld.so(8) manual" +	$ECHO "pages." +	;; +      *) +        $ECHO "more information, such as the ld(1) and ld.so(8) manual pages." +        ;; +    esac +    $ECHO "X----------------------------------------------------------------------" | $Xsed      exit $EXIT_SUCCESS +} + +test "$mode" = finish && func_mode_finish ${1+"$@"} + + +# func_mode_install arg... +func_mode_install () +{ +    $opt_debug +    # There may be an optional sh(1) argument at the beginning of +    # 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" | $GREP shtool >/dev/null; then +      # Aesthetically quote it. +      func_quote_for_eval "$nonopt" +      install_prog="$func_quote_for_eval_result " +      arg=$1 +      shift +    else +      install_prog= +      arg=$nonopt +    fi + +    # The real first argument should be the name of the installation program. +    # Aesthetically quote it. +    func_quote_for_eval "$arg" +    install_prog="$install_prog$func_quote_for_eval_result" + +    # We need to accept at least all the BSD install flags. +    dest= +    files= +    opts= +    prev= +    install_type= +    isdir=no +    stripme= +    for arg +    do +      if test -n "$dest"; then +	files="$files $dest" +	dest=$arg +	continue +      fi + +      case $arg in +      -d) isdir=yes ;; +      -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 +	  continue +	fi +	;; +      esac + +      # Aesthetically quote the argument. +      func_quote_for_eval "$arg" +      install_prog="$install_prog $func_quote_for_eval_result" +    done + +    test -z "$install_prog" && \ +      func_fatal_help "you must specify an install program" + +    test -n "$prev" && \ +      func_fatal_help "the \`$prev' option requires an argument" + +    if test -z "$files"; then +      if test -z "$dest"; then +	func_fatal_help "no file or destination specified" +      else +	func_fatal_help "you must specify a destination" +      fi +    fi + +    # Strip any trailing slash from the destination. +    func_stripname '' '/' "$dest" +    dest=$func_stripname_result + +    # Check to see that the destination is a directory. +    test -d "$dest" && isdir=yes +    if test "$isdir" = yes; then +      destdir="$dest" +      destname= +    else +      func_dirname_and_basename "$dest" "" "." +      destdir="$func_dirname_result" +      destname="$func_basename_result" + +      # Not a directory, so check to see that there is only one file specified. +      set dummy $files; shift +      test "$#" -gt 1 && \ +	func_fatal_help "\`$dest' is not a directory" +    fi +    case $destdir in +    [\\/]* | [A-Za-z]:[\\/]*) ;; +    *) +      for file in $files; do +	case $file in +	*.lo) ;; +	*) +	  func_fatal_help "\`$destdir' must be an absolute directory name" +	  ;; +	esac +      done +      ;; +    esac + +    # This variable tells wrapper scripts just to set variables rather +    # than running their programs. +    libtool_install_magic="$magic" + +    staticlibs= +    future_libdirs= +    current_libdirs= +    for file in $files; do + +      # Do each installation. +      case $file in +      *.$libext) +	# Do the static libraries later. +	staticlibs="$staticlibs $file" +	;; + +      *.la) +	# Check to see that this really is a libtool archive. +	func_lalib_unsafe_p "$file" \ +	  || func_fatal_help "\`$file' is not a valid libtool archive" + +	library_names= +	old_library= +	relink_command= +	func_source "$file" + +	# Add the libdir to current_libdirs if it is the destination. +	if test "X$destdir" = "X$libdir"; then +	  case "$current_libdirs " in +	  *" $libdir "*) ;; +	  *) current_libdirs="$current_libdirs $libdir" ;; +	  esac +	else +	  # Note the libdir as a future libdir. +	  case "$future_libdirs " in +	  *" $libdir "*) ;; +	  *) future_libdirs="$future_libdirs $libdir" ;; +	  esac +	fi + +	func_dirname "$file" "/" "" +	dir="$func_dirname_result" +	dir="$dir$objdir" + +	if test -n "$relink_command"; then +	  # Determine the prefix the user has applied to our future dir. +	  inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -e "s%$libdir\$%%"` + +	  # Don't allow the user to place us outside of our expected +	  # location b/c this prevents finding dependent libraries that +	  # are installed to the same prefix. +	  # 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. +	  test "$inst_prefix_dir" = "$destdir" && \ +	    func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" + +	  if test -n "$inst_prefix_dir"; then +	    # Stick the inst_prefix_dir data into the link command. +	    relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` +	  else +	    relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%%"` +	  fi + +	  func_warning "relinking \`$file'" +	  func_show_eval "$relink_command" \ +	    'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"' +	fi + +	# See the names of the shared library. +	set dummy $library_names; shift +	if test -n "$1"; then +	  realname="$1" +	  shift + +	  srcname="$realname" +	  test -n "$relink_command" && srcname="$realname"T + +	  # Install the shared library and build the symlinks. +	  func_show_eval "$install_prog $dir/$srcname $destdir/$realname" \ +	      'exit $?' +	  tstripme="$stripme" +	  case $host_os in +	  cygwin* | mingw* | pw32* | cegcc*) +	    case $realname in +	    *.dll.a) +	      tstripme="" +	      ;; +	    esac +	    ;; +	  esac +	  if test -n "$tstripme" && test -n "$striplib"; then +	    func_show_eval "$striplib $destdir/$realname" 'exit $?' +	  fi + +	  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 +	      test "$linkname" != "$realname" \ +		&& func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" +	    done +	  fi + +	  # Do each command in the postinstall commands. +	  lib="$destdir/$realname" +	  func_execute_cmds "$postinstall_cmds" 'exit $?' +	fi + +	# Install the pseudo-library for information purposes. +	func_basename "$file" +	name="$func_basename_result" +	instname="$dir/$name"i +	func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' + +	# Maybe install the static library, too. +	test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" +	;; + +      *.lo) +	# Install (i.e. copy) a libtool object. + +	# Figure out destination file name, if it wasn't already specified. +	if test -n "$destname"; then +	  destfile="$destdir/$destname" +	else +	  func_basename "$file" +	  destfile="$func_basename_result" +	  destfile="$destdir/$destfile" +	fi + +	# Deduce the name of the destination old-style object file. +	case $destfile in +	*.lo) +	  func_lo2o "$destfile" +	  staticdest=$func_lo2o_result +	  ;; +	*.$objext) +	  staticdest="$destfile" +	  destfile= +	  ;; +	*) +	  func_fatal_help "cannot copy a libtool object to \`$destfile'" +	  ;; +	esac + +	# Install the libtool object if requested. +	test -n "$destfile" && \ +	  func_show_eval "$install_prog $file $destfile" 'exit $?' + +	# Install the old object if enabled. +	if test "$build_old_libs" = yes; then +	  # Deduce the name of the old-style object file. +	  func_lo2o "$file" +	  staticobj=$func_lo2o_result +	  func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' +	fi +	exit $EXIT_SUCCESS +	;; + +      *) +	# Figure out destination file name, if it wasn't already specified. +	if test -n "$destname"; then +	  destfile="$destdir/$destname" +	else +	  func_basename "$file" +	  destfile="$func_basename_result" +	  destfile="$destdir/$destfile" +	fi + +	# If the file is missing, and there is a .exe on the end, strip it +	# because it is most likely a libtool script we actually want to +	# install +	stripped_ext="" +	case $file in +	  *.exe) +	    if test ! -f "$file"; then +	      func_stripname '' '.exe' "$file" +	      file=$func_stripname_result +	      stripped_ext=".exe" +	    fi +	    ;; +	esac + +	# Do a test to see if this is really a libtool program. +	case $host in +	*cygwin* | *mingw*) +	    if func_ltwrapper_executable_p "$file"; then +	      func_ltwrapper_scriptname "$file" +	      wrapper=$func_ltwrapper_scriptname_result +	    else +	      func_stripname '' '.exe' "$file" +	      wrapper=$func_stripname_result +	    fi +	    ;; +	*) +	    wrapper=$file +	    ;; +	esac +	if func_ltwrapper_script_p "$wrapper"; then +	  notinst_deplibs= +	  relink_command= + +	  func_source "$wrapper" + +	  # Check the variables that should have been set. +	  test -z "$generated_by_libtool_version" && \ +	    func_fatal_error "invalid libtool wrapper script \`$wrapper'" + +	  finalize=yes +	  for lib in $notinst_deplibs; do +	    # Check to see that each library is installed. +	    libdir= +	    if test -f "$lib"; then +	      func_source "$lib" +	    fi +	    libfile="$libdir/"`$ECHO "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test +	    if test -n "$libdir" && test ! -f "$libfile"; then +	      func_warning "\`$lib' has not been installed in \`$libdir'" +	      finalize=no +	    fi +	  done + +	  relink_command= +	  func_source "$wrapper" + +	  outputname= +	  if test "$fast_install" = no && test -n "$relink_command"; then +	    $opt_dry_run || { +	      if test "$finalize" = yes; then +	        tmpdir=`func_mktempdir` +		func_basename "$file$stripped_ext" +		file="$func_basename_result" +	        outputname="$tmpdir/$file" +	        # Replace the output file specification. +	        relink_command=`$ECHO "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` + +	        $opt_silent || { +	          func_quote_for_expand "$relink_command" +		  eval "func_echo $func_quote_for_expand_result" +	        } +	        if eval "$relink_command"; then : +	          else +		  func_error "error: relink \`$file' with the above command before installing it" +		  $opt_dry_run || ${RM}r "$tmpdir" +		  continue +	        fi +	        file="$outputname" +	      else +	        func_warning "cannot relink \`$file'" +	      fi +	    } +	  else +	    # Install the binary that we compiled earlier. +	    file=`$ECHO "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` +	  fi +	fi + +	# remove .exe since cygwin /usr/bin/install will append another +	# one anyway +	case $install_prog,$host in +	*/usr/bin/install*,*cygwin*) +	  case $file:$destfile in +	  *.exe:*.exe) +	    # this is ok +	    ;; +	  *.exe:*) +	    destfile=$destfile.exe +	    ;; +	  *:*.exe) +	    func_stripname '' '.exe' "$destfile" +	    destfile=$func_stripname_result +	    ;; +	  esac +	  ;; +	esac +	func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' +	$opt_dry_run || if test -n "$outputname"; then +	  ${RM}r "$tmpdir" +	fi +	;; +      esac +    done + +    for file in $staticlibs; do +      func_basename "$file" +      name="$func_basename_result" + +      # Set up the ranlib parameters. +      oldlib="$destdir/$name" + +      func_show_eval "$install_prog \$file \$oldlib" 'exit $?' + +      if test -n "$stripme" && test -n "$old_striplib"; then +	func_show_eval "$old_striplib $oldlib" 'exit $?' +      fi + +      # Do each command in the postinstall commands. +      func_execute_cmds "$old_postinstall_cmds" 'exit $?' +    done + +    test -n "$future_libdirs" && \ +      func_warning "remember to run \`$progname --finish$future_libdirs'" + +    if test -n "$current_libdirs"; then +      # Maybe just do a dry run. +      $opt_dry_run && current_libdirs=" -n$current_libdirs" +      exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' +    else +      exit $EXIT_SUCCESS +    fi +} + +test "$mode" = install && func_mode_install ${1+"$@"} + + +# func_generate_dlsyms outputname originator pic_p +# Extract symbols from dlprefiles and create ${outputname}S.o with +# a dlpreopen symbol table. +func_generate_dlsyms () +{ +    $opt_debug +    my_outputname="$1" +    my_originator="$2" +    my_pic_p="${3-no}" +    my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` +    my_dlsyms= + +    if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then +      if test -n "$NM" && test -n "$global_symbol_pipe"; then +	my_dlsyms="${my_outputname}S.c" +      else +	func_error "not configured to extract global symbols from dlpreopened files" +      fi +    fi + +    if test -n "$my_dlsyms"; then +      case $my_dlsyms in +      "") ;; +      *.c) +	# Discover the nlist of each of the dlfiles. +	nlist="$output_objdir/${my_outputname}.nm" + +	func_show_eval "$RM $nlist ${nlist}S ${nlist}T" + +	# Parse the name list into a source file. +	func_verbose "creating $output_objdir/$my_dlsyms" + +	$opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ +/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +/* External symbol declarations for the compiler. */\ +" + +	if test "$dlself" = yes; then +	  func_verbose "generating symbol list for \`$output'" + +	  $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" + +	  # Add our own program objects to the symbol list. +	  progfiles=`$ECHO "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` +	  for progfile in $progfiles; do +	    func_verbose "extracting global C symbols from \`$progfile'" +	    $opt_dry_run || eval "$NM $progfile | $global_symbol_pipe >> '$nlist'" +	  done + +	  if test -n "$exclude_expsyms"; then +	    $opt_dry_run || { +	      eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' +	      eval '$MV "$nlist"T "$nlist"' +	    } +	  fi + +	  if test -n "$export_symbols_regex"; then +	    $opt_dry_run || { +	      eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' +	      eval '$MV "$nlist"T "$nlist"' +	    } +	  fi + +	  # Prepare the list of exported symbols +	  if test -z "$export_symbols"; then +	    export_symbols="$output_objdir/$outputname.exp" +	    $opt_dry_run || { +	      $RM $export_symbols +	      eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' +	      case $host in +	      *cygwin* | *mingw* | *cegcc* ) +                eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' +                eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' +	        ;; +	      esac +	    } +	  else +	    $opt_dry_run || { +	      eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' +	      eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' +	      eval '$MV "$nlist"T "$nlist"' +	      case $host in +	        *cygwin | *mingw* | *cegcc* ) +	          eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' +	          eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' +	          ;; +	      esac +	    } +	  fi +	fi + +	for dlprefile in $dlprefiles; do +	  func_verbose "extracting global C symbols from \`$dlprefile'" +	  func_basename "$dlprefile" +	  name="$func_basename_result" +	  $opt_dry_run || { +	    eval '$ECHO ": $name " >> "$nlist"' +	    eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'" +	  } +	done + +	$opt_dry_run || { +	  # Make sure we have at least an empty file. +	  test -f "$nlist" || : > "$nlist" + +	  if test -n "$exclude_expsyms"; then +	    $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T +	    $MV "$nlist"T "$nlist" +	  fi + +	  # Try sorting and uniquifying the output. +	  if $GREP -v "^: " < "$nlist" | +	      if sort -k 3 </dev/null >/dev/null 2>&1; then +		sort -k 3 +	      else +		sort +2 +	      fi | +	      uniq > "$nlist"S; then +	    : +	  else +	    $GREP -v "^: " < "$nlist" > "$nlist"S +	  fi + +	  if test -f "$nlist"S; then +	    eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' +	  else +	    $ECHO '/* NONE */' >> "$output_objdir/$my_dlsyms" +	  fi + +	  $ECHO >> "$output_objdir/$my_dlsyms" "\ + +/* The mapping between symbol names and symbols.  */ +typedef struct { +  const char *name; +  void *address; +} lt_dlsymlist; +" +	  case $host in +	  *cygwin* | *mingw* | *cegcc* ) +	    $ECHO >> "$output_objdir/$my_dlsyms" "\ +/* DATA imports from DLLs on WIN32 con't be const, because +   runtime relocations are performed -- see ld's documentation +   on pseudo-relocs.  */" +	    lt_dlsym_const= ;; +	  *osf5*) +	    echo >> "$output_objdir/$my_dlsyms" "\ +/* This system does not cope well with relocations in const data */" +	    lt_dlsym_const= ;; +	  *) +	    lt_dlsym_const=const ;; +	  esac + +	  $ECHO >> "$output_objdir/$my_dlsyms" "\ +extern $lt_dlsym_const lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[]; +$lt_dlsym_const lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[] = +{\ +  { \"$my_originator\", (void *) 0 }," + +	  case $need_lib_prefix in +	  no) +	    eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" +	    ;; +	  *) +	    eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" +	    ;; +	  esac +	  $ECHO >> "$output_objdir/$my_dlsyms" "\ +  {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { +  return lt_${my_prefix}_LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" +	} # !$opt_dry_run + +	pic_flag_for_symtable= +	case "$compile_command " in +	*" -static "*) ;; +	*) +	  case $host in +	  # compiling the symbol table file with pic_flag works around +	  # a FreeBSD bug that causes programs to crash when -lm is +	  # linked before any other PIC object.  But we must not use +	  # pic_flag when linking with -static.  The problem exists in +	  # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. +	  *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) +	    pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; +	  *-*-hpux*) +	    pic_flag_for_symtable=" $pic_flag"  ;; +	  *) +	    if test "X$my_pic_p" != Xno; then +	      pic_flag_for_symtable=" $pic_flag" +	    fi +	    ;; +	  esac +	  ;; +	esac +	symtab_cflags= +	for arg in $LTCFLAGS; do +	  case $arg in +	  -pie | -fpie | -fPIE) ;; +	  *) symtab_cflags="$symtab_cflags $arg" ;; +	  esac +	done + +	# Now compile the dynamic symbol file. +	func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' + +	# Clean up the generated files. +	func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' + +	# Transform the symbol file into the correct name. +	symfileobj="$output_objdir/${my_outputname}S.$objext" +	case $host in +	*cygwin* | *mingw* | *cegcc* ) +	  if test -f "$output_objdir/$my_outputname.def"; then +	    compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` +	    finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` +	  else +	    compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` +	    finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` +	  fi +	  ;; +	*) +	  compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` +	  finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"` +	  ;; +	esac +	;; +      *) +	func_fatal_error "unknown suffix for \`$my_dlsyms'" +	;; +      esac +    else +      # We keep going just in case the user didn't refer to +      # lt_preloaded_symbols.  The linker will fail if global_symbol_pipe +      # really was required. + +      # Nullify the symbol file. +      compile_command=`$ECHO "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` +      finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` +    fi +} + +# 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. +func_win32_libid () +{ +  $opt_debug +  win32_libid_type="unknown" +  win32_fileres=`file -L $1 2>/dev/null` +  case $win32_fileres in +  *ar\ archive\ import\ library*) # definitely import +    win32_libid_type="x86 archive import" +    ;; +  *ar\ archive*) # could be an import, or static +    if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | +       $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then +      win32_nmres=`eval $NM -f posix -A $1 | +	$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*) +    win32_libid_type="x86 DLL" +    ;; +  *executable*) # but shell scripts are "executable" too... +    case $win32_fileres in +    *MS\ Windows\ PE\ Intel*) +      win32_libid_type="x86 DLL" +      ;; +    esac +    ;; +  esac +  $ECHO "$win32_libid_type" +} + + + +# func_extract_an_archive dir oldlib +func_extract_an_archive () +{ +    $opt_debug +    f_ex_an_ar_dir="$1"; shift +    f_ex_an_ar_oldlib="$1" +    func_show_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 +      func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" +    fi +} + + +# func_extract_archives gentop oldlib ... +func_extract_archives () +{ +    $opt_debug +    my_gentop="$1"; shift +    my_oldlibs=${1+"$@"} +    my_oldobjs="" +    my_xlib="" +    my_xabs="" +    my_xdir="" + +    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 +      func_basename "$my_xlib" +      my_xlib="$func_basename_result" +      my_xlib_u=$my_xlib +      while :; do +        case " $extracted_archives " in +	*" $my_xlib_u "*) +	  func_arith $extracted_serial + 1 +	  extracted_serial=$func_arith_result +	  my_xlib_u=lt$extracted_serial-$my_xlib ;; +	*) break ;; +	esac +      done +      extracted_archives="$extracted_archives $my_xlib_u" +      my_xdir="$my_gentop/$my_xlib_u" + +      func_mkdir_p "$my_xdir" + +      case $host in +      *-darwin*) +	func_verbose "Extracting $my_xabs" +	# Do not bother doing anything if just a dry run +	$opt_dry_run || { +	  darwin_orig_dir=`pwd` +	  cd $my_xdir || exit $? +	  darwin_archive=$my_xabs +	  darwin_curdir=`pwd` +	  darwin_base_archive=`basename "$darwin_archive"` +	  darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` +	  if test -n "$darwin_arches"; then +	    darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` +	    darwin_arch= +	    func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" +	    for darwin_arch in  $darwin_arches ; do +	      func_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've a bunch of thin objects, gotta fatten them up :) +	    darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u` +	    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 -rf unfat-$$ +	    cd "$darwin_orig_dir" +	  else +	    cd $darwin_orig_dir +	    func_extract_an_archive "$my_xdir" "$my_xabs" +	  fi # $darwin_arches +	} # !$opt_dry_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" +} + + + +# func_emit_wrapper_part1 [arg=no] +# +# Emit the first part of a libtool wrapper script on stdout. +# For more information, see the description associated with +# func_emit_wrapper(), below. +func_emit_wrapper_part1 () +{ +	func_emit_wrapper_part1_arg1=no +	if test -n "$1" ; then +	  func_emit_wrapper_part1_arg1=$1 +	fi + +	$ECHO "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting.  It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='${SED} -e 1s/^X//' +sed_quote_subst='$sed_quote_subst' + +# Be Bourne compatible +if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then +  emulate sh +  NULLCMD=: +  # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which +  # is contrary to our usage.  Disable this feature. +  alias -g '\${1+\"\$@\"}'='\"\$@\"' +  setopt NO_GLOB_SUBST +else +  case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then +  # install mode needs the following variables: +  generated_by_libtool_version='$macro_version' +  notinst_deplibs='$notinst_deplibs' +else +  # When we are sourced in execute mode, \$file and \$ECHO are already set. +  if test \"\$libtool_execute_magic\" != \"$magic\"; then +    ECHO=\"$qecho\" +    file=\"\$0\" +    # Make sure echo works. +    if test \"X\$1\" = X--no-reexec; then +      # Discard the --no-reexec flag, and continue. +      shift +    elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; then +      # Yippee, \$ECHO works! +      : +    else +      # Restart under the correct shell, and then maybe \$ECHO will work. +      exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} +    fi +  fi\ +" +	$ECHO "\ + +  # Find the directory that this script lives in. +  thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` +  test \"x\$thisdir\" = \"x\$file\" && thisdir=. + +  # Follow symbolic links until we get to the real thisdir. +  file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\` +  while test -n \"\$file\"; do +    destdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` + +    # If there was a directory component, then change thisdir. +    if test \"x\$destdir\" != \"x\$file\"; then +      case \"\$destdir\" in +      [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; +      *) thisdir=\"\$thisdir/\$destdir\" ;; +      esac +    fi + +    file=\`\$ECHO \"X\$file\" | \$Xsed -e 's%^.*/%%'\` +    file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` +  done +" +} +# end: func_emit_wrapper_part1 + +# func_emit_wrapper_part2 [arg=no] +# +# Emit the second part of a libtool wrapper script on stdout. +# For more information, see the description associated with +# func_emit_wrapper(), below. +func_emit_wrapper_part2 () +{ +	func_emit_wrapper_part2_arg1=no +	if test -n "$1" ; then +	  func_emit_wrapper_part2_arg1=$1 +	fi + +	$ECHO "\ + +  # Usually 'no', except on cygwin/mingw when embedded into +  # the cwrapper. +  WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_part2_arg1 +  if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then +    # special case for '.' +    if test \"\$thisdir\" = \".\"; then +      thisdir=\`pwd\` +    fi +    # remove .libs from thisdir +    case \"\$thisdir\" in +    *[\\\\/]$objdir ) thisdir=\`\$ECHO \"X\$thisdir\" | \$Xsed -e 's%[\\\\/][^\\\\/]*$%%'\` ;; +    $objdir )   thisdir=. ;; +    esac +  fi + +  # Try to get the absolute directory name. +  absdir=\`cd \"\$thisdir\" && pwd\` +  test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + +	if test "$fast_install" = yes; then +	  $ECHO "\ +  program=lt-'$outputname'$exeext +  progdir=\"\$thisdir/$objdir\" + +  if test ! -f \"\$progdir/\$program\" || +     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ +       test \"X\$file\" != \"X\$progdir/\$program\"; }; then + +    file=\"\$\$-\$program\" + +    if test ! -d \"\$progdir\"; then +      $MKDIR \"\$progdir\" +    else +      $RM \"\$progdir/\$file\" +    fi" + +	  $ECHO "\ + +    # relink executable if necessary +    if test -n \"\$relink_command\"; then +      if relink_command_output=\`eval \$relink_command 2>&1\`; then : +      else +	$ECHO \"\$relink_command_output\" >&2 +	$RM \"\$progdir/\$file\" +	exit 1 +      fi +    fi + +    $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || +    { $RM \"\$progdir/\$program\"; +      $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } +    $RM \"\$progdir/\$file\" +  fi" +	else +	  $ECHO "\ +  program='$outputname' +  progdir=\"\$thisdir/$objdir\" +" +	fi + +	$ECHO "\ + +  if test -f \"\$progdir/\$program\"; then" + +	# Export our shlibpath_var if we have one. +	if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then +	  $ECHO "\ +    # Add our own library path to $shlibpath_var +    $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + +    # Some systems cannot cope with colon-terminated $shlibpath_var +    # The second colon is a workaround for a bug in BeOS R4 sed +    $shlibpath_var=\`\$ECHO \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` + +    export $shlibpath_var +" +	fi + +	# fixup the dll searchpath if we need to. +	if test -n "$dllsearchpath"; then +	  $ECHO "\ +    # Add the dll search path components to the executable PATH +    PATH=$dllsearchpath:\$PATH +" +	fi + +	$ECHO "\ +    if test \"\$libtool_execute_magic\" != \"$magic\"; then +      # Run the actual program with our arguments. +" +	case $host in +	# Backslashes separate directories on plain windows +	*-*-mingw | *-*-os2* | *-cegcc*) +	  $ECHO "\ +      exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} +" +	  ;; + +	*) +	  $ECHO "\ +      exec \"\$progdir/\$program\" \${1+\"\$@\"} +" +	  ;; +	esac +	$ECHO "\ +      \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 +      exit 1 +    fi +  else +    # The program doesn't exist. +    \$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 +  fi +fi\ +" +} +# end: func_emit_wrapper_part2 + + +# func_emit_wrapper [arg=no] +# +# Emit a libtool wrapper script on stdout. +# Don't directly open a file because we may want to +# incorporate the script contents within a cygwin/mingw +# wrapper executable.  Must ONLY be called from within +# func_mode_link because it depends on a number of variables +# set therein. +# +# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR +# variable will take.  If 'yes', then the emitted script +# will assume that the directory in which it is stored is +# the $objdir directory.  This is a cygwin/mingw-specific +# behavior. +func_emit_wrapper () +{ +	func_emit_wrapper_arg1=no +	if test -n "$1" ; then +	  func_emit_wrapper_arg1=$1 +	fi + +	# split this up so that func_emit_cwrapperexe_src +	# can call each part independently. +	func_emit_wrapper_part1 "${func_emit_wrapper_arg1}" +	func_emit_wrapper_part2 "${func_emit_wrapper_arg1}" +} + + +# func_to_host_path arg +# +# Convert paths to host format when used with build tools. +# Intended for use with "native" mingw (where libtool itself +# is running under the msys shell), or in the following cross- +# build environments: +#    $build          $host +#    mingw (msys)    mingw  [e.g. native] +#    cygwin          mingw +#    *nix + wine     mingw +# where wine is equipped with the `winepath' executable. +# In the native mingw case, the (msys) shell automatically +# converts paths for any non-msys applications it launches, +# but that facility isn't available from inside the cwrapper. +# Similar accommodations are necessary for $host mingw and +# $build cygwin.  Calling this function does no harm for other +# $host/$build combinations not listed above. +# +# ARG is the path (on $build) that should be converted to +# the proper representation for $host. The result is stored +# in $func_to_host_path_result. +func_to_host_path () +{ +  func_to_host_path_result="$1" +  if test -n "$1" ; then +    case $host in +      *mingw* ) +        lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' +        case $build in +          *mingw* ) # actually, msys +            # awkward: cmd appends spaces to result +            lt_sed_strip_trailing_spaces="s/[ ]*\$//" +            func_to_host_path_tmp1=`( cmd //c echo "$1" |\ +              $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""` +            func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ +              $SED -e "$lt_sed_naive_backslashify"` +            ;; +          *cygwin* ) +            func_to_host_path_tmp1=`cygpath -w "$1"` +            func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ +              $SED -e "$lt_sed_naive_backslashify"` +            ;; +          * ) +            # Unfortunately, winepath does not exit with a non-zero +            # error code, so we are forced to check the contents of +            # stdout. On the other hand, if the command is not +            # found, the shell will set an exit code of 127 and print +            # *an error message* to stdout. So we must check for both +            # error code of zero AND non-empty stdout, which explains +            # the odd construction: +            func_to_host_path_tmp1=`winepath -w "$1" 2>/dev/null` +            if test "$?" -eq 0 && test -n "${func_to_host_path_tmp1}"; then +              func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\ +                $SED -e "$lt_sed_naive_backslashify"` +            else +              # Allow warning below. +              func_to_host_path_result="" +            fi +            ;; +        esac +        if test -z "$func_to_host_path_result" ; then +          func_error "Could not determine host path corresponding to" +          func_error "  '$1'" +          func_error "Continuing, but uninstalled executables may not work." +          # Fallback: +          func_to_host_path_result="$1" +        fi +        ;; +    esac +  fi +} +# end: func_to_host_path + +# func_to_host_pathlist arg +# +# Convert pathlists to host format when used with build tools. +# See func_to_host_path(), above. This function supports the +# following $build/$host combinations (but does no harm for +# combinations not listed here): +#    $build          $host +#    mingw (msys)    mingw  [e.g. native] +#    cygwin          mingw +#    *nix + wine     mingw +# +# Path separators are also converted from $build format to +# $host format. If ARG begins or ends with a path separator +# character, it is preserved (but converted to $host format) +# on output. +# +# ARG is a pathlist (on $build) that should be converted to +# the proper representation on $host. The result is stored +# in $func_to_host_pathlist_result. +func_to_host_pathlist () +{ +  func_to_host_pathlist_result="$1" +  if test -n "$1" ; then +    case $host in +      *mingw* ) +        lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' +        # Remove leading and trailing path separator characters from +        # ARG. msys behavior is inconsistent here, cygpath turns them +        # into '.;' and ';.', and winepath ignores them completely. +        func_to_host_pathlist_tmp2="$1" +        # Once set for this call, this variable should not be +        # reassigned. It is used in tha fallback case. +        func_to_host_pathlist_tmp1=`echo "$func_to_host_pathlist_tmp2" |\ +          $SED -e 's|^:*||' -e 's|:*$||'` +        case $build in +          *mingw* ) # Actually, msys. +            # Awkward: cmd appends spaces to result. +            lt_sed_strip_trailing_spaces="s/[ ]*\$//" +            func_to_host_pathlist_tmp2=`( cmd //c echo "$func_to_host_pathlist_tmp1" |\ +              $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""` +            func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\ +              $SED -e "$lt_sed_naive_backslashify"` +            ;; +          *cygwin* ) +            func_to_host_pathlist_tmp2=`cygpath -w -p "$func_to_host_pathlist_tmp1"` +            func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\ +              $SED -e "$lt_sed_naive_backslashify"` +            ;; +          * ) +            # unfortunately, winepath doesn't convert pathlists +            func_to_host_pathlist_result="" +            func_to_host_pathlist_oldIFS=$IFS +            IFS=: +            for func_to_host_pathlist_f in $func_to_host_pathlist_tmp1 ; do +              IFS=$func_to_host_pathlist_oldIFS +              if test -n "$func_to_host_pathlist_f" ; then +                func_to_host_path "$func_to_host_pathlist_f" +                if test -n "$func_to_host_path_result" ; then +                  if test -z "$func_to_host_pathlist_result" ; then +                    func_to_host_pathlist_result="$func_to_host_path_result" +                  else +                    func_to_host_pathlist_result="$func_to_host_pathlist_result;$func_to_host_path_result" +                  fi +                fi +              fi +              IFS=: +            done +            IFS=$func_to_host_pathlist_oldIFS +            ;; +        esac +        if test -z "$func_to_host_pathlist_result" ; then +          func_error "Could not determine the host path(s) corresponding to" +          func_error "  '$1'" +          func_error "Continuing, but uninstalled executables may not work." +          # Fallback. This may break if $1 contains DOS-style drive +          # specifications. The fix is not to complicate the expression +          # below, but for the user to provide a working wine installation +          # with winepath so that path translation in the cross-to-mingw +          # case works properly. +          lt_replace_pathsep_nix_to_dos="s|:|;|g" +          func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp1" |\ +            $SED -e "$lt_replace_pathsep_nix_to_dos"` +        fi +        # Now, add the leading and trailing path separators back +        case "$1" in +          :* ) func_to_host_pathlist_result=";$func_to_host_pathlist_result" +            ;; +        esac +        case "$1" in +          *: ) func_to_host_pathlist_result="$func_to_host_pathlist_result;" +            ;; +        esac +        ;; +    esac +  fi +} +# end: func_to_host_pathlist + +# func_emit_cwrapperexe_src +# emit the source code for a wrapper executable on stdout +# Must ONLY be called from within func_mode_link because +# it depends on a number of variable set therein. +func_emit_cwrapperexe_src () +{ +	cat <<EOF + +/* $cwrappersource - temporary wrapper executable for $objdir/$outputname +   Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION + +   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. + +   Currently, it simply execs the wrapper *script* "$SHELL $output", +   but could eventually absorb all of the scripts functionality and +   exec $objdir/$outputname directly. +*/ +EOF +	    cat <<"EOF" +#include <stdio.h> +#include <stdlib.h> +#ifdef _MSC_VER +# include <direct.h> +# include <process.h> +# include <io.h> +# define setmode _setmode +#else +# include <unistd.h> +# include <stdint.h> +# ifdef __CYGWIN__ +#  include <io.h> +#  define HAVE_SETENV +#  ifdef __STRICT_ANSI__ +char *realpath (const char *, char *); +int putenv (char *); +int setenv (const char *, const char *, int); +#  endif +# endif +#endif +#include <malloc.h> +#include <stdarg.h> +#include <assert.h> +#include <string.h> +#include <ctype.h> +#include <errno.h> +#include <fcntl.h> +#include <sys/stat.h> + +#if defined(PATH_MAX) +# define LT_PATHMAX PATH_MAX +#elif defined(MAXPATHLEN) +# define LT_PATHMAX MAXPATHLEN +#else +# define LT_PATHMAX 1024 +#endif + +#ifndef S_IXOTH +# define S_IXOTH 0 +#endif +#ifndef S_IXGRP +# define S_IXGRP 0 +#endif + +#ifdef _MSC_VER +# define S_IXUSR _S_IEXEC +# define stat _stat +# ifndef _INTPTR_T_DEFINED +#  define intptr_t int +# endif +#endif + +#ifndef DIR_SEPARATOR +# define DIR_SEPARATOR '/' +# define PATH_SEPARATOR ':' +#endif + +#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ +  defined (__OS2__) +# define HAVE_DOS_BASED_FILE_SYSTEM +# define FOPEN_WB "wb" +# ifndef DIR_SEPARATOR_2 +#  define DIR_SEPARATOR_2 '\\' +# endif +# ifndef PATH_SEPARATOR_2 +#  define PATH_SEPARATOR_2 ';' +# endif +#endif + +#ifndef DIR_SEPARATOR_2 +# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) +#else /* DIR_SEPARATOR_2 */ +# define IS_DIR_SEPARATOR(ch) \ +	(((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 */ + +#ifdef __CYGWIN__ +# define FOPEN_WB "wb" +#endif + +#ifndef FOPEN_WB +# define FOPEN_WB "w" +#endif +#ifndef _O_BINARY +# define _O_BINARY 0 +#endif + +#define XMALLOC(type, num)      ((type *) xmalloc ((num) * sizeof(type))) +#define XFREE(stale) do { \ +  if (stale) { free ((void *) stale); stale = 0; } \ +} while (0) + +#undef LTWRAPPER_DEBUGPRINTF +#if defined DEBUGWRAPPER +# define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args +static void +ltwrapper_debugprintf (const char *fmt, ...) +{ +    va_list args; +    va_start (args, fmt); +    (void) vfprintf (stderr, fmt, args); +    va_end (args); +} +#else +# define LTWRAPPER_DEBUGPRINTF(args) +#endif + +const char *program_name = NULL; + +void *xmalloc (size_t num); +char *xstrdup (const char *string); +const char *base_name (const char *name); +char *find_executable (const char *wrapper); +char *chase_symlinks (const char *pathspec); +int make_executable (const char *path); +int check_executable (const char *path); +char *strendzap (char *str, const char *pat); +void lt_fatal (const char *message, ...); +void lt_setenv (const char *name, const char *value); +char *lt_extend_str (const char *orig_value, const char *add, int to_end); +void lt_opt_process_env_set (const char *arg); +void lt_opt_process_env_prepend (const char *arg); +void lt_opt_process_env_append (const char *arg); +int lt_split_name_value (const char *arg, char** name, char** value); +void lt_update_exe_path (const char *name, const char *value); +void lt_update_lib_path (const char *name, const char *value); + +static const char *script_text_part1 = +EOF + +	    func_emit_wrapper_part1 yes | +	        $SED -e 's/\([\\"]\)/\\\1/g' \ +	             -e 's/^/  "/' -e 's/$/\\n"/' +	    echo ";" +	    cat <<EOF + +static const char *script_text_part2 = +EOF +	    func_emit_wrapper_part2 yes | +	        $SED -e 's/\([\\"]\)/\\\1/g' \ +	             -e 's/^/  "/' -e 's/$/\\n"/' +	    echo ";" + +	    cat <<EOF +const char * MAGIC_EXE = "$magic_exe"; +const char * LIB_PATH_VARNAME = "$shlibpath_var"; +EOF + +	    if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then +              func_to_host_pathlist "$temp_rpath" +	      cat <<EOF +const char * LIB_PATH_VALUE   = "$func_to_host_pathlist_result"; +EOF +	    else +	      cat <<"EOF" +const char * LIB_PATH_VALUE   = ""; +EOF +	    fi + +	    if test -n "$dllsearchpath"; then +              func_to_host_pathlist "$dllsearchpath:" +	      cat <<EOF +const char * EXE_PATH_VARNAME = "PATH"; +const char * EXE_PATH_VALUE   = "$func_to_host_pathlist_result"; +EOF +	    else +	      cat <<"EOF" +const char * EXE_PATH_VARNAME = ""; +const char * EXE_PATH_VALUE   = ""; +EOF +	    fi + +	    if test "$fast_install" = yes; then +	      cat <<EOF +const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */ +EOF +	    else +	      cat <<EOF +const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */ +EOF +	    fi + + +	    cat <<"EOF" + +#define LTWRAPPER_OPTION_PREFIX         "--lt-" +#define LTWRAPPER_OPTION_PREFIX_LENGTH  5 + +static const size_t opt_prefix_len         = LTWRAPPER_OPTION_PREFIX_LENGTH; +static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX; + +static const char *dumpscript_opt       = LTWRAPPER_OPTION_PREFIX "dump-script"; + +static const size_t env_set_opt_len     = LTWRAPPER_OPTION_PREFIX_LENGTH + 7; +static const char *env_set_opt          = LTWRAPPER_OPTION_PREFIX "env-set"; +  /* argument is putenv-style "foo=bar", value of foo is set to bar */ + +static const size_t env_prepend_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 11; +static const char *env_prepend_opt      = LTWRAPPER_OPTION_PREFIX "env-prepend"; +  /* argument is putenv-style "foo=bar", new value of foo is bar${foo} */ + +static const size_t env_append_opt_len  = LTWRAPPER_OPTION_PREFIX_LENGTH + 10; +static const char *env_append_opt       = LTWRAPPER_OPTION_PREFIX "env-append"; +  /* argument is putenv-style "foo=bar", new value of foo is ${foo}bar */ + +int +main (int argc, char *argv[]) +{ +  char **newargz; +  int  newargc; +  char *tmp_pathspec; +  char *actual_cwrapper_path; +  char *actual_cwrapper_name; +  char *target_name; +  char *lt_argv_zero; +  intptr_t rval = 127; + +  int i; + +  program_name = (char *) xstrdup (base_name (argv[0])); +  LTWRAPPER_DEBUGPRINTF (("(main) argv[0]      : %s\n", argv[0])); +  LTWRAPPER_DEBUGPRINTF (("(main) program_name : %s\n", program_name)); + +  /* very simple arg parsing; don't want to rely on getopt */ +  for (i = 1; i < argc; i++) +    { +      if (strcmp (argv[i], dumpscript_opt) == 0) +	{ +EOF +	    case "$host" in +	      *mingw* | *cygwin* ) +		# make stdout use "unix" line endings +		echo "          setmode(1,_O_BINARY);" +		;; +	      esac + +	    cat <<"EOF" +	  printf ("%s", script_text_part1); +	  printf ("%s", script_text_part2); +	  return 0; +	} +    } + +  newargz = XMALLOC (char *, argc + 1); +  tmp_pathspec = find_executable (argv[0]); +  if (tmp_pathspec == NULL) +    lt_fatal ("Couldn't find %s", argv[0]); +  LTWRAPPER_DEBUGPRINTF (("(main) found exe (before symlink chase) at : %s\n", +			  tmp_pathspec)); + +  actual_cwrapper_path = chase_symlinks (tmp_pathspec); +  LTWRAPPER_DEBUGPRINTF (("(main) found exe (after symlink chase) at : %s\n", +			  actual_cwrapper_path)); +  XFREE (tmp_pathspec); + +  actual_cwrapper_name = xstrdup( base_name (actual_cwrapper_path)); +  strendzap (actual_cwrapper_path, actual_cwrapper_name); + +  /* wrapper name transforms */ +  strendzap (actual_cwrapper_name, ".exe"); +  tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1); +  XFREE (actual_cwrapper_name); +  actual_cwrapper_name = tmp_pathspec; +  tmp_pathspec = 0; + +  /* target_name transforms -- use actual target program name; might have lt- prefix */ +  target_name = xstrdup (base_name (TARGET_PROGRAM_NAME)); +  strendzap (target_name, ".exe"); +  tmp_pathspec = lt_extend_str (target_name, ".exe", 1); +  XFREE (target_name); +  target_name = tmp_pathspec; +  tmp_pathspec = 0; + +  LTWRAPPER_DEBUGPRINTF (("(main) libtool target name: %s\n", +			  target_name)); +EOF + +	    cat <<EOF +  newargz[0] = +    XMALLOC (char, (strlen (actual_cwrapper_path) + +		    strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1)); +  strcpy (newargz[0], actual_cwrapper_path); +  strcat (newargz[0], "$objdir"); +  strcat (newargz[0], "/"); +EOF + +	    cat <<"EOF" +  /* stop here, and copy so we don't have to do this twice */ +  tmp_pathspec = xstrdup (newargz[0]); + +  /* do NOT want the lt- prefix here, so use actual_cwrapper_name */ +  strcat (newargz[0], actual_cwrapper_name); + +  /* DO want the lt- prefix here if it exists, so use target_name */ +  lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1); +  XFREE (tmp_pathspec); +  tmp_pathspec = NULL; +EOF + +	    case $host_os in +	      mingw*) +	    cat <<"EOF" +  { +    char* p; +    while ((p = strchr (newargz[0], '\\')) != NULL) +      { +	*p = '/'; +      } +    while ((p = strchr (lt_argv_zero, '\\')) != NULL) +      { +	*p = '/'; +      } +  } +EOF +	    ;; +	    esac + +	    cat <<"EOF" +  XFREE (target_name); +  XFREE (actual_cwrapper_path); +  XFREE (actual_cwrapper_name); + +  lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */ +  lt_setenv ("DUALCASE", "1");  /* for MSK sh */ +  lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE); +  lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE); + +  newargc=0; +  for (i = 1; i < argc; i++) +    { +      if (strncmp (argv[i], env_set_opt, env_set_opt_len) == 0) +        { +          if (argv[i][env_set_opt_len] == '=') +            { +              const char *p = argv[i] + env_set_opt_len + 1; +              lt_opt_process_env_set (p); +            } +          else if (argv[i][env_set_opt_len] == '\0' && i + 1 < argc) +            { +              lt_opt_process_env_set (argv[++i]); /* don't copy */ +            } +          else +            lt_fatal ("%s missing required argument", env_set_opt); +          continue; +        } +      if (strncmp (argv[i], env_prepend_opt, env_prepend_opt_len) == 0) +        { +          if (argv[i][env_prepend_opt_len] == '=') +            { +              const char *p = argv[i] + env_prepend_opt_len + 1; +              lt_opt_process_env_prepend (p); +            } +          else if (argv[i][env_prepend_opt_len] == '\0' && i + 1 < argc) +            { +              lt_opt_process_env_prepend (argv[++i]); /* don't copy */ +            } +          else +            lt_fatal ("%s missing required argument", env_prepend_opt); +          continue; +        } +      if (strncmp (argv[i], env_append_opt, env_append_opt_len) == 0) +        { +          if (argv[i][env_append_opt_len] == '=') +            { +              const char *p = argv[i] + env_append_opt_len + 1; +              lt_opt_process_env_append (p); +            } +          else if (argv[i][env_append_opt_len] == '\0' && i + 1 < argc) +            { +              lt_opt_process_env_append (argv[++i]); /* don't copy */ +            } +          else +            lt_fatal ("%s missing required argument", env_append_opt); +          continue; +        } +      if (strncmp (argv[i], ltwrapper_option_prefix, opt_prefix_len) == 0) +        { +          /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX +             namespace, but it is not one of the ones we know about and +             have already dealt with, above (inluding dump-script), then +             report an error. Otherwise, targets might begin to believe +             they are allowed to use options in the LTWRAPPER_OPTION_PREFIX +             namespace. The first time any user complains about this, we'll +             need to make LTWRAPPER_OPTION_PREFIX a configure-time option +             or a configure.ac-settable value. +           */ +          lt_fatal ("Unrecognized option in %s namespace: '%s'", +                    ltwrapper_option_prefix, argv[i]); +        } +      /* otherwise ... */ +      newargz[++newargc] = xstrdup (argv[i]); +    } +  newargz[++newargc] = NULL; + +  LTWRAPPER_DEBUGPRINTF     (("(main) lt_argv_zero : %s\n", (lt_argv_zero ? lt_argv_zero : "<NULL>"))); +  for (i = 0; i < newargc; i++) +    { +      LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d]   : %s\n", i, (newargz[i] ? newargz[i] : "<NULL>"))); +    } + +EOF + +	    case $host_os in +	      mingw*) +		cat <<"EOF" +  /* execv doesn't actually work on mingw as expected on unix */ +  rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz); +  if (rval == -1) +    { +      /* failed to start process */ +      LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \"%s\": errno = %d\n", lt_argv_zero, errno)); +      return 127; +    } +  return rval; +EOF +		;; +	      *) +		cat <<"EOF" +  execv (lt_argv_zero, newargz); +  return rval; /* =127, but avoids unused variable warning */ +EOF +		;; +	    esac + +	    cat <<"EOF" +} + +void * +xmalloc (size_t num) +{ +  void *p = (void *) malloc (num); +  if (!p) +    lt_fatal ("Memory exhausted"); + +  return p; +} + +char * +xstrdup (const char *string) +{ +  return string ? strcpy ((char *) xmalloc (strlen (string) + 1), +			  string) : NULL; +} + +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 ((unsigned char) name[0]) && name[1] == ':') +    name += 2; +#endif + +  for (base = name; *name; name++) +    if (IS_DIR_SEPARATOR (*name)) +      base = name + 1; +  return base; +} + +int +check_executable (const char *path) +{ +  struct stat st; + +  LTWRAPPER_DEBUGPRINTF (("(check_executable)  : %s\n", +			  path ? (*path ? path : "EMPTY!") : "NULL!")); +  if ((!path) || (!*path)) +    return 0; + +  if ((stat (path, &st) >= 0) +      && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) +    return 1; +  else +    return 0; +} + +int +make_executable (const char *path) +{ +  int rval = 0; +  struct stat st; + +  LTWRAPPER_DEBUGPRINTF (("(make_executable)   : %s\n", +			  path ? (*path ? path : "EMPTY!") : "NULL!")); +  if ((!path) || (!*path)) +    return 0; + +  if (stat (path, &st) >= 0) +    { +      rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); +    } +  return rval; +} + +/* Searches for the full path of the wrapper.  Returns +   newly allocated full path name if found, NULL otherwise +   Does not chase symlinks, even on platforms that support them. +*/ +char * +find_executable (const char *wrapper) +{ +  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; + +  LTWRAPPER_DEBUGPRINTF (("(find_executable)   : %s\n", +			  wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!")); + +  if ((wrapper == NULL) || (*wrapper == '\0')) +    return NULL; + +  /* Absolute path? */ +#if defined (HAVE_DOS_BASED_FILE_SYSTEM) +  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 + +  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"); +  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 * +chase_symlinks (const char *pathspec) +{ +#ifndef S_ISLNK +  return xstrdup (pathspec); +#else +  char buf[LT_PATHMAX]; +  struct stat s; +  char *tmp_pathspec = xstrdup (pathspec); +  char *p; +  int has_symlinks = 0; +  while (strlen (tmp_pathspec) && !has_symlinks) +    { +      LTWRAPPER_DEBUGPRINTF (("checking path component for symlinks: %s\n", +			      tmp_pathspec)); +      if (lstat (tmp_pathspec, &s) == 0) +	{ +	  if (S_ISLNK (s.st_mode) != 0) +	    { +	      has_symlinks = 1; +	      break; +	    } + +	  /* search backwards for last DIR_SEPARATOR */ +	  p = tmp_pathspec + strlen (tmp_pathspec) - 1; +	  while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) +	    p--; +	  if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) +	    { +	      /* no more DIR_SEPARATORS left */ +	      break; +	    } +	  *p = '\0'; +	} +      else +	{ +	  char *errstr = strerror (errno); +	  lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr); +	} +    } +  XFREE (tmp_pathspec); + +  if (!has_symlinks) +    { +      return xstrdup (pathspec); +    } + +  tmp_pathspec = realpath (pathspec, buf); +  if (tmp_pathspec == 0) +    { +      lt_fatal ("Could not follow symlinks for %s", pathspec); +    } +  return xstrdup (tmp_pathspec); +#endif +} + +char * +strendzap (char *str, const char *pat) +{ +  size_t len, patlen; + +  assert (str != NULL); +  assert (pat != NULL); + +  len = strlen (str); +  patlen = strlen (pat); + +  if (patlen <= len) +    { +      str += len - patlen; +      if (strcmp (str, pat) == 0) +	*str = '\0'; +    } +  return str; +} + +static void +lt_error_core (int exit_status, const char *mode, +	       const char *message, va_list ap) +{ +  fprintf (stderr, "%s: %s: ", program_name, mode); +  vfprintf (stderr, message, ap); +  fprintf (stderr, ".\n"); + +  if (exit_status >= 0) +    exit (exit_status); +} + +void +lt_fatal (const char *message, ...) +{ +  va_list ap; +  va_start (ap, message); +  lt_error_core (EXIT_FAILURE, "FATAL", message, ap); +  va_end (ap); +} + +void +lt_setenv (const char *name, const char *value) +{ +  LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting '%s' to '%s'\n", +                          (name ? name : "<NULL>"), +                          (value ? value : "<NULL>"))); +  { +#ifdef HAVE_SETENV +    /* always make a copy, for consistency with !HAVE_SETENV */ +    char *str = xstrdup (value); +    setenv (name, str, 1); +#else +    int len = strlen (name) + 1 + strlen (value) + 1; +    char *str = XMALLOC (char, len); +    sprintf (str, "%s=%s", name, value); +    if (putenv (str) != EXIT_SUCCESS) +      { +        XFREE (str); +      } +#endif +  } +} + +char * +lt_extend_str (const char *orig_value, const char *add, int to_end) +{ +  char *new_value; +  if (orig_value && *orig_value) +    { +      int orig_value_len = strlen (orig_value); +      int add_len = strlen (add); +      new_value = XMALLOC (char, add_len + orig_value_len + 1); +      if (to_end) +        { +          strcpy (new_value, orig_value); +          strcpy (new_value + orig_value_len, add); +        } +      else +        { +          strcpy (new_value, add); +          strcpy (new_value + add_len, orig_value); +        } +    } +  else +    { +      new_value = xstrdup (add); +    } +  return new_value; +} + +int +lt_split_name_value (const char *arg, char** name, char** value) +{ +  const char *p; +  int len; +  if (!arg || !*arg) +    return 1; + +  p = strchr (arg, (int)'='); + +  if (!p) +    return 1; + +  *value = xstrdup (++p); + +  len = strlen (arg) - strlen (*value); +  *name = XMALLOC (char, len); +  strncpy (*name, arg, len-1); +  (*name)[len - 1] = '\0'; + +  return 0; +} + +void +lt_opt_process_env_set (const char *arg) +{ +  char *name = NULL; +  char *value = NULL; + +  if (lt_split_name_value (arg, &name, &value) != 0) +    { +      XFREE (name); +      XFREE (value); +      lt_fatal ("bad argument for %s: '%s'", env_set_opt, arg); +    } + +  lt_setenv (name, value); +  XFREE (name); +  XFREE (value); +} + +void +lt_opt_process_env_prepend (const char *arg) +{ +  char *name = NULL; +  char *value = NULL; +  char *new_value = NULL; + +  if (lt_split_name_value (arg, &name, &value) != 0) +    { +      XFREE (name); +      XFREE (value); +      lt_fatal ("bad argument for %s: '%s'", env_prepend_opt, arg); +    } + +  new_value = lt_extend_str (getenv (name), value, 0); +  lt_setenv (name, new_value); +  XFREE (new_value); +  XFREE (name); +  XFREE (value); +} + +void +lt_opt_process_env_append (const char *arg) +{ +  char *name = NULL; +  char *value = NULL; +  char *new_value = NULL; + +  if (lt_split_name_value (arg, &name, &value) != 0) +    { +      XFREE (name); +      XFREE (value); +      lt_fatal ("bad argument for %s: '%s'", env_append_opt, arg); +    } + +  new_value = lt_extend_str (getenv (name), value, 1); +  lt_setenv (name, new_value); +  XFREE (new_value); +  XFREE (name); +  XFREE (value); +} + +void +lt_update_exe_path (const char *name, const char *value) +{ +  LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying '%s' by prepending '%s'\n", +                          (name ? name : "<NULL>"), +                          (value ? value : "<NULL>"))); + +  if (name && *name && value && *value) +    { +      char *new_value = lt_extend_str (getenv (name), value, 0); +      /* some systems can't cope with a ':'-terminated path #' */ +      int len = strlen (new_value); +      while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) +        { +          new_value[len-1] = '\0'; +        } +      lt_setenv (name, new_value); +      XFREE (new_value); +    } +} + +void +lt_update_lib_path (const char *name, const char *value) +{ +  LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying '%s' by prepending '%s'\n", +                          (name ? name : "<NULL>"), +                          (value ? value : "<NULL>"))); + +  if (name && *name && value && *value) +    { +      char *new_value = lt_extend_str (getenv (name), value, 0); +      lt_setenv (name, new_value); +      XFREE (new_value); +    } +} + -  # libtool link mode -  link | relink) -    modename="$modename: link" +EOF +} +# end: func_emit_cwrapperexe_src + +# func_mode_link arg... +func_mode_link () +{ +    $opt_debug      case $host in -    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) +    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)        # It is impossible to link a dll without this setting, and        # we shouldn't force the makefile maintainer to figure out        # which system we are compiling for in order to pass an extra @@ -901,10 +4051,10 @@ EOF        allow_undefined=yes        ;;      esac -    libtool_args="$nonopt" +    libtool_args=$nonopt      base_compile="$nonopt $@" -    compile_command="$nonopt" -    finalize_command="$nonopt" +    compile_command=$nonopt +    finalize_command=$nonopt      compile_rpath=      finalize_rpath= @@ -919,6 +4069,7 @@ EOF      dllsearchpath=      lib_search_path=`pwd`      inst_prefix_dir= +    new_inherited_linker_flags=      avoid_version=no      dlfiles= @@ -947,29 +4098,46 @@ EOF      thread_safe=no      vinfo=      vinfo_number=no - +    weak_libs= +    single_module="${wl}-single_module"      func_infer_tag $base_compile      # We need to know -static, to get the right output filenames.      for arg      do        case $arg in -      -all-static | -static) -	if test "X$arg" = "X-all-static"; then +      -shared) +	test "$build_libtool_libs" != yes && \ +	  func_fatal_configuration "can not build a shared library" +	build_old_libs=no +	break +	;; +      -all-static | -static | -static-libtool-libs) +	case $arg in +	-all-static)  	  if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then -	    $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2 +	    func_warning "complete static linking is impossible in this configuration"  	  fi  	  if test -n "$link_static_flag"; then  	    dlopen_self=$dlopen_self_static  	  fi -	else +	  prefer_static_libs=yes +	  ;; +	-static)  	  if test -z "$pic_flag" && test -n "$link_static_flag"; then  	    dlopen_self=$dlopen_self_static  	  fi -	fi +	  prefer_static_libs=built +	  ;; +	-static-libtool-libs) +	  if test -z "$pic_flag" && test -n "$link_static_flag"; then +	    dlopen_self=$dlopen_self_static +	  fi +	  prefer_static_libs=yes +	  ;; +	esac  	build_libtool_libs=no  	build_old_libs=yes -	prefer_static_libs=yes  	break  	;;        esac @@ -982,20 +4150,16 @@ EOF      while test "$#" -gt 0; do        arg="$1"        shift -      case $arg in -      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") -	qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test -	;; -      *) qarg=$arg ;; -      esac -      libtool_args="$libtool_args $qarg" +      func_quote_for_eval "$arg" +      qarg=$func_quote_for_eval_unquoted_result +      func_append libtool_args " $func_quote_for_eval_result"        # If the previous option needs an argument, assign it.        if test -n "$prev"; then  	case $prev in  	output) -	  compile_command="$compile_command @OUTPUT@" -	  finalize_command="$finalize_command @OUTPUT@" +	  func_append compile_command " @OUTPUT@" +	  func_append finalize_command " @OUTPUT@"  	  ;;  	esac @@ -1003,8 +4167,8 @@ EOF  	dlfiles|dlprefiles)  	  if test "$preload" = no; then  	    # Add the symbol object into the linking commands. -	    compile_command="$compile_command @SYMFILE@" -	    finalize_command="$finalize_command @SYMFILE@" +	    func_append compile_command " @SYMFILE@" +	    func_append finalize_command " @SYMFILE@"  	    preload=yes  	  fi  	  case $arg in @@ -1042,10 +4206,8 @@ EOF  	  ;;  	expsyms)  	  export_symbols="$arg" -	  if test ! -f "$arg"; then -	    $echo "$modename: symbol file \`$arg' does not exist" -	    exit $EXIT_FAILURE -	  fi +	  test -f "$arg" \ +	    || func_fatal_error "symbol file \`$arg' does not exist"  	  prev=  	  continue  	  ;; @@ -1054,18 +4216,21 @@ EOF  	  prev=  	  continue  	  ;; -	inst_prefix) -	  inst_prefix_dir="$arg" -	  prev= -	  continue -	  ;; -	precious_regex) -	  precious_files_regex="$arg" +	framework) +	  case $host in +	    *-*-darwin*) +	      case "$deplibs " in +		*" $qarg.ltframework "*) ;; +		*) deplibs="$deplibs $qarg.ltframework" # this is fixed later +		   ;; +	      esac +	      ;; +	  esac  	  prev=  	  continue  	  ;; -	release) -	  release="-$arg" +	inst_prefix) +	  inst_prefix_dir="$arg"  	  prev=  	  continue  	  ;; @@ -1073,39 +4238,30 @@ EOF  	  if test -f "$arg"; then  	    save_arg=$arg  	    moreargs= -	    for fil in `cat $save_arg` +	    for fil in `cat "$save_arg"`  	    do  #	      moreargs="$moreargs $fil"  	      arg=$fil  	      # A libtool-controlled object.  	      # Check to see that this really is a libtool object. -	      if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then +	      if func_lalib_unsafe_p "$arg"; then  		pic_object=  		non_pic_object=  		# Read the .lo file -		# If there is no directory component, then add one. -		case $arg in -		*/* | *\\*) . $arg ;; -		*) . ./$arg ;; -		esac +		func_source "$arg" -		if test -z "$pic_object" || \ +		if test -z "$pic_object" ||  		   test -z "$non_pic_object" || -		   test "$pic_object" = none && \ +		   test "$pic_object" = none &&  		   test "$non_pic_object" = none; then -		  $echo "$modename: cannot find name of object for \`$arg'" 1>&2 -		  exit $EXIT_FAILURE +		  func_fatal_error "cannot find name of object for \`$arg'"  		fi  		# Extract subdirectory from the argument. -		xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` -		if test "X$xdir" = "X$arg"; then -		  xdir= -		else -		  xdir="$xdir/" -		fi +		func_dirname "$arg" "/" "" +		xdir="$func_dirname_result"  		if test "$pic_object" != none; then  		  # Prepend the subdirectory the object is found in. @@ -1130,7 +4286,7 @@ EOF  		  fi  		  # A PIC object. -		  libobjs="$libobjs $pic_object" +		  func_append libobjs " $pic_object"  		  arg="$pic_object"  		fi @@ -1140,49 +4296,56 @@ EOF  		  non_pic_object="$xdir$non_pic_object"  		  # A standard non-PIC object -		  non_pic_objects="$non_pic_objects $non_pic_object" +		  func_append non_pic_objects " $non_pic_object"  		  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" +		  func_append 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 $EXIT_FAILURE -		else -		  # Dry-run case. - +		if $opt_dry_run; then  		  # Extract subdirectory from the argument. -		  xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` -		  if test "X$xdir" = "X$arg"; then -		    xdir= -		  else -		    xdir="$xdir/" -		  fi - -		  pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` -		  non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` -		  libobjs="$libobjs $pic_object" -		  non_pic_objects="$non_pic_objects $non_pic_object" +		  func_dirname "$arg" "/" "" +		  xdir="$func_dirname_result" + +		  func_lo2o "$arg" +		  pic_object=$xdir$objdir/$func_lo2o_result +		  non_pic_object=$xdir$func_lo2o_result +		  func_append libobjs " $pic_object" +		  func_append non_pic_objects " $non_pic_object" +	        else +		  func_fatal_error "\`$arg' is not a valid libtool object"  		fi  	      fi  	    done  	  else -	    $echo "$modename: link input file \`$save_arg' does not exist" -	    exit $EXIT_FAILURE +	    func_fatal_error "link input file \`$arg' does not exist"  	  fi  	  arg=$save_arg  	  prev=  	  continue  	  ;; +	precious_regex) +	  precious_files_regex="$arg" +	  prev= +	  continue +	  ;; +	release) +	  release="-$arg" +	  prev= +	  continue +	  ;;  	rpath | xrpath)  	  # We need an absolute path.  	  case $arg in  	  [\\/]* | [A-Za-z]:[\\/]*) ;;  	  *) -	    $echo "$modename: only absolute run-paths are allowed" 1>&2 -	    exit $EXIT_FAILURE +	    func_fatal_error "only absolute run-paths are allowed"  	    ;;  	  esac  	  if test "$prev" = rpath; then @@ -1199,32 +4362,37 @@ EOF  	  prev=  	  continue  	  ;; -	xcompiler) -	  compiler_flags="$compiler_flags $qarg" +	shrext) +	  shrext_cmds="$arg"  	  prev= -	  compile_command="$compile_command $qarg" -	  finalize_command="$finalize_command $qarg"  	  continue  	  ;; -	xlinker) -	  linker_flags="$linker_flags $qarg" -	  compiler_flags="$compiler_flags $wl$qarg" +	weak) +	  weak_libs="$weak_libs $arg"  	  prev= -	  compile_command="$compile_command $wl$qarg" -	  finalize_command="$finalize_command $wl$qarg"  	  continue  	  ;;  	xcclinker)  	  linker_flags="$linker_flags $qarg"  	  compiler_flags="$compiler_flags $qarg"  	  prev= -	  compile_command="$compile_command $qarg" -	  finalize_command="$finalize_command $qarg" +	  func_append compile_command " $qarg" +	  func_append finalize_command " $qarg"  	  continue  	  ;; -	shrext) -  	  shrext_cmds="$arg" +	xcompiler) +	  compiler_flags="$compiler_flags $qarg" +	  prev= +	  func_append compile_command " $qarg" +	  func_append finalize_command " $qarg" +	  continue +	  ;; +	xlinker) +	  linker_flags="$linker_flags $qarg" +	  compiler_flags="$compiler_flags $wl$qarg"  	  prev= +	  func_append compile_command " $wl$qarg" +	  func_append finalize_command " $wl$qarg"  	  continue  	  ;;  	*) @@ -1240,16 +4408,16 @@ EOF        case $arg in        -all-static)  	if test -n "$link_static_flag"; then -	  compile_command="$compile_command $link_static_flag" -	  finalize_command="$finalize_command $link_static_flag" +	  # See comment for -static flag below, for more details. +	  func_append compile_command " $link_static_flag" +	  func_append finalize_command " $link_static_flag"  	fi  	continue  	;;        -allow-undefined)  	# FIXME: remove this flag sometime in the future. -	$echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 -	continue +	func_fatal_error "\`-allow-undefined' must not be used because it is the default"  	;;        -avoid-version) @@ -1274,8 +4442,7 @@ EOF        -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 $EXIT_FAILURE +	  func_fatal_error "more than one -exported-symbols argument is not allowed"  	fi  	if test "X$arg" = "X-export-symbols"; then  	  prev=expsyms @@ -1285,6 +4452,11 @@ EOF  	continue  	;; +      -framework) +	prev=framework +	continue +	;; +        -inst-prefix-dir)  	prev=inst_prefix  	continue @@ -1295,24 +4467,30 @@ EOF        -L[A-Z][A-Z]*:*)  	case $with_gcc/$host in  	no/*-*-irix* | /*-*-irix*) -	  compile_command="$compile_command $arg" -	  finalize_command="$finalize_command $arg" +	  func_append compile_command " $arg" +	  func_append finalize_command " $arg"  	  ;;  	esac  	continue  	;;        -L*) -	dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` +	func_stripname '-L' '' "$arg" +	dir=$func_stripname_result +	if test -z "$dir"; then +	  if test "$#" -gt 0; then +	    func_fatal_error "require no space between \`-L' and \`$1'" +	  else +	    func_fatal_error "need path for \`-L' option" +	  fi +	fi  	# We need an absolute path.  	case $dir in  	[\\/]* | [A-Za-z]:[\\/]*) ;;  	*)  	  absdir=`cd "$dir" && pwd` -	  if test -z "$absdir"; then -	    $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 -	    exit $EXIT_FAILURE -	  fi +	  test -z "$absdir" && \ +	    func_fatal_error "cannot determine absolute directory name of \`$dir'"  	  dir="$absdir"  	  ;;  	esac @@ -1324,11 +4502,18 @@ EOF  	  ;;  	esac  	case $host in -	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) +	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) +	  testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'`  	  case :$dllsearchpath: in  	  *":$dir:"*) ;; +	  ::) dllsearchpath=$dir;;  	  *) dllsearchpath="$dllsearchpath:$dir";;  	  esac +	  case :$dllsearchpath: in +	  *":$testbindir:"*) ;; +	  ::) dllsearchpath=$testbindir;; +	  *) dllsearchpath="$dllsearchpath:$testbindir";; +	  esac  	  ;;  	esac  	continue @@ -1337,26 +4522,35 @@ EOF        -l*)  	if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then  	  case $host in -	  *-*-cygwin* | *-*-pw32* | *-*-beos*) +	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc*)  	    # 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 -framework System" +	    deplibs="$deplibs System.ltframework"  	    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* | *-*-freebsd*) +	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)  	   # Do not include libc_r directly, use -pthread flag.  	   continue  	   ;; @@ -1366,41 +4560,35 @@ EOF  	continue  	;; -     -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) -	deplibs="$deplibs $arg" +      -module) +	module=yes  	continue  	;; -      -module) -	module=yes +      # Tru64 UNIX uses -model [arg] to determine the layout of C++ +      # classes, name mangling, and exception handling. +      # Darwin uses the -arch flag to determine output architecture. +      -model|-arch|-isysroot) +	compiler_flags="$compiler_flags $arg" +	func_append compile_command " $arg" +	func_append finalize_command " $arg" +	prev=xcompiler  	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*) -	# 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"` -	case $arg in -	*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") -	  arg="\"$arg\"" -	  ;; +      -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads) +	compiler_flags="$compiler_flags $arg" +	func_append compile_command " $arg" +	func_append finalize_command " $arg" +	case "$new_inherited_linker_flags " in +	    *" $arg "*) ;; +	    * ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;;  	esac -        compile_command="$compile_command $arg" -        finalize_command="$finalize_command $arg" -        if test "$with_gcc" = "yes" ; then -          compiler_flags="$compiler_flags $arg" -        fi -        continue -        ;; +	continue +	;; -      -shrext) -	prev=shrext +      -multi_module) +	single_module="${wl}-multi_module"  	continue  	;; @@ -1411,11 +4599,11 @@ EOF        -no-install)  	case $host in -	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) +	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)  	  # The PATH hackery in wrapper scripts is required on Windows -	  # in order for the loader to find any dlls it needs. -	  $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 -	  $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 +	  # and Darwin in order for the loader to find any dlls it needs. +	  func_warning "\`-no-install' is ignored for $host" +	  func_warning "assuming \`-no-fast-install' instead"  	  fast_install=no  	  ;;  	*) no_install=yes ;; @@ -1456,13 +4644,13 @@ EOF  	;;        -R*) -	dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` +	func_stripname '-R' '' "$arg" +	dir=$func_stripname_result  	# We need an absolute path.  	case $dir in  	[\\/]* | [A-Za-z]:[\\/]*) ;;  	*) -	  $echo "$modename: only absolute run-paths are allowed" 1>&2 -	  exit $EXIT_FAILURE +	  func_fatal_error "only absolute run-paths are allowed"  	  ;;  	esac  	case "$xrpath " in @@ -1472,7 +4660,17 @@ EOF  	continue  	;; -      -static) +      -shared) +	# The effects of -shared are defined in a previous loop. +	continue +	;; + +      -shrext) +	prev=shrext +	continue +	;; + +      -static | -static-libtool-libs)  	# The effects of -static are defined in a previous loop.  	# We used to do the same as -all-static on platforms that  	# didn't have a PIC flag, but the assumption that the effects @@ -1490,47 +4688,49 @@ EOF  	prev=vinfo  	continue  	;; +        -version-number)  	prev=vinfo  	vinfo_number=yes  	continue  	;; +      -weak) +        prev=weak +	continue +	;; +        -Wc,*) -	args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` +	func_stripname '-Wc,' '' "$arg" +	args=$func_stripname_result  	arg=  	save_ifs="$IFS"; IFS=','  	for flag in $args; do  	  IFS="$save_ifs" -	  case $flag in -	    *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") -	    flag="\"$flag\"" -	    ;; -	  esac -	  arg="$arg $wl$flag" -	  compiler_flags="$compiler_flags $flag" +          func_quote_for_eval "$flag" +	  arg="$arg $wl$func_quote_for_eval_result" +	  compiler_flags="$compiler_flags $func_quote_for_eval_result"  	done  	IFS="$save_ifs" -	arg=`$echo "X$arg" | $Xsed -e "s/^ //"` +	func_stripname ' ' '' "$arg" +	arg=$func_stripname_result  	;;        -Wl,*) -	args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` +	func_stripname '-Wl,' '' "$arg" +	args=$func_stripname_result  	arg=  	save_ifs="$IFS"; IFS=','  	for flag in $args; do  	  IFS="$save_ifs" -	  case $flag in -	    *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") -	    flag="\"$flag\"" -	    ;; -	  esac -	  arg="$arg $wl$flag" -	  compiler_flags="$compiler_flags $wl$flag" -	  linker_flags="$linker_flags $flag" +          func_quote_for_eval "$flag" +	  arg="$arg $wl$func_quote_for_eval_result" +	  compiler_flags="$compiler_flags $wl$func_quote_for_eval_result" +	  linker_flags="$linker_flags $func_quote_for_eval_result"  	done  	IFS="$save_ifs" -	arg=`$echo "X$arg" | $Xsed -e "s/^ //"` +	func_stripname ' ' '' "$arg" +	arg=$func_stripname_result  	;;        -Xcompiler) @@ -1548,16 +4748,36 @@ EOF  	continue  	;; +      # -msg_* for osf cc +      -msg_*) +	func_quote_for_eval "$arg" +	arg="$func_quote_for_eval_result" +	;; + +      # -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*, -t[45]*, -txscale* pass through architecture-specific +      # compiler args for GCC +      # -F/path gives path to uninstalled frameworks, gcc on darwin +      # -p, -pg, --coverage, -fprofile-* 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*| \ +      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*) +        func_quote_for_eval "$arg" +	arg="$func_quote_for_eval_result" +        func_append compile_command " $arg" +        func_append finalize_command " $arg" +        compiler_flags="$compiler_flags $arg" +        continue +        ;; +        # Some other compiler flag.        -* | +*) -	# 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"` -	case $arg in -	*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") -	  arg="\"$arg\"" -	  ;; -	esac +        func_quote_for_eval "$arg" +	arg="$func_quote_for_eval_result"  	;;        *.$objext) @@ -1569,32 +4789,23 @@ EOF  	# A libtool-controlled object.  	# Check to see that this really is a libtool object. -	if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then +	if func_lalib_unsafe_p "$arg"; then  	  pic_object=  	  non_pic_object=  	  # Read the .lo file -	  # If there is no directory component, then add one. -	  case $arg in -	  */* | *\\*) . $arg ;; -	  *) . ./$arg ;; -	  esac +	  func_source "$arg" -	  if test -z "$pic_object" || \ +	  if test -z "$pic_object" ||  	     test -z "$non_pic_object" || -	     test "$pic_object" = none && \ +	     test "$pic_object" = none &&  	     test "$non_pic_object" = none; then -	    $echo "$modename: cannot find name of object for \`$arg'" 1>&2 -	    exit $EXIT_FAILURE +	    func_fatal_error "cannot find name of object for \`$arg'"  	  fi  	  # Extract subdirectory from the argument. -	  xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` -	  if test "X$xdir" = "X$arg"; then -	    xdir= - 	  else -	    xdir="$xdir/" -	  fi +	  func_dirname "$arg" "/" "" +	  xdir="$func_dirname_result"  	  if test "$pic_object" != none; then  	    # Prepend the subdirectory the object is found in. @@ -1619,7 +4830,7 @@ EOF  	    fi  	    # A PIC object. -	    libobjs="$libobjs $pic_object" +	    func_append libobjs " $pic_object"  	    arg="$pic_object"  	  fi @@ -1629,31 +4840,30 @@ EOF  	    non_pic_object="$xdir$non_pic_object"  	    # A standard non-PIC object -	    non_pic_objects="$non_pic_objects $non_pic_object" +	    func_append non_pic_objects " $non_pic_object"  	    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" +	    func_append 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 $EXIT_FAILURE -	  else -	    # Dry-run case. - +	  if $opt_dry_run; then  	    # Extract subdirectory from the argument. -	    xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` -	    if test "X$xdir" = "X$arg"; then -	      xdir= -	    else -	      xdir="$xdir/" -	    fi - -	    pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` -	    non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` -	    libobjs="$libobjs $pic_object" -	    non_pic_objects="$non_pic_objects $non_pic_object" +	    func_dirname "$arg" "/" "" +	    xdir="$func_dirname_result" + +	    func_lo2o "$arg" +	    pic_object=$xdir$objdir/$func_lo2o_result +	    non_pic_object=$xdir$func_lo2o_result +	    func_append libobjs " $pic_object" +	    func_append non_pic_objects " $non_pic_object" +	  else +	    func_fatal_error "\`$arg' is not a valid libtool object"  	  fi  	fi  	;; @@ -1686,70 +4896,51 @@ EOF        *)  	# 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"` -	case $arg in -	*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"") -	  arg="\"$arg\"" -	  ;; -	esac +	func_quote_for_eval "$arg" +	arg="$func_quote_for_eval_result"  	;;        esac # arg        # Now actually substitute the argument into the commands.        if test -n "$arg"; then -	compile_command="$compile_command $arg" -	finalize_command="$finalize_command $arg" +	func_append compile_command " $arg" +	func_append finalize_command " $arg"        fi      done # argument parsing loop -    if test -n "$prev"; then -      $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 -      $echo "$help" 1>&2 -      exit $EXIT_FAILURE -    fi +    test -n "$prev" && \ +      func_fatal_help "the \`$prevarg' option requires an argument"      if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then        eval arg=\"$export_dynamic_flag_spec\" -      compile_command="$compile_command $arg" -      finalize_command="$finalize_command $arg" +      func_append compile_command " $arg" +      func_append finalize_command " $arg"      fi      oldlibs=      # calculate the name of the file, without its directory -    outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` +    func_basename "$output" +    outputname="$func_basename_result"      libobjs_save="$libobjs"      if test -n "$shlibpath_var"; then        # get the directories listed in $shlibpath_var -      eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` +      eval shlib_search_path=\`\$ECHO \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`      else        shlib_search_path=      fi      eval sys_lib_search_path=\"$sys_lib_search_path_spec\"      eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" -    output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` -    if test "X$output_objdir" = "X$output"; then -      output_objdir="$objdir" -    else -      output_objdir="$output_objdir/$objdir" -    fi +    func_dirname "$output" "/" "" +    output_objdir="$func_dirname_result$objdir"      # Create the object directory. -    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 -      fi -    fi +    func_mkdir_p "$output_objdir"      # Determine the type of output      case $output in      "") -      $echo "$modename: you must specify an output file" 1>&2 -      $echo "$help" 1>&2 -      exit $EXIT_FAILURE +      func_fatal_help "you must specify an output file"        ;;      *.$libext) linkmode=oldlib ;;      *.lo | *.$objext) linkmode=obj ;; @@ -1757,22 +4948,13 @@ EOF      *) linkmode=prog ;; # Anything else should be a program.      esac -    case $host in -    *cygwin* | *mingw* | *pw32*) -      # don't eliminate duplications in $postdeps and $predeps -      duplicate_compiler_generated_deps=yes -      ;; -    *) -      duplicate_compiler_generated_deps=$duplicate_deps -      ;; -    esac      specialdeplibs=      libs=      # Find all interdependent deplibs by searching for libraries      # that are linked more than once (e.g. -la -lb -la)      for deplib in $deplibs; do -      if test "X$duplicate_deps" = "Xyes" ; then +      if $opt_duplicate_deps ; then  	case "$libs " in  	*" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;  	esac @@ -1787,7 +4969,7 @@ EOF        # $postdeps and mark them as special (i.e., whose duplicates are        # not to be eliminated).        pre_post_deps= -      if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then +      if $opt_duplicate_compiler_generated_deps; then  	for pre_post_dep in $predeps $postdeps; do  	  case "$pre_post_deps " in  	  *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; @@ -1804,15 +4986,15 @@ EOF      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" +	passes="conv dlpreopen link"  	for file in $dlfiles $dlprefiles; do  	  case $file in  	  *.la) ;;  	  *) -	    $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 -	    exit $EXIT_FAILURE +	    func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file"  	    ;;  	  esac  	done @@ -1828,7 +5010,20 @@ EOF      *)  passes="conv"  	;;      esac +      for pass in $passes; do +      # The preopen pass in lib mode reverses $deplibs; put it back here +      # so that -L comes before libs that need it for instance... +      if test "$linkmode,$pass" = "lib,link"; then +	## FIXME: Find the place where the list is rebuilt in the wrong +	##        order, and fix it there properly +        tmp_deplibs= +	for deplib in $deplibs; do +	  tmp_deplibs="$deplib $tmp_deplibs" +	done +	deplibs="$tmp_deplibs" +      fi +        if test "$linkmode,$pass" = "lib,link" ||  	 test "$linkmode,$pass" = "prog,scan"; then  	libs="$deplibs" @@ -1844,35 +5039,65 @@ EOF  	  ;;  	esac        fi +      if test "$linkmode,$pass" = "lib,dlpreopen"; then +	# Collect and forward deplibs of preopened libtool libs +	for lib in $dlprefiles; do +	  # Ignore non-libtool-libs +	  dependency_libs= +	  case $lib in +	  *.la)	func_source "$lib" ;; +	  esac + +	  # Collect preopened libtool deplibs, except any this library +	  # has declared as weak libs +	  for deplib in $dependency_libs; do +            deplib_base=`$ECHO "X$deplib" | $Xsed -e "$basename"` +	    case " $weak_libs " in +	    *" $deplib_base "*) ;; +	    *) deplibs="$deplibs $deplib" ;; +	    esac +	  done +	done +	libs="$dlprefiles" +      fi        if test "$pass" = dlopen; then  	# Collect dlpreopened libraries  	save_deplibs="$deplibs"  	deplibs=        fi +        for deplib in $libs; do  	lib=  	found=no  	case $deplib in -	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) +	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)  	  if test "$linkmode,$pass" = "prog,link"; then  	    compile_deplibs="$deplib $compile_deplibs"  	    finalize_deplibs="$deplib $finalize_deplibs"  	  else -	    deplibs="$deplib $deplibs" +	    compiler_flags="$compiler_flags $deplib" +	    if test "$linkmode" = lib ; then +		case "$new_inherited_linker_flags " in +		    *" $deplib "*) ;; +		    * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;; +		esac +	    fi  	  fi  	  continue  	  ;;  	-l*)  	  if test "$linkmode" != lib && test "$linkmode" != prog; then -	    $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 +	    func_warning "\`-l' is ignored for archives/objects"  	    continue  	  fi -	  if test "$pass" = conv; then -	    deplibs="$deplib $deplibs" -	    continue +	  func_stripname '-l' '' "$deplib" +	  name=$func_stripname_result +	  if test "$linkmode" = lib; then +	    searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" +	  else +	    searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"  	  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 searchdir in $searchdirs; do  	    for search_ext in .la $std_shrext .so .a; do  	      # Search the libtool library  	      lib="$searchdir/lib${name}${search_ext}" @@ -1902,21 +5127,17 @@ EOF  	    if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then  	      case " $predeps $postdeps " in  	      *" $deplib "*) -		if (${SED} -e '2q' $lib | -                    grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then +		if func_lalib_p "$lib"; then  		  library_names=  		  old_library= -		  case $lib in -		  */* | *\\*) . $lib ;; -		  *) . ./$lib ;; -		  esac +		  func_source "$lib"  		  for l in $old_library $library_names; do  		    ll="$l"  		  done  		  if test "X$ll" = "X$old_library" ; then # only static version available  		    found=no -		    ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` -		    test "X$ladir" = "X$lib" && ladir="." +		    func_dirname "$lib" "" "." +		    ladir="$func_dirname_result"  		    lib=$ladir/$old_library  		    if test "$linkmode,$pass" = "prog,link"; then  		      compile_deplibs="$deplib $compile_deplibs" @@ -1928,19 +5149,35 @@ EOF  		    continue  		  fi  		fi -	        ;; +		;;  	      *) ;;  	      esac  	    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 +		case "$new_inherited_linker_flags " in +		    *" $deplib "*) ;; +		    * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;; +		esac +	    fi +	  fi +	  continue +	  ;;  	-L*)  	  case $linkmode in  	  lib)  	    deplibs="$deplib $deplibs"  	    test "$pass" = conv && continue  	    newdependency_libs="$deplib $newdependency_libs" -	    newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` +	    func_stripname '-L' '' "$deplib" +	    newlib_search_path="$newlib_search_path $func_stripname_result"  	    ;;  	  prog)  	    if test "$pass" = conv; then @@ -1953,17 +5190,19 @@ EOF  	      compile_deplibs="$deplib $compile_deplibs"  	      finalize_deplibs="$deplib $finalize_deplibs"  	    fi -	    newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` +	    func_stripname '-L' '' "$deplib" +	    newlib_search_path="$newlib_search_path $func_stripname_result"  	    ;;  	  *) -	    $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 +	    func_warning "\`-L' is ignored for archives/objects"  	    ;;  	  esac # linkmode  	  continue  	  ;; # -L  	-R*)  	  if test "$pass" = link; then -	    dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` +	    func_stripname '-R' '' "$deplib" +	    dir=$func_stripname_result  	    # Make sure the xrpath contains only unique directories.  	    case "$xrpath " in  	    *" $dir "*) ;; @@ -1981,20 +5220,41 @@ EOF  	  fi  	  case $linkmode in  	  lib) -	    if test "$deplibs_check_method" != pass_all; 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" -	      $echo "*** you link to this library.  But I can only do this if you have a" -	      $echo "*** shared version of the library, which you do not appear to have" -	      $echo "*** because the file extensions .$libext of this argument makes me believe" -	      $echo "*** that it is just a static archive that I should not used here." -	    else -	      $echo -	      $echo "*** Warning: Linking the shared library $output against the" -	      $echo "*** static library $deplib is not portable!" -	      deplibs="$deplib $deplibs" -	    fi +	    # Linking convenience modules into shared libraries is allowed, +	    # but linking other static libraries is non-portable. +	    case " $dlpreconveniencelibs " in +	    *" $deplib "*) ;; +	    *) +	      valid_a_lib=no +	      case $deplibs_check_method in +		match_pattern*) +		  set dummy $deplibs_check_method; shift +		  match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` +		  if eval "\$ECHO \"X$deplib\"" 2>/dev/null | $Xsed -e 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" +		$ECHO "*** you link to this library.  But I can only do this if you have a" +		$ECHO "*** shared version of the library, which you do not appear to have" +		$ECHO "*** because the file extensions .$libext of this argument makes me believe" +		$ECHO "*** that it is just a static archive that I should not use here." +	      else +		$ECHO +		$ECHO "*** Warning: Linking the shared library $output against the" +		$ECHO "*** static library $deplib is not portable!" +		deplibs="$deplib $deplibs" +	      fi +	      ;; +	    esac  	    continue  	    ;;  	  prog) @@ -2029,21 +5289,18 @@ EOF  	  continue  	  ;;  	esac # case $deplib +  	if test "$found" = yes || test -f "$lib"; then :  	else -	  $echo "$modename: cannot find the library \`$lib'" 1>&2 -	  exit $EXIT_FAILURE +	  func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"  	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 $EXIT_FAILURE -	fi +	func_lalib_unsafe_p "$lib" \ +	  || func_fatal_error "\`$lib' is not a valid libtool archive" -	ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` -	test "X$ladir" = "X$lib" && ladir="." +	func_dirname "$lib" "" "." +	ladir="$func_dirname_result"  	dlname=  	dlopen= @@ -2051,17 +5308,28 @@ EOF  	libdir=  	library_names=  	old_library= +	inherited_linker_flags=  	# If the library was installed with an old release of libtool,  	# it will not redefine variables installed, or shouldnotlink  	installed=yes  	shouldnotlink=no +	avoidtemprpath= -	# Read the .la file -	case $lib in -	*/* | *\\*) . $lib ;; -	*) . ./$lib ;; -	esac +	# Read the .la file +	func_source "$lib" + +	# Convert "-framework foo" to "foo.ltframework" +	if test -n "$inherited_linker_flags"; then +	  tmp_inherited_linker_flags=`$ECHO "X$inherited_linker_flags" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'` +	  for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do +	    case " $new_inherited_linker_flags " in +	      *" $tmp_inherited_linker_flag "*) ;; +	      *) new_inherited_linker_flags="$new_inherited_linker_flags $tmp_inherited_linker_flag";; +	    esac +	  done +	fi +	dependency_libs=`$ECHO "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`  	if test "$linkmode,$pass" = "lib,link" ||  	   test "$linkmode,$pass" = "prog,scan" ||  	   { test "$linkmode" != prog && test "$linkmode" != lib; }; then @@ -2074,8 +5342,7 @@ EOF  	  deplibs="$lib $deplibs"  	  if test -z "$libdir"; then  	    if test -z "$old_library"; then -	      $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 -	      exit $EXIT_FAILURE +	      func_fatal_error "cannot find name of link library for \`$lib'"  	    fi  	    # It is a libtool convenience library, so add in its objects.  	    convenience="$convenience $ladir/$objdir/$old_library" @@ -2083,16 +5350,15 @@ EOF  	    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 +	      if $opt_duplicate_deps ; 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 $EXIT_FAILURE +	    func_fatal_error "\`$lib' is not a convenience library"  	  fi  	  continue  	fi # $pass = conv @@ -2104,15 +5370,13 @@ EOF  	  linklib="$l"  	done  	if test -z "$linklib"; then -	  $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 -	  exit $EXIT_FAILURE +	  func_fatal_error "cannot find name of link library for \`$lib'"  	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 $EXIT_FAILURE +	    func_fatal_error "cannot -dlopen a convenience library: \`$lib'"  	  fi  	  if test -z "$dlname" ||  	     test "$dlopen_support" != yes || @@ -2134,18 +5398,19 @@ EOF  	*)  	  abs_ladir=`cd "$ladir" && pwd`  	  if test -z "$abs_ladir"; then -	    $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 -	    $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 +	    func_warning "cannot determine absolute directory name of \`$ladir'" +	    func_warning "passing it literally to the linker, although it might fail"  	    abs_ladir="$ladir"  	  fi  	  ;;  	esac -	laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` +	func_basename "$lib" +	laname="$func_basename_result"  	# Find the relevant object directory and library name.  	if test "X$installed" = Xyes; then  	  if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then -	    $echo "$modename: warning: library \`$lib' was moved." 1>&2 +	    func_warning "library \`$lib' was moved."  	    dir="$ladir"  	    absdir="$abs_ladir"  	    libdir="$abs_ladir" @@ -2153,24 +5418,36 @@ EOF  	    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//'` +	func_stripname 'lib' '.la' "$laname" +	name=$func_stripname_result  	# This library was specified with -dlpreopen.  	if test "$pass" = dlpreopen; then -	  if test -z "$libdir"; then -	    $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 -	    exit $EXIT_FAILURE +	  if test -z "$libdir" && test "$linkmode" = prog; then +	    func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"  	  fi  	  # Prefer using a static library (so that no silly _DYNAMIC symbols  	  # are required to link).  	  if test -n "$old_library"; then  	    newdlprefiles="$newdlprefiles $dir/$old_library" +	    # Keep a list of preopened convenience libraries to check +	    # that they are being used correctly in the link pass. +	    test -z "$libdir" && \ +		dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library"  	  # Otherwise, use the dlname, so that lt_dlopen finds it.  	  elif test -n "$dlname"; then  	    newdlprefiles="$newdlprefiles $dir/$dlname" @@ -2206,7 +5483,9 @@ EOF  	  tmp_libs=  	  for deplib in $dependency_libs; do  	    case $deplib in -	    -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test +	    -L*) func_stripname '-L' '' "$deplib" +	         newlib_search_path="$newlib_search_path $func_stripname_result" +		 ;;  	    esac  	    # Need to link against all dependency_libs?  	    if test "$linkalldeplibs" = yes; then @@ -2216,7 +5495,7 @@ EOF  	      # or/and link against static libraries  	      newdependency_libs="$deplib $newdependency_libs"  	    fi -	    if test "X$duplicate_deps" = "Xyes" ; then +	    if $opt_duplicate_deps ; then  	      case "$tmp_libs " in  	      *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;  	      esac @@ -2228,14 +5507,15 @@ EOF  	if test "$linkmode,$pass" = "prog,link"; then  	  if test -n "$library_names" && -	     { test "$prefer_static_libs" = no || test -z "$old_library"; }; then +	     { { test "$prefer_static_libs" = no || +	         test "$prefer_static_libs,$installed" = "built,yes"; } || +	       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" ;; +	      case "$temp_rpath:" in +	      *"$absdir:"*) ;; +	      *) temp_rpath="$temp_rpath$absdir:" ;;  	      esac  	    fi @@ -2272,24 +5552,44 @@ EOF  	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 -	  if test "$installed" = no; then -	    notinst_deplibs="$notinst_deplibs $lib" -	    need_relink=yes -	  fi +	   { test "$use_static_libs" = no || test -z "$old_library"; }; then +	  case $host in +	  *cygwin* | *mingw* | *cegcc*) +	      # No point in relinking DLLs because paths are not encoded +	      notinst_deplibs="$notinst_deplibs $lib" +	      need_relink=no +	    ;; +	  *) +	    if test "$installed" = no; then +	      notinst_deplibs="$notinst_deplibs $lib" +	      need_relink=yes +	    fi +	    ;; +	  esac  	  # 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 -	    $echo +	  # Warn about portability, can't link against -module's on some +	  # systems (darwin).  Don't bleat about dlopened modules though! +	  dlopenmodule="" +	  for dlpremoduletest in $dlprefiles; do +	    if test "X$dlpremoduletest" = "X$lib"; then +	      dlopenmodule="$dlpremoduletest" +	      break +	    fi +	  done +	  if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then +	    $ECHO  	    if test "$linkmode" = prog; then -	      $echo "*** Warning: Linking the executable $output against the loadable module" +	      $ECHO "*** Warning: Linking the executable $output against the loadable module"  	    else -	      $echo "*** Warning: Linking the shared library $output against the loadable module" +	      $ECHO "*** Warning: Linking the shared library $output against the loadable module"  	    fi -	    $echo "*** $linklib is not portable!" +	    $ECHO "*** $linklib is not portable!"  	  fi  	  if test "$linkmode" = lib &&  	     test "$hardcode_into_libs" = yes; then @@ -2319,17 +5619,19 @@ EOF  	  if test -n "$old_archive_from_expsyms_cmds"; then  	    # figure out the soname  	    set dummy $library_names -	    realname="$2" -	    shift; shift -	    libname=`eval \\$echo \"$libname_spec\"` +	    shift +	    realname="$1" +	    shift +	    libname=`eval "\\$ECHO \"$libname_spec\""`  	    # use dlname if we got it. it's perfectly good, no?  	    if test -n "$dlname"; then  	      soname="$dlname"  	    elif test -n "$soname_spec"; then  	      # bleh windows  	      case $host in -	      *cygwin* | mingw*) -		major=`expr $current - $age` +	      *cygwin* | mingw* | *cegcc*) +	        func_arith $current - $age +		major=$func_arith_result  		versuffix="-$major"  		;;  	      esac @@ -2340,36 +5642,22 @@ EOF  	    # Make a new name for the extract_expsyms_cmds to use  	    soroot="$soname" -	    soname=`$echo $soroot | ${SED} -e 's/^.*\///'` -	    newlib="libimp-`$echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a" +	    func_basename "$soroot" +	    soname="$func_basename_result" +	    func_stripname 'lib' '.dll' "$soname" +	    newlib=libimp-$func_stripname_result.a  	    # If the library has no export list, then create one now  	    if test -f "$output_objdir/$soname-def"; then :  	    else -	      $show "extracting exported symbol list from \`$soname'" -	      save_ifs="$IFS"; IFS='~' -	      cmds=$extract_expsyms_cmds -	      for cmd in $cmds; do -		IFS="$save_ifs" -		eval cmd=\"$cmd\" -		$show "$cmd" -		$run eval "$cmd" || exit $? -	      done -	      IFS="$save_ifs" +	      func_verbose "extracting exported symbol list from \`$soname'" +	      func_execute_cmds "$extract_expsyms_cmds" 'exit $?'  	    fi  	    # Create $newlib  	    if test -f "$output_objdir/$newlib"; then :; else -	      $show "generating import library for \`$soname'" -	      save_ifs="$IFS"; IFS='~' -	      cmds=$old_archive_from_expsyms_cmds -	      for cmd in $cmds; do -		IFS="$save_ifs" -		eval cmd=\"$cmd\" -		$show "$cmd" -		$run eval "$cmd" || exit $? -	      done -	      IFS="$save_ifs" +	      func_verbose "generating import library for \`$soname'" +	      func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'  	    fi  	    # make sure the library variables are pointing to the new library  	    dir=$output_objdir @@ -2386,18 +5674,26 @@ EOF  	      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 | $EGREP "bundle" >/dev/null ; then -		      $echo "** Warning, lib $linklib is a module, not a shared library" -		      if test -z "$old_library" ; then -		        $echo -		        $echo "** And there doesn't seem to be a static archive available" -		        $echo "** The link will probably fail, sorry" -		      else -		        add="$dir/$old_library" +		    # if the lib is a (non-dlopened) module then we can not +		    # link against it, someone is ignoring the earlier warnings +		    if /usr/bin/file -L $add 2> /dev/null | +			 $GREP ": [^:]* bundle" >/dev/null ; then +		      if test "X$dlopenmodule" != "X$lib"; then +			$ECHO "*** Warning: lib $linklib is a module, not a shared library" +			if test -z "$old_library" ; then +			  $ECHO +			  $ECHO "*** And there doesn't seem to be a static archive available" +			  $ECHO "*** The link will probably fail, sorry" +			else +			  add="$dir/$old_library" +			fi +		      elif test -n "$old_library"; then +			add="$dir/$old_library"  		      fi  		    fi  		esac @@ -2415,13 +5711,14 @@ EOF  	      fi  	      ;;  	    relink) -	      if test "$hardcode_direct" = yes; then +	      if test "$hardcode_direct" = yes && +	         test "$hardcode_direct_absolute" = no; then  		add="$dir/$linklib"  	      elif test "$hardcode_minus_L" = yes; then  		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="$add_dir -L$inst_prefix_dir$libdir"  		      ;; @@ -2439,8 +5736,7 @@ EOF  	    esac  	    if test "$lib_linked" != yes; then -	      $echo "$modename: configuration error: unsupported hardcode properties" -	      exit $EXIT_FAILURE +	      func_fatal_configuration "unsupported hardcode properties"  	    fi  	    if test -n "$add_shlibpath"; then @@ -2455,8 +5751,8 @@ EOF  	    else  	      test -n "$add_dir" && deplibs="$add_dir $deplibs"  	      test -n "$add" && deplibs="$add $deplibs" -	      if test "$hardcode_direct" != yes && \ -		 test "$hardcode_minus_L" != yes && \ +	      if test "$hardcode_direct" != yes && +		 test "$hardcode_minus_L" != yes &&  		 test "$hardcode_shlibpath_var" = yes; then  		case :$finalize_shlibpath: in  		*":$libdir:"*) ;; @@ -2471,7 +5767,8 @@ EOF  	    add_dir=  	    add=  	    # Finalize command for both is simple: just hardcode it. -	    if test "$hardcode_direct" = yes; then +	    if test "$hardcode_direct" = yes && +	       test "$hardcode_direct_absolute" = no; then  	      add="$libdir/$linklib"  	    elif test "$hardcode_minus_L" = yes; then  	      add_dir="-L$libdir" @@ -2485,16 +5782,16 @@ EOF  	    elif test "$hardcode_automatic" = yes; then  	      if test -n "$inst_prefix_dir" &&  		 test -f "$inst_prefix_dir$libdir/$linklib" ; then -	        add="$inst_prefix_dir$libdir/$linklib" +		add="$inst_prefix_dir$libdir/$linklib"  	      else -	        add="$libdir/$linklib" +		add="$libdir/$linklib"  	      fi  	    else  	      # We cannot seem to hardcode it, guess we'll fake it.  	      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="$add_dir -L$inst_prefix_dir$libdir"  		    ;; @@ -2531,21 +5828,21 @@ EOF  	    # Just print a warning and add the library to dependency_libs so  	    # that the program can be linked against the static library. -	    $echo -	    $echo "*** Warning: This system can not link to static lib archive $lib." -	    $echo "*** I have the capability to make that library automatically link in when" -	    $echo "*** you link to this library.  But I can only do this if you have a" -	    $echo "*** shared version of the library, which you do not appear to have." +	    $ECHO +	    $ECHO "*** Warning: This system can not link to static lib archive $lib." +	    $ECHO "*** I have the capability to make that library automatically link in when" +	    $ECHO "*** you link to this library.  But I can only do this if you have a" +	    $ECHO "*** shared version of the library, which you do not appear to have."  	    if test "$module" = yes; then -	      $echo "*** But as you try to build a module library, libtool will still create " -	      $echo "*** a static module, that should work as long as the dlopening application" -	      $echo "*** is linked with the -dlopen flag to resolve symbols at runtime." +	      $ECHO "*** But as you try to build a module library, libtool will still create " +	      $ECHO "*** a static module, that should work as long as the dlopening application" +	      $ECHO "*** is linked with the -dlopen flag to resolve symbols at runtime."  	      if test -z "$global_symbol_pipe"; then -		$echo -		$echo "*** However, this would only work if libtool was able to extract symbol" -		$echo "*** lists from a program, using \`nm' or equivalent, but libtool could" -		$echo "*** not find such a program.  So, this module is probably useless." -		$echo "*** \`nm' from GNU binutils and a full rebuild may help." +		$ECHO +		$ECHO "*** However, this would only work if libtool was able to extract symbol" +		$ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could" +		$ECHO "*** not find such a program.  So, this module is probably useless." +		$ECHO "*** \`nm' from GNU binutils and a full rebuild may help."  	      fi  	      if test "$build_old_libs" = no; then  		build_libtool_libs=module @@ -2555,8 +5852,6 @@ EOF  	      fi  	    fi  	  else -	    convenience="$convenience $dir/$old_library" -	    old_convenience="$old_convenience $dir/$old_library"  	    deplibs="$dir/$old_library $deplibs"  	    link_static=yes  	  fi @@ -2571,7 +5866,8 @@ EOF  	    temp_deplibs=  	    for libdir in $dependency_libs; do  	      case $libdir in -	      -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` +	      -R*) func_stripname '-R' '' "$libdir" +	           temp_xrpath=$func_stripname_result  		   case " $xrpath " in  		   *" $temp_xrpath "*) ;;  		   *) xrpath="$xrpath $temp_xrpath";; @@ -2589,7 +5885,7 @@ EOF  	  tmp_libs=  	  for deplib in $dependency_libs; do  	    newdependency_libs="$deplib $newdependency_libs" -	    if test "X$duplicate_deps" = "Xyes" ; then +	    if $opt_duplicate_deps ; then  	      case "$tmp_libs " in  	      *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;  	      esac @@ -2600,91 +5896,75 @@ EOF  	  if test "$link_all_deplibs" != no; then  	    # Add the search paths of all dependency libraries  	    for deplib in $dependency_libs; do +	      path=  	      case $deplib in  	      -L*) path="$deplib" ;;  	      *.la) -		dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` -		test "X$dir" = "X$deplib" && dir="." +	        func_dirname "$deplib" "" "." +		dir="$func_dirname_result"  		# We need an absolute path.  		case $dir in  		[\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;  		*)  		  absdir=`cd "$dir" && pwd`  		  if test -z "$absdir"; then -		    $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 +		    func_warning "cannot determine absolute directory name of \`$dir'"  		    absdir="$dir"  		  fi  		  ;;  		esac -		if grep "^installed=no" $deplib > /dev/null; then -		  path="$absdir/$objdir" -		else -		  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 $EXIT_FAILURE -		  fi -		  if test "$absdir" != "$libdir"; then -		    $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 -		  fi -		  path="$absdir" -		fi -		depdepl= +		if $GREP "^installed=no" $deplib > /dev/null; then  		case $host in  		*-*-darwin*) -		  # we do not want to link against static libs, -		  # but need to link against shared +		  depdepl=  		  eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`  		  if test -n "$deplibrary_names" ; then  		    for tmp in $deplibrary_names ; do  		      depdepl=$tmp  		    done -		    if test -f "$path/$depdepl" ; then -		      depdepl="$path/$depdepl" +		    if test -f "$absdir/$objdir/$depdepl" ; then +		      depdepl="$absdir/$objdir/$depdepl" +		      darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` +                      if test -z "$darwin_install_name"; then +                          darwin_install_name=`${OTOOL64} -L $depdepl  | awk '{if (NR == 2) {print $1;exit}}'` +                      fi +		      compiler_flags="$compiler_flags ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" +		      linker_flags="$linker_flags -dylib_file ${darwin_install_name}:${depdepl}" +		      path=  		    fi -		    # do not add paths which are already there -		    case " $newlib_search_path " in -		    *" $path "*) ;; -		    *) newlib_search_path="$newlib_search_path $path";; -		    esac  		  fi -		  path=""  		  ;;  		*) -		  path="-L$path" +		  path="-L$absdir/$objdir"  		  ;;  		esac +		else +		  eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` +		  test -z "$libdir" && \ +		    func_fatal_error "\`$deplib' is not a valid libtool archive" +		  test "$absdir" != "$libdir" && \ +		    func_warning "\`$deplib' seems to be moved" + +		  path="-L$absdir" +		fi  		;; -	      -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="" -		  ;; -		*) continue ;; -		esac -		;; -	      *) continue ;; -	      esac -	      case " $deplibs " in -	      *" $depdepl "*) ;; -	      *) deplibs="$depdepl $deplibs" ;;  	      esac  	      case " $deplibs " in  	      *" $path "*) ;; -	      *) deplibs="$deplibs $path" ;; +	      *) deplibs="$path $deplibs" ;;  	      esac  	    done  	  fi # link_all_deplibs != no  	fi # linkmode = lib        done # for deplib in $libs +      if test "$pass" = link; then +	if test "$linkmode" = "prog"; then +	  compile_deplibs="$new_inherited_linker_flags $compile_deplibs" +	  finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" +	else +	  compiler_flags="$compiler_flags "`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` +	fi +      fi        dependency_libs="$newdependency_libs"        if test "$pass" = dlpreopen; then  	# Link the dlpreopened libraries before other libraries @@ -2783,38 +6063,36 @@ EOF      done # for pass      if test "$linkmode" = prog; then        dlfiles="$newdlfiles" +    fi +    if test "$linkmode" = prog || test "$linkmode" = lib; then        dlprefiles="$newdlprefiles"      fi      case $linkmode in      oldlib) -      if test -n "$deplibs"; then -	$echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 -      fi -        if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then -	$echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 +	func_warning "\`-dlopen' is ignored for archives"        fi -      if test -n "$rpath"; then -	$echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 -      fi +      case " $deplibs" in +      *\ -l* | *\ -L*) +	func_warning "\`-l' and \`-L' are ignored for archives" ;; +      esac -      if test -n "$xrpath"; then -	$echo "$modename: warning: \`-R' is ignored for archives" 1>&2 -      fi +      test -n "$rpath" && \ +	func_warning "\`-rpath' is ignored for archives" -      if test -n "$vinfo"; then -	$echo "$modename: warning: \`-version-info/-version-number' is ignored for archives" 1>&2 -      fi +      test -n "$xrpath" && \ +	func_warning "\`-R' is ignored for archives" -      if test -n "$release"; then -	$echo "$modename: warning: \`-release' is ignored for archives" 1>&2 -      fi +      test -n "$vinfo" && \ +	func_warning "\`-version-info/-version-number' is ignored for archives" -      if test -n "$export_symbols" || test -n "$export_symbols_regex"; then -	$echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 -      fi +      test -n "$release" && \ +	func_warning "\`-release' is ignored for archives" + +      test -n "$export_symbols$export_symbols_regex" && \ +	func_warning "\`-export-symbols' is ignored for archives"        # Now set the variables for building old libraries.        build_libtool_libs=no @@ -2826,48 +6104,48 @@ EOF        # Make sure we only generate libraries of the form `libNAME.la'.        case $outputname in        lib*) -	name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` +	func_stripname 'lib' '.la' "$outputname" +	name=$func_stripname_result  	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 $EXIT_FAILURE -	fi +	test "$module" = no && \ +	  func_fatal_help "libtool library \`$output' must begin with \`lib'" +  	if test "$need_lib_prefix" != no; then  	  # Add the "lib" prefix for modules if required -	  name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` +	  func_stripname '' '.la' "$outputname" +	  name=$func_stripname_result  	  eval shared_ext=\"$shrext_cmds\"  	  eval libname=\"$libname_spec\"  	else -	  libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` +	  func_stripname '' '.la' "$outputname" +	  libname=$func_stripname_result  	fi  	;;        esac        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 $EXIT_FAILURE +	  func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"  	else -	  $echo -	  $echo "*** Warning: Linking the shared library $output against the non-libtool" -	  $echo "*** objects $objs is not portable!" +	  $ECHO +	  $ECHO "*** Warning: Linking the shared library $output against the non-libtool" +	  $ECHO "*** objects $objs is not portable!"  	  libobjs="$libobjs $objs"  	fi        fi -      if test "$dlself" != no; then -	$echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 -      fi +      test "$dlself" != no && \ +	func_warning "\`-dlopen self' is ignored for libtool libraries"        set dummy $rpath -      if test "$#" -gt 2; then -	$echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 -      fi -      install_libdir="$2" +      shift +      test "$#" -gt 1 && \ +	func_warning "ignoring multiple \`-rpath's for a libtool library" + +      install_libdir="$1"        oldlibs=        if test -z "$rpath"; then @@ -2881,25 +6159,21 @@ EOF  	  build_old_libs=yes  	fi -	if test -n "$vinfo"; then -	  $echo "$modename: warning: \`-version-info/-version-number' is ignored for convenience libraries" 1>&2 -	fi +	test -n "$vinfo" && \ +	  func_warning "\`-version-info/-version-number' is ignored for convenience libraries" -	if test -n "$release"; then -	  $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 -	fi +	test -n "$release" && \ +	  func_warning "\`-release' is ignored for convenience libraries"        else  	# Parse the version information argument.  	save_ifs="$IFS"; IFS=':'  	set dummy $vinfo 0 0 0 +	shift  	IFS="$save_ifs" -	if test -n "$8"; then -	  $echo "$modename: too many parameters to \`-version-info'" 1>&2 -	  $echo "$help" 1>&2 -	  exit $EXIT_FAILURE -	fi +	test -n "$7" && \ +	  func_fatal_help "too many parameters to \`-version-info'"  	# convert absolute version numbers to libtool ages  	# this retains compatibility with .la files and attempts @@ -2907,9 +6181,9 @@ EOF  	case $vinfo_number in  	yes) -	  number_major="$2" -	  number_minor="$3" -	  number_revision="$4" +	  number_major="$1" +	  number_minor="$2" +	  number_revision="$3"  	  #  	  # There are really only two kinds -- those that  	  # use the current revision as the major version @@ -2918,8 +6192,9 @@ EOF  	  # which has an extra 1 added just for fun  	  #  	  case $version_type in -	  darwin|linux|osf|windows) -	    current=`expr $number_major + $number_minor` +	  darwin|linux|osf|windows|none) +	    func_arith $number_major + $number_minor +	    current=$func_arith_result  	    age="$number_minor"  	    revision="$number_revision"  	    ;; @@ -2929,51 +6204,52 @@ EOF  	    age="0"  	    ;;  	  irix|nonstopux) -	    current=`expr $number_major + $number_minor - 1` +	    func_arith $number_major + $number_minor +	    current=$func_arith_result  	    age="$number_minor"  	    revision="$number_minor" +	    lt_irix_increment=no +	    ;; +	  *) +	    func_fatal_configuration "$modename: unknown library version type \`$version_type'"  	    ;;  	  esac  	  ;;  	no) -	  current="$2" -	  revision="$3" -	  age="$4" +	  current="$1" +	  revision="$2" +	  age="$3"  	  ;;  	esac  	# 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: \`$vinfo' is not valid version information" 1>&2 -	  exit $EXIT_FAILURE +	  func_error "CURRENT \`$current' must be a nonnegative integer" +	  func_fatal_error "\`$vinfo' is not valid version information"  	  ;;  	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: \`$vinfo' is not valid version information" 1>&2 -	  exit $EXIT_FAILURE +	  func_error "REVISION \`$revision' must be a nonnegative integer" +	  func_fatal_error "\`$vinfo' is not valid version information"  	  ;;  	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: \`$vinfo' is not valid version information" 1>&2 -	  exit $EXIT_FAILURE +	  func_error "AGE \`$age' must be a nonnegative integer" +	  func_fatal_error "\`$vinfo' is not valid version information"  	  ;;  	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 $EXIT_FAILURE +	  func_error "AGE \`$age' is greater than the current interface number \`$current'" +	  func_fatal_error "\`$vinfo' is not valid version information"  	fi  	# Calculate the version variables. @@ -2986,10 +6262,13 @@ EOF  	darwin)  	  # Like Linux, but with the current version available in  	  # verstring for coding it into the library header -	  major=.`expr $current - $age` +	  func_arith $current - $age +	  major=.$func_arith_result  	  versuffix="$major.$age.$revision"  	  # Darwin ld doesn't like 0 for these options... -	  minor_current=`expr $current + 1` +	  func_arith $current + 1 +	  minor_current=$func_arith_result +	  xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"  	  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"  	  ;; @@ -3000,11 +6279,16 @@ EOF  	freebsd-elf)  	  major=".$current" -	  versuffix=".$current"; +	  versuffix=".$current"  	  ;;  	irix | nonstopux) -	  major=`expr $current - $age + 1` +	  if test "X$lt_irix_increment" = "Xno"; then +	    func_arith $current - $age +	  else +	    func_arith $current - $age + 1 +	  fi +	  major=$func_arith_result  	  case $version_type in  	    nonstopux) verstring_prefix=nonstopux ;; @@ -3015,8 +6299,10 @@ EOF  	  # Add in all the interfaces that we are compatible with.  	  loop=$revision  	  while test "$loop" -ne 0; do -	    iface=`expr $revision - $loop` -	    loop=`expr $loop - 1` +	    func_arith $revision - $loop +	    iface=$func_arith_result +	    func_arith $loop - 1 +	    loop=$func_arith_result  	    verstring="$verstring_prefix$major.$iface:$verstring"  	  done @@ -3026,20 +6312,24 @@ EOF  	  ;;  	linux) -	  major=.`expr $current - $age` +	  func_arith $current - $age +	  major=.$func_arith_result  	  versuffix="$major.$age.$revision"  	  ;;  	osf) -	  major=.`expr $current - $age` +	  func_arith $current - $age +	  major=.$func_arith_result  	  versuffix=".$current.$age.$revision"  	  verstring="$current.$age.$revision"  	  # Add in all the interfaces that we are compatible with.  	  loop=$age  	  while test "$loop" -ne 0; do -	    iface=`expr $current - $loop` -	    loop=`expr $loop - 1` +	    func_arith $current - $loop +	    iface=$func_arith_result +	    func_arith $loop - 1 +	    loop=$func_arith_result  	    verstring="$verstring:${iface}.0"  	  done @@ -3047,6 +6337,11 @@ EOF  	  verstring="$verstring:${current}.0"  	  ;; +	qnx) +	  major=".$current" +	  versuffix=".$current" +	  ;; +  	sunos)  	  major=".$current"  	  versuffix=".$current.$revision" @@ -3055,14 +6350,13 @@ EOF  	windows)  	  # Use '-' rather than '.', since we only want one  	  # extension on DOS 8.3 filesystems. -	  major=`expr $current - $age` +	  func_arith $current - $age +	  major=$func_arith_result  	  versuffix="-$major"  	  ;;  	*) -	  $echo "$modename: unknown library version type \`$version_type'" 1>&2 -	  $echo "Fatal configuration error.  See the $PACKAGE docs for more information." 1>&2 -	  exit $EXIT_FAILURE +	  func_fatal_configuration "unknown library version type \`$version_type'"  	  ;;  	esac @@ -3096,7 +6390,7 @@ EOF  	# Check to see if the archive will have undefined symbols.  	if test "$allow_undefined" = yes; then  	  if test "$allow_undefined_flag" = unsupported; then -	    $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 +	    func_warning "undefined symbols not allowed in $host shared libraries"  	    build_libtool_libs=no  	    build_old_libs=yes  	  fi @@ -3104,21 +6398,26 @@ EOF  	  # Don't allow undefined symbols.  	  allow_undefined_flag="$no_undefined_flag"  	fi +        fi +      func_generate_dlsyms "$libname" "$libname" "yes" +      libobjs="$libobjs $symfileobj" +      test "X$libobjs" = "X " && libobjs= +        if test "$mode" != relink; then  	# Remove our outputs, but don't remove object files since they  	# may have been created when compiling PIC objects.  	removelist= -	tempremovelist=`$echo "$output_objdir/*"` +	tempremovelist=`$ECHO "$output_objdir/*"`  	for p in $tempremovelist; do  	  case $p in -	    *.$objext) +	    *.$objext | *.gcno)  	       ;;  	    $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 +		 if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 +		 then  		   continue  		 fi  	       fi @@ -3127,10 +6426,8 @@ EOF  	    *) ;;  	  esac  	done -	if test -n "$removelist"; then -	  $show "${rm}r $removelist" -	  $run ${rm}r $removelist -	fi +	test -n "$removelist" && \ +	  func_show_eval "${RM}r \$removelist"        fi        # Now set the variables for building old libraries. @@ -3138,15 +6435,15 @@ EOF  	oldlibs="$oldlibs $output_objdir/$libname.$libext"  	# Transform .lo files to .o files. -	oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` +	oldobjs="$objs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`        fi        # 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'` -      done +      #for path in $notinst_path; do +      #	lib_search_path=`$ECHO "X$lib_search_path " | $Xsed -e "s% $path % %g"` +      #	deplibs=`$ECHO "X$deplibs " | $Xsed -e "s% -L$path % %g"` +      #	dependency_libs=`$ECHO "X$dependency_libs " | $Xsed -e "s% -L$path % %g"` +      #done        if test -n "$xrpath"; then  	# If the user specified any rpath flags, then add them. @@ -3186,21 +6483,26 @@ EOF        if test "$build_libtool_libs" = yes; then  	if test -n "$rpath"; then  	  case $host in -	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) +	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc*)  	    # these systems don't actually have a c library (as such)!  	    ;;  	  *-*-rhapsody* | *-*-darwin1.[012])  	    # Rhapsody C library is in the System framework -	    deplibs="$deplibs -framework System" +	    deplibs="$deplibs System.ltframework"  	    ;;  	  *-*-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.  	    if test "$build_libtool_need_lc" = "yes"; then  	      deplibs="$deplibs -lc" @@ -3237,18 +6539,18 @@ EOF  	  # limits. Maybe even breaks it.  We compile a program, linking it  	  # against the deplibs as a proxy for the library.  Then we can check  	  # whether they linked in statically or dynamically with ldd. -	  $rm conftest.c +	  $opt_dry_run || $RM conftest.c  	  cat > conftest.c <<EOF  	  int main() { return 0; }  EOF -	  $rm conftest -	  $LTCC -o conftest conftest.c $deplibs -	  if test "$?" -eq 0 ; then +	  $opt_dry_run || $RM conftest +	  if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then  	    ldd_output=`ldd conftest`  	    for i in $deplibs; do -	      name="`expr $i : '-l\(.*\)'`" -	      # If $name is empty we are operating on a -L argument. -              if test "$name" != "" && test "$name" -ne "0"; then +	      case $i in +	      -l*) +		func_stripname -l '' "$i" +		name=$func_stripname_result  		if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then  		  case " $predeps $postdeps " in  		  *" $i "*) @@ -3256,40 +6558,41 @@ EOF  		    i=""  		    ;;  		  esac -	        fi +		fi  		if test -n "$i" ; then -		  libname=`eval \\$echo \"$libname_spec\"` -		  deplib_matches=`eval \\$echo \"$library_names_spec\"` -		  set dummy $deplib_matches -		  deplib_match=$2 +		  libname=`eval "\\$ECHO \"$libname_spec\""` +		  deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` +		  set dummy $deplib_matches; shift +		  deplib_match=$1  		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then  		    newdeplibs="$newdeplibs $i"  		  else  		    droppeddeps=yes -		    $echo -		    $echo "*** Warning: dynamic linker does not accept needed library $i." -		    $echo "*** I have the capability to make that library automatically link in when" -		    $echo "*** you link to this library.  But I can only do this if you have a" -		    $echo "*** shared version of the library, which I believe you do not have" -		    $echo "*** because a test_compile did reveal that the linker did not use it for" -		    $echo "*** its dynamic dependency list that programs get resolved with at runtime." +		    $ECHO +		    $ECHO "*** Warning: dynamic linker does not accept needed library $i." +		    $ECHO "*** I have the capability to make that library automatically link in when" +		    $ECHO "*** you link to this library.  But I can only do this if you have a" +		    $ECHO "*** shared version of the library, which I believe you do not have" +		    $ECHO "*** because a test_compile did reveal that the linker did not use it for" +		    $ECHO "*** its dynamic dependency list that programs get resolved with at runtime."  		  fi  		fi -	      else +		;; +	      *)  		newdeplibs="$newdeplibs $i" -	      fi +		;; +	      esac  	    done  	  else  	    # 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\(.*\)'`" -	      # 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 -		# Did it work? -		if test "$?" -eq 0 ; then +	      case $i in +	      -l*) +		func_stripname -l '' "$i" +		name=$func_stripname_result +		$opt_dry_run || $RM conftest +		if $LTCC $LTCFLAGS -o conftest conftest.c $i; then  		  ldd_output=`ldd conftest`  		  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then  		    case " $predeps $postdeps " in @@ -3300,44 +6603,47 @@ EOF  		    esac  		  fi  		  if test -n "$i" ; then -		    libname=`eval \\$echo \"$libname_spec\"` -		    deplib_matches=`eval \\$echo \"$library_names_spec\"` -		    set dummy $deplib_matches -		    deplib_match=$2 +		    libname=`eval "\\$ECHO \"$libname_spec\""` +		    deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` +		    set dummy $deplib_matches; shift +		    deplib_match=$1  		    if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then  		      newdeplibs="$newdeplibs $i"  		    else  		      droppeddeps=yes -		      $echo -		      $echo "*** Warning: dynamic linker does not accept needed library $i." -		      $echo "*** I have the capability to make that library automatically link in when" -		      $echo "*** you link to this library.  But I can only do this if you have a" -		      $echo "*** shared version of the library, which you do not appear to have" -		      $echo "*** because a test_compile did reveal that the linker did not use this one" -		      $echo "*** as a dynamic dependency that programs can get resolved with at runtime." +		      $ECHO +		      $ECHO "*** Warning: dynamic linker does not accept needed library $i." +		      $ECHO "*** I have the capability to make that library automatically link in when" +		      $ECHO "*** you link to this library.  But I can only do this if you have a" +		      $ECHO "*** shared version of the library, which you do not appear to have" +		      $ECHO "*** because a test_compile did reveal that the linker did not use this one" +		      $ECHO "*** as a dynamic dependency that programs can get resolved with at runtime."  		    fi  		  fi  		else  		  droppeddeps=yes -		  $echo -		  $echo "*** Warning!  Library $i is needed by this library but I was not able to" -		  $echo "***  make it link in!  You will probably need to install it or some" -		  $echo "*** library that it depends on before this library will be fully" -		  $echo "*** functional.  Installing it before continuing would be even better." +		  $ECHO +		  $ECHO "*** Warning!  Library $i is needed by this library but I was not able to" +		  $ECHO "*** make it link in!  You will probably need to install it or some" +		  $ECHO "*** library that it depends on before this library will be fully" +		  $ECHO "*** functional.  Installing it before continuing would be even better."  		fi -	      else +		;; +	      *)  		newdeplibs="$newdeplibs $i" -	      fi +		;; +	      esac  	    done  	  fi  	  ;;  	file_magic*) -	  set dummy $deplibs_check_method -	  file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` +	  set dummy $deplibs_check_method; shift +	  file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`  	  for a_deplib in $deplibs; do -	    name="`expr $a_deplib : '-l\(.*\)'`" -	    # If $name is empty we are operating on a -L argument. -            if test "$name" != "" && test  "$name" != "0"; then +	    case $a_deplib in +	    -l*) +	      func_stripname -l '' "$a_deplib" +	      name=$func_stripname_result  	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then  		case " $predeps $postdeps " in  		*" $a_deplib "*) @@ -3347,13 +6653,13 @@ EOF  		esac  	      fi  	      if test -n "$a_deplib" ; then -		libname=`eval \\$echo \"$libname_spec\"` +		libname=`eval "\\$ECHO \"$libname_spec\""`  		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do  		  potential_libs=`ls $i/$libname[.-]* 2>/dev/null`  		  for potent_lib in $potential_libs; do  		      # Follow soft links. -		      if ls -lLd "$potent_lib" 2>/dev/null \ -			 | grep " -> " >/dev/null; then +		      if ls -lLd "$potent_lib" 2>/dev/null | +			 $GREP " -> " >/dev/null; then  			continue  		      fi  		      # The statement above tries to avoid entering an @@ -3366,12 +6672,12 @@ EOF  			potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`  			case $potliblink in  			[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; -			*) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; +			*) potlib=`$ECHO "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;  			esac  		      done -		      if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ -			 | ${SED} 10q \ -			 | $EGREP "$file_magic_regex" > /dev/null; then +		      if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | +			 $SED -e 10q | +			 $EGREP "$file_magic_regex" > /dev/null; then  			newdeplibs="$newdeplibs $a_deplib"  			a_deplib=""  			break 2 @@ -3381,32 +6687,35 @@ EOF  	      fi  	      if test -n "$a_deplib" ; then  		droppeddeps=yes -		$echo -		$echo "*** Warning: linker path does not have real file for library $a_deplib." -		$echo "*** I have the capability to make that library automatically link in when" -		$echo "*** you link to this library.  But I can only do this if you have a" -		$echo "*** shared version of the library, which you do not appear to have" -		$echo "*** because I did check the linker path looking for a file starting" +		$ECHO +		$ECHO "*** Warning: linker path does not have real file for library $a_deplib." +		$ECHO "*** I have the capability to make that library automatically link in when" +		$ECHO "*** you link to this library.  But I can only do this if you have a" +		$ECHO "*** shared version of the library, which you do not appear to have" +		$ECHO "*** because I did check the linker path looking for a file starting"  		if test -z "$potlib" ; then -		  $echo "*** with $libname but no candidates were found. (...for file magic test)" +		  $ECHO "*** with $libname but no candidates were found. (...for file magic test)"  		else -		  $echo "*** with $libname and none of the candidates passed a file format test" -		  $echo "*** using a file magic. Last file checked: $potlib" +		  $ECHO "*** with $libname and none of the candidates passed a file format test" +		  $ECHO "*** using a file magic. Last file checked: $potlib"  		fi  	      fi -	    else +	      ;; +	    *)  	      # Add a -L argument.  	      newdeplibs="$newdeplibs $a_deplib" -	    fi +	      ;; +	    esac  	  done # Gone through all deplibs.  	  ;;  	match_pattern*) -	  set dummy $deplibs_check_method -	  match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` +	  set dummy $deplibs_check_method; shift +	  match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`  	  for a_deplib in $deplibs; do -	    name="`expr $a_deplib : '-l\(.*\)'`" -	    # If $name is empty we are operating on a -L argument. -	    if test -n "$name" && test "$name" != "0"; then +	    case $a_deplib in +	    -l*) +	      func_stripname -l '' "$a_deplib" +	      name=$func_stripname_result  	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then  		case " $predeps $postdeps " in  		*" $a_deplib "*) @@ -3416,14 +6725,13 @@ EOF  		esac  	      fi  	      if test -n "$a_deplib" ; then -		libname=`eval \\$echo \"$libname_spec\"` +		libname=`eval "\\$ECHO \"$libname_spec\""`  		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do  		  potential_libs=`ls $i/$libname[.-]* 2>/dev/null`  		  for potent_lib in $potential_libs; do  		    potlib="$potent_lib" # see symlink-check above in file_magic test -		    if eval $echo \"$potent_lib\" 2>/dev/null \ -		        | ${SED} 10q \ -		        | $EGREP "$match_pattern_regex" > /dev/null; then +		    if eval "\$ECHO \"X$potent_lib\"" 2>/dev/null | $Xsed -e 10q | \ +		       $EGREP "$match_pattern_regex" > /dev/null; then  		      newdeplibs="$newdeplibs $a_deplib"  		      a_deplib=""  		      break 2 @@ -3433,44 +6741,46 @@ EOF  	      fi  	      if test -n "$a_deplib" ; then  		droppeddeps=yes -		$echo -		$echo "*** Warning: linker path does not have real file for library $a_deplib." -		$echo "*** I have the capability to make that library automatically link in when" -		$echo "*** you link to this library.  But I can only do this if you have a" -		$echo "*** shared version of the library, which you do not appear to have" -		$echo "*** because I did check the linker path looking for a file starting" +		$ECHO +		$ECHO "*** Warning: linker path does not have real file for library $a_deplib." +		$ECHO "*** I have the capability to make that library automatically link in when" +		$ECHO "*** you link to this library.  But I can only do this if you have a" +		$ECHO "*** shared version of the library, which you do not appear to have" +		$ECHO "*** because I did check the linker path looking for a file starting"  		if test -z "$potlib" ; then -		  $echo "*** with $libname but no candidates were found. (...for regex pattern test)" +		  $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"  		else -		  $echo "*** with $libname and none of the candidates passed a file format test" -		  $echo "*** using a regex pattern. Last file checked: $potlib" +		  $ECHO "*** with $libname and none of the candidates passed a file format test" +		  $ECHO "*** using a regex pattern. Last file checked: $potlib"  		fi  	      fi -	    else +	      ;; +	    *)  	      # Add a -L argument.  	      newdeplibs="$newdeplibs $a_deplib" -	    fi +	      ;; +	    esac  	  done # Gone through all deplibs.  	  ;;  	none | unknown | *)  	  newdeplibs="" -	  tmp_deplibs=`$echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ -	    -e 's/ -[LR][^ ]*//g'` +	  tmp_deplibs=`$ECHO "X $deplibs" | $Xsed \ +	      -e 's/ -lc$//' -e 's/ -[LR][^ ]*//g'`  	  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then  	    for i in $predeps $postdeps ; do  	      # can't use Xsed below, because $i might contain '/' -	      tmp_deplibs=`$echo "X $tmp_deplibs" | ${SED} -e "1s,^X,," -e "s,$i,,"` +	      tmp_deplibs=`$ECHO "X $tmp_deplibs" | $Xsed -e "s,$i,,"`  	    done  	  fi -	  if $echo "X $tmp_deplibs" | $Xsed -e 's/[ 	]//g' \ -	    | grep . >/dev/null; then -	    $echo +	  if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[	 ]//g' | +	     $GREP . >/dev/null; then +	    $ECHO  	    if test "X$deplibs_check_method" = "Xnone"; then -	      $echo "*** Warning: inter-library dependencies are not supported in this platform." +	      $ECHO "*** Warning: inter-library dependencies are not supported in this platform."  	    else -	      $echo "*** Warning: inter-library dependencies are not known to be supported." +	      $ECHO "*** Warning: inter-library dependencies are not known to be supported."  	    fi -	    $echo "*** All declared inter-library dependencies are being dropped." +	    $ECHO "*** All declared inter-library dependencies are being dropped."  	    droppeddeps=yes  	  fi  	  ;; @@ -3483,24 +6793,24 @@ EOF  	case $host in  	*-*-rhapsody* | *-*-darwin1.[012]) -	  # On Rhapsody replace the C library is the System framework -	  newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'` +	  # On Rhapsody replace the C library with the System framework +	  newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'`  	  ;;  	esac  	if test "$droppeddeps" = yes; then  	  if test "$module" = yes; then -	    $echo -	    $echo "*** Warning: libtool could not satisfy all declared inter-library" -	    $echo "*** dependencies of module $libname.  Therefore, libtool will create" -	    $echo "*** a static module, that should work as long as the dlopening" -	    $echo "*** application is linked with the -dlopen flag." +	    $ECHO +	    $ECHO "*** Warning: libtool could not satisfy all declared inter-library" +	    $ECHO "*** dependencies of module $libname.  Therefore, libtool will create" +	    $ECHO "*** a static module, that should work as long as the dlopening" +	    $ECHO "*** application is linked with the -dlopen flag."  	    if test -z "$global_symbol_pipe"; then -	      $echo -	      $echo "*** However, this would only work if libtool was able to extract symbol" -	      $echo "*** lists from a program, using \`nm' or equivalent, but libtool could" -	      $echo "*** not find such a program.  So, this module is probably useless." -	      $echo "*** \`nm' from GNU binutils and a full rebuild may help." +	      $ECHO +	      $ECHO "*** However, this would only work if libtool was able to extract symbol" +	      $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could" +	      $ECHO "*** not find such a program.  So, this module is probably useless." +	      $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."  	    fi  	    if test "$build_old_libs" = no; then  	      oldlibs="$output_objdir/$libname.$libext" @@ -3510,16 +6820,16 @@ EOF  	      build_libtool_libs=no  	    fi  	  else -	    $echo "*** The inter-library dependencies that have been dropped here will be" -	    $echo "*** automatically added whenever a program is linked with this library" -	    $echo "*** or is declared to -dlopen it." +	    $ECHO "*** The inter-library dependencies that have been dropped here will be" +	    $ECHO "*** automatically added whenever a program is linked with this library" +	    $ECHO "*** or is declared to -dlopen it."  	    if test "$allow_undefined" = no; then -	      $echo -	      $echo "*** Since this library must not contain undefined symbols," -	      $echo "*** because either the platform does not support them or" -	      $echo "*** it was explicitly requested with -no-undefined," -	      $echo "*** libtool will only create a static version of it." +	      $ECHO +	      $ECHO "*** Since this library must not contain undefined symbols," +	      $ECHO "*** because either the platform does not support them or" +	      $ECHO "*** it was explicitly requested with -no-undefined," +	      $ECHO "*** libtool will only create a static version of it."  	      if test "$build_old_libs" = no; then  		oldlibs="$output_objdir/$libname.$libext"  		build_libtool_libs=module @@ -3533,6 +6843,41 @@ EOF  	# Done checking deplibs!  	deplibs=$newdeplibs        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'` +	  new_inherited_linker_flags=`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` +	  deplibs=`$ECHO "X $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 " $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= @@ -3604,8 +6949,9 @@ EOF  	eval shared_ext=\"$shrext_cmds\"  	eval library_names=\"$library_names_spec\"  	set dummy $library_names -	realname="$2" -	shift; shift +	shift +	realname="$1" +	shift  	if test -n "$soname_spec"; then  	  eval soname=\"$soname_spec\" @@ -3617,125 +6963,126 @@ EOF  	fi  	lib="$output_objdir/$realname" +	linknames=  	for link  	do  	  linknames="$linknames $link"  	done  	# Use standard objects if they are pic -	test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` +	test -z "$pic_flag" && libobjs=`$ECHO "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` +	test "X$libobjs" = "X " && libobjs= + +	delfiles= +	if test -n "$export_symbols" && test -n "$include_expsyms"; then +	  $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" +	  export_symbols="$output_objdir/$libname.uexp" +	  delfiles="$delfiles $export_symbols" +	fi + +	orig_export_symbols= +	case $host_os in +	cygwin* | mingw* | cegcc*) +	  if test -n "$export_symbols" && test -z "$export_symbols_regex"; then +	    # exporting using user supplied symfile +	    if test "x`$SED 1q $export_symbols`" != xEXPORTS; then +	      # and it's NOT already a .def file. Must figure out +	      # which of the given symbols are data symbols and tag +	      # them as such. So, trigger use of export_symbols_cmds. +	      # export_symbols gets reassigned inside the "prepare +	      # the list of exported symbols" if statement, so the +	      # include_expsyms logic still works. +	      orig_export_symbols="$export_symbols" +	      export_symbols= +	      always_export_symbols=yes +	    fi +	  fi +	  ;; +	esac  	# Prepare the list of exported symbols  	if test -z "$export_symbols"; then  	  if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then -	    $show "generating symbol list for \`$libname.la'" +	    func_verbose "generating symbol list for \`$libname.la'"  	    export_symbols="$output_objdir/$libname.exp" -	    $run $rm $export_symbols +	    $opt_dry_run || $RM $export_symbols  	    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" -	        $run eval "$cmd" || exit $? -	        skipped_export=false +	      func_len " $cmd" +	      len=$func_len_result +	      if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then +		func_show_eval "$cmd" 'exit $?' +		skipped_export=false  	      else -	        # The command line is too long to execute in one step. -	        $show "using reloadable object file for export list..." -	        skipped_export=: +		# The command line is too long to execute in one step. +		func_verbose "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" -	    if test -n "$export_symbols_regex"; then -	      $show "$EGREP -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" -	      $run eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' -	      $show "$mv \"${export_symbols}T\" \"$export_symbols\"" -	      $run eval '$mv "${export_symbols}T" "$export_symbols"' +	    if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then +	      func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' +	      func_show_eval '$MV "${export_symbols}T" "$export_symbols"'  	    fi  	  fi  	fi  	if test -n "$export_symbols" && test -n "$include_expsyms"; then -	  $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' +	  tmp_export_symbols="$export_symbols" +	  test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" +	  $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"' +	fi + +	if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then +	  # The given exports_symbols file has to be filtered, so filter it. +	  func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" +	  # FIXME: $output_objdir/$libname.filter potentially contains lots of +	  # 's' commands which not all seds can handle. GNU sed should be fine +	  # though. Also, the filter scales superlinearly with the number of +	  # global variables. join(1) would be nice here, but unfortunately +	  # isn't a blessed tool. +	  $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter +	  delfiles="$delfiles $export_symbols $output_objdir/$libname.filter" +	  export_symbols=$output_objdir/$libname.def +	  $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols  	fi  	tmp_deplibs=  	for test_deplib in $deplibs; do -		case " $convenience " in -		*" $test_deplib "*) ;; -		*) -			tmp_deplibs="$tmp_deplibs $test_deplib" -			;; -		esac +	  case " $convenience " in +	  *" $test_deplib "*) ;; +	  *) +	    tmp_deplibs="$tmp_deplibs $test_deplib" +	    ;; +	  esac  	done  	deplibs="$tmp_deplibs"  	if test -n "$convenience"; then +	  if test -n "$whole_archive_flag_spec" && +	    test "$compiler_needs_object" = yes && +	    test -z "$libobjs"; then +	    # extract the archives, so we have objects to list. +	    # TODO: could optimize this to just extract one archive. +	    whole_archive_flag_spec= +	  fi  	  if test -n "$whole_archive_flag_spec"; then  	    save_libobjs=$libobjs  	    eval libobjs=\"\$libobjs $whole_archive_flag_spec\" +	    test "X$libobjs" = "X " && libobjs=  	  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" +	    test "X$libobjs" = "X " && libobjs=  	  fi  	fi @@ -3746,7 +7093,7 @@ EOF  	# Make a backup of the uninstalled library when relinking  	if test "$mode" = relink; then -	  $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? +	  $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?  	fi  	# Do each of the archive commands. @@ -3759,21 +7106,24 @@ EOF  	    cmds=$module_cmds  	  fi  	else -	if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then -	  eval test_cmds=\"$archive_expsym_cmds\" -	  cmds=$archive_expsym_cmds -	else -	  eval test_cmds=\"$archive_cmds\" -	  cmds=$archive_cmds +	  if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then +	    eval test_cmds=\"$archive_expsym_cmds\" +	    cmds=$archive_expsym_cmds +	  else +	    eval test_cmds=\"$archive_cmds\" +	    cmds=$archive_cmds  	  fi  	fi -	if test "X$skipped_export" != "X:" && len=`expr "X$test_cmds" : ".*"` && -	   test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then +	if test "X$skipped_export" != "X:" && +	   func_len " $test_cmds" && +	   len=$func_len_result && +	   test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then  	  :  	else -	  # The command line is too long to link in one step, link piecewise. -	  $echo "creating reloadable object files..." +	  # The command line is too long to link in one step, link piecewise +	  # or, if using GNU ld and skipped_export is not :, use a linker +	  # script.  	  # Save the value of $output and $libobjs because we want to  	  # use them later.  If we have whole_archive_flag_spec, we @@ -3787,76 +7137,162 @@ EOF  	    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.  	  test_cmds=  	  concat_cmds=  	  objlist= -	  delfiles=  	  last_robj=  	  k=1 -	  output=$output_objdir/$save_output-${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" : ".*"` && -		 test "$len" -le "$max_cmd_len"; }; then -	      objlist="$objlist $obj" + +	  if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then +	    output=${output_objdir}/${output_la}.lnkscript +	    func_verbose "creating GNU ld script: $output" +	    $ECHO 'INPUT (' > $output +	    for obj in $save_libobjs +	    do +	      $ECHO "$obj" >> $output +	    done +	    $ECHO ')' >> $output +	    delfiles="$delfiles $output" +	  elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then +	    output=${output_objdir}/${output_la}.lnk +	    func_verbose "creating linker input file list: $output" +	    : > $output +	    set x $save_libobjs +	    shift +	    firstobj= +	    if test "$compiler_needs_object" = yes; then +	      firstobj="$1 " +	      shift +	    fi +	    for obj +	    do +	      $ECHO "$obj" >> $output +	    done +	    delfiles="$delfiles $output" +	    output=$firstobj\"$file_list_spec$output\" +	  else +	    if test -n "$save_libobjs"; then +	      func_verbose "creating reloadable object files..." +	      output=$output_objdir/$output_la-${k}.$objext +	      eval test_cmds=\"$reload_cmds\" +	      func_len " $test_cmds" +	      len0=$func_len_result +	      len=$len0 + +	      # Loop over the list of objects to be linked. +	      for obj in $save_libobjs +	      do +		func_len " $obj" +		func_arith $len + $func_len_result +		len=$func_arith_result +		if test "X$objlist" = X || +		   test "$len" -lt "$max_cmd_len"; then +		  func_append objlist " $obj" +		else +		  # The command $test_cmds is almost too long, add a +		  # command to the queue. +		  if test "$k" -eq 1 ; then +		    # The first file doesn't have a previous command to add. +		    eval concat_cmds=\"$reload_cmds $objlist $last_robj\" +		  else +		    # All subsequent reloadable object files will link in +		    # the last one created. +		    eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj~\$RM $last_robj\" +		  fi +		  last_robj=$output_objdir/$output_la-${k}.$objext +		  func_arith $k + 1 +		  k=$func_arith_result +		  output=$output_objdir/$output_la-${k}.$objext +		  objlist=$obj +		  func_len " $last_robj" +		  func_arith $len0 + $func_len_result +		  len=$func_arith_result +		fi +	      done +	      # Handle the remaining objects by creating one last +	      # reloadable object file.  All subsequent reloadable object +	      # files will link in the last one created. +	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~ +	      eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" +	      if test -n "$last_robj"; then +	        eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" +	      fi +	      delfiles="$delfiles $output" +  	    else -	      # The command $test_cmds is almost too long, add a -	      # command to the queue. -	      if test "$k" -eq 1 ; then -		# The first file doesn't have a previous command to add. -		eval concat_cmds=\"$reload_cmds $objlist $last_robj\" -	      else -		# All subsequent reloadable object files will link in -		# the last one created. -		eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" +	      output= +	    fi + +	    if ${skipped_export-false}; then +	      func_verbose "generating symbol list for \`$libname.la'" +	      export_symbols="$output_objdir/$libname.exp" +	      $opt_dry_run || $RM $export_symbols +	      libobjs=$output +	      # Append the command to create the export file. +	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~ +	      eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" +	      if test -n "$last_robj"; then +		eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"  	      fi -	      last_robj=$output_objdir/$save_output-${k}.$objext -	      k=`expr $k + 1` -	      output=$output_objdir/$save_output-${k}.$objext -	      objlist=$obj -	      len=1  	    fi -	  done -	  # Handle the remaining objects by creating one last -	  # reloadable object file.  All subsequent reloadable object -	  # files will link in the last one created. -	  test -z "$concat_cmds" || concat_cmds=$concat_cmds~ -	  eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" - -	  if ${skipped_export-false}; then -	    $show "generating symbol list for \`$libname.la'" -	    export_symbols="$output_objdir/$libname.exp" -	    $run $rm $export_symbols -	    libobjs=$output -	    # Append the command to create the export file. -	    eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\" -          fi - -	  # Set up a command to remove the reloadale 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" -	  done -	  $echo "creating a temporary reloadable object file: $output" +	    test -n "$save_libobjs" && +	      func_verbose "creating a temporary reloadable object file: $output" + +	    # Loop through the commands generated above and execute them. +	    save_ifs="$IFS"; IFS='~' +	    for cmd in $concat_cmds; do +	      IFS="$save_ifs" +	      $opt_silent || { +		  func_quote_for_expand "$cmd" +		  eval "func_echo $func_quote_for_expand_result" +	      } +	      $opt_dry_run || eval "$cmd" || { +		lt_exit=$? + +		# Restore the uninstalled library and exit +		if test "$mode" = relink; then +		  ( cd "$output_objdir" && \ +		    $RM "${realname}T" && \ +		    $MV "${realname}U" "$realname" ) +		fi -	  # Loop through the commands generated above and execute them. -	  save_ifs="$IFS"; IFS='~' -	  for cmd in $concat_cmds; do +		exit $lt_exit +	      } +	    done  	    IFS="$save_ifs" -	    $show "$cmd" -	    $run eval "$cmd" || exit $? -	  done -	  IFS="$save_ifs" + +	    if test -n "$export_symbols_regex" && ${skipped_export-false}; then +	      func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' +	      func_show_eval '$MV "${export_symbols}T" "$export_symbols"' +	    fi +	  fi + +          if ${skipped_export-false}; then +	    if test -n "$export_symbols" && test -n "$include_expsyms"; then +	      tmp_export_symbols="$export_symbols" +	      test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" +	      $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"' +	    fi + +	    if test -n "$orig_export_symbols"; then +	      # The given exports_symbols file has to be filtered, so filter it. +	      func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" +	      # FIXME: $output_objdir/$libname.filter potentially contains lots of +	      # 's' commands which not all seds can handle. GNU sed should be fine +	      # though. Also, the filter scales superlinearly with the number of +	      # global variables. join(1) would be nice here, but unfortunately +	      # isn't a blessed tool. +	      $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter +	      delfiles="$delfiles $export_symbols $output_objdir/$libname.filter" +	      export_symbols=$output_objdir/$libname.def +	      $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols +	    fi +	  fi  	  libobjs=$output  	  # Restore the value of output. @@ -3864,6 +7300,7 @@ EOF  	  if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then  	    eval libobjs=\"\$libobjs $whole_archive_flag_spec\" +	    test "X$libobjs" = "X " && libobjs=  	  fi  	  # Expand the library linking commands again to reset the  	  # value of $libobjs for piecewise linking. @@ -3876,37 +7313,69 @@ EOF  	      cmds=$module_cmds  	    fi  	  else -	  if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then -	    cmds=$archive_expsym_cmds -	  else -	    cmds=$archive_cmds +	    if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then +	      cmds=$archive_expsym_cmds +	    else +	      cmds=$archive_cmds  	    fi  	  fi +	fi -	  # Append the command to remove the reloadable object files -	  # to the just-reset $cmds. -	  eval cmds=\"\$cmds~\$rm $delfiles\" +	if test -n "$delfiles"; then +	  # Append the command to remove temporary files to $cmds. +	  eval cmds=\"\$cmds~\$RM $delfiles\"  	fi + +	# Add any objects from preloaded convenience libraries +	if test -n "$dlprefiles"; then +	  gentop="$output_objdir/${outputname}x" +	  generated="$generated $gentop" + +	  func_extract_archives $gentop $dlprefiles +	  libobjs="$libobjs $func_extract_archives_result" +	  test "X$libobjs" = "X " && libobjs= +	fi +  	save_ifs="$IFS"; IFS='~'  	for cmd in $cmds; do  	  IFS="$save_ifs"  	  eval cmd=\"$cmd\" -	  $show "$cmd" -	  $run eval "$cmd" || exit $? +	  $opt_silent || { +	    func_quote_for_expand "$cmd" +	    eval "func_echo $func_quote_for_expand_result" +	  } +	  $opt_dry_run || eval "$cmd" || { +	    lt_exit=$? + +	    # Restore the uninstalled library and exit +	    if test "$mode" = relink; then +	      ( 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 $? +	  $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? + +	  if test -n "$convenience"; then +	    if test -z "$whole_archive_flag_spec"; then +	      func_show_eval '${RM}r "$gentop"' +	    fi +	  fi +  	  exit $EXIT_SUCCESS  	fi  	# Create links to the real library.  	for linkname in $linknames; do  	  if test "$realname" != "$linkname"; then -	    $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" -	    $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? +	    func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?'  	  fi  	done @@ -3919,38 +7388,35 @@ EOF        ;;      obj) -      if test -n "$deplibs"; then -	$echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 -      fi -        if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then -	$echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 +	func_warning "\`-dlopen' is ignored for objects"        fi -      if test -n "$rpath"; then -	$echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 -      fi +      case " $deplibs" in +      *\ -l* | *\ -L*) +	func_warning "\`-l' and \`-L' are ignored for objects" ;; +      esac -      if test -n "$xrpath"; then -	$echo "$modename: warning: \`-R' is ignored for objects" 1>&2 -      fi +      test -n "$rpath" && \ +	func_warning "\`-rpath' is ignored for objects" -      if test -n "$vinfo"; then -	$echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 -      fi +      test -n "$xrpath" && \ +	func_warning "\`-R' is ignored for objects" -      if test -n "$release"; then -	$echo "$modename: warning: \`-release' is ignored for objects" 1>&2 -      fi +      test -n "$vinfo" && \ +	func_warning "\`-version-info' is ignored for objects" + +      test -n "$release" && \ +	func_warning "\`-release' is ignored for objects"        case $output in        *.lo) -	if test -n "$objs$old_deplibs"; then -	  $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 -	  exit $EXIT_FAILURE -	fi -	libobj="$output" -	obj=`$echo "X$output" | $Xsed -e "$lo2o"` +	test -n "$objs$old_deplibs" && \ +	  func_fatal_error "cannot build library object \`$output' from non-libtool objects" + +	libobj=$output +	func_lo2o "$libobj" +	obj=$func_lo2o_result  	;;        *)  	libobj= @@ -3959,7 +7425,7 @@ EOF        esac        # Delete the old objects. -      $run $rm $obj $libobj +      $opt_dry_run || $RM $obj $libobj        # Objects from convenience libraries.  This assumes        # single-version convenience libraries.  Whenever we create @@ -3968,94 +7434,33 @@ EOF        reload_conv_objs=        gentop=        # reload_cmds runs $LD directly, so let us get rid of -      # -Wl from whole_archive_flag_spec +      # -Wl from whole_archive_flag_spec and hope we can get by with +      # turning comma into space..        wl=        if test -n "$convenience"; then  	if test -n "$whole_archive_flag_spec"; then -	  eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" +	  eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" +	  reload_conv_objs=$reload_objs\ `$ECHO "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`  	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        # Create the old-style object. -      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 +      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" -      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 -      IFS="$save_ifs" +      func_execute_cmds "$reload_cmds" 'exit $?'        # Exit if we aren't doing a library object file.        if test -z "$libobj"; then  	if test -n "$gentop"; then -	  $show "${rm}r $gentop" -	  $run ${rm}r $gentop +	  func_show_eval '${RM}r "$gentop"'  	fi  	exit $EXIT_SUCCESS @@ -4063,14 +7468,13 @@ EOF        if test "$build_libtool_libs" != yes; then  	if test -n "$gentop"; then -	  $show "${rm}r $gentop" -	  $run ${rm}r $gentop +	  func_show_eval '${RM}r "$gentop"'  	fi  	# Create an invalid libtool object if no PIC, so that we don't  	# accidentally link it into a program.  	# $show "echo timestamp > $libobj" -	# $run eval "echo timestamp > $libobj" || exit $? +	# $opt_dry_run || eval "echo timestamp > $libobj" || exit $?  	exit $EXIT_SUCCESS        fi @@ -4078,20 +7482,11 @@ EOF  	# Only do commands if we really have different PIC objects.  	reload_objs="$libobjs $reload_conv_objs"  	output="$libobj" -	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 -	IFS="$save_ifs" +	func_execute_cmds "$reload_cmds" 'exit $?'        fi        if test -n "$gentop"; then -	$show "${rm}r $gentop" -	$run ${rm}r $gentop +	func_show_eval '${RM}r "$gentop"'        fi        exit $EXIT_SUCCESS @@ -4099,41 +7494,76 @@ EOF      prog)        case $host in -	*cygwin*) output=`$echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;; +	*cygwin*) func_stripname '' '.exe' "$output" +	          output=$func_stripname_result.exe;;        esac -      if test -n "$vinfo"; then -	$echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 -      fi +      test -n "$vinfo" && \ +	func_warning "\`-version-info' is ignored for programs" -      if test -n "$release"; then -	$echo "$modename: warning: \`-release' is ignored for programs" 1>&2 -      fi +      test -n "$release" && \ +	func_warning "\`-release' is ignored for programs" -      if test "$preload" = yes; then -	if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && -	   test "$dlopen_self_static" = unknown; then -	  $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." -	fi -      fi +      test "$preload" = yes \ +        && test "$dlopen_support" = unknown \ +	&& test "$dlopen_self" = unknown \ +	&& test "$dlopen_self_static" = unknown && \ +	  func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support."        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 / -framework System /'` -	finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'` +	compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'` +	finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`  	;;        esac        case $host in -      *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 -        ;; +      *-*-darwin*) +	# Don't allow lazy linking, it breaks C++ global constructors +	# But is supposedly fixed on 10.4 or later (yay!). +	if test "$tagname" = CXX ; then +	  case ${MACOSX_DEPLOYMENT_TARGET-10.0} in +	    10.[0123]) +	      compile_command="$compile_command ${wl}-bind_at_load" +	      finalize_command="$finalize_command ${wl}-bind_at_load" +	    ;; +	  esac +	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" @@ -4177,11 +7607,18 @@ EOF  	  esac  	fi  	case $host in -	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) +	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) +	  testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`  	  case :$dllsearchpath: in  	  *":$libdir:"*) ;; +	  ::) dllsearchpath=$libdir;;  	  *) dllsearchpath="$dllsearchpath:$libdir";;  	  esac +	  case :$dllsearchpath: in +	  *":$testbindir:"*) ;; +	  ::) dllsearchpath=$testbindir;; +	  *) dllsearchpath="$dllsearchpath:$testbindir";; +	  esac  	  ;;  	esac        done @@ -4231,235 +7668,49 @@ EOF        if test -n "$libobjs" && test "$build_old_libs" = yes; then  	# Transform all the library objects into standard objects. -	compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` -	finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` +	compile_command=`$ECHO "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` +	finalize_command=`$ECHO "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`        fi -      dlsyms= -      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then -	if test -n "$NM" && test -n "$global_symbol_pipe"; then -	  dlsyms="${outputname}S.c" -	else -	  $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 -	fi -      fi - -      if test -n "$dlsyms"; then -	case $dlsyms in -	"") ;; -	*.c) -	  # Discover the nlist of each of the dlfiles. -	  nlist="$output_objdir/${outputname}.nm" - -	  $show "$rm $nlist ${nlist}S ${nlist}T" -	  $run $rm "$nlist" "${nlist}S" "${nlist}T" - -	  # Parse the name list into a source file. -	  $show "creating $output_objdir/$dlsyms" - -	  test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ -/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ -/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ - -#ifdef __cplusplus -extern \"C\" { -#endif - -/* Prevent the only kind of declaration conflicts we can make. */ -#define lt_preloaded_symbols some_other_symbol - -/* External symbol declarations for the compiler. */\ -" - -	  if test "$dlself" = yes; then -	    $show "generating symbol list for \`$output'" - -	    test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" - -	    # Add our own program objects to the symbol list. -	    progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` -	    for arg in $progfiles; do -	      $show "extracting global C symbols from \`$arg'" -	      $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" -	    done - -	    if test -n "$exclude_expsyms"; then -	      $run eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' -	      $run eval '$mv "$nlist"T "$nlist"' -	    fi - -	    if test -n "$export_symbols_regex"; then -	      $run eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' -	      $run eval '$mv "$nlist"T "$nlist"' -	    fi - -	    # Prepare the list of exported symbols -	    if test -z "$export_symbols"; then -	      export_symbols="$output_objdir/$output.exp" -	      $run $rm $export_symbols -	      $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' -	    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 'mv "$nlist"T "$nlist"' -	    fi -	  fi - -	  for arg in $dlprefiles; do -	    $show "extracting global C symbols from \`$arg'" -	    name=`$echo "$arg" | ${SED} -e 's%^.*/%%'` -	    $run eval '$echo ": $name " >> "$nlist"' -	    $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" -	  done - -	  if test -z "$run"; then -	    # Make sure we have at least an empty file. -	    test -f "$nlist" || : > "$nlist" - -	    if test -n "$exclude_expsyms"; then -	      $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T -	      $mv "$nlist"T "$nlist" -	    fi - -	    # Try sorting and uniquifying the output. -	    if grep -v "^: " < "$nlist" | -		if sort -k 3 </dev/null >/dev/null 2>&1; then -		  sort -k 3 -		else -		  sort +2 -		fi | -		uniq > "$nlist"S; then -	      : -	    else -	      grep -v "^: " < "$nlist" > "$nlist"S -	    fi - -	    if test -f "$nlist"S; then -	      eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' -	    else -	      $echo '/* NONE */' >> "$output_objdir/$dlsyms" -	    fi - -	    $echo >> "$output_objdir/$dlsyms" "\ - -#undef lt_preloaded_symbols - -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { -  const char *name; -  lt_ptr address; -} -lt_preloaded_symbols[] = -{\ -" - -	    eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms" - -	    $echo >> "$output_objdir/$dlsyms" "\ -  {0, (lt_ptr) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { -  return lt_preloaded_symbols; -} -#endif +      func_generate_dlsyms "$outputname" "@PROGRAM@" "no" -#ifdef __cplusplus -} -#endif\ -" -	  fi - -	  pic_flag_for_symtable= -	  case $host in -	  # compiling the symbol table file with pic_flag works around -	  # a FreeBSD bug that causes programs to crash when -lm is -	  # linked before any other PIC object.  But we must not use -	  # pic_flag when linking with -static.  The problem exists in -	  # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. -	  *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) -	    case "$compile_command " in -	    *" -static "*) ;; -	    *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; -	    esac;; -	  *-*-hpux*) -	    case "$compile_command " in -	    *" -static "*) ;; -	    *) pic_flag_for_symtable=" $pic_flag";; -	    esac -	  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 $? - -	  # 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}%"` -	  ;; -	*) -	  $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 -	  exit $EXIT_FAILURE -	  ;; -	esac -      else -	# We keep going just in case the user didn't refer to -	# lt_preloaded_symbols.  The linker will fail if global_symbol_pipe -	# really was required. - -	# Nullify the symbol file. -	compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` -	finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` +      # template prelinking step +      if test -n "$prelink_cmds"; then +	func_execute_cmds "$prelink_cmds" 'exit $?'        fi -      if test "$need_relink" = no || test "$build_libtool_libs" != yes; then +      wrappers_required=yes +      case $host in +      *cygwin* | *mingw* ) +        if test "$build_libtool_libs" != yes; then +          wrappers_required=no +        fi +        ;; +      *cegcc) +        # Disable wrappers for cegcc, we are cross compiling anyway. +        wrappers_required=no +        ;; +      *) +        if test "$need_relink" = no || test "$build_libtool_libs" != yes; then +          wrappers_required=no +        fi +        ;; +      esac +      if test "$wrappers_required" = no; then  	# Replace the output file specification. -	compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` +	compile_command=`$ECHO "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`  	link_command="$compile_command$compile_rpath"  	# We have no uninstalled library dependencies, so finalize right now. -	$show "$link_command" -	$run eval "$link_command" -	status=$? +	exit_status=0 +	func_show_eval "$link_command" 'exit_status=$?'  	# Delete the generated files. -	if test -n "$dlsyms"; then -	  $show "$rm $output_objdir/${outputname}S.${objext}" -	  $run $rm "$output_objdir/${outputname}S.${objext}" +	if test -f "$output_objdir/${outputname}S.${objext}"; then +	  func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'  	fi -	exit $status -      fi - -      if test -n "$shlibpath_var"; then -	# We should set the shlibpath_var -	rpath= -	for dir in $temp_rpath; do -	  case $dir in -	  [\\/]* | [A-Za-z]:[\\/]*) -	    # Absolute path. -	    rpath="$rpath$dir:" -	    ;; -	  *) -	    # Relative path: add a thisdir entry. -	    rpath="$rpath\$thisdir/$dir:" -	    ;; -	  esac -	done -	temp_rpath="$rpath" +	exit $exit_status        fi        if test -n "$compile_shlibpath$finalize_shlibpath"; then @@ -4494,12 +7745,11 @@ static const void *lt_preloaded_setup() {  	# We don't need to create a wrapper script.  	link_command="$compile_var$compile_command$compile_rpath"  	# Replace the output file specification. -	link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` +	link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`  	# Delete the old output file. -	$run $rm $output +	$opt_dry_run || $RM $output  	# Link the executable and exit -	$show "$link_command" -	$run eval "$link_command" || exit $? +	func_show_eval "$link_command" 'exit $?'  	exit $EXIT_SUCCESS        fi @@ -4508,13 +7758,13 @@ static const void *lt_preloaded_setup() {  	link_command="$compile_var$compile_command$compile_rpath"  	relink_command="$finalize_var$finalize_command$finalize_rpath" -	$echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 -	$echo "$modename: \`$output' will be relinked during installation" 1>&2 +	func_warning "this platform does not like uninstalled shared libraries" +	func_warning "\`$output' will be relinked during installation"        else  	if test "$fast_install" != no; then  	  link_command="$finalize_var$compile_command$finalize_rpath"  	  if test "$fast_install" = yes; then -	    relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` +	    relink_command=`$ECHO "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`  	  else  	    # fast_install is set to needless  	    relink_command= @@ -4526,448 +7776,103 @@ static const void *lt_preloaded_setup() {        fi        # Replace the output file specification. -      link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` +      link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`        # Delete the old output files. -      $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname +      $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname -      $show "$link_command" -      $run eval "$link_command" || exit $? +      func_show_eval "$link_command" 'exit $?'        # Now create the wrapper script. -      $show "creating $output" +      func_verbose "creating $output"        # Quote the relink command for shipping.        if test -n "$relink_command"; then  	# Preserve any variables that may affect compiler behavior  	for var in $variables_saved_for_relink; do  	  if eval test -z \"\${$var+set}\"; then -	    relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" +	    relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"  	  elif eval var_value=\$$var; test -z "$var_value"; then  	    relink_command="$var=; export $var; $relink_command"  	  else -	    var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` -	    relink_command="$var=\"$var_value\"; export $var; $relink_command" +	    func_quote_for_eval "$var_value" +	    relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"  	  fi  	done  	relink_command="(cd `pwd`; $relink_command)" -	relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` +	relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`        fi -      # Quote $echo for shipping. -      if test "X$echo" = "X$SHELL $progpath --fallback-echo"; then +      # Quote $ECHO for shipping. +      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"` +	qecho=`$ECHO "X$qecho" | $Xsed -e "$sed_quote_subst"`        else -	qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` +	qecho=`$ECHO "X$ECHO" | $Xsed -e "$sed_quote_subst"`        fi -      # Only actually do things if our run command is non-null. -      if test -z "$run"; then +      # Only actually do things if not in dry run mode. +      $opt_dry_run || {  	# win32 will think the script is a binary if it has  	# a .exe suffix, so we strip it off here.  	case $output in -	  *.exe) output=`$echo $output|${SED} 's,.exe$,,'` ;; +	  *.exe) func_stripname '' '.exe' "$output" +	         output=$func_stripname_result ;;  	esac  	# test for cygwin because mv fails w/o .exe extensions  	case $host in  	  *cygwin*)  	    exeext=.exe -	    outputname=`$echo $outputname|${SED} 's,.exe$,,'` ;; +	    func_stripname '' '.exe' "$outputname" +	    outputname=$func_stripname_result ;;  	  *) exeext= ;;  	esac  	case $host in  	  *cygwin* | *mingw* ) -	    cwrappersource=`$echo ${objdir}/lt-${output}.c` -	    cwrapper=`$echo ${output}.exe` -	    $rm $cwrappersource $cwrapper -	    trap "$rm $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 - -	    cat > $cwrappersource <<EOF - -/* $cwrappersource - temporary wrapper executable for $objdir/$outputname -   Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP - -   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. - -   Currently, it simply execs the wrapper *script* "/bin/sh $output", -   but could eventually absorb all of the scripts functionality and -   exec $objdir/$outputname directly. -*/ -EOF -	    cat >> $cwrappersource<<"EOF" -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> -#include <malloc.h> -#include <stdarg.h> -#include <assert.h> - -#if defined(PATH_MAX) -# define LT_PATHMAX PATH_MAX -#elif defined(MAXPATHLEN) -# define LT_PATHMAX MAXPATHLEN -#else -# define LT_PATHMAX 1024 -#endif - -#ifndef DIR_SEPARATOR -#define DIR_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 -#endif - -#ifndef DIR_SEPARATOR_2 -# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) -#else /* DIR_SEPARATOR_2 */ -# define IS_DIR_SEPARATOR(ch) \ -        (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) -#endif /* DIR_SEPARATOR_2 */ - -#define XMALLOC(type, num)      ((type *) xmalloc ((num) * sizeof(type))) -#define XFREE(stale) do { \ -  if (stale) { free ((void *) stale); stale = 0; } \ -} while (0) - -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); -char * strendzap(char *str, const char *pat); -void lt_fatal (const char *message, ...); - -int -main (int argc, char *argv[]) -{ -  char **newargz; -  int i; - -  program_name = (char *) xstrdup ((char *) basename (argv[0])); -  newargz = XMALLOC(char *, argc+2); -EOF - -	    cat >> $cwrappersource <<EOF -  newargz[0] = "$SHELL"; -EOF - -	    cat >> $cwrappersource <<"EOF" -  newargz[1] = fnqualify(argv[0]); -  /* 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"); -  for (i = 1; i < argc; i++) -    newargz[i+1] = xstrdup(argv[i]); -  newargz[argc+1] = NULL; -EOF - -	    cat >> $cwrappersource <<EOF -  execv("$SHELL",newargz); -EOF - -	    cat >> $cwrappersource <<"EOF" -} - -void * -xmalloc (size_t num) -{ -  void * p = (void *) malloc (num); -  if (!p) -    lt_fatal ("Memory exhausted"); - -  return p; -} - -char * -xstrdup (const char *string) -{ -  return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL -; -} - -char * -basename (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] == ':') -    name += 2; -#endif - -  for (base = name; *name; name++) -    if (IS_DIR_SEPARATOR (*name)) -      base = name + 1; -  return (char *) base; -} - -char * -fnqualify(const char *path) -{ -  size_t size; -  char *p; -  char tmp[LT_PATHMAX + 1]; - -  assert(path != NULL); - -  /* Is it qualified already? */ -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) -  if (isalpha (path[0]) && path[1] == ':') -    return xstrdup (path); -#endif -  if (IS_DIR_SEPARATOR (path[0])) -    return xstrdup (path); - -  /* prepend the current directory */ -  /* doesn't handle '~' */ -  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; -} - -char * -strendzap(char *str, const char *pat) -{ -  size_t len, patlen; - -  assert(str != NULL); -  assert(pat != NULL); - -  len = strlen(str); -  patlen = strlen(pat); - -  if (patlen <= len) -  { -    str += len - patlen; -    if (strcmp(str, pat) == 0) -      *str = '\0'; -  } -  return str; -} - -static void -lt_error_core (int exit_status, const char * mode, -          const char * message, va_list ap) -{ -  fprintf (stderr, "%s: %s: ", program_name, mode); -  vfprintf (stderr, message, ap); -  fprintf (stderr, ".\n"); - -  if (exit_status >= 0) -    exit (exit_status); -} - -void -lt_fatal (const char *message, ...) -{ -  va_list ap; -  va_start (ap, message); -  lt_error_core (EXIT_FAILURE, "FATAL", message, ap); -  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 $EXIT_FAILURE" 1 2 15 - -	$echo > $output "\ -#! $SHELL - -# $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# The $output program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting.  It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='${SED} -e 1s/^X//' -sed_quote_subst='$sed_quote_subst' - -# 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 - -relink_command=\"$relink_command\" - -# This environment variable determines our operation mode. -if test \"\$libtool_install_magic\" = \"$magic\"; then -  # install mode needs the following variable: -  notinst_deplibs='$notinst_deplibs' -else -  # When we are sourced in execute mode, \$file and \$echo are already set. -  if test \"\$libtool_execute_magic\" != \"$magic\"; then -    echo=\"$qecho\" -    file=\"\$0\" -    # Make sure echo works. -    if test \"X\$1\" = X--no-reexec; then -      # Discard the --no-reexec flag, and continue. -      shift -    elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then -      # Yippee, \$echo works! -      : -    else -      # Restart under the correct shell, and then maybe \$echo will work. -      exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} -    fi -  fi\ -" -	$echo >> $output "\ - -  # Find the directory that this script lives in. -  thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` -  test \"x\$thisdir\" = \"x\$file\" && thisdir=. - -  # Follow symbolic links until we get to the real thisdir. -  file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\` -  while test -n \"\$file\"; do -    destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` - -    # If there was a directory component, then change thisdir. -    if test \"x\$destdir\" != \"x\$file\"; then -      case \"\$destdir\" in -      [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; -      *) thisdir=\"\$thisdir/\$destdir\" ;; -      esac -    fi - -    file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` -    file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` -  done - -  # Try to get the absolute directory name. -  absdir=\`cd \"\$thisdir\" && pwd\` -  test -n \"\$absdir\" && thisdir=\"\$absdir\" -" - -	if test "$fast_install" = yes; then -	  $echo >> $output "\ -  program=lt-'$outputname'$exeext -  progdir=\"\$thisdir/$objdir\" - -  if test ! -f \"\$progdir/\$program\" || \\ -     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ -       test \"X\$file\" != \"X\$progdir/\$program\"; }; then - -    file=\"\$\$-\$program\" - -    if test ! -d \"\$progdir\"; then -      $mkdir \"\$progdir\" -    else -      $rm \"\$progdir/\$file\" -    fi" - -	  $echo >> $output "\ - -    # relink executable if necessary -    if test -n \"\$relink_command\"; then -      if relink_command_output=\`eval \$relink_command 2>&1\`; then : -      else -	$echo \"\$relink_command_output\" >&2 -	$rm \"\$progdir/\$file\" -	exit $EXIT_FAILURE -      fi -    fi - -    $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || -    { $rm \"\$progdir/\$program\"; -      $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } -    $rm \"\$progdir/\$file\" -  fi" -	else -	  $echo >> $output "\ -  program='$outputname' -  progdir=\"\$thisdir/$objdir\" -" -	fi - -	$echo >> $output "\ - -  if test -f \"\$progdir/\$program\"; then" - -	# Export our shlibpath_var if we have one. -	if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then -	  $echo >> $output "\ -    # Add our own library path to $shlibpath_var -    $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" - -    # Some systems cannot cope with colon-terminated $shlibpath_var -    # The second colon is a workaround for a bug in BeOS R4 sed -    $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` - -    export $shlibpath_var -" -	fi - -	# fixup the dll searchpath if we need to. -	if test -n "$dllsearchpath"; then -	  $echo >> $output "\ -    # Add the dll search path components to the executable PATH -    PATH=$dllsearchpath:\$PATH -" -	fi - -	$echo >> $output "\ -    if test \"\$libtool_execute_magic\" != \"$magic\"; then -      # Run the actual program with our arguments. -" -	case $host in -	# Backslashes separate directories on plain windows -	*-*-mingw | *-*-os2*) -	  $echo >> $output "\ -      exec \$progdir\\\\\$program \${1+\"\$@\"} -" +	    func_dirname_and_basename "$output" "" "." +	    output_name=$func_basename_result +	    output_path=$func_dirname_result +	    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 + +	    func_emit_cwrapperexe_src > $cwrappersource + +	    # The wrapper executable is built using the $host compiler, +	    # because it contains $host paths and files. If cross- +	    # compiling, it, like the target executable, must be +	    # executed on the $host or under an emulation environment. +	    $opt_dry_run || { +	      $LTCC $LTCFLAGS -o $cwrapper $cwrappersource +	      $STRIP $cwrapper +	    } + +	    # Now, create the wrapper script for func_source use: +	    func_ltwrapper_scriptname $cwrapper +	    $RM $func_ltwrapper_scriptname_result +	    trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 +	    $opt_dry_run || { +	      # note: this script will not be executed, so do not chmod. +	      if test "x$build" = "x$host" ; then +		$cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result +	      else +		func_emit_wrapper no > $func_ltwrapper_scriptname_result +	      fi +	    }  	  ;; +	  * ) +	    $RM $output +	    trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 -	*) -	  $echo >> $output "\ -      exec \$progdir/\$program \${1+\"\$@\"} -" +	    func_emit_wrapper no > $output +	    chmod +x $output  	  ;;  	esac -	$echo >> $output "\ -      \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" -      exit $EXIT_FAILURE -    fi -  else -    # The program doesn't exist. -    \$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 $EXIT_FAILURE -  fi -fi\ -" -	chmod +x $output -      fi +      }        exit $EXIT_SUCCESS        ;;      esac @@ -4976,7 +7881,7 @@ fi\      for oldlib in $oldlibs; do        if test "$build_libtool_libs" = convenience; then -	oldobjs="$libobjs_save" +	oldobjs="$libobjs_save $symfileobj"  	addlibs="$convenience"  	build_libtool_libs=no        else @@ -4985,126 +7890,122 @@ fi\  	  build_libtool_libs=no  	else  	  oldobjs="$old_deplibs $non_pic_objects" +	  if test "$preload" = yes && test -f "$symfileobj"; then +	    oldobjs="$oldobjs $symfileobj" +	  fi  	fi  	addlibs="$old_convenience"        fi        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        # Do each command in the archive commands.        if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then -       cmds=$old_archive_from_new_cmds +	cmds=$old_archive_from_new_cmds        else + +	# Add any objects from preloaded convenience libraries +	if test -n "$dlprefiles"; then +	  gentop="$output_objdir/${outputname}x" +	  generated="$generated $gentop" + +	  func_extract_archives $gentop $dlprefiles +	  oldobjs="$oldobjs $func_extract_archives_result" +	fi + +	# 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 +	      func_basename "$obj" +	      $ECHO "$func_basename_result" +	    done | sort | sort -uc >/dev/null 2>&1); then +	  : +	else +	  $ECHO "copying selected object files to avoid basename conflicts..." +	  gentop="$output_objdir/${outputname}x" +	  generated="$generated $gentop" +	  func_mkdir_p "$gentop" +	  save_oldobjs=$oldobjs +	  oldobjs= +	  counter=1 +	  for obj in $save_oldobjs +	  do +	    func_basename "$obj" +	    objbase="$func_basename_result" +	    case " $oldobjs " in +	    " ") oldobjs=$obj ;; +	    *[\ /]"$objbase "*) +	      while :; do +		# Make sure we don't pick an alternate name that also +		# overlaps. +		newobj=lt$counter-$objbase +		func_arith $counter + 1 +		counter=$func_arith_result +		case " $oldobjs " in +		*[\ /]"$newobj "*) ;; +		*) if test ! -f "$gentop/$newobj"; then break; fi ;; +		esac +	      done +	      func_show_eval "ln $obj $gentop/$newobj || 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 +	func_len " $cmds" +	len=$func_len_result +	if test "$len" -lt "$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..." +	  func_verbose "using piecewise archive linking..."  	  save_RANLIB=$RANLIB  	  RANLIB=:  	  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 +	  oldobjs=  	  # Is there a better way of finding the last object in the list?  	  for obj in $save_oldobjs  	  do  	    last_oldobj=$obj  	  done +	  eval test_cmds=\"$old_archive_cmds\" +	  func_len " $test_cmds" +	  len0=$func_len_result +	  len=$len0  	  for obj in $save_oldobjs  	  do -	    oldobjs="$objlist $obj" -	    objlist="$objlist $obj" -	    eval test_cmds=\"$old_archive_cmds\" -	    if len=`expr "X$test_cmds" : ".*"` && -	       test "$len" -le "$max_cmd_len"; then +	    func_len " $obj" +	    func_arith $len + $func_len_result +	    len=$func_arith_result +	    func_append objlist " $obj" +	    if test "$len" -lt "$max_cmd_len"; then  	      :  	    else  	      # the above command should be used before it gets too long  	      oldobjs=$objlist  	      if test "$obj" = "$last_oldobj" ; then -	        RANLIB=$save_RANLIB +		RANLIB=$save_RANLIB  	      fi  	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~  	      eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"  	      objlist= +	      len=$len0  	    fi  	  done  	  RANLIB=$save_RANLIB @@ -5116,49 +8017,39 @@ fi\  	  fi  	fi        fi -      save_ifs="$IFS"; IFS='~' -      for cmd in $cmds; do -        eval cmd=\"$cmd\" -	IFS="$save_ifs" -	$show "$cmd" -	$run eval "$cmd" || exit $? -      done -      IFS="$save_ifs" +      func_execute_cmds "$cmds" 'exit $?'      done -    if test -n "$generated"; then -      $show "${rm}r$generated" -      $run ${rm}r$generated -    fi +    test -n "$generated" && \ +      func_show_eval "${RM}r$generated"      # Now create the libtool archive.      case $output in      *.la)        old_library=        test "$build_old_libs" = yes && old_library="$libname.$libext" -      $show "creating $output" +      func_verbose "creating $output"        # Preserve any variables that may affect compiler behavior        for var in $variables_saved_for_relink; do  	if eval test -z \"\${$var+set}\"; then -	  relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" +	  relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"  	elif eval var_value=\$$var; test -z "$var_value"; then  	  relink_command="$var=; export $var; $relink_command"  	else -	  var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` -	  relink_command="$var=\"$var_value\"; export $var; $relink_command" +	  func_quote_for_eval "$var_value" +	  relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"  	fi        done        # Quote the link command for shipping.        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"` +      relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`        if test "$hardcode_automatic" = yes ; then  	relink_command=        fi -        # Only create the output if not a dry run. -      if test -z "$run"; then +      $opt_dry_run || {  	for installed in no yes; do  	  if test "$installed" = yes; then  	    if test -z "$install_libdir"; then @@ -5170,12 +8061,11 @@ fi\  	    for deplib in $dependency_libs; do  	      case $deplib in  	      *.la) -		name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` +		func_basename "$deplib" +		name="$func_basename_result"  		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 $EXIT_FAILURE -		fi +		test -z "$libdir" && \ +		  func_fatal_error "\`$deplib' is not a valid libtool archive"  		newdependency_libs="$newdependency_libs $libdir/$name"  		;;  	      *) newdependency_libs="$newdependency_libs $deplib" ;; @@ -5183,25 +8073,37 @@ fi\  	    done  	    dependency_libs="$newdependency_libs"  	    newdlfiles= +  	    for lib in $dlfiles; do -	      name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` -	      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 $EXIT_FAILURE -	      fi -	      newdlfiles="$newdlfiles $libdir/$name" +	      case $lib in +	      *.la) +	        func_basename "$lib" +		name="$func_basename_result" +		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` +		test -z "$libdir" && \ +		  func_fatal_error "\`$lib' is not a valid libtool archive" +		newdlfiles="$newdlfiles $libdir/$name" +		;; +	      *) newdlfiles="$newdlfiles $lib" ;; +	      esac  	    done  	    dlfiles="$newdlfiles"  	    newdlprefiles=  	    for lib in $dlprefiles; do -	      name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` -	      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 $EXIT_FAILURE -	      fi -	      newdlprefiles="$newdlprefiles $libdir/$name" +	      case $lib in +	      *.la) +		# Only pass preopened files to the pseudo-archive (for +		# eventual linking with the app. that links it) if we +		# didn't already link the preopened objects directly into +		# the library: +		func_basename "$lib" +		name="$func_basename_result" +		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` +		test -z "$libdir" && \ +		  func_fatal_error "\`$lib' is not a valid libtool archive" +		newdlprefiles="$newdlprefiles $libdir/$name" +		;; +	      esac  	    done  	    dlprefiles="$newdlprefiles"  	  else @@ -5224,15 +8126,15 @@ fi\  	    done  	    dlprefiles="$newdlprefiles"  	  fi -	  $rm $output +	  $RM $output  	  # place dlname in correct position for cygwin  	  tdlname=$dlname  	  case $host,$output,$installed,$module,$dlname in -	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; +	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;  	  esac -	  $echo > $output "\ +	  $ECHO > $output "\  # $outputname - a libtool library file -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION  #  # Please DO NOT delete this file!  # It is necessary for linking the library. @@ -5246,9 +8148,15 @@ library_names='$library_names'  # The name of the static archive.  old_library='$old_library' +# Linker flags that can not go in dependency_libs. +inherited_linker_flags='$new_inherited_linker_flags' +  # Libraries that this one depends upon.  dependency_libs='$dependency_libs' +# Names of additional weak libraries provided by this library +weak_library_names='$weak_libs' +  # Version information for $libname.  current=$current  age=$age @@ -5267,746 +8175,29 @@ dlpreopen='$dlprefiles'  # Directory that this library needs to be installed in:  libdir='$install_libdir'"  	  if test "$installed" = no && test "$need_relink" = yes; then -	    $echo >> $output "\ +	    $ECHO >> $output "\  relink_command=\"$relink_command\""  	  fi  	done -      fi +      }        # Do a symbolic link so that the libtool archive can be found in        # LD_LIBRARY_PATH before the program is installed. -      $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" -      $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? +      func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?'        ;;      esac      exit $EXIT_SUCCESS -    ;; - -  # libtool install mode -  install) -    modename="$modename: install" - -    # There may be an optional sh(1) argument at the beginning of -    # 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 -      # Aesthetically quote it. -      arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` -      case $arg in -      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*) -	arg="\"$arg\"" -	;; -      esac -      install_prog="$arg " -      arg="$1" -      shift -    else -      install_prog= -      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 -    install_prog="$install_prog$arg" - -    # We need to accept at least all the BSD install flags. -    dest= -    files= -    opts= -    prev= -    install_type= -    isdir=no -    stripme= -    for arg -    do -      if test -n "$dest"; then -	files="$files $dest" -	dest="$arg" -	continue -      fi - -      case $arg in -      -d) isdir=yes ;; -      -f) prev="-f" ;; -      -g) prev="-g" ;; -      -m) prev="-m" ;; -      -o) prev="-o" ;; -      -s) -	stripme=" -s" -	continue -	;; -      -*) ;; - -      *) -	# If the previous option needed an argument, then skip it. -	if test -n "$prev"; then -	  prev= -	else -	  dest="$arg" -	  continue -	fi -	;; -      esac - -      # Aesthetically quote the argument. -      arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -      case $arg in -      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*) -	arg="\"$arg\"" -	;; -      esac -      install_prog="$install_prog $arg" -    done - -    if test -z "$install_prog"; then -      $echo "$modename: you must specify an install program" 1>&2 -      $echo "$help" 1>&2 -      exit $EXIT_FAILURE -    fi - -    if test -n "$prev"; then -      $echo "$modename: the \`$prev' option requires an argument" 1>&2 -      $echo "$help" 1>&2 -      exit $EXIT_FAILURE -    fi - -    if test -z "$files"; then -      if test -z "$dest"; then -	$echo "$modename: no file or destination specified" 1>&2 -      else -	$echo "$modename: you must specify a destination" 1>&2 -      fi -      $echo "$help" 1>&2 -      exit $EXIT_FAILURE -    fi - -    # Strip any trailing slash from the destination. -    dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` - -    # Check to see that the destination is a directory. -    test -d "$dest" && isdir=yes -    if test "$isdir" = yes; then -      destdir="$dest" -      destname= -    else -      destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` -      test "X$destdir" = "X$dest" && destdir=. -      destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` - -      # Not a directory, so check to see that there is only one file specified. -      set dummy $files -      if test "$#" -gt 2; then -	$echo "$modename: \`$dest' is not a directory" 1>&2 -	$echo "$help" 1>&2 -	exit $EXIT_FAILURE -      fi -    fi -    case $destdir in -    [\\/]* | [A-Za-z]:[\\/]*) ;; -    *) -      for file in $files; do -	case $file in -	*.lo) ;; -	*) -	  $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 -	  $echo "$help" 1>&2 -	  exit $EXIT_FAILURE -	  ;; -	esac -      done -      ;; -    esac - -    # This variable tells wrapper scripts just to set variables rather -    # than running their programs. -    libtool_install_magic="$magic" - -    staticlibs= -    future_libdirs= -    current_libdirs= -    for file in $files; do - -      # Do each installation. -      case $file in -      *.$libext) -	# Do the static libraries later. -	staticlibs="$staticlibs $file" -	;; - -      *.la) -	# Check to see that this really is a libtool archive. -	if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : -	else -	  $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 -	  $echo "$help" 1>&2 -	  exit $EXIT_FAILURE -	fi - -	library_names= -	old_library= -	relink_command= -	# If there is no directory component, then add one. -	case $file in -	*/* | *\\*) . $file ;; -	*) . ./$file ;; -	esac - -	# Add the libdir to current_libdirs if it is the destination. -	if test "X$destdir" = "X$libdir"; then -	  case "$current_libdirs " in -	  *" $libdir "*) ;; -	  *) current_libdirs="$current_libdirs $libdir" ;; -	  esac -	else -	  # Note the libdir as a future libdir. -	  case "$future_libdirs " in -	  *" $libdir "*) ;; -	  *) future_libdirs="$future_libdirs $libdir" ;; -	  esac -	fi - -	dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ -	test "X$dir" = "X$file/" && dir= -	dir="$dir$objdir" - -	if test -n "$relink_command"; then -	  # Determine the prefix the user has applied to our future dir. -	  inst_prefix_dir=`$echo "$destdir" | $SED "s%$libdir\$%%"` - -	  # Don't allow the user to place us outside of our expected -	  # location b/c this prevents finding dependent libraries that -	  # are installed to the same prefix. -	  # 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 $EXIT_FAILURE -	  fi - -	  if test -n "$inst_prefix_dir"; then -	    # Stick the inst_prefix_dir data into the link command. -	    relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` -	  else -	    relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%%"` -	  fi - -	  $echo "$modename: warning: relinking \`$file'" 1>&2 -	  $show "$relink_command" -	  if $run eval "$relink_command"; then : -	  else -	    $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 -	    exit $EXIT_FAILURE -	  fi -	fi - -	# See the names of the shared library. -	set dummy $library_names -	if test -n "$2"; then -	  realname="$2" -	  shift -	  shift - -	  srcname="$realname" -	  test -n "$relink_command" && srcname="$realname"T - -	  # Install the shared library and build the symlinks. -	  $show "$install_prog $dir/$srcname $destdir/$realname" -	  $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? -	  if test -n "$stripme" && test -n "$striplib"; then -	    $show "$striplib $destdir/$realname" -	    $run eval "$striplib $destdir/$realname" || exit $? -	  fi - -	  if test "$#" -gt 0; then -	    # Delete the old symlinks, and create new ones. -	    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)" -	      fi -	    done -	  fi - -	  # Do each command in the postinstall commands. -	  lib="$destdir/$realname" -	  cmds=$postinstall_cmds -	  save_ifs="$IFS"; IFS='~' -	  for cmd in $cmds; do -	    IFS="$save_ifs" -	    eval cmd=\"$cmd\" -	    $show "$cmd" -	    $run eval "$cmd" || exit $? -	  done -	  IFS="$save_ifs" -	fi - -	# Install the pseudo-library for information purposes. -	name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` -	instname="$dir/$name"i -	$show "$install_prog $instname $destdir/$name" -	$run eval "$install_prog $instname $destdir/$name" || exit $? - -	# Maybe install the static library, too. -	test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" -	;; - -      *.lo) -	# Install (i.e. copy) a libtool object. - -	# Figure out destination file name, if it wasn't already specified. -	if test -n "$destname"; then -	  destfile="$destdir/$destname" -	else -	  destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` -	  destfile="$destdir/$destfile" -	fi - -	# Deduce the name of the destination old-style object file. -	case $destfile in -	*.lo) -	  staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` -	  ;; -	*.$objext) -	  staticdest="$destfile" -	  destfile= -	  ;; -	*) -	  $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 -	  $echo "$help" 1>&2 -	  exit $EXIT_FAILURE -	  ;; -	esac - -	# Install the libtool object if requested. -	if test -n "$destfile"; then -	  $show "$install_prog $file $destfile" -	  $run eval "$install_prog $file $destfile" || exit $? -	fi - -	# Install the old object if enabled. -	if test "$build_old_libs" = yes; then -	  # Deduce the name of the old-style object file. -	  staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` - -	  $show "$install_prog $staticobj $staticdest" -	  $run eval "$install_prog \$staticobj \$staticdest" || exit $? -	fi -	exit $EXIT_SUCCESS -	;; - -      *) -	# Figure out destination file name, if it wasn't already specified. -	if test -n "$destname"; then -	  destfile="$destdir/$destname" -	else -	  destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` -	  destfile="$destdir/$destfile" -	fi - -	# If the file is missing, and there is a .exe on the end, strip it -	# because it is most likely a libtool script we actually want to -	# install -	stripped_ext="" -	case $file in -	  *.exe) -	    if test ! -f "$file"; then -	      file=`$echo $file|${SED} 's,.exe$,,'` -	      stripped_ext=".exe" -	    fi -	    ;; -	esac - -	# Do a test to see if this is really a libtool program. -	case $host in -	*cygwin*|*mingw*) -	    wrapper=`$echo $file | ${SED} -e 's,.exe$,,'` -	    ;; -	*) -	    wrapper=$file -	    ;; -	esac -	if (${SED} -e '4q' $wrapper | grep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then -	  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 -	  # If there is no directory component, then add one. -	  case $file in -	  */* | *\\*) . ${wrapperdot} ;; -	  *) . ./${wrapperdot} ;; -	  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 $EXIT_FAILURE -	  fi - -	  finalize=yes -	  for lib in $notinst_deplibs; do -	    # Check to see that each library is installed. -	    libdir= -	    if test -f "$lib"; then -	      # If there is no directory component, then add one. -	      case $lib in -	      */* | *\\*) . $lib ;; -	      *) . ./$lib ;; -	      esac -	    fi -	    libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test -	    if test -n "$libdir" && test ! -f "$libfile"; then -	      $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 -	      finalize=no -	    fi -	  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 -	  # If there is no directory component, then add one. -	  case $file in -	  */* | *\\*) . ${wrapperdot} ;; -	  *) . ./${wrapperdot} ;; -	  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-$$" -	      save_umask=`umask` -	      umask 0077 -	      if $mkdir "$tmpdir"; then -	        umask $save_umask -	      else -	        umask $save_umask -		$echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 -		continue -	      fi -	      file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'` -	      outputname="$tmpdir/$file" -	      # Replace the output file specification. -	      relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` - -	      $show "$relink_command" -	      if $run eval "$relink_command"; then : -	      else -		$echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 -		${rm}r "$tmpdir" -		continue -	      fi -	      file="$outputname" -	    else -	      $echo "$modename: warning: cannot relink \`$file'" 1>&2 -	    fi -	  else -	    # Install the binary that we compiled earlier. -	    file=`$echo "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` -	  fi -	fi - -	# remove .exe since cygwin /usr/bin/install will append another -	# one anyways -	case $install_prog,$host in -	*/usr/bin/install*,*cygwin*) -	  case $file:$destfile in -	  *.exe:*.exe) -	    # this is ok -	    ;; -	  *.exe:*) -	    destfile=$destfile.exe -	    ;; -	  *:*.exe) -	    destfile=`$echo $destfile | ${SED} -e 's,.exe$,,'` -	    ;; -	  esac -	  ;; -	esac -	$show "$install_prog$stripme $file $destfile" -	$run eval "$install_prog\$stripme \$file \$destfile" || exit $? -	test -n "$outputname" && ${rm}r "$tmpdir" -	;; -      esac -    done - -    for file in $staticlibs; do -      name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - -      # Set up the ranlib parameters. -      oldlib="$destdir/$name" - -      $show "$install_prog $file $oldlib" -      $run eval "$install_prog \$file \$oldlib" || exit $? - -      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. -      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 -      IFS="$save_ifs" -    done - -    if test -n "$future_libdirs"; then -      $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 -    fi - -    if test -n "$current_libdirs"; then -      # Maybe just do a dry run. -      test -n "$run" && current_libdirs=" -n$current_libdirs" -      exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' -    else -      exit $EXIT_SUCCESS -    fi -    ;; - -  # libtool finish mode -  finish) -    modename="$modename: finish" -    libdirs="$nonopt" -    admincmds= - -    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then -      for dir -      do -	libdirs="$libdirs $dir" -      done - -      for libdir in $libdirs; do -	if test -n "$finish_cmds"; then -	  # Do each command in the finish commands. -	  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" -	  done -	  IFS="$save_ifs" -	fi -	if test -n "$finish_eval"; then -	  # Do the single finish_eval. -	  eval cmds=\"$finish_eval\" -	  $run eval "$cmds" || admincmds="$admincmds -       $cmds" -	fi -      done -    fi - -    # Exit here if they wanted silent mode. -    test "$show" = : && exit $EXIT_SUCCESS - -    $echo "----------------------------------------------------------------------" -    $echo "Libraries have been installed in:" -    for libdir in $libdirs; do -      $echo "   $libdir" -    done -    $echo -    $echo "If you ever happen to want to link against installed libraries" -    $echo "in a given directory, LIBDIR, you must either use libtool, and" -    $echo "specify the full pathname of the library, or use the \`-LLIBDIR'" -    $echo "flag during linking and do at least one of the following:" -    if test -n "$shlibpath_var"; then -      $echo "   - add LIBDIR to the \`$shlibpath_var' environment variable" -      $echo "     during execution" -    fi -    if test -n "$runpath_var"; then -      $echo "   - add LIBDIR to the \`$runpath_var' environment variable" -      $echo "     during linking" -    fi -    if test -n "$hardcode_libdir_flag_spec"; then -      libdir=LIBDIR -      eval flag=\"$hardcode_libdir_flag_spec\" - -      $echo "   - use the \`$flag' linker flag" -    fi -    if test -n "$admincmds"; then -      $echo "   - have your system administrator run these commands:$admincmds" -    fi -    if test -f /etc/ld.so.conf; then -      $echo "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" -    fi -    $echo -    $echo "See any operating system documentation about shared libraries for" -    $echo "more information, such as the ld(1) and ld.so(8) manual pages." -    $echo "----------------------------------------------------------------------" -    exit $EXIT_SUCCESS -    ;; - -  # libtool execute mode -  execute) -    modename="$modename: execute" - -    # The first argument is the command name. -    cmd="$nonopt" -    if test -z "$cmd"; then -      $echo "$modename: you must specify a COMMAND" 1>&2 -      $echo "$help" -      exit $EXIT_FAILURE -    fi - -    # Handle -dlopen flags immediately. -    for file in $execute_dlfiles; do -      if test ! -f "$file"; then -	$echo "$modename: \`$file' is not a file" 1>&2 -	$echo "$help" 1>&2 -	exit $EXIT_FAILURE -      fi - -      dir= -      case $file in -      *.la) -	# Check to see that this really is a libtool archive. -	if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : -	else -	  $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 -	  $echo "$help" 1>&2 -	  exit $EXIT_FAILURE -	fi - -	# Read the libtool library. -	dlname= -	library_names= - -	# If there is no directory component, then add one. -	case $file in -	*/* | *\\*) . $file ;; -	*) . ./$file ;; -	esac - -	# Skip this library if it cannot be dlopened. -	if test -z "$dlname"; then -	  # Warn if it was a shared library. -	  test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" -	  continue -	fi - -	dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` -	test "X$dir" = "X$file" && dir=. - -	if test -f "$dir/$objdir/$dlname"; then -	  dir="$dir/$objdir" -	else -	  $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 -	  exit $EXIT_FAILURE -	fi -	;; - -      *.lo) -	# Just add the directory containing the .lo file. -	dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` -	test "X$dir" = "X$file" && dir=. -	;; - -      *) -	$echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 -	continue -	;; -      esac - -      # Get the absolute pathname. -      absdir=`cd "$dir" && pwd` -      test -n "$absdir" && dir="$absdir" - -      # Now add the directory to shlibpath_var. -      if eval "test -z \"\$$shlibpath_var\""; then -	eval "$shlibpath_var=\"\$dir\"" -      else -	eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" -      fi -    done - -    # This variable tells wrapper scripts just to set shlibpath_var -    # rather than running their programs. -    libtool_execute_magic="$magic" - -    # Check if any of the arguments is a wrapper script. -    args= -    for file -    do -      case $file in -      -*) ;; -      *) -	# Do a test to see if this is really a libtool program. -	if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then -	  # If there is no directory component, then add one. -	  case $file in -	  */* | *\\*) . $file ;; -	  *) . ./$file ;; -	  esac +} -	  # Transform arg to wrapped name. -	  file="$progdir/$program" -	fi -	;; -      esac -      # Quote arguments (to preserve shell metacharacters). -      file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` -      args="$args \"$file\"" -    done +{ test "$mode" = link || test "$mode" = relink; } && +    func_mode_link ${1+"$@"} -    if test -z "$run"; then -      if test -n "$shlibpath_var"; then -	# Export the shlibpath_var. -	eval "export $shlibpath_var" -      fi - -      # Restore saved environment variables -      if test "${save_LC_ALL+set}" = set; then -	LC_ALL="$save_LC_ALL"; export LC_ALL -      fi -      if test "${save_LANG+set}" = set; then -	LANG="$save_LANG"; export LANG -      fi -      # Now prepare to actually exec the command. -      exec_cmd="\$cmd$args" -    else -      # Display what would be done. -      if test -n "$shlibpath_var"; then -	eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" -	$echo "export $shlibpath_var" -      fi -      $echo "$cmd$args" -      exit $EXIT_SUCCESS -    fi -    ;; - -  # libtool clean and uninstall mode -  clean | uninstall) -    modename="$modename: $mode" -    rm="$nonopt" +# func_mode_uninstall arg... +func_mode_uninstall () +{ +    $opt_debug +    RM="$nonopt"      files=      rmforce=      exit_status=0 @@ -6018,30 +8209,28 @@ relink_command=\"$relink_command\""      for arg      do        case $arg in -      -f) rm="$rm $arg"; rmforce=yes ;; -      -*) rm="$rm $arg" ;; +      -f) RM="$RM $arg"; rmforce=yes ;; +      -*) RM="$RM $arg" ;;        *) files="$files $arg" ;;        esac      done -    if test -z "$rm"; then -      $echo "$modename: you must specify an RM program" 1>&2 -      $echo "$help" 1>&2 -      exit $EXIT_FAILURE -    fi +    test -z "$RM" && \ +      func_fatal_help "you must specify an RM program"      rmdirs=      origobjdir="$objdir"      for file in $files; do -      dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` -      if test "X$dir" = "X$file"; then -	dir=. +      func_dirname "$file" "" "." +      dir="$func_dirname_result" +      if test "X$dir" = X.; then  	objdir="$origobjdir"        else  	objdir="$dir/$origobjdir"        fi -      name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` +      func_basename "$file" +      name="$func_basename_result"        test "$mode" = uninstall && objdir="$dir"        # Remember objdir for removal later, being careful to avoid duplicates @@ -6053,9 +8242,9 @@ relink_command=\"$relink_command\""        fi        # Don't error if the file doesn't exist and rm -f was used. -      if (test -L "$file") >/dev/null 2>&1 \ -	|| (test -h "$file") >/dev/null 2>&1 \ -	|| test -f "$file"; then +      if { test -L "$file"; } >/dev/null 2>&1 || +	 { test -h "$file"; } >/dev/null 2>&1 || +	 test -f "$file"; then  	:        elif test -d "$file"; then  	exit_status=1 @@ -6069,69 +8258,56 @@ relink_command=\"$relink_command\""        case $name in        *.la)  	# Possibly a libtool archive, so verify it. -	if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then -	  . $dir/$name +	if func_lalib_p "$file"; then +	  func_source $dir/$name  	  # Delete the libtool libraries and symlinks.  	  for n in $library_names; do  	    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. -	      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 -		  exit_status=1 -		fi -	      done -	      IFS="$save_ifs" +	      func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'  	    fi  	    if test -n "$old_library"; then  	      # Do each command in the old_postuninstall commands. -	      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 -		  exit_status=1 -		fi -	      done -	      IFS="$save_ifs" +	      func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'  	    fi  	    # FIXME: should reinstall the best remaining shared library. -	  fi +	    ;; +	  esac  	fi  	;;        *.lo)  	# Possibly a libtool object, so verify it. -	if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then +	if func_lalib_p "$file"; then  	  # Read the .lo file -	  . $dir/$name +	  func_source $dir/$name  	  # Add PIC object to the list of files to remove. -	  if test -n "$pic_object" \ -	     && test "$pic_object" != none; then +	  if test -n "$pic_object" && +	     test "$pic_object" != none; then  	    rmfiles="$rmfiles $dir/$pic_object"  	  fi  	  # Add non-PIC object to the list of files to remove. -	  if test -n "$non_pic_object" \ -	     && test "$non_pic_object" != none; then +	  if test -n "$non_pic_object" && +	     test "$non_pic_object" != none; then  	    rmfiles="$rmfiles $dir/$non_pic_object"  	  fi  	fi @@ -6142,17 +8318,26 @@ relink_command=\"$relink_command\""  	  noexename=$name  	  case $file in  	  *.exe) -	    file=`$echo $file|${SED} 's,.exe$,,'` -	    noexename=`$echo $name|${SED} 's,.exe$,,'` +	    func_stripname '' '.exe' "$file" +	    file=$func_stripname_result +	    func_stripname '' '.exe' "$name" +	    noexename=$func_stripname_result  	    # $file with .exe has already been added to rmfiles,  	    # add $file without .exe  	    rmfiles="$rmfiles $file"  	    ;;  	  esac  	  # Do a test to see if this is a libtool program. -	  if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then -	    relink_command= -	    . $dir/$noexename +	  if func_ltwrapper_p "$file"; then +	    if func_ltwrapper_executable_p "$file"; then +	      func_ltwrapper_scriptname "$file" +	      relink_command= +	      func_source $func_ltwrapper_scriptname_result +	      rmfiles="$rmfiles $func_ltwrapper_scriptname_result" +	    else +	      relink_command= +	      func_source $dir/$noexename +	    fi  	    # note $name still contains .exe if it was in $file originally  	    # as does the version of $file that was added into $rmfiles @@ -6167,237 +8352,38 @@ relink_command=\"$relink_command\""  	fi  	;;        esac -      $show "$rm $rmfiles" -      $run $rm $rmfiles || exit_status=1 +      func_show_eval "$RM $rmfiles" 'exit_status=1'      done      objdir="$origobjdir"      # Try to remove the ${objdir}s in the directories where we deleted files      for dir in $rmdirs; do        if test -d "$dir"; then -	$show "rmdir $dir" -	$run rmdir $dir >/dev/null 2>&1 +	func_show_eval "rmdir $dir >/dev/null 2>&1"        fi      done      exit $exit_status -    ;; +} -  "") -    $echo "$modename: you must specify a MODE" 1>&2 -    $echo "$generic_help" 1>&2 -    exit $EXIT_FAILURE -    ;; -  esac +{ test "$mode" = uninstall || test "$mode" = clean; } && +    func_mode_uninstall ${1+"$@"} -  if test -z "$exec_cmd"; then -    $echo "$modename: invalid operation mode \`$mode'" 1>&2 -    $echo "$generic_help" 1>&2 -    exit $EXIT_FAILURE -  fi -fi # test -z "$show_help" +test -z "$mode" && { +  help="$generic_help" +  func_fatal_help "you must specify a MODE" +} + +test -z "$exec_cmd" && \ +  func_fatal_help "invalid operation mode \`$mode'"  if test -n "$exec_cmd"; then -  eval exec $exec_cmd +  eval exec "$exec_cmd"    exit $EXIT_FAILURE  fi -# We need to display help for each of the modes. -case $mode in -"") $echo \ -"Usage: $modename [OPTION]... [MODE-ARG]... - -Provide generalized library-building support services. - -    --config          show all configuration variables -    --debug           enable verbose shell tracing --n, --dry-run         display commands without modifying any files -    --features        display basic configuration information and exit -    --finish          same as \`--mode=finish' -    --help            display this help message and exit -    --mode=MODE       use operation mode MODE [default=inferred from MODE-ARGS] -    --quiet           same as \`--silent' -    --silent          don't print informational messages -    --tag=TAG         use configuration variables from tag TAG -    --version         print version information - -MODE must be one of the following: - -      clean           remove files from the build directory -      compile         compile a source file into a libtool object -      execute         automatically set library path, then run a program -      finish          complete the installation of libtool libraries -      install         install libraries or executables -      link            create a library or an executable -      uninstall       remove libraries from an installed directory - -MODE-ARGS vary depending on the MODE.  Try \`$modename --help --mode=MODE' for -a more detailed description of MODE. - -Report bugs to <[email protected]>." -  exit $EXIT_SUCCESS -  ;; - -clean) -  $echo \ -"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... - -Remove files from the build directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, object or program, all the files associated -with it are deleted. Otherwise, only FILE itself is deleted using RM." -  ;; - -compile) -  $echo \ -"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE - -Compile a source file into a libtool library object. - -This mode accepts the following additional options: - -  -o OUTPUT-FILE    set the output file name to OUTPUT-FILE -  -prefer-pic       try to building PIC objects only -  -prefer-non-pic   try to building non-PIC objects only -  -static           always build a \`.o' file suitable for static linking - -COMPILE-COMMAND is a command to be used in creating a \`standard' object file -from the given SOURCEFILE. - -The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." -  ;; - -execute) -  $echo \ -"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... - -Automatically set library path, then run a program. - -This mode accepts the following additional options: - -  -dlopen FILE      add the directory containing FILE to the library path +exit $exit_status -This mode sets the library path environment variable according to \`-dlopen' -flags. - -If any of the ARGS are libtool executable wrappers, then they are translated -into their corresponding uninstalled binary, and any of their required library -directories are added to the library path. - -Then, COMMAND is executed, with ARGS as arguments." -  ;; - -finish) -  $echo \ -"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... - -Complete the installation of libtool libraries. - -Each LIBDIR is a directory that contains libtool libraries. - -The commands that this mode executes may require superuser privileges.  Use -the \`--dry-run' option if you just want to see what would be executed." -  ;; - -install) -  $echo \ -"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... - -Install executables or libraries. - -INSTALL-COMMAND is the installation command.  The first component should be -either the \`install' or \`cp' program. - -The rest of the components are interpreted as arguments to that command (only -BSD-compatible install options are recognized)." -  ;; - -link) -  $echo \ -"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... - -Link object files or libraries together to form another library, or to -create an executable program. - -LINK-COMMAND is a command using the C compiler that you would use to create -a program from several object files. - -The following components of LINK-COMMAND are treated specially: - -  -all-static       do not do any dynamic linking at all -  -avoid-version    do not add a version suffix if possible -  -dlopen FILE      \`-dlpreopen' FILE if it cannot be dlopened at runtime -  -dlpreopen FILE   link in FILE and add its symbols to lt_preloaded_symbols -  -export-dynamic   allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -  -export-symbols SYMFILE -		    try to export only the symbols listed in SYMFILE -  -export-symbols-regex REGEX -		    try to export only the symbols matching REGEX -  -LLIBDIR          search LIBDIR for required installed libraries -  -lNAME            OUTPUT-FILE requires the installed library libNAME -  -module           build a library that can dlopened -  -no-fast-install  disable the fast-install mode -  -no-install       link a not-installable executable -  -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 -  -static           do not do any dynamic linking of libtool libraries -  -version-info CURRENT[:REVISION[:AGE]] -		    specify library version info [each variable defaults to 0] - -All other options (arguments beginning with \`-') are ignored. - -Every other argument is treated as a filename.  Files ending in \`.la' are -treated as uninstalled libtool libraries, other files are standard or library -object files. - -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is -required, except when creating a convenience library. - -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. - -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file -is created, otherwise an executable program is created." -  ;; - -uninstall) -  $echo \ -"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... - -Remove libraries from an installation directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, all the files associated with it are deleted. -Otherwise, only FILE itself is deleted using RM." -  ;; - -*) -  $echo "$modename: invalid operation mode \`$mode'" 1>&2 -  $echo "$help" 1>&2 -  exit $EXIT_FAILURE -  ;; -esac - -$echo -$echo "Try \`$modename --help' for more information about other modes." - -exit $EXIT_SUCCESS  # The TAGs below are defined such that we never get into a situation  # in which we disable both kinds of libraries.  Given conflicting @@ -6416,10 +8402,12 @@ build_old_libs=yes  # ### 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` +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`  # ### END LIBTOOL TAG CONFIG: disable-static  # Local Variables:  # mode:shell-script  # sh-indentation:2  # End: +# vi:sw=2 + diff --git a/m4/libtool.m4 b/m4/libtool.m4 index 7d301399..1e7ea47c 100644 --- a/m4/libtool.m4 +++ b/m4/libtool.m4 @@ -1,123 +1,185 @@  # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -## Copyright 1996, 1997, 1998, 1999, 2000, 2001 -## Free Software Foundation, Inc. -## Originally by Gordon Matzigkeit <[email protected]>, 1996 -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, but -## WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU -## General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -## -## As a special exception to the GNU General Public License, if you -## distribute this file as part of a program that contains a -## configuration script generated by Autoconf, you may include it under -## the same distribution terms that you use for the rest of that program. - -# serial 47 AC_PROG_LIBTOOL -# Debian $Rev$ - - -# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) -# ----------------------------------------------------------- -# If this macro is not defined by Autoconf, define it here. -m4_ifdef([AC_PROVIDE_IFELSE], -         [], -         [m4_define([AC_PROVIDE_IFELSE], -	         [m4_ifdef([AC_PROVIDE_$1], -		           [$2], [$3])])]) - - -# AC_PROG_LIBTOOL -# --------------- -AC_DEFUN([AC_PROG_LIBTOOL], -[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl -dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX -dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. -  AC_PROVIDE_IFELSE([AC_PROG_CXX], -    [AC_LIBTOOL_CXX], -    [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX -  ])]) -dnl And a similar setup for Fortran 77 support -  AC_PROVIDE_IFELSE([AC_PROG_F77], -    [AC_LIBTOOL_F77], -    [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77 -])]) - -dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. -dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run -dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. -  AC_PROVIDE_IFELSE([AC_PROG_GCJ], -    [AC_LIBTOOL_GCJ], -    [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], -      [AC_LIBTOOL_GCJ], -      [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], -	[AC_LIBTOOL_GCJ], -      [ifdef([AC_PROG_GCJ], -	     [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])]) -       ifdef([A][M_PROG_GCJ], -	     [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])]) -       ifdef([LT_AC_PROG_GCJ], -	     [define([LT_AC_PROG_GCJ], -		defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) -])])# AC_PROG_LIBTOOL - - -# _AC_PROG_LIBTOOL -# ---------------- -AC_DEFUN([_AC_PROG_LIBTOOL], -[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl -AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl -AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl -AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl +# +#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +#                 2006, 2007, 2008 Free Software Foundation, Inc. +#   Written by Gordon Matzigkeit, 1996 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +m4_define([_LT_COPYING], [dnl +#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, +#                 2006, 2007, 2008 Free Software Foundation, Inc. +#   Written by Gordon Matzigkeit, 1996 +# +#   This file is part of GNU Libtool. +# +# GNU Libtool is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Libtool; see the file COPYING.  If not, a copy +# can be downloaded from http://www.gnu.org/licenses/gpl.html, or +# obtained by writing to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +]) + +# serial 56 LT_INIT + + +# LT_PREREQ(VERSION) +# ------------------ +# Complain and exit if this libtool version is less that VERSION. +m4_defun([LT_PREREQ], +[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, +       [m4_default([$3], +		   [m4_fatal([Libtool version $1 or higher is required], +		             63)])], +       [$2])]) + + +# _LT_CHECK_BUILDDIR +# ------------------ +# Complain if the absolute build directory name contains unusual characters +m4_defun([_LT_CHECK_BUILDDIR], +[case `pwd` in +  *\ * | *\	*) +    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; +esac +]) + + +# LT_INIT([OPTIONS]) +# ------------------ +AC_DEFUN([LT_INIT], +[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT +AC_BEFORE([$0], [LT_LANG])dnl +AC_BEFORE([$0], [LT_OUTPUT])dnl +AC_BEFORE([$0], [LTDL_INIT])dnl +m4_require([_LT_CHECK_BUILDDIR])dnl + +dnl Autoconf doesn't catch unexpanded LT_ macros by default: +m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl +m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl +dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 +dnl unless we require an AC_DEFUNed macro: +AC_REQUIRE([LTOPTIONS_VERSION])dnl +AC_REQUIRE([LTSUGAR_VERSION])dnl +AC_REQUIRE([LTVERSION_VERSION])dnl +AC_REQUIRE([LTOBSOLETE_VERSION])dnl +m4_require([_LT_PROG_LTMAIN])dnl + +dnl Parse OPTIONS +_LT_SET_OPTIONS([$0], [$1])  # This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" +LIBTOOL_DEPS="$ltmain"  # Always use our own libtool.  LIBTOOL='$(SHELL) $(top_builddir)/libtool'  AC_SUBST(LIBTOOL)dnl -# Prevent multiple expansion -define([AC_PROG_LIBTOOL], []) -])# _AC_PROG_LIBTOOL +_LT_SETUP +# Only expand once: +m4_define([LT_INIT]) +])# LT_INIT -# AC_LIBTOOL_SETUP -# ---------------- -AC_DEFUN([AC_LIBTOOL_SETUP], -[AC_PREREQ(2.50)dnl -AC_REQUIRE([AC_ENABLE_SHARED])dnl -AC_REQUIRE([AC_ENABLE_STATIC])dnl -AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl +# Old names: +AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) +AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_PROG_LIBTOOL], []) +dnl AC_DEFUN([AM_PROG_LIBTOOL], []) + + +# _LT_CC_BASENAME(CC) +# ------------------- +# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix. +m4_defun([_LT_CC_BASENAME], +[for cc_temp in $1""; do +  case $cc_temp in +    compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; +    distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; +    \-*) ;; +    *) break;; +  esac +done +cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` +]) + + +# _LT_FILEUTILS_DEFAULTS +# ---------------------- +# It is okay to use these file commands and assume they have been set +# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. +m4_defun([_LT_FILEUTILS_DEFAULTS], +[: ${CP="cp -f"} +: ${MV="mv -f"} +: ${RM="rm -f"} +])# _LT_FILEUTILS_DEFAULTS + + +# _LT_SETUP +# --------- +m4_defun([_LT_SETUP], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl  AC_REQUIRE([AC_CANONICAL_BUILD])dnl +_LT_DECL([], [host_alias], [0], [The host system])dnl +_LT_DECL([], [host], [0])dnl +_LT_DECL([], [host_os], [0])dnl +dnl +_LT_DECL([], [build_alias], [0], [The build system])dnl +_LT_DECL([], [build], [0])dnl +_LT_DECL([], [build_os], [0])dnl +dnl  AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_LD])dnl -AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -AC_REQUIRE([AC_PROG_NM])dnl - +AC_REQUIRE([LT_PATH_LD])dnl +AC_REQUIRE([LT_PATH_NM])dnl +dnl  AC_REQUIRE([AC_PROG_LN_S])dnl -AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! -AC_REQUIRE([AC_OBJEXT])dnl -AC_REQUIRE([AC_EXEEXT])dnl +test -z "$LN_S" && LN_S="ln -s" +_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl  dnl +AC_REQUIRE([LT_CMD_MAX_LEN])dnl +_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl +_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl +dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_CHECK_SHELL_FEATURES])dnl +m4_require([_LT_CMD_RELOAD])dnl +m4_require([_LT_CHECK_MAGIC_METHOD])dnl +m4_require([_LT_CMD_OLD_ARCHIVE])dnl +m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl + +_LT_CONFIG_LIBTOOL_INIT([ +# See if we are running on zsh, and set the options which allow our +# commands through without removal of \ escapes INIT. +if test -n "\${ZSH_VERSION+set}" ; then +   setopt NO_GLOB_SUBST +fi +]) +if test -n "${ZSH_VERSION+set}" ; then +   setopt NO_GLOB_SUBST +fi -AC_LIBTOOL_SYS_MAX_CMD_LEN -AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -AC_LIBTOOL_OBJDIR +_LT_CHECK_OBJDIR -AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl -_LT_AC_PROG_ECHO_BACKSLASH +m4_require([_LT_TAG_COMPILER])dnl +_LT_PROG_ECHO_BACKSLASH  case $host_os in  aix3*) @@ -133,174 +195,885 @@ esac  # Sed substitution that helps us do robust quoting.  It backslashifies  # metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] +sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'  # Same as above, but do not quote variable references. -[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'] +double_quote_subst='s/\([["`\\]]\)/\\\1/g'  # Sed substitution to delay expansion of an escaped shell variable in a  # double_quote_subst'ed string.  delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' +# Sed substitution to delay expansion of an escaped single quote. +delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' +  # Sed substitution to avoid accidental globbing in evaled expressions  no_glob_subst='s/\*/\\\*/g' -# Constants: -rm="rm -f" -  # Global variables: -default_ofile=libtool +ofile=libtool  can_build_shared=yes -# All known linkers require a `.a' archive for static linking (except M$VC, +# All known linkers require a `.a' archive for static linking (except MSVC,  # which needs '.lib').  libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" -AC_CHECK_TOOL(AR, ar, false) -AC_CHECK_TOOL(RANLIB, ranlib, :) -AC_CHECK_TOOL(STRIP, strip, :) +with_gnu_ld="$lt_cv_prog_gnu_ld"  old_CC="$CC"  old_CFLAGS="$CFLAGS"  # Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as  test -z "$CC" && CC=cc  test -z "$LTCC" && LTCC=$CC -test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS  test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$SED" && SED=sed -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=:  test -z "$ac_objext" && ac_objext=o -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then -  case $host_os in -  openbsd*) -    old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" -    ;; -  *) -    old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" -    ;; -  esac -  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi +_LT_CC_BASENAME([$compiler])  # Only perform the check for file, if the check method requires it +test -z "$MAGIC_CMD" && MAGIC_CMD=file  case $deplibs_check_method in  file_magic*)    if test "$file_magic_cmd" = '$MAGIC_CMD'; then -    AC_PATH_MAGIC +    _LT_PATH_MAGIC    fi    ;;  esac -AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) -AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], -enable_win32_dll=yes, enable_win32_dll=no) +# Use C for the default configuration in the libtool script +LT_SUPPORTED_TAG([CC]) +_LT_LANG_C_CONFIG +_LT_LANG_DEFAULT_CONFIG +_LT_CONFIG_COMMANDS +])# _LT_SETUP -AC_ARG_ENABLE([libtool-lock], -    [AC_HELP_STRING([--disable-libtool-lock], -	[avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes -AC_ARG_WITH([pic], -    [AC_HELP_STRING([--with-pic], -	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])], -    [pic_mode="$withval"], -    [pic_mode=default]) -test -z "$pic_mode" && pic_mode=default +# _LT_PROG_LTMAIN +# --------------- +# Note that this code is called both from `configure', and `config.status' +# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably, +# `config.status' has no value for ac_aux_dir unless we are using Automake, +# so we pass a copy along to make sure it has a sensible value anyway. +m4_defun([_LT_PROG_LTMAIN], +[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl +_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) +ltmain="$ac_aux_dir/ltmain.sh" +])# _LT_PROG_LTMAIN -# Use C for the default configuration in the libtool script -tagname= -AC_LIBTOOL_LANG_C_CONFIG -_LT_AC_TAGCONFIG -])# AC_LIBTOOL_SETUP +## ------------------------------------- ## +## Accumulate code for creating libtool. ## +## ------------------------------------- ## + +# So that we can recreate a full libtool script including additional +# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS +# in macros and then make a single call at the end using the `libtool' +# label. + + +# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) +# ---------------------------------------- +# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. +m4_define([_LT_CONFIG_LIBTOOL_INIT], +[m4_ifval([$1], +          [m4_append([_LT_OUTPUT_LIBTOOL_INIT], +                     [$1 +])])]) + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_INIT]) + + +# _LT_CONFIG_LIBTOOL([COMMANDS]) +# ------------------------------ +# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. +m4_define([_LT_CONFIG_LIBTOOL], +[m4_ifval([$1], +          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], +                     [$1 +])])]) + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) + + +# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) +# ----------------------------------------------------- +m4_defun([_LT_CONFIG_SAVE_COMMANDS], +[_LT_CONFIG_LIBTOOL([$1]) +_LT_CONFIG_LIBTOOL_INIT([$2]) +]) + + +# _LT_FORMAT_COMMENT([COMMENT]) +# ----------------------------- +# Add leading comment marks to the start of each line, and a trailing +# full-stop to the whole comment if one is not present already. +m4_define([_LT_FORMAT_COMMENT], +[m4_ifval([$1], [ +m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], +              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) +)]) + + + +## ------------------------ ## +## FIXME: Eliminate VARNAME ## +## ------------------------ ## + + +# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) +# ------------------------------------------------------------------- +# CONFIGNAME is the name given to the value in the libtool script. +# VARNAME is the (base) name used in the configure script. +# VALUE may be 0, 1 or 2 for a computed quote escaped value based on +# VARNAME.  Any other value will be used directly. +m4_define([_LT_DECL], +[lt_if_append_uniq([lt_decl_varnames], [$2], [, ], +    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], +	[m4_ifval([$1], [$1], [$2])]) +    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) +    m4_ifval([$4], +	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) +    lt_dict_add_subkey([lt_decl_dict], [$2], +	[tagged?], [m4_ifval([$5], [yes], [no])])]) +]) + + +# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) +# -------------------------------------------------------- +m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) + + +# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) +# ------------------------------------------------ +m4_define([lt_decl_tag_varnames], +[_lt_decl_filter([tagged?], [yes], $@)]) + + +# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) +# --------------------------------------------------------- +m4_define([_lt_decl_filter], +[m4_case([$#], +  [0], [m4_fatal([$0: too few arguments: $#])], +  [1], [m4_fatal([$0: too few arguments: $#: $1])], +  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], +  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], +  [lt_dict_filter([lt_decl_dict], $@)])[]dnl +]) + + +# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) +# -------------------------------------------------- +m4_define([lt_decl_quote_varnames], +[_lt_decl_filter([value], [1], $@)]) + + +# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) +# --------------------------------------------------- +m4_define([lt_decl_dquote_varnames], +[_lt_decl_filter([value], [2], $@)]) + + +# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) +# --------------------------------------------------- +m4_define([lt_decl_varnames_tagged], +[m4_assert([$# <= 2])dnl +_$0(m4_quote(m4_default([$1], [[, ]])), +    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), +    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) +m4_define([_lt_decl_varnames_tagged], +[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) + + +# lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) +# ------------------------------------------------ +m4_define([lt_decl_all_varnames], +[_$0(m4_quote(m4_default([$1], [[, ]])), +     m4_if([$2], [], +	   m4_quote(lt_decl_varnames), +	m4_quote(m4_shift($@))))[]dnl +]) +m4_define([_lt_decl_all_varnames], +[lt_join($@, lt_decl_varnames_tagged([$1], +			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl +]) + + +# _LT_CONFIG_STATUS_DECLARE([VARNAME]) +# ------------------------------------ +# Quote a variable value, and forward it to `config.status' so that its +# declaration there will have the same value as in `configure'.  VARNAME +# must have a single quote delimited value for this to work. +m4_define([_LT_CONFIG_STATUS_DECLARE], +[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`']) + + +# _LT_CONFIG_STATUS_DECLARATIONS +# ------------------------------ +# We delimit libtool config variables with single quotes, so when +# we write them to config.status, we have to be sure to quote all +# embedded single quotes properly.  In configure, this macro expands +# each variable declared with _LT_DECL (and _LT_TAGDECL) into: +# +#    <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`' +m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], +[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), +    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) -# _LT_AC_SYS_COMPILER + +# _LT_LIBTOOL_TAGS +# ---------------- +# Output comment and list of tags supported by the script +m4_defun([_LT_LIBTOOL_TAGS], +[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl +available_tags="_LT_TAGS"dnl +]) + + +# _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) +# ----------------------------------- +# Extract the dictionary values for VARNAME (optionally with TAG) and +# expand to a commented shell variable setting: +# +#    # Some comment about what VAR is for. +#    visible_name=$lt_internal_name +m4_define([_LT_LIBTOOL_DECLARE], +[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], +					   [description])))[]dnl +m4_pushdef([_libtool_name], +    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl +m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), +    [0], [_libtool_name=[$]$1], +    [1], [_libtool_name=$lt_[]$1], +    [2], [_libtool_name=$lt_[]$1], +    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl +m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl +]) + + +# _LT_LIBTOOL_CONFIG_VARS +# ----------------------- +# Produce commented declarations of non-tagged libtool config variables +# suitable for insertion in the LIBTOOL CONFIG section of the `libtool' +# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG +# section) are produced by _LT_LIBTOOL_TAG_VARS. +m4_defun([_LT_LIBTOOL_CONFIG_VARS], +[m4_foreach([_lt_var], +    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), +    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) + + +# _LT_LIBTOOL_TAG_VARS(TAG) +# ------------------------- +m4_define([_LT_LIBTOOL_TAG_VARS], +[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), +    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) + + +# _LT_TAGVAR(VARNAME, [TAGNAME]) +# ------------------------------ +m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) + + +# _LT_CONFIG_COMMANDS  # ------------------- -AC_DEFUN([_LT_AC_SYS_COMPILER], +# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of +# variables for single and double quote escaping we saved from calls +# to _LT_DECL, we can put quote escaped variables declarations +# into `config.status', and then the shell code to quote escape them in +# for loops in `config.status'.  Finally, any additional code accumulated +# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. +m4_defun([_LT_CONFIG_COMMANDS], +[AC_PROVIDE_IFELSE([LT_OUTPUT], +	dnl If the libtool generation code has been placed in $CONFIG_LT, +	dnl instead of duplicating it all over again into config.status, +	dnl then we will have config.status run $CONFIG_LT later, so it +	dnl needs to know what name is stored there: +        [AC_CONFIG_COMMANDS([libtool], +            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], +    dnl If the libtool generation code is destined for config.status, +    dnl expand the accumulated commands and init code now: +    [AC_CONFIG_COMMANDS([libtool], +        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) +])#_LT_CONFIG_COMMANDS + + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], +[ + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='$sed_quote_subst' +double_quote_subst='$double_quote_subst' +delay_variable_subst='$delay_variable_subst' +_LT_CONFIG_STATUS_DECLARATIONS +LTCC='$LTCC' +LTCFLAGS='$LTCFLAGS' +compiler='$compiler_DEFAULT' + +# Quote evaled strings. +for var in lt_decl_all_varnames([[ \ +]], lt_decl_quote_varnames); do +    case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in +    *[[\\\\\\\`\\"\\\$]]*) +      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" +      ;; +    *) +      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" +      ;; +    esac +done + +# Double-quote double-evaled strings. +for var in lt_decl_all_varnames([[ \ +]], lt_decl_dquote_varnames); do +    case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in +    *[[\\\\\\\`\\"\\\$]]*) +      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" +      ;; +    *) +      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" +      ;; +    esac +done + +# Fix-up fallback echo if it was mangled by the above quoting rules. +case \$lt_ECHO in +*'\\\[$]0 --fallback-echo"')dnl " +  lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\` +  ;; +esac + +_LT_OUTPUT_LIBTOOL_INIT +]) + + +# LT_OUTPUT +# --------- +# This macro allows early generation of the libtool script (before +# AC_OUTPUT is called), incase it is used in configure for compilation +# tests. +AC_DEFUN([LT_OUTPUT], +[: ${CONFIG_LT=./config.lt} +AC_MSG_NOTICE([creating $CONFIG_LT]) +cat >"$CONFIG_LT" <<_LTEOF +#! $SHELL +# Generated by $as_me. +# Run this file to recreate a libtool stub with the current configuration. + +lt_cl_silent=false +SHELL=\${CONFIG_SHELL-$SHELL} +_LTEOF + +cat >>"$CONFIG_LT" <<\_LTEOF +AS_SHELL_SANITIZE +_AS_PREPARE + +exec AS_MESSAGE_FD>&1 +exec AS_MESSAGE_LOG_FD>>config.log +{ +  echo +  AS_BOX([Running $as_me.]) +} >&AS_MESSAGE_LOG_FD + +lt_cl_help="\ +\`$as_me' creates a local libtool stub from the current configuration, +for use in further configure time tests before the real libtool is +generated. + +Usage: $[0] [[OPTIONS]] + +  -h, --help      print this help, then exit +  -V, --version   print version number, then exit +  -q, --quiet     do not print progress messages +  -d, --debug     don't remove temporary files + +Report bugs to <[email protected]>." + +lt_cl_version="\ +m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl +m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) +configured by $[0], generated by m4_PACKAGE_STRING. + +Copyright (C) 2008 Free Software Foundation, Inc. +This config.lt script is free software; the Free Software Foundation +gives unlimited permision to copy, distribute and modify it." + +while test $[#] != 0 +do +  case $[1] in +    --version | --v* | -V ) +      echo "$lt_cl_version"; exit 0 ;; +    --help | --h* | -h ) +      echo "$lt_cl_help"; exit 0 ;; +    --debug | --d* | -d ) +      debug=: ;; +    --quiet | --q* | --silent | --s* | -q ) +      lt_cl_silent=: ;; + +    -*) AC_MSG_ERROR([unrecognized option: $[1] +Try \`$[0] --help' for more information.]) ;; + +    *) AC_MSG_ERROR([unrecognized argument: $[1] +Try \`$[0] --help' for more information.]) ;; +  esac +  shift +done + +if $lt_cl_silent; then +  exec AS_MESSAGE_FD>/dev/null +fi +_LTEOF + +cat >>"$CONFIG_LT" <<_LTEOF +_LT_OUTPUT_LIBTOOL_COMMANDS_INIT +_LTEOF + +cat >>"$CONFIG_LT" <<\_LTEOF +AC_MSG_NOTICE([creating $ofile]) +_LT_OUTPUT_LIBTOOL_COMMANDS +AS_EXIT(0) +_LTEOF +chmod +x "$CONFIG_LT" + +# configure is writing to config.log, but config.lt does its own redirection, +# appending to config.log, which fails on DOS, as config.log is still kept +# open by configure.  Here we exec the FD to /dev/null, effectively closing +# config.log, so it can be properly (re)opened and appended to by config.lt. +if test "$no_create" != yes; then +  lt_cl_success=: +  test "$silent" = yes && +    lt_config_lt_args="$lt_config_lt_args --quiet" +  exec AS_MESSAGE_LOG_FD>/dev/null +  $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false +  exec AS_MESSAGE_LOG_FD>>config.log +  $lt_cl_success || AS_EXIT(1) +fi +])# LT_OUTPUT + + +# _LT_CONFIG(TAG) +# --------------- +# If TAG is the built-in tag, create an initial libtool script with a +# default configuration from the untagged config vars.  Otherwise add code +# to config.status for appending the configuration named by TAG from the +# matching tagged config vars. +m4_defun([_LT_CONFIG], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +_LT_CONFIG_SAVE_COMMANDS([ +  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl +  m4_if(_LT_TAG, [C], [ +    # 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 + +    cfgfile="${ofile}T" +    trap "$RM \"$cfgfile\"; exit 1" 1 2 15 +    $RM "$cfgfile" + +    cat <<_LT_EOF >> "$cfgfile" +#! $SHELL + +# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +_LT_COPYING +_LT_LIBTOOL_TAGS + +# ### BEGIN LIBTOOL CONFIG +_LT_LIBTOOL_CONFIG_VARS +_LT_LIBTOOL_TAG_VARS +# ### END LIBTOOL CONFIG + +_LT_EOF + +  case $host_os in +  aix3*) +    cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program.  For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then +  COLLECT_NAMES= +  export COLLECT_NAMES +fi +_LT_EOF +    ;; +  esac + +  _LT_PROG_LTMAIN + +  # We use sed instead of cat because bash on DJGPP gets confused if +  # if finds mixed CR/LF and LF-only lines.  Since sed operates in +  # text mode, it properly converts lines to CR/LF.  This bash problem +  # is reportedly fixed, but why not run on old versions too? +  sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ +    || (rm -f "$cfgfile"; exit 1) + +  _LT_PROG_XSI_SHELLFNS + +  sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ +    || (rm -f "$cfgfile"; exit 1) + +  mv -f "$cfgfile" "$ofile" || +    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") +  chmod +x "$ofile" +], +[cat <<_LT_EOF >> "$ofile" + +dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded +dnl in a comment (ie after a #). +# ### BEGIN LIBTOOL TAG CONFIG: $1 +_LT_LIBTOOL_TAG_VARS(_LT_TAG) +# ### END LIBTOOL TAG CONFIG: $1 +_LT_EOF +])dnl /m4_if +], +[m4_if([$1], [], [ +    PACKAGE='$PACKAGE' +    VERSION='$VERSION' +    TIMESTAMP='$TIMESTAMP' +    RM='$RM' +    ofile='$ofile'], []) +])dnl /_LT_CONFIG_SAVE_COMMANDS +])# _LT_CONFIG + + +# LT_SUPPORTED_TAG(TAG) +# --------------------- +# Trace this macro to discover what tags are supported by the libtool +# --tag option, using: +#    autoconf --trace 'LT_SUPPORTED_TAG:$1' +AC_DEFUN([LT_SUPPORTED_TAG], []) + + +# C support is built-in for now +m4_define([_LT_LANG_C_enabled], []) +m4_define([_LT_TAGS], []) + + +# LT_LANG(LANG) +# ------------- +# Enable libtool support for the given language if not already enabled. +AC_DEFUN([LT_LANG], +[AC_BEFORE([$0], [LT_OUTPUT])dnl +m4_case([$1], +  [C],			[_LT_LANG(C)], +  [C++],		[_LT_LANG(CXX)], +  [Java],		[_LT_LANG(GCJ)], +  [Fortran 77],		[_LT_LANG(F77)], +  [Fortran],		[_LT_LANG(FC)], +  [Windows Resource],	[_LT_LANG(RC)], +  [m4_ifdef([_LT_LANG_]$1[_CONFIG], +    [_LT_LANG($1)], +    [m4_fatal([$0: unsupported language: "$1"])])])dnl +])# LT_LANG + + +# _LT_LANG(LANGNAME) +# ------------------ +m4_defun([_LT_LANG], +[m4_ifdef([_LT_LANG_]$1[_enabled], [], +  [LT_SUPPORTED_TAG([$1])dnl +  m4_append([_LT_TAGS], [$1 ])dnl +  m4_define([_LT_LANG_]$1[_enabled], [])dnl +  _LT_LANG_$1_CONFIG($1)])dnl +])# _LT_LANG + + +# _LT_LANG_DEFAULT_CONFIG +# ----------------------- +m4_defun([_LT_LANG_DEFAULT_CONFIG], +[AC_PROVIDE_IFELSE([AC_PROG_CXX], +  [LT_LANG(CXX)], +  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) + +AC_PROVIDE_IFELSE([AC_PROG_F77], +  [LT_LANG(F77)], +  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) + +AC_PROVIDE_IFELSE([AC_PROG_FC], +  [LT_LANG(FC)], +  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) + +dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal +dnl pulling things in needlessly. +AC_PROVIDE_IFELSE([AC_PROG_GCJ], +  [LT_LANG(GCJ)], +  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], +    [LT_LANG(GCJ)], +    [AC_PROVIDE_IFELSE([LT_PROG_GCJ], +      [LT_LANG(GCJ)], +      [m4_ifdef([AC_PROG_GCJ], +	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) +       m4_ifdef([A][M_PROG_GCJ], +	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) +       m4_ifdef([LT_PROG_GCJ], +	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) + +AC_PROVIDE_IFELSE([LT_PROG_RC], +  [LT_LANG(RC)], +  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) +])# _LT_LANG_DEFAULT_CONFIG + +# Obsolete macros: +AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) +AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) +AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) +AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_CXX], []) +dnl AC_DEFUN([AC_LIBTOOL_F77], []) +dnl AC_DEFUN([AC_LIBTOOL_FC], []) +dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) + + +# _LT_TAG_COMPILER +# ---------------- +m4_defun([_LT_TAG_COMPILER],  [AC_REQUIRE([AC_PROG_CC])dnl +_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl +_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl +_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl +_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl +  # If no C compiler was specified, use CC.  LTCC=${LTCC-"$CC"} +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} +  # Allow CC to be a program name with arguments.  compiler=$CC -])# _LT_AC_SYS_COMPILER +])# _LT_TAG_COMPILER -# _LT_AC_SYS_LIBPATH_AIX +# _LT_COMPILER_BOILERPLATE +# ------------------------ +# Check for compiler boilerplate output or warnings with +# the simple compiler test code. +m4_defun([_LT_COMPILER_BOILERPLATE], +[m4_require([_LT_DECL_SED])dnl +ac_outfile=conftest.$ac_objext +echo "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$RM conftest* +])# _LT_COMPILER_BOILERPLATE + + +# _LT_LINKER_BOILERPLATE  # ---------------------- +# Check for linker boilerplate output or warnings with +# the simple link test code. +m4_defun([_LT_LINKER_BOILERPLATE], +[m4_require([_LT_DECL_SED])dnl +ac_outfile=conftest.$ac_objext +echo "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$RM -r conftest* +])# _LT_LINKER_BOILERPLATE + +# _LT_REQUIRED_DARWIN_CHECKS +# ------------------------- +m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ +  case $host_os in +    rhapsody* | darwin*) +    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) +    AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) +    AC_CHECK_TOOL([LIPO], [lipo], [:]) +    AC_CHECK_TOOL([OTOOL], [otool], [:]) +    AC_CHECK_TOOL([OTOOL64], [otool64], [:]) +    _LT_DECL([], [DSYMUTIL], [1], +      [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) +    _LT_DECL([], [NMEDIT], [1], +      [Tool to change global to local symbols on Mac OS X]) +    _LT_DECL([], [LIPO], [1], +      [Tool to manipulate fat objects and archives on Mac OS X]) +    _LT_DECL([], [OTOOL], [1], +      [ldd/readelf like tool for Mach-O binaries on Mac OS X]) +    _LT_DECL([], [OTOOL64], [1], +      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) + +    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], +      [lt_cv_apple_cc_single_mod=no +      if test -z "${LT_MULTI_MODULE}"; then +	# By default we will add the -single_module flag. You can override +	# by either setting the environment variable LT_MULTI_MODULE +	# non-empty at configure time, or by adding -multi_module to the +	# link flags. +	rm -rf libconftest.dylib* +	echo "int foo(void){return 1;}" > conftest.c +	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ +-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD +	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ +	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err +        _lt_result=$? +	if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then +	  lt_cv_apple_cc_single_mod=yes +	else +	  cat conftest.err >&AS_MESSAGE_LOG_FD +	fi +	rm -rf libconftest.dylib* +	rm -f conftest.* +      fi]) +    AC_CACHE_CHECK([for -exported_symbols_list linker flag], +      [lt_cv_ld_exported_symbols_list], +      [lt_cv_ld_exported_symbols_list=no +      save_LDFLAGS=$LDFLAGS +      echo "_main" > conftest.sym +      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" +      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], +	[lt_cv_ld_exported_symbols_list=yes], +	[lt_cv_ld_exported_symbols_list=no]) +	LDFLAGS="$save_LDFLAGS" +    ]) +    case $host_os in +    rhapsody* | darwin1.[[012]]) +      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; +    darwin1.*) +      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; +    darwin*) # darwin 5.x on +      # if running on 10.5 or later, the deployment target defaults +      # to the OS version, if on x86, and 10.4, the deployment +      # target defaults to 10.4. Don't you love it? +      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in +	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) +	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; +	10.[[012]]*) +	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; +	10.*) +	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; +      esac +    ;; +  esac +    if test "$lt_cv_apple_cc_single_mod" = "yes"; then +      _lt_dar_single_mod='$single_module' +    fi +    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then +      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' +    else +      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' +    fi +    if test "$DSYMUTIL" != ":"; then +      _lt_dsymutil='~$DSYMUTIL $lib || :' +    else +      _lt_dsymutil= +    fi +    ;; +  esac +]) + + +# _LT_DARWIN_LINKER_FEATURES +# -------------------------- +# Checks for linker and compiler features on darwin +m4_defun([_LT_DARWIN_LINKER_FEATURES], +[ +  m4_require([_LT_REQUIRED_DARWIN_CHECKS]) +  _LT_TAGVAR(archive_cmds_need_lc, $1)=no +  _LT_TAGVAR(hardcode_direct, $1)=no +  _LT_TAGVAR(hardcode_automatic, $1)=yes +  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +  _LT_TAGVAR(whole_archive_flag_spec, $1)='' +  _LT_TAGVAR(link_all_deplibs, $1)=yes +  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" +  case $cc_basename in +     ifort*) _lt_dar_can_shared=yes ;; +     *) _lt_dar_can_shared=$GCC ;; +  esac +  if test "$_lt_dar_can_shared" = "yes"; then +    output_verbose_link_cmd=echo +    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" +    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" +    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" +    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" +    m4_if([$1], [CXX], +[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then +      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" +      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" +    fi +],[]) +  else +  _LT_TAGVAR(ld_shlibs, $1)=no +  fi +]) + +# _LT_SYS_MODULE_PATH_AIX +# -----------------------  # Links a minimal program and checks the executable  # for the system default hardcoded library path. In most cases,  # this is /usr/lib:/lib, but when the MPI compilers are used  # the location of the communication and MPI libs are included too.  # If we don't find anything, use the default library path according  # to the aix ld manual. -AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX], -[AC_LINK_IFELSE(AC_LANG_PROGRAM,[ -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; } -}'` +m4_defun([_LT_SYS_MODULE_PATH_AIX], +[m4_require([_LT_DECL_SED])dnl +AC_LINK_IFELSE(AC_LANG_PROGRAM,[ +lt_aix_libpath_sed=' +    /Import File Strings/,/^$/ { +	/^0/ { +	    s/^0  *\(.*\)$/\1/ +	    p +	} +    }' +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`  # Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; } -}'`; fi],[]) +if test -z "$aix_libpath"; then +  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` +fi],[])  if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi -])# _LT_AC_SYS_LIBPATH_AIX +])# _LT_SYS_MODULE_PATH_AIX -# _LT_AC_SHELL_INIT(ARG) -# ---------------------- -AC_DEFUN([_LT_AC_SHELL_INIT], +# _LT_SHELL_INIT(ARG) +# ------------------- +m4_define([_LT_SHELL_INIT],  [ifdef([AC_DIVERSION_NOTICE],  	     [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],  	 [AC_DIVERT_PUSH(NOTICE)])  $1  AC_DIVERT_POP -])# _LT_AC_SHELL_INIT +])# _LT_SHELL_INIT -# _LT_AC_PROG_ECHO_BACKSLASH -# -------------------------- +# _LT_PROG_ECHO_BACKSLASH +# -----------------------  # Add some code to the start of the generated configure script which  # will find an echo command which doesn't interpret backslashes. -AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -[_LT_AC_SHELL_INIT([ +m4_defun([_LT_PROG_ECHO_BACKSLASH], +[_LT_SHELL_INIT([  # Check that we are running under the correct shell.  SHELL=${CONFIG_SHELL-/bin/sh} -case X$ECHO in +case X$lt_ECHO in  X*--fallback-echo)    # Remove one level of quotation (which was required for Make). -  ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` +  ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`    ;;  esac -echo=${ECHO-echo} +ECHO=${lt_ECHO-echo}  if test "X[$]1" = X--no-reexec; then    # Discard the --no-reexec flag, and continue.    shift  elif test "X[$]1" = X--fallback-echo; then    # Avoid inline document here, it may be left over    : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then -  # Yippee, $echo works! +elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then +  # Yippee, $ECHO works!    :  else    # Restart under the correct shell. @@ -310,134 +1083,137 @@ fi  if test "X[$]1" = X--fallback-echo; then    # used as fallback echo    shift -  cat <<EOF +  cat <<_LT_EOF  [$]* -EOF +_LT_EOF    exit 0  fi  # The HP-UX ksh and POSIX shell print the target directory to stdout  # if CDPATH is set. -if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -if test -z "$ECHO"; then -if test "X${echo_test_string+set}" != Xset; then -# find a string as large as possible, as long as the shell can cope with it -  for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do -    # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... -    if (echo_test_string="`eval $cmd`") 2>/dev/null && -       echo_test_string="`eval $cmd`" && -       (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null -    then -      break -    fi -  done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -   echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -   test "X$echo_testing_string" = "X$echo_test_string"; then -  : -else -  # The Solaris, AIX, and Digital Unix default echo programs unquote -  # backslashes.  This makes it impossible to quote backslashes using -  #   echo "$something" | sed 's/\\/\\\\/g' -  # -  # So, first we look for a working echo in the user's PATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +if test -z "$lt_ECHO"; then +  if test "X${echo_test_string+set}" != Xset; then +    # find a string as large as possible, as long as the shell can cope with it +    for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do +      # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... +      if { echo_test_string=`eval $cmd`; } 2>/dev/null && +	 { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null +      then +        break +      fi +    done +  fi -  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR -  for dir in $PATH /usr/ucb; do +  if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && +     echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && +     test "X$echo_testing_string" = "X$echo_test_string"; then +    : +  else +    # The Solaris, AIX, and Digital Unix default echo programs unquote +    # backslashes.  This makes it impossible to quote backslashes using +    #   echo "$something" | sed 's/\\/\\\\/g' +    # +    # So, first we look for a working echo in the user's PATH. + +    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR +    for dir in $PATH /usr/ucb; do +      IFS="$lt_save_ifs" +      if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && +         test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && +         echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && +         test "X$echo_testing_string" = "X$echo_test_string"; then +        ECHO="$dir/echo" +        break +      fi +    done      IFS="$lt_save_ifs" -    if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && -       test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && -       echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && -       test "X$echo_testing_string" = "X$echo_test_string"; then -      echo="$dir/echo" -      break -    fi -  done -  IFS="$lt_save_ifs" -  if test "X$echo" = Xecho; then -    # We didn't find a better echo, so look for alternatives. -    if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && -       echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && -       test "X$echo_testing_string" = "X$echo_test_string"; then -      # This shell has a builtin print -r that does the trick. -      echo='print -r' -    elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && -	 test "X$CONFIG_SHELL" != X/bin/ksh; then -      # If we have ksh, try running configure again with it. -      ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -      export ORIGINAL_CONFIG_SHELL -      CONFIG_SHELL=/bin/ksh -      export CONFIG_SHELL -      exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} -    else -      # Try using printf. -      echo='printf %s\n' -      if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -	 echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -	 test "X$echo_testing_string" = "X$echo_test_string"; then -	# Cool, printf works -	: -      elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && -	   test "X$echo_testing_string" = 'X\t' && -	   echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && -	   test "X$echo_testing_string" = "X$echo_test_string"; then -	CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL -	export CONFIG_SHELL -	SHELL="$CONFIG_SHELL" -	export SHELL -	echo="$CONFIG_SHELL [$]0 --fallback-echo" -      elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && -	   test "X$echo_testing_string" = 'X\t' && -	   echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && -	   test "X$echo_testing_string" = "X$echo_test_string"; then -	echo="$CONFIG_SHELL [$]0 --fallback-echo" +    if test "X$ECHO" = Xecho; then +      # We didn't find a better echo, so look for alternatives. +      if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' && +         echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` && +         test "X$echo_testing_string" = "X$echo_test_string"; then +        # This shell has a builtin print -r that does the trick. +        ECHO='print -r' +      elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } && +	   test "X$CONFIG_SHELL" != X/bin/ksh; then +        # If we have ksh, try running configure again with it. +        ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} +        export ORIGINAL_CONFIG_SHELL +        CONFIG_SHELL=/bin/ksh +        export CONFIG_SHELL +        exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}        else -	# maybe with a smaller string... -	prev=: +        # Try using printf. +        ECHO='printf %s\n' +        if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && +	   echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && +	   test "X$echo_testing_string" = "X$echo_test_string"; then +	  # Cool, printf works +	  : +        elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && +	     test "X$echo_testing_string" = 'X\t' && +	     echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && +	     test "X$echo_testing_string" = "X$echo_test_string"; then +	  CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL +	  export CONFIG_SHELL +	  SHELL="$CONFIG_SHELL" +	  export SHELL +	  ECHO="$CONFIG_SHELL [$]0 --fallback-echo" +        elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && +	     test "X$echo_testing_string" = 'X\t' && +	     echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && +	     test "X$echo_testing_string" = "X$echo_test_string"; then +	  ECHO="$CONFIG_SHELL [$]0 --fallback-echo" +        else +	  # maybe with a smaller string... +	  prev=: -	for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do -	  if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null -	  then -	    break -	  fi -	  prev="$cmd" -	done +	  for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do +	    if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null +	    then +	      break +	    fi +	    prev="$cmd" +	  done -	if test "$prev" != 'sed 50q "[$]0"'; then -	  echo_test_string=`eval $prev` -	  export echo_test_string -	  exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} -	else -	  # Oops.  We lost completely, so just stick with echo. -	  echo=echo -	fi +	  if test "$prev" != 'sed 50q "[$]0"'; then +	    echo_test_string=`eval $prev` +	    export echo_test_string +	    exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} +	  else +	    # Oops.  We lost completely, so just stick with echo. +	    ECHO=echo +	  fi +        fi        fi      fi    fi  fi -fi  # Copy echo and quote the copy suitably for passing to libtool from  # the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then -   ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" +lt_ECHO=$ECHO +if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then +   lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"  fi -AC_SUBST(ECHO) -])])# _LT_AC_PROG_ECHO_BACKSLASH +AC_SUBST(lt_ECHO) +]) +_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) +_LT_DECL([], [ECHO], [1], +    [An echo program that does not interpret backslashes]) +])# _LT_PROG_ECHO_BACKSLASH -# _LT_AC_LOCK -# ----------- -AC_DEFUN([_LT_AC_LOCK], +# _LT_ENABLE_LOCK +# --------------- +m4_defun([_LT_ENABLE_LOCK],  [AC_ARG_ENABLE([libtool-lock], -    [AC_HELP_STRING([--disable-libtool-lock], -	[avoid locking (might break parallel builds)])]) +  [AS_HELP_STRING([--disable-libtool-lock], +    [avoid locking (might break parallel builds)])])  test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes  # Some flags need to be propagated to the compiler or linker for good @@ -448,12 +1224,12 @@ ia64-*-hpux*)    echo 'int i;' > conftest.$ac_ext    if AC_TRY_EVAL(ac_compile); then      case `/usr/bin/file conftest.$ac_objext` in -    *ELF-32*) -      HPUX_IA64_MODE="32" -      ;; -    *ELF-64*) -      HPUX_IA64_MODE="64" -      ;; +      *ELF-32*) +	HPUX_IA64_MODE="32" +	;; +      *ELF-64*) +	HPUX_IA64_MODE="64" +	;;      esac    fi    rm -rf conftest* @@ -462,72 +1238,79 @@ ia64-*-hpux*)    # Find out which ABI we are using.    echo '[#]line __oline__ "configure"' > conftest.$ac_ext    if AC_TRY_EVAL(ac_compile); then -   if test "$lt_cv_prog_gnu_ld" = yes; then -    case `/usr/bin/file conftest.$ac_objext` in -    *32-bit*) -      LD="${LD-ld} -melf32bsmip" -      ;; -    *N32*) -      LD="${LD-ld} -melf32bmipn32" -      ;; -    *64-bit*) -      LD="${LD-ld} -melf64bmip" -      ;; -    esac -   else -    case `/usr/bin/file conftest.$ac_objext` in -    *32-bit*) -      LD="${LD-ld} -32" -      ;; -    *N32*) -      LD="${LD-ld} -n32" -      ;; -    *64-bit*) -      LD="${LD-ld} -64" -      ;; -    esac -   fi +    if test "$lt_cv_prog_gnu_ld" = yes; then +      case `/usr/bin/file conftest.$ac_objext` in +	*32-bit*) +	  LD="${LD-ld} -melf32bsmip" +	  ;; +	*N32*) +	  LD="${LD-ld} -melf32bmipn32" +	  ;; +	*64-bit*) +	  LD="${LD-ld} -melf64bmip" +	;; +      esac +    else +      case `/usr/bin/file conftest.$ac_objext` in +	*32-bit*) +	  LD="${LD-ld} -32" +	  ;; +	*N32*) +	  LD="${LD-ld} -n32" +	  ;; +	*64-bit*) +	  LD="${LD-ld} -64" +	  ;; +      esac +    fi    fi    rm -rf conftest*    ;; -x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) +x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ +s390*-*linux*|s390*-*tpf*|sparc*-*linux*)    # Find out which ABI we are using.    echo 'int i;' > conftest.$ac_ext    if AC_TRY_EVAL(ac_compile); then -    case "`/usr/bin/file conftest.o`" in -    *32-bit*) -      case $host in -        x86_64-*linux*) -          LD="${LD-ld} -m elf_i386" -          ;; -        ppc64-*linux*|powerpc64-*linux*) -          LD="${LD-ld} -m elf32ppclinux" -          ;; -        s390x-*linux*) -          LD="${LD-ld} -m elf_s390" -          ;; -        sparc64-*linux*) -          LD="${LD-ld} -m elf32_sparc" -          ;; -      esac -      ;; -    *64-bit*) -      case $host in -        x86_64-*linux*) -          LD="${LD-ld} -m elf_x86_64" -          ;; -        ppc*-*linux*|powerpc*-*linux*) -          LD="${LD-ld} -m elf64ppc" -          ;; -        s390*-*linux*) -          LD="${LD-ld} -m elf64_s390" -          ;; -        sparc*-*linux*) -          LD="${LD-ld} -m elf64_sparc" -          ;; -      esac -      ;; +    case `/usr/bin/file conftest.o` in +      *32-bit*) +	case $host in +	  x86_64-*kfreebsd*-gnu) +	    LD="${LD-ld} -m elf_i386_fbsd" +	    ;; +	  x86_64-*linux*) +	    LD="${LD-ld} -m elf_i386" +	    ;; +	  ppc64-*linux*|powerpc64-*linux*) +	    LD="${LD-ld} -m elf32ppclinux" +	    ;; +	  s390x-*linux*) +	    LD="${LD-ld} -m elf_s390" +	    ;; +	  sparc64-*linux*) +	    LD="${LD-ld} -m elf32_sparc" +	    ;; +	esac +	;; +      *64-bit*) +	case $host in +	  x86_64-*kfreebsd*-gnu) +	    LD="${LD-ld} -m elf_x86_64_fbsd" +	    ;; +	  x86_64-*linux*) +	    LD="${LD-ld} -m elf_x86_64" +	    ;; +	  ppc*-*linux*|powerpc*-*linux*) +	    LD="${LD-ld} -m elf64ppc" +	    ;; +	  s390*-*linux*|s390*-*tpf*) +	    LD="${LD-ld} -m elf64_s390" +	    ;; +	  sparc*-*linux*) +	    LD="${LD-ld} -m elf64_sparc" +	    ;; +	esac +	;;      esac    fi    rm -rf conftest* @@ -539,37 +1322,90 @@ x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)    CFLAGS="$CFLAGS -belf"    AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,      [AC_LANG_PUSH(C) -     AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) +     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])       AC_LANG_POP])    if test x"$lt_cv_cc_needs_belf" != x"yes"; then      # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf      CFLAGS="$SAVE_CFLAGS"    fi    ;; -AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], -[*-*-cygwin* | *-*-mingw* | *-*-pw32*) -  AC_CHECK_TOOL(DLLTOOL, dlltool, false) -  AC_CHECK_TOOL(AS, as, false) -  AC_CHECK_TOOL(OBJDUMP, objdump, false) +sparc*-*solaris*) +  # Find out which ABI we are using. +  echo 'int i;' > conftest.$ac_ext +  if AC_TRY_EVAL(ac_compile); then +    case `/usr/bin/file conftest.o` in +    *64-bit*) +      case $lt_cv_prog_gnu_ld in +      yes*) LD="${LD-ld} -m elf64_sparc" ;; +      *) +	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then +	  LD="${LD-ld} -64" +	fi +	;; +      esac +      ;; +    esac +  fi +  rm -rf conftest*    ;; -  ])  esac  need_locks="$enable_libtool_lock" +])# _LT_ENABLE_LOCK -])# _LT_AC_LOCK +# _LT_CMD_OLD_ARCHIVE +# ------------------- +m4_defun([_LT_CMD_OLD_ARCHIVE], +[AC_CHECK_TOOL(AR, ar, false) +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +_LT_DECL([], [AR], [1], [The archiver]) +_LT_DECL([], [AR_FLAGS], [1]) -# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +AC_CHECK_TOOL(STRIP, strip, :) +test -z "$STRIP" && STRIP=: +_LT_DECL([], [STRIP], [1], [A symbol stripping program]) + +AC_CHECK_TOOL(RANLIB, ranlib, :) +test -z "$RANLIB" && RANLIB=: +_LT_DECL([], [RANLIB], [1], +    [Commands used to install an old-style archive]) + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then +  case $host_os in +  openbsd*) +    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" +    ;; +  *) +    old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" +    ;; +  esac +  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" +fi +_LT_DECL([], [old_postinstall_cmds], [2]) +_LT_DECL([], [old_postuninstall_cmds], [2]) +_LT_TAGDECL([], [old_archive_cmds], [2], +    [Commands used to build an old-style archive]) +])# _LT_CMD_OLD_ARCHIVE + + +# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,  #		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])  # ----------------------------------------------------------------  # Check whether the given compiler option works -AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], -[AC_REQUIRE([LT_AC_PROG_SED]) +AC_DEFUN([_LT_COMPILER_OPTION], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_SED])dnl  AC_CACHE_CHECK([$1], [$2],    [$2=no -  ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) -   printf "$lt_simple_compile_test_code" > conftest.$ac_ext +   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) +   echo "$lt_simple_compile_test_code" > conftest.$ac_ext     lt_compiler_flag="$3"     # Insert the option either (1) after the last *FLAGS variable, or     # (2) before a word containing "conftest.", or (3) at the end. @@ -577,7 +1413,7 @@ AC_CACHE_CHECK([$1], [$2],     # with a dollar sign (not a hyphen), so the echo should work correctly.     # The option is referenced via a variable to avoid confusing sed.     lt_compile=`echo "$ac_compile" | $SED \ -   -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ +   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \     -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \     -e 's:$: $lt_compiler_flag:'`     (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) @@ -587,58 +1423,78 @@ AC_CACHE_CHECK([$1], [$2],     echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD     if (exit $ac_status) && test -s "$ac_outfile"; then       # The compiler can only warn and ignore the option if not recognized -     # So say no if there are warnings -     if test ! -s conftest.err; then +     # So say no if there are warnings other than the usual output. +     $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp +     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 +     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then         $2=yes       fi     fi -   $rm conftest* +   $RM conftest*  ])  if test x"[$]$2" = xyes; then -    ifelse([$5], , :, [$5]) +    m4_if([$5], , :, [$5])  else -    ifelse([$6], , :, [$6]) +    m4_if([$6], , :, [$6])  fi -])# AC_LIBTOOL_COMPILER_OPTION +])# _LT_COMPILER_OPTION +# Old name: +AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) -# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -#                          [ACTION-SUCCESS], [ACTION-FAILURE]) -# ------------------------------------------------------------ -# Check whether the given compiler option works -AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], -[AC_CACHE_CHECK([$1], [$2], + +# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +#                  [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------- +# Check whether the given linker option works +AC_DEFUN([_LT_LINKER_OPTION], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_SED])dnl +AC_CACHE_CHECK([$1], [$2],    [$2=no     save_LDFLAGS="$LDFLAGS"     LDFLAGS="$LDFLAGS $3" -   printf "$lt_simple_link_test_code" > conftest.$ac_ext +   echo "$lt_simple_link_test_code" > conftest.$ac_ext     if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then -     # The compiler can only warn and ignore the option if not recognized +     # The linker can only warn and ignore the option if not recognized       # So say no if there are warnings       if test -s conftest.err; then         # Append any errors to the config.log.         cat conftest.err 1>&AS_MESSAGE_LOG_FD +       $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp +       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 +       if diff conftest.exp conftest.er2 >/dev/null; then +         $2=yes +       fi       else         $2=yes       fi     fi -   $rm conftest* +   $RM -r conftest*     LDFLAGS="$save_LDFLAGS"  ])  if test x"[$]$2" = xyes; then -    ifelse([$4], , :, [$4]) +    m4_if([$4], , :, [$4])  else -    ifelse([$5], , :, [$5]) +    m4_if([$5], , :, [$5])  fi -])# AC_LIBTOOL_LINKER_OPTION +])# _LT_LINKER_OPTION +# Old name: +AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) -# AC_LIBTOOL_SYS_MAX_CMD_LEN -# -------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], -[# find the maximum length of command line arguments + +# LT_CMD_MAX_LEN +#--------------- +AC_DEFUN([LT_CMD_MAX_LEN], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +# find the maximum length of command line arguments  AC_MSG_CHECKING([the maximum length of command line arguments])  AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl    i=0 @@ -660,7 +1516,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl      lt_cv_sys_max_cmd_len=-1;      ;; -  cygwin* | mingw*) +  cygwin* | mingw* | cegcc*)      # On Win9x/ME, this test blows up -- it succeeds, but takes      # about 5 minutes as the teststring grows exponentially.      # Worse, since 9x/ME are not pre-emptively multitasking, @@ -677,24 +1533,79 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl      lt_cv_sys_max_cmd_len=8192;      ;; - *) -    # If test is not a shell built-in, we'll probably end up computing a -    # maximum length that is only half of the actual maximum length, but -    # we can't tell. -    while (test "X"`$CONFIG_SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \ -	       = "XX$teststring") >/dev/null 2>&1 && -	    new_result=`expr "X$teststring" : ".*" 2>&1` && -	    lt_cv_sys_max_cmd_len=$new_result && -	    test $i != 17 # 1/2 MB should be enough -    do -      i=`expr $i + 1` -      teststring=$teststring$teststring -    done -    teststring= -    # Add a significant safety factor because C++ compilers can tack on massive -    # amounts of additional arguments before passing them to the linker. -    # It appears as though 1/2 is a usable value. -    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` +  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) +    # This has been around since 386BSD, at least.  Likely further. +    if test -x /sbin/sysctl; then +      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` +    elif test -x /usr/sbin/sysctl; then +      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` +    else +      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs +    fi +    # And add a safety zone +    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` +    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` +    ;; + +  interix*) +    # We know the value 262144 and hardcode it with a safety zone (like BSD) +    lt_cv_sys_max_cmd_len=196608 +    ;; + +  osf*) +    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure +    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not +    # nice to cause kernel panics so lets avoid the loop below. +    # First set a reasonable default. +    lt_cv_sys_max_cmd_len=16384 +    # +    if test -x /sbin/sysconfig; then +      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in +        *1*) lt_cv_sys_max_cmd_len=-1 ;; +      esac +    fi +    ;; +  sco3.2v5*) +    lt_cv_sys_max_cmd_len=102400 +    ;; +  sysv5* | sco5v6* | sysv4.2uw2*) +    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` +    if test -n "$kargmax"; then +      lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[	 ]]//'` +    else +      lt_cv_sys_max_cmd_len=32768 +    fi +    ;; +  *) +    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` +    if test -n "$lt_cv_sys_max_cmd_len"; then +      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` +      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` +    else +      # Make teststring a little bigger before we do anything with it. +      # a 1K string should be a reasonable start. +      for i in 1 2 3 4 5 6 7 8 ; do +        teststring=$teststring$teststring +      done +      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} +      # If test is not a shell built-in, we'll probably end up computing a +      # maximum length that is only half of the actual maximum length, but +      # we can't tell. +      while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \ +	         = "XX$teststring$teststring"; } >/dev/null 2>&1 && +	      test $i != 17 # 1/2 MB should be enough +      do +        i=`expr $i + 1` +        teststring=$teststring$teststring +      done +      # Only check the string length outside the loop. +      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` +      teststring= +      # Add a significant safety factor because C++ compilers can tack on +      # massive amounts of additional arguments before passing them to the +      # linker.  It appears as though 1/2 is a usable value. +      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` +    fi      ;;    esac  ]) @@ -703,27 +1614,35 @@ if test -n $lt_cv_sys_max_cmd_len ; then  else    AC_MSG_RESULT(none)  fi -])# AC_LIBTOOL_SYS_MAX_CMD_LEN +max_cmd_len=$lt_cv_sys_max_cmd_len +_LT_DECL([], [max_cmd_len], [0], +    [What is the maximum length of a command?]) +])# LT_CMD_MAX_LEN +# Old name: +AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) -# _LT_AC_CHECK_DLFCN -# -------------------- -AC_DEFUN([_LT_AC_CHECK_DLFCN], -[AC_CHECK_HEADERS(dlfcn.h)dnl -])# _LT_AC_CHECK_DLFCN + +# _LT_HEADER_DLFCN +# ---------------- +m4_defun([_LT_HEADER_DLFCN], +[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl +])# _LT_HEADER_DLFCN -# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -#                           ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -# ------------------------------------------------------------------ -AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl +# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, +#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) +# ---------------------------------------------------------------- +m4_defun([_LT_TRY_DLOPEN_SELF], +[m4_require([_LT_HEADER_DLFCN])dnl  if test "$cross_compiling" = yes; then :    [$4]  else    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2    lt_status=$lt_dlunknown -  cat > conftest.$ac_ext <<EOF +  cat > conftest.$ac_ext <<_LT_EOF  [#line __oline__ "configure"  #include "confdefs.h" @@ -765,10 +1684,6 @@ else  #  endif  #endif -#ifdef __cplusplus -extern "C" void exit (int); -#endif -  void fnord() { int i=42;}  int main ()  { @@ -781,17 +1696,19 @@ int main ()        else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;        /* dlclose (self); */      } +  else +    puts (dlerror ()); -    exit (status); +  return status;  }] -EOF +_LT_EOF    if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then -    (./conftest; exit; ) 2>/dev/null +    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null      lt_status=$?      case x$lt_status in        x$lt_dlno_uscore) $1 ;;        x$lt_dlneed_uscore) $2 ;; -      x$lt_unknown|x*) $3 ;; +      x$lt_dlunknown|x*) $3 ;;      esac    else :      # compilation failed @@ -799,13 +1716,13 @@ EOF    fi  fi  rm -fr conftest* -])# _LT_AC_TRY_DLOPEN_SELF +])# _LT_TRY_DLOPEN_SELF -# AC_LIBTOOL_DLOPEN_SELF -# ------------------- -AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl +# LT_SYS_DLOPEN_SELF +# ------------------ +AC_DEFUN([LT_SYS_DLOPEN_SELF], +[m4_require([_LT_HEADER_DLFCN])dnl  if test "x$enable_dlopen" != xyes; then    enable_dlopen=unknown    enable_dlopen_self=unknown @@ -821,15 +1738,15 @@ else      lt_cv_dlopen_self=yes      ;; -  mingw* | pw32*) +  mingw* | pw32* | cegcc*)      lt_cv_dlopen="LoadLibrary"      lt_cv_dlopen_libs= -   ;; +    ;;    cygwin*)      lt_cv_dlopen="dlopen"      lt_cv_dlopen_libs= -   ;; +    ;;    darwin*)    # if libdl is installed we need to link against it @@ -839,13 +1756,13 @@ else      lt_cv_dlopen_libs=      lt_cv_dlopen_self=yes      ]) -   ;; +    ;;    *)      AC_CHECK_FUNC([shl_load],  	  [lt_cv_dlopen="shl_load"],        [AC_CHECK_LIB([dld], [shl_load], -	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], +	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],  	[AC_CHECK_FUNC([dlopen],  	      [lt_cv_dlopen="dlopen"],  	  [AC_CHECK_LIB([dl], [dlopen], @@ -853,7 +1770,7 @@ else  	    [AC_CHECK_LIB([svld], [dlopen],  		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],  	      [AC_CHECK_LIB([dld], [dld_link], -		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) +		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])  	      ])  	    ])  	  ]) @@ -874,23 +1791,23 @@ else      test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"      save_LDFLAGS="$LDFLAGS" -    eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" +    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"      save_LIBS="$LIBS"      LIBS="$lt_cv_dlopen_libs $LIBS"      AC_CACHE_CHECK([whether a program can dlopen itself],  	  lt_cv_dlopen_self, [dnl -	  _LT_AC_TRY_DLOPEN_SELF( +	  _LT_TRY_DLOPEN_SELF(  	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,  	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)      ])      if test "x$lt_cv_dlopen_self" = xyes; then -      LDFLAGS="$LDFLAGS $link_static_flag" +      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"        AC_CACHE_CHECK([whether a statically linked program can dlopen itself], -    	  lt_cv_dlopen_self_static, [dnl -	  _LT_AC_TRY_DLOPEN_SELF( +	  lt_cv_dlopen_self_static, [dnl +	  _LT_TRY_DLOPEN_SELF(  	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,  	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)        ]) @@ -912,22 +1829,36 @@ else    *) enable_dlopen_self_static=unknown ;;    esac  fi -])# AC_LIBTOOL_DLOPEN_SELF +_LT_DECL([dlopen_support], [enable_dlopen], [0], +	 [Whether dlopen is supported]) +_LT_DECL([dlopen_self], [enable_dlopen_self], [0], +	 [Whether dlopen of programs is supported]) +_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], +	 [Whether dlopen of statically linked programs is supported]) +])# LT_SYS_DLOPEN_SELF +# Old name: +AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) -# AC_LIBTOOL_PROG_CC_C_O([TAGNAME]) -# --------------------------------- -# Check to see if options -c and -o are simultaneously supported by compiler -AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O], -[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl + +# _LT_COMPILER_C_O([TAGNAME]) +# --------------------------- +# Check to see if options -c and -o are simultaneously supported by compiler. +# This macro does not hard code the compiler like AC_PROG_CC_C_O. +m4_defun([_LT_COMPILER_C_O], +[m4_require([_LT_DECL_SED])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_TAG_COMPILER])dnl  AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], -  [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)], -  [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no -   $rm -r conftest 2>/dev/null +  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], +  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no +   $RM -r conftest 2>/dev/null     mkdir conftest     cd conftest     mkdir out -   printf "$lt_simple_compile_test_code" > conftest.$ac_ext +   echo "$lt_simple_compile_test_code" > conftest.$ac_ext     lt_compiler_flag="-o out/conftest2.$ac_objext"     # Insert the option either (1) after the last *FLAGS variable, or @@ -935,7 +1866,7 @@ AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],     # Note that $ac_compile itself does not contain backslashes and begins     # with a dollar sign (not a hyphen), so the echo should work correctly.     lt_compile=`echo "$ac_compile" | $SED \ -   -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ +   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \     -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \     -e 's:$: $lt_compiler_flag:'`     (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) @@ -947,35 +1878,41 @@ AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],     then       # The compiler can only warn and ignore the option if not recognized       # So say no if there are warnings -     if test ! -s out/conftest.err; then -       _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes +     $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp +     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 +     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then +       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes       fi     fi -   chmod u+w . -   $rm conftest* +   chmod u+w . 2>&AS_MESSAGE_LOG_FD +   $RM conftest*     # SGI C++ compiler will create directory out/ii_files/ for     # template instantiation -   test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files -   $rm out/* && rmdir out +   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files +   $RM out/* && rmdir out     cd .. -   rmdir conftest -   $rm conftest* +   $RM -r conftest +   $RM conftest*  ]) -])# AC_LIBTOOL_PROG_CC_C_O +_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], +	[Does compiler simultaneously support -c and -o options?]) +])# _LT_COMPILER_C_O -# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME]) -# ----------------------------------------- +# _LT_COMPILER_FILE_LOCKS([TAGNAME]) +# ----------------------------------  # Check to see if we can do hard links to lock some files if needed -AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], -[AC_REQUIRE([_LT_AC_LOCK])dnl +m4_defun([_LT_COMPILER_FILE_LOCKS], +[m4_require([_LT_ENABLE_LOCK])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +_LT_COMPILER_C_O([$1])  hard_links="nottested" -if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then +if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then    # do not overwrite the value of need_locks provided by the user    AC_MSG_CHECKING([if we can lock with hard links])    hard_links=yes -  $rm conftest* +  $RM conftest*    ln conftest.a conftest.b 2>/dev/null && hard_links=no    touch conftest.a    ln conftest.a conftest.b 2>&5 || hard_links=no @@ -988,12 +1925,13 @@ if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks"  else    need_locks=no  fi -])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS +_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) +])# _LT_COMPILER_FILE_LOCKS -# AC_LIBTOOL_OBJDIR -# ----------------- -AC_DEFUN([AC_LIBTOOL_OBJDIR], +# _LT_CHECK_OBJDIR +# ---------------- +m4_defun([_LT_CHECK_OBJDIR],  [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],  [rm -f .libs 2>/dev/null  mkdir .libs 2>/dev/null @@ -1005,40 +1943,46 @@ else  fi  rmdir .libs 2>/dev/null])  objdir=$lt_cv_objdir -])# AC_LIBTOOL_OBJDIR +_LT_DECL([], [objdir], [0], +         [The name of the directory that contains temporary libtool files])dnl +m4_pattern_allow([LT_OBJDIR])dnl +AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", +  [Define to the sub-directory in which libtool stores uninstalled libraries.]) +])# _LT_CHECK_OBJDIR -# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME]) -# ---------------------------------------------- +# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) +# --------------------------------------  # Check hardcoding attributes. -AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], +m4_defun([_LT_LINKER_HARDCODE_LIBPATH],  [AC_MSG_CHECKING([how to hardcode library paths into programs]) -_LT_AC_TAGVAR(hardcode_action, $1)= -if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \ -   test -n "$_LT_AC_TAGVAR(runpath_var $1)" || \ -   test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)"="Xyes" ; then +_LT_TAGVAR(hardcode_action, $1)= +if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || +   test -n "$_LT_TAGVAR(runpath_var, $1)" || +   test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then -  # We can hardcode non-existant directories. -  if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no && +  # We can hardcode non-existent directories. +  if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&       # If the only mechanism to avoid hardcoding is shlibpath_var, we       # have to relink, otherwise we might link with an installed library       # when we should be linking with a yet-to-be-installed one -     ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no && -     test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then +     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && +     test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then      # Linking always hardcodes the temporary library directory. -    _LT_AC_TAGVAR(hardcode_action, $1)=relink +    _LT_TAGVAR(hardcode_action, $1)=relink    else      # We can link without hardcoding, and we can hardcode nonexisting dirs. -    _LT_AC_TAGVAR(hardcode_action, $1)=immediate +    _LT_TAGVAR(hardcode_action, $1)=immediate    fi  else    # We cannot hardcode anything, or else we can only hardcode existing    # directories. -  _LT_AC_TAGVAR(hardcode_action, $1)=unsupported +  _LT_TAGVAR(hardcode_action, $1)=unsupported  fi -AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)]) +AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) -if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then +if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || +   test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then    # Fast installation is not supported    enable_fast_install=no  elif test "$shlibpath_overrides_runpath" = yes || @@ -1046,43 +1990,107 @@ elif test "$shlibpath_overrides_runpath" = yes ||    # Fast installation is not necessary    enable_fast_install=needless  fi -])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH +_LT_TAGDECL([], [hardcode_action], [0], +    [How to hardcode a shared library path into an executable]) +])# _LT_LINKER_HARDCODE_LIBPATH -# AC_LIBTOOL_SYS_LIB_STRIP -# ------------------------ -AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP], -[striplib= +# _LT_CMD_STRIPLIB +# ---------------- +m4_defun([_LT_CMD_STRIPLIB], +[m4_require([_LT_DECL_EGREP]) +striplib=  old_striplib=  AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then    test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"    test -z "$striplib" && striplib="$STRIP --strip-unneeded"    AC_MSG_RESULT([yes])  else  # FIXME - insert some real tests, host_os isn't really good enough    case $host_os in -   darwin*) -       if test -n "$STRIP" ; then -         striplib="$STRIP -x" -         AC_MSG_RESULT([yes]) -       else -  AC_MSG_RESULT([no]) -fi -       ;; -   *) -  AC_MSG_RESULT([no]) +  darwin*) +    if test -n "$STRIP" ; then +      striplib="$STRIP -x" +      old_striplib="$STRIP -S" +      AC_MSG_RESULT([yes]) +    else +      AC_MSG_RESULT([no]) +    fi +    ;; +  *) +    AC_MSG_RESULT([no])      ;;    esac  fi -])# AC_LIBTOOL_SYS_LIB_STRIP +_LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) +_LT_DECL([], [striplib], [1]) +])# _LT_CMD_STRIPLIB -# AC_LIBTOOL_SYS_DYNAMIC_LINKER +# _LT_SYS_DYNAMIC_LINKER([TAG])  # -----------------------------  # PORTME Fill in your ld.so characteristics -AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER], -[AC_MSG_CHECKING([dynamic linker characteristics]) +m4_defun([_LT_SYS_DYNAMIC_LINKER], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_OBJDUMP])dnl +m4_require([_LT_DECL_SED])dnl +AC_MSG_CHECKING([dynamic linker characteristics]) +m4_if([$1], +	[], [ +if test "$GCC" = yes; then +  case $host_os in +    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; +    *) lt_awk_arg="/^libraries:/" ;; +  esac +  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"` +  if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then +    # if the path contains ";" then we assume it to be the separator +    # otherwise default to the standard path separator (i.e. ":") - it is +    # assumed that no part of a normal pathname contains ";" but that should +    # okay in the real world where ";" in dirpaths is itself problematic. +    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'` +  else +    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"` +  fi +  # Ok, now we have the path, separated by spaces, we can step through it +  # and add multilib dir if necessary. +  lt_tmp_lt_search_path_spec= +  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` +  for lt_sys_path in $lt_search_path_spec; do +    if test -d "$lt_sys_path/$lt_multi_os_dir"; then +      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" +    else +      test -d "$lt_sys_path" && \ +	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" +    fi +  done +  lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk ' +BEGIN {RS=" "; FS="/|\n";} { +  lt_foo=""; +  lt_count=0; +  for (lt_i = NF; lt_i > 0; lt_i--) { +    if ($lt_i != "" && $lt_i != ".") { +      if ($lt_i == "..") { +        lt_count++; +      } else { +        if (lt_count == 0) { +          lt_foo="/" $lt_i lt_foo; +        } else { +          lt_count--; +        } +      } +    } +  } +  if (lt_foo != "") { lt_freq[[lt_foo]]++; } +  if (lt_freq[[lt_foo]] == 1) { print lt_foo; } +}'` +  sys_lib_search_path_spec=`$ECHO $lt_search_path_spec` +else +  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi])  library_names_spec=  libname_spec='lib$name'  soname_spec= @@ -1096,20 +2104,6 @@ shlibpath_overrides_runpath=unknown  version_type=none  dynamic_linker="$host_os ld.so"  sys_lib_dlsearch_path_spec="/lib /usr/lib" -if test "$GCC" = yes; then -  sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` -  if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then -    # if the path contains ";" then we assume it to be the separator -    # otherwise default to the standard path separator (i.e. ":") - it is -    # assumed that no part of a normal pathname contains ";" but that should -    # okay in the real world where ";" in dirpaths is itself problematic. -    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` -  else -    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"` -  fi -else -  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -fi  need_lib_prefix=unknown  hardcode_into_libs=no @@ -1127,7 +2121,7 @@ aix3*)    soname_spec='${libname}${release}${shared_ext}$major'    ;; -aix4* | aix5*) +aix[[4-9]]*)    version_type=linux    need_lib_prefix=no    need_version=no @@ -1146,7 +2140,7 @@ aix4* | aix5*)        aix4 | aix4.[[01]] | aix4.[[01]].*)        if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'  	   echo ' yes ' -	   echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then +	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then  	:        else  	can_build_shared=no @@ -1172,9 +2166,18 @@ aix4* | aix5*)    ;;  amigaos*) -  library_names_spec='$libname.ixlibrary $libname.a' -  # Create ${libname}_ixlibrary.a entries in /sys/libs. -  finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' +  case $host_cpu in +  powerpc) +    # Since July 2007 AmigaOS4 officially supports .so libraries. +    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. +    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +    ;; +  m68k) +    library_names_spec='$libname.ixlibrary $libname.a' +    # Create ${libname}_ixlibrary.a entries in /sys/libs. +    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' +    ;; +  esac    ;;  beos*) @@ -1183,7 +2186,7 @@ beos*)    shlibpath_var=LIBRARY_PATH    ;; -bsdi4*) +bsdi[[45]]*)    version_type=linux    need_version=no    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' @@ -1197,24 +2200,28 @@ bsdi4*)    # libtool to hard-code these into programs    ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*)    version_type=windows    shrext_cmds=".dll"    need_version=no    need_lib_prefix=no    case $GCC,$host_os in -  yes,cygwin* | yes,mingw* | yes,pw32*) +  yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)      library_names_spec='$libname.dll.a'      # DLL is installed to $(libdir)/../bin by postinstall_cmds      postinstall_cmds='base_file=`basename \${file}`~ -      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ +      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~        dldir=$destdir/`dirname \$dlpath`~        test -d \$dldir || mkdir -p \$dldir~ -      $install_prog $dir/$dlname \$dldir/$dlname' +      $install_prog $dir/$dlname \$dldir/$dlname~ +      chmod a+x \$dldir/$dlname~ +      if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then +        eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; +      fi'      postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~        dlpath=$dir/\$dldll~ -       $rm \$dlpath' +       $RM \$dlpath'      shlibpath_overrides_runpath=yes      case $host_os in @@ -1223,25 +2230,25 @@ cygwin* | mingw* | pw32*)        soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'        sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"        ;; -    mingw*) +    mingw* | cegcc*)        # MinGW DLLs use traditional 'lib' prefix        soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' -      sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` -      if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then +      sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` +      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then          # It is most probably a Windows format PATH printed by          # mingw gcc, but we are running on Cygwin. Gcc prints its search          # path with ; separators, and with drive letters. We can handle the          # drive letters (cygwin fileutils understands them), so leave them,          # especially as we might pass files found there to a mingw objdump,          # which wouldn't understand a cygwinified path. Ahh. -        sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` +        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`        else -        sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"` +        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`        fi        ;;      pw32*)        # pw32 DLLs use 'pw' prefix rather than 'lib' -      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' +      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'        ;;      esac      ;; @@ -1260,17 +2267,13 @@ darwin* | rhapsody*)    version_type=darwin    need_lib_prefix=no    need_version=no -  library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' +  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'    soname_spec='${libname}${release}${major}$shared_ext'    shlibpath_overrides_runpath=yes    shlibpath_var=DYLD_LIBRARY_PATH -  shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)' -  # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. -  if test "$GCC" = yes; then -    sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` -  else -    sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' -  fi +  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' +m4_if([$1], [],[ +  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])    sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'    ;; @@ -1287,20 +2290,17 @@ freebsd1*)    dynamic_linker=no    ;; -kfreebsd*-gnu) -  version_type=linux -  need_lib_prefix=no -  need_version=no -  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' -  soname_spec='${libname}${release}${shared_ext}$major' -  shlibpath_var=LD_LIBRARY_PATH -  shlibpath_overrides_runpath=no -  hardcode_into_libs=yes -  dynamic_linker='GNU ld.so' -  ;; - -freebsd*) -  objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` +freebsd* | dragonfly*) +  # DragonFly does not have aout.  When/if they implement a new +  # versioning mechanism, adjust this. +  if test -x /usr/bin/objformat; then +    objformat=`/usr/bin/objformat` +  else +    case $host_os in +    freebsd[[123]]*) objformat=aout ;; +    *) objformat=elf ;; +    esac +  fi    version_type=freebsd-$objformat    case $version_type in      freebsd-elf*) @@ -1318,14 +2318,19 @@ freebsd*)    freebsd2*)      shlibpath_overrides_runpath=yes      ;; -  freebsd3.[01]* | freebsdelf3.[01]*) +  freebsd3.[[01]]* | freebsdelf3.[[01]]*)      shlibpath_overrides_runpath=yes      hardcode_into_libs=yes      ;; -  *) # from 3.2 on +  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ +  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)      shlibpath_overrides_runpath=no      hardcode_into_libs=yes      ;; +  *) # from 4.6 on, and DragonFly +    shlibpath_overrides_runpath=yes +    hardcode_into_libs=yes +    ;;    esac    ;; @@ -1345,7 +2350,7 @@ hpux9* | hpux10* | hpux11*)    version_type=sunos    need_lib_prefix=no    need_version=no -  case "$host_cpu" in +  case $host_cpu in    ia64*)      shrext_cmds='.so'      hardcode_into_libs=yes @@ -1361,18 +2366,18 @@ hpux9* | hpux10* | hpux11*)      fi      sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec      ;; -   hppa*64*) -     shrext_cmds='.sl' -     hardcode_into_libs=yes -     dynamic_linker="$host_os dld.sl" -     shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH -     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. -     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -     soname_spec='${libname}${release}${shared_ext}$major' -     sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" -     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec -     ;; -   *) +  hppa*64*) +    shrext_cmds='.sl' +    hardcode_into_libs=yes +    dynamic_linker="$host_os dld.sl" +    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH +    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. +    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +    soname_spec='${libname}${release}${shared_ext}$major' +    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" +    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec +    ;; +  *)      shrext_cmds='.sl'      dynamic_linker="$host_os dld.sl"      shlibpath_var=SHLIB_PATH @@ -1385,6 +2390,18 @@ hpux9* | hpux10* | hpux11*)    postinstall_cmds='chmod 555 $lib'    ;; +interix[[3-9]]*) +  version_type=linux +  need_lib_prefix=no +  need_version=no +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' +  soname_spec='${libname}${release}${shared_ext}$major' +  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' +  shlibpath_var=LD_LIBRARY_PATH +  shlibpath_overrides_runpath=no +  hardcode_into_libs=yes +  ;; +  irix5* | irix6* | nonstopux*)    case $host_os in      nonstopux*) version_type=nonstopux ;; @@ -1428,7 +2445,7 @@ linux*oldld* | linux*aout* | linux*coff*)    ;;  # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu)    version_type=linux    need_lib_prefix=no    need_version=no @@ -1437,6 +2454,17 @@ linux*)    finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'    shlibpath_var=LD_LIBRARY_PATH    shlibpath_overrides_runpath=no +  # Some binutils ld are patched to set DT_RUNPATH +  save_LDFLAGS=$LDFLAGS +  save_libdir=$libdir +  eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ +       LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" +  AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], +    [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], +       [shlibpath_overrides_runpath=yes])]) +  LDFLAGS=$save_LDFLAGS +  libdir=$save_libdir +    # This implies no fast_install, which is unacceptable.    # Some rework will be needed to allow for fast_install    # before this can be enabled. @@ -1444,7 +2472,7 @@ linux*)    # Append ld.so.conf contents to the search path    if test -f /etc/ld.so.conf; then -    lt_ld_extra=`$SED -e 's/[:,\t]/ /g;s/=[^=]*$//;s/=[^= ]* / /g' /etc/ld.so.conf | tr '\n' ' '` +    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`      sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"    fi @@ -1457,7 +2485,7 @@ linux*)    dynamic_linker='GNU/Linux ld.so'    ;; -knetbsd*-gnu) +netbsdelf*-gnu)    version_type=linux    need_lib_prefix=no    need_version=no @@ -1466,14 +2494,14 @@ knetbsd*-gnu)    shlibpath_var=LD_LIBRARY_PATH    shlibpath_overrides_runpath=no    hardcode_into_libs=yes -  dynamic_linker='GNU ld.so' +  dynamic_linker='NetBSD ld.elf_so'    ;;  netbsd*)    version_type=sunos    need_lib_prefix=no    need_version=no -  if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then +  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'      finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'      dynamic_linker='NetBSD (a.out) ld.so' @@ -1494,24 +2522,31 @@ newsos6)    shlibpath_overrides_runpath=yes    ;; -nto-qnx*) -  version_type=linux +*nto* | *qnx*) +  version_type=qnx    need_lib_prefix=no    need_version=no    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'    soname_spec='${libname}${release}${shared_ext}$major'    shlibpath_var=LD_LIBRARY_PATH -  shlibpath_overrides_runpath=yes +  shlibpath_overrides_runpath=no +  hardcode_into_libs=yes +  dynamic_linker='ldqnx.so'    ;;  openbsd*)    version_type=sunos +  sys_lib_dlsearch_path_spec="/usr/lib"    need_lib_prefix=no -  need_version=yes +  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. +  case $host_os in +    openbsd3.3 | openbsd3.3.*)	need_version=yes ;; +    *)				need_version=no  ;; +  esac    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'    shlibpath_var=LD_LIBRARY_PATH -  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then +  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then      case $host_os in        openbsd2.[[89]] | openbsd2.[[89]].*)  	shlibpath_overrides_runpath=no @@ -1545,11 +2580,8 @@ osf3* | osf4* | osf5*)    sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"    ;; -sco3.2v5*) -  version_type=osf -  soname_spec='${libname}${release}${shared_ext}$major' -  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' -  shlibpath_var=LD_LIBRARY_PATH +rdos*) +  dynamic_linker=no    ;;  solaris*) @@ -1577,7 +2609,7 @@ sunos4*)    need_version=yes    ;; -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) +sysv4 | sysv4.3*)    version_type=linux    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'    soname_spec='${libname}${release}${shared_ext}$major' @@ -1586,7 +2618,6 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)      sni)        shlibpath_overrides_runpath=no        need_lib_prefix=no -      export_dynamic_flag_spec='${wl}-Blargedynsym'        runpath_var=LD_RUN_PATH        ;;      siemens) @@ -1610,6 +2641,39 @@ sysv4*MP*)    fi    ;; +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) +  version_type=freebsd-elf +  need_lib_prefix=no +  need_version=no +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' +  soname_spec='${libname}${release}${shared_ext}$major' +  shlibpath_var=LD_LIBRARY_PATH +  shlibpath_overrides_runpath=yes +  hardcode_into_libs=yes +  if test "$with_gnu_ld" = yes; then +    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' +  else +    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' +    case $host_os in +      sco3.2v5*) +        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" +	;; +    esac +  fi +  sys_lib_dlsearch_path_spec='/usr/lib' +  ;; + +tpf*) +  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux. +  version_type=linux +  need_lib_prefix=no +  need_version=no +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +  shlibpath_var=LD_LIBRARY_PATH +  shlibpath_overrides_runpath=no +  hardcode_into_libs=yes +  ;; +  uts4*)    version_type=linux    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' @@ -1623,271 +2687,59 @@ uts4*)  esac  AC_MSG_RESULT([$dynamic_linker])  test "$dynamic_linker" = no && can_build_shared=no -])# AC_LIBTOOL_SYS_DYNAMIC_LINKER - - -# _LT_AC_TAGCONFIG -# ---------------- -AC_DEFUN([_LT_AC_TAGCONFIG], -[AC_ARG_WITH([tags], -    [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@], -        [include additional configurations @<:@automatic@:>@])], -    [tagnames="$withval"]) - -if test -f "$ltmain" && test -n "$tagnames"; then -  if test ! -f "${ofile}"; then -    AC_MSG_WARN([output file `$ofile' does not exist]) -  fi - -  if test -z "$LTCC"; then -    eval "`$SHELL ${ofile} --config | grep '^LTCC='`" -    if test -z "$LTCC"; then -      AC_MSG_WARN([output file `$ofile' does not look like a libtool script]) -    else -      AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) -    fi -  fi -  # Extract list of available tagged configurations in $ofile. -  # Note that this assumes the entire list is on one line. -  available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` - -  lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," -  for tagname in $tagnames; do -    IFS="$lt_save_ifs" -    # Check whether tagname contains only valid characters -    case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in -    "") ;; -    *)  AC_MSG_ERROR([invalid tag name: $tagname]) -	;; -    esac - -    if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null -    then -      AC_MSG_ERROR([tag name \"$tagname\" already exists]) -    fi - -    # Update the list of available tags. -    if test -n "$tagname"; then -      echo appending configuration tag \"$tagname\" to $ofile - -      case $tagname in -      CXX) -	if test -n "$CXX" && test "X$CXX" != "Xno"; then -	  AC_LIBTOOL_LANG_CXX_CONFIG -	else -	  tagname="" -	fi -	;; - -      F77) -	if test -n "$F77" && test "X$F77" != "Xno"; then -	  AC_LIBTOOL_LANG_F77_CONFIG -	else -	  tagname="" -	fi -	;; - -      GCJ) -	if test -n "$GCJ" && test "X$GCJ" != "Xno"; then -	  AC_LIBTOOL_LANG_GCJ_CONFIG -	else -	  tagname="" -	fi -	;; - -      RC) -	AC_LIBTOOL_LANG_RC_CONFIG -	;; - -      *) -	AC_MSG_ERROR([Unsupported tag name: $tagname]) -	;; -      esac - -      # Append the new tag name to the list of available tags. -      if test -n "$tagname" ; then -      available_tags="$available_tags $tagname" -    fi -    fi -  done -  IFS="$lt_save_ifs" - -  # Now substitute the updated list of available tags. -  if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then -    mv "${ofile}T" "$ofile" -    chmod +x "$ofile" -  else -    rm -f "${ofile}T" -    AC_MSG_ERROR([unable to update list of available tagged configurations.]) -  fi +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then +  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"  fi -])# _LT_AC_TAGCONFIG - - -# AC_LIBTOOL_DLOPEN -# ----------------- -# enable checks for dlopen support -AC_DEFUN([AC_LIBTOOL_DLOPEN], - [AC_BEFORE([$0],[AC_LIBTOOL_SETUP]) -])# AC_LIBTOOL_DLOPEN - - -# AC_LIBTOOL_WIN32_DLL -# -------------------- -# declare package support for building win32 dll's -AC_DEFUN([AC_LIBTOOL_WIN32_DLL], -[AC_BEFORE([$0], [AC_LIBTOOL_SETUP]) -])# AC_LIBTOOL_WIN32_DLL - - -# AC_ENABLE_SHARED([DEFAULT]) -# --------------------------- -# implement the --enable-shared flag -# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_SHARED], -[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([shared], -    [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@], -	[build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])], -    [p=${PACKAGE-default} -    case $enableval in -    yes) enable_shared=yes ;; -    no) enable_shared=no ;; -    *) -      enable_shared=no -      # Look at the argument we got.  We use all the common list separators. -      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," -      for pkg in $enableval; do -	IFS="$lt_save_ifs" -	if test "X$pkg" = "X$p"; then -	  enable_shared=yes -	fi -      done -      IFS="$lt_save_ifs" -      ;; -    esac], -    [enable_shared=]AC_ENABLE_SHARED_DEFAULT) -])# AC_ENABLE_SHARED - - -# AC_DISABLE_SHARED -# ----------------- -#- set the default shared flag to --disable-shared -AC_DEFUN([AC_DISABLE_SHARED], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_SHARED(no) -])# AC_DISABLE_SHARED - - -# AC_ENABLE_STATIC([DEFAULT]) -# --------------------------- -# implement the --enable-static flag -# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_STATIC], -[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([static], -    [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@], -	[build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])], -    [p=${PACKAGE-default} -    case $enableval in -    yes) enable_static=yes ;; -    no) enable_static=no ;; -    *) -     enable_static=no -      # Look at the argument we got.  We use all the common list separators. -      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," -      for pkg in $enableval; do -	IFS="$lt_save_ifs" -	if test "X$pkg" = "X$p"; then -	  enable_static=yes -	fi -      done -      IFS="$lt_save_ifs" -      ;; -    esac], -    [enable_static=]AC_ENABLE_STATIC_DEFAULT) -])# AC_ENABLE_STATIC - - -# AC_DISABLE_STATIC -# ----------------- -# set the default static flag to --disable-static -AC_DEFUN([AC_DISABLE_STATIC], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_STATIC(no) -])# AC_DISABLE_STATIC - - -# AC_ENABLE_FAST_INSTALL([DEFAULT]) -# --------------------------------- -# implement the --enable-fast-install flag -# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_FAST_INSTALL], -[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([fast-install], -    [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], -    [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], -    [p=${PACKAGE-default} -    case $enableval in -    yes) enable_fast_install=yes ;; -    no) enable_fast_install=no ;; -    *) -      enable_fast_install=no -      # Look at the argument we got.  We use all the common list separators. -      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," -      for pkg in $enableval; do -	IFS="$lt_save_ifs" -	if test "X$pkg" = "X$p"; then -	  enable_fast_install=yes -	fi -      done -      IFS="$lt_save_ifs" -      ;; -    esac], -    [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT) -])# AC_ENABLE_FAST_INSTALL - - -# AC_DISABLE_FAST_INSTALL -# ----------------------- -# set the default to --disable-fast-install -AC_DEFUN([AC_DISABLE_FAST_INSTALL], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_FAST_INSTALL(no) -])# AC_DISABLE_FAST_INSTALL +if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then +  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +fi +if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then +  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" +fi -# AC_LIBTOOL_PICMODE([MODE]) +_LT_DECL([], [variables_saved_for_relink], [1], +    [Variables whose values should be saved in libtool wrapper scripts and +    restored at link time]) +_LT_DECL([], [need_lib_prefix], [0], +    [Do we need the "lib" prefix for modules?]) +_LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) +_LT_DECL([], [version_type], [0], [Library versioning type]) +_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable]) +_LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) +_LT_DECL([], [shlibpath_overrides_runpath], [0], +    [Is shlibpath searched before the hard-coded library search path?]) +_LT_DECL([], [libname_spec], [1], [Format of library name prefix]) +_LT_DECL([], [library_names_spec], [1], +    [[List of archive names.  First name is the real one, the rest are links. +    The last name is the one that the linker finds with -lNAME]]) +_LT_DECL([], [soname_spec], [1], +    [[The coded name of the library, if different from the real name]]) +_LT_DECL([], [postinstall_cmds], [2], +    [Command to use after installation of a shared archive]) +_LT_DECL([], [postuninstall_cmds], [2], +    [Command to use after uninstallation of a shared archive]) +_LT_DECL([], [finish_cmds], [2], +    [Commands used to finish a libtool library installation in a directory]) +_LT_DECL([], [finish_eval], [1], +    [[As "finish_cmds", except a single script fragment to be evaled but +    not shown]]) +_LT_DECL([], [hardcode_into_libs], [0], +    [Whether we should hardcode library paths into libraries]) +_LT_DECL([], [sys_lib_search_path_spec], [2], +    [Compile-time system search path for libraries]) +_LT_DECL([], [sys_lib_dlsearch_path_spec], [2], +    [Run-time system search path for libraries]) +])# _LT_SYS_DYNAMIC_LINKER + + +# _LT_PATH_TOOL_PREFIX(TOOL)  # -------------------------- -# implement the --with-pic flag -# MODE is either `yes' or `no'.  If omitted, it defaults to `both'. -AC_DEFUN([AC_LIBTOOL_PICMODE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -pic_mode=ifelse($#,1,$1,default) -])# AC_LIBTOOL_PICMODE - - -# AC_PROG_EGREP -# ------------- -# This is predefined starting with Autoconf 2.54, so this conditional -# definition can be removed once we require Autoconf 2.54 or later. -m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP], -[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep], -   [if echo a | (grep -E '(a|b)') >/dev/null 2>&1 -    then ac_cv_prog_egrep='grep -E' -    else ac_cv_prog_egrep='egrep' -    fi]) - EGREP=$ac_cv_prog_egrep - AC_SUBST([EGREP]) -])]) - - -# AC_PATH_TOOL_PREFIX -# ------------------- -# find a file program which can recognise shared library -AC_DEFUN([AC_PATH_TOOL_PREFIX], -[AC_REQUIRE([AC_PROG_EGREP])dnl +# find a file program which can recognize shared library +AC_DEFUN([_LT_PATH_TOOL_PREFIX], +[m4_require([_LT_DECL_EGREP])dnl  AC_MSG_CHECKING([for $1])  AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,  [case $MAGIC_CMD in @@ -1900,7 +2752,7 @@ AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,  dnl $ac_dummy forces splitting on constant user-supplied paths.  dnl POSIX.2 word splitting is done only on the output of word expansions,  dnl not every word.  This closes a longstanding sh security hole. -  ac_dummy="ifelse([$2], , $PATH, [$2])" +  ac_dummy="m4_if([$2], , $PATH, [$2])"    for ac_dir in $ac_dummy; do      IFS="$lt_save_ifs"      test -z "$ac_dir" && ac_dir=. @@ -1909,13 +2761,13 @@ dnl not every word.  This closes a longstanding sh security hole.        if test -n "$file_magic_test_file"; then  	case $deplibs_check_method in  	"file_magic "*) -	  file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" +	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`  	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"  	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |  	    $EGREP "$file_magic_regex" > /dev/null; then  	    :  	  else -	    cat <<EOF 1>&2 +	    cat <<_LT_EOF 1>&2  *** Warning: the command libtool uses to detect shared libraries,  *** $file_magic_cmd, produces output that libtool cannot recognize. @@ -1926,7 +2778,7 @@ dnl not every word.  This closes a longstanding sh security hole.  *** may want to report the problem to your system manager and/or to -EOF +_LT_EOF  	  fi ;;  	esac        fi @@ -1943,37 +2795,47 @@ if test -n "$MAGIC_CMD"; then  else    AC_MSG_RESULT(no)  fi -])# AC_PATH_TOOL_PREFIX +_LT_DECL([], [MAGIC_CMD], [0], +	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl +])# _LT_PATH_TOOL_PREFIX +# Old name: +AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) -# AC_PATH_MAGIC -# ------------- -# find a file program which can recognise a shared library -AC_DEFUN([AC_PATH_MAGIC], -[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) + +# _LT_PATH_MAGIC +# -------------- +# find a file program which can recognize a shared library +m4_defun([_LT_PATH_MAGIC], +[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)  if test -z "$lt_cv_path_MAGIC_CMD"; then    if test -n "$ac_tool_prefix"; then -    AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) +    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)    else      MAGIC_CMD=:    fi  fi -])# AC_PATH_MAGIC +])# _LT_PATH_MAGIC -# AC_PROG_LD +# LT_PATH_LD  # ----------  # find the pathname to the GNU or non-GNU linker -AC_DEFUN([AC_PROG_LD], -[AC_ARG_WITH([gnu-ld], -    [AC_HELP_STRING([--with-gnu-ld], -	[assume the C compiler uses GNU ld @<:@default=no@:>@])], -    [test "$withval" = no || with_gnu_ld=yes], -    [with_gnu_ld=no]) -AC_REQUIRE([LT_AC_PROG_SED])dnl -AC_REQUIRE([AC_PROG_CC])dnl +AC_DEFUN([LT_PATH_LD], +[AC_REQUIRE([AC_PROG_CC])dnl  AC_REQUIRE([AC_CANONICAL_HOST])dnl  AC_REQUIRE([AC_CANONICAL_BUILD])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_DECL_EGREP])dnl + +AC_ARG_WITH([gnu-ld], +    [AS_HELP_STRING([--with-gnu-ld], +	[assume the C compiler uses GNU ld @<:@default=no@:>@])], +    [test "$withval" = no || with_gnu_ld=yes], +    [with_gnu_ld=no])dnl +  ac_prog=ld  if test "$GCC" = yes; then    # Check if gcc -print-prog-name=ld gives a path. @@ -1990,9 +2852,9 @@ if test "$GCC" = yes; then      [[\\/]]* | ?:[[\\/]]*)        re_direlt='/[[^/]][[^/]]*/\.\./'        # Canonicalize the pathname of ld -      ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` -      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do -	ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` +      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` +      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do +	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`        done        test -z "$LD" && LD="$ac_prog"        ;; @@ -2019,7 +2881,7 @@ AC_CACHE_VAL(lt_cv_path_LD,      if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then        lt_cv_path_LD="$ac_dir/$ac_prog"        # Check to see if the program is GNU ld.  I'd rather use --version, -      # but apparently some GNU ld's only accept -v. +      # but apparently some variants of GNU ld only accept -v.        # Break only if it was the GNU/non-GNU ld that we prefer.        case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in        *GNU* | *'with BFD'*) @@ -2042,16 +2904,25 @@ else    AC_MSG_RESULT(no)  fi  test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -AC_PROG_LD_GNU -])# AC_PROG_LD +_LT_PATH_LD_GNU +AC_SUBST([LD]) +_LT_TAGDECL([], [LD], [1], [The linker used to build libraries]) +])# LT_PATH_LD -# AC_PROG_LD_GNU -# -------------- -AC_DEFUN([AC_PROG_LD_GNU], -[AC_REQUIRE([AC_PROG_EGREP])dnl -AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, -[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +# Old names: +AU_ALIAS([AM_PROG_LD], [LT_PATH_LD]) +AU_ALIAS([AC_PROG_LD], [LT_PATH_LD]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_PROG_LD], []) +dnl AC_DEFUN([AC_PROG_LD], []) + + +# _LT_PATH_LD_GNU +#- -------------- +m4_defun([_LT_PATH_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU lds only accept -v.  case `$LD -v 2>&1 </dev/null` in  *GNU* | *'with BFD'*)    lt_cv_prog_gnu_ld=yes @@ -2061,14 +2932,14 @@ case `$LD -v 2>&1 </dev/null` in    ;;  esac])  with_gnu_ld=$lt_cv_prog_gnu_ld -])# AC_PROG_LD_GNU +])# _LT_PATH_LD_GNU -# AC_PROG_LD_RELOAD_FLAG -# ---------------------- +# _LT_CMD_RELOAD +# --------------  # find reload flag for linker  #   -- PORTME Some linkers may need a different reload flag. -AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], +m4_defun([_LT_CMD_RELOAD],  [AC_CACHE_CHECK([for $LD option to reload object files],    lt_cv_ld_reload_flag,    [lt_cv_ld_reload_flag='-r']) @@ -2078,15 +2949,28 @@ case $reload_flag in  *) reload_flag=" $reload_flag" ;;  esac  reload_cmds='$LD$reload_flag -o $output$reload_objs' -])# AC_PROG_LD_RELOAD_FLAG +case $host_os in +  darwin*) +    if test "$GCC" = yes; then +      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' +    else +      reload_cmds='$LD$reload_flag -o $output$reload_objs' +    fi +    ;; +esac +_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl +_LT_DECL([], [reload_cmds], [2])dnl +])# _LT_CMD_RELOAD -# AC_DEPLIBS_CHECK_METHOD -# ----------------------- +# _LT_CHECK_MAGIC_METHOD +# ----------------------  # how to check for library dependencies  #  -- PORTME fill in with the dynamic library characteristics -AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -[AC_CACHE_CHECK([how to recognise dependent libraries], +m4_defun([_LT_CHECK_MAGIC_METHOD], +[m4_require([_LT_DECL_EGREP]) +m4_require([_LT_DECL_OBJDUMP]) +AC_CACHE_CHECK([how to recognize dependent libraries],  lt_cv_deplibs_check_method,  [lt_cv_file_magic_cmd='$MAGIC_CMD'  lt_cv_file_magic_test_file= @@ -2103,7 +2987,7 @@ lt_cv_deplibs_check_method='unknown'  # whether `pass_all' will *always* work, you probably want this one.  case $host_os in -aix4* | aix5*) +aix[[4-9]]*)    lt_cv_deplibs_check_method=pass_all    ;; @@ -2111,7 +2995,7 @@ beos*)    lt_cv_deplibs_check_method=pass_all    ;; -bsdi4*) +bsdi[[45]]*)    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'    lt_cv_file_magic_cmd='/usr/bin/file -L'    lt_cv_file_magic_test_file=/shlib/libc.so @@ -2125,8 +3009,20 @@ cygwin*)  mingw* | pw32*)    # Base MSYS/MinGW do not provide the 'file' command needed by -  # func_win32_libid shell function, so use a weaker test based on 'objdump'. -  lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' +  # func_win32_libid shell function, so use a weaker test based on 'objdump', +  # unless we find 'file', for example because we are cross-compiling. +  if ( file / ) >/dev/null 2>&1; then +    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' +    lt_cv_file_magic_cmd='func_win32_libid' +  else +    lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' +    lt_cv_file_magic_cmd='$OBJDUMP -f' +  fi +  ;; + +cegcc) +  # use the weaker test based on 'objdump'. See mingw*. +  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'    lt_cv_file_magic_cmd='$OBJDUMP -f'    ;; @@ -2134,13 +3030,13 @@ darwin* | rhapsody*)    lt_cv_deplibs_check_method=pass_all    ;; -freebsd* | kfreebsd*-gnu) -  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +freebsd* | dragonfly*) +  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then      case $host_cpu in      i*86 )        # Not sure whether the presence of OpenBSD here was a mistake.        # Let's accept both of them until this is cleared up. -      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' +      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'        lt_cv_file_magic_cmd=/usr/bin/file        lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`        ;; @@ -2156,7 +3052,7 @@ gnu*)  hpux10.20* | hpux11*)    lt_cv_file_magic_cmd=/usr/bin/file -  case "$host_cpu" in +  case $host_cpu in    ia64*)      lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'      lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so @@ -2172,6 +3068,11 @@ hpux10.20* | hpux11*)    esac    ;; +interix[[3-9]]*) +  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here +  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' +  ;; +  irix5* | irix6* | nonstopux*)    case $LD in    *-32|*"-32 ") libmagic=32-bit;; @@ -2183,12 +3084,12 @@ irix5* | irix6* | nonstopux*)    ;;  # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu)    lt_cv_deplibs_check_method=pass_all    ;; -netbsd* | knetbsd*-gnu) -  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +netbsd* | netbsdelf*-gnu) +  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then      lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'    else      lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' @@ -2201,17 +3102,15 @@ newos6*)    lt_cv_file_magic_test_file=/usr/lib/libnls.so    ;; -nto-qnx*) -  lt_cv_deplibs_check_method=unknown +*nto* | *qnx*) +  lt_cv_deplibs_check_method=pass_all    ;;  openbsd*) -  lt_cv_file_magic_cmd=/usr/bin/file -  lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' +  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then +    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'    else -    lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' +    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'    fi    ;; @@ -2219,7 +3118,7 @@ osf3* | osf4* | osf5*)    lt_cv_deplibs_check_method=pass_all    ;; -sco3.2v5*) +rdos*)    lt_cv_deplibs_check_method=pass_all    ;; @@ -2227,7 +3126,11 @@ solaris*)    lt_cv_deplibs_check_method=pass_all    ;; -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) +  lt_cv_deplibs_check_method=pass_all +  ;; + +sysv4 | sysv4.3*)    case $host_vendor in    motorola)      lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' @@ -2248,10 +3151,13 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)    siemens)      lt_cv_deplibs_check_method=pass_all      ;; +  pc) +    lt_cv_deplibs_check_method=pass_all +    ;;    esac    ;; -sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*) +tpf*)    lt_cv_deplibs_check_method=pass_all    ;;  esac @@ -2259,58 +3165,106 @@ esac  file_magic_cmd=$lt_cv_file_magic_cmd  deplibs_check_method=$lt_cv_deplibs_check_method  test -z "$deplibs_check_method" && deplibs_check_method=unknown -])# AC_DEPLIBS_CHECK_METHOD + +_LT_DECL([], [deplibs_check_method], [1], +    [Method to check whether dependent libraries are shared objects]) +_LT_DECL([], [file_magic_cmd], [1], +    [Command to use when deplibs_check_method == "file_magic"]) +])# _LT_CHECK_MAGIC_METHOD -# AC_PROG_NM +# LT_PATH_NM  # ---------- -# find the pathname to a BSD-compatible name lister -AC_DEFUN([AC_PROG_NM], -[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, +# find the pathname to a BSD- or MS-compatible name lister +AC_DEFUN([LT_PATH_NM], +[AC_REQUIRE([AC_PROG_CC])dnl +AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,  [if test -n "$NM"; then    # Let the user override the test.    lt_cv_path_NM="$NM"  else -  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR -  for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do -    IFS="$lt_save_ifs" -    test -z "$ac_dir" && ac_dir=. -    tmp_nm="$ac_dir/${ac_tool_prefix}nm" -    if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then -      # Check to see if the nm accepts a BSD-compat flag. -      # Adding the `sed 1q' prevents false positives on HP-UX, which says: -      #   nm: unknown option "B" ignored -      # Tru64's nm complains that /dev/null is an invalid object file -      case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in -      */dev/null* | *'Invalid file or object type'*) -	lt_cv_path_NM="$tmp_nm -B" -	break -        ;; -      *) -	case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in -	*/dev/null*) -	  lt_cv_path_NM="$tmp_nm -p" +  lt_nm_to_check="${ac_tool_prefix}nm" +  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then +    lt_nm_to_check="$lt_nm_to_check nm" +  fi +  for lt_tmp_nm in $lt_nm_to_check; do +    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR +    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do +      IFS="$lt_save_ifs" +      test -z "$ac_dir" && ac_dir=. +      tmp_nm="$ac_dir/$lt_tmp_nm" +      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then +	# Check to see if the nm accepts a BSD-compat flag. +	# Adding the `sed 1q' prevents false positives on HP-UX, which says: +	#   nm: unknown option "B" ignored +	# Tru64's nm complains that /dev/null is an invalid object file +	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in +	*/dev/null* | *'Invalid file or object type'*) +	  lt_cv_path_NM="$tmp_nm -B"  	  break  	  ;;  	*) -	  lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but -	  continue # so that we can try to find one that supports BSD flags +	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in +	  */dev/null*) +	    lt_cv_path_NM="$tmp_nm -p" +	    break +	    ;; +	  *) +	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but +	    continue # so that we can try to find one that supports BSD flags +	    ;; +	  esac  	  ;;  	esac -      esac -    fi +      fi +    done +    IFS="$lt_save_ifs"    done -  IFS="$lt_save_ifs" -  test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +  : ${lt_cv_path_NM=no}  fi]) -NM="$lt_cv_path_NM" -])# AC_PROG_NM +if test "$lt_cv_path_NM" != "no"; then +  NM="$lt_cv_path_NM" +else +  # Didn't find any BSD compatible name lister, look for dumpbin. +  AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :) +  AC_SUBST([DUMPBIN]) +  if test "$DUMPBIN" != ":"; then +    NM="$DUMPBIN" +  fi +fi +test -z "$NM" && NM=nm +AC_SUBST([NM]) +_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl + +AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], +  [lt_cv_nm_interface="BSD nm" +  echo "int some_variable = 0;" > conftest.$ac_ext +  (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD) +  (eval "$ac_compile" 2>conftest.err) +  cat conftest.err >&AS_MESSAGE_LOG_FD +  (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) +  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) +  cat conftest.err >&AS_MESSAGE_LOG_FD +  (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD) +  cat conftest.out >&AS_MESSAGE_LOG_FD +  if $GREP 'External.*some_variable' conftest.out > /dev/null; then +    lt_cv_nm_interface="MS dumpbin" +  fi +  rm -f conftest*]) +])# LT_PATH_NM +# Old names: +AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) +AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_PROG_NM], []) +dnl AC_DEFUN([AC_PROG_NM], []) -# AC_CHECK_LIBM -# ------------- + +# LT_LIB_M +# --------  # check for math library -AC_DEFUN([AC_CHECK_LIBM], +AC_DEFUN([LT_LIB_M],  [AC_REQUIRE([AC_CANONICAL_HOST])dnl  LIBM=  case $host in @@ -2325,2011 +3279,46 @@ case $host in    AC_CHECK_LIB(m, cos, LIBM="-lm")    ;;  esac -])# AC_CHECK_LIBM +AC_SUBST([LIBM]) +])# LT_LIB_M +# Old name: +AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_CHECK_LIBM], []) -# AC_LIBLTDL_CONVENIENCE([DIRECTORY]) -# ----------------------------------- -# sets LIBLTDL to the link flags for the libltdl convenience library and -# LTDLINCL to the include flags for the libltdl header and adds -# --enable-ltdl-convenience to the configure arguments.  Note that LIBLTDL -# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If -# DIRECTORY is not provided, it is assumed to be `libltdl'.  LIBLTDL will -# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with -# '${top_srcdir}/' (note the single quotes!).  If your package is not -# flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -  case $enable_ltdl_convenience in -  no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; -  "") enable_ltdl_convenience=yes -      ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; -  esac -  LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la -  LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) -  # For backwards non-gettext consistent compatibility... -  INCLTDL="$LTDLINCL" -])# AC_LIBLTDL_CONVENIENCE +# _LT_COMPILER_NO_RTTI([TAGNAME]) +# ------------------------------- +m4_defun([_LT_COMPILER_NO_RTTI], +[m4_require([_LT_TAG_COMPILER])dnl -# AC_LIBLTDL_INSTALLABLE([DIRECTORY]) -# ----------------------------------- -# sets LIBLTDL to the link flags for the libltdl installable library and -# LTDLINCL to the include flags for the libltdl header and adds -# --enable-ltdl-install to the configure arguments.  Note that LIBLTDL -# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If -# DIRECTORY is not provided and an installed libltdl is not found, it is -# assumed to be `libltdl'.  LIBLTDL will be prefixed with '${top_builddir}/' -# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single -# quotes!).  If your package is not flat and you're not using automake, -# define top_builddir and top_srcdir appropriately in the Makefiles. -# In the future, this macro may have to be called after AC_PROG_LIBTOOL. -AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -  AC_CHECK_LIB(ltdl, lt_dlinit, -  [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], -  [if test x"$enable_ltdl_install" = xno; then -     AC_MSG_WARN([libltdl not installed, but installation disabled]) -   else -     enable_ltdl_install=yes -   fi -  ]) -  if test x"$enable_ltdl_install" = x"yes"; then -    ac_configure_args="$ac_configure_args --enable-ltdl-install" -    LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la -    LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) -  else -    ac_configure_args="$ac_configure_args --enable-ltdl-install=no" -    LIBLTDL="-lltdl" -    LTDLINCL= -  fi -  # For backwards non-gettext consistent compatibility... -  INCLTDL="$LTDLINCL" -])# AC_LIBLTDL_INSTALLABLE - - -# AC_LIBTOOL_CXX -# -------------- -# enable support for C++ libraries -AC_DEFUN([AC_LIBTOOL_CXX], -[AC_REQUIRE([_LT_AC_LANG_CXX]) -])# AC_LIBTOOL_CXX - - -# _LT_AC_LANG_CXX -# --------------- -AC_DEFUN([_LT_AC_LANG_CXX], -[AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([AC_PROG_CXXCPP]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) -])# _LT_AC_LANG_CXX - - -# AC_LIBTOOL_F77 -# -------------- -# enable support for Fortran 77 libraries -AC_DEFUN([AC_LIBTOOL_F77], -[AC_REQUIRE([_LT_AC_LANG_F77]) -])# AC_LIBTOOL_F77 - - -# _LT_AC_LANG_F77 -# --------------- -AC_DEFUN([_LT_AC_LANG_F77], -[AC_REQUIRE([AC_PROG_F77]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) -])# _LT_AC_LANG_F77 - - -# AC_LIBTOOL_GCJ -# -------------- -# enable support for GCJ libraries -AC_DEFUN([AC_LIBTOOL_GCJ], -[AC_REQUIRE([_LT_AC_LANG_GCJ]) -])# AC_LIBTOOL_GCJ - - -# _LT_AC_LANG_GCJ -# --------------- -AC_DEFUN([_LT_AC_LANG_GCJ], -[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], -  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], -    [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], -      [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], -	 [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], -	   [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) -])# _LT_AC_LANG_GCJ - - -# AC_LIBTOOL_RC -# -------------- -# enable support for Windows resource files -AC_DEFUN([AC_LIBTOOL_RC], -[AC_REQUIRE([LT_AC_PROG_RC]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) -])# AC_LIBTOOL_RC - - -# AC_LIBTOOL_LANG_C_CONFIG -# ------------------------ -# Ensure that the configuration vars for the C compiler are -# suitably defined.  Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG]) -AC_DEFUN([_LT_AC_LANG_C_CONFIG], -[lt_save_CC="$CC" -AC_LANG_PUSH(C) - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(){return(0);}\n' - -_LT_AC_SYS_COMPILER - -# -# Check for any special shared library compilation flags. -# -_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)= -if test "$GCC" = no; then -  case $host_os in -  sco3.2v5*) -    _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf' -    ;; -  esac -fi -if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then -  AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries]) -  if echo "$old_CC $old_CFLAGS " | grep "[[ 	]]$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[ 	]]" >/dev/null; then : -  else -    AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure]) -    _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no -  fi -fi - - -# -# Check to make sure the static flag actually works. -# -AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works], -  _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1), -  $_LT_AC_TAGVAR(lt_prog_compiler_static, $1), -  [], -  [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=]) - - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -# Report which librarie types wil actually be built -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) - -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) -  test "$enable_shared" = yes && enable_static=no -  if test -n "$RANLIB"; then -    archive_cmds="$archive_cmds~\$RANLIB \$lib" -    postinstall_cmds='$RANLIB $lib' -  fi -  ;; - -aix4* | aix5*) -  if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then -    test "$enable_shared" = yes && enable_static=no -  fi -  ;; -  darwin* | rhapsody*) -  if test "$GCC" = yes; then -    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -    case "$host_os" in -    rhapsody* | darwin1.[[012]]) -      _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' -      ;; -    *) # Darwin 1.3 on -      if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then -      	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' -      else -        case ${MACOSX_DEPLOYMENT_TARGET} in -          10.[[012]]) -            _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' -            ;; -          10.*) -            _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup' -            ;; -        esac -      fi -      ;; -    esac -    output_verbose_link_cmd='echo' -    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring' -    _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' -    # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's -    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag  -o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' -    _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' -    _LT_AC_TAGVAR(hardcode_direct, $1)=no -    _LT_AC_TAGVAR(hardcode_automatic, $1)=yes -    _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported -    _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' -    _LT_AC_TAGVAR(link_all_deplibs, $1)=yes -  else -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -  fi -    ;; -esac -AC_MSG_RESULT([$enable_shared]) - -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_C_CONFIG - - -# AC_LIBTOOL_LANG_CXX_CONFIG -# -------------------------- -# Ensure that the configuration vars for the C compiler are -# suitably defined.  Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)]) -AC_DEFUN([_LT_AC_LANG_CXX_CONFIG], -[AC_LANG_PUSH(C++) -AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([AC_PROG_CXXCPP]) - -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_AC_TAGVAR(allow_undefined_flag, $1)= -_LT_AC_TAGVAR(always_export_symbols, $1)=no -_LT_AC_TAGVAR(archive_expsym_cmds, $1)= -_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_direct, $1)=no -_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -_LT_AC_TAGVAR(hardcode_minus_L, $1)=no -_LT_AC_TAGVAR(hardcode_automatic, $1)=no -_LT_AC_TAGVAR(module_cmds, $1)= -_LT_AC_TAGVAR(module_expsym_cmds, $1)= -_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown -_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_AC_TAGVAR(no_undefined_flag, $1)= -_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Dependencies to place before and after the object being linked: -_LT_AC_TAGVAR(predep_objects, $1)= -_LT_AC_TAGVAR(postdep_objects, $1)= -_LT_AC_TAGVAR(predeps, $1)= -_LT_AC_TAGVAR(postdeps, $1)= -_LT_AC_TAGVAR(compiler_lib_search_path, $1)= - -# Source file extension for C++ test sources. -ac_ext=cc - -# Object file extension for compiled C++ test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC=$CC -lt_save_LD=$LD -lt_save_GCC=$GCC -GCC=$GXX -lt_save_with_gnu_ld=$with_gnu_ld -lt_save_path_LD=$lt_cv_path_LD -if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then -  lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx -else -  unset lt_cv_prog_gnu_ld -fi -if test -n "${lt_cv_path_LDCXX+set}"; then -  lt_cv_path_LD=$lt_cv_path_LDCXX -else -  unset lt_cv_path_LD -fi -test -z "${LDCXX+set}" || LD=$LDCXX -CC=${CXX-"c++"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` - -# We don't want -fno-exception wen compiling C++ code, so set the -# no_builtin_flag separately -if test "$GXX" = yes; then -  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' -else -  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= -fi - -if test "$GXX" = yes; then -  # Set up default GNU C++ configuration - -  AC_PROG_LD - -  # Check if GNU C++ uses GNU ld as the underlying linker, since the -  # archiving commands below assume that GNU ld is being used. -  if test "$with_gnu_ld" = yes; then -    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' -    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - -    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' -    _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - -    # If archive_cmds runs LD, not CC, wlarc should be empty -    # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to -    #     investigate it a little bit more. (MM) -    wlarc='${wl}' - -    # ancient GNU ld didn't support --whole-archive et. al. -    if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ -	grep 'no-whole-archive' > /dev/null; then -      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' -    else -      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -    fi -  else -    with_gnu_ld=no -    wlarc= - -    # A generic and very simple default shared library creation -    # command for GNU C++ for the case where it uses the native -    # linker, instead of GNU ld.  If possible, this setting should -    # overridden to take advantage of the native linker features on -    # the platform it is being used on. -    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' -  fi - -  # Commands to make compiler produce verbose output that lists -  # what "hidden" libraries, object files and flags are used when -  # linking a shared library. -  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' - -else -  GXX=no -  with_gnu_ld=no -  wlarc= -fi - -# PORTME: fill in a description of your system's C++ link characteristics -AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -_LT_AC_TAGVAR(ld_shlibs, $1)=yes -case $host_os in -  aix3*) -    # FIXME: insert proper C++ library support -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -    ;; -  aix4* | aix5*) -    if test "$host_cpu" = ia64; then -      # On IA64, the linker does run time linking by default, so we don't -      # have to do anything special. -      aix_use_runtimelinking=no -      exp_sym_flag='-Bexport' -      no_entry_flag="" -    else -      aix_use_runtimelinking=no - -      # Test if we are trying to use run time linking or normal -      # AIX style linking. If -brtl is somewhere in LDFLAGS, we -      # need to do runtime linking. -      case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) -	for ld_flag in $LDFLAGS; do -	  case $ld_flag in -	  *-brtl*) -	    aix_use_runtimelinking=yes -	    break -	    ;; -	  esac -	done -      esac - -      exp_sym_flag='-bexport' -      no_entry_flag='-bnoentry' -    fi - -    # When large executables or shared objects are built, AIX ld can -    # have problems creating the table of contents.  If linking a library -    # or program results in "error TOC overflow" add -mminimal-toc to -    # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not -    # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - -    _LT_AC_TAGVAR(archive_cmds, $1)='' -    _LT_AC_TAGVAR(hardcode_direct, $1)=yes -    _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' -    _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - -    if test "$GXX" = yes; then -      case $host_os in aix4.[012]|aix4.[012].*) -      # We only want to do this on AIX 4.2 and lower, the check -      # below for broken collect2 doesn't work under 4.3+ -	collect2name=`${CC} -print-prog-name=collect2` -	if test -f "$collect2name" && \ -	   strings "$collect2name" | grep resolve_lib_name >/dev/null -	then -	  # We have reworked collect2 -	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes -	else -	  # We have old collect2 -	  _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported -	  # It fails to find uninstalled libraries when the uninstalled -	  # path is not listed in the libpath.  Setting hardcode_minus_L -	  # to unsupported forces relinking -	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -	fi -      esac -      shared_flag='-shared' -    else -      # not using gcc -      if test "$host_cpu" = ia64; then -	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release -	# chokes on -Wl,-G. The following line is correct: -	shared_flag='-G' -      else -	if test "$aix_use_runtimelinking" = yes; then -	  shared_flag='${wl}-G' -	else -	  shared_flag='${wl}-bM:SRE' -	fi -      fi -    fi - -    # It seems that -bexpall does not export symbols beginning with -    # underscore (_), so it is better to generate a list of symbols to export. -    _LT_AC_TAGVAR(always_export_symbols, $1)=yes -    if test "$aix_use_runtimelinking" = yes; then -      # Warning - without using the other runtime loading flags (-brtl), -      # -berok will link without error, but may produce a broken library. -      _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' -      # Determine the default libpath from the value encoded in an empty executable. -      _LT_AC_SYS_LIBPATH_AIX -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - -      _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" -     else -      if test "$host_cpu" = ia64; then -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' -	_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" -      else -	# Determine the default libpath from the value encoded in an empty executable. -	_LT_AC_SYS_LIBPATH_AIX -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" -	# Warning - without using the other run time loading flags, -	# -berok will link without error, but may produce a broken library. -	_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' -	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' -	# -bexpall does not export symbols beginning with underscore (_) -	_LT_AC_TAGVAR(always_export_symbols, $1)=yes -	# Exported symbols can be pulled into shared objects from archives -	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' ' -	_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes -	# This is similar to how AIX traditionally builds it's shared libraries. -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' -      fi -    fi -    ;; -  chorus*) -    case $cc_basename in -      *) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -    esac -    ;; - -  cygwin* | mingw* | pw32*) -    # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, -    # as there is no search path for DLLs. -    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -    _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported -    _LT_AC_TAGVAR(always_export_symbols, $1)=no -    _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - -    if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then -      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' -      # If the export-symbols file already is a .def file (1st line -      # is EXPORTS), use it as is; otherwise, prepend... -      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then -	cp $export_symbols $output_objdir/$soname.def; -      else -	echo EXPORTS > $output_objdir/$soname.def; -	cat $export_symbols >> $output_objdir/$soname.def; -      fi~ -      $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' -    else -      _LT_AC_TAGVAR(ld_shlibs, $1)=no -    fi -  ;; - -  darwin* | rhapsody*) -  if test "$GXX" = yes; then -    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -    case "$host_os" in -    rhapsody* | darwin1.[[012]]) -      _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' -      ;; -    *) # Darwin 1.3 on -      if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then -      	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' -      else -        case ${MACOSX_DEPLOYMENT_TARGET} in -          10.[[012]]) -            _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' -            ;; -          10.*) -            _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup' -            ;; -        esac -      fi -      ;; -    esac -    lt_int_apple_cc_single_mod=no -    output_verbose_link_cmd='echo' -    if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then -      lt_int_apple_cc_single_mod=yes -    fi -    if test "X$lt_int_apple_cc_single_mod" = Xyes ; then -      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' -    else -      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' -    fi -    _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' - -    # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's -    if test "X$lt_int_apple_cc_single_mod" = Xyes ; then -      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' -    else -      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' -    fi -    _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' -    _LT_AC_TAGVAR(hardcode_direct, $1)=no -    _LT_AC_TAGVAR(hardcode_automatic, $1)=yes -    _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported -    _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' -    _LT_AC_TAGVAR(link_all_deplibs, $1)=yes -  else -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -  fi -    ;; - -  dgux*) -    case $cc_basename in -      ec++) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      ghcx) -	# Green Hills C++ Compiler -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      *) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -    esac -    ;; -  freebsd[12]*) -    # C++ shared libraries reported to be fairly broken before switch to ELF -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -    ;; -  freebsd-elf*) -    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -    ;; -  freebsd* | kfreebsd*-gnu) -    # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF -    # conventions -    _LT_AC_TAGVAR(ld_shlibs, $1)=yes -    ;; -  gnu*) -    ;; -  hpux9*) -    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' -    _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -    _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' -    _LT_AC_TAGVAR(hardcode_direct, $1)=yes -    _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, -				# but as the default -				# location of the library. - -    case $cc_basename in -    CC) -      # FIXME: insert proper C++ library support -      _LT_AC_TAGVAR(ld_shlibs, $1)=no -      ;; -    aCC) -      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' -      # Commands to make compiler produce verbose output that lists -      # what "hidden" libraries, object files and flags are used when -      # linking a shared library. -      # -      # There doesn't appear to be a way to prevent this compiler from -      # explicitly linking system object files so we need to strip them -      # from the output so that they don't get included in the library -      # dependencies. -      output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "[-]L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' -      ;; -    *) -      if test "$GXX" = yes; then -        _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' -      else -        # FIXME: insert proper C++ library support -        _LT_AC_TAGVAR(ld_shlibs, $1)=no -      fi -      ;; -    esac -    ;; -  hpux10*|hpux11*) -    if test $with_gnu_ld = no; then -      case "$host_cpu" in -      hppa*64*) -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' -	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -        ;; -      ia64*) -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -        ;; -      *) -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' -	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' -        ;; -      esac -    fi -    case "$host_cpu" in -    hppa*64*) -      _LT_AC_TAGVAR(hardcode_direct, $1)=no -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -      ;; -    ia64*) -      _LT_AC_TAGVAR(hardcode_direct, $1)=no -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, -					      # but as the default -					      # location of the library. -      ;; -    *) -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, -					      # but as the default -					      # location of the library. -      ;; -    esac - -    case $cc_basename in -      CC) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      aCC) -	case "$host_cpu" in -	hppa*64*|ia64*) -	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' -	  ;; -	*) -	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' -	  ;; -	esac -	# Commands to make compiler produce verbose output that lists -	# what "hidden" libraries, object files and flags are used when -	# linking a shared library. -	# -	# There doesn't appear to be a way to prevent this compiler from -	# explicitly linking system object files so we need to strip them -	# from the output so that they don't get included in the library -	# dependencies. -	output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' -	;; -      *) -	if test "$GXX" = yes; then -	  if test $with_gnu_ld = no; then -	    case "$host_cpu" in -	    ia64*|hppa*64*) -	      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' -	      ;; -	    *) -	      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' -	      ;; -	    esac -	  fi -	else -	  # FIXME: insert proper C++ library support -	  _LT_AC_TAGVAR(ld_shlibs, $1)=no -	fi -	;; -    esac -    ;; -  irix5* | irix6*) -    case $cc_basename in -      CC) -	# SGI C++ -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - -	# Archives containing C++ object files must be created using -	# "CC -ar", where "CC" is the IRIX C++ compiler.  This is -	# necessary to make sure instantiated templates are included -	# in the archive. -	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' -	;; -      *) -	if test "$GXX" = yes; then -	  if test "$with_gnu_ld" = no; then -	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' -	  else -	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' -	  fi -	fi -	_LT_AC_TAGVAR(link_all_deplibs, $1)=yes -	;; -    esac -    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' -    _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -    ;; -  linux*) -    case $cc_basename in -      KCC) -	# Kuck and Associates, Inc. (KAI) C++ Compiler - -	# KCC will only create a shared library if the output file -	# ends with ".so" (or ".sl" for HP-UX), so rename the library -	# to its proper name (with version) after linking. -	_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' -	# Commands to make compiler produce verbose output that lists -	# what "hidden" libraries, object files and flags are used when -	# linking a shared library. -	# -	# There doesn't appear to be a way to prevent this compiler from -	# explicitly linking system object files so we need to strip them -	# from the output so that they don't get included in the library -	# dependencies. -	output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' -	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - -	# Archives containing C++ object files must be created using -	# "CC -Bstatic", where "CC" is the KAI C++ compiler. -	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' -	;; -      icpc) -	# Intel C++ -	with_gnu_ld=yes -	_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' -	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' -	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' -	;; -      cxx) -	# Compaq C++ -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols' - -	runpath_var=LD_RUN_PATH -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' -	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - -	# Commands to make compiler produce verbose output that lists -	# what "hidden" libraries, object files and flags are used when -	# linking a shared library. -	# -	# There doesn't appear to be a way to prevent this compiler from -	# explicitly linking system object files so we need to strip them -	# from the output so that they don't get included in the library -	# dependencies. -	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' -	;; -    esac -    ;; -  lynxos*) -    # FIXME: insert proper C++ library support -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -    ;; -  m88k*) -    # FIXME: insert proper C++ library support -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -    ;; -  mvs*) -    case $cc_basename in -      cxx) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      *) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -    esac -    ;; -  netbsd* | knetbsd*-gnu) -    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' -      wlarc= -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -    fi -    # Workaround some broken pre-1.5 toolchains -    output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' -    ;; -  osf3*) -    case $cc_basename in -      KCC) -	# Kuck and Associates, Inc. (KAI) C++ Compiler - -	# KCC will only create a shared library if the output file -	# ends with ".so" (or ".sl" for HP-UX), so rename the library -	# to its proper name (with version) after linking. -	_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' -	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - -	# Archives containing C++ object files must be created using -	# "CC -Bstatic", where "CC" is the KAI C++ compiler. -	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - -	;; -      RCC) -	# Rational C++ 2.4.1 -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      cxx) -	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' -	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - -	# Commands to make compiler produce verbose output that lists -	# what "hidden" libraries, object files and flags are used when -	# linking a shared library. -	# -	# There doesn't appear to be a way to prevent this compiler from -	# explicitly linking system object files so we need to strip them -	# from the output so that they don't get included in the library -	# dependencies. -	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' -	;; -      *) -	if test "$GXX" = yes && test "$with_gnu_ld" = no; then -	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' -	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' -	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - -	  # Commands to make compiler produce verbose output that lists -	  # what "hidden" libraries, object files and flags are used when -	  # linking a shared library. -	  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' - -	else -	  # FIXME: insert proper C++ library support -	  _LT_AC_TAGVAR(ld_shlibs, $1)=no -	fi -	;; -    esac -    ;; -  osf4* | osf5*) -    case $cc_basename in -      KCC) -	# Kuck and Associates, Inc. (KAI) C++ Compiler - -	# KCC will only create a shared library if the output file -	# ends with ".so" (or ".sl" for HP-UX), so rename the library -	# to its proper name (with version) after linking. -	_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' -	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - -	# Archives containing C++ object files must be created using -	# the KAI C++ compiler. -	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' -	;; -      RCC) -	# Rational C++ 2.4.1 -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      cxx) -	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ -	  echo "-hidden">> $lib.exp~ -	  $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp  `test -n "$verstring" && echo -set_version	$verstring` -update_registry $objdir/so_locations -o $lib~ -	  $rm $lib.exp' - -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' -	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - -	# Commands to make compiler produce verbose output that lists -	# what "hidden" libraries, object files and flags are used when -	# linking a shared library. -	# -	# There doesn't appear to be a way to prevent this compiler from -	# explicitly linking system object files so we need to strip them -	# from the output so that they don't get included in the library -	# dependencies. -	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' -	;; -      *) -	if test "$GXX" = yes && test "$with_gnu_ld" = no; then -	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' -	 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' -	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - -	  # Commands to make compiler produce verbose output that lists -	  # what "hidden" libraries, object files and flags are used when -	  # linking a shared library. -	  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' - -	else -	  # FIXME: insert proper C++ library support -	  _LT_AC_TAGVAR(ld_shlibs, $1)=no -	fi -	;; -    esac -    ;; -  psos*) -    # FIXME: insert proper C++ library support -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -    ;; -  sco*) -    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -    case $cc_basename in -      CC) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      *) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -    esac -    ;; -  sunos4*) -    case $cc_basename in -      CC) -	# Sun C++ 4.x -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      lcc) -	# Lucid -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      *) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -    esac -    ;; -  solaris*) -    case $cc_basename in -      CC) -	# Sun C++ 4.2, 5.x and Centerline C++ -	_LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -	$CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' - -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' -	_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -	case $host_os in -	  solaris2.[0-5] | solaris2.[0-5].*) ;; -	  *) -	    # The C++ compiler is used as linker so we must use $wl -	    # flag to pass the commands to the underlying system -	    # linker. -	    # Supported since Solaris 2.6 (maybe 2.5.1?) -	    _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' -	    ;; -	esac -	_LT_AC_TAGVAR(link_all_deplibs, $1)=yes - -	# Commands to make compiler produce verbose output that lists -	# what "hidden" libraries, object files and flags are used when -	# linking a shared library. -	# -	# There doesn't appear to be a way to prevent this compiler from -	# explicitly linking system object files so we need to strip them -	# from the output so that they don't get included in the library -	# dependencies. -	output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - -	# Archives containing C++ object files must be created using -	# "CC -xar", where "CC" is the Sun C++ compiler.  This is -	# necessary to make sure instantiated templates are included -	# in the archive. -	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' -	;; -      gcx) -	# Green Hills C++ Compiler -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - -	# The C++ compiler must be used to create the archive. -	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' -	;; -      *) -	# GNU C++ compiler with Solaris linker -	if test "$GXX" = yes && test "$with_gnu_ld" = no; then -	  _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' -	  if $CC --version | grep -v '^2\.7' > /dev/null; then -	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' -	    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -		$CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' - -	    # Commands to make compiler produce verbose output that lists -	    # what "hidden" libraries, object files and flags are used when -	    # linking a shared library. -	    output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" -	  else -	    # g++ 2.7 appears to require `-G' NOT `-shared' on this -	    # platform. -	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' -	    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -		$CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' - -	    # Commands to make compiler produce verbose output that lists -	    # what "hidden" libraries, object files and flags are used when -	    # linking a shared library. -	    output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" -	  fi - -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' -	fi -	;; -    esac -    ;; -  sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*) -    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -    ;; -  tandem*) -    case $cc_basename in -      NCC) -	# NonStop-UX NCC 3.20 -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -      *) -	# FIXME: insert proper C++ library support -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	;; -    esac -    ;; -  vxworks*) -    # FIXME: insert proper C++ library support -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -    ;; -  *) -    # FIXME: insert proper C++ library support -    _LT_AC_TAGVAR(ld_shlibs, $1)=no -    ;; -esac -AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -_LT_AC_TAGVAR(GCC, $1)="$GXX" -_LT_AC_TAGVAR(LD, $1)="$LD" - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_POSTDEP_PREDEP($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC=$lt_save_CC -LDCXX=$LD -LD=$lt_save_LD -GCC=$lt_save_GCC -with_gnu_ldcxx=$with_gnu_ld -with_gnu_ld=$lt_save_with_gnu_ld -lt_cv_path_LDCXX=$lt_cv_path_LD -lt_cv_path_LD=$lt_save_path_LD -lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld -lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld -])# AC_LIBTOOL_LANG_CXX_CONFIG - -# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME]) -# ------------------------ -# Figure out "hidden" library dependencies from verbose -# compiler output when linking a shared library. -# Parse the compiler output and extract the necessary -# objects, libraries and library flags. -AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[ -dnl we can't use the lt_simple_compile_test_code here, -dnl because it contains code intended for an executable, -dnl not a library.  It's possible we should let each -dnl tag define a new lt_????_link_test_code variable, -dnl but it's only used here... -ifelse([$1],[],[cat > conftest.$ac_ext <<EOF -int a; -void foo (void) { a = 0; } -EOF -],[$1],[CXX],[cat > conftest.$ac_ext <<EOF -class Foo -{ -public: -  Foo (void) { a = 0; } -private: -  int a; -}; -EOF -],[$1],[F77],[cat > conftest.$ac_ext <<EOF -      subroutine foo -      implicit none -      integer*4 a -      a=0 -      return -      end -EOF -],[$1],[GCJ],[cat > conftest.$ac_ext <<EOF -public class foo { -  private int a; -  public void bar (void) { -    a = 0; -  } -}; -EOF -]) -dnl Parse the compiler output and extract the necessary -dnl objects, libraries and library flags. -if AC_TRY_EVAL(ac_compile); then -  # Parse the compiler output and extract the necessary -  # objects, libraries and library flags. - -  # Sentinel used to keep track of whether or not we are before -  # the conftest object file. -  pre_test_object_deps_done=no - -  # The `*' in the case matches for architectures that use `case' in -  # $output_verbose_cmd can trigger glob expansion during the loop -  # eval without this substitution. -  output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`" - -  for p in `eval $output_verbose_link_cmd`; do -    case $p in - -    -L* | -R* | -l*) -       # Some compilers place space between "-{L,R}" and the path. -       # Remove the space. -       if test $p = "-L" \ -	  || test $p = "-R"; then -	 prev=$p -	 continue -       else -	 prev= -       fi - -       if test "$pre_test_object_deps_done" = no; then -	 case $p in -	 -L* | -R*) -	   # Internal compiler library paths should come after those -	   # provided the user.  The postdeps already come after the -	   # user supplied libs so there is no need to process them. -	   if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then -	     _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" -	   else -	     _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" -	   fi -	   ;; -	 # The "-l" case would never come before the object being -	 # linked, so don't bother handling this case. -	 esac -       else -	 if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then -	   _LT_AC_TAGVAR(postdeps, $1)="${prev}${p}" -	 else -	   _LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}" -	 fi -       fi -       ;; - -    *.$objext) -       # This assumes that the test object file only shows up -       # once in the compiler output. -       if test "$p" = "conftest.$objext"; then -	 pre_test_object_deps_done=yes -	 continue -       fi - -       if test "$pre_test_object_deps_done" = no; then -	 if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then -	   _LT_AC_TAGVAR(predep_objects, $1)="$p" -	 else -	   _LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p" -	 fi -       else -	 if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then -	   _LT_AC_TAGVAR(postdep_objects, $1)="$p" -	 else -	   _LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p" -	 fi -       fi -       ;; - -    *) ;; # Ignore the rest. - -    esac -  done - -  # Clean up. -  rm -f a.out a.exe -else -  echo "libtool.m4: error: problem compiling $1 test program" -fi - -$rm -f confest.$objext - -case " $_LT_AC_TAGVAR(postdeps, $1) " in -*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;; -esac -])# AC_LIBTOOL_POSTDEP_PREDEP - -# AC_LIBTOOL_LANG_F77_CONFIG -# ------------------------ -# Ensure that the configuration vars for the C compiler are -# suitably defined.  Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)]) -AC_DEFUN([_LT_AC_LANG_F77_CONFIG], -[AC_REQUIRE([AC_PROG_F77]) -AC_LANG_PUSH(Fortran 77) - -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_AC_TAGVAR(allow_undefined_flag, $1)= -_LT_AC_TAGVAR(always_export_symbols, $1)=no -_LT_AC_TAGVAR(archive_expsym_cmds, $1)= -_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_direct, $1)=no -_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -_LT_AC_TAGVAR(hardcode_minus_L, $1)=no -_LT_AC_TAGVAR(hardcode_automatic, $1)=no -_LT_AC_TAGVAR(module_cmds, $1)= -_LT_AC_TAGVAR(module_expsym_cmds, $1)= -_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown -_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_AC_TAGVAR(no_undefined_flag, $1)= -_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for f77 test sources. -ac_ext=f - -# Object file extension for compiled f77 test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="      subroutine t\n      return\n      end\n" - -# Code to be used in simple link tests -lt_simple_link_test_code="      program t\n      end\n" - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${F77-"f77"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` - -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) - -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) -  test "$enable_shared" = yes && enable_static=no -  if test -n "$RANLIB"; then -    archive_cmds="$archive_cmds~\$RANLIB \$lib" -    postinstall_cmds='$RANLIB $lib' -  fi -  ;; -aix4* | aix5*) -  test "$enable_shared" = yes && enable_static=no -  ;; -esac -AC_MSG_RESULT([$enable_shared]) - -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) - -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -_LT_AC_TAGVAR(GCC, $1)="$G77" -_LT_AC_TAGVAR(LD, $1)="$LD" - -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP - - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_F77_CONFIG - - -# AC_LIBTOOL_LANG_GCJ_CONFIG -# -------------------------- -# Ensure that the configuration vars for the C compiler are -# suitably defined.  Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)]) -AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG], -[AC_LANG_SAVE - -# Source file extension for Java test sources. -ac_ext=java - -# Object file extension for compiled Java test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="class foo {}\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }\n' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${GCJ-"gcj"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC - -# GCJ did not exist at the time GCC didn't implicitly link libc in. -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_RESTORE -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_GCJ_CONFIG - - -# AC_LIBTOOL_LANG_RC_CONFIG -# -------------------------- -# Ensure that the configuration vars for the Windows resource compiler are -# suitably defined.  Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)]) -AC_DEFUN([_LT_AC_LANG_RC_CONFIG], -[AC_LANG_SAVE - -# Source file extension for RC test sources. -ac_ext=rc - -# Object file extension for compiled RC test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n' - -# Code to be used in simple link tests -lt_simple_link_test_code="$lt_simple_compile_test_code" - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${RC-"windres"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_RESTORE -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_RC_CONFIG - - -# AC_LIBTOOL_CONFIG([TAGNAME]) -# ---------------------------- -# If TAGNAME is not passed, then create an initial libtool script -# with a default configuration from the untagged config vars.  Otherwise -# add code to config.status for appending the configuration named by -# TAGNAME from the matching tagged config vars. -AC_DEFUN([AC_LIBTOOL_CONFIG], -[# The else clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then -  # 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 -  # Now quote all the things that may contain metacharacters while being -  # careful not to overquote the AC_SUBSTed values.  We take copies of the -  # variables and quote the copies for generation of the libtool script. -  for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \ -    SED SHELL STRIP \ -    libname_spec library_names_spec soname_spec extract_expsyms_cmds \ -    old_striplib striplib file_magic_cmd finish_cmds finish_eval \ -    deplibs_check_method reload_flag reload_cmds need_locks \ -    lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ -    lt_cv_sys_global_symbol_to_c_name_address \ -    sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ -    old_postinstall_cmds old_postuninstall_cmds \ -    _LT_AC_TAGVAR(compiler, $1) \ -    _LT_AC_TAGVAR(CC, $1) \ -    _LT_AC_TAGVAR(LD, $1) \ -    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \ -    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \ -    _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \ -    _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \ -    _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \ -    _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \ -    _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \ -    _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \ -    _LT_AC_TAGVAR(old_archive_cmds, $1) \ -    _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \ -    _LT_AC_TAGVAR(predep_objects, $1) \ -    _LT_AC_TAGVAR(postdep_objects, $1) \ -    _LT_AC_TAGVAR(predeps, $1) \ -    _LT_AC_TAGVAR(postdeps, $1) \ -    _LT_AC_TAGVAR(compiler_lib_search_path, $1) \ -    _LT_AC_TAGVAR(archive_cmds, $1) \ -    _LT_AC_TAGVAR(archive_expsym_cmds, $1) \ -    _LT_AC_TAGVAR(postinstall_cmds, $1) \ -    _LT_AC_TAGVAR(postuninstall_cmds, $1) \ -    _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \ -    _LT_AC_TAGVAR(allow_undefined_flag, $1) \ -    _LT_AC_TAGVAR(no_undefined_flag, $1) \ -    _LT_AC_TAGVAR(export_symbols_cmds, $1) \ -    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \ -    _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \ -    _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \ -    _LT_AC_TAGVAR(hardcode_automatic, $1) \ -    _LT_AC_TAGVAR(module_cmds, $1) \ -    _LT_AC_TAGVAR(module_expsym_cmds, $1) \ -    _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \ -    _LT_AC_TAGVAR(exclude_expsyms, $1) \ -    _LT_AC_TAGVAR(include_expsyms, $1); do - -    case $var in -    _LT_AC_TAGVAR(old_archive_cmds, $1) | \ -    _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \ -    _LT_AC_TAGVAR(archive_cmds, $1) | \ -    _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \ -    _LT_AC_TAGVAR(module_cmds, $1) | \ -    _LT_AC_TAGVAR(module_expsym_cmds, $1) | \ -    _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \ -    _LT_AC_TAGVAR(export_symbols_cmds, $1) | \ -    extract_expsyms_cmds | reload_cmds | finish_cmds | \ -    postinstall_cmds | postuninstall_cmds | \ -    old_postinstall_cmds | old_postuninstall_cmds | \ -    sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) -      # Double-quote double-evaled strings. -      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" -      ;; -    *) -      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" -      ;; -    esac -  done - -  case $lt_echo in -  *'\[$]0 --fallback-echo"') -    lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'` -    ;; -  esac - -ifelse([$1], [], -  [cfgfile="${ofile}T" -  trap "$rm \"$cfgfile\"; exit 1" 1 2 15 -  $rm -f "$cfgfile" -  AC_MSG_NOTICE([creating $ofile])], -  [cfgfile="$ofile"]) - -  cat <<__EOF__ >> "$cfgfile" -ifelse([$1], [], -[#! $SHELL - -# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. -# -# This file is part of GNU Libtool: -# Originally by Gordon Matzigkeit <[email protected]>, 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="$SED -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# The names of the tagged configurations supported by this script. -available_tags= - -# ### BEGIN LIBTOOL CONFIG], -[# ### BEGIN LIBTOOL TAG CONFIG: $tagname]) - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1) - -# Whether or not to disallow shared libs when runtime libs are static -allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# A C compiler. -LTCC=$lt_LTCC - -# A language-specific compiler. -CC=$lt_[]_LT_AC_TAGVAR(compiler, $1) - -# Is the compiler the GNU C compiler? -with_gcc=$_LT_AC_TAGVAR(GCC, $1) - -# An ERE matcher. -EGREP=$lt_EGREP - -# The linker used to build libraries. -LD=$lt_[]_LT_AC_TAGVAR(LD, $1) - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$lt_STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Shared library suffix (normally ".so"). -shrext_cmds='$shrext_cmds' - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) -pic_mode=$pic_mode - -# What is the maximum length of a command? -max_cmd_len=$lt_cv_sys_max_cmd_len - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1) - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1) - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1) - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names.  First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1) -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) - -# Commands used to build and install a shared archive. -archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1) -archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1) -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to build a loadable module (assumed same as above if empty) -module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1) -module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1) - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Dependencies to place before the objects being linked to create a -# shared library. -predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) - -# Dependencies to place after the objects being linked to create a -# shared library. -postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) - -# Dependencies to place before the objects being linked to create a -# shared library. -predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1) - -# Dependencies to place after the objects being linked to create a -# shared library. -postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1) - -# The library search path used internally by the compiler when linking -# a shared library. -compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$lt_file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1) - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1) - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm in a C name address pair -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1) - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) - -# If ld is used when linking, flag to hardcode \$libdir into -# a binary during linking. This must work even if \$libdir does -# not exist. -hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) - -# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1) - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1) - -# Set to yes if building a shared library automatically hardcodes DIR into the library -# and all subsequent libraries and executables linked against it. -hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1) - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)" - -# Set to yes if exported symbols are required. -always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1) - -# The commands to list exported symbols. -export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1) - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1) - -# Symbols that must always be exported. -include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1) - -ifelse([$1],[], -[# ### END LIBTOOL CONFIG], -[# ### END LIBTOOL TAG CONFIG: $tagname]) - -__EOF__ - -ifelse([$1],[], [ -  case $host_os in -  aix3*) -    cat <<\EOF >> "$cfgfile" - -# AIX sometimes has problems with the GCC collect2 program.  For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then -  COLLECT_NAMES= -  export COLLECT_NAMES -fi -EOF -    ;; -  esac - -  # We use sed instead of cat because bash on DJGPP gets confused if -  # if finds mixed CR/LF and LF-only lines.  Since sed operates in -  # text mode, it properly converts lines to CR/LF.  This bash problem -  # is reportedly fixed, but why not run on old versions too? -  sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) - -  mv -f "$cfgfile" "$ofile" || \ -    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") -  chmod +x "$ofile" -]) -else -  # If there is no Makefile yet, we rely on a make rule to execute -  # `config.status --recheck' to rerun these tests and create the -  # libtool script then. -  ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'` -  if test -f "$ltmain_in"; then -    test -f Makefile && make "$ltmain" -  fi -fi -])# AC_LIBTOOL_CONFIG - - -# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME]) -# ------------------------------------------- -AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], -[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl - -_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= +_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=  if test "$GCC" = yes; then -  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' +  _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' -  AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], +  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],      lt_cv_prog_compiler_rtti_exceptions,      [-fno-rtti -fno-exceptions], [], -    [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) +    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])  fi -])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI +_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], +	[Compiler flag to turn off builtin functions]) +])# _LT_COMPILER_NO_RTTI -# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -# --------------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -[AC_REQUIRE([AC_CANONICAL_HOST]) -AC_REQUIRE([AC_PROG_NM]) -AC_REQUIRE([AC_OBJEXT]) +# _LT_CMD_GLOBAL_SYMBOLS +# ---------------------- +m4_defun([_LT_CMD_GLOBAL_SYMBOLS], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([LT_PATH_NM])dnl +AC_REQUIRE([LT_PATH_LD])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_TAG_COMPILER])dnl +  # Check for command to grab the raw symbol name followed by C symbol from nm.  AC_MSG_CHECKING([command to parse $NM output from $compiler object])  AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], @@ -4343,29 +3332,18 @@ symcode='[[BCDEGRST]]'  # Regexp to match symbols that can be accessed directly from C.  sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'" -  # Define system-specific variables.  case $host_os in  aix*)    symcode='[[BCDT]]'    ;; -cygwin* | mingw* | pw32*) +cygwin* | mingw* | pw32* | cegcc*)    symcode='[[ABCDGISTW]]'    ;; -hpux*) # Its linker distinguishes data from code symbols +hpux*)    if test "$host_cpu" = ia64; then      symcode='[[ABCDEGRST]]'    fi -  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" -  lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"    ;;  irix* | nonstopux*)    symcode='[[BCDEGRST]]' @@ -4373,49 +3351,89 @@ irix* | nonstopux*)  osf*)    symcode='[[BCDEGQRST]]'    ;; -solaris* | sysv5*) +solaris*)    symcode='[[BDRT]]'    ;; +sco3.2v5*) +  symcode='[[DT]]' +  ;; +sysv4.2uw2*) +  symcode='[[DT]]' +  ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) +  symcode='[[ABDT]]' +  ;;  sysv4)    symcode='[[DFNSTU]]'    ;;  esac +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) +  symcode='[[ABCDGIRSTW]]' ;; +esac + +# Transform an extracted symbol line into a proper C declaration. +# Some systems (esp. on ia64) link data and code symbols differently, +# so use this general approach. +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"lib\2\", (void *) \&\2},/p'" +  # Handle CRLF in mingw tool chain  opt_cr=  case $build_os in  mingw*) -  opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp +  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp    ;;  esac -# If we're using GNU nm, then use its standard symbol codes. -case `$NM -V 2>&1` in -*GNU* | *'with BFD'*) -  symcode='[[ABCDGIRSTW]]' ;; -esac - -# Try without a prefix undercore, then with it. +# Try without a prefix underscore, then with it.  for ac_symprfx in "" "_"; do +  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. +  symxfrm="\\1 $ac_symprfx\\2 \\2" +    # Write the raw and C identifiers. -  lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ 	]]\($symcode$symcode*\)[[ 	]][[ 	]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" +  if test "$lt_cv_nm_interface" = "MS dumpbin"; then +    # Fake it for dumpbin and say T for any non-static function +    # and D for any global variable. +    # Also find C++ and __fastcall symbols from MSVC++, +    # which start with @ or ?. +    lt_cv_sys_global_symbol_pipe="$AWK ['"\ +"     {last_section=section; section=\$ 3};"\ +"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +"     \$ 0!~/External *\|/{next};"\ +"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ +"     {if(hide[section]) next};"\ +"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ +"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ +"     s[1]~/^[@?]/{print s[1], s[1]; next};"\ +"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ +"     ' prfx=^$ac_symprfx]" +  else +    lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" +  fi    # Check to see that the pipe works correctly.    pipe_works=no    rm -f conftest* -  cat > conftest.$ac_ext <<EOF +  cat > conftest.$ac_ext <<_LT_EOF  #ifdef __cplusplus  extern "C" {  #endif  char nm_test_var; -void nm_test_func(){} +void nm_test_func(void); +void nm_test_func(void){}  #ifdef __cplusplus  }  #endif  int main(){nm_test_var='a';nm_test_func();return(0);} -EOF +_LT_EOF    if AC_TRY_EVAL(ac_compile); then      # Now try to grab the symbols. @@ -4429,48 +3447,50 @@ EOF        fi        # Make sure that we snagged all the symbols we need. -      if grep ' nm_test_var$' "$nlist" >/dev/null; then -	if grep ' nm_test_func$' "$nlist" >/dev/null; then -	  cat <<EOF > conftest.$ac_ext +      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then +	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then +	  cat <<_LT_EOF > conftest.$ac_ext  #ifdef __cplusplus  extern "C" {  #endif -EOF +_LT_EOF  	  # Now generate the symbol file. -	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' +	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' -	  cat <<EOF >> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr_t void * -#else -# define lt_ptr_t char * -# define const -#endif +	  cat <<_LT_EOF >> conftest.$ac_ext -/* The mapping between symbol names and symbols. */ +/* The mapping between symbol names and symbols.  */  const struct {    const char *name; -  lt_ptr_t address; +  void       *address;  } -lt_preloaded_symbols[[]] = +lt__PROGRAM__LTX_preloaded_symbols[[]] =  { -EOF -	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext -	  cat <<\EOF >> conftest.$ac_ext -  {0, (lt_ptr_t) 0} +  { "@PROGRAM@", (void *) 0 }, +_LT_EOF +	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext +	  cat <<\_LT_EOF >> conftest.$ac_ext +  {0, (void *) 0}  }; +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { +  return lt__PROGRAM__LTX_preloaded_symbols; +} +#endif +  #ifdef __cplusplus  }  #endif -EOF +_LT_EOF  	  # Now try linking the two files.  	  mv conftest.$ac_objext conftstm.$ac_objext  	  lt_save_LIBS="$LIBS"  	  lt_save_CFLAGS="$CFLAGS"  	  LIBS="conftstm.$ac_objext" -	  CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" +	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"  	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then  	    pipe_works=yes  	  fi @@ -4489,7 +3509,7 @@ EOF      echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD      cat conftest.$ac_ext >&5    fi -  rm -f conftest* conftst* +  rm -rf conftest* conftst*    # Do not use the global_symbol_pipe unless it works.    if test "$pipe_works" = yes; then @@ -4507,127 +3527,162 @@ if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; the  else    AC_MSG_RESULT(ok)  fi -]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE + +_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], +    [Take the output of nm and produce a listing of raw symbols and C names]) +_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], +    [Transform the output of nm in a proper C declaration]) +_LT_DECL([global_symbol_to_c_name_address], +    [lt_cv_sys_global_symbol_to_c_name_address], [1], +    [Transform the output of nm in a C name address pair]) +_LT_DECL([global_symbol_to_c_name_address_lib_prefix], +    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], +    [Transform the output of nm in a C name address pair when lib prefix is needed]) +]) # _LT_CMD_GLOBAL_SYMBOLS -# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME]) -# --------------------------------------- -AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC], -[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)= -_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= -_LT_AC_TAGVAR(lt_prog_compiler_static, $1)= +# _LT_COMPILER_PIC([TAGNAME]) +# --------------------------- +m4_defun([_LT_COMPILER_PIC], +[m4_require([_LT_TAG_COMPILER])dnl +_LT_TAGVAR(lt_prog_compiler_wl, $1)= +_LT_TAGVAR(lt_prog_compiler_pic, $1)= +_LT_TAGVAR(lt_prog_compiler_static, $1)=  AC_MSG_CHECKING([for $compiler option to produce PIC]) - ifelse([$1],[CXX],[ +m4_if([$1], [CXX], [    # C++ specific cases for pic, static, wl, etc.    if test "$GXX" = yes; then -    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' +    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'      case $host_os in      aix*)        # All AIX code is PIC.        if test "$host_cpu" = ia64; then  	# AIX 5 now supports IA64 processor -	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'        fi        ;; +      amigaos*) -      # FIXME: we need at least 68020 code to build shared libraries, but -      # adding the `-m68020' flag to GCC prevents building anything better, -      # like `-m68040'. -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' +      case $host_cpu in +      powerpc) +            # see comment about AmigaOS4 .so support +            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +        ;; +      m68k) +            # FIXME: we need at least 68020 code to build shared libraries, but +            # adding the `-m68020' flag to GCC prevents building anything better, +            # like `-m68040'. +            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' +        ;; +      esac        ;; -    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + +    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)        # PIC is the default for these OSes.        ;; -    mingw* | os2* | pw32*) +    mingw* | cygwin* | os2* | pw32* | cegcc*)        # This hack is so that the source file can tell whether it is being        # built for inclusion in a dll (and should export symbols for example). -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' +      # Although the cygwin gcc ignores -fPIC, still need this for old-style +      # (--disable-auto-import) libraries +      m4_if([$1], [GCJ], [], +	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])        ;;      darwin* | rhapsody*)        # PIC is the default on this platform        # Common symbols not allowed in MH_DYLIB files -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'        ;;      *djgpp*)        # DJGPP does not support shared libraries at all -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= +      _LT_TAGVAR(lt_prog_compiler_pic, $1)= +      ;; +    interix[[3-9]]*) +      # Interix 3.x gcc -fpic/-fPIC options generate broken code. +      # Instead, we relocate shared libraries at runtime.        ;;      sysv4*MP*)        if test -d /usr/nec; then -	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic +	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic        fi        ;;      hpux*) -      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but -      # not for PA HP-UX. -      case "$host_cpu" in -      hppa*64*|ia64*) +      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit +      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag +      # sets the default TLS model and affects inlining. +      case $host_cpu in +      hppa*64*)  	;;        *) -	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'  	;;        esac        ;; +    *qnx* | *nto*) +      # QNX uses GNU C++, but need to define -shared option too, otherwise +      # it will coredump. +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' +      ;;      *) -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'        ;;      esac    else      case $host_os in -      aix4* | aix5*) +      aix[[4-9]]*)  	# All AIX code is PIC.  	if test "$host_cpu" = ia64; then  	  # AIX 5 now supports IA64 processor -	  _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'  	else -	  _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' +	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'  	fi  	;;        chorus*)  	case $cc_basename in -	cxch68) +	cxch68*)  	  # Green Hills C++ Compiler -	  # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" +	  # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"  	  ;;  	esac  	;;        dgux*)  	case $cc_basename in -	  ec++) -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	  ec++*) +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'  	    ;; -	  ghcx) +	  ghcx*)  	    # Green Hills C++ Compiler -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'  	    ;;  	  *)  	    ;;  	esac  	;; -      freebsd* | kfreebsd*-gnu) +      freebsd* | dragonfly*)  	# FreeBSD uses GNU C++  	;;        hpux9* | hpux10* | hpux11*)  	case $cc_basename in -	  CC) -	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" +	  CC*) +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'  	    if test "$host_cpu" != ia64; then -	      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' +	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'  	    fi  	    ;; -	  aCC) -	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" -	    case "$host_cpu" in +	  aCC*) +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' +	    case $host_cpu in  	    hppa*64*|ia64*)  	      # +Z the default  	      ;;  	    *) -	      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' +	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'  	      ;;  	    esac  	    ;; @@ -4635,38 +3690,69 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])  	    ;;  	esac  	;; +      interix*) +	# This is c89, which is MS Visual C++ (no shared libs) +	# Anyone wants to do a port? +	;;        irix5* | irix6* | nonstopux*)  	case $cc_basename in -	  CC) -	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' +	  CC*) +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'  	    # CC pic flag -KPIC is the default.  	    ;;  	  *)  	    ;;  	esac  	;; -      linux*) +      linux* | k*bsd*-gnu)  	case $cc_basename in -	  KCC) +	  KCC*)  	    # KAI C++ Compiler -	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'  	    ;; -	  icpc) -	    # Intel C++ -	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' -	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' +	  ecpc* ) +	    # old Intel C++ for x86_64 which still supported -KPIC. +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'  	    ;; -	  cxx) +	  icpc* ) +	    # Intel C++, used to be incompatible with GCC. +	    # ICC 10 doesn't accept -KPIC any more. +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' +	    ;; +	  pgCC* | pgcpp*) +	    # Portland Group C++ compiler +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	    ;; +	  cxx*)  	    # Compaq C++  	    # Make sure the PIC flag is empty.  It appears that all Alpha  	    # Linux and Compaq Tru64 Unix objects are PIC. -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= -	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)= +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' +	    ;; +	  xlc* | xlC*) +	    # IBM XL 8.0 on PPC +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'  	    ;;  	  *) +	    case `$CC -V 2>&1 | sed 5q` in +	    *Sun\ C*) +	      # Sun C++ 5.9 +	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' +	      ;; +	    esac  	    ;;  	esac  	;; @@ -4676,31 +3762,36 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])  	;;        mvs*)  	case $cc_basename in -	  cxx) -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' +	  cxx*) +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'  	    ;;  	  *)  	    ;;  	esac  	;; -      netbsd* | knetbsd*-gnu) +      netbsd* | netbsdelf*-gnu)  	;; +      *qnx* | *nto*) +        # QNX uses GNU C++, but need to define -shared option too, otherwise +        # it will coredump. +        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' +        ;;        osf3* | osf4* | osf5*)  	case $cc_basename in -	  KCC) -	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' +	  KCC*) +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'  	    ;; -	  RCC) +	  RCC*)  	    # Rational C++ 2.4.1 -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'  	    ;; -	  cxx) +	  cxx*)  	    # Digital/Compaq C++ -	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'  	    # Make sure the PIC flag is empty.  It appears that all Alpha  	    # Linux and Compaq Tru64 Unix objects are PIC. -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= -	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)= +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'  	    ;;  	  *)  	    ;; @@ -4708,26 +3799,17 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])  	;;        psos*)  	;; -      sco*) -	case $cc_basename in -	  CC) -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' -	    ;; -	  *) -	    ;; -	esac -	;;        solaris*)  	case $cc_basename in -	  CC) +	  CC*)  	    # Sun C++ 4.2, 5.x and Centerline C++ -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' -	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' -	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '  	    ;; -	  gcx) +	  gcx*)  	    # Green Hills C++ Compiler -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'  	    ;;  	  *)  	    ;; @@ -4735,312 +3817,436 @@ AC_MSG_CHECKING([for $compiler option to produce PIC])  	;;        sunos4*)  	case $cc_basename in -	  CC) +	  CC*)  	    # Sun C++ 4.x -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' -	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'  	    ;; -	  lcc) +	  lcc*)  	    # Lucid -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'  	    ;;  	  *)  	    ;;  	esac  	;; +      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) +	case $cc_basename in +	  CC*) +	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	    ;; +	esac +	;;        tandem*)  	case $cc_basename in -	  NCC) +	  NCC*)  	    # NonStop-UX NCC 3.20 -	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'  	    ;;  	  *)  	    ;;  	esac  	;; -      unixware*) -	;;        vxworks*)  	;;        *) -	_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no +	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no  	;;      esac    fi  ],  [    if test "$GCC" = yes; then -    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' +    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'      case $host_os in        aix*)        # All AIX code is PIC.        if test "$host_cpu" = ia64; then  	# AIX 5 now supports IA64 processor -	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'        fi        ;;      amigaos*) -      # FIXME: we need at least 68020 code to build shared libraries, but -      # adding the `-m68020' flag to GCC prevents building anything better, -      # like `-m68040'. -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' +      case $host_cpu in +      powerpc) +            # see comment about AmigaOS4 .so support +            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +        ;; +      m68k) +            # FIXME: we need at least 68020 code to build shared libraries, but +            # adding the `-m68020' flag to GCC prevents building anything better, +            # like `-m68040'. +            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' +        ;; +      esac        ;; -    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) +    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)        # PIC is the default for these OSes.        ;; -    mingw* | pw32* | os2*) +    mingw* | cygwin* | pw32* | os2* | cegcc*)        # This hack is so that the source file can tell whether it is being        # built for inclusion in a dll (and should export symbols for example). -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' +      # Although the cygwin gcc ignores -fPIC, still need this for old-style +      # (--disable-auto-import) libraries +      m4_if([$1], [GCJ], [], +	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])        ;;      darwin* | rhapsody*)        # PIC is the default on this platform        # Common symbols not allowed in MH_DYLIB files -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' +      ;; + +    hpux*) +      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit +      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag +      # sets the default TLS model and affects inlining. +      case $host_cpu in +      hppa*64*) +	# +Z the default +	;; +      *) +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +	;; +      esac +      ;; + +    interix[[3-9]]*) +      # Interix 3.x gcc -fpic/-fPIC options generate broken code. +      # Instead, we relocate shared libraries at runtime.        ;;      msdosdjgpp*)        # Just because we use GCC doesn't mean we suddenly get shared libraries        # on systems that don't support them. -      _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no +      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no        enable_shared=no        ;; +    *nto* | *qnx*) +      # QNX uses GNU C++, but need to define -shared option too, otherwise +      # it will coredump. +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' +      ;; +      sysv4*MP*)        if test -d /usr/nec; then -	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic +	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic        fi        ;; -    hpux*) -      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but -      # not for PA HP-UX. -      case "$host_cpu" in -      hppa*64*|ia64*) -	# +Z the default -	;; -      *) -	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' -	;; -      esac -      ;; -      *) -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'        ;;      esac    else      # PORTME Check for flag to pass linker flags through the system compiler.      case $host_os in      aix*) -      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'        if test "$host_cpu" = ia64; then  	# AIX 5 now supports IA64 processor -	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'        else -	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'        fi        ;; -    mingw* | pw32* | os2*) +    mingw* | cygwin* | pw32* | os2* | cegcc*)        # This hack is so that the source file can tell whether it is being        # built for inclusion in a dll (and should export symbols for example). -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' +      m4_if([$1], [GCJ], [], +	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])        ;;      hpux9* | hpux10* | hpux11*) -      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'        # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but        # not for PA HP-UX. -      case "$host_cpu" in +      case $host_cpu in        hppa*64*|ia64*)  	# +Z the default  	;;        *) -	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'  	;;        esac        # Is there a better lt_prog_compiler_static that works with the bundled CC? -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'        ;;      irix5* | irix6* | nonstopux*) -      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'        # PIC (with -KPIC) is the default. -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'        ;; -    newsos6) -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' -      ;; - -    linux*) -      case $CC in -      icc* | ecc*) -	_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' -	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' +    linux* | k*bsd*-gnu) +      case $cc_basename in +      # old Intel for x86_64 which still supported -KPIC. +      ecc*) +	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static' +        ;; +      # icc used to be incompatible with GCC. +      # ICC 10 doesn't accept -KPIC any more. +      icc* | ifort*) +	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static' +        ;; +      # Lahey Fortran 8.1. +      lf95*) +	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static' +	;; +      pgcc* | pgf77* | pgf90* | pgf95*) +        # Portland Group compilers (*not* the Pentium gcc compiler, +	# which looks to be a dead project) +	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'          ;;        ccc*) -        _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'          # All Alpha code is PIC. -        _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' +        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'          ;; +      xl*) +	# IBM XL C 8.0/Fortran 10.1 on PPC +	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' +	;; +      *) +	case `$CC -V 2>&1 | sed 5q` in +	*Sun\ C*) +	  # Sun C 5.9 +	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +	  ;; +	*Sun\ F*) +	  # Sun Fortran 8.3 passes all unrecognized flags to the linker +	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='' +	  ;; +	esac +	;;        esac        ;; +    newsos6) +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +      ;; + +    *nto* | *qnx*) +      # QNX uses GNU C++, but need to define -shared option too, otherwise +      # it will coredump. +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' +      ;; +      osf3* | osf4* | osf5*) -      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'        # All OSF/1 code is PIC. -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'        ;; -    sco3.2v5*) -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic' -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn' +    rdos*) +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'        ;;      solaris*) -      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +      case $cc_basename in +      f77* | f90* | f95*) +	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; +      *) +	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; +      esac        ;;      sunos4*) -      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'        ;; -    sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +    sysv4 | sysv4.2uw2* | sysv4.3*) +      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'        ;;      sysv4*MP*)        if test -d /usr/nec ;then -	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' -	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' +	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'        fi        ;; +    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) +      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +      ;; + +    unicos*) +      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' +      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no +      ;; +      uts4*) -      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' -      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' +      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' +      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'        ;;      *) -      _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no +      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no        ;;      esac    fi  ]) -AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)]) +case $host_os in +  # For platforms which do not support PIC, -DPIC is meaningless: +  *djgpp*) +    _LT_TAGVAR(lt_prog_compiler_pic, $1)= +    ;; +  *) +    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" +    ;; +esac +AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) +_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], +	[How to pass a linker flag through the compiler])  #  # Check to make sure the PIC flag actually works.  # -if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then -  AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works], -    _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1), -    [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [], -    [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in +if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then +  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], +    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], +    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], +    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in       "" | " "*) ;; -     *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;; +     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;       esac], -    [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= -     _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) +    [_LT_TAGVAR(lt_prog_compiler_pic, $1)= +     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])  fi -case "$host_os" in -  # For platforms which do not support PIC, -DPIC is meaningless: -  *djgpp*) -    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= -    ;; -  *) -    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])" -    ;; -esac -]) +_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], +	[Additional compiler flags for building library objects]) + +# +# Check to make sure the static flag actually works. +# +wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" +_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], +  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), +  $lt_tmp_static_flag, +  [], +  [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) +_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], +	[Compiler flag to prevent dynamic linking]) +])# _LT_COMPILER_PIC -# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]) -# ------------------------------------ +# _LT_LINKER_SHLIBS([TAGNAME]) +# ----------------------------  # See if the linker supports building shared libraries. -AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS], -[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -ifelse([$1],[CXX],[ -  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' +m4_defun([_LT_LINKER_SHLIBS], +[AC_REQUIRE([LT_PATH_LD])dnl +AC_REQUIRE([LT_PATH_NM])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl +m4_require([_LT_TAG_COMPILER])dnl +AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +m4_if([$1], [CXX], [ +  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'    case $host_os in -  aix4* | aix5*) +  aix[[4-9]]*)      # If we're using GNU nm, then we don't want the "-C" option.      # -C means demangle to AIX nm, but means don't demangle with GNU nm -    if $NM -V 2>&1 | grep 'GNU' > /dev/null; then -      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' +    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then +      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'      else -      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' +      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'      fi      ;;    pw32*) -    _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" +    _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"    ;; -  cygwin* | mingw*) -    _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' +  cygwin* | mingw* | cegcc*) +    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'    ;; -  linux*) -    _LT_AC_TAGVAR(link_all_deplibs, $1)=no +  linux* | k*bsd*-gnu) +    _LT_TAGVAR(link_all_deplibs, $1)=no    ;;    *) -    _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' +    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'    ;;    esac -],[ +  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] +], [    runpath_var= -  _LT_AC_TAGVAR(allow_undefined_flag, $1)= -  _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no -  _LT_AC_TAGVAR(archive_cmds, $1)= -  _LT_AC_TAGVAR(archive_expsym_cmds, $1)= -  _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)= -  _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)= -  _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= -  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -  _LT_AC_TAGVAR(thread_safe_flag_spec, $1)= -  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -  _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -  _LT_AC_TAGVAR(hardcode_direct, $1)=no -  _LT_AC_TAGVAR(hardcode_minus_L, $1)=no -  _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported -  _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown -  _LT_AC_TAGVAR(hardcode_automatic, $1)=no -  _LT_AC_TAGVAR(module_cmds, $1)= -  _LT_AC_TAGVAR(module_expsym_cmds, $1)= -  _LT_AC_TAGVAR(always_export_symbols, $1)=no -  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' +  _LT_TAGVAR(allow_undefined_flag, $1)= +  _LT_TAGVAR(always_export_symbols, $1)=no +  _LT_TAGVAR(archive_cmds, $1)= +  _LT_TAGVAR(archive_expsym_cmds, $1)= +  _LT_TAGVAR(compiler_needs_object, $1)=no +  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no +  _LT_TAGVAR(export_dynamic_flag_spec, $1)= +  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' +  _LT_TAGVAR(hardcode_automatic, $1)=no +  _LT_TAGVAR(hardcode_direct, $1)=no +  _LT_TAGVAR(hardcode_direct_absolute, $1)=no +  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +  _LT_TAGVAR(hardcode_libdir_separator, $1)= +  _LT_TAGVAR(hardcode_minus_L, $1)=no +  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +  _LT_TAGVAR(inherit_rpath, $1)=no +  _LT_TAGVAR(link_all_deplibs, $1)=unknown +  _LT_TAGVAR(module_cmds, $1)= +  _LT_TAGVAR(module_expsym_cmds, $1)= +  _LT_TAGVAR(old_archive_from_new_cmds, $1)= +  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= +  _LT_TAGVAR(thread_safe_flag_spec, $1)= +  _LT_TAGVAR(whole_archive_flag_spec, $1)=    # include_expsyms should be a list of space-separated symbols to be *always*    # included in the symbol list -  _LT_AC_TAGVAR(include_expsyms, $1)= +  _LT_TAGVAR(include_expsyms, $1)=    # exclude_expsyms can be an extended regexp of symbols to exclude    # it will be wrapped by ` (' and `)$', so one must not match beginning or    # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',    # as well as any symbol that contains `d'. -  _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_" +  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']    # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out    # platforms (ab)use it in PIC code, but their linkers get confused if    # the symbol is explicitly referenced.  Since portable code cannot    # rely on this symbol name, it's probably fine to never include it in    # preloaded symbol tables. +  # Exclude shared library initialization/finalization symbols. +dnl Note also adjust exclude_expsyms for C++ above.    extract_expsyms_cmds=    case $host_os in -  cygwin* | mingw* | pw32*) +  cygwin* | mingw* | pw32* | cegcc*)      # FIXME: the MSVC++ port hasn't been tested in a loooong time      # When not using gcc, we currently assume that we are using      # Microsoft Visual C++. @@ -5048,23 +4254,51 @@ ifelse([$1],[CXX],[        with_gnu_ld=no      fi      ;; +  interix*) +    # we just hope/assume this is gcc and not c89 (= MSVC++) +    with_gnu_ld=yes +    ;;    openbsd*)      with_gnu_ld=no      ;; +  linux* | k*bsd*-gnu) +    _LT_TAGVAR(link_all_deplibs, $1)=no +    ;;    esac -  _LT_AC_TAGVAR(ld_shlibs, $1)=yes +  _LT_TAGVAR(ld_shlibs, $1)=yes    if test "$with_gnu_ld" = yes; then      # If archive_cmds runs LD, not CC, wlarc should be empty      wlarc='${wl}' +    # Set some defaults for GNU ld with shared library support. These +    # are reset later if shared libraries are not supported. Putting them +    # here allows them to be overridden if necessary. +    runpath_var=LD_RUN_PATH +    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' +    # ancient GNU ld didn't support --whole-archive et. al. +    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then +      _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' +    else +      _LT_TAGVAR(whole_archive_flag_spec, $1)= +    fi +    supports_anon_versioning=no +    case `$LD -v 2>&1` in +      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 +      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... +      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... +      *\ 2.11.*) ;; # other 2.11 versions +      *) supports_anon_versioning=yes ;; +    esac +      # See if GNU ld supports shared libraries.      case $host_os in -    aix3* | aix4* | aix5*) +    aix[[3-9]]*)        # On AIX/PPC, the GNU linker is very broken        if test "$host_cpu" != ia64; then -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	cat <<EOF 1>&2 +	_LT_TAGVAR(ld_shlibs, $1)=no +	cat <<_LT_EOF 1>&2  *** Warning: the GNU linker, at least up to release 2.9.1, is reported  *** to be unable to reliably create shared libraries on AIX. @@ -5072,74 +4306,160 @@ ifelse([$1],[CXX],[  *** really care for shared libraries, you may want to modify your PATH  *** so that a non-GNU linker is found, and then restart. -EOF +_LT_EOF        fi        ;;      amigaos*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - -      # Samuel A. Falvo II <[email protected]> reports -      # that the semantics of dynamic libraries on AmigaOS, at least up -      # to version 4, is to share data among multiple programs linked -      # with the same dynamic library.  Since this doesn't match the -      # behavior of shared libraries on other platforms, we can't use -      # them. -      _LT_AC_TAGVAR(ld_shlibs, $1)=no +      case $host_cpu in +      powerpc) +            # see comment about AmigaOS4 .so support +            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +            _LT_TAGVAR(archive_expsym_cmds, $1)='' +        ;; +      m68k) +            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' +            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +            _LT_TAGVAR(hardcode_minus_L, $1)=yes +        ;; +      esac        ;;      beos*) -      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then -	_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported +      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then +	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported  	# Joseph Beckenbach <[email protected]> says some releases of gcc  	# support --undefined.  This deserves some investigation.  FIXME -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'        else -	_LT_AC_TAGVAR(ld_shlibs, $1)=no +	_LT_TAGVAR(ld_shlibs, $1)=no        fi        ;; -    cygwin* | mingw* | pw32*) -      # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, +    cygwin* | mingw* | pw32* | cegcc*) +      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,        # as there is no search path for DLLs. -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported -      _LT_AC_TAGVAR(always_export_symbols, $1)=no -      _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes -      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' - -      if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then -        _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported +      _LT_TAGVAR(always_export_symbols, $1)=no +      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes +      _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' + +      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then +        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'  	# If the export-symbols file already is a .def file (1st line  	# is EXPORTS), use it as is; otherwise, prepend... -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then +	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then  	  cp $export_symbols $output_objdir/$soname.def;  	else  	  echo EXPORTS > $output_objdir/$soname.def;  	  cat $export_symbols >> $output_objdir/$soname.def;  	fi~ -	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000  ${wl}--out-implib,$lib' +	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'        else -	ld_shlibs=no +	_LT_TAGVAR(ld_shlibs, $1)=no        fi        ;; -    netbsd* | knetbsd*-gnu) -      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' +    interix[[3-9]]*) +      _LT_TAGVAR(hardcode_direct, $1)=no +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' +      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. +      # Instead, shared libraries are loaded at an image base (0x10000000 by +      # default) and relocated if they conflict, which is a slow very memory +      # consuming and fragmenting process.  To avoid this, we pick a random, +      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link +      # time.  Moving up from 0x10000000 also allows more sbrk(2) space. +      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' +      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' +      ;; + +    gnu* | linux* | tpf* | k*bsd*-gnu) +      tmp_diet=no +      if test "$host_os" = linux-dietlibc; then +	case $cc_basename in +	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn) +	esac +      fi +      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ +	 && test "$tmp_diet" = no +      then +	tmp_addflag= +	tmp_sharedflag='-shared' +	case $cc_basename,$host_cpu in +        pgcc*)				# Portland Group C compiler +	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' +	  tmp_addflag=' $pic_flag' +	  ;; +	pgf77* | pgf90* | pgf95*)	# Portland Group f77 and f90 compilers +	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' +	  tmp_addflag=' $pic_flag -Mnomain' ;; +	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64 +	  tmp_addflag=' -i_dynamic' ;; +	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64 +	  tmp_addflag=' -i_dynamic -nofor_main' ;; +	ifc* | ifort*)			# Intel Fortran compiler +	  tmp_addflag=' -nofor_main' ;; +	lf95*)				# Lahey Fortran 8.1 +	  _LT_TAGVAR(whole_archive_flag_spec, $1)= +	  tmp_sharedflag='--shared' ;; +	xl[[cC]]*)			# IBM XL C 8.0 on PPC (deal with xlf below) +	  tmp_sharedflag='-qmkshrobj' +	  tmp_addflag= ;; +	esac +	case `$CC -V 2>&1 | sed 5q` in +	*Sun\ C*)			# Sun C 5.9 +	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' +	  _LT_TAGVAR(compiler_needs_object, $1)=yes +	  tmp_sharedflag='-G' ;; +	*Sun\ F*)			# Sun Fortran 8.3 +	  tmp_sharedflag='-G' ;; +	esac +	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + +        if test "x$supports_anon_versioning" = xyes; then +          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ +	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ +	    echo "local: *; };" >> $output_objdir/$libname.ver~ +	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' +        fi + +	case $cc_basename in +	xlf*) +	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself +	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' +	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +	  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' +	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib' +	  if test "x$supports_anon_versioning" = xyes; then +	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ +	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ +	      echo "local: *; };" >> $output_objdir/$libname.ver~ +	      $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' +	  fi +	  ;; +	esac +      else +        _LT_TAGVAR(ld_shlibs, $1)=no +      fi +      ;; + +    netbsd* | netbsdelf*-gnu) +      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then +	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'  	wlarc=        else -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'        fi        ;; -    solaris* | sysv5*) -      if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then -	_LT_AC_TAGVAR(ld_shlibs, $1)=no -	cat <<EOF 1>&2 +    solaris*) +      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then +	_LT_TAGVAR(ld_shlibs, $1)=no +	cat <<_LT_EOF 1>&2  *** Warning: The releases 2.8.* of the GNU linker cannot reliably  *** create shared libraries on Solaris systems.  Therefore, libtool @@ -5148,87 +4468,87 @@ EOF  *** your PATH or compiler configuration so that the native linker is  *** used, and then restart. -EOF -      elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' +_LT_EOF +      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'        else -	_LT_AC_TAGVAR(ld_shlibs, $1)=no +	_LT_TAGVAR(ld_shlibs, $1)=no        fi        ;; +    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) +      case `$LD -v 2>&1` in +        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) +	_LT_TAGVAR(ld_shlibs, $1)=no +	cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** reliably create shared libraries on SCO systems.  Therefore, libtool +*** is disabling shared libraries support.  We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF +	;; +	*) +	  # For security reasons, it is highly recommended that you always +	  # use absolute paths for naming shared libraries, and exclude the +	  # DT_RUNPATH tag from executables and libraries.  But doing so +	  # requires that you compile everything twice, which is a pain. +	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' +	  else +	    _LT_TAGVAR(ld_shlibs, $1)=no +	  fi +	;; +      esac +      ;; +      sunos4*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' +      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'        wlarc= -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;; -  linux*) -    if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then -        tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -	_LT_AC_TAGVAR(archive_cmds, $1)="$tmp_archive_cmds" -      supports_anon_versioning=no -      case `$LD -v 2>/dev/null` in -        *\ [01].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 -        *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... -        *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... -        *\ 2.11.*) ;; # other 2.11 versions -        *) supports_anon_versioning=yes ;; -      esac -      if test $supports_anon_versioning = yes; then -        _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~ -cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ -$echo "local: *; };" >> $output_objdir/$libname.ver~ -        $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' -      else -        _LT_AC_TAGVAR(archive_expsym_cmds, $1)="$tmp_archive_cmds" -      fi -      _LT_AC_TAGVAR(link_all_deplibs, $1)=no -    else -      _LT_AC_TAGVAR(ld_shlibs, $1)=no -    fi -    ;; -      *) -      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' +      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'        else -	_LT_AC_TAGVAR(ld_shlibs, $1)=no +	_LT_TAGVAR(ld_shlibs, $1)=no        fi        ;;      esac -    if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = yes; then -      runpath_var=LD_RUN_PATH -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' -      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' -      # ancient GNU ld didn't support --whole-archive et. al. -      if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then - 	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' -      else -  	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -      fi +    if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then +      runpath_var= +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +      _LT_TAGVAR(export_dynamic_flag_spec, $1)= +      _LT_TAGVAR(whole_archive_flag_spec, $1)=      fi    else      # PORTME fill in a description of your system's linker (not GNU ld)      case $host_os in      aix3*) -      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported -      _LT_AC_TAGVAR(always_export_symbols, $1)=yes -      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' +      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported +      _LT_TAGVAR(always_export_symbols, $1)=yes +      _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'        # Note: this linker hardcodes the directories in LIBPATH if there        # are no directories specified by -L. -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes -      if test "$GCC" = yes && test -z "$link_static_flag"; then +      _LT_TAGVAR(hardcode_minus_L, $1)=yes +      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then  	# Neither direct hardcoding nor static linking is supported with a  	# broken collect2. -	_LT_AC_TAGVAR(hardcode_direct, $1)=unsupported +	_LT_TAGVAR(hardcode_direct, $1)=unsupported        fi        ;; -    aix4* | aix5*) +    aix[[4-9]]*)        if test "$host_cpu" = ia64; then  	# On IA64, the linker does run time linking by default, so we don't  	# have to do anything special. @@ -5238,23 +4558,24 @@ $echo "local: *; };" >> $output_objdir/$libname.ver~        else  	# If we're using GNU nm, then we don't want the "-C" option.  	# -C means demangle to AIX nm, but means don't demangle with GNU nm -	if $NM -V 2>&1 | grep 'GNU' > /dev/null; then -	  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' +	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then +	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'  	else -	  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' +	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'  	fi  	aix_use_runtimelinking=no  	# Test if we are trying to use run time linking or normal  	# AIX style linking. If -brtl is somewhere in LDFLAGS, we  	# need to do runtime linking. -	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) +	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)  	  for ld_flag in $LDFLAGS; do -  	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then -  	    aix_use_runtimelinking=yes -  	    break -  	  fi +	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then +	    aix_use_runtimelinking=yes +	    break +	  fi  	  done +	  ;;  	esac  	exp_sym_flag='-bexport' @@ -5267,174 +4588,143 @@ $echo "local: *; };" >> $output_objdir/$libname.ver~        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. -      _LT_AC_TAGVAR(archive_cmds, $1)='' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' -      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes +      _LT_TAGVAR(archive_cmds, $1)='' +      _LT_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes +      _LT_TAGVAR(hardcode_libdir_separator, $1)=':' +      _LT_TAGVAR(link_all_deplibs, $1)=yes +      _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'        if test "$GCC" = yes; then -	case $host_os in aix4.[012]|aix4.[012].*) +	case $host_os in aix4.[[012]]|aix4.[[012]].*)  	# We only want to do this on AIX 4.2 and lower, the check  	# below for broken collect2 doesn't work under 4.3+  	  collect2name=`${CC} -print-prog-name=collect2` -	  if test -f "$collect2name" && \ -  	   strings "$collect2name" | grep resolve_lib_name >/dev/null +	  if test -f "$collect2name" && +	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null  	  then -  	  # We have reworked collect2 -  	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes +	  # We have reworked collect2 +	  :  	  else -  	  # We have old collect2 -  	  _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported -  	  # It fails to find uninstalled libraries when the uninstalled -  	  # path is not listed in the libpath.  Setting hardcode_minus_L -  	  # to unsupported forces relinking -  	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes -  	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -  	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= +	  # We have old collect2 +	  _LT_TAGVAR(hardcode_direct, $1)=unsupported +	  # It fails to find uninstalled libraries when the uninstalled +	  # path is not listed in the libpath.  Setting hardcode_minus_L +	  # to unsupported forces relinking +	  _LT_TAGVAR(hardcode_minus_L, $1)=yes +	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +	  _LT_TAGVAR(hardcode_libdir_separator, $1)=  	  fi +	  ;;  	esac  	shared_flag='-shared' +	if test "$aix_use_runtimelinking" = yes; then +	  shared_flag="$shared_flag "'${wl}-G' +	fi +	_LT_TAGVAR(link_all_deplibs, $1)=no        else  	# not using gcc  	if test "$host_cpu" = ia64; then -  	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release -  	# chokes on -Wl,-G. The following line is correct: +	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release +	# chokes on -Wl,-G. The following line is correct:  	  shared_flag='-G'  	else -  	if test "$aix_use_runtimelinking" = yes; then +	  if test "$aix_use_runtimelinking" = yes; then  	    shared_flag='${wl}-G'  	  else  	    shared_flag='${wl}-bM:SRE' -  	fi +	  fi  	fi        fi +      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'        # It seems that -bexpall does not export symbols beginning with        # underscore (_), so it is better to generate a list of symbols to export. -      _LT_AC_TAGVAR(always_export_symbols, $1)=yes +      _LT_TAGVAR(always_export_symbols, $1)=yes        if test "$aix_use_runtimelinking" = yes; then  	# Warning - without using the other runtime loading flags (-brtl),  	# -berok will link without error, but may produce a broken library. -	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' -       # Determine the default libpath from the value encoded in an empty executable. -       _LT_AC_SYS_LIBPATH_AIX -       _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" -       else +	_LT_TAGVAR(allow_undefined_flag, $1)='-berok' +        # Determine the default libpath from the value encoded in an +        # empty executable. +        _LT_SYS_MODULE_PATH_AIX +        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" +        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" +      else  	if test "$host_cpu" = ia64; then -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' -	  _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" -	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" +	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' +	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" +	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"  	else -	 # Determine the default libpath from the value encoded in an empty executable. -	 _LT_AC_SYS_LIBPATH_AIX -	 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" +	 # Determine the default libpath from the value encoded in an +	 # empty executable. +	 _LT_SYS_MODULE_PATH_AIX +	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"  	  # Warning - without using the other run time loading flags,  	  # -berok will link without error, but may produce a broken library. -	  _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' -	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' -	  # -bexpall does not export symbols beginning with underscore (_) -	  _LT_AC_TAGVAR(always_export_symbols, $1)=yes +	  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' +	  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'  	  # Exported symbols can be pulled into shared objects from archives -	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' ' -	  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes -	  # This is similar to how AIX traditionally builds it's shared libraries. -	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' +	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' +	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes +	  # This is similar to how AIX traditionally builds its shared libraries. +	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'  	fi        fi        ;;      amigaos*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes -      # see comment about different semantics on the GNU ld section -      _LT_AC_TAGVAR(ld_shlibs, $1)=no +      case $host_cpu in +      powerpc) +            # see comment about AmigaOS4 .so support +            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +            _LT_TAGVAR(archive_expsym_cmds, $1)='' +        ;; +      m68k) +            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' +            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +            _LT_TAGVAR(hardcode_minus_L, $1)=yes +        ;; +      esac        ;; -    bsdi4*) -      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic +    bsdi[[45]]*) +      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic        ;; -    cygwin* | mingw* | pw32*) +    cygwin* | mingw* | pw32* | cegcc*)        # When not using gcc, we currently assume that we are using        # Microsoft Visual C++.        # hardcode_libdir_flag_spec is actually meaningless, as there is        # no search path for DLLs. -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' -      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' +      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported        # Tell ltmain to make .lib files, not .a files.        libext=lib        # Tell ltmain to make .dll files, not .so files.        shrext_cmds=".dll"        # FIXME: Setting linknames here is a bad hack. -      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' +      _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='        # The linker will automatically build a .lib file if we build a DLL. -      _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true' +      _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'        # FIXME: Should let the user specify the lib program. -      _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs' -      fix_srcfile_path='`cygpath -w "$srcfile"`' -      _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes +      _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' +      _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`' +      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes        ;;      darwin* | rhapsody*) -    if test "$GXX" = yes ; then -      _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -      case "$host_os" in -      rhapsody* | darwin1.[[012]]) -	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' -	;; -      *) # Darwin 1.3 on -      if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then -      	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' -      else -        case ${MACOSX_DEPLOYMENT_TARGET} in -          10.[[012]]) -            _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' -            ;; -          10.*) -            _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined dynamic_lookup' -            ;; -        esac -      fi -	;; -      esac -    	lt_int_apple_cc_single_mod=no -    	output_verbose_link_cmd='echo' -    	if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then -    	  lt_int_apple_cc_single_mod=yes -    	fi -    	if test "X$lt_int_apple_cc_single_mod" = Xyes ; then -    	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' -    	else -        _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' -      fi -      _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' -      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's -        if test "X$lt_int_apple_cc_single_mod" = Xyes ; then -          _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' -        else -          _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' -        fi -          _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' -      _LT_AC_TAGVAR(hardcode_direct, $1)=no -      _LT_AC_TAGVAR(hardcode_automatic, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported -      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' -      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes -    else -      _LT_AC_TAGVAR(ld_shlibs, $1)=no -    fi +      _LT_DARWIN_LINKER_FEATURES($1)        ;;      dgux*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;;      freebsd1*) -      _LT_AC_TAGVAR(ld_shlibs, $1)=no +      _LT_TAGVAR(ld_shlibs, $1)=no        ;;      # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor @@ -5442,91 +4732,106 @@ $echo "local: *; };" >> $output_objdir/$libname.ver~      # does not break anything, and helps significantly (at the cost of a little      # extra space).      freebsd2.2*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' +      _LT_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;;      # Unfortunately, older versions of FreeBSD 2 do not have this feature.      freebsd2*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' +      _LT_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_minus_L, $1)=yes +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;;      # FreeBSD 3 and greater uses gcc -shared to do shared libraries. -    freebsd* | kfreebsd*-gnu) -      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +    freebsd* | dragonfly*) +      _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' +      _LT_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;;      hpux9*)        if test "$GCC" = yes; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' +	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'        else -	_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' +	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'        fi -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' -      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' +      _LT_TAGVAR(hardcode_libdir_separator, $1)=: +      _LT_TAGVAR(hardcode_direct, $1)=yes        # hardcode_minus_L: Not really in the search PATH,        # but as the default location of the library. -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes -      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +      _LT_TAGVAR(hardcode_minus_L, $1)=yes +      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'        ;; -    hpux10* | hpux11*) +    hpux10*)        if test "$GCC" = yes -a "$with_gnu_ld" = no; then -	case "$host_cpu" in -	hppa*64*|ia64*) -	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' +      else +	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' +      fi +      if test "$with_gnu_ld" = no; then +	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' +	_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' +	_LT_TAGVAR(hardcode_libdir_separator, $1)=: +	_LT_TAGVAR(hardcode_direct, $1)=yes +	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes +	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +	# hardcode_minus_L: Not really in the search PATH, +	# but as the default location of the library. +	_LT_TAGVAR(hardcode_minus_L, $1)=yes +      fi +      ;; + +    hpux11*) +      if test "$GCC" = yes -a "$with_gnu_ld" = no; then +	case $host_cpu in +	hppa*64*) +	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' +	  ;; +	ia64*) +	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'  	  ;;  	*) -	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' +	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'  	  ;;  	esac        else -	case "$host_cpu" in -	hppa*64*|ia64*) -	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags' +	case $host_cpu in +	hppa*64*) +	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' +	  ;; +	ia64*) +	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'  	  ;;  	*) -	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' +	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'  	  ;;  	esac        fi        if test "$with_gnu_ld" = no; then -	case "$host_cpu" in -	hppa*64*) -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' -	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -	  _LT_AC_TAGVAR(hardcode_direct, $1)=no -	  _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -	  ;; -	ia64*) -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -	  _LT_AC_TAGVAR(hardcode_direct, $1)=no -	  _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' +	_LT_TAGVAR(hardcode_libdir_separator, $1)=: -	  # hardcode_minus_L: Not really in the search PATH, -	  # but as the default location of the library. -	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes +	case $host_cpu in +	hppa*64*|ia64*) +	  _LT_TAGVAR(hardcode_direct, $1)=no +	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no  	  ;;  	*) -	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' -	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes -	  _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +	  _LT_TAGVAR(hardcode_direct, $1)=yes +	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes +	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'  	  # hardcode_minus_L: Not really in the search PATH,  	  # but as the default location of the library. -	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes +	  _LT_TAGVAR(hardcode_minus_L, $1)=yes  	  ;;  	esac        fi @@ -5534,236 +4839,290 @@ $echo "local: *; };" >> $output_objdir/$libname.ver~      irix5* | irix6* | nonstopux*)        if test "$GCC" = yes; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' +	# Try to use the -exported_symbol ld option, if it does not +	# work, assume that -exports_file does not work either and +	# implicitly export all symbols. +        save_LDFLAGS="$LDFLAGS" +        LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" +        AC_LINK_IFELSE(int foo(void) {}, +          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' +        ) +        LDFLAGS="$save_LDFLAGS"        else -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' +	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'        fi -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' -      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes +      _LT_TAGVAR(archive_cmds_need_lc, $1)='no' +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +      _LT_TAGVAR(hardcode_libdir_separator, $1)=: +      _LT_TAGVAR(inherit_rpath, $1)=yes +      _LT_TAGVAR(link_all_deplibs, $1)=yes        ;; -    netbsd* | knetbsd*-gnu) -      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out +    netbsd* | netbsdelf*-gnu) +      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then +	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out        else -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF +	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF        fi -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' +      _LT_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;;      newsos6) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' -      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' +      _LT_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +      _LT_TAGVAR(hardcode_libdir_separator, $1)=: +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +      ;; + +    *nto* | *qnx*)        ;;      openbsd*) -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' -	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +      if test -f /usr/libexec/ld.so; then +	_LT_TAGVAR(hardcode_direct, $1)=yes +	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no +	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes +	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then +	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' +	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' +	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' +	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +	else +	  case $host_os in +	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) +	     _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' +	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' +	     ;; +	   *) +	     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' +	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' +	     ;; +	  esac +	fi        else -       case $host_os in -	 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) -	   _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -	   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' -	   ;; -	 *) -	   _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -	   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' -	   ;; -       esac +	_LT_TAGVAR(ld_shlibs, $1)=no        fi        ;;      os2*) -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes -      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported -      _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' -      _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +      _LT_TAGVAR(hardcode_minus_L, $1)=yes +      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported +      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' +      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'        ;;      osf3*)        if test "$GCC" = yes; then -	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' +	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'        else -	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' +	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'        fi -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' -      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: +      _LT_TAGVAR(archive_cmds_need_lc, $1)='no' +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +      _LT_TAGVAR(hardcode_libdir_separator, $1)=:        ;;      osf4* | osf5*)	# as osf3* with the addition of -msym flag        if test "$GCC" = yes; then -	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' +	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'        else -	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ -	$LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' +	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' +	_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ +	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'  	# Both c and cxx compiler support -rpath directly -	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' +	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'        fi -      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: -      ;; - -    sco3.2v5*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' -      runpath_var=LD_RUN_PATH -      hardcode_runpath_var=yes +      _LT_TAGVAR(archive_cmds_need_lc, $1)='no' +      _LT_TAGVAR(hardcode_libdir_separator, $1)=:        ;;      solaris*) -      _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' +      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'        if test "$GCC" = yes; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -	  $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' +	wlarc='${wl}' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ +	  $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'        else -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -  	$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' +	case `$CC -V 2>&1` in +	*"Compilers 5.0"*) +	  wlarc='' +	  _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' +	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ +	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' +	  ;; +	*) +	  wlarc='${wl}' +	  _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' +	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ +	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' +	  ;; +	esac        fi -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        case $host_os in        solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; -      *) # Supported since Solaris 2.6 (maybe 2.5.1?) -	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; +      *) +	# The compiler driver will combine and reorder linker options, +	# but understands `-z linker_flag'.  GCC discards it without `$wl', +	# but is careful enough not to reorder. +	# Supported since Solaris 2.6 (maybe 2.5.1?) +	if test "$GCC" = yes; then +	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' +	else +	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' +	fi +	;;        esac -      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes +      _LT_TAGVAR(link_all_deplibs, $1)=yes        ;;      sunos4*)        if test "x$host_vendor" = xsequent; then  	# Use $CC to link under sequent, because it throws in some extra .o  	# files that make .init and .fini sections work. -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'        else -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' +	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'        fi -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +      _LT_TAGVAR(hardcode_direct, $1)=yes +      _LT_TAGVAR(hardcode_minus_L, $1)=yes +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;;      sysv4)        case $host_vendor in  	sni) -	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true??? +	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' +	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???  	;;  	siemens)  	  ## LD is ld it makes a PLAMLIB  	  ## CC just makes a GrossModule. -	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' -	  _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' -	  _LT_AC_TAGVAR(hardcode_direct, $1)=no +	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' +	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' +	  _LT_TAGVAR(hardcode_direct, $1)=no          ;;  	motorola) -	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -	  _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie +	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' +	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie  	;;        esac        runpath_var='LD_RUN_PATH' -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;;      sysv4.3*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' +      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'        ;;      sysv4*MP*)        if test -d /usr/nec; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -	_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' +	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no  	runpath_var=LD_RUN_PATH  	hardcode_runpath_var=yes -	_LT_AC_TAGVAR(ld_shlibs, $1)=yes +	_LT_TAGVAR(ld_shlibs, $1)=yes        fi        ;; -    sysv4.2uw2*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' -      _LT_AC_TAGVAR(hardcode_direct, $1)=yes -      _LT_AC_TAGVAR(hardcode_minus_L, $1)=no -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no -      hardcode_runpath_var=yes -      runpath_var=LD_RUN_PATH -      ;; +    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) +      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' +      _LT_TAGVAR(archive_cmds_need_lc, $1)=no +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +      runpath_var='LD_RUN_PATH' -   sysv5OpenUNIX8* | sysv5UnixWare7* |  sysv5uw[[78]]* | unixware7*) -      _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'        if test "$GCC" = yes; then -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'        else -	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'        fi -      runpath_var='LD_RUN_PATH' -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no        ;; -    sysv5*) -      _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' -      # $CC -shared without GNU ld will not create a library from C++ -      # object files and a static libstdc++, better avoid it by now -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -  		$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +    sysv5* | sco3.2v5* | sco5v6*) +      # Note: We can NOT use -z defs as we might desire, because we do not +      # link with -lc, and that would cause any symbols used from libc to +      # always be unresolved, which means just about no library would +      # ever link correctly.  If we're not using GNU ld we use -z text +      # though, which does catch some bad symbols but isn't as heavy-handed +      # as -z defs. +      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' +      _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' +      _LT_TAGVAR(archive_cmds_need_lc, $1)=no +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' +      _LT_TAGVAR(hardcode_libdir_separator, $1)=':' +      _LT_TAGVAR(link_all_deplibs, $1)=yes +      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'        runpath_var='LD_RUN_PATH' + +      if test "$GCC" = yes; then +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +      else +	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +      fi        ;;      uts4*) -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no +      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' +      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no        ;;      *) -      _LT_AC_TAGVAR(ld_shlibs, $1)=no +      _LT_TAGVAR(ld_shlibs, $1)=no        ;;      esac + +    if test x$host_vendor = xsni; then +      case $host in +      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) +	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' +	;; +      esac +    fi    fi  ]) -AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no +AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) +test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then -  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi +_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld + +_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl +_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl +_LT_DECL([], [extract_expsyms_cmds], [2], +    [The commands to extract the exported symbol list from a shared archive])  #  # Do we need to explicitly link libc?  # -case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in +case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in  x|xyes)    # Assume -lc should be added -  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes +  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes    if test "$enable_shared" = yes && test "$GCC" = yes; then -    case $_LT_AC_TAGVAR(archive_cmds, $1) in +    case $_LT_TAGVAR(archive_cmds, $1) in      *'~'*)        # FIXME: we may have to deal with multi-command sequences.        ;; @@ -5772,120 +5131,1934 @@ x|xyes)        # systems, -lgcc has to come before -lc. If gcc already passes -lc        # to ld, don't add -lc before -lgcc.        AC_MSG_CHECKING([whether -lc should be explicitly linked in]) -      $rm conftest* -      printf "$lt_simple_compile_test_code" > conftest.$ac_ext +      $RM conftest* +      echo "$lt_simple_compile_test_code" > conftest.$ac_ext        if AC_TRY_EVAL(ac_compile) 2>conftest.err; then          soname=conftest          lib=conftest          libobjs=conftest.$ac_objext          deplibs= -        wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) +        wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) +	pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)          compiler_flags=-v          linker_flags=-v          verstring=          output_objdir=.          libname=conftest -        lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1) -        _LT_AC_TAGVAR(allow_undefined_flag, $1)= -        if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) +        lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) +        _LT_TAGVAR(allow_undefined_flag, $1)= +        if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)          then -	  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no +	  _LT_TAGVAR(archive_cmds_need_lc, $1)=no          else -	  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes +	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes          fi -        _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag +        _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag        else          cat conftest.err 1>&5        fi -      $rm conftest* -      AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)]) +      $RM conftest* +      AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])        ;;      esac    fi    ;;  esac -])# AC_LIBTOOL_PROG_LD_SHLIBS +_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], +    [Whether or not to add -lc for building shared libraries]) +_LT_TAGDECL([allow_libtool_libs_with_static_runtimes], +    [enable_shared_with_static_runtimes], [0], +    [Whether or not to disallow shared libs when runtime libs are static]) +_LT_TAGDECL([], [export_dynamic_flag_spec], [1], +    [Compiler flag to allow reflexive dlopens]) +_LT_TAGDECL([], [whole_archive_flag_spec], [1], +    [Compiler flag to generate shared objects directly from archives]) +_LT_TAGDECL([], [compiler_needs_object], [1], +    [Whether the compiler copes with passing no objects directly]) +_LT_TAGDECL([], [old_archive_from_new_cmds], [2], +    [Create an old-style archive from a shared archive]) +_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], +    [Create a temporary old-style archive to link instead of a shared archive]) +_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) +_LT_TAGDECL([], [archive_expsym_cmds], [2]) +_LT_TAGDECL([], [module_cmds], [2], +    [Commands used to build a loadable module if different from building +    a shared archive.]) +_LT_TAGDECL([], [module_expsym_cmds], [2]) +_LT_TAGDECL([], [with_gnu_ld], [1], +    [Whether we are building with GNU ld or not]) +_LT_TAGDECL([], [allow_undefined_flag], [1], +    [Flag that allows shared libraries with undefined symbols to be built]) +_LT_TAGDECL([], [no_undefined_flag], [1], +    [Flag that enforces no undefined symbols]) +_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], +    [Flag to hardcode $libdir into a binary during linking. +    This must work even if $libdir does not exist]) +_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1], +    [[If ld is used when linking, flag to hardcode $libdir into a binary +    during linking.  This must work even if $libdir does not exist]]) +_LT_TAGDECL([], [hardcode_libdir_separator], [1], +    [Whether we need a single "-rpath" flag with a separated argument]) +_LT_TAGDECL([], [hardcode_direct], [0], +    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes +    DIR into the resulting binary]) +_LT_TAGDECL([], [hardcode_direct_absolute], [0], +    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes +    DIR into the resulting binary and the resulting library dependency is +    "absolute", i.e impossible to change by setting ${shlibpath_var} if the +    library is relocated]) +_LT_TAGDECL([], [hardcode_minus_L], [0], +    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR +    into the resulting binary]) +_LT_TAGDECL([], [hardcode_shlibpath_var], [0], +    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +    into the resulting binary]) +_LT_TAGDECL([], [hardcode_automatic], [0], +    [Set to "yes" if building a shared library automatically hardcodes DIR +    into the library and all subsequent libraries and executables linked +    against it]) +_LT_TAGDECL([], [inherit_rpath], [0], +    [Set to yes if linker adds runtime paths of dependent libraries +    to runtime path list]) +_LT_TAGDECL([], [link_all_deplibs], [0], +    [Whether libtool must link a program against all its dependency libraries]) +_LT_TAGDECL([], [fix_srcfile_path], [1], +    [Fix the shell variable $srcfile for the compiler]) +_LT_TAGDECL([], [always_export_symbols], [0], +    [Set to "yes" if exported symbols are required]) +_LT_TAGDECL([], [export_symbols_cmds], [2], +    [The commands to list exported symbols]) +_LT_TAGDECL([], [exclude_expsyms], [1], +    [Symbols that should not be listed in the preloaded symbols]) +_LT_TAGDECL([], [include_expsyms], [1], +    [Symbols that must always be exported]) +_LT_TAGDECL([], [prelink_cmds], [2], +    [Commands necessary for linking programs (against libraries) with templates]) +_LT_TAGDECL([], [file_list_spec], [1], +    [Specify filename containing input files]) +dnl FIXME: Not yet implemented +dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], +dnl    [Compiler flag to generate thread safe objects]) +])# _LT_LINKER_SHLIBS + + +# _LT_LANG_C_CONFIG([TAG]) +# ------------------------ +# Ensure that the configuration variables for a C compiler are suitably +# defined.  These variables are subsequently used by _LT_CONFIG to write +# the compiler configuration to `libtool'. +m4_defun([_LT_LANG_C_CONFIG], +[m4_require([_LT_DECL_EGREP])dnl +lt_save_CC="$CC" +AC_LANG_PUSH(C) -# _LT_AC_FILE_LTDLL_C -# ------------------- -# Be careful that the start marker always follows a newline. -AC_DEFUN([_LT_AC_FILE_LTDLL_C], [ -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include <windows.h> -# #undef WIN32_LEAN_AND_MEAN -# #include <stdio.h> -# -# #ifndef __CYGWIN__ -# #  ifdef __CYGWIN32__ -# #    define __CYGWIN__ __CYGWIN32__ -# #  endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include <cygwin/cygwin_dll.h> -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -#   __hDllInstance_base = hInst; -#   return TRUE; -# } -# /* ltdll.c ends here */ -])# _LT_AC_FILE_LTDLL_C +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}' + +_LT_TAG_COMPILER +# Save the default compiler, since it gets overwritten when the other +# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. +compiler_DEFAULT=$CC + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +if test -n "$compiler"; then +  _LT_COMPILER_NO_RTTI($1) +  _LT_COMPILER_PIC($1) +  _LT_COMPILER_C_O($1) +  _LT_COMPILER_FILE_LOCKS($1) +  _LT_LINKER_SHLIBS($1) +  _LT_SYS_DYNAMIC_LINKER($1) +  _LT_LINKER_HARDCODE_LIBPATH($1) +  LT_SYS_DLOPEN_SELF +  _LT_CMD_STRIPLIB + +  # Report which library types will actually be built +  AC_MSG_CHECKING([if libtool supports shared libraries]) +  AC_MSG_RESULT([$can_build_shared]) + +  AC_MSG_CHECKING([whether to build shared libraries]) +  test "$can_build_shared" = "no" && enable_shared=no + +  # On AIX, shared libraries and static libraries use the same namespace, and +  # are all built from PIC. +  case $host_os in +  aix3*) +    test "$enable_shared" = yes && enable_static=no +    if test -n "$RANLIB"; then +      archive_cmds="$archive_cmds~\$RANLIB \$lib" +      postinstall_cmds='$RANLIB $lib' +    fi +    ;; + +  aix[[4-9]]*) +    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then +      test "$enable_shared" = yes && enable_static=no +    fi +    ;; +  esac +  AC_MSG_RESULT([$enable_shared]) + +  AC_MSG_CHECKING([whether to build static libraries]) +  # Make sure either enable_shared or enable_static is yes. +  test "$enable_shared" = yes || enable_static=yes +  AC_MSG_RESULT([$enable_static]) + +  _LT_CONFIG($1) +fi +AC_LANG_POP +CC="$lt_save_CC" +])# _LT_LANG_C_CONFIG + + +# _LT_PROG_CXX +# ------------ +# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++ +# compiler, we have our own version here. +m4_defun([_LT_PROG_CXX], +[ +pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes]) +AC_PROG_CXX +if test -n "$CXX" && ( test "X$CXX" != "Xno" && +    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || +    (test "X$CXX" != "Xg++"))) ; then +  AC_PROG_CXXCPP +else +  _lt_caught_CXX_error=yes +fi +popdef([AC_MSG_ERROR]) +])# _LT_PROG_CXX + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([_LT_PROG_CXX], []) + + +# _LT_LANG_CXX_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for a C++ compiler are suitably +# defined.  These variables are subsequently used by _LT_CONFIG to write +# the compiler configuration to `libtool'. +m4_defun([_LT_LANG_CXX_CONFIG], +[AC_REQUIRE([_LT_PROG_CXX])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_EGREP])dnl + +AC_LANG_PUSH(C++) +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(compiler_needs_object, $1)=no +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for C++ test sources. +ac_ext=cpp + +# Object file extension for compiled C++ test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the CXX compiler isn't working.  Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_caught_CXX_error" != yes; then +  # Code to be used in simple compile tests +  lt_simple_compile_test_code="int some_variable = 0;" + +  # Code to be used in simple link tests +  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' + +  # ltmain only uses $CC for tagged configurations so make sure $CC is set. +  _LT_TAG_COMPILER + +  # save warnings/boilerplate of simple test code +  _LT_COMPILER_BOILERPLATE +  _LT_LINKER_BOILERPLATE + +  # Allow CC to be a program name with arguments. +  lt_save_CC=$CC +  lt_save_LD=$LD +  lt_save_GCC=$GCC +  GCC=$GXX +  lt_save_with_gnu_ld=$with_gnu_ld +  lt_save_path_LD=$lt_cv_path_LD +  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then +    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx +  else +    $as_unset lt_cv_prog_gnu_ld +  fi +  if test -n "${lt_cv_path_LDCXX+set}"; then +    lt_cv_path_LD=$lt_cv_path_LDCXX +  else +    $as_unset lt_cv_path_LD +  fi +  test -z "${LDCXX+set}" || LD=$LDCXX +  CC=${CXX-"c++"} +  compiler=$CC +  _LT_TAGVAR(compiler, $1)=$CC +  _LT_CC_BASENAME([$compiler]) + +  if test -n "$compiler"; then +    # We don't want -fno-exception when compiling C++ code, so set the +    # no_builtin_flag separately +    if test "$GXX" = yes; then +      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' +    else +      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= +    fi + +    if test "$GXX" = yes; then +      # Set up default GNU C++ configuration + +      LT_PATH_LD + +      # Check if GNU C++ uses GNU ld as the underlying linker, since the +      # archiving commands below assume that GNU ld is being used. +      if test "$with_gnu_ld" = yes; then +        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' +        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + +        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' +        # If archive_cmds runs LD, not CC, wlarc should be empty +        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to +        #     investigate it a little bit more. (MM) +        wlarc='${wl}' -# _LT_AC_TAGVAR(VARNAME, [TAGNAME]) +        # ancient GNU ld didn't support --whole-archive et. al. +        if eval "`$CC -print-prog-name=ld` --help 2>&1" | +	  $GREP 'no-whole-archive' > /dev/null; then +          _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' +        else +          _LT_TAGVAR(whole_archive_flag_spec, $1)= +        fi +      else +        with_gnu_ld=no +        wlarc= + +        # A generic and very simple default shared library creation +        # command for GNU C++ for the case where it uses the native +        # linker, instead of GNU ld.  If possible, this setting should +        # overridden to take advantage of the native linker features on +        # the platform it is being used on. +        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' +      fi + +      # Commands to make compiler produce verbose output that lists +      # what "hidden" libraries, object files and flags are used when +      # linking a shared library. +      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + +    else +      GXX=no +      with_gnu_ld=no +      wlarc= +    fi + +    # PORTME: fill in a description of your system's C++ link characteristics +    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +    _LT_TAGVAR(ld_shlibs, $1)=yes +    case $host_os in +      aix3*) +        # FIXME: insert proper C++ library support +        _LT_TAGVAR(ld_shlibs, $1)=no +        ;; +      aix[[4-9]]*) +        if test "$host_cpu" = ia64; then +          # On IA64, the linker does run time linking by default, so we don't +          # have to do anything special. +          aix_use_runtimelinking=no +          exp_sym_flag='-Bexport' +          no_entry_flag="" +        else +          aix_use_runtimelinking=no + +          # Test if we are trying to use run time linking or normal +          # AIX style linking. If -brtl is somewhere in LDFLAGS, we +          # need to do runtime linking. +          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) +	    for ld_flag in $LDFLAGS; do +	      case $ld_flag in +	      *-brtl*) +	        aix_use_runtimelinking=yes +	        break +	        ;; +	      esac +	    done +	    ;; +          esac + +          exp_sym_flag='-bexport' +          no_entry_flag='-bnoentry' +        fi + +        # When large executables or shared objects are built, AIX ld can +        # have problems creating the table of contents.  If linking a library +        # or program results in "error TOC overflow" add -mminimal-toc to +        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not +        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + +        _LT_TAGVAR(archive_cmds, $1)='' +        _LT_TAGVAR(hardcode_direct, $1)=yes +        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes +        _LT_TAGVAR(hardcode_libdir_separator, $1)=':' +        _LT_TAGVAR(link_all_deplibs, $1)=yes +        _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' + +        if test "$GXX" = yes; then +          case $host_os in aix4.[[012]]|aix4.[[012]].*) +          # We only want to do this on AIX 4.2 and lower, the check +          # below for broken collect2 doesn't work under 4.3+ +	  collect2name=`${CC} -print-prog-name=collect2` +	  if test -f "$collect2name" && +	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null +	  then +	    # We have reworked collect2 +	    : +	  else +	    # We have old collect2 +	    _LT_TAGVAR(hardcode_direct, $1)=unsupported +	    # It fails to find uninstalled libraries when the uninstalled +	    # path is not listed in the libpath.  Setting hardcode_minus_L +	    # to unsupported forces relinking +	    _LT_TAGVAR(hardcode_minus_L, $1)=yes +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +	    _LT_TAGVAR(hardcode_libdir_separator, $1)= +	  fi +          esac +          shared_flag='-shared' +	  if test "$aix_use_runtimelinking" = yes; then +	    shared_flag="$shared_flag "'${wl}-G' +	  fi +        else +          # not using gcc +          if test "$host_cpu" = ia64; then +	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release +	  # chokes on -Wl,-G. The following line is correct: +	  shared_flag='-G' +          else +	    if test "$aix_use_runtimelinking" = yes; then +	      shared_flag='${wl}-G' +	    else +	      shared_flag='${wl}-bM:SRE' +	    fi +          fi +        fi + +        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' +        # It seems that -bexpall does not export symbols beginning with +        # underscore (_), so it is better to generate a list of symbols to +	# export. +        _LT_TAGVAR(always_export_symbols, $1)=yes +        if test "$aix_use_runtimelinking" = yes; then +          # Warning - without using the other runtime loading flags (-brtl), +          # -berok will link without error, but may produce a broken library. +          _LT_TAGVAR(allow_undefined_flag, $1)='-berok' +          # Determine the default libpath from the value encoded in an empty +          # executable. +          _LT_SYS_MODULE_PATH_AIX +          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + +          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" +        else +          if test "$host_cpu" = ia64; then +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' +	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" +	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" +          else +	    # Determine the default libpath from the value encoded in an +	    # empty executable. +	    _LT_SYS_MODULE_PATH_AIX +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" +	    # Warning - without using the other run time loading flags, +	    # -berok will link without error, but may produce a broken library. +	    _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' +	    _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' +	    # Exported symbols can be pulled into shared objects from archives +	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' +	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes +	    # This is similar to how AIX traditionally builds its shared +	    # libraries. +	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' +          fi +        fi +        ;; + +      beos*) +	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then +	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported +	  # Joseph Beckenbach <[email protected]> says some releases of gcc +	  # support --undefined.  This deserves some investigation.  FIXME +	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +	else +	  _LT_TAGVAR(ld_shlibs, $1)=no +	fi +	;; + +      chorus*) +        case $cc_basename in +          *) +	  # FIXME: insert proper C++ library support +	  _LT_TAGVAR(ld_shlibs, $1)=no +	  ;; +        esac +        ;; + +      cygwin* | mingw* | pw32* | cegcc*) +        # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, +        # as there is no search path for DLLs. +        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' +        _LT_TAGVAR(allow_undefined_flag, $1)=unsupported +        _LT_TAGVAR(always_export_symbols, $1)=no +        _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + +        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then +          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' +          # If the export-symbols file already is a .def file (1st line +          # is EXPORTS), use it as is; otherwise, prepend... +          _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then +	    cp $export_symbols $output_objdir/$soname.def; +          else +	    echo EXPORTS > $output_objdir/$soname.def; +	    cat $export_symbols >> $output_objdir/$soname.def; +          fi~ +          $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' +        else +          _LT_TAGVAR(ld_shlibs, $1)=no +        fi +        ;; +      darwin* | rhapsody*) +        _LT_DARWIN_LINKER_FEATURES($1) +	;; + +      dgux*) +        case $cc_basename in +          ec++*) +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +          ghcx*) +	    # Green Hills C++ Compiler +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +          *) +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +        esac +        ;; + +      freebsd[[12]]*) +        # C++ shared libraries reported to be fairly broken before +	# switch to ELF +        _LT_TAGVAR(ld_shlibs, $1)=no +        ;; + +      freebsd-elf*) +        _LT_TAGVAR(archive_cmds_need_lc, $1)=no +        ;; + +      freebsd* | dragonfly*) +        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF +        # conventions +        _LT_TAGVAR(ld_shlibs, $1)=yes +        ;; + +      gnu*) +        ;; + +      hpux9*) +        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' +        _LT_TAGVAR(hardcode_libdir_separator, $1)=: +        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +        _LT_TAGVAR(hardcode_direct, $1)=yes +        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, +				             # but as the default +				             # location of the library. + +        case $cc_basename in +          CC*) +            # FIXME: insert proper C++ library support +            _LT_TAGVAR(ld_shlibs, $1)=no +            ;; +          aCC*) +            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' +            # Commands to make compiler produce verbose output that lists +            # what "hidden" libraries, object files and flags are used when +            # linking a shared library. +            # +            # There doesn't appear to be a way to prevent this compiler from +            # explicitly linking system object files so we need to strip them +            # from the output so that they don't get included in the library +            # dependencies. +            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' +            ;; +          *) +            if test "$GXX" = yes; then +              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' +            else +              # FIXME: insert proper C++ library support +              _LT_TAGVAR(ld_shlibs, $1)=no +            fi +            ;; +        esac +        ;; + +      hpux10*|hpux11*) +        if test $with_gnu_ld = no; then +	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' +	  _LT_TAGVAR(hardcode_libdir_separator, $1)=: + +          case $host_cpu in +            hppa*64*|ia64*) +              ;; +            *) +	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +              ;; +          esac +        fi +        case $host_cpu in +          hppa*64*|ia64*) +            _LT_TAGVAR(hardcode_direct, $1)=no +            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +            ;; +          *) +            _LT_TAGVAR(hardcode_direct, $1)=yes +            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes +            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, +					         # but as the default +					         # location of the library. +            ;; +        esac + +        case $cc_basename in +          CC*) +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +          aCC*) +	    case $host_cpu in +	      hppa*64*) +	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +	        ;; +	      ia64*) +	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +	        ;; +	      *) +	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +	        ;; +	    esac +	    # Commands to make compiler produce verbose output that lists +	    # what "hidden" libraries, object files and flags are used when +	    # linking a shared library. +	    # +	    # There doesn't appear to be a way to prevent this compiler from +	    # explicitly linking system object files so we need to strip them +	    # from the output so that they don't get included in the library +	    # dependencies. +	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' +	    ;; +          *) +	    if test "$GXX" = yes; then +	      if test $with_gnu_ld = no; then +	        case $host_cpu in +	          hppa*64*) +	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +	            ;; +	          ia64*) +	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +	            ;; +	          *) +	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +	            ;; +	        esac +	      fi +	    else +	      # FIXME: insert proper C++ library support +	      _LT_TAGVAR(ld_shlibs, $1)=no +	    fi +	    ;; +        esac +        ;; + +      interix[[3-9]]*) +	_LT_TAGVAR(hardcode_direct, $1)=no +	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no +	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' +	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. +	# Instead, shared libraries are loaded at an image base (0x10000000 by +	# default) and relocated if they conflict, which is a slow very memory +	# consuming and fragmenting process.  To avoid this, we pick a random, +	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link +	# time.  Moving up from 0x10000000 also allows more sbrk(2) space. +	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' +	_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' +	;; +      irix5* | irix6*) +        case $cc_basename in +          CC*) +	    # SGI C++ +	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + +	    # Archives containing C++ object files must be created using +	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is +	    # necessary to make sure instantiated templates are included +	    # in the archive. +	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' +	    ;; +          *) +	    if test "$GXX" = yes; then +	      if test "$with_gnu_ld" = no; then +	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' +	      else +	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib' +	      fi +	    fi +	    _LT_TAGVAR(link_all_deplibs, $1)=yes +	    ;; +        esac +        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +        _LT_TAGVAR(hardcode_libdir_separator, $1)=: +        _LT_TAGVAR(inherit_rpath, $1)=yes +        ;; + +      linux* | k*bsd*-gnu) +        case $cc_basename in +          KCC*) +	    # Kuck and Associates, Inc. (KAI) C++ Compiler + +	    # KCC will only create a shared library if the output file +	    # ends with ".so" (or ".sl" for HP-UX), so rename the library +	    # to its proper name (with version) after linking. +	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' +	    _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' +	    # Commands to make compiler produce verbose output that lists +	    # what "hidden" libraries, object files and flags are used when +	    # linking a shared library. +	    # +	    # There doesn't appear to be a way to prevent this compiler from +	    # explicitly linking system object files so we need to strip them +	    # from the output so that they don't get included in the library +	    # dependencies. +	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' +	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + +	    # Archives containing C++ object files must be created using +	    # "CC -Bstatic", where "CC" is the KAI C++ compiler. +	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' +	    ;; +	  icpc* | ecpc* ) +	    # Intel C++ +	    with_gnu_ld=yes +	    # version 8.0 and above of icpc choke on multiply defined symbols +	    # if we add $predep_objects and $postdep_objects, however 7.1 and +	    # earlier do not add the objects themselves. +	    case `$CC -V 2>&1` in +	      *"Version 7."*) +	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' +		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' +		;; +	      *)  # Version 8.0 or newer +	        tmp_idyn= +	        case $host_cpu in +		  ia64*) tmp_idyn=' -i_dynamic';; +		esac +	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' +		;; +	    esac +	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' +	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' +	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' +	    ;; +          pgCC* | pgcpp*) +            # Portland Group C++ compiler +	    case `$CC -V` in +	    *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*) +	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ +		rm -rf $tpldir~ +		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ +		compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"' +	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ +		rm -rf $tpldir~ +		$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ +		$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~ +		$RANLIB $oldlib' +	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ +		rm -rf $tpldir~ +		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ +		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' +	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ +		rm -rf $tpldir~ +		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ +		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' +	      ;; +	    *) # Version 6 will use weak symbols +	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' +	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' +	      ;; +	    esac + +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' +	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' +	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' +            ;; +	  cxx*) +	    # Compaq C++ +	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' +	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + +	    runpath_var=LD_RUN_PATH +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' +	    _LT_TAGVAR(hardcode_libdir_separator, $1)=: + +	    # Commands to make compiler produce verbose output that lists +	    # what "hidden" libraries, object files and flags are used when +	    # linking a shared library. +	    # +	    # There doesn't appear to be a way to prevent this compiler from +	    # explicitly linking system object files so we need to strip them +	    # from the output so that they don't get included in the library +	    # dependencies. +	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' +	    ;; +	  xl*) +	    # IBM XL 8.0 on PPC, with GNU ld +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' +	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' +	    if test "x$supports_anon_versioning" = xyes; then +	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ +		cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ +		echo "local: *; };" >> $output_objdir/$libname.ver~ +		$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' +	    fi +	    ;; +	  *) +	    case `$CC -V 2>&1 | sed 5q` in +	    *Sun\ C*) +	      # Sun C++ 5.9 +	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' +	      _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' +	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' +	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' +	      _LT_TAGVAR(compiler_needs_object, $1)=yes + +	      # Not sure whether something based on +	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 +	      # would be better. +	      output_verbose_link_cmd='echo' + +	      # Archives containing C++ object files must be created using +	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is +	      # necessary to make sure instantiated templates are included +	      # in the archive. +	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' +	      ;; +	    esac +	    ;; +	esac +	;; + +      lynxos*) +        # FIXME: insert proper C++ library support +	_LT_TAGVAR(ld_shlibs, $1)=no +	;; + +      m88k*) +        # FIXME: insert proper C++ library support +        _LT_TAGVAR(ld_shlibs, $1)=no +	;; + +      mvs*) +        case $cc_basename in +          cxx*) +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +	  *) +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +	esac +	;; + +      netbsd*) +        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then +	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' +	  wlarc= +	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' +	  _LT_TAGVAR(hardcode_direct, $1)=yes +	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +	fi +	# Workaround some broken pre-1.5 toolchains +	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' +	;; + +      *nto* | *qnx*) +        _LT_TAGVAR(ld_shlibs, $1)=yes +	;; + +      openbsd2*) +        # C++ shared libraries are fairly broken +	_LT_TAGVAR(ld_shlibs, $1)=no +	;; + +      openbsd*) +	if test -f /usr/libexec/ld.so; then +	  _LT_TAGVAR(hardcode_direct, $1)=yes +	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes +	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' +	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' +	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then +	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' +	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' +	    _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' +	  fi +	  output_verbose_link_cmd=echo +	else +	  _LT_TAGVAR(ld_shlibs, $1)=no +	fi +	;; + +      osf3* | osf4* | osf5*) +        case $cc_basename in +          KCC*) +	    # Kuck and Associates, Inc. (KAI) C++ Compiler + +	    # KCC will only create a shared library if the output file +	    # ends with ".so" (or ".sl" for HP-UX), so rename the library +	    # to its proper name (with version) after linking. +	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' +	    _LT_TAGVAR(hardcode_libdir_separator, $1)=: + +	    # Archives containing C++ object files must be created using +	    # the KAI C++ compiler. +	    case $host in +	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; +	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; +	    esac +	    ;; +          RCC*) +	    # Rational C++ 2.4.1 +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +          cxx*) +	    case $host in +	      osf3*) +	        _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' +	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' +	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +		;; +	      *) +	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' +	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' +	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ +	          echo "-hidden">> $lib.exp~ +	          $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~ +	          $RM $lib.exp' +	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' +		;; +	    esac + +	    _LT_TAGVAR(hardcode_libdir_separator, $1)=: + +	    # Commands to make compiler produce verbose output that lists +	    # what "hidden" libraries, object files and flags are used when +	    # linking a shared library. +	    # +	    # There doesn't appear to be a way to prevent this compiler from +	    # explicitly linking system object files so we need to strip them +	    # from the output so that they don't get included in the library +	    # dependencies. +	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' +	    ;; +	  *) +	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then +	      _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' +	      case $host in +	        osf3*) +	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' +		  ;; +	        *) +	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' +		  ;; +	      esac + +	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' +	      _LT_TAGVAR(hardcode_libdir_separator, $1)=: + +	      # Commands to make compiler produce verbose output that lists +	      # what "hidden" libraries, object files and flags are used when +	      # linking a shared library. +	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + +	    else +	      # FIXME: insert proper C++ library support +	      _LT_TAGVAR(ld_shlibs, $1)=no +	    fi +	    ;; +        esac +        ;; + +      psos*) +        # FIXME: insert proper C++ library support +        _LT_TAGVAR(ld_shlibs, $1)=no +        ;; + +      sunos4*) +        case $cc_basename in +          CC*) +	    # Sun C++ 4.x +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +          lcc*) +	    # Lucid +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +          *) +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +        esac +        ;; + +      solaris*) +        case $cc_basename in +          CC*) +	    # Sun C++ 4.2, 5.x and Centerline C++ +            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes +	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' +	    _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ +	      $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + +	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' +	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +	    case $host_os in +	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; +	      *) +		# The compiler driver will combine and reorder linker options, +		# but understands `-z linker_flag'. +	        # Supported since Solaris 2.6 (maybe 2.5.1?) +		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' +	        ;; +	    esac +	    _LT_TAGVAR(link_all_deplibs, $1)=yes + +	    output_verbose_link_cmd='echo' + +	    # Archives containing C++ object files must be created using +	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is +	    # necessary to make sure instantiated templates are included +	    # in the archive. +	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' +	    ;; +          gcx*) +	    # Green Hills C++ Compiler +	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + +	    # The C++ compiler must be used to create the archive. +	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' +	    ;; +          *) +	    # GNU C++ compiler with Solaris linker +	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then +	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' +	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then +	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' +	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ +		  $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + +	        # Commands to make compiler produce verbose output that lists +	        # what "hidden" libraries, object files and flags are used when +	        # linking a shared library. +	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' +	      else +	        # g++ 2.7 appears to require `-G' NOT `-shared' on this +	        # platform. +	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' +	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ +		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + +	        # Commands to make compiler produce verbose output that lists +	        # what "hidden" libraries, object files and flags are used when +	        # linking a shared library. +	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' +	      fi + +	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' +	      case $host_os in +		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; +		*) +		  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' +		  ;; +	      esac +	    fi +	    ;; +        esac +        ;; + +    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) +      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' +      _LT_TAGVAR(archive_cmds_need_lc, $1)=no +      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no +      runpath_var='LD_RUN_PATH' + +      case $cc_basename in +        CC*) +	  _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	  ;; +	*) +	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	  ;; +      esac +      ;; + +      sysv5* | sco3.2v5* | sco5v6*) +	# Note: We can NOT use -z defs as we might desire, because we do not +	# link with -lc, and that would cause any symbols used from libc to +	# always be unresolved, which means just about no library would +	# ever link correctly.  If we're not using GNU ld we use -z text +	# though, which does catch some bad symbols but isn't as heavy-handed +	# as -z defs. +	_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' +	_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' +	_LT_TAGVAR(archive_cmds_need_lc, $1)=no +	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no +	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' +	_LT_TAGVAR(hardcode_libdir_separator, $1)=':' +	_LT_TAGVAR(link_all_deplibs, $1)=yes +	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' +	runpath_var='LD_RUN_PATH' + +	case $cc_basename in +          CC*) +	    _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	    ;; +	  *) +	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' +	    ;; +	esac +      ;; + +      tandem*) +        case $cc_basename in +          NCC*) +	    # NonStop-UX NCC 3.20 +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +          *) +	    # FIXME: insert proper C++ library support +	    _LT_TAGVAR(ld_shlibs, $1)=no +	    ;; +        esac +        ;; + +      vxworks*) +        # FIXME: insert proper C++ library support +        _LT_TAGVAR(ld_shlibs, $1)=no +        ;; + +      *) +        # FIXME: insert proper C++ library support +        _LT_TAGVAR(ld_shlibs, $1)=no +        ;; +    esac + +    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) +    test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +    _LT_TAGVAR(GCC, $1)="$GXX" +    _LT_TAGVAR(LD, $1)="$LD" + +    ## CAVEAT EMPTOR: +    ## There is no encapsulation within the following macros, do not change +    ## the running order or otherwise move them around unless you know exactly +    ## what you are doing... +    _LT_SYS_HIDDEN_LIBDEPS($1) +    _LT_COMPILER_PIC($1) +    _LT_COMPILER_C_O($1) +    _LT_COMPILER_FILE_LOCKS($1) +    _LT_LINKER_SHLIBS($1) +    _LT_SYS_DYNAMIC_LINKER($1) +    _LT_LINKER_HARDCODE_LIBPATH($1) + +    _LT_CONFIG($1) +  fi # test -n "$compiler" + +  CC=$lt_save_CC +  LDCXX=$LD +  LD=$lt_save_LD +  GCC=$lt_save_GCC +  with_gnu_ld=$lt_save_with_gnu_ld +  lt_cv_path_LDCXX=$lt_cv_path_LD +  lt_cv_path_LD=$lt_save_path_LD +  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld +  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld +fi # test "$_lt_caught_CXX_error" != yes + +AC_LANG_POP +])# _LT_LANG_CXX_CONFIG + + +# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])  # --------------------------------- -AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])]) +# Figure out "hidden" library dependencies from verbose +# compiler output when linking a shared library. +# Parse the compiler output and extract the necessary +# objects, libraries and library flags. +m4_defun([_LT_SYS_HIDDEN_LIBDEPS], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +# Dependencies to place before and after the object being linked: +_LT_TAGVAR(predep_objects, $1)= +_LT_TAGVAR(postdep_objects, $1)= +_LT_TAGVAR(predeps, $1)= +_LT_TAGVAR(postdeps, $1)= +_LT_TAGVAR(compiler_lib_search_path, $1)= +dnl we can't use the lt_simple_compile_test_code here, +dnl because it contains code intended for an executable, +dnl not a library.  It's possible we should let each +dnl tag define a new lt_????_link_test_code variable, +dnl but it's only used here... +m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF +int a; +void foo (void) { a = 0; } +_LT_EOF +], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF +class Foo +{ +public: +  Foo (void) { a = 0; } +private: +  int a; +}; +_LT_EOF +], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF +      subroutine foo +      implicit none +      integer*4 a +      a=0 +      return +      end +_LT_EOF +], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF +      subroutine foo +      implicit none +      integer a +      a=0 +      return +      end +_LT_EOF +], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF +public class foo { +  private int a; +  public void bar (void) { +    a = 0; +  } +}; +_LT_EOF +]) +dnl Parse the compiler output and extract the necessary +dnl objects, libraries and library flags. +if AC_TRY_EVAL(ac_compile); then +  # Parse the compiler output and extract the necessary +  # objects, libraries and library flags. -# old names -AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL]) -AC_DEFUN([AM_ENABLE_SHARED],  [AC_ENABLE_SHARED($@)]) -AC_DEFUN([AM_ENABLE_STATIC],  [AC_ENABLE_STATIC($@)]) -AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -AC_DEFUN([AM_PROG_LD],        [AC_PROG_LD]) -AC_DEFUN([AM_PROG_NM],        [AC_PROG_NM]) +  # Sentinel used to keep track of whether or not we are before +  # the conftest object file. +  pre_test_object_deps_done=no -# This is just to silence aclocal about the macro not being used -ifelse([AC_DISABLE_FAST_INSTALL]) +  for p in `eval "$output_verbose_link_cmd"`; do +    case $p in + +    -L* | -R* | -l*) +       # Some compilers place space between "-{L,R}" and the path. +       # Remove the space. +       if test $p = "-L" || +          test $p = "-R"; then +	 prev=$p +	 continue +       else +	 prev= +       fi -AC_DEFUN([LT_AC_PROG_GCJ], -[AC_CHECK_TOOL(GCJ, gcj, no) -  test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" -  AC_SUBST(GCJFLAGS) +       if test "$pre_test_object_deps_done" = no; then +	 case $p in +	 -L* | -R*) +	   # Internal compiler library paths should come after those +	   # provided the user.  The postdeps already come after the +	   # user supplied libs so there is no need to process them. +	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then +	     _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" +	   else +	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" +	   fi +	   ;; +	 # The "-l" case would never come before the object being +	 # linked, so don't bother handling this case. +	 esac +       else +	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then +	   _LT_TAGVAR(postdeps, $1)="${prev}${p}" +	 else +	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" +	 fi +       fi +       ;; + +    *.$objext) +       # This assumes that the test object file only shows up +       # once in the compiler output. +       if test "$p" = "conftest.$objext"; then +	 pre_test_object_deps_done=yes +	 continue +       fi + +       if test "$pre_test_object_deps_done" = no; then +	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then +	   _LT_TAGVAR(predep_objects, $1)="$p" +	 else +	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" +	 fi +       else +	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then +	   _LT_TAGVAR(postdep_objects, $1)="$p" +	 else +	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" +	 fi +       fi +       ;; + +    *) ;; # Ignore the rest. + +    esac +  done + +  # Clean up. +  rm -f a.out a.exe +else +  echo "libtool.m4: error: problem compiling $1 test program" +fi + +$RM -f confest.$objext + +# PORTME: override above test on systems where it is broken +m4_if([$1], [CXX], +[case $host_os in +interix[[3-9]]*) +  # Interix 3.5 installs completely hosed .la files for C++, so rather than +  # hack all around it, let's just trust "g++" to DTRT. +  _LT_TAGVAR(predep_objects,$1)= +  _LT_TAGVAR(postdep_objects,$1)= +  _LT_TAGVAR(postdeps,$1)= +  ;; + +linux*) +  case `$CC -V 2>&1 | sed 5q` in +  *Sun\ C*) +    # Sun C++ 5.9 + +    # The more standards-conforming stlport4 library is +    # incompatible with the Cstd library. Avoid specifying +    # it if it's in CXXFLAGS. Ignore libCrun as +    # -library=stlport4 depends on it. +    case " $CXX $CXXFLAGS " in +    *" -library=stlport4 "*) +      solaris_use_stlport4=yes +      ;; +    esac + +    if test "$solaris_use_stlport4" != yes; then +      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' +    fi +    ;; +  esac +  ;; + +solaris*) +  case $cc_basename in +  CC*) +    # The more standards-conforming stlport4 library is +    # incompatible with the Cstd library. Avoid specifying +    # it if it's in CXXFLAGS. Ignore libCrun as +    # -library=stlport4 depends on it. +    case " $CXX $CXXFLAGS " in +    *" -library=stlport4 "*) +      solaris_use_stlport4=yes +      ;; +    esac + +    # Adding this requires a known-good setup of shared libraries for +    # Sun compiler versions before 5.6, else PIC objects from an old +    # archive will be linked into the output, leading to subtle bugs. +    if test "$solaris_use_stlport4" != yes; then +      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' +    fi +    ;; +  esac +  ;; +esac +]) + +case " $_LT_TAGVAR(postdeps, $1) " in +*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; +esac + _LT_TAGVAR(compiler_lib_search_dirs, $1)= +if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then + _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` +fi +_LT_TAGDECL([], [compiler_lib_search_dirs], [1], +    [The directories searched by this compiler when creating a shared library]) +_LT_TAGDECL([], [predep_objects], [1], +    [Dependencies to place before and after the objects being linked to +    create a shared library]) +_LT_TAGDECL([], [postdep_objects], [1]) +_LT_TAGDECL([], [predeps], [1]) +_LT_TAGDECL([], [postdeps], [1]) +_LT_TAGDECL([], [compiler_lib_search_path], [1], +    [The library search path used internally by the compiler when linking +    a shared library]) +])# _LT_SYS_HIDDEN_LIBDEPS + + +# _LT_PROG_F77 +# ------------ +# Since AC_PROG_F77 is broken, in that it returns the empty string +# if there is no fortran compiler, we have our own version here. +m4_defun([_LT_PROG_F77], +[ +pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes]) +AC_PROG_F77 +if test -z "$F77" || test "X$F77" = "Xno"; then +  _lt_disable_F77=yes +fi +popdef([AC_MSG_ERROR]) +])# _LT_PROG_F77 + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([_LT_PROG_F77], []) + + +# _LT_LANG_F77_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for a Fortran 77 compiler are +# suitably defined.  These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_F77_CONFIG], +[AC_REQUIRE([_LT_PROG_F77])dnl +AC_LANG_PUSH(Fortran 77) + +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for f77 test sources. +ac_ext=f + +# Object file extension for compiled f77 test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the F77 compiler isn't working.  Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_disable_F77" != yes; then +  # Code to be used in simple compile tests +  lt_simple_compile_test_code="\ +      subroutine t +      return +      end +" + +  # Code to be used in simple link tests +  lt_simple_link_test_code="\ +      program t +      end +" + +  # ltmain only uses $CC for tagged configurations so make sure $CC is set. +  _LT_TAG_COMPILER + +  # save warnings/boilerplate of simple test code +  _LT_COMPILER_BOILERPLATE +  _LT_LINKER_BOILERPLATE + +  # Allow CC to be a program name with arguments. +  lt_save_CC="$CC" +  lt_save_GCC=$GCC +  CC=${F77-"f77"} +  compiler=$CC +  _LT_TAGVAR(compiler, $1)=$CC +  _LT_CC_BASENAME([$compiler]) +  GCC=$G77 +  if test -n "$compiler"; then +    AC_MSG_CHECKING([if libtool supports shared libraries]) +    AC_MSG_RESULT([$can_build_shared]) + +    AC_MSG_CHECKING([whether to build shared libraries]) +    test "$can_build_shared" = "no" && enable_shared=no + +    # On AIX, shared libraries and static libraries use the same namespace, and +    # are all built from PIC. +    case $host_os in +      aix3*) +        test "$enable_shared" = yes && enable_static=no +        if test -n "$RANLIB"; then +          archive_cmds="$archive_cmds~\$RANLIB \$lib" +          postinstall_cmds='$RANLIB $lib' +        fi +        ;; +      aix[[4-9]]*) +	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then +	  test "$enable_shared" = yes && enable_static=no +	fi +        ;; +    esac +    AC_MSG_RESULT([$enable_shared]) + +    AC_MSG_CHECKING([whether to build static libraries]) +    # Make sure either enable_shared or enable_static is yes. +    test "$enable_shared" = yes || enable_static=yes +    AC_MSG_RESULT([$enable_static]) + +    _LT_TAGVAR(GCC, $1)="$G77" +    _LT_TAGVAR(LD, $1)="$LD" + +    ## CAVEAT EMPTOR: +    ## There is no encapsulation within the following macros, do not change +    ## the running order or otherwise move them around unless you know exactly +    ## what you are doing... +    _LT_COMPILER_PIC($1) +    _LT_COMPILER_C_O($1) +    _LT_COMPILER_FILE_LOCKS($1) +    _LT_LINKER_SHLIBS($1) +    _LT_SYS_DYNAMIC_LINKER($1) +    _LT_LINKER_HARDCODE_LIBPATH($1) + +    _LT_CONFIG($1) +  fi # test -n "$compiler" + +  GCC=$lt_save_GCC +  CC="$lt_save_CC" +fi # test "$_lt_disable_F77" != yes + +AC_LANG_POP +])# _LT_LANG_F77_CONFIG + + +# _LT_PROG_FC +# ----------- +# Since AC_PROG_FC is broken, in that it returns the empty string +# if there is no fortran compiler, we have our own version here. +m4_defun([_LT_PROG_FC], +[ +pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes]) +AC_PROG_FC +if test -z "$FC" || test "X$FC" = "Xno"; then +  _lt_disable_FC=yes +fi +popdef([AC_MSG_ERROR]) +])# _LT_PROG_FC + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([_LT_PROG_FC], []) + + +# _LT_LANG_FC_CONFIG([TAG]) +# ------------------------- +# Ensure that the configuration variables for a Fortran compiler are +# suitably defined.  These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_FC_CONFIG], +[AC_REQUIRE([_LT_PROG_FC])dnl +AC_LANG_PUSH(Fortran) + +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for fc test sources. +ac_ext=${ac_fc_srcext-f} + +# Object file extension for compiled fc test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the FC compiler isn't working.  Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test "$_lt_disable_FC" != yes; then +  # Code to be used in simple compile tests +  lt_simple_compile_test_code="\ +      subroutine t +      return +      end +" + +  # Code to be used in simple link tests +  lt_simple_link_test_code="\ +      program t +      end +" + +  # ltmain only uses $CC for tagged configurations so make sure $CC is set. +  _LT_TAG_COMPILER + +  # save warnings/boilerplate of simple test code +  _LT_COMPILER_BOILERPLATE +  _LT_LINKER_BOILERPLATE + +  # Allow CC to be a program name with arguments. +  lt_save_CC="$CC" +  lt_save_GCC=$GCC +  CC=${FC-"f95"} +  compiler=$CC +  GCC=$ac_cv_fc_compiler_gnu + +  _LT_TAGVAR(compiler, $1)=$CC +  _LT_CC_BASENAME([$compiler]) + +  if test -n "$compiler"; then +    AC_MSG_CHECKING([if libtool supports shared libraries]) +    AC_MSG_RESULT([$can_build_shared]) + +    AC_MSG_CHECKING([whether to build shared libraries]) +    test "$can_build_shared" = "no" && enable_shared=no + +    # On AIX, shared libraries and static libraries use the same namespace, and +    # are all built from PIC. +    case $host_os in +      aix3*) +        test "$enable_shared" = yes && enable_static=no +        if test -n "$RANLIB"; then +          archive_cmds="$archive_cmds~\$RANLIB \$lib" +          postinstall_cmds='$RANLIB $lib' +        fi +        ;; +      aix[[4-9]]*) +	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then +	  test "$enable_shared" = yes && enable_static=no +	fi +        ;; +    esac +    AC_MSG_RESULT([$enable_shared]) + +    AC_MSG_CHECKING([whether to build static libraries]) +    # Make sure either enable_shared or enable_static is yes. +    test "$enable_shared" = yes || enable_static=yes +    AC_MSG_RESULT([$enable_static]) + +    _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" +    _LT_TAGVAR(LD, $1)="$LD" + +    ## CAVEAT EMPTOR: +    ## There is no encapsulation within the following macros, do not change +    ## the running order or otherwise move them around unless you know exactly +    ## what you are doing... +    _LT_SYS_HIDDEN_LIBDEPS($1) +    _LT_COMPILER_PIC($1) +    _LT_COMPILER_C_O($1) +    _LT_COMPILER_FILE_LOCKS($1) +    _LT_LINKER_SHLIBS($1) +    _LT_SYS_DYNAMIC_LINKER($1) +    _LT_LINKER_HARDCODE_LIBPATH($1) + +    _LT_CONFIG($1) +  fi # test -n "$compiler" + +  GCC=$lt_save_GCC +  CC="$lt_save_CC" +fi # test "$_lt_disable_FC" != yes + +AC_LANG_POP +])# _LT_LANG_FC_CONFIG + + +# _LT_LANG_GCJ_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for the GNU Java Compiler compiler +# are suitably defined.  These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_GCJ_CONFIG], +[AC_REQUIRE([LT_PROG_GCJ])dnl +AC_LANG_SAVE + +# Source file extension for Java test sources. +ac_ext=java + +# Object file extension for compiled Java test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="class foo {}" + +# Code to be used in simple link tests +lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC="$CC" +lt_save_GCC=$GCC +GCC=yes +CC=${GCJ-"gcj"} +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_TAGVAR(LD, $1)="$LD" +_LT_CC_BASENAME([$compiler]) + +# GCJ did not exist at the time GCC didn't implicitly link libc in. +_LT_TAGVAR(archive_cmds_need_lc, $1)=no + +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +if test -n "$compiler"; then +  _LT_COMPILER_NO_RTTI($1) +  _LT_COMPILER_PIC($1) +  _LT_COMPILER_C_O($1) +  _LT_COMPILER_FILE_LOCKS($1) +  _LT_LINKER_SHLIBS($1) +  _LT_LINKER_HARDCODE_LIBPATH($1) + +  _LT_CONFIG($1) +fi + +AC_LANG_RESTORE + +GCC=$lt_save_GCC +CC="$lt_save_CC" +])# _LT_LANG_GCJ_CONFIG + + +# _LT_LANG_RC_CONFIG([TAG]) +# ------------------------- +# Ensure that the configuration variables for the Windows resource compiler +# are suitably defined.  These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to `libtool'. +m4_defun([_LT_LANG_RC_CONFIG], +[AC_REQUIRE([LT_PROG_RC])dnl +AC_LANG_SAVE + +# Source file extension for RC test sources. +ac_ext=rc + +# Object file extension for compiled RC test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' + +# Code to be used in simple link tests +lt_simple_link_test_code="$lt_simple_compile_test_code" + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC="$CC" +lt_save_GCC=$GCC +GCC= +CC=${RC-"windres"} +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) +_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + +if test -n "$compiler"; then +  : +  _LT_CONFIG($1) +fi + +GCC=$lt_save_GCC +AC_LANG_RESTORE +CC="$lt_save_CC" +])# _LT_LANG_RC_CONFIG + + +# LT_PROG_GCJ +# ----------- +AC_DEFUN([LT_PROG_GCJ], +[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], +  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], +    [AC_CHECK_TOOL(GCJ, gcj,) +      test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" +      AC_SUBST(GCJFLAGS)])])[]dnl +]) + +# Old name: +AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_GCJ], []) + + +# LT_PROG_RC +# ---------- +AC_DEFUN([LT_PROG_RC], +[AC_CHECK_TOOL(RC, windres,) +]) + +# Old name: +AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_RC], []) + + +# _LT_DECL_EGREP +# -------------- +# If we don't have a new enough Autoconf to choose the best grep +# available, choose the one first in the user's PATH. +m4_defun([_LT_DECL_EGREP], +[AC_REQUIRE([AC_PROG_EGREP])dnl +AC_REQUIRE([AC_PROG_FGREP])dnl +test -z "$GREP" && GREP=grep +_LT_DECL([], [GREP], [1], [A grep program that handles long lines]) +_LT_DECL([], [EGREP], [1], [An ERE matcher]) +_LT_DECL([], [FGREP], [1], [A literal string matcher]) +dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too +AC_SUBST([GREP])  ]) -AC_DEFUN([LT_AC_PROG_RC], -[AC_CHECK_TOOL(RC, windres, no) + +# _LT_DECL_OBJDUMP +# -------------- +# If we don't have a new enough Autoconf to choose the best objdump +# available, choose the one first in the user's PATH. +m4_defun([_LT_DECL_OBJDUMP], +[AC_CHECK_TOOL(OBJDUMP, objdump, false) +test -z "$OBJDUMP" && OBJDUMP=objdump +_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) +AC_SUBST([OBJDUMP])  ]) + +# _LT_DECL_SED +# ------------ +# Check for a fully-functional sed program, that truncates +# as few characters as possible.  Prefer GNU sed if found. +m4_defun([_LT_DECL_SED], +[AC_PROG_SED +test -z "$SED" && SED=sed +Xsed="$SED -e 1s/^X//" +_LT_DECL([], [SED], [1], [A sed program that does not truncate output]) +_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], +    [Sed that helps us avoid accidentally triggering echo(1) options like -n]) +])# _LT_DECL_SED + +m4_ifndef([AC_PROG_SED], [  ############################################################  # NOTE: This macro has been submitted for inclusion into   #  #  GNU Autoconf as AC_PROG_SED.  When it is available in   #  #  a released version of Autoconf we should remove this    #  #  macro and use it instead.                               #  ############################################################ -# LT_AC_PROG_SED -# -------------- -# Check for a fully-functional sed program, that truncates -# as few characters as possible.  Prefer GNU sed if found. -AC_DEFUN([LT_AC_PROG_SED], + +m4_defun([AC_PROG_SED],  [AC_MSG_CHECKING([for a sed that does not truncate output])  AC_CACHE_VAL(lt_cv_path_SED,  [# Loop through the user's path and test for sed and gsed. @@ -5903,12 +7076,13 @@ do      done    done  done +IFS=$as_save_IFS  lt_ac_max=0  lt_ac_count=0  # Add /usr/xpg4/bin/sed as it is typically found on Solaris  # along with /bin/sed that truncates output.  for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do -  test ! -f $lt_ac_sed && break +  test ! -f $lt_ac_sed && continue    cat /dev/null > conftest.in    lt_ac_count=0    echo $ECHO_N "0123456789$ECHO_C" >conftest.in @@ -5933,7 +7107,270 @@ for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do      fi    done  done -SED=$lt_cv_path_SED  ]) +SED=$lt_cv_path_SED +AC_SUBST([SED])  AC_MSG_RESULT([$SED]) +])#AC_PROG_SED +])#m4_ifndef + +# Old name: +AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_SED], []) + + +# _LT_CHECK_SHELL_FEATURES +# ------------------------ +# Find out whether the shell is Bourne or XSI compatible, +# or has some other useful features. +m4_defun([_LT_CHECK_SHELL_FEATURES], +[AC_MSG_CHECKING([whether the shell understands some XSI constructs]) +# Try some XSI features +xsi_shell=no +( _lt_dummy="a/b/c" +  test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \ +      = c,a/b,, \ +    && eval 'test $(( 1 + 1 )) -eq 2 \ +    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ +  && xsi_shell=yes +AC_MSG_RESULT([$xsi_shell]) +_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) + +AC_MSG_CHECKING([whether the shell understands "+="]) +lt_shell_append=no +( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ +    >/dev/null 2>&1 \ +  && lt_shell_append=yes +AC_MSG_RESULT([$lt_shell_append]) +_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) + +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then +  lt_unset=unset +else +  lt_unset=false +fi +_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl + +# test EBCDIC or ASCII +case `echo X|tr X '\101'` in + A) # ASCII based system +    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr +  lt_SP2NL='tr \040 \012' +  lt_NL2SP='tr \015\012 \040\040' +  ;; + *) # EBCDIC based system +  lt_SP2NL='tr \100 \n' +  lt_NL2SP='tr \r\n \100\100' +  ;; +esac +_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl +_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl +])# _LT_CHECK_SHELL_FEATURES + + +# _LT_PROG_XSI_SHELLFNS +# --------------------- +# Bourne and XSI compatible variants of some useful shell functions. +m4_defun([_LT_PROG_XSI_SHELLFNS], +[case $xsi_shell in +  yes) +    cat << \_LT_EOF >> "$cfgfile" + +# func_dirname file append nondir_replacement +# Compute the dirname of FILE.  If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +func_dirname () +{ +  case ${1} in +    */*) func_dirname_result="${1%/*}${2}" ;; +    *  ) func_dirname_result="${3}" ;; +  esac +} + +# func_basename file +func_basename () +{ +  func_basename_result="${1##*/}" +} + +# func_dirname_and_basename file append nondir_replacement +# perform func_basename and func_dirname in a single function +# call: +#   dirname:  Compute the dirname of FILE.  If nonempty, +#             add APPEND to the result, otherwise set result +#             to NONDIR_REPLACEMENT. +#             value returned in "$func_dirname_result" +#   basename: Compute filename of FILE. +#             value retuned in "$func_basename_result" +# Implementation must be kept synchronized with func_dirname +# and func_basename. For efficiency, we do not delegate to +# those functions but instead duplicate the functionality here. +func_dirname_and_basename () +{ +  case ${1} in +    */*) func_dirname_result="${1%/*}${2}" ;; +    *  ) func_dirname_result="${3}" ;; +  esac +  func_basename_result="${1##*/}" +} + +# func_stripname prefix suffix name +# strip PREFIX and SUFFIX off of NAME. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +func_stripname () +{ +  # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are +  # positional parameters, so assign one to ordinary parameter first. +  func_stripname_result=${3} +  func_stripname_result=${func_stripname_result#"${1}"} +  func_stripname_result=${func_stripname_result%"${2}"} +} + +# func_opt_split +func_opt_split () +{ +  func_opt_split_opt=${1%%=*} +  func_opt_split_arg=${1#*=} +} + +# func_lo2o object +func_lo2o () +{ +  case ${1} in +    *.lo) func_lo2o_result=${1%.lo}.${objext} ;; +    *)    func_lo2o_result=${1} ;; +  esac +} + +# func_xform libobj-or-source +func_xform () +{ +  func_xform_result=${1%.*}.lo +} + +# func_arith arithmetic-term... +func_arith () +{ +  func_arith_result=$(( $[*] )) +} + +# func_len string +# STRING may not start with a hyphen. +func_len () +{ +  func_len_result=${#1} +} + +_LT_EOF +    ;; +  *) # Bourne compatible functions. +    cat << \_LT_EOF >> "$cfgfile" + +# func_dirname file append nondir_replacement +# Compute the dirname of FILE.  If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +func_dirname () +{ +  # Extract subdirectory from the argument. +  func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` +  if test "X$func_dirname_result" = "X${1}"; then +    func_dirname_result="${3}" +  else +    func_dirname_result="$func_dirname_result${2}" +  fi +} + +# func_basename file +func_basename () +{ +  func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` +} + +dnl func_dirname_and_basename +dnl A portable version of this function is already defined in general.m4sh +dnl so there is no need for it here. + +# func_stripname prefix suffix name +# strip PREFIX and SUFFIX off of NAME. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +# func_strip_suffix prefix name +func_stripname () +{ +  case ${2} in +    .*) func_stripname_result=`$ECHO "X${3}" \ +           | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; +    *)  func_stripname_result=`$ECHO "X${3}" \ +           | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; +  esac +} + +# sed scripts: +my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q' +my_sed_long_arg='1s/^-[[^=]]*=//' + +# func_opt_split +func_opt_split () +{ +  func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` +  func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` +} + +# func_lo2o object +func_lo2o () +{ +  func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` +} + +# func_xform libobj-or-source +func_xform () +{ +  func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'` +} + +# func_arith arithmetic-term... +func_arith () +{ +  func_arith_result=`expr "$[@]"` +} + +# func_len string +# STRING may not start with a hyphen. +func_len () +{ +  func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len` +} + +_LT_EOF +esac + +case $lt_shell_append in +  yes) +    cat << \_LT_EOF >> "$cfgfile" + +# func_append var value +# Append VALUE to the end of shell variable VAR. +func_append () +{ +  eval "$[1]+=\$[2]" +} +_LT_EOF +    ;; +  *) +    cat << \_LT_EOF >> "$cfgfile" + +# func_append var value +# Append VALUE to the end of shell variable VAR. +func_append () +{ +  eval "$[1]=\$$[1]\$[2]" +} + +_LT_EOF +    ;; +  esac  ]) diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4 new file mode 100644 index 00000000..34151a3b --- /dev/null +++ b/m4/ltoptions.m4 @@ -0,0 +1,368 @@ +# Helper functions for option handling.                    -*- Autoconf -*- +# +#   Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. +#   Written by Gary V. Vaughan, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 6 ltoptions.m4 + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) + + +# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) +# ------------------------------------------ +m4_define([_LT_MANGLE_OPTION], +[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) + + +# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) +# --------------------------------------- +# Set option OPTION-NAME for macro MACRO-NAME, and if there is a +# matching handler defined, dispatch to it.  Other OPTION-NAMEs are +# saved as a flag. +m4_define([_LT_SET_OPTION], +[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl +m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), +        _LT_MANGLE_DEFUN([$1], [$2]), +    [m4_warning([Unknown $1 option `$2'])])[]dnl +]) + + +# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) +# ------------------------------------------------------------ +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. +m4_define([_LT_IF_OPTION], +[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) + + +# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) +# ------------------------------------------------------- +# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME +# are set. +m4_define([_LT_UNLESS_OPTIONS], +[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), +	    [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), +		      [m4_define([$0_found])])])[]dnl +m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 +])[]dnl +]) + + +# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) +# ---------------------------------------- +# OPTION-LIST is a space-separated list of Libtool options associated +# with MACRO-NAME.  If any OPTION has a matching handler declared with +# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about +# the unknown option and exit. +m4_defun([_LT_SET_OPTIONS], +[# Set options +m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), +    [_LT_SET_OPTION([$1], _LT_Option)]) + +m4_if([$1],[LT_INIT],[ +  dnl +  dnl Simply set some default values (i.e off) if boolean options were not +  dnl specified: +  _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no +  ]) +  _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no +  ]) +  dnl +  dnl If no reference was made to various pairs of opposing options, then +  dnl we run the default mode handler for the pair.  For example, if neither +  dnl `shared' nor `disable-shared' was passed, we enable building of shared +  dnl archives by default: +  _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) +  _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) +  _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) +  _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], +  		   [_LT_ENABLE_FAST_INSTALL]) +  ]) +])# _LT_SET_OPTIONS + + +## --------------------------------- ## +## Macros to handle LT_INIT options. ## +## --------------------------------- ## + +# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) +# ----------------------------------------- +m4_define([_LT_MANGLE_DEFUN], +[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) + + +# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) +# ----------------------------------------------- +m4_define([LT_OPTION_DEFINE], +[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl +])# LT_OPTION_DEFINE + + +# dlopen +# ------ +LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes +]) + +AU_DEFUN([AC_LIBTOOL_DLOPEN], +[_LT_SET_OPTION([LT_INIT], [dlopen]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `dlopen' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) + + +# win32-dll +# --------- +# Declare package support for building win32 dll's. +LT_OPTION_DEFINE([LT_INIT], [win32-dll], +[enable_win32_dll=yes + +case $host in +*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) +  AC_CHECK_TOOL(AS, as, false) +  AC_CHECK_TOOL(DLLTOOL, dlltool, false) +  AC_CHECK_TOOL(OBJDUMP, objdump, false) +  ;; +esac + +test -z "$AS" && AS=as +_LT_DECL([], [AS],      [0], [Assembler program])dnl + +test -z "$DLLTOOL" && DLLTOOL=dlltool +_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl + +test -z "$OBJDUMP" && OBJDUMP=objdump +_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl +])# win32-dll + +AU_DEFUN([AC_LIBTOOL_WIN32_DLL], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +_LT_SET_OPTION([LT_INIT], [win32-dll]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `win32-dll' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) + + +# _LT_ENABLE_SHARED([DEFAULT]) +# ---------------------------- +# implement the --enable-shared flag, and supports the `shared' and +# `disable-shared' LT_INIT options. +# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_SHARED], +[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([shared], +    [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], +	[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], +    [p=${PACKAGE-default} +    case $enableval in +    yes) enable_shared=yes ;; +    no) enable_shared=no ;; +    *) +      enable_shared=no +      # Look at the argument we got.  We use all the common list separators. +      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," +      for pkg in $enableval; do +	IFS="$lt_save_ifs" +	if test "X$pkg" = "X$p"; then +	  enable_shared=yes +	fi +      done +      IFS="$lt_save_ifs" +      ;; +    esac], +    [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) + +    _LT_DECL([build_libtool_libs], [enable_shared], [0], +	[Whether or not to build shared libraries]) +])# _LT_ENABLE_SHARED + +LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) + +# Old names: +AC_DEFUN([AC_ENABLE_SHARED], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) +]) + +AC_DEFUN([AC_DISABLE_SHARED], +[_LT_SET_OPTION([LT_INIT], [disable-shared]) +]) + +AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_ENABLE_SHARED], []) +dnl AC_DEFUN([AM_DISABLE_SHARED], []) + + + +# _LT_ENABLE_STATIC([DEFAULT]) +# ---------------------------- +# implement the --enable-static flag, and support the `static' and +# `disable-static' LT_INIT options. +# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_STATIC], +[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([static], +    [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], +	[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], +    [p=${PACKAGE-default} +    case $enableval in +    yes) enable_static=yes ;; +    no) enable_static=no ;; +    *) +     enable_static=no +      # Look at the argument we got.  We use all the common list separators. +      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," +      for pkg in $enableval; do +	IFS="$lt_save_ifs" +	if test "X$pkg" = "X$p"; then +	  enable_static=yes +	fi +      done +      IFS="$lt_save_ifs" +      ;; +    esac], +    [enable_static=]_LT_ENABLE_STATIC_DEFAULT) + +    _LT_DECL([build_old_libs], [enable_static], [0], +	[Whether or not to build static libraries]) +])# _LT_ENABLE_STATIC + +LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) + +# Old names: +AC_DEFUN([AC_ENABLE_STATIC], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) +]) + +AC_DEFUN([AC_DISABLE_STATIC], +[_LT_SET_OPTION([LT_INIT], [disable-static]) +]) + +AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_ENABLE_STATIC], []) +dnl AC_DEFUN([AM_DISABLE_STATIC], []) + + + +# _LT_ENABLE_FAST_INSTALL([DEFAULT]) +# ---------------------------------- +# implement the --enable-fast-install flag, and support the `fast-install' +# and `disable-fast-install' LT_INIT options. +# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'. +m4_define([_LT_ENABLE_FAST_INSTALL], +[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([fast-install], +    [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], +    [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], +    [p=${PACKAGE-default} +    case $enableval in +    yes) enable_fast_install=yes ;; +    no) enable_fast_install=no ;; +    *) +      enable_fast_install=no +      # Look at the argument we got.  We use all the common list separators. +      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," +      for pkg in $enableval; do +	IFS="$lt_save_ifs" +	if test "X$pkg" = "X$p"; then +	  enable_fast_install=yes +	fi +      done +      IFS="$lt_save_ifs" +      ;; +    esac], +    [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) + +_LT_DECL([fast_install], [enable_fast_install], [0], +	 [Whether or not to optimize for fast installation])dnl +])# _LT_ENABLE_FAST_INSTALL + +LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) + +# Old names: +AU_DEFUN([AC_ENABLE_FAST_INSTALL], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you put +the `fast-install' option into LT_INIT's first parameter.]) +]) + +AU_DEFUN([AC_DISABLE_FAST_INSTALL], +[_LT_SET_OPTION([LT_INIT], [disable-fast-install]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you put +the `disable-fast-install' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) +dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) + + +# _LT_WITH_PIC([MODE]) +# -------------------- +# implement the --with-pic flag, and support the `pic-only' and `no-pic' +# LT_INIT options. +# MODE is either `yes' or `no'.  If omitted, it defaults to `both'. +m4_define([_LT_WITH_PIC], +[AC_ARG_WITH([pic], +    [AS_HELP_STRING([--with-pic], +	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])], +    [pic_mode="$withval"], +    [pic_mode=default]) + +test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) + +_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl +])# _LT_WITH_PIC + +LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) +LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) + +# Old name: +AU_DEFUN([AC_LIBTOOL_PICMODE], +[_LT_SET_OPTION([LT_INIT], [pic-only]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the `pic-only' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) + +## ----------------- ## +## LTDL_INIT Options ## +## ----------------- ## + +m4_define([_LTDL_MODE], []) +LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], +		 [m4_define([_LTDL_MODE], [nonrecursive])]) +LT_OPTION_DEFINE([LTDL_INIT], [recursive], +		 [m4_define([_LTDL_MODE], [recursive])]) +LT_OPTION_DEFINE([LTDL_INIT], [subproject], +		 [m4_define([_LTDL_MODE], [subproject])]) + +m4_define([_LTDL_TYPE], []) +LT_OPTION_DEFINE([LTDL_INIT], [installable], +		 [m4_define([_LTDL_TYPE], [installable])]) +LT_OPTION_DEFINE([LTDL_INIT], [convenience], +		 [m4_define([_LTDL_TYPE], [convenience])]) diff --git a/m4/ltsugar.m4 b/m4/ltsugar.m4 new file mode 100644 index 00000000..9000a057 --- /dev/null +++ b/m4/ltsugar.m4 @@ -0,0 +1,123 @@ +# ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*- +# +# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. +# Written by Gary V. Vaughan, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 6 ltsugar.m4 + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) + + +# lt_join(SEP, ARG1, [ARG2...]) +# ----------------------------- +# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their +# associated separator. +# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier +# versions in m4sugar had bugs. +m4_define([lt_join], +[m4_if([$#], [1], [], +       [$#], [2], [[$2]], +       [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) +m4_define([_lt_join], +[m4_if([$#$2], [2], [], +       [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) + + +# lt_car(LIST) +# lt_cdr(LIST) +# ------------ +# Manipulate m4 lists. +# These macros are necessary as long as will still need to support +# Autoconf-2.59 which quotes differently. +m4_define([lt_car], [[$1]]) +m4_define([lt_cdr], +[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], +       [$#], 1, [], +       [m4_dquote(m4_shift($@))])]) +m4_define([lt_unquote], $1) + + +# lt_append(MACRO-NAME, STRING, [SEPARATOR]) +# ------------------------------------------ +# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. +# Note that neither SEPARATOR nor STRING are expanded; they are appended +# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). +# No SEPARATOR is output if MACRO-NAME was previously undefined (different +# than defined and empty). +# +# This macro is needed until we can rely on Autoconf 2.62, since earlier +# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. +m4_define([lt_append], +[m4_define([$1], +	   m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) + + + +# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) +# ---------------------------------------------------------- +# Produce a SEP delimited list of all paired combinations of elements of +# PREFIX-LIST with SUFFIX1 through SUFFIXn.  Each element of the list +# has the form PREFIXmINFIXSUFFIXn. +# Needed until we can rely on m4_combine added in Autoconf 2.62. +m4_define([lt_combine], +[m4_if(m4_eval([$# > 3]), [1], +       [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl +[[m4_foreach([_Lt_prefix], [$2], +	     [m4_foreach([_Lt_suffix], +		]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, +	[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) + + +# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) +# ----------------------------------------------------------------------- +# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited +# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. +m4_define([lt_if_append_uniq], +[m4_ifdef([$1], +	  [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], +		 [lt_append([$1], [$2], [$3])$4], +		 [$5])], +	  [lt_append([$1], [$2], [$3])$4])]) + + +# lt_dict_add(DICT, KEY, VALUE) +# ----------------------------- +m4_define([lt_dict_add], +[m4_define([$1($2)], [$3])]) + + +# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) +# -------------------------------------------- +m4_define([lt_dict_add_subkey], +[m4_define([$1($2:$3)], [$4])]) + + +# lt_dict_fetch(DICT, KEY, [SUBKEY]) +# ---------------------------------- +m4_define([lt_dict_fetch], +[m4_ifval([$3], +	m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), +    m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) + + +# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) +# ----------------------------------------------------------------- +m4_define([lt_if_dict_fetch], +[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], +	[$5], +    [$6])]) + + +# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) +# -------------------------------------------------------------- +m4_define([lt_dict_filter], +[m4_if([$5], [], [], +  [lt_join(m4_quote(m4_default([$4], [[, ]])), +           lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), +		      [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl +]) diff --git a/m4/ltversion.m4 b/m4/ltversion.m4 new file mode 100644 index 00000000..b8e154fe --- /dev/null +++ b/m4/ltversion.m4 @@ -0,0 +1,23 @@ +# ltversion.m4 -- version numbers			-*- Autoconf -*- +# +#   Copyright (C) 2004 Free Software Foundation, Inc. +#   Written by Scott James Remnant, 2004 +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# Generated from ltversion.in. + +# serial 3012 ltversion.m4 +# This file is part of GNU Libtool + +m4_define([LT_PACKAGE_VERSION], [2.2.6]) +m4_define([LT_PACKAGE_REVISION], [1.3012]) + +AC_DEFUN([LTVERSION_VERSION], +[macro_version='2.2.6' +macro_revision='1.3012' +_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) +_LT_DECL(, macro_revision, 0) +]) diff --git a/m4/lt~obsolete.m4 b/m4/lt~obsolete.m4 new file mode 100644 index 00000000..637bb206 --- /dev/null +++ b/m4/lt~obsolete.m4 @@ -0,0 +1,92 @@ +# lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*- +# +#   Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. +#   Written by Scott James Remnant, 2004. +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# serial 4 lt~obsolete.m4 + +# These exist entirely to fool aclocal when bootstrapping libtool. +# +# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) +# which have later been changed to m4_define as they aren't part of the +# exported API, or moved to Autoconf or Automake where they belong. +# +# The trouble is, aclocal is a bit thick.  It'll see the old AC_DEFUN +# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us +# using a macro with the same name in our local m4/libtool.m4 it'll +# pull the old libtool.m4 in (it doesn't see our shiny new m4_define +# and doesn't know about Autoconf macros at all.) +# +# So we provide this file, which has a silly filename so it's always +# included after everything else.  This provides aclocal with the +# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything +# because those macros already exist, or will be overwritten later. +# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.  +# +# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. +# Yes, that means every name once taken will need to remain here until +# we give up compatibility with versions before 1.7, at which point +# we need to keep only those names which we still refer to. + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) + +m4_ifndef([AC_LIBTOOL_LINKER_OPTION],	[AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) +m4_ifndef([AC_PROG_EGREP],		[AC_DEFUN([AC_PROG_EGREP])]) +m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH],	[AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) +m4_ifndef([_LT_AC_SHELL_INIT],		[AC_DEFUN([_LT_AC_SHELL_INIT])]) +m4_ifndef([_LT_AC_SYS_LIBPATH_AIX],	[AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) +m4_ifndef([_LT_PROG_LTMAIN],		[AC_DEFUN([_LT_PROG_LTMAIN])]) +m4_ifndef([_LT_AC_TAGVAR],		[AC_DEFUN([_LT_AC_TAGVAR])]) +m4_ifndef([AC_LTDL_ENABLE_INSTALL],	[AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) +m4_ifndef([AC_LTDL_PREOPEN],		[AC_DEFUN([AC_LTDL_PREOPEN])]) +m4_ifndef([_LT_AC_SYS_COMPILER],	[AC_DEFUN([_LT_AC_SYS_COMPILER])]) +m4_ifndef([_LT_AC_LOCK],		[AC_DEFUN([_LT_AC_LOCK])]) +m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE],	[AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) +m4_ifndef([_LT_AC_TRY_DLOPEN_SELF],	[AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) +m4_ifndef([AC_LIBTOOL_PROG_CC_C_O],	[AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) +m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) +m4_ifndef([AC_LIBTOOL_OBJDIR],		[AC_DEFUN([AC_LIBTOOL_OBJDIR])]) +m4_ifndef([AC_LTDL_OBJDIR],		[AC_DEFUN([AC_LTDL_OBJDIR])]) +m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) +m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP],	[AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) +m4_ifndef([AC_PATH_MAGIC],		[AC_DEFUN([AC_PATH_MAGIC])]) +m4_ifndef([AC_PROG_LD_GNU],		[AC_DEFUN([AC_PROG_LD_GNU])]) +m4_ifndef([AC_PROG_LD_RELOAD_FLAG],	[AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) +m4_ifndef([AC_DEPLIBS_CHECK_METHOD],	[AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) +m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) +m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) +m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) +m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS],	[AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) +m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP],	[AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) +m4_ifndef([LT_AC_PROG_EGREP],		[AC_DEFUN([LT_AC_PROG_EGREP])]) +m4_ifndef([LT_AC_PROG_SED],		[AC_DEFUN([LT_AC_PROG_SED])]) +m4_ifndef([_LT_CC_BASENAME],		[AC_DEFUN([_LT_CC_BASENAME])]) +m4_ifndef([_LT_COMPILER_BOILERPLATE],	[AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) +m4_ifndef([_LT_LINKER_BOILERPLATE],	[AC_DEFUN([_LT_LINKER_BOILERPLATE])]) +m4_ifndef([_AC_PROG_LIBTOOL],		[AC_DEFUN([_AC_PROG_LIBTOOL])]) +m4_ifndef([AC_LIBTOOL_SETUP],		[AC_DEFUN([AC_LIBTOOL_SETUP])]) +m4_ifndef([_LT_AC_CHECK_DLFCN],		[AC_DEFUN([_LT_AC_CHECK_DLFCN])]) +m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER],	[AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) +m4_ifndef([_LT_AC_TAGCONFIG],		[AC_DEFUN([_LT_AC_TAGCONFIG])]) +m4_ifndef([AC_DISABLE_FAST_INSTALL],	[AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) +m4_ifndef([_LT_AC_LANG_CXX],		[AC_DEFUN([_LT_AC_LANG_CXX])]) +m4_ifndef([_LT_AC_LANG_F77],		[AC_DEFUN([_LT_AC_LANG_F77])]) +m4_ifndef([_LT_AC_LANG_GCJ],		[AC_DEFUN([_LT_AC_LANG_GCJ])]) +m4_ifndef([AC_LIBTOOL_RC],		[AC_DEFUN([AC_LIBTOOL_RC])]) +m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) +m4_ifndef([_LT_AC_LANG_C_CONFIG],	[AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) +m4_ifndef([_LT_AC_LANG_CXX_CONFIG],	[AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) +m4_ifndef([_LT_AC_LANG_F77_CONFIG],	[AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) +m4_ifndef([_LT_AC_LANG_GCJ_CONFIG],	[AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG],	[AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) +m4_ifndef([_LT_AC_LANG_RC_CONFIG],	[AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) +m4_ifndef([AC_LIBTOOL_CONFIG],		[AC_DEFUN([AC_LIBTOOL_CONFIG])]) +m4_ifndef([_LT_AC_FILE_LTDLL_C],	[AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) diff --git a/src/ChangeLog b/src/ChangeLog index 62671a84..608db50a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,13 @@  2009-12-08  Marcus Brinkmann  <[email protected]> +	* Makefile.am (LTRCCOMPILE): Refactor with ... +	(RCCOMPILE): ... this new macro. +	(SUFFIXES): Add .lo. +	(gpgme_res_ldflag): Removed. +	(gpgme_res): Use libtool object file name here. +	(libgpgme_la_LDFLAGS): Remove gpgme_res_ldflag usage. +	(libgpgme_la_LIBADD): Add gpgme_res. +  	* ath.c (ath_self) [HAVE_W32_SYSTEM]: Fix typo.  2009-12-02  Werner Koch  <[email protected]> diff --git a/src/Makefile.am b/src/Makefile.am index 0879869e..41ab762e 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -161,18 +161,16 @@ if HAVE_W32_SYSTEM  # wrapper process.  libexec_PROGRAMS = gpgme-w32spawn -LTRCCOMPILE = $(LIBTOOL) --mode=compile $(RC) \ -     `echo $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) | \ -     sed -e 's/-I/--include-dir /g;s/-D/--define /g'` +RCCOMPILE = $(RC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ +	$(AM_CPPFLAGS) $(CPPFLAGS) +LTRCCOMPILE = $(LIBTOOL) --mode=compile --tag=RC $(RCCOMPILE) -SUFFIXES: .rc .lo +SUFFIXES = .rc .lo  .rc.lo: -	$(LTRCCOMPILE) -i $< -o $@ +	$(LTRCCOMPILE) -i "$<" -o "$@"  gpgme_res = versioninfo.lo -gpgme_res_ldflag = -Wl,.libs/versioninfo.o -  no_undefined = -no-undefined  export_symbols = -export-symbols $(srcdir)/gpgme.def @@ -186,7 +184,6 @@ gpgme_deps = $(gpgme_res) gpgme.def  else  gpgme_res = -gpgme_res_ldflag =  no_undefined =  export_symbols =  install-def-file: @@ -195,41 +192,42 @@ uninstall-def-file:  gpgme_deps =  endif -libgpgme_la_LDFLAGS = $(gpgme_res_ldflag) $(no_undefined) $(export_symbols) \ +libgpgme_la_LDFLAGS = $(no_undefined) $(export_symbols) \  	$(libgpgme_version_script_cmd) -version-info \  	@LIBGPGME_LT_CURRENT@:@LIBGPGME_LT_REVISION@:@LIBGPGME_LT_AGE@  libgpgme_la_DEPENDENCIES = @LTLIBOBJS@ $(srcdir)/libgpgme.vers $(gpgme_deps) -libgpgme_la_LIBADD = @LIBASSUAN_LIBS@ @LTLIBOBJS@ @GPG_ERROR_LIBS@ +libgpgme_la_LIBADD = $(gpgme_res) @LIBASSUAN_LIBS@ @LTLIBOBJS@ @GPG_ERROR_LIBS@ -libgpgme_pthread_la_LDFLAGS = $(libgpgme_version_script_cmd) -version-info \ +libgpgme_pthread_la_LDFLAGS = $(no_undefined) $(export_symbols) \ +	$(libgpgme_version_script_cmd) -version-info \  	@LIBGPGME_LT_CURRENT@:@LIBGPGME_LT_REVISION@:@LIBGPGME_LT_AGE@  libgpgme_pthread_la_DEPENDENCIES = @LTLIBOBJS@ $(srcdir)/libgpgme.vers -libgpgme_pthread_la_LIBADD = @LIBASSUAN_LIBS@ @LTLIBOBJS@ \ +libgpgme_pthread_la_LIBADD = $(gpgme_res) @LIBASSUAN_LIBS@ @LTLIBOBJS@ \  	-lpthread @GPG_ERROR_LIBS@ -libgpgme_pth_la_LDFLAGS = @PTH_LDFLAGS@ \ +libgpgme_pth_la_LDFLAGS = @PTH_LDFLAGS@ $(no_undefined) $(export_symbols) \  	$(libgpgme_version_script_cmd) -version-info \  	@LIBGPGME_LT_CURRENT@:@LIBGPGME_LT_REVISION@:@LIBGPGME_LT_AGE@  libgpgme_pth_la_DEPENDENCIES = @LTLIBOBJS@ $(srcdir)/libgpgme.vers -libgpgme_pth_la_LIBADD = @LIBASSUAN_LIBS@ @LTLIBOBJS@ \ +libgpgme_pth_la_LIBADD = $(gpgme_res) @LIBASSUAN_LIBS@ @LTLIBOBJS@ \  	@PTH_LIBS@ @GPG_ERROR_LIBS@  if BUILD_W32_GLIB -libgpgme_glib_la_LDFLAGS = $(gpgme_res_ldflag) $(no_undefined) \ +libgpgme_glib_la_LDFLAGS = $(no_undefined) \  	$(export_symbols) $(libgpgme_version_script_cmd) -version-info \  	@LIBGPGME_LT_CURRENT@:@LIBGPGME_LT_REVISION@:@LIBGPGME_LT_AGE@  libgpgme_glib_la_DEPENDENCIES =	@LTLIBOBJS@ \  	$(srcdir)/libgpgme.vers $(gpgme_deps) -libgpgme_glib_la_LIBADD = @LIBASSUAN_LIBS@ @LTLIBOBJS@ \ +libgpgme_glib_la_LIBADD = $(gpgme_res) @LIBASSUAN_LIBS@ @LTLIBOBJS@ \  	@GPG_ERROR_LIBS@ @GLIB_LIBS@  endif  if BUILD_W32_QT -libgpgme_qt_la_LDFLAGS = $(gpgme_res_ldflag) $(no_undefined) \ +libgpgme_qt_la_LDFLAGS = $(no_undefined) \  	$(export_symbols) $(libgpgme_version_script_cmd) -version-info \  	@LIBGPGME_LT_CURRENT@:@LIBGPGME_LT_REVISION@:@LIBGPGME_LT_AGE@  libgpgme_qt_la_DEPENDENCIES = @LTLIBOBJS@ $(srcdir)/libgpgme.vers $(gpgme_deps) -libgpgme_qt_la_LIBADD = @LIBASSUAN_LIBS@ @LTLIBOBJS@ \ +libgpgme_qt_la_LIBADD = $(gpgme_res) @LIBASSUAN_LIBS@ @LTLIBOBJS@ \  	@GPG_ERROR_LIBS@ @QT4_CORE_LIBS@  endif  | 
