kusano 7d535a
kusano 7d535a
# libtool (GNU libtool) 2.4.2
kusano 7d535a
# Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
kusano 7d535a
kusano 7d535a
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
kusano 7d535a
# 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
kusano 7d535a
# This is free software; see the source for copying conditions.  There is NO
kusano 7d535a
# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
kusano 7d535a
kusano 7d535a
# GNU Libtool is free software; you can redistribute it and/or modify
kusano 7d535a
# it under the terms of the GNU General Public License as published by
kusano 7d535a
# the Free Software Foundation; either version 2 of the License, or
kusano 7d535a
# (at your option) any later version.
kusano 7d535a
#
kusano 7d535a
# As a special exception to the GNU General Public License,
kusano 7d535a
# if you distribute this file as part of a program or library that
kusano 7d535a
# is built using GNU Libtool, you may include this file under the
kusano 7d535a
# same distribution terms that you use for the rest of that program.
kusano 7d535a
#
kusano 7d535a
# GNU Libtool is distributed in the hope that it will be useful, but
kusano 7d535a
# WITHOUT ANY WARRANTY; without even the implied warranty of
kusano 7d535a
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
kusano 7d535a
# General Public License for more details.
kusano 7d535a
#
kusano 7d535a
# You should have received a copy of the GNU General Public License
kusano 7d535a
# along with GNU Libtool; see the file COPYING.  If not, a copy
kusano 7d535a
# can be downloaded from http://www.gnu.org/licenses/gpl.html,
kusano 7d535a
# or obtained by writing to the Free Software Foundation, Inc.,
kusano 7d535a
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
kusano 7d535a
kusano 7d535a
# Usage: $progname [OPTION]... [MODE-ARG]...
kusano 7d535a
#
kusano 7d535a
# Provide generalized library-building support services.
kusano 7d535a
#
kusano 7d535a
#       --config             show all configuration variables
kusano 7d535a
#       --debug              enable verbose shell tracing
kusano 7d535a
#   -n, --dry-run            display commands without modifying any files
kusano 7d535a
#       --features           display basic configuration information and exit
kusano 7d535a
#       --mode=MODE          use operation mode MODE
kusano 7d535a
#       --preserve-dup-deps  don't remove duplicate dependency libraries
kusano 7d535a
#       --quiet, --silent    don't print informational messages
kusano 7d535a
#       --no-quiet, --no-silent
kusano 7d535a
#                            print informational messages (default)
kusano 7d535a
#       --no-warn            don't display warning messages
kusano 7d535a
#       --tag=TAG            use configuration variables from tag TAG
kusano 7d535a
#   -v, --verbose            print more informational messages than default
kusano 7d535a
#       --no-verbose         don't print the extra informational messages
kusano 7d535a
#       --version            print version information
kusano 7d535a
#   -h, --help, --help-all   print short, long, or detailed help message
kusano 7d535a
#
kusano 7d535a
# MODE must be one of the following:
kusano 7d535a
#
kusano 7d535a
#         clean              remove files from the build directory
kusano 7d535a
#         compile            compile a source file into a libtool object
kusano 7d535a
#         execute            automatically set library path, then run a program
kusano 7d535a
#         finish             complete the installation of libtool libraries
kusano 7d535a
#         install            install libraries or executables
kusano 7d535a
#         link               create a library or an executable
kusano 7d535a
#         uninstall          remove libraries from an installed directory
kusano 7d535a
#
kusano 7d535a
# MODE-ARGS vary depending on the MODE.  When passed as first option,
kusano 7d535a
# `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that.
kusano 7d535a
# Try `$progname --help --mode=MODE' for a more detailed description of MODE.
kusano 7d535a
#
kusano 7d535a
# When reporting a bug, please describe a test case to reproduce it and
kusano 7d535a
# include the following information:
kusano 7d535a
#
kusano 7d535a
#         host-triplet:	$host
kusano 7d535a
#         shell:		$SHELL
kusano 7d535a
#         compiler:		$LTCC
kusano 7d535a
#         compiler flags:		$LTCFLAGS
kusano 7d535a
#         linker:		$LD (gnu? $with_gnu_ld)
kusano 7d535a
#         $progname:	(GNU libtool) 2.4.2
kusano 7d535a
#         automake:	$automake_version
kusano 7d535a
#         autoconf:	$autoconf_version
kusano 7d535a
#
kusano 7d535a
# Report bugs to <bug-libtool@gnu.org>.
kusano 7d535a
# GNU libtool home page: <http://www.gnu.org/software/libtool/>.
kusano 7d535a
# General help using GNU software: <http://www.gnu.org/gethelp/>.
kusano 7d535a
kusano 7d535a
PROGRAM=libtool
kusano 7d535a
PACKAGE=libtool
kusano 7d535a
VERSION=2.4.2
kusano 7d535a
TIMESTAMP=""
kusano 7d535a
package_revision=1.3337
kusano 7d535a
kusano 7d535a
# Be Bourne compatible
kusano 7d535a
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
kusano 7d535a
  emulate sh
kusano 7d535a
  NULLCMD=:
kusano 7d535a
  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
kusano 7d535a
  # is contrary to our usage.  Disable this feature.
kusano 7d535a
  alias -g '${1+"$@"}'='"$@"'
kusano 7d535a
  setopt NO_GLOB_SUBST
kusano 7d535a
else
kusano 7d535a
  case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
kusano 7d535a
fi
kusano 7d535a
BIN_SH=xpg4; export BIN_SH # for Tru64
kusano 7d535a
DUALCASE=1; export DUALCASE # for MKS sh
kusano 7d535a
kusano 7d535a
# A function that is used when there is no print builtin or printf.
kusano 7d535a
func_fallback_echo ()
kusano 7d535a
{
kusano 7d535a
  eval 'cat <<_LTECHO_EOF
kusano 7d535a
$1
kusano 7d535a
_LTECHO_EOF'
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# NLS nuisances: We save the old values to restore during execute mode.
kusano 7d535a
lt_user_locale=
kusano 7d535a
lt_safe_locale=
kusano 7d535a
for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
kusano 7d535a
do
kusano 7d535a
  eval "if test \"\${$lt_var+set}\" = set; then
kusano 7d535a
          save_$lt_var=\$$lt_var
kusano 7d535a
          $lt_var=C
kusano 7d535a
	  export $lt_var
kusano 7d535a
	  lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
kusano 7d535a
	  lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
kusano 7d535a
	fi"
kusano 7d535a
done
kusano 7d535a
LC_ALL=C
kusano 7d535a
LANGUAGE=C
kusano 7d535a
export LANGUAGE LC_ALL
kusano 7d535a
kusano 7d535a
$lt_unset CDPATH
kusano 7d535a
kusano 7d535a
kusano 7d535a
# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
kusano 7d535a
# is ksh but when the shell is invoked as "sh" and the current value of
kusano 7d535a
# the _XPG environment variable is not equal to 1 (one), the special
kusano 7d535a
# positional parameter $0, within a function call, is the name of the
kusano 7d535a
# function.
kusano 7d535a
progpath="$0"
kusano 7d535a
kusano 7d535a
kusano 7d535a
kusano 7d535a
: ${CP="cp -f"}
kusano 7d535a
test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'}
kusano 7d535a
: ${MAKE="make"}
kusano 7d535a
: ${MKDIR="mkdir"}
kusano 7d535a
: ${MV="mv -f"}
kusano 7d535a
: ${RM="rm -f"}
kusano 7d535a
: ${SHELL="${CONFIG_SHELL-/bin/sh}"}
kusano 7d535a
: ${Xsed="$SED -e 1s/^X//"}
kusano 7d535a
kusano 7d535a
# Global variables:
kusano 7d535a
EXIT_SUCCESS=0
kusano 7d535a
EXIT_FAILURE=1
kusano 7d535a
EXIT_MISMATCH=63  # $? = 63 is used to indicate version mismatch to missing.
kusano 7d535a
EXIT_SKIP=77	  # $? = 77 is used to indicate a skipped test to automake.
kusano 7d535a
kusano 7d535a
exit_status=$EXIT_SUCCESS
kusano 7d535a
kusano 7d535a
# Make sure IFS has a sensible default
kusano 7d535a
lt_nl='
kusano 7d535a
'
kusano 7d535a
IFS=" 	$lt_nl"
kusano 7d535a
kusano 7d535a
dirname="s,/[^/]*$,,"
kusano 7d535a
basename="s,^.*/,,"
kusano 7d535a
kusano 7d535a
# func_dirname file append nondir_replacement
kusano 7d535a
# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
kusano 7d535a
# otherwise set result to NONDIR_REPLACEMENT.
kusano 7d535a
func_dirname ()
kusano 7d535a
{
kusano 7d535a
    func_dirname_result=`$ECHO "${1}" | $SED "$dirname"`
kusano 7d535a
    if test "X$func_dirname_result" = "X${1}"; then
kusano 7d535a
      func_dirname_result="${3}"
kusano 7d535a
    else
kusano 7d535a
      func_dirname_result="$func_dirname_result${2}"
kusano 7d535a
    fi
kusano 7d535a
} # func_dirname may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_basename file
kusano 7d535a
func_basename ()
kusano 7d535a
{
kusano 7d535a
    func_basename_result=`$ECHO "${1}" | $SED "$basename"`
kusano 7d535a
} # func_basename may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_dirname_and_basename file append nondir_replacement
kusano 7d535a
# perform func_basename and func_dirname in a single function
kusano 7d535a
# call:
kusano 7d535a
#   dirname:  Compute the dirname of FILE.  If nonempty,
kusano 7d535a
#             add APPEND to the result, otherwise set result
kusano 7d535a
#             to NONDIR_REPLACEMENT.
kusano 7d535a
#             value returned in "$func_dirname_result"
kusano 7d535a
#   basename: Compute filename of FILE.
kusano 7d535a
#             value retuned in "$func_basename_result"
kusano 7d535a
# Implementation must be kept synchronized with func_dirname
kusano 7d535a
# and func_basename. For efficiency, we do not delegate to
kusano 7d535a
# those functions but instead duplicate the functionality here.
kusano 7d535a
func_dirname_and_basename ()
kusano 7d535a
{
kusano 7d535a
    # Extract subdirectory from the argument.
kusano 7d535a
    func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"`
kusano 7d535a
    if test "X$func_dirname_result" = "X${1}"; then
kusano 7d535a
      func_dirname_result="${3}"
kusano 7d535a
    else
kusano 7d535a
      func_dirname_result="$func_dirname_result${2}"
kusano 7d535a
    fi
kusano 7d535a
    func_basename_result=`$ECHO "${1}" | $SED -e "$basename"`
kusano 7d535a
} # func_dirname_and_basename may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_stripname prefix suffix name
kusano 7d535a
# strip PREFIX and SUFFIX off of NAME.
kusano 7d535a
# PREFIX and SUFFIX must not contain globbing or regex special
kusano 7d535a
# characters, hashes, percent signs, but SUFFIX may contain a leading
kusano 7d535a
# dot (in which case that matches only a dot).
kusano 7d535a
# func_strip_suffix prefix name
kusano 7d535a
func_stripname ()
kusano 7d535a
{
kusano 7d535a
    case ${2} in
kusano 7d535a
      .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
kusano 7d535a
      *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
kusano 7d535a
    esac
kusano 7d535a
} # func_stripname may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# These SED scripts presuppose an absolute path with a trailing slash.
kusano 7d535a
pathcar='s,^/\([^/]*\).*$,\1,'
kusano 7d535a
pathcdr='s,^/[^/]*,,'
kusano 7d535a
removedotparts=':dotsl
kusano 7d535a
		s@/\./@/@g
kusano 7d535a
		t dotsl
kusano 7d535a
		s,/\.$,/,'
kusano 7d535a
collapseslashes='s@/\{1,\}@/@g'
kusano 7d535a
finalslash='s,/*$,/,'
kusano 7d535a
kusano 7d535a
# func_normal_abspath PATH
kusano 7d535a
# Remove doubled-up and trailing slashes, "." path components,
kusano 7d535a
# and cancel out any ".." path components in PATH after making
kusano 7d535a
# it an absolute path.
kusano 7d535a
#             value returned in "$func_normal_abspath_result"
kusano 7d535a
func_normal_abspath ()
kusano 7d535a
{
kusano 7d535a
  # Start from root dir and reassemble the path.
kusano 7d535a
  func_normal_abspath_result=
kusano 7d535a
  func_normal_abspath_tpath=$1
kusano 7d535a
  func_normal_abspath_altnamespace=
kusano 7d535a
  case $func_normal_abspath_tpath in
kusano 7d535a
    "")
kusano 7d535a
      # Empty path, that just means $cwd.
kusano 7d535a
      func_stripname '' '/' "`pwd`"
kusano 7d535a
      func_normal_abspath_result=$func_stripname_result
kusano 7d535a
      return
kusano 7d535a
    ;;
kusano 7d535a
    # The next three entries are used to spot a run of precisely
kusano 7d535a
    # two leading slashes without using negated character classes;
kusano 7d535a
    # we take advantage of case's first-match behaviour.
kusano 7d535a
    ///*)
kusano 7d535a
      # Unusual form of absolute path, do nothing.
kusano 7d535a
    ;;
kusano 7d535a
    //*)
kusano 7d535a
      # Not necessarily an ordinary path; POSIX reserves leading '//'
kusano 7d535a
      # and for example Cygwin uses it to access remote file shares
kusano 7d535a
      # over CIFS/SMB, so we conserve a leading double slash if found.
kusano 7d535a
      func_normal_abspath_altnamespace=/
kusano 7d535a
    ;;
kusano 7d535a
    /*)
kusano 7d535a
      # Absolute path, do nothing.
kusano 7d535a
    ;;
kusano 7d535a
    *)
kusano 7d535a
      # Relative path, prepend $cwd.
kusano 7d535a
      func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath
kusano 7d535a
    ;;
kusano 7d535a
  esac
kusano 7d535a
  # Cancel out all the simple stuff to save iterations.  We also want
kusano 7d535a
  # the path to end with a slash for ease of parsing, so make sure
kusano 7d535a
  # there is one (and only one) here.
kusano 7d535a
  func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
kusano 7d535a
        -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"`
kusano 7d535a
  while :; do
kusano 7d535a
    # Processed it all yet?
kusano 7d535a
    if test "$func_normal_abspath_tpath" = / ; then
kusano 7d535a
      # If we ascended to the root using ".." the result may be empty now.
kusano 7d535a
      if test -z "$func_normal_abspath_result" ; then
kusano 7d535a
        func_normal_abspath_result=/
kusano 7d535a
      fi
kusano 7d535a
      break
kusano 7d535a
    fi
kusano 7d535a
    func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \
kusano 7d535a
        -e "$pathcar"`
kusano 7d535a
    func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
kusano 7d535a
        -e "$pathcdr"`
kusano 7d535a
    # Figure out what to do with it
kusano 7d535a
    case $func_normal_abspath_tcomponent in
kusano 7d535a
      "")
kusano 7d535a
        # Trailing empty path component, ignore it.
kusano 7d535a
      ;;
kusano 7d535a
      ..)
kusano 7d535a
        # Parent dir; strip last assembled component from result.
kusano 7d535a
        func_dirname "$func_normal_abspath_result"
kusano 7d535a
        func_normal_abspath_result=$func_dirname_result
kusano 7d535a
      ;;
kusano 7d535a
      *)
kusano 7d535a
        # Actual path component, append it.
kusano 7d535a
        func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
  done
kusano 7d535a
  # Restore leading double-slash if one was found on entry.
kusano 7d535a
  func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_relative_path SRCDIR DSTDIR
kusano 7d535a
# generates a relative path from SRCDIR to DSTDIR, with a trailing
kusano 7d535a
# slash if non-empty, suitable for immediately appending a filename
kusano 7d535a
# without needing to append a separator.
kusano 7d535a
#             value returned in "$func_relative_path_result"
kusano 7d535a
func_relative_path ()
kusano 7d535a
{
kusano 7d535a
  func_relative_path_result=
kusano 7d535a
  func_normal_abspath "$1"
kusano 7d535a
  func_relative_path_tlibdir=$func_normal_abspath_result
kusano 7d535a
  func_normal_abspath "$2"
kusano 7d535a
  func_relative_path_tbindir=$func_normal_abspath_result
kusano 7d535a
kusano 7d535a
  # Ascend the tree starting from libdir
kusano 7d535a
  while :; do
kusano 7d535a
    # check if we have found a prefix of bindir
kusano 7d535a
    case $func_relative_path_tbindir in
kusano 7d535a
      $func_relative_path_tlibdir)
kusano 7d535a
        # found an exact match
kusano 7d535a
        func_relative_path_tcancelled=
kusano 7d535a
        break
kusano 7d535a
        ;;
kusano 7d535a
      $func_relative_path_tlibdir*)
kusano 7d535a
        # found a matching prefix
kusano 7d535a
        func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir"
kusano 7d535a
        func_relative_path_tcancelled=$func_stripname_result
kusano 7d535a
        if test -z "$func_relative_path_result"; then
kusano 7d535a
          func_relative_path_result=.
kusano 7d535a
        fi
kusano 7d535a
        break
kusano 7d535a
        ;;
kusano 7d535a
      *)
kusano 7d535a
        func_dirname $func_relative_path_tlibdir
kusano 7d535a
        func_relative_path_tlibdir=${func_dirname_result}
kusano 7d535a
        if test "x$func_relative_path_tlibdir" = x ; then
kusano 7d535a
          # Have to descend all the way to the root!
kusano 7d535a
          func_relative_path_result=../$func_relative_path_result
kusano 7d535a
          func_relative_path_tcancelled=$func_relative_path_tbindir
kusano 7d535a
          break
kusano 7d535a
        fi
kusano 7d535a
        func_relative_path_result=../$func_relative_path_result
kusano 7d535a
        ;;
kusano 7d535a
    esac
kusano 7d535a
  done
kusano 7d535a
kusano 7d535a
  # Now calculate path; take care to avoid doubling-up slashes.
kusano 7d535a
  func_stripname '' '/' "$func_relative_path_result"
kusano 7d535a
  func_relative_path_result=$func_stripname_result
kusano 7d535a
  func_stripname '/' '/' "$func_relative_path_tcancelled"
kusano 7d535a
  if test "x$func_stripname_result" != x ; then
kusano 7d535a
    func_relative_path_result=${func_relative_path_result}/${func_stripname_result}
kusano 7d535a
  fi
kusano 7d535a
kusano 7d535a
  # Normalisation. If bindir is libdir, return empty string,
kusano 7d535a
  # else relative path ending with a slash; either way, target
kusano 7d535a
  # file name can be directly appended.
kusano 7d535a
  if test ! -z "$func_relative_path_result"; then
kusano 7d535a
    func_stripname './' '' "$func_relative_path_result/"
kusano 7d535a
    func_relative_path_result=$func_stripname_result
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# The name of this program:
kusano 7d535a
func_dirname_and_basename "$progpath"
kusano 7d535a
progname=$func_basename_result
kusano 7d535a
kusano 7d535a
# Make sure we have an absolute path for reexecution:
kusano 7d535a
case $progpath in
kusano 7d535a
  [\\/]*|[A-Za-z]:\\*) ;;
kusano 7d535a
  *[\\/]*)
kusano 7d535a
     progdir=$func_dirname_result
kusano 7d535a
     progdir=`cd "$progdir" && pwd`
kusano 7d535a
     progpath="$progdir/$progname"
kusano 7d535a
     ;;
kusano 7d535a
  *)
kusano 7d535a
     save_IFS="$IFS"
kusano 7d535a
     IFS=${PATH_SEPARATOR-:}
kusano 7d535a
     for progdir in $PATH; do
kusano 7d535a
       IFS="$save_IFS"
kusano 7d535a
       test -x "$progdir/$progname" && break
kusano 7d535a
     done
kusano 7d535a
     IFS="$save_IFS"
kusano 7d535a
     test -n "$progdir" || progdir=`pwd`
kusano 7d535a
     progpath="$progdir/$progname"
kusano 7d535a
     ;;
kusano 7d535a
esac
kusano 7d535a
kusano 7d535a
# Sed substitution that helps us do robust quoting.  It backslashifies
kusano 7d535a
# metacharacters that are still active within double-quoted strings.
kusano 7d535a
Xsed="${SED}"' -e 1s/^X//'
kusano 7d535a
sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
kusano 7d535a
kusano 7d535a
# Same as above, but do not quote variable references.
kusano 7d535a
double_quote_subst='s/\(["`\\]\)/\\\1/g'
kusano 7d535a
kusano 7d535a
# Sed substitution that turns a string into a regex matching for the
kusano 7d535a
# string literally.
kusano 7d535a
sed_make_literal_regex='s,[].[^$\\*\/],\\&,g'
kusano 7d535a
kusano 7d535a
# Sed substitution that converts a w32 file name or path
kusano 7d535a
# which contains forward slashes, into one that contains
kusano 7d535a
# (escaped) backslashes.  A very naive implementation.
kusano 7d535a
lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
kusano 7d535a
kusano 7d535a
# Re-`\' parameter expansions in output of double_quote_subst that were
kusano 7d535a
# `\'-ed in input to the same.  If an odd number of `\' preceded a '$'
kusano 7d535a
# in input to double_quote_subst, that '$' was protected from expansion.
kusano 7d535a
# Since each input `\' is now two `\'s, look for any number of runs of
kusano 7d535a
# four `\'s followed by two `\'s and then a '$'.  `\' that '$'.
kusano 7d535a
bs='\\'
kusano 7d535a
bs2='\\\\'
kusano 7d535a
bs4='\\\\\\\\'
kusano 7d535a
dollar='\$'
kusano 7d535a
sed_double_backslash="\
kusano 7d535a
  s/$bs4/&\\
kusano 7d535a
/g
kusano 7d535a
  s/^$bs2$dollar/$bs&/
kusano 7d535a
  s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g
kusano 7d535a
  s/\n//g"
kusano 7d535a
kusano 7d535a
# Standard options:
kusano 7d535a
opt_dry_run=false
kusano 7d535a
opt_help=false
kusano 7d535a
opt_quiet=false
kusano 7d535a
opt_verbose=false
kusano 7d535a
opt_warning=:
kusano 7d535a
kusano 7d535a
# func_echo arg...
kusano 7d535a
# Echo program name prefixed message, along with the current mode
kusano 7d535a
# name if it has been set yet.
kusano 7d535a
func_echo ()
kusano 7d535a
{
kusano 7d535a
    $ECHO "$progname: ${opt_mode+$opt_mode: }$*"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_verbose arg...
kusano 7d535a
# Echo program name prefixed message in verbose mode only.
kusano 7d535a
func_verbose ()
kusano 7d535a
{
kusano 7d535a
    $opt_verbose && func_echo ${1+"$@"}
kusano 7d535a
kusano 7d535a
    # A bug in bash halts the script if the last line of a function
kusano 7d535a
    # fails when set -e is in force, so we need another command to
kusano 7d535a
    # work around that:
kusano 7d535a
    :
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_echo_all arg...
kusano 7d535a
# Invoke $ECHO with all args, space-separated.
kusano 7d535a
func_echo_all ()
kusano 7d535a
{
kusano 7d535a
    $ECHO "$*"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_error arg...
kusano 7d535a
# Echo program name prefixed message to standard error.
kusano 7d535a
func_error ()
kusano 7d535a
{
kusano 7d535a
    $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_warning arg...
kusano 7d535a
# Echo program name prefixed warning message to standard error.
kusano 7d535a
func_warning ()
kusano 7d535a
{
kusano 7d535a
    $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2
kusano 7d535a
kusano 7d535a
    # bash bug again:
kusano 7d535a
    :
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_fatal_error arg...
kusano 7d535a
# Echo program name prefixed message to standard error, and exit.
kusano 7d535a
func_fatal_error ()
kusano 7d535a
{
kusano 7d535a
    func_error ${1+"$@"}
kusano 7d535a
    exit $EXIT_FAILURE
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_fatal_help arg...
kusano 7d535a
# Echo program name prefixed message to standard error, followed by
kusano 7d535a
# a help hint, and exit.
kusano 7d535a
func_fatal_help ()
kusano 7d535a
{
kusano 7d535a
    func_error ${1+"$@"}
kusano 7d535a
    func_fatal_error "$help"
kusano 7d535a
}
kusano 7d535a
help="Try \`$progname --help' for more information."  ## default
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_grep expression filename
kusano 7d535a
# Check whether EXPRESSION matches any line of FILENAME, without output.
kusano 7d535a
func_grep ()
kusano 7d535a
{
kusano 7d535a
    $GREP "$1" "$2" >/dev/null 2>&1
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_mkdir_p directory-path
kusano 7d535a
# Make sure the entire path to DIRECTORY-PATH is available.
kusano 7d535a
func_mkdir_p ()
kusano 7d535a
{
kusano 7d535a
    my_directory_path="$1"
kusano 7d535a
    my_dir_list=
kusano 7d535a
kusano 7d535a
    if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then
kusano 7d535a
kusano 7d535a
      # Protect directory names starting with `-'
kusano 7d535a
      case $my_directory_path in
kusano 7d535a
        -*) my_directory_path="./$my_directory_path" ;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      # While some portion of DIR does not yet exist...
kusano 7d535a
      while test ! -d "$my_directory_path"; do
kusano 7d535a
        # ...make a list in topmost first order.  Use a colon delimited
kusano 7d535a
	# list incase some portion of path contains whitespace.
kusano 7d535a
        my_dir_list="$my_directory_path:$my_dir_list"
kusano 7d535a
kusano 7d535a
        # If the last portion added has no slash in it, the list is done
kusano 7d535a
        case $my_directory_path in */*) ;; *) break ;; esac
kusano 7d535a
kusano 7d535a
        # ...otherwise throw away the child directory and loop
kusano 7d535a
        my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"`
kusano 7d535a
      done
kusano 7d535a
      my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'`
kusano 7d535a
kusano 7d535a
      save_mkdir_p_IFS="$IFS"; IFS=':'
kusano 7d535a
      for my_dir in $my_dir_list; do
kusano 7d535a
	IFS="$save_mkdir_p_IFS"
kusano 7d535a
        # mkdir can fail with a `File exist' error if two processes
kusano 7d535a
        # try to create one of the directories concurrently.  Don't
kusano 7d535a
        # stop in that case!
kusano 7d535a
        $MKDIR "$my_dir" 2>/dev/null || :
kusano 7d535a
      done
kusano 7d535a
      IFS="$save_mkdir_p_IFS"
kusano 7d535a
kusano 7d535a
      # Bail out if we (or some other process) failed to create a directory.
kusano 7d535a
      test -d "$my_directory_path" || \
kusano 7d535a
        func_fatal_error "Failed to create \`$1'"
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_mktempdir [string]
kusano 7d535a
# Make a temporary directory that won't clash with other running
kusano 7d535a
# libtool processes, and avoids race conditions if possible.  If
kusano 7d535a
# given, STRING is the basename for that directory.
kusano 7d535a
func_mktempdir ()
kusano 7d535a
{
kusano 7d535a
    my_template="${TMPDIR-/tmp}/${1-$progname}"
kusano 7d535a
kusano 7d535a
    if test "$opt_dry_run" = ":"; then
kusano 7d535a
      # Return a directory name, but don't create it in dry-run mode
kusano 7d535a
      my_tmpdir="${my_template}-$$"
kusano 7d535a
    else
kusano 7d535a
kusano 7d535a
      # If mktemp works, use that first and foremost
kusano 7d535a
      my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
kusano 7d535a
kusano 7d535a
      if test ! -d "$my_tmpdir"; then
kusano 7d535a
        # Failing that, at least try and use $RANDOM to avoid a race
kusano 7d535a
        my_tmpdir="${my_template}-${RANDOM-0}$$"
kusano 7d535a
kusano 7d535a
        save_mktempdir_umask=`umask`
kusano 7d535a
        umask 0077
kusano 7d535a
        $MKDIR "$my_tmpdir"
kusano 7d535a
        umask $save_mktempdir_umask
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # If we're not in dry-run mode, bomb out on failure
kusano 7d535a
      test -d "$my_tmpdir" || \
kusano 7d535a
        func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    $ECHO "$my_tmpdir"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_quote_for_eval arg
kusano 7d535a
# Aesthetically quote ARG to be evaled later.
kusano 7d535a
# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT
kusano 7d535a
# is double-quoted, suitable for a subsequent eval, whereas
kusano 7d535a
# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters
kusano 7d535a
# which are still active within double quotes backslashified.
kusano 7d535a
func_quote_for_eval ()
kusano 7d535a
{
kusano 7d535a
    case $1 in
kusano 7d535a
      *[\\\`\"\$]*)
kusano 7d535a
	func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;;
kusano 7d535a
      *)
kusano 7d535a
        func_quote_for_eval_unquoted_result="$1" ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    case $func_quote_for_eval_unquoted_result in
kusano 7d535a
      # Double-quote args containing shell metacharacters to delay
kusano 7d535a
      # word splitting, command substitution and and variable
kusano 7d535a
      # expansion for a subsequent eval.
kusano 7d535a
      # Many Bourne shells cannot handle close brackets correctly
kusano 7d535a
      # in scan sets, so we specify it separately.
kusano 7d535a
      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
kusano 7d535a
        func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\""
kusano 7d535a
        ;;
kusano 7d535a
      *)
kusano 7d535a
        func_quote_for_eval_result="$func_quote_for_eval_unquoted_result"
kusano 7d535a
    esac
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_quote_for_expand arg
kusano 7d535a
# Aesthetically quote ARG to be evaled later; same as above,
kusano 7d535a
# but do not quote variable references.
kusano 7d535a
func_quote_for_expand ()
kusano 7d535a
{
kusano 7d535a
    case $1 in
kusano 7d535a
      *[\\\`\"]*)
kusano 7d535a
	my_arg=`$ECHO "$1" | $SED \
kusano 7d535a
	    -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
kusano 7d535a
      *)
kusano 7d535a
        my_arg="$1" ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    case $my_arg in
kusano 7d535a
      # Double-quote args containing shell metacharacters to delay
kusano 7d535a
      # word splitting and command substitution for a subsequent eval.
kusano 7d535a
      # Many Bourne shells cannot handle close brackets correctly
kusano 7d535a
      # in scan sets, so we specify it separately.
kusano 7d535a
      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
kusano 7d535a
        my_arg="\"$my_arg\""
kusano 7d535a
        ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    func_quote_for_expand_result="$my_arg"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_show_eval cmd [fail_exp]
kusano 7d535a
# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is
kusano 7d535a
# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
kusano 7d535a
# is given, then evaluate it.
kusano 7d535a
func_show_eval ()
kusano 7d535a
{
kusano 7d535a
    my_cmd="$1"
kusano 7d535a
    my_fail_exp="${2-:}"
kusano 7d535a
kusano 7d535a
    ${opt_silent-false} || {
kusano 7d535a
      func_quote_for_expand "$my_cmd"
kusano 7d535a
      eval "func_echo $func_quote_for_expand_result"
kusano 7d535a
    }
kusano 7d535a
kusano 7d535a
    if ${opt_dry_run-false}; then :; else
kusano 7d535a
      eval "$my_cmd"
kusano 7d535a
      my_status=$?
kusano 7d535a
      if test "$my_status" -eq 0; then :; else
kusano 7d535a
	eval "(exit $my_status); $my_fail_exp"
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_show_eval_locale cmd [fail_exp]
kusano 7d535a
# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is
kusano 7d535a
# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
kusano 7d535a
# is given, then evaluate it.  Use the saved locale for evaluation.
kusano 7d535a
func_show_eval_locale ()
kusano 7d535a
{
kusano 7d535a
    my_cmd="$1"
kusano 7d535a
    my_fail_exp="${2-:}"
kusano 7d535a
kusano 7d535a
    ${opt_silent-false} || {
kusano 7d535a
      func_quote_for_expand "$my_cmd"
kusano 7d535a
      eval "func_echo $func_quote_for_expand_result"
kusano 7d535a
    }
kusano 7d535a
kusano 7d535a
    if ${opt_dry_run-false}; then :; else
kusano 7d535a
      eval "$lt_user_locale
kusano 7d535a
	    $my_cmd"
kusano 7d535a
      my_status=$?
kusano 7d535a
      eval "$lt_safe_locale"
kusano 7d535a
      if test "$my_status" -eq 0; then :; else
kusano 7d535a
	eval "(exit $my_status); $my_fail_exp"
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_tr_sh
kusano 7d535a
# Turn $1 into a string suitable for a shell variable name.
kusano 7d535a
# Result is stored in $func_tr_sh_result.  All characters
kusano 7d535a
# not in the set a-zA-Z0-9_ are replaced with '_'. Further,
kusano 7d535a
# if $1 begins with a digit, a '_' is prepended as well.
kusano 7d535a
func_tr_sh ()
kusano 7d535a
{
kusano 7d535a
  case $1 in
kusano 7d535a
  [0-9]* | *[!a-zA-Z0-9_]*)
kusano 7d535a
    func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'`
kusano 7d535a
    ;;
kusano 7d535a
  * )
kusano 7d535a
    func_tr_sh_result=$1
kusano 7d535a
    ;;
kusano 7d535a
  esac
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_version
kusano 7d535a
# Echo version message to standard output and exit.
kusano 7d535a
func_version ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
kusano 7d535a
    $SED -n '/(C)/!b go
kusano 7d535a
	:more
kusano 7d535a
	/\./!{
kusano 7d535a
	  N
kusano 7d535a
	  s/\n# / /
kusano 7d535a
	  b more
kusano 7d535a
	}
kusano 7d535a
	:go
kusano 7d535a
	/^# '$PROGRAM' (GNU /,/# warranty; / {
kusano 7d535a
        s/^# //
kusano 7d535a
	s/^# *$//
kusano 7d535a
        s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
kusano 7d535a
        p
kusano 7d535a
     }' < "$progpath"
kusano 7d535a
     exit $?
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_usage
kusano 7d535a
# Echo short help message to standard output and exit.
kusano 7d535a
func_usage ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
kusano 7d535a
    $SED -n '/^# Usage:/,/^#  *.*--help/ {
kusano 7d535a
        s/^# //
kusano 7d535a
	s/^# *$//
kusano 7d535a
	s/\$progname/'$progname'/
kusano 7d535a
	p
kusano 7d535a
    }' < "$progpath"
kusano 7d535a
    echo
kusano 7d535a
    $ECHO "run \`$progname --help | more' for full usage"
kusano 7d535a
    exit $?
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_help [NOEXIT]
kusano 7d535a
# Echo long help message to standard output and exit,
kusano 7d535a
# unless 'noexit' is passed as argument.
kusano 7d535a
func_help ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
kusano 7d535a
    $SED -n '/^# Usage:/,/# Report bugs to/ {
kusano 7d535a
	:print
kusano 7d535a
        s/^# //
kusano 7d535a
	s/^# *$//
kusano 7d535a
	s*\$progname*'$progname'*
kusano 7d535a
	s*\$host*'"$host"'*
kusano 7d535a
	s*\$SHELL*'"$SHELL"'*
kusano 7d535a
	s*\$LTCC*'"$LTCC"'*
kusano 7d535a
	s*\$LTCFLAGS*'"$LTCFLAGS"'*
kusano 7d535a
	s*\$LD*'"$LD"'*
kusano 7d535a
	s/\$with_gnu_ld/'"$with_gnu_ld"'/
kusano 7d535a
	s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/
kusano 7d535a
	s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/
kusano 7d535a
	p
kusano 7d535a
	d
kusano 7d535a
     }
kusano 7d535a
     /^# .* home page:/b print
kusano 7d535a
     /^# General help using/b print
kusano 7d535a
     ' < "$progpath"
kusano 7d535a
    ret=$?
kusano 7d535a
    if test -z "$1"; then
kusano 7d535a
      exit $ret
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_missing_arg argname
kusano 7d535a
# Echo program name prefixed message to standard error and set global
kusano 7d535a
# exit_cmd.
kusano 7d535a
func_missing_arg ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
kusano 7d535a
    func_error "missing argument for $1."
kusano 7d535a
    exit_cmd=exit
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_split_short_opt shortopt
kusano 7d535a
# Set func_split_short_opt_name and func_split_short_opt_arg shell
kusano 7d535a
# variables after splitting SHORTOPT after the 2nd character.
kusano 7d535a
func_split_short_opt ()
kusano 7d535a
{
kusano 7d535a
    my_sed_short_opt='1s/^\(..\).*$/\1/;q'
kusano 7d535a
    my_sed_short_rest='1s/^..\(.*\)$/\1/;q'
kusano 7d535a
kusano 7d535a
    func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"`
kusano 7d535a
    func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"`
kusano 7d535a
} # func_split_short_opt may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_split_long_opt longopt
kusano 7d535a
# Set func_split_long_opt_name and func_split_long_opt_arg shell
kusano 7d535a
# variables after splitting LONGOPT at the `=' sign.
kusano 7d535a
func_split_long_opt ()
kusano 7d535a
{
kusano 7d535a
    my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q'
kusano 7d535a
    my_sed_long_arg='1s/^--[^=]*=//'
kusano 7d535a
kusano 7d535a
    func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"`
kusano 7d535a
    func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"`
kusano 7d535a
} # func_split_long_opt may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
exit_cmd=:
kusano 7d535a
kusano 7d535a
kusano 7d535a
kusano 7d535a
kusano 7d535a
kusano 7d535a
magic="%%%MAGIC variable%%%"
kusano 7d535a
magic_exe="%%%MAGIC EXE variable%%%"
kusano 7d535a
kusano 7d535a
# Global variables.
kusano 7d535a
nonopt=
kusano 7d535a
preserve_args=
kusano 7d535a
lo2o="s/\\.lo\$/.${objext}/"
kusano 7d535a
o2lo="s/\\.${objext}\$/.lo/"
kusano 7d535a
extracted_archives=
kusano 7d535a
extracted_serial=0
kusano 7d535a
kusano 7d535a
# If this variable is set in any of the actions, the command in it
kusano 7d535a
# will be execed at the end.  This prevents here-documents from being
kusano 7d535a
# left over by shells.
kusano 7d535a
exec_cmd=
kusano 7d535a
kusano 7d535a
# func_append var value
kusano 7d535a
# Append VALUE to the end of shell variable VAR.
kusano 7d535a
func_append ()
kusano 7d535a
{
kusano 7d535a
    eval "${1}=\$${1}\${2}"
kusano 7d535a
} # func_append may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
# func_append_quoted var value
kusano 7d535a
# Quote VALUE and append to the end of shell variable VAR, separated
kusano 7d535a
# by a space.
kusano 7d535a
func_append_quoted ()
kusano 7d535a
{
kusano 7d535a
    func_quote_for_eval "${2}"
kusano 7d535a
    eval "${1}=\$${1}\\ \$func_quote_for_eval_result"
kusano 7d535a
} # func_append_quoted may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_arith arithmetic-term...
kusano 7d535a
func_arith ()
kusano 7d535a
{
kusano 7d535a
    func_arith_result=`expr "${@}"`
kusano 7d535a
} # func_arith may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_len string
kusano 7d535a
# STRING may not start with a hyphen.
kusano 7d535a
func_len ()
kusano 7d535a
{
kusano 7d535a
    func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len`
kusano 7d535a
} # func_len may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_lo2o object
kusano 7d535a
func_lo2o ()
kusano 7d535a
{
kusano 7d535a
    func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"`
kusano 7d535a
} # func_lo2o may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_xform libobj-or-source
kusano 7d535a
func_xform ()
kusano 7d535a
{
kusano 7d535a
    func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'`
kusano 7d535a
} # func_xform may be replaced by extended shell implementation
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_fatal_configuration arg...
kusano 7d535a
# Echo program name prefixed message to standard error, followed by
kusano 7d535a
# a configuration failure hint, and exit.
kusano 7d535a
func_fatal_configuration ()
kusano 7d535a
{
kusano 7d535a
    func_error ${1+"$@"}
kusano 7d535a
    func_error "See the $PACKAGE documentation for more information."
kusano 7d535a
    func_fatal_error "Fatal configuration error."
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_config
kusano 7d535a
# Display the configuration for all the tags in this script.
kusano 7d535a
func_config ()
kusano 7d535a
{
kusano 7d535a
    re_begincf='^# ### BEGIN LIBTOOL'
kusano 7d535a
    re_endcf='^# ### END LIBTOOL'
kusano 7d535a
kusano 7d535a
    # Default configuration.
kusano 7d535a
    $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath"
kusano 7d535a
kusano 7d535a
    # Now print the configurations for the tags.
kusano 7d535a
    for tagname in $taglist; do
kusano 7d535a
      $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath"
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    exit $?
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_features
kusano 7d535a
# Display the features supported by this script.
kusano 7d535a
func_features ()
kusano 7d535a
{
kusano 7d535a
    echo "host: $host"
kusano 7d535a
    if test "$build_libtool_libs" = yes; then
kusano 7d535a
      echo "enable shared libraries"
kusano 7d535a
    else
kusano 7d535a
      echo "disable shared libraries"
kusano 7d535a
    fi
kusano 7d535a
    if test "$build_old_libs" = yes; then
kusano 7d535a
      echo "enable static libraries"
kusano 7d535a
    else
kusano 7d535a
      echo "disable static libraries"
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    exit $?
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_enable_tag tagname
kusano 7d535a
# Verify that TAGNAME is valid, and either flag an error and exit, or
kusano 7d535a
# enable the TAGNAME tag.  We also add TAGNAME to the global $taglist
kusano 7d535a
# variable here.
kusano 7d535a
func_enable_tag ()
kusano 7d535a
{
kusano 7d535a
  # Global variable:
kusano 7d535a
  tagname="$1"
kusano 7d535a
kusano 7d535a
  re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
kusano 7d535a
  re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
kusano 7d535a
  sed_extractcf="/$re_begincf/,/$re_endcf/p"
kusano 7d535a
kusano 7d535a
  # Validate tagname.
kusano 7d535a
  case $tagname in
kusano 7d535a
    *[!-_A-Za-z0-9,/]*)
kusano 7d535a
      func_fatal_error "invalid tag name: $tagname"
kusano 7d535a
      ;;
kusano 7d535a
  esac
kusano 7d535a
kusano 7d535a
  # Don't test for the "default" C tag, as we know it's
kusano 7d535a
  # there but not specially marked.
kusano 7d535a
  case $tagname in
kusano 7d535a
    CC) ;;
kusano 7d535a
    *)
kusano 7d535a
      if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
kusano 7d535a
	taglist="$taglist $tagname"
kusano 7d535a
kusano 7d535a
	# Evaluate the configuration.  Be careful to quote the path
kusano 7d535a
	# and the sed script, to avoid splitting on whitespace, but
kusano 7d535a
	# also don't use non-portable quotes within backquotes within
kusano 7d535a
	# quotes we have to do it in 2 steps:
kusano 7d535a
	extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
kusano 7d535a
	eval "$extractedcf"
kusano 7d535a
      else
kusano 7d535a
	func_error "ignoring unknown tag $tagname"
kusano 7d535a
      fi
kusano 7d535a
      ;;
kusano 7d535a
  esac
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_check_version_match
kusano 7d535a
# Ensure that we are using m4 macros, and libtool script from the same
kusano 7d535a
# release of libtool.
kusano 7d535a
func_check_version_match ()
kusano 7d535a
{
kusano 7d535a
  if test "$package_revision" != "$macro_revision"; then
kusano 7d535a
    if test "$VERSION" != "$macro_version"; then
kusano 7d535a
      if test -z "$macro_version"; then
kusano 7d535a
        cat >&2 <<_LT_EOF
kusano 7d535a
$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
kusano 7d535a
$progname: definition of this LT_INIT comes from an older release.
kusano 7d535a
$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
kusano 7d535a
$progname: and run autoconf again.
kusano 7d535a
_LT_EOF
kusano 7d535a
      else
kusano 7d535a
        cat >&2 <<_LT_EOF
kusano 7d535a
$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
kusano 7d535a
$progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
kusano 7d535a
$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
kusano 7d535a
$progname: and run autoconf again.
kusano 7d535a
_LT_EOF
kusano 7d535a
      fi
kusano 7d535a
    else
kusano 7d535a
      cat >&2 <<_LT_EOF
kusano 7d535a
$progname: Version mismatch error.  This is $PACKAGE $VERSION, revision $package_revision,
kusano 7d535a
$progname: but the definition of this LT_INIT comes from revision $macro_revision.
kusano 7d535a
$progname: You should recreate aclocal.m4 with macros from revision $package_revision
kusano 7d535a
$progname: of $PACKAGE $VERSION and run autoconf again.
kusano 7d535a
_LT_EOF
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    exit $EXIT_MISMATCH
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# Shorthand for --mode=foo, only valid as the first argument
kusano 7d535a
case $1 in
kusano 7d535a
clean|clea|cle|cl)
kusano 7d535a
  shift; set dummy --mode clean ${1+"$@"}; shift
kusano 7d535a
  ;;
kusano 7d535a
compile|compil|compi|comp|com|co|c)
kusano 7d535a
  shift; set dummy --mode compile ${1+"$@"}; shift
kusano 7d535a
  ;;
kusano 7d535a
execute|execut|execu|exec|exe|ex|e)
kusano 7d535a
  shift; set dummy --mode execute ${1+"$@"}; shift
kusano 7d535a
  ;;
kusano 7d535a
finish|finis|fini|fin|fi|f)
kusano 7d535a
  shift; set dummy --mode finish ${1+"$@"}; shift
kusano 7d535a
  ;;
kusano 7d535a
install|instal|insta|inst|ins|in|i)
kusano 7d535a
  shift; set dummy --mode install ${1+"$@"}; shift
kusano 7d535a
  ;;
kusano 7d535a
link|lin|li|l)
kusano 7d535a
  shift; set dummy --mode link ${1+"$@"}; shift
kusano 7d535a
  ;;
kusano 7d535a
uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
kusano 7d535a
  shift; set dummy --mode uninstall ${1+"$@"}; shift
kusano 7d535a
  ;;
kusano 7d535a
esac
kusano 7d535a
kusano 7d535a
kusano 7d535a
kusano 7d535a
# Option defaults:
kusano 7d535a
opt_debug=:
kusano 7d535a
opt_dry_run=false
kusano 7d535a
opt_config=false
kusano 7d535a
opt_preserve_dup_deps=false
kusano 7d535a
opt_features=false
kusano 7d535a
opt_finish=false
kusano 7d535a
opt_help=false
kusano 7d535a
opt_help_all=false
kusano 7d535a
opt_silent=:
kusano 7d535a
opt_warning=:
kusano 7d535a
opt_verbose=:
kusano 7d535a
opt_silent=false
kusano 7d535a
opt_verbose=false
kusano 7d535a
kusano 7d535a
kusano 7d535a
# Parse options once, thoroughly.  This comes as soon as possible in the
kusano 7d535a
# script to make things like `--version' happen as quickly as we can.
kusano 7d535a
{
kusano 7d535a
  # this just eases exit handling
kusano 7d535a
  while test $# -gt 0; do
kusano 7d535a
    opt="$1"
kusano 7d535a
    shift
kusano 7d535a
    case $opt in
kusano 7d535a
      --debug|-x)	opt_debug='set -x'
kusano 7d535a
			func_echo "enabling shell trace mode"
kusano 7d535a
			$opt_debug
kusano 7d535a
			;;
kusano 7d535a
      --dry-run|--dryrun|-n)
kusano 7d535a
			opt_dry_run=:
kusano 7d535a
			;;
kusano 7d535a
      --config)
kusano 7d535a
			opt_config=:
kusano 7d535a
func_config
kusano 7d535a
			;;
kusano 7d535a
      --dlopen|-dlopen)
kusano 7d535a
			optarg="$1"
kusano 7d535a
			opt_dlopen="${opt_dlopen+$opt_dlopen
kusano 7d535a
}$optarg"
kusano 7d535a
			shift
kusano 7d535a
			;;
kusano 7d535a
      --preserve-dup-deps)
kusano 7d535a
			opt_preserve_dup_deps=:
kusano 7d535a
			;;
kusano 7d535a
      --features)
kusano 7d535a
			opt_features=:
kusano 7d535a
func_features
kusano 7d535a
			;;
kusano 7d535a
      --finish)
kusano 7d535a
			opt_finish=:
kusano 7d535a
set dummy --mode finish ${1+"$@"}; shift
kusano 7d535a
			;;
kusano 7d535a
      --help)
kusano 7d535a
			opt_help=:
kusano 7d535a
			;;
kusano 7d535a
      --help-all)
kusano 7d535a
			opt_help_all=:
kusano 7d535a
opt_help=': help-all'
kusano 7d535a
			;;
kusano 7d535a
      --mode)
kusano 7d535a
			test $# = 0 && func_missing_arg $opt && break
kusano 7d535a
			optarg="$1"
kusano 7d535a
			opt_mode="$optarg"
kusano 7d535a
case $optarg in
kusano 7d535a
  # Valid mode arguments:
kusano 7d535a
  clean|compile|execute|finish|install|link|relink|uninstall) ;;
kusano 7d535a
kusano 7d535a
  # Catch anything else as an error
kusano 7d535a
  *) func_error "invalid argument for $opt"
kusano 7d535a
     exit_cmd=exit
kusano 7d535a
     break
kusano 7d535a
     ;;
kusano 7d535a
esac
kusano 7d535a
			shift
kusano 7d535a
			;;
kusano 7d535a
      --no-silent|--no-quiet)
kusano 7d535a
			opt_silent=false
kusano 7d535a
func_append preserve_args " $opt"
kusano 7d535a
			;;
kusano 7d535a
      --no-warning|--no-warn)
kusano 7d535a
			opt_warning=false
kusano 7d535a
func_append preserve_args " $opt"
kusano 7d535a
			;;
kusano 7d535a
      --no-verbose)
kusano 7d535a
			opt_verbose=false
kusano 7d535a
func_append preserve_args " $opt"
kusano 7d535a
			;;
kusano 7d535a
      --silent|--quiet)
kusano 7d535a
			opt_silent=:
kusano 7d535a
func_append preserve_args " $opt"
kusano 7d535a
        opt_verbose=false
kusano 7d535a
			;;
kusano 7d535a
      --verbose|-v)
kusano 7d535a
			opt_verbose=:
kusano 7d535a
func_append preserve_args " $opt"
kusano 7d535a
opt_silent=false
kusano 7d535a
			;;
kusano 7d535a
      --tag)
kusano 7d535a
			test $# = 0 && func_missing_arg $opt && break
kusano 7d535a
			optarg="$1"
kusano 7d535a
			opt_tag="$optarg"
kusano 7d535a
func_append preserve_args " $opt $optarg"
kusano 7d535a
func_enable_tag "$optarg"
kusano 7d535a
			shift
kusano 7d535a
			;;
kusano 7d535a
kusano 7d535a
      -\?|-h)		func_usage				;;
kusano 7d535a
      --help)		func_help				;;
kusano 7d535a
      --version)	func_version				;;
kusano 7d535a
kusano 7d535a
      # Separate optargs to long options:
kusano 7d535a
      --*=*)
kusano 7d535a
			func_split_long_opt "$opt"
kusano 7d535a
			set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"}
kusano 7d535a
			shift
kusano 7d535a
			;;
kusano 7d535a
kusano 7d535a
      # Separate non-argument short options:
kusano 7d535a
      -\?*|-h*|-n*|-v*)
kusano 7d535a
			func_split_short_opt "$opt"
kusano 7d535a
			set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"}
kusano 7d535a
			shift
kusano 7d535a
			;;
kusano 7d535a
kusano 7d535a
      --)		break					;;
kusano 7d535a
      -*)		func_fatal_help "unrecognized option \`$opt'" ;;
kusano 7d535a
      *)		set dummy "$opt" ${1+"$@"};	shift; break  ;;
kusano 7d535a
    esac
kusano 7d535a
  done
kusano 7d535a
kusano 7d535a
  # Validate options:
kusano 7d535a
kusano 7d535a
  # save first non-option argument
kusano 7d535a
  if test "$#" -gt 0; then
kusano 7d535a
    nonopt="$opt"
kusano 7d535a
    shift
kusano 7d535a
  fi
kusano 7d535a
kusano 7d535a
  # preserve --debug
kusano 7d535a
  test "$opt_debug" = : || func_append preserve_args " --debug"
kusano 7d535a
kusano 7d535a
  case $host in
kusano 7d535a
    *cygwin* | *mingw* | *pw32* | *cegcc*)
kusano 7d535a
      # don't eliminate duplications in $postdeps and $predeps
kusano 7d535a
      opt_duplicate_compiler_generated_deps=:
kusano 7d535a
      ;;
kusano 7d535a
    *)
kusano 7d535a
      opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
kusano 7d535a
      ;;
kusano 7d535a
  esac
kusano 7d535a
kusano 7d535a
  $opt_help || {
kusano 7d535a
    # Sanity checks first:
kusano 7d535a
    func_check_version_match
kusano 7d535a
kusano 7d535a
    if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
kusano 7d535a
      func_fatal_configuration "not configured to build any kind of library"
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # Darwin sucks
kusano 7d535a
    eval std_shrext=\"$shrext_cmds\"
kusano 7d535a
kusano 7d535a
    # Only execute mode is allowed to have -dlopen flags.
kusano 7d535a
    if test -n "$opt_dlopen" && test "$opt_mode" != execute; then
kusano 7d535a
      func_error "unrecognized option \`-dlopen'"
kusano 7d535a
      $ECHO "$help" 1>&2
kusano 7d535a
      exit $EXIT_FAILURE
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # Change the help message to a mode-specific one.
kusano 7d535a
    generic_help="$help"
kusano 7d535a
    help="Try \`$progname --help --mode=$opt_mode' for more information."
kusano 7d535a
  }
kusano 7d535a
kusano 7d535a
kusano 7d535a
  # Bail if the options were screwed
kusano 7d535a
  $exit_cmd $EXIT_FAILURE
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
kusano 7d535a
kusano 7d535a
## ----------- ##
kusano 7d535a
##    Main.    ##
kusano 7d535a
## ----------- ##
kusano 7d535a
kusano 7d535a
# func_lalib_p file
kusano 7d535a
# True iff FILE is a libtool `.la' library or `.lo' object file.
kusano 7d535a
# This function is only a basic sanity check; it will hardly flush out
kusano 7d535a
# determined imposters.
kusano 7d535a
func_lalib_p ()
kusano 7d535a
{
kusano 7d535a
    test -f "$1" &&
kusano 7d535a
      $SED -e 4q "$1" 2>/dev/null \
kusano 7d535a
        | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_lalib_unsafe_p file
kusano 7d535a
# True iff FILE is a libtool `.la' library or `.lo' object file.
kusano 7d535a
# This function implements the same check as func_lalib_p without
kusano 7d535a
# resorting to external programs.  To this end, it redirects stdin and
kusano 7d535a
# closes it afterwards, without saving the original file descriptor.
kusano 7d535a
# As a safety measure, use it only where a negative result would be
kusano 7d535a
# fatal anyway.  Works if `file' does not exist.
kusano 7d535a
func_lalib_unsafe_p ()
kusano 7d535a
{
kusano 7d535a
    lalib_p=no
kusano 7d535a
    if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then
kusano 7d535a
	for lalib_p_l in 1 2 3 4
kusano 7d535a
	do
kusano 7d535a
	    read lalib_p_line
kusano 7d535a
	    case "$lalib_p_line" in
kusano 7d535a
		\#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
kusano 7d535a
	    esac
kusano 7d535a
	done
kusano 7d535a
	exec 0<&5 5<&-
kusano 7d535a
    fi
kusano 7d535a
    test "$lalib_p" = yes
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_ltwrapper_script_p file
kusano 7d535a
# True iff FILE is a libtool wrapper script
kusano 7d535a
# This function is only a basic sanity check; it will hardly flush out
kusano 7d535a
# determined imposters.
kusano 7d535a
func_ltwrapper_script_p ()
kusano 7d535a
{
kusano 7d535a
    func_lalib_p "$1"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_ltwrapper_executable_p file
kusano 7d535a
# True iff FILE is a libtool wrapper executable
kusano 7d535a
# This function is only a basic sanity check; it will hardly flush out
kusano 7d535a
# determined imposters.
kusano 7d535a
func_ltwrapper_executable_p ()
kusano 7d535a
{
kusano 7d535a
    func_ltwrapper_exec_suffix=
kusano 7d535a
    case $1 in
kusano 7d535a
    *.exe) ;;
kusano 7d535a
    *) func_ltwrapper_exec_suffix=.exe ;;
kusano 7d535a
    esac
kusano 7d535a
    $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_ltwrapper_scriptname file
kusano 7d535a
# Assumes file is an ltwrapper_executable
kusano 7d535a
# uses $file to determine the appropriate filename for a
kusano 7d535a
# temporary ltwrapper_script.
kusano 7d535a
func_ltwrapper_scriptname ()
kusano 7d535a
{
kusano 7d535a
    func_dirname_and_basename "$1" "" "."
kusano 7d535a
    func_stripname '' '.exe' "$func_basename_result"
kusano 7d535a
    func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_ltwrapper_p file
kusano 7d535a
# True iff FILE is a libtool wrapper script or wrapper executable
kusano 7d535a
# This function is only a basic sanity check; it will hardly flush out
kusano 7d535a
# determined imposters.
kusano 7d535a
func_ltwrapper_p ()
kusano 7d535a
{
kusano 7d535a
    func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_execute_cmds commands fail_cmd
kusano 7d535a
# Execute tilde-delimited COMMANDS.
kusano 7d535a
# If FAIL_CMD is given, eval that upon failure.
kusano 7d535a
# FAIL_CMD may read-access the current command in variable CMD!
kusano 7d535a
func_execute_cmds ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    save_ifs=$IFS; IFS='~'
kusano 7d535a
    for cmd in $1; do
kusano 7d535a
      IFS=$save_ifs
kusano 7d535a
      eval cmd=\"$cmd\"
kusano 7d535a
      func_show_eval "$cmd" "${2-:}"
kusano 7d535a
    done
kusano 7d535a
    IFS=$save_ifs
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_source file
kusano 7d535a
# Source FILE, adding directory component if necessary.
kusano 7d535a
# Note that it is not necessary on cygwin/mingw to append a dot to
kusano 7d535a
# FILE even if both FILE and FILE.exe exist: automatic-append-.exe
kusano 7d535a
# behavior happens only for exec(3), not for open(2)!  Also, sourcing
kusano 7d535a
# `FILE.' does not work on cygwin managed mounts.
kusano 7d535a
func_source ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    case $1 in
kusano 7d535a
    */* | *\\*)	. "$1" ;;
kusano 7d535a
    *)		. "./$1" ;;
kusano 7d535a
    esac
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_resolve_sysroot PATH
kusano 7d535a
# Replace a leading = in PATH with a sysroot.  Store the result into
kusano 7d535a
# func_resolve_sysroot_result
kusano 7d535a
func_resolve_sysroot ()
kusano 7d535a
{
kusano 7d535a
  func_resolve_sysroot_result=$1
kusano 7d535a
  case $func_resolve_sysroot_result in
kusano 7d535a
  =*)
kusano 7d535a
    func_stripname '=' '' "$func_resolve_sysroot_result"
kusano 7d535a
    func_resolve_sysroot_result=$lt_sysroot$func_stripname_result
kusano 7d535a
    ;;
kusano 7d535a
  esac
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_replace_sysroot PATH
kusano 7d535a
# If PATH begins with the sysroot, replace it with = and
kusano 7d535a
# store the result into func_replace_sysroot_result.
kusano 7d535a
func_replace_sysroot ()
kusano 7d535a
{
kusano 7d535a
  case "$lt_sysroot:$1" in
kusano 7d535a
  ?*:"$lt_sysroot"*)
kusano 7d535a
    func_stripname "$lt_sysroot" '' "$1"
kusano 7d535a
    func_replace_sysroot_result="=$func_stripname_result"
kusano 7d535a
    ;;
kusano 7d535a
  *)
kusano 7d535a
    # Including no sysroot.
kusano 7d535a
    func_replace_sysroot_result=$1
kusano 7d535a
    ;;
kusano 7d535a
  esac
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_infer_tag arg
kusano 7d535a
# Infer tagged configuration to use if any are available and
kusano 7d535a
# if one wasn't chosen via the "--tag" command line option.
kusano 7d535a
# Only attempt this if the compiler in the base compile
kusano 7d535a
# command doesn't match the default compiler.
kusano 7d535a
# arg is usually of the form 'gcc ...'
kusano 7d535a
func_infer_tag ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    if test -n "$available_tags" && test -z "$tagname"; then
kusano 7d535a
      CC_quoted=
kusano 7d535a
      for arg in $CC; do
kusano 7d535a
	func_append_quoted CC_quoted "$arg"
kusano 7d535a
      done
kusano 7d535a
      CC_expanded=`func_echo_all $CC`
kusano 7d535a
      CC_quoted_expanded=`func_echo_all $CC_quoted`
kusano 7d535a
      case $@ in
kusano 7d535a
      # Blanks in the command may have been stripped by the calling shell,
kusano 7d535a
      # but not from the CC environment variable when configure was run.
kusano 7d535a
      " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \
kusano 7d535a
      " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;;
kusano 7d535a
      # Blanks at the start of $base_compile will cause this to fail
kusano 7d535a
      # if we don't check for them as well.
kusano 7d535a
      *)
kusano 7d535a
	for z in $available_tags; do
kusano 7d535a
	  if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
kusano 7d535a
	    # Evaluate the configuration.
kusano 7d535a
	    eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
kusano 7d535a
	    CC_quoted=
kusano 7d535a
	    for arg in $CC; do
kusano 7d535a
	      # Double-quote args containing other shell metacharacters.
kusano 7d535a
	      func_append_quoted CC_quoted "$arg"
kusano 7d535a
	    done
kusano 7d535a
	    CC_expanded=`func_echo_all $CC`
kusano 7d535a
	    CC_quoted_expanded=`func_echo_all $CC_quoted`
kusano 7d535a
	    case "$@ " in
kusano 7d535a
	    " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \
kusano 7d535a
	    " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*)
kusano 7d535a
	      # The compiler in the base compile command matches
kusano 7d535a
	      # the one in the tagged configuration.
kusano 7d535a
	      # Assume this is the tagged configuration we want.
kusano 7d535a
	      tagname=$z
kusano 7d535a
	      break
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	  fi
kusano 7d535a
	done
kusano 7d535a
	# If $tagname still isn't set, then no tagged configuration
kusano 7d535a
	# was found and let the user know that the "--tag" command
kusano 7d535a
	# line option must be used.
kusano 7d535a
	if test -z "$tagname"; then
kusano 7d535a
	  func_echo "unable to infer tagged configuration"
kusano 7d535a
	  func_fatal_error "specify a tag with \`--tag'"
kusano 7d535a
#	else
kusano 7d535a
#	  func_verbose "using $tagname tagged configuration"
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_write_libtool_object output_name pic_name nonpic_name
kusano 7d535a
# Create a libtool object file (analogous to a ".la" file),
kusano 7d535a
# but don't create it if we're doing a dry run.
kusano 7d535a
func_write_libtool_object ()
kusano 7d535a
{
kusano 7d535a
    write_libobj=${1}
kusano 7d535a
    if test "$build_libtool_libs" = yes; then
kusano 7d535a
      write_lobj=\'${2}\'
kusano 7d535a
    else
kusano 7d535a
      write_lobj=none
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    if test "$build_old_libs" = yes; then
kusano 7d535a
      write_oldobj=\'${3}\'
kusano 7d535a
    else
kusano 7d535a
      write_oldobj=none
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    $opt_dry_run || {
kusano 7d535a
      cat >${write_libobj}T <<EOF
kusano 7d535a
# $write_libobj - a libtool object file
kusano 7d535a
# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
kusano 7d535a
#
kusano 7d535a
# Please DO NOT delete this file!
kusano 7d535a
# It is necessary for linking the library.
kusano 7d535a
kusano 7d535a
# Name of the PIC object.
kusano 7d535a
pic_object=$write_lobj
kusano 7d535a
kusano 7d535a
# Name of the non-PIC object
kusano 7d535a
non_pic_object=$write_oldobj
kusano 7d535a
kusano 7d535a
EOF
kusano 7d535a
      $MV "${write_libobj}T" "${write_libobj}"
kusano 7d535a
    }
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
##################################################
kusano 7d535a
# FILE NAME AND PATH CONVERSION HELPER FUNCTIONS #
kusano 7d535a
##################################################
kusano 7d535a
kusano 7d535a
# func_convert_core_file_wine_to_w32 ARG
kusano 7d535a
# Helper function used by file name conversion functions when $build is *nix,
kusano 7d535a
# and $host is mingw, cygwin, or some other w32 environment. Relies on a
kusano 7d535a
# correctly configured wine environment available, with the winepath program
kusano 7d535a
# in $build's $PATH.
kusano 7d535a
#
kusano 7d535a
# ARG is the $build file name to be converted to w32 format.
kusano 7d535a
# Result is available in $func_convert_core_file_wine_to_w32_result, and will
kusano 7d535a
# be empty on error (or when ARG is empty)
kusano 7d535a
func_convert_core_file_wine_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_convert_core_file_wine_to_w32_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    # Unfortunately, winepath does not exit with a non-zero error code, so we
kusano 7d535a
    # are forced to check the contents of stdout. On the other hand, if the
kusano 7d535a
    # command is not found, the shell will set an exit code of 127 and print
kusano 7d535a
    # *an error message* to stdout. So we must check for both error code of
kusano 7d535a
    # zero AND non-empty stdout, which explains the odd construction:
kusano 7d535a
    func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/dev/null`
kusano 7d535a
    if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then
kusano 7d535a
      func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" |
kusano 7d535a
        $SED -e "$lt_sed_naive_backslashify"`
kusano 7d535a
    else
kusano 7d535a
      func_convert_core_file_wine_to_w32_result=
kusano 7d535a
    fi
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end: func_convert_core_file_wine_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_core_path_wine_to_w32 ARG
kusano 7d535a
# Helper function used by path conversion functions when $build is *nix, and
kusano 7d535a
# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly
kusano 7d535a
# configured wine environment available, with the winepath program in $build's
kusano 7d535a
# $PATH. Assumes ARG has no leading or trailing path separator characters.
kusano 7d535a
#
kusano 7d535a
# ARG is path to be converted from $build format to win32.
kusano 7d535a
# Result is available in $func_convert_core_path_wine_to_w32_result.
kusano 7d535a
# Unconvertible file (directory) names in ARG are skipped; if no directory names
kusano 7d535a
# are convertible, then the result may be empty.
kusano 7d535a
func_convert_core_path_wine_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  # unfortunately, winepath doesn't convert paths, only file names
kusano 7d535a
  func_convert_core_path_wine_to_w32_result=""
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    oldIFS=$IFS
kusano 7d535a
    IFS=:
kusano 7d535a
    for func_convert_core_path_wine_to_w32_f in $1; do
kusano 7d535a
      IFS=$oldIFS
kusano 7d535a
      func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f"
kusano 7d535a
      if test -n "$func_convert_core_file_wine_to_w32_result" ; then
kusano 7d535a
        if test -z "$func_convert_core_path_wine_to_w32_result"; then
kusano 7d535a
          func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result"
kusano 7d535a
        else
kusano 7d535a
          func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result"
kusano 7d535a
        fi
kusano 7d535a
      fi
kusano 7d535a
    done
kusano 7d535a
    IFS=$oldIFS
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end: func_convert_core_path_wine_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_cygpath ARGS...
kusano 7d535a
# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when
kusano 7d535a
# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2)
kusano 7d535a
# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or
kusano 7d535a
# (2), returns the Cygwin file name or path in func_cygpath_result (input
kusano 7d535a
# file name or path is assumed to be in w32 format, as previously converted
kusano 7d535a
# from $build's *nix or MSYS format). In case (3), returns the w32 file name
kusano 7d535a
# or path in func_cygpath_result (input file name or path is assumed to be in
kusano 7d535a
# Cygwin format). Returns an empty string on error.
kusano 7d535a
#
kusano 7d535a
# ARGS are passed to cygpath, with the last one being the file name or path to
kusano 7d535a
# be converted.
kusano 7d535a
#
kusano 7d535a
# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH
kusano 7d535a
# environment variable; do not put it in $PATH.
kusano 7d535a
func_cygpath ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then
kusano 7d535a
    func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null`
kusano 7d535a
    if test "$?" -ne 0; then
kusano 7d535a
      # on failure, ensure result is empty
kusano 7d535a
      func_cygpath_result=
kusano 7d535a
    fi
kusano 7d535a
  else
kusano 7d535a
    func_cygpath_result=
kusano 7d535a
    func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'"
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
#end: func_cygpath
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_core_msys_to_w32 ARG
kusano 7d535a
# Convert file name or path ARG from MSYS format to w32 format.  Return
kusano 7d535a
# result in func_convert_core_msys_to_w32_result.
kusano 7d535a
func_convert_core_msys_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  # awkward: cmd appends spaces to result
kusano 7d535a
  func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
kusano 7d535a
    $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"`
kusano 7d535a
}
kusano 7d535a
#end: func_convert_core_msys_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_file_check ARG1 ARG2
kusano 7d535a
# Verify that ARG1 (a file name in $build format) was converted to $host
kusano 7d535a
# format in ARG2. Otherwise, emit an error message, but continue (resetting
kusano 7d535a
# func_to_host_file_result to ARG1).
kusano 7d535a
func_convert_file_check ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  if test -z "$2" && test -n "$1" ; then
kusano 7d535a
    func_error "Could not determine host file name corresponding to"
kusano 7d535a
    func_error "  \`$1'"
kusano 7d535a
    func_error "Continuing, but uninstalled executables may not work."
kusano 7d535a
    # Fallback:
kusano 7d535a
    func_to_host_file_result="$1"
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end func_convert_file_check
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH
kusano 7d535a
# Verify that FROM_PATH (a path in $build format) was converted to $host
kusano 7d535a
# format in TO_PATH. Otherwise, emit an error message, but continue, resetting
kusano 7d535a
# func_to_host_file_result to a simplistic fallback value (see below).
kusano 7d535a
func_convert_path_check ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  if test -z "$4" && test -n "$3"; then
kusano 7d535a
    func_error "Could not determine the host path corresponding to"
kusano 7d535a
    func_error "  \`$3'"
kusano 7d535a
    func_error "Continuing, but uninstalled executables may not work."
kusano 7d535a
    # Fallback.  This is a deliberately simplistic "conversion" and
kusano 7d535a
    # should not be "improved".  See libtool.info.
kusano 7d535a
    if test "x$1" != "x$2"; then
kusano 7d535a
      lt_replace_pathsep_chars="s|$1|$2|g"
kusano 7d535a
      func_to_host_path_result=`echo "$3" |
kusano 7d535a
        $SED -e "$lt_replace_pathsep_chars"`
kusano 7d535a
    else
kusano 7d535a
      func_to_host_path_result="$3"
kusano 7d535a
    fi
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end func_convert_path_check
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG
kusano 7d535a
# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT
kusano 7d535a
# and appending REPL if ORIG matches BACKPAT.
kusano 7d535a
func_convert_path_front_back_pathsep ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  case $4 in
kusano 7d535a
  $1 ) func_to_host_path_result="$3$func_to_host_path_result"
kusano 7d535a
    ;;
kusano 7d535a
  esac
kusano 7d535a
  case $4 in
kusano 7d535a
  $2 ) func_append func_to_host_path_result "$3"
kusano 7d535a
    ;;
kusano 7d535a
  esac
kusano 7d535a
}
kusano 7d535a
# end func_convert_path_front_back_pathsep
kusano 7d535a
kusano 7d535a
kusano 7d535a
##################################################
kusano 7d535a
# $build to $host FILE NAME CONVERSION FUNCTIONS #
kusano 7d535a
##################################################
kusano 7d535a
# invoked via `$to_host_file_cmd ARG'
kusano 7d535a
#
kusano 7d535a
# In each case, ARG is the path to be converted from $build to $host format.
kusano 7d535a
# Result will be available in $func_to_host_file_result.
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_to_host_file ARG
kusano 7d535a
# Converts the file name ARG from $build format to $host format. Return result
kusano 7d535a
# in func_to_host_file_result.
kusano 7d535a
func_to_host_file ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  $to_host_file_cmd "$1"
kusano 7d535a
}
kusano 7d535a
# end func_to_host_file
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_to_tool_file ARG LAZY
kusano 7d535a
# converts the file name ARG from $build format to toolchain format. Return
kusano 7d535a
# result in func_to_tool_file_result.  If the conversion in use is listed
kusano 7d535a
# in (the comma separated) LAZY, no conversion takes place.
kusano 7d535a
func_to_tool_file ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  case ,$2, in
kusano 7d535a
    *,"$to_tool_file_cmd",*)
kusano 7d535a
      func_to_tool_file_result=$1
kusano 7d535a
      ;;
kusano 7d535a
    *)
kusano 7d535a
      $to_tool_file_cmd "$1"
kusano 7d535a
      func_to_tool_file_result=$func_to_host_file_result
kusano 7d535a
      ;;
kusano 7d535a
  esac
kusano 7d535a
}
kusano 7d535a
# end func_to_tool_file
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_file_noop ARG
kusano 7d535a
# Copy ARG to func_to_host_file_result.
kusano 7d535a
func_convert_file_noop ()
kusano 7d535a
{
kusano 7d535a
  func_to_host_file_result="$1"
kusano 7d535a
}
kusano 7d535a
# end func_convert_file_noop
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_file_msys_to_w32 ARG
kusano 7d535a
# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic
kusano 7d535a
# conversion to w32 is not available inside the cwrapper.  Returns result in
kusano 7d535a
# func_to_host_file_result.
kusano 7d535a
func_convert_file_msys_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_file_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    func_convert_core_msys_to_w32 "$1"
kusano 7d535a
    func_to_host_file_result="$func_convert_core_msys_to_w32_result"
kusano 7d535a
  fi
kusano 7d535a
  func_convert_file_check "$1" "$func_to_host_file_result"
kusano 7d535a
}
kusano 7d535a
# end func_convert_file_msys_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_file_cygwin_to_w32 ARG
kusano 7d535a
# Convert file name ARG from Cygwin to w32 format.  Returns result in
kusano 7d535a
# func_to_host_file_result.
kusano 7d535a
func_convert_file_cygwin_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_file_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    # because $build is cygwin, we call "the" cygpath in $PATH; no need to use
kusano 7d535a
    # LT_CYGPATH in this case.
kusano 7d535a
    func_to_host_file_result=`cygpath -m "$1"`
kusano 7d535a
  fi
kusano 7d535a
  func_convert_file_check "$1" "$func_to_host_file_result"
kusano 7d535a
}
kusano 7d535a
# end func_convert_file_cygwin_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_file_nix_to_w32 ARG
kusano 7d535a
# Convert file name ARG from *nix to w32 format.  Requires a wine environment
kusano 7d535a
# and a working winepath. Returns result in func_to_host_file_result.
kusano 7d535a
func_convert_file_nix_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_file_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    func_convert_core_file_wine_to_w32 "$1"
kusano 7d535a
    func_to_host_file_result="$func_convert_core_file_wine_to_w32_result"
kusano 7d535a
  fi
kusano 7d535a
  func_convert_file_check "$1" "$func_to_host_file_result"
kusano 7d535a
}
kusano 7d535a
# end func_convert_file_nix_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_file_msys_to_cygwin ARG
kusano 7d535a
# Convert file name ARG from MSYS to Cygwin format.  Requires LT_CYGPATH set.
kusano 7d535a
# Returns result in func_to_host_file_result.
kusano 7d535a
func_convert_file_msys_to_cygwin ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_file_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    func_convert_core_msys_to_w32 "$1"
kusano 7d535a
    func_cygpath -u "$func_convert_core_msys_to_w32_result"
kusano 7d535a
    func_to_host_file_result="$func_cygpath_result"
kusano 7d535a
  fi
kusano 7d535a
  func_convert_file_check "$1" "$func_to_host_file_result"
kusano 7d535a
}
kusano 7d535a
# end func_convert_file_msys_to_cygwin
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_file_nix_to_cygwin ARG
kusano 7d535a
# Convert file name ARG from *nix to Cygwin format.  Requires Cygwin installed
kusano 7d535a
# in a wine environment, working winepath, and LT_CYGPATH set.  Returns result
kusano 7d535a
# in func_to_host_file_result.
kusano 7d535a
func_convert_file_nix_to_cygwin ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_file_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    # convert from *nix to w32, then use cygpath to convert from w32 to cygwin.
kusano 7d535a
    func_convert_core_file_wine_to_w32 "$1"
kusano 7d535a
    func_cygpath -u "$func_convert_core_file_wine_to_w32_result"
kusano 7d535a
    func_to_host_file_result="$func_cygpath_result"
kusano 7d535a
  fi
kusano 7d535a
  func_convert_file_check "$1" "$func_to_host_file_result"
kusano 7d535a
}
kusano 7d535a
# end func_convert_file_nix_to_cygwin
kusano 7d535a
kusano 7d535a
kusano 7d535a
#############################################
kusano 7d535a
# $build to $host PATH CONVERSION FUNCTIONS #
kusano 7d535a
#############################################
kusano 7d535a
# invoked via `$to_host_path_cmd ARG'
kusano 7d535a
#
kusano 7d535a
# In each case, ARG is the path to be converted from $build to $host format.
kusano 7d535a
# The result will be available in $func_to_host_path_result.
kusano 7d535a
#
kusano 7d535a
# Path separators are also converted from $build format to $host format.  If
kusano 7d535a
# ARG begins or ends with a path separator character, it is preserved (but
kusano 7d535a
# converted to $host format) on output.
kusano 7d535a
#
kusano 7d535a
# All path conversion functions are named using the following convention:
kusano 7d535a
#   file name conversion function    : func_convert_file_X_to_Y ()
kusano 7d535a
#   path conversion function         : func_convert_path_X_to_Y ()
kusano 7d535a
# where, for any given $build/$host combination the 'X_to_Y' value is the
kusano 7d535a
# same.  If conversion functions are added for new $build/$host combinations,
kusano 7d535a
# the two new functions must follow this pattern, or func_init_to_host_path_cmd
kusano 7d535a
# will break.
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_init_to_host_path_cmd
kusano 7d535a
# Ensures that function "pointer" variable $to_host_path_cmd is set to the
kusano 7d535a
# appropriate value, based on the value of $to_host_file_cmd.
kusano 7d535a
to_host_path_cmd=
kusano 7d535a
func_init_to_host_path_cmd ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  if test -z "$to_host_path_cmd"; then
kusano 7d535a
    func_stripname 'func_convert_file_' '' "$to_host_file_cmd"
kusano 7d535a
    to_host_path_cmd="func_convert_path_${func_stripname_result}"
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_to_host_path ARG
kusano 7d535a
# Converts the path ARG from $build format to $host format. Return result
kusano 7d535a
# in func_to_host_path_result.
kusano 7d535a
func_to_host_path ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_init_to_host_path_cmd
kusano 7d535a
  $to_host_path_cmd "$1"
kusano 7d535a
}
kusano 7d535a
# end func_to_host_path
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_path_noop ARG
kusano 7d535a
# Copy ARG to func_to_host_path_result.
kusano 7d535a
func_convert_path_noop ()
kusano 7d535a
{
kusano 7d535a
  func_to_host_path_result="$1"
kusano 7d535a
}
kusano 7d535a
# end func_convert_path_noop
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_path_msys_to_w32 ARG
kusano 7d535a
# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic
kusano 7d535a
# conversion to w32 is not available inside the cwrapper.  Returns result in
kusano 7d535a
# func_to_host_path_result.
kusano 7d535a
func_convert_path_msys_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_path_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    # Remove leading and trailing path separator characters from ARG.  MSYS
kusano 7d535a
    # behavior is inconsistent here; cygpath turns them into '.;' and ';.';
kusano 7d535a
    # and winepath ignores them completely.
kusano 7d535a
    func_stripname : : "$1"
kusano 7d535a
    func_to_host_path_tmp1=$func_stripname_result
kusano 7d535a
    func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
kusano 7d535a
    func_to_host_path_result="$func_convert_core_msys_to_w32_result"
kusano 7d535a
    func_convert_path_check : ";" \
kusano 7d535a
      "$func_to_host_path_tmp1" "$func_to_host_path_result"
kusano 7d535a
    func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end func_convert_path_msys_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_path_cygwin_to_w32 ARG
kusano 7d535a
# Convert path ARG from Cygwin to w32 format.  Returns result in
kusano 7d535a
# func_to_host_file_result.
kusano 7d535a
func_convert_path_cygwin_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_path_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    # See func_convert_path_msys_to_w32:
kusano 7d535a
    func_stripname : : "$1"
kusano 7d535a
    func_to_host_path_tmp1=$func_stripname_result
kusano 7d535a
    func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"`
kusano 7d535a
    func_convert_path_check : ";" \
kusano 7d535a
      "$func_to_host_path_tmp1" "$func_to_host_path_result"
kusano 7d535a
    func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end func_convert_path_cygwin_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_path_nix_to_w32 ARG
kusano 7d535a
# Convert path ARG from *nix to w32 format.  Requires a wine environment and
kusano 7d535a
# a working winepath.  Returns result in func_to_host_file_result.
kusano 7d535a
func_convert_path_nix_to_w32 ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_path_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    # See func_convert_path_msys_to_w32:
kusano 7d535a
    func_stripname : : "$1"
kusano 7d535a
    func_to_host_path_tmp1=$func_stripname_result
kusano 7d535a
    func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
kusano 7d535a
    func_to_host_path_result="$func_convert_core_path_wine_to_w32_result"
kusano 7d535a
    func_convert_path_check : ";" \
kusano 7d535a
      "$func_to_host_path_tmp1" "$func_to_host_path_result"
kusano 7d535a
    func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end func_convert_path_nix_to_w32
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_path_msys_to_cygwin ARG
kusano 7d535a
# Convert path ARG from MSYS to Cygwin format.  Requires LT_CYGPATH set.
kusano 7d535a
# Returns result in func_to_host_file_result.
kusano 7d535a
func_convert_path_msys_to_cygwin ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_path_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    # See func_convert_path_msys_to_w32:
kusano 7d535a
    func_stripname : : "$1"
kusano 7d535a
    func_to_host_path_tmp1=$func_stripname_result
kusano 7d535a
    func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
kusano 7d535a
    func_cygpath -u -p "$func_convert_core_msys_to_w32_result"
kusano 7d535a
    func_to_host_path_result="$func_cygpath_result"
kusano 7d535a
    func_convert_path_check : : \
kusano 7d535a
      "$func_to_host_path_tmp1" "$func_to_host_path_result"
kusano 7d535a
    func_convert_path_front_back_pathsep ":*" "*:" : "$1"
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end func_convert_path_msys_to_cygwin
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_convert_path_nix_to_cygwin ARG
kusano 7d535a
# Convert path ARG from *nix to Cygwin format.  Requires Cygwin installed in a
kusano 7d535a
# a wine environment, working winepath, and LT_CYGPATH set.  Returns result in
kusano 7d535a
# func_to_host_file_result.
kusano 7d535a
func_convert_path_nix_to_cygwin ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_host_path_result="$1"
kusano 7d535a
  if test -n "$1"; then
kusano 7d535a
    # Remove leading and trailing path separator characters from
kusano 7d535a
    # ARG. msys behavior is inconsistent here, cygpath turns them
kusano 7d535a
    # into '.;' and ';.', and winepath ignores them completely.
kusano 7d535a
    func_stripname : : "$1"
kusano 7d535a
    func_to_host_path_tmp1=$func_stripname_result
kusano 7d535a
    func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
kusano 7d535a
    func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result"
kusano 7d535a
    func_to_host_path_result="$func_cygpath_result"
kusano 7d535a
    func_convert_path_check : : \
kusano 7d535a
      "$func_to_host_path_tmp1" "$func_to_host_path_result"
kusano 7d535a
    func_convert_path_front_back_pathsep ":*" "*:" : "$1"
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
# end func_convert_path_nix_to_cygwin
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_mode_compile arg...
kusano 7d535a
func_mode_compile ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    # Get the compilation command and the source file.
kusano 7d535a
    base_compile=
kusano 7d535a
    srcfile="$nonopt"  #  always keep a non-empty value in "srcfile"
kusano 7d535a
    suppress_opt=yes
kusano 7d535a
    suppress_output=
kusano 7d535a
    arg_mode=normal
kusano 7d535a
    libobj=
kusano 7d535a
    later=
kusano 7d535a
    pie_flag=
kusano 7d535a
kusano 7d535a
    for arg
kusano 7d535a
    do
kusano 7d535a
      case $arg_mode in
kusano 7d535a
      arg  )
kusano 7d535a
	# do not "continue".  Instead, add this to base_compile
kusano 7d535a
	lastarg="$arg"
kusano 7d535a
	arg_mode=normal
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      target )
kusano 7d535a
	libobj="$arg"
kusano 7d535a
	arg_mode=normal
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      normal )
kusano 7d535a
	# Accept any command-line options.
kusano 7d535a
	case $arg in
kusano 7d535a
	-o)
kusano 7d535a
	  test -n "$libobj" && \
kusano 7d535a
	    func_fatal_error "you cannot specify \`-o' more than once"
kusano 7d535a
	  arg_mode=target
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	-pie | -fpie | -fPIE)
kusano 7d535a
          func_append pie_flag " $arg"
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	-shared | -static | -prefer-pic | -prefer-non-pic)
kusano 7d535a
	  func_append later " $arg"
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	-no-suppress)
kusano 7d535a
	  suppress_opt=no
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	-Xcompiler)
kusano 7d535a
	  arg_mode=arg  #  the next one goes into the "base_compile" arg list
kusano 7d535a
	  continue      #  The current "srcfile" will either be retained or
kusano 7d535a
	  ;;            #  replaced later.  I would guess that would be a bug.
kusano 7d535a
kusano 7d535a
	-Wc,*)
kusano 7d535a
	  func_stripname '-Wc,' '' "$arg"
kusano 7d535a
	  args=$func_stripname_result
kusano 7d535a
	  lastarg=
kusano 7d535a
	  save_ifs="$IFS"; IFS=','
kusano 7d535a
	  for arg in $args; do
kusano 7d535a
	    IFS="$save_ifs"
kusano 7d535a
	    func_append_quoted lastarg "$arg"
kusano 7d535a
	  done
kusano 7d535a
	  IFS="$save_ifs"
kusano 7d535a
	  func_stripname ' ' '' "$lastarg"
kusano 7d535a
	  lastarg=$func_stripname_result
kusano 7d535a
kusano 7d535a
	  # Add the arguments to base_compile.
kusano 7d535a
	  func_append base_compile " $lastarg"
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	*)
kusano 7d535a
	  # Accept the current argument as the source file.
kusano 7d535a
	  # The previous "srcfile" becomes the current argument.
kusano 7d535a
	  #
kusano 7d535a
	  lastarg="$srcfile"
kusano 7d535a
	  srcfile="$arg"
kusano 7d535a
	  ;;
kusano 7d535a
	esac  #  case $arg
kusano 7d535a
	;;
kusano 7d535a
      esac    #  case $arg_mode
kusano 7d535a
kusano 7d535a
      # Aesthetically quote the previous argument.
kusano 7d535a
      func_append_quoted base_compile "$lastarg"
kusano 7d535a
    done # for arg
kusano 7d535a
kusano 7d535a
    case $arg_mode in
kusano 7d535a
    arg)
kusano 7d535a
      func_fatal_error "you must specify an argument for -Xcompile"
kusano 7d535a
      ;;
kusano 7d535a
    target)
kusano 7d535a
      func_fatal_error "you must specify a target with \`-o'"
kusano 7d535a
      ;;
kusano 7d535a
    *)
kusano 7d535a
      # Get the name of the library object.
kusano 7d535a
      test -z "$libobj" && {
kusano 7d535a
	func_basename "$srcfile"
kusano 7d535a
	libobj="$func_basename_result"
kusano 7d535a
      }
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    # Recognize several different file suffixes.
kusano 7d535a
    # If the user specifies -o file.o, it is replaced with file.lo
kusano 7d535a
    case $libobj in
kusano 7d535a
    *.[cCFSifmso] | \
kusano 7d535a
    *.ada | *.adb | *.ads | *.asm | \
kusano 7d535a
    *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
kusano 7d535a
    *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup)
kusano 7d535a
      func_xform "$libobj"
kusano 7d535a
      libobj=$func_xform_result
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    case $libobj in
kusano 7d535a
    *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
kusano 7d535a
    *)
kusano 7d535a
      func_fatal_error "cannot determine name of library object from \`$libobj'"
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    func_infer_tag $base_compile
kusano 7d535a
kusano 7d535a
    for arg in $later; do
kusano 7d535a
      case $arg in
kusano 7d535a
      -shared)
kusano 7d535a
	test "$build_libtool_libs" != yes && \
kusano 7d535a
	  func_fatal_configuration "can not build a shared library"
kusano 7d535a
	build_old_libs=no
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -static)
kusano 7d535a
	build_libtool_libs=no
kusano 7d535a
	build_old_libs=yes
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -prefer-pic)
kusano 7d535a
	pic_mode=yes
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -prefer-non-pic)
kusano 7d535a
	pic_mode=no
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    func_quote_for_eval "$libobj"
kusano 7d535a
    test "X$libobj" != "X$func_quote_for_eval_result" \
kusano 7d535a
      && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"'	 &()|`$[]' \
kusano 7d535a
      && func_warning "libobj name \`$libobj' may not contain shell special characters."
kusano 7d535a
    func_dirname_and_basename "$obj" "/" ""
kusano 7d535a
    objname="$func_basename_result"
kusano 7d535a
    xdir="$func_dirname_result"
kusano 7d535a
    lobj=${xdir}$objdir/$objname
kusano 7d535a
kusano 7d535a
    test -z "$base_compile" && \
kusano 7d535a
      func_fatal_help "you must specify a compilation command"
kusano 7d535a
kusano 7d535a
    # Delete any leftover library objects.
kusano 7d535a
    if test "$build_old_libs" = yes; then
kusano 7d535a
      removelist="$obj $lobj $libobj ${libobj}T"
kusano 7d535a
    else
kusano 7d535a
      removelist="$lobj $libobj ${libobj}T"
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # On Cygwin there's no "real" PIC flag so we must build both object types
kusano 7d535a
    case $host_os in
kusano 7d535a
    cygwin* | mingw* | pw32* | os2* | cegcc*)
kusano 7d535a
      pic_mode=default
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
    if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
kusano 7d535a
      # non-PIC code in shared libraries is not supported
kusano 7d535a
      pic_mode=default
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # Calculate the filename of the output object if compiler does
kusano 7d535a
    # not support -o with -c
kusano 7d535a
    if test "$compiler_c_o" = no; then
kusano 7d535a
      output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext}
kusano 7d535a
      lockfile="$output_obj.lock"
kusano 7d535a
    else
kusano 7d535a
      output_obj=
kusano 7d535a
      need_locks=no
kusano 7d535a
      lockfile=
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # Lock this critical section if it is needed
kusano 7d535a
    # We use this script file to make the link, it avoids creating a new file
kusano 7d535a
    if test "$need_locks" = yes; then
kusano 7d535a
      until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
kusano 7d535a
	func_echo "Waiting for $lockfile to be removed"
kusano 7d535a
	sleep 2
kusano 7d535a
      done
kusano 7d535a
    elif test "$need_locks" = warn; then
kusano 7d535a
      if test -f "$lockfile"; then
kusano 7d535a
	$ECHO "\
kusano 7d535a
*** ERROR, $lockfile exists and contains:
kusano 7d535a
`cat $lockfile 2>/dev/null`
kusano 7d535a
kusano 7d535a
This indicates that another process is trying to use the same
kusano 7d535a
temporary object file, and libtool could not work around it because
kusano 7d535a
your compiler does not support \`-c' and \`-o' together.  If you
kusano 7d535a
repeat this compilation, it may succeed, by chance, but you had better
kusano 7d535a
avoid parallel builds (make -j) in this platform, or get a better
kusano 7d535a
compiler."
kusano 7d535a
kusano 7d535a
	$opt_dry_run || $RM $removelist
kusano 7d535a
	exit $EXIT_FAILURE
kusano 7d535a
      fi
kusano 7d535a
      func_append removelist " $output_obj"
kusano 7d535a
      $ECHO "$srcfile" > "$lockfile"
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    $opt_dry_run || $RM $removelist
kusano 7d535a
    func_append removelist " $lockfile"
kusano 7d535a
    trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15
kusano 7d535a
kusano 7d535a
    func_to_tool_file "$srcfile" func_convert_file_msys_to_w32
kusano 7d535a
    srcfile=$func_to_tool_file_result
kusano 7d535a
    func_quote_for_eval "$srcfile"
kusano 7d535a
    qsrcfile=$func_quote_for_eval_result
kusano 7d535a
kusano 7d535a
    # Only build a PIC object if we are building libtool libraries.
kusano 7d535a
    if test "$build_libtool_libs" = yes; then
kusano 7d535a
      # Without this assignment, base_compile gets emptied.
kusano 7d535a
      fbsd_hideous_sh_bug=$base_compile
kusano 7d535a
kusano 7d535a
      if test "$pic_mode" != no; then
kusano 7d535a
	command="$base_compile $qsrcfile $pic_flag"
kusano 7d535a
      else
kusano 7d535a
	# Don't build PIC code
kusano 7d535a
	command="$base_compile $qsrcfile"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      func_mkdir_p "$xdir$objdir"
kusano 7d535a
kusano 7d535a
      if test -z "$output_obj"; then
kusano 7d535a
	# Place PIC objects in $objdir
kusano 7d535a
	func_append command " -o $lobj"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      func_show_eval_locale "$command"	\
kusano 7d535a
          'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
kusano 7d535a
kusano 7d535a
      if test "$need_locks" = warn &&
kusano 7d535a
	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
kusano 7d535a
	$ECHO "\
kusano 7d535a
*** ERROR, $lockfile contains:
kusano 7d535a
`cat $lockfile 2>/dev/null`
kusano 7d535a
kusano 7d535a
but it should contain:
kusano 7d535a
$srcfile
kusano 7d535a
kusano 7d535a
This indicates that another process is trying to use the same
kusano 7d535a
temporary object file, and libtool could not work around it because
kusano 7d535a
your compiler does not support \`-c' and \`-o' together.  If you
kusano 7d535a
repeat this compilation, it may succeed, by chance, but you had better
kusano 7d535a
avoid parallel builds (make -j) in this platform, or get a better
kusano 7d535a
compiler."
kusano 7d535a
kusano 7d535a
	$opt_dry_run || $RM $removelist
kusano 7d535a
	exit $EXIT_FAILURE
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Just move the object if needed, then go on to compile the next one
kusano 7d535a
      if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
kusano 7d535a
	func_show_eval '$MV "$output_obj" "$lobj"' \
kusano 7d535a
	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Allow error messages only from the first compilation.
kusano 7d535a
      if test "$suppress_opt" = yes; then
kusano 7d535a
	suppress_output=' >/dev/null 2>&1'
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # Only build a position-dependent object if we build old libraries.
kusano 7d535a
    if test "$build_old_libs" = yes; then
kusano 7d535a
      if test "$pic_mode" != yes; then
kusano 7d535a
	# Don't build PIC code
kusano 7d535a
	command="$base_compile $qsrcfile$pie_flag"
kusano 7d535a
      else
kusano 7d535a
	command="$base_compile $qsrcfile $pic_flag"
kusano 7d535a
      fi
kusano 7d535a
      if test "$compiler_c_o" = yes; then
kusano 7d535a
	func_append command " -o $obj"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Suppress compiler output if we already did a PIC compilation.
kusano 7d535a
      func_append command "$suppress_output"
kusano 7d535a
      func_show_eval_locale "$command" \
kusano 7d535a
        '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
kusano 7d535a
kusano 7d535a
      if test "$need_locks" = warn &&
kusano 7d535a
	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
kusano 7d535a
	$ECHO "\
kusano 7d535a
*** ERROR, $lockfile contains:
kusano 7d535a
`cat $lockfile 2>/dev/null`
kusano 7d535a
kusano 7d535a
but it should contain:
kusano 7d535a
$srcfile
kusano 7d535a
kusano 7d535a
This indicates that another process is trying to use the same
kusano 7d535a
temporary object file, and libtool could not work around it because
kusano 7d535a
your compiler does not support \`-c' and \`-o' together.  If you
kusano 7d535a
repeat this compilation, it may succeed, by chance, but you had better
kusano 7d535a
avoid parallel builds (make -j) in this platform, or get a better
kusano 7d535a
compiler."
kusano 7d535a
kusano 7d535a
	$opt_dry_run || $RM $removelist
kusano 7d535a
	exit $EXIT_FAILURE
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Just move the object if needed
kusano 7d535a
      if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
kusano 7d535a
	func_show_eval '$MV "$output_obj" "$obj"' \
kusano 7d535a
	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    $opt_dry_run || {
kusano 7d535a
      func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
kusano 7d535a
kusano 7d535a
      # Unlock the critical section if it was locked
kusano 7d535a
      if test "$need_locks" != no; then
kusano 7d535a
	removelist=$lockfile
kusano 7d535a
        $RM "$lockfile"
kusano 7d535a
      fi
kusano 7d535a
    }
kusano 7d535a
kusano 7d535a
    exit $EXIT_SUCCESS
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
$opt_help || {
kusano 7d535a
  test "$opt_mode" = compile && func_mode_compile ${1+"$@"}
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
func_mode_help ()
kusano 7d535a
{
kusano 7d535a
    # We need to display help for each of the modes.
kusano 7d535a
    case $opt_mode in
kusano 7d535a
      "")
kusano 7d535a
        # Generic help is extracted from the usage comments
kusano 7d535a
        # at the start of this file.
kusano 7d535a
        func_help
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      clean)
kusano 7d535a
        $ECHO \
kusano 7d535a
"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
kusano 7d535a
kusano 7d535a
Remove files from the build directory.
kusano 7d535a
kusano 7d535a
RM is the name of the program to use to delete files associated with each FILE
kusano 7d535a
(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
kusano 7d535a
to RM.
kusano 7d535a
kusano 7d535a
If FILE is a libtool library, object or program, all the files associated
kusano 7d535a
with it are deleted. Otherwise, only FILE itself is deleted using RM."
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      compile)
kusano 7d535a
      $ECHO \
kusano 7d535a
"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
kusano 7d535a
kusano 7d535a
Compile a source file into a libtool library object.
kusano 7d535a
kusano 7d535a
This mode accepts the following additional options:
kusano 7d535a
kusano 7d535a
  -o OUTPUT-FILE    set the output file name to OUTPUT-FILE
kusano 7d535a
  -no-suppress      do not suppress compiler output for multiple passes
kusano 7d535a
  -prefer-pic       try to build PIC objects only
kusano 7d535a
  -prefer-non-pic   try to build non-PIC objects only
kusano 7d535a
  -shared           do not build a \`.o' file suitable for static linking
kusano 7d535a
  -static           only build a \`.o' file suitable for static linking
kusano 7d535a
  -Wc,FLAG          pass FLAG directly to the compiler
kusano 7d535a
kusano 7d535a
COMPILE-COMMAND is a command to be used in creating a \`standard' object file
kusano 7d535a
from the given SOURCEFILE.
kusano 7d535a
kusano 7d535a
The output file name is determined by removing the directory component from
kusano 7d535a
SOURCEFILE, then substituting the C source code suffix \`.c' with the
kusano 7d535a
library object suffix, \`.lo'."
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      execute)
kusano 7d535a
        $ECHO \
kusano 7d535a
"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
kusano 7d535a
kusano 7d535a
Automatically set library path, then run a program.
kusano 7d535a
kusano 7d535a
This mode accepts the following additional options:
kusano 7d535a
kusano 7d535a
  -dlopen FILE      add the directory containing FILE to the library path
kusano 7d535a
kusano 7d535a
This mode sets the library path environment variable according to \`-dlopen'
kusano 7d535a
flags.
kusano 7d535a
kusano 7d535a
If any of the ARGS are libtool executable wrappers, then they are translated
kusano 7d535a
into their corresponding uninstalled binary, and any of their required library
kusano 7d535a
directories are added to the library path.
kusano 7d535a
kusano 7d535a
Then, COMMAND is executed, with ARGS as arguments."
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      finish)
kusano 7d535a
        $ECHO \
kusano 7d535a
"Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
kusano 7d535a
kusano 7d535a
Complete the installation of libtool libraries.
kusano 7d535a
kusano 7d535a
Each LIBDIR is a directory that contains libtool libraries.
kusano 7d535a
kusano 7d535a
The commands that this mode executes may require superuser privileges.  Use
kusano 7d535a
the \`--dry-run' option if you just want to see what would be executed."
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      install)
kusano 7d535a
        $ECHO \
kusano 7d535a
"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
kusano 7d535a
kusano 7d535a
Install executables or libraries.
kusano 7d535a
kusano 7d535a
INSTALL-COMMAND is the installation command.  The first component should be
kusano 7d535a
either the \`install' or \`cp' program.
kusano 7d535a
kusano 7d535a
The following components of INSTALL-COMMAND are treated specially:
kusano 7d535a
kusano 7d535a
  -inst-prefix-dir PREFIX-DIR  Use PREFIX-DIR as a staging area for installation
kusano 7d535a
kusano 7d535a
The rest of the components are interpreted as arguments to that command (only
kusano 7d535a
BSD-compatible install options are recognized)."
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      link)
kusano 7d535a
        $ECHO \
kusano 7d535a
"Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
kusano 7d535a
kusano 7d535a
Link object files or libraries together to form another library, or to
kusano 7d535a
create an executable program.
kusano 7d535a
kusano 7d535a
LINK-COMMAND is a command using the C compiler that you would use to create
kusano 7d535a
a program from several object files.
kusano 7d535a
kusano 7d535a
The following components of LINK-COMMAND are treated specially:
kusano 7d535a
kusano 7d535a
  -all-static       do not do any dynamic linking at all
kusano 7d535a
  -avoid-version    do not add a version suffix if possible
kusano 7d535a
  -bindir BINDIR    specify path to binaries directory (for systems where
kusano 7d535a
                    libraries must be found in the PATH setting at runtime)
kusano 7d535a
  -dlopen FILE      \`-dlpreopen' FILE if it cannot be dlopened at runtime
kusano 7d535a
  -dlpreopen FILE   link in FILE and add its symbols to lt_preloaded_symbols
kusano 7d535a
  -export-dynamic   allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
kusano 7d535a
  -export-symbols SYMFILE
kusano 7d535a
                    try to export only the symbols listed in SYMFILE
kusano 7d535a
  -export-symbols-regex REGEX
kusano 7d535a
                    try to export only the symbols matching REGEX
kusano 7d535a
  -LLIBDIR          search LIBDIR for required installed libraries
kusano 7d535a
  -lNAME            OUTPUT-FILE requires the installed library libNAME
kusano 7d535a
  -module           build a library that can dlopened
kusano 7d535a
  -no-fast-install  disable the fast-install mode
kusano 7d535a
  -no-install       link a not-installable executable
kusano 7d535a
  -no-undefined     declare that a library does not refer to external symbols
kusano 7d535a
  -o OUTPUT-FILE    create OUTPUT-FILE from the specified objects
kusano 7d535a
  -objectlist FILE  Use a list of object files found in FILE to specify objects
kusano 7d535a
  -precious-files-regex REGEX
kusano 7d535a
                    don't remove output files matching REGEX
kusano 7d535a
  -release RELEASE  specify package release information
kusano 7d535a
  -rpath LIBDIR     the created library will eventually be installed in LIBDIR
kusano 7d535a
  -R[ ]LIBDIR       add LIBDIR to the runtime path of programs and libraries
kusano 7d535a
  -shared           only do dynamic linking of libtool libraries
kusano 7d535a
  -shrext SUFFIX    override the standard shared library file extension
kusano 7d535a
  -static           do not do any dynamic linking of uninstalled libtool libraries
kusano 7d535a
  -static-libtool-libs
kusano 7d535a
                    do not do any dynamic linking of libtool libraries
kusano 7d535a
  -version-info CURRENT[:REVISION[:AGE]]
kusano 7d535a
                    specify library version info [each variable defaults to 0]
kusano 7d535a
  -weak LIBNAME     declare that the target provides the LIBNAME interface
kusano 7d535a
  -Wc,FLAG
kusano 7d535a
  -Xcompiler FLAG   pass linker-specific FLAG directly to the compiler
kusano 7d535a
  -Wl,FLAG
kusano 7d535a
  -Xlinker FLAG     pass linker-specific FLAG directly to the linker
kusano 7d535a
  -XCClinker FLAG   pass link-specific FLAG to the compiler driver (CC)
kusano 7d535a
kusano 7d535a
All other options (arguments beginning with \`-') are ignored.
kusano 7d535a
kusano 7d535a
Every other argument is treated as a filename.  Files ending in \`.la' are
kusano 7d535a
treated as uninstalled libtool libraries, other files are standard or library
kusano 7d535a
object files.
kusano 7d535a
kusano 7d535a
If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
kusano 7d535a
only library objects (\`.lo' files) may be specified, and \`-rpath' is
kusano 7d535a
required, except when creating a convenience library.
kusano 7d535a
kusano 7d535a
If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
kusano 7d535a
using \`ar' and \`ranlib', or on Windows using \`lib'.
kusano 7d535a
kusano 7d535a
If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
kusano 7d535a
is created, otherwise an executable program is created."
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      uninstall)
kusano 7d535a
        $ECHO \
kusano 7d535a
"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
kusano 7d535a
kusano 7d535a
Remove libraries from an installation directory.
kusano 7d535a
kusano 7d535a
RM is the name of the program to use to delete files associated with each FILE
kusano 7d535a
(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
kusano 7d535a
to RM.
kusano 7d535a
kusano 7d535a
If FILE is a libtool library, all the files associated with it are deleted.
kusano 7d535a
Otherwise, only FILE itself is deleted using RM."
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      *)
kusano 7d535a
        func_fatal_help "invalid operation mode \`$opt_mode'"
kusano 7d535a
        ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    echo
kusano 7d535a
    $ECHO "Try \`$progname --help' for more information about other modes."
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# Now that we've collected a possible --mode arg, show help if necessary
kusano 7d535a
if $opt_help; then
kusano 7d535a
  if test "$opt_help" = :; then
kusano 7d535a
    func_mode_help
kusano 7d535a
  else
kusano 7d535a
    {
kusano 7d535a
      func_help noexit
kusano 7d535a
      for opt_mode in compile link execute install finish uninstall clean; do
kusano 7d535a
	func_mode_help
kusano 7d535a
      done
kusano 7d535a
    } | sed -n '1p; 2,$s/^Usage:/  or: /p'
kusano 7d535a
    {
kusano 7d535a
      func_help noexit
kusano 7d535a
      for opt_mode in compile link execute install finish uninstall clean; do
kusano 7d535a
	echo
kusano 7d535a
	func_mode_help
kusano 7d535a
      done
kusano 7d535a
    } |
kusano 7d535a
    sed '1d
kusano 7d535a
      /^When reporting/,/^Report/{
kusano 7d535a
	H
kusano 7d535a
	d
kusano 7d535a
      }
kusano 7d535a
      $x
kusano 7d535a
      /information about other modes/d
kusano 7d535a
      /more detailed .*MODE/d
kusano 7d535a
      s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/'
kusano 7d535a
  fi
kusano 7d535a
  exit $?
kusano 7d535a
fi
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_mode_execute arg...
kusano 7d535a
func_mode_execute ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    # The first argument is the command name.
kusano 7d535a
    cmd="$nonopt"
kusano 7d535a
    test -z "$cmd" && \
kusano 7d535a
      func_fatal_help "you must specify a COMMAND"
kusano 7d535a
kusano 7d535a
    # Handle -dlopen flags immediately.
kusano 7d535a
    for file in $opt_dlopen; do
kusano 7d535a
      test -f "$file" \
kusano 7d535a
	|| func_fatal_help "\`$file' is not a file"
kusano 7d535a
kusano 7d535a
      dir=
kusano 7d535a
      case $file in
kusano 7d535a
      *.la)
kusano 7d535a
	func_resolve_sysroot "$file"
kusano 7d535a
	file=$func_resolve_sysroot_result
kusano 7d535a
kusano 7d535a
	# Check to see that this really is a libtool archive.
kusano 7d535a
	func_lalib_unsafe_p "$file" \
kusano 7d535a
	  || func_fatal_help "\`$lib' is not a valid libtool archive"
kusano 7d535a
kusano 7d535a
	# Read the libtool library.
kusano 7d535a
	dlname=
kusano 7d535a
	library_names=
kusano 7d535a
	func_source "$file"
kusano 7d535a
kusano 7d535a
	# Skip this library if it cannot be dlopened.
kusano 7d535a
	if test -z "$dlname"; then
kusano 7d535a
	  # Warn if it was a shared library.
kusano 7d535a
	  test -n "$library_names" && \
kusano 7d535a
	    func_warning "\`$file' was not linked with \`-export-dynamic'"
kusano 7d535a
	  continue
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	func_dirname "$file" "" "."
kusano 7d535a
	dir="$func_dirname_result"
kusano 7d535a
kusano 7d535a
	if test -f "$dir/$objdir/$dlname"; then
kusano 7d535a
	  func_append dir "/$objdir"
kusano 7d535a
	else
kusano 7d535a
	  if test ! -f "$dir/$dlname"; then
kusano 7d535a
	    func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'"
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *.lo)
kusano 7d535a
	# Just add the directory containing the .lo file.
kusano 7d535a
	func_dirname "$file" "" "."
kusano 7d535a
	dir="$func_dirname_result"
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *)
kusano 7d535a
	func_warning "\`-dlopen' is ignored for non-libtool libraries and objects"
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      # Get the absolute pathname.
kusano 7d535a
      absdir=`cd "$dir" && pwd`
kusano 7d535a
      test -n "$absdir" && dir="$absdir"
kusano 7d535a
kusano 7d535a
      # Now add the directory to shlibpath_var.
kusano 7d535a
      if eval "test -z \"\$$shlibpath_var\""; then
kusano 7d535a
	eval "$shlibpath_var=\"\$dir\""
kusano 7d535a
      else
kusano 7d535a
	eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
kusano 7d535a
      fi
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    # This variable tells wrapper scripts just to set shlibpath_var
kusano 7d535a
    # rather than running their programs.
kusano 7d535a
    libtool_execute_magic="$magic"
kusano 7d535a
kusano 7d535a
    # Check if any of the arguments is a wrapper script.
kusano 7d535a
    args=
kusano 7d535a
    for file
kusano 7d535a
    do
kusano 7d535a
      case $file in
kusano 7d535a
      -* | *.la | *.lo ) ;;
kusano 7d535a
      *)
kusano 7d535a
	# Do a test to see if this is really a libtool program.
kusano 7d535a
	if func_ltwrapper_script_p "$file"; then
kusano 7d535a
	  func_source "$file"
kusano 7d535a
	  # Transform arg to wrapped name.
kusano 7d535a
	  file="$progdir/$program"
kusano 7d535a
	elif func_ltwrapper_executable_p "$file"; then
kusano 7d535a
	  func_ltwrapper_scriptname "$file"
kusano 7d535a
	  func_source "$func_ltwrapper_scriptname_result"
kusano 7d535a
	  # Transform arg to wrapped name.
kusano 7d535a
	  file="$progdir/$program"
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
      # Quote arguments (to preserve shell metacharacters).
kusano 7d535a
      func_append_quoted args "$file"
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    if test "X$opt_dry_run" = Xfalse; then
kusano 7d535a
      if test -n "$shlibpath_var"; then
kusano 7d535a
	# Export the shlibpath_var.
kusano 7d535a
	eval "export $shlibpath_var"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Restore saved environment variables
kusano 7d535a
      for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
kusano 7d535a
      do
kusano 7d535a
	eval "if test \"\${save_$lt_var+set}\" = set; then
kusano 7d535a
                $lt_var=\$save_$lt_var; export $lt_var
kusano 7d535a
	      else
kusano 7d535a
		$lt_unset $lt_var
kusano 7d535a
	      fi"
kusano 7d535a
      done
kusano 7d535a
kusano 7d535a
      # Now prepare to actually exec the command.
kusano 7d535a
      exec_cmd="\$cmd$args"
kusano 7d535a
    else
kusano 7d535a
      # Display what would be done.
kusano 7d535a
      if test -n "$shlibpath_var"; then
kusano 7d535a
	eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
kusano 7d535a
	echo "export $shlibpath_var"
kusano 7d535a
      fi
kusano 7d535a
      $ECHO "$cmd$args"
kusano 7d535a
      exit $EXIT_SUCCESS
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
test "$opt_mode" = execute && func_mode_execute ${1+"$@"}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_mode_finish arg...
kusano 7d535a
func_mode_finish ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    libs=
kusano 7d535a
    libdirs=
kusano 7d535a
    admincmds=
kusano 7d535a
kusano 7d535a
    for opt in "$nonopt" ${1+"$@"}
kusano 7d535a
    do
kusano 7d535a
      if test -d "$opt"; then
kusano 7d535a
	func_append libdirs " $opt"
kusano 7d535a
kusano 7d535a
      elif test -f "$opt"; then
kusano 7d535a
	if func_lalib_unsafe_p "$opt"; then
kusano 7d535a
	  func_append libs " $opt"
kusano 7d535a
	else
kusano 7d535a
	  func_warning "\`$opt' is not a valid libtool archive"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
      else
kusano 7d535a
	func_fatal_error "invalid argument \`$opt'"
kusano 7d535a
      fi
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    if test -n "$libs"; then
kusano 7d535a
      if test -n "$lt_sysroot"; then
kusano 7d535a
        sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"`
kusano 7d535a
        sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;"
kusano 7d535a
      else
kusano 7d535a
        sysroot_cmd=
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Remove sysroot references
kusano 7d535a
      if $opt_dry_run; then
kusano 7d535a
        for lib in $libs; do
kusano 7d535a
          echo "removing references to $lt_sysroot and \`=' prefixes from $lib"
kusano 7d535a
        done
kusano 7d535a
      else
kusano 7d535a
        tmpdir=`func_mktempdir`
kusano 7d535a
        for lib in $libs; do
kusano 7d535a
	  sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \
kusano 7d535a
	    > $tmpdir/tmp-la
kusano 7d535a
	  mv -f $tmpdir/tmp-la $lib
kusano 7d535a
	done
kusano 7d535a
        ${RM}r "$tmpdir"
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
kusano 7d535a
      for libdir in $libdirs; do
kusano 7d535a
	if test -n "$finish_cmds"; then
kusano 7d535a
	  # Do each command in the finish commands.
kusano 7d535a
	  func_execute_cmds "$finish_cmds" 'admincmds="$admincmds
kusano 7d535a
'"$cmd"'"'
kusano 7d535a
	fi
kusano 7d535a
	if test -n "$finish_eval"; then
kusano 7d535a
	  # Do the single finish_eval.
kusano 7d535a
	  eval cmds=\"$finish_eval\"
kusano 7d535a
	  $opt_dry_run || eval "$cmds" || func_append admincmds "
kusano 7d535a
       $cmds"
kusano 7d535a
	fi
kusano 7d535a
      done
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # Exit here if they wanted silent mode.
kusano 7d535a
    $opt_silent && exit $EXIT_SUCCESS
kusano 7d535a
kusano 7d535a
    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
kusano 7d535a
      echo "----------------------------------------------------------------------"
kusano 7d535a
      echo "Libraries have been installed in:"
kusano 7d535a
      for libdir in $libdirs; do
kusano 7d535a
	$ECHO "   $libdir"
kusano 7d535a
      done
kusano 7d535a
      echo
kusano 7d535a
      echo "If you ever happen to want to link against installed libraries"
kusano 7d535a
      echo "in a given directory, LIBDIR, you must either use libtool, and"
kusano 7d535a
      echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
kusano 7d535a
      echo "flag during linking and do at least one of the following:"
kusano 7d535a
      if test -n "$shlibpath_var"; then
kusano 7d535a
	echo "   - add LIBDIR to the \`$shlibpath_var' environment variable"
kusano 7d535a
	echo "     during execution"
kusano 7d535a
      fi
kusano 7d535a
      if test -n "$runpath_var"; then
kusano 7d535a
	echo "   - add LIBDIR to the \`$runpath_var' environment variable"
kusano 7d535a
	echo "     during linking"
kusano 7d535a
      fi
kusano 7d535a
      if test -n "$hardcode_libdir_flag_spec"; then
kusano 7d535a
	libdir=LIBDIR
kusano 7d535a
	eval flag=\"$hardcode_libdir_flag_spec\"
kusano 7d535a
kusano 7d535a
	$ECHO "   - use the \`$flag' linker flag"
kusano 7d535a
      fi
kusano 7d535a
      if test -n "$admincmds"; then
kusano 7d535a
	$ECHO "   - have your system administrator run these commands:$admincmds"
kusano 7d535a
      fi
kusano 7d535a
      if test -f /etc/ld.so.conf; then
kusano 7d535a
	echo "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
kusano 7d535a
      fi
kusano 7d535a
      echo
kusano 7d535a
kusano 7d535a
      echo "See any operating system documentation about shared libraries for"
kusano 7d535a
      case $host in
kusano 7d535a
	solaris2.[6789]|solaris2.1[0-9])
kusano 7d535a
	  echo "more information, such as the ld(1), crle(1) and ld.so(8) manual"
kusano 7d535a
	  echo "pages."
kusano 7d535a
	  ;;
kusano 7d535a
	*)
kusano 7d535a
	  echo "more information, such as the ld(1) and ld.so(8) manual pages."
kusano 7d535a
	  ;;
kusano 7d535a
      esac
kusano 7d535a
      echo "----------------------------------------------------------------------"
kusano 7d535a
    fi
kusano 7d535a
    exit $EXIT_SUCCESS
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
test "$opt_mode" = finish && func_mode_finish ${1+"$@"}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_mode_install arg...
kusano 7d535a
func_mode_install ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    # There may be an optional sh(1) argument at the beginning of
kusano 7d535a
    # install_prog (especially on Windows NT).
kusano 7d535a
    if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
kusano 7d535a
       # Allow the use of GNU shtool's install command.
kusano 7d535a
       case $nonopt in *shtool*) :;; *) false;; esac; then
kusano 7d535a
      # Aesthetically quote it.
kusano 7d535a
      func_quote_for_eval "$nonopt"
kusano 7d535a
      install_prog="$func_quote_for_eval_result "
kusano 7d535a
      arg=$1
kusano 7d535a
      shift
kusano 7d535a
    else
kusano 7d535a
      install_prog=
kusano 7d535a
      arg=$nonopt
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # The real first argument should be the name of the installation program.
kusano 7d535a
    # Aesthetically quote it.
kusano 7d535a
    func_quote_for_eval "$arg"
kusano 7d535a
    func_append install_prog "$func_quote_for_eval_result"
kusano 7d535a
    install_shared_prog=$install_prog
kusano 7d535a
    case " $install_prog " in
kusano 7d535a
      *[\\\ /]cp\ *) install_cp=: ;;
kusano 7d535a
      *) install_cp=false ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    # We need to accept at least all the BSD install flags.
kusano 7d535a
    dest=
kusano 7d535a
    files=
kusano 7d535a
    opts=
kusano 7d535a
    prev=
kusano 7d535a
    install_type=
kusano 7d535a
    isdir=no
kusano 7d535a
    stripme=
kusano 7d535a
    no_mode=:
kusano 7d535a
    for arg
kusano 7d535a
    do
kusano 7d535a
      arg2=
kusano 7d535a
      if test -n "$dest"; then
kusano 7d535a
	func_append files " $dest"
kusano 7d535a
	dest=$arg
kusano 7d535a
	continue
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      case $arg in
kusano 7d535a
      -d) isdir=yes ;;
kusano 7d535a
      -f)
kusano 7d535a
	if $install_cp; then :; else
kusano 7d535a
	  prev=$arg
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
      -g | -m | -o)
kusano 7d535a
	prev=$arg
kusano 7d535a
	;;
kusano 7d535a
      -s)
kusano 7d535a
	stripme=" -s"
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
      -*)
kusano 7d535a
	;;
kusano 7d535a
      *)
kusano 7d535a
	# If the previous option needed an argument, then skip it.
kusano 7d535a
	if test -n "$prev"; then
kusano 7d535a
	  if test "x$prev" = x-m && test -n "$install_override_mode"; then
kusano 7d535a
	    arg2=$install_override_mode
kusano 7d535a
	    no_mode=false
kusano 7d535a
	  fi
kusano 7d535a
	  prev=
kusano 7d535a
	else
kusano 7d535a
	  dest=$arg
kusano 7d535a
	  continue
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      # Aesthetically quote the argument.
kusano 7d535a
      func_quote_for_eval "$arg"
kusano 7d535a
      func_append install_prog " $func_quote_for_eval_result"
kusano 7d535a
      if test -n "$arg2"; then
kusano 7d535a
	func_quote_for_eval "$arg2"
kusano 7d535a
      fi
kusano 7d535a
      func_append install_shared_prog " $func_quote_for_eval_result"
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    test -z "$install_prog" && \
kusano 7d535a
      func_fatal_help "you must specify an install program"
kusano 7d535a
kusano 7d535a
    test -n "$prev" && \
kusano 7d535a
      func_fatal_help "the \`$prev' option requires an argument"
kusano 7d535a
kusano 7d535a
    if test -n "$install_override_mode" && $no_mode; then
kusano 7d535a
      if $install_cp; then :; else
kusano 7d535a
	func_quote_for_eval "$install_override_mode"
kusano 7d535a
	func_append install_shared_prog " -m $func_quote_for_eval_result"
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    if test -z "$files"; then
kusano 7d535a
      if test -z "$dest"; then
kusano 7d535a
	func_fatal_help "no file or destination specified"
kusano 7d535a
      else
kusano 7d535a
	func_fatal_help "you must specify a destination"
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    # Strip any trailing slash from the destination.
kusano 7d535a
    func_stripname '' '/' "$dest"
kusano 7d535a
    dest=$func_stripname_result
kusano 7d535a
kusano 7d535a
    # Check to see that the destination is a directory.
kusano 7d535a
    test -d "$dest" && isdir=yes
kusano 7d535a
    if test "$isdir" = yes; then
kusano 7d535a
      destdir="$dest"
kusano 7d535a
      destname=
kusano 7d535a
    else
kusano 7d535a
      func_dirname_and_basename "$dest" "" "."
kusano 7d535a
      destdir="$func_dirname_result"
kusano 7d535a
      destname="$func_basename_result"
kusano 7d535a
kusano 7d535a
      # Not a directory, so check to see that there is only one file specified.
kusano 7d535a
      set dummy $files; shift
kusano 7d535a
      test "$#" -gt 1 && \
kusano 7d535a
	func_fatal_help "\`$dest' is not a directory"
kusano 7d535a
    fi
kusano 7d535a
    case $destdir in
kusano 7d535a
    [\\/]* | [A-Za-z]:[\\/]*) ;;
kusano 7d535a
    *)
kusano 7d535a
      for file in $files; do
kusano 7d535a
	case $file in
kusano 7d535a
	*.lo) ;;
kusano 7d535a
	*)
kusano 7d535a
	  func_fatal_help "\`$destdir' must be an absolute directory name"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    # This variable tells wrapper scripts just to set variables rather
kusano 7d535a
    # than running their programs.
kusano 7d535a
    libtool_install_magic="$magic"
kusano 7d535a
kusano 7d535a
    staticlibs=
kusano 7d535a
    future_libdirs=
kusano 7d535a
    current_libdirs=
kusano 7d535a
    for file in $files; do
kusano 7d535a
kusano 7d535a
      # Do each installation.
kusano 7d535a
      case $file in
kusano 7d535a
      *.$libext)
kusano 7d535a
	# Do the static libraries later.
kusano 7d535a
	func_append staticlibs " $file"
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *.la)
kusano 7d535a
	func_resolve_sysroot "$file"
kusano 7d535a
	file=$func_resolve_sysroot_result
kusano 7d535a
kusano 7d535a
	# Check to see that this really is a libtool archive.
kusano 7d535a
	func_lalib_unsafe_p "$file" \
kusano 7d535a
	  || func_fatal_help "\`$file' is not a valid libtool archive"
kusano 7d535a
kusano 7d535a
	library_names=
kusano 7d535a
	old_library=
kusano 7d535a
	relink_command=
kusano 7d535a
	func_source "$file"
kusano 7d535a
kusano 7d535a
	# Add the libdir to current_libdirs if it is the destination.
kusano 7d535a
	if test "X$destdir" = "X$libdir"; then
kusano 7d535a
	  case "$current_libdirs " in
kusano 7d535a
	  *" $libdir "*) ;;
kusano 7d535a
	  *) func_append current_libdirs " $libdir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	else
kusano 7d535a
	  # Note the libdir as a future libdir.
kusano 7d535a
	  case "$future_libdirs " in
kusano 7d535a
	  *" $libdir "*) ;;
kusano 7d535a
	  *) func_append future_libdirs " $libdir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	func_dirname "$file" "/" ""
kusano 7d535a
	dir="$func_dirname_result"
kusano 7d535a
	func_append dir "$objdir"
kusano 7d535a
kusano 7d535a
	if test -n "$relink_command"; then
kusano 7d535a
	  # Determine the prefix the user has applied to our future dir.
kusano 7d535a
	  inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`
kusano 7d535a
kusano 7d535a
	  # Don't allow the user to place us outside of our expected
kusano 7d535a
	  # location b/c this prevents finding dependent libraries that
kusano 7d535a
	  # are installed to the same prefix.
kusano 7d535a
	  # At present, this check doesn't affect windows .dll's that
kusano 7d535a
	  # are installed into $libdir/../bin (currently, that works fine)
kusano 7d535a
	  # but it's something to keep an eye on.
kusano 7d535a
	  test "$inst_prefix_dir" = "$destdir" && \
kusano 7d535a
	    func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir"
kusano 7d535a
kusano 7d535a
	  if test -n "$inst_prefix_dir"; then
kusano 7d535a
	    # Stick the inst_prefix_dir data into the link command.
kusano 7d535a
	    relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
kusano 7d535a
	  else
kusano 7d535a
	    relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  func_warning "relinking \`$file'"
kusano 7d535a
	  func_show_eval "$relink_command" \
kusano 7d535a
	    'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"'
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# See the names of the shared library.
kusano 7d535a
	set dummy $library_names; shift
kusano 7d535a
	if test -n "$1"; then
kusano 7d535a
	  realname="$1"
kusano 7d535a
	  shift
kusano 7d535a
kusano 7d535a
	  srcname="$realname"
kusano 7d535a
	  test -n "$relink_command" && srcname="$realname"T
kusano 7d535a
kusano 7d535a
	  # Install the shared library and build the symlinks.
kusano 7d535a
	  func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \
kusano 7d535a
	      'exit $?'
kusano 7d535a
	  tstripme="$stripme"
kusano 7d535a
	  case $host_os in
kusano 7d535a
	  cygwin* | mingw* | pw32* | cegcc*)
kusano 7d535a
	    case $realname in
kusano 7d535a
	    *.dll.a)
kusano 7d535a
	      tstripme=""
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  if test -n "$tstripme" && test -n "$striplib"; then
kusano 7d535a
	    func_show_eval "$striplib $destdir/$realname" 'exit $?'
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  if test "$#" -gt 0; then
kusano 7d535a
	    # Delete the old symlinks, and create new ones.
kusano 7d535a
	    # Try `ln -sf' first, because the `ln' binary might depend on
kusano 7d535a
	    # the symlink we replace!  Solaris /bin/ln does not understand -f,
kusano 7d535a
	    # so we also need to try rm && ln -s.
kusano 7d535a
	    for linkname
kusano 7d535a
	    do
kusano 7d535a
	      test "$linkname" != "$realname" \
kusano 7d535a
		&& func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })"
kusano 7d535a
	    done
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  # Do each command in the postinstall commands.
kusano 7d535a
	  lib="$destdir/$realname"
kusano 7d535a
	  func_execute_cmds "$postinstall_cmds" 'exit $?'
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Install the pseudo-library for information purposes.
kusano 7d535a
	func_basename "$file"
kusano 7d535a
	name="$func_basename_result"
kusano 7d535a
	instname="$dir/$name"i
kusano 7d535a
	func_show_eval "$install_prog $instname $destdir/$name" 'exit $?'
kusano 7d535a
kusano 7d535a
	# Maybe install the static library, too.
kusano 7d535a
	test -n "$old_library" && func_append staticlibs " $dir/$old_library"
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *.lo)
kusano 7d535a
	# Install (i.e. copy) a libtool object.
kusano 7d535a
kusano 7d535a
	# Figure out destination file name, if it wasn't already specified.
kusano 7d535a
	if test -n "$destname"; then
kusano 7d535a
	  destfile="$destdir/$destname"
kusano 7d535a
	else
kusano 7d535a
	  func_basename "$file"
kusano 7d535a
	  destfile="$func_basename_result"
kusano 7d535a
	  destfile="$destdir/$destfile"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Deduce the name of the destination old-style object file.
kusano 7d535a
	case $destfile in
kusano 7d535a
	*.lo)
kusano 7d535a
	  func_lo2o "$destfile"
kusano 7d535a
	  staticdest=$func_lo2o_result
kusano 7d535a
	  ;;
kusano 7d535a
	*.$objext)
kusano 7d535a
	  staticdest="$destfile"
kusano 7d535a
	  destfile=
kusano 7d535a
	  ;;
kusano 7d535a
	*)
kusano 7d535a
	  func_fatal_help "cannot copy a libtool object to \`$destfile'"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	# Install the libtool object if requested.
kusano 7d535a
	test -n "$destfile" && \
kusano 7d535a
	  func_show_eval "$install_prog $file $destfile" 'exit $?'
kusano 7d535a
kusano 7d535a
	# Install the old object if enabled.
kusano 7d535a
	if test "$build_old_libs" = yes; then
kusano 7d535a
	  # Deduce the name of the old-style object file.
kusano 7d535a
	  func_lo2o "$file"
kusano 7d535a
	  staticobj=$func_lo2o_result
kusano 7d535a
	  func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?'
kusano 7d535a
	fi
kusano 7d535a
	exit $EXIT_SUCCESS
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *)
kusano 7d535a
	# Figure out destination file name, if it wasn't already specified.
kusano 7d535a
	if test -n "$destname"; then
kusano 7d535a
	  destfile="$destdir/$destname"
kusano 7d535a
	else
kusano 7d535a
	  func_basename "$file"
kusano 7d535a
	  destfile="$func_basename_result"
kusano 7d535a
	  destfile="$destdir/$destfile"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# If the file is missing, and there is a .exe on the end, strip it
kusano 7d535a
	# because it is most likely a libtool script we actually want to
kusano 7d535a
	# install
kusano 7d535a
	stripped_ext=""
kusano 7d535a
	case $file in
kusano 7d535a
	  *.exe)
kusano 7d535a
	    if test ! -f "$file"; then
kusano 7d535a
	      func_stripname '' '.exe' "$file"
kusano 7d535a
	      file=$func_stripname_result
kusano 7d535a
	      stripped_ext=".exe"
kusano 7d535a
	    fi
kusano 7d535a
	    ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	# Do a test to see if this is really a libtool program.
kusano 7d535a
	case $host in
kusano 7d535a
	*cygwin* | *mingw*)
kusano 7d535a
	    if func_ltwrapper_executable_p "$file"; then
kusano 7d535a
	      func_ltwrapper_scriptname "$file"
kusano 7d535a
	      wrapper=$func_ltwrapper_scriptname_result
kusano 7d535a
	    else
kusano 7d535a
	      func_stripname '' '.exe' "$file"
kusano 7d535a
	      wrapper=$func_stripname_result
kusano 7d535a
	    fi
kusano 7d535a
	    ;;
kusano 7d535a
	*)
kusano 7d535a
	    wrapper=$file
kusano 7d535a
	    ;;
kusano 7d535a
	esac
kusano 7d535a
	if func_ltwrapper_script_p "$wrapper"; then
kusano 7d535a
	  notinst_deplibs=
kusano 7d535a
	  relink_command=
kusano 7d535a
kusano 7d535a
	  func_source "$wrapper"
kusano 7d535a
kusano 7d535a
	  # Check the variables that should have been set.
kusano 7d535a
	  test -z "$generated_by_libtool_version" && \
kusano 7d535a
	    func_fatal_error "invalid libtool wrapper script \`$wrapper'"
kusano 7d535a
kusano 7d535a
	  finalize=yes
kusano 7d535a
	  for lib in $notinst_deplibs; do
kusano 7d535a
	    # Check to see that each library is installed.
kusano 7d535a
	    libdir=
kusano 7d535a
	    if test -f "$lib"; then
kusano 7d535a
	      func_source "$lib"
kusano 7d535a
	    fi
kusano 7d535a
	    libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test
kusano 7d535a
	    if test -n "$libdir" && test ! -f "$libfile"; then
kusano 7d535a
	      func_warning "\`$lib' has not been installed in \`$libdir'"
kusano 7d535a
	      finalize=no
kusano 7d535a
	    fi
kusano 7d535a
	  done
kusano 7d535a
kusano 7d535a
	  relink_command=
kusano 7d535a
	  func_source "$wrapper"
kusano 7d535a
kusano 7d535a
	  outputname=
kusano 7d535a
	  if test "$fast_install" = no && test -n "$relink_command"; then
kusano 7d535a
	    $opt_dry_run || {
kusano 7d535a
	      if test "$finalize" = yes; then
kusano 7d535a
	        tmpdir=`func_mktempdir`
kusano 7d535a
		func_basename "$file$stripped_ext"
kusano 7d535a
		file="$func_basename_result"
kusano 7d535a
	        outputname="$tmpdir/$file"
kusano 7d535a
	        # Replace the output file specification.
kusano 7d535a
	        relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'`
kusano 7d535a
kusano 7d535a
	        $opt_silent || {
kusano 7d535a
	          func_quote_for_expand "$relink_command"
kusano 7d535a
		  eval "func_echo $func_quote_for_expand_result"
kusano 7d535a
	        }
kusano 7d535a
	        if eval "$relink_command"; then :
kusano 7d535a
	          else
kusano 7d535a
		  func_error "error: relink \`$file' with the above command before installing it"
kusano 7d535a
		  $opt_dry_run || ${RM}r "$tmpdir"
kusano 7d535a
		  continue
kusano 7d535a
	        fi
kusano 7d535a
	        file="$outputname"
kusano 7d535a
	      else
kusano 7d535a
	        func_warning "cannot relink \`$file'"
kusano 7d535a
	      fi
kusano 7d535a
	    }
kusano 7d535a
	  else
kusano 7d535a
	    # Install the binary that we compiled earlier.
kusano 7d535a
	    file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"`
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# remove .exe since cygwin /usr/bin/install will append another
kusano 7d535a
	# one anyway
kusano 7d535a
	case $install_prog,$host in
kusano 7d535a
	*/usr/bin/install*,*cygwin*)
kusano 7d535a
	  case $file:$destfile in
kusano 7d535a
	  *.exe:*.exe)
kusano 7d535a
	    # this is ok
kusano 7d535a
	    ;;
kusano 7d535a
	  *.exe:*)
kusano 7d535a
	    destfile=$destfile.exe
kusano 7d535a
	    ;;
kusano 7d535a
	  *:*.exe)
kusano 7d535a
	    func_stripname '' '.exe' "$destfile"
kusano 7d535a
	    destfile=$func_stripname_result
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?'
kusano 7d535a
	$opt_dry_run || if test -n "$outputname"; then
kusano 7d535a
	  ${RM}r "$tmpdir"
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    for file in $staticlibs; do
kusano 7d535a
      func_basename "$file"
kusano 7d535a
      name="$func_basename_result"
kusano 7d535a
kusano 7d535a
      # Set up the ranlib parameters.
kusano 7d535a
      oldlib="$destdir/$name"
kusano 7d535a
      func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
kusano 7d535a
      tool_oldlib=$func_to_tool_file_result
kusano 7d535a
kusano 7d535a
      func_show_eval "$install_prog \$file \$oldlib" 'exit $?'
kusano 7d535a
kusano 7d535a
      if test -n "$stripme" && test -n "$old_striplib"; then
kusano 7d535a
	func_show_eval "$old_striplib $tool_oldlib" 'exit $?'
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Do each command in the postinstall commands.
kusano 7d535a
      func_execute_cmds "$old_postinstall_cmds" 'exit $?'
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    test -n "$future_libdirs" && \
kusano 7d535a
      func_warning "remember to run \`$progname --finish$future_libdirs'"
kusano 7d535a
kusano 7d535a
    if test -n "$current_libdirs"; then
kusano 7d535a
      # Maybe just do a dry run.
kusano 7d535a
      $opt_dry_run && current_libdirs=" -n$current_libdirs"
kusano 7d535a
      exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
kusano 7d535a
    else
kusano 7d535a
      exit $EXIT_SUCCESS
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
test "$opt_mode" = install && func_mode_install ${1+"$@"}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_generate_dlsyms outputname originator pic_p
kusano 7d535a
# Extract symbols from dlprefiles and create ${outputname}S.o with
kusano 7d535a
# a dlpreopen symbol table.
kusano 7d535a
func_generate_dlsyms ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    my_outputname="$1"
kusano 7d535a
    my_originator="$2"
kusano 7d535a
    my_pic_p="${3-no}"
kusano 7d535a
    my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
kusano 7d535a
    my_dlsyms=
kusano 7d535a
kusano 7d535a
    if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
kusano 7d535a
      if test -n "$NM" && test -n "$global_symbol_pipe"; then
kusano 7d535a
	my_dlsyms="${my_outputname}S.c"
kusano 7d535a
      else
kusano 7d535a
	func_error "not configured to extract global symbols from dlpreopened files"
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    if test -n "$my_dlsyms"; then
kusano 7d535a
      case $my_dlsyms in
kusano 7d535a
      "") ;;
kusano 7d535a
      *.c)
kusano 7d535a
	# Discover the nlist of each of the dlfiles.
kusano 7d535a
	nlist="$output_objdir/${my_outputname}.nm"
kusano 7d535a
kusano 7d535a
	func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
kusano 7d535a
kusano 7d535a
	# Parse the name list into a source file.
kusano 7d535a
	func_verbose "creating $output_objdir/$my_dlsyms"
kusano 7d535a
kusano 7d535a
	$opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
kusano 7d535a
/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */
kusano 7d535a
/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */
kusano 7d535a
kusano 7d535a
#ifdef __cplusplus
kusano 7d535a
extern \"C\" {
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))
kusano 7d535a
#pragma GCC diagnostic ignored \"-Wstrict-prototypes\"
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
kusano 7d535a
#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
kusano 7d535a
/* DATA imports from DLLs on WIN32 con't be const, because runtime
kusano 7d535a
   relocations are performed -- see ld's documentation on pseudo-relocs.  */
kusano 7d535a
# define LT_DLSYM_CONST
kusano 7d535a
#elif defined(__osf__)
kusano 7d535a
/* This system does not cope well with relocations in const data.  */
kusano 7d535a
# define LT_DLSYM_CONST
kusano 7d535a
#else
kusano 7d535a
# define LT_DLSYM_CONST const
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
/* External symbol declarations for the compiler. */\
kusano 7d535a
"
kusano 7d535a
kusano 7d535a
	if test "$dlself" = yes; then
kusano 7d535a
	  func_verbose "generating symbol list for \`$output'"
kusano 7d535a
kusano 7d535a
	  $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
kusano 7d535a
kusano 7d535a
	  # Add our own program objects to the symbol list.
kusano 7d535a
	  progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP`
kusano 7d535a
	  for progfile in $progfiles; do
kusano 7d535a
	    func_to_tool_file "$progfile" func_convert_file_msys_to_w32
kusano 7d535a
	    func_verbose "extracting global C symbols from \`$func_to_tool_file_result'"
kusano 7d535a
	    $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'"
kusano 7d535a
	  done
kusano 7d535a
kusano 7d535a
	  if test -n "$exclude_expsyms"; then
kusano 7d535a
	    $opt_dry_run || {
kusano 7d535a
	      eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
kusano 7d535a
	      eval '$MV "$nlist"T "$nlist"'
kusano 7d535a
	    }
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  if test -n "$export_symbols_regex"; then
kusano 7d535a
	    $opt_dry_run || {
kusano 7d535a
	      eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
kusano 7d535a
	      eval '$MV "$nlist"T "$nlist"'
kusano 7d535a
	    }
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  # Prepare the list of exported symbols
kusano 7d535a
	  if test -z "$export_symbols"; then
kusano 7d535a
	    export_symbols="$output_objdir/$outputname.exp"
kusano 7d535a
	    $opt_dry_run || {
kusano 7d535a
	      $RM $export_symbols
kusano 7d535a
	      eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
kusano 7d535a
	      case $host in
kusano 7d535a
	      *cygwin* | *mingw* | *cegcc* )
kusano 7d535a
                eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
kusano 7d535a
                eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
kusano 7d535a
	        ;;
kusano 7d535a
	      esac
kusano 7d535a
	    }
kusano 7d535a
	  else
kusano 7d535a
	    $opt_dry_run || {
kusano 7d535a
	      eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
kusano 7d535a
	      eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
kusano 7d535a
	      eval '$MV "$nlist"T "$nlist"'
kusano 7d535a
	      case $host in
kusano 7d535a
	        *cygwin* | *mingw* | *cegcc* )
kusano 7d535a
	          eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
kusano 7d535a
	          eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
kusano 7d535a
	          ;;
kusano 7d535a
	      esac
kusano 7d535a
	    }
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	for dlprefile in $dlprefiles; do
kusano 7d535a
	  func_verbose "extracting global C symbols from \`$dlprefile'"
kusano 7d535a
	  func_basename "$dlprefile"
kusano 7d535a
	  name="$func_basename_result"
kusano 7d535a
          case $host in
kusano 7d535a
	    *cygwin* | *mingw* | *cegcc* )
kusano 7d535a
	      # if an import library, we need to obtain dlname
kusano 7d535a
	      if func_win32_import_lib_p "$dlprefile"; then
kusano 7d535a
	        func_tr_sh "$dlprefile"
kusano 7d535a
	        eval "curr_lafile=\$libfile_$func_tr_sh_result"
kusano 7d535a
	        dlprefile_dlbasename=""
kusano 7d535a
	        if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then
kusano 7d535a
	          # Use subshell, to avoid clobbering current variable values
kusano 7d535a
	          dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"`
kusano 7d535a
	          if test -n "$dlprefile_dlname" ; then
kusano 7d535a
	            func_basename "$dlprefile_dlname"
kusano 7d535a
	            dlprefile_dlbasename="$func_basename_result"
kusano 7d535a
	          else
kusano 7d535a
	            # no lafile. user explicitly requested -dlpreopen <import library>.
kusano 7d535a
	            $sharedlib_from_linklib_cmd "$dlprefile"
kusano 7d535a
	            dlprefile_dlbasename=$sharedlib_from_linklib_result
kusano 7d535a
	          fi
kusano 7d535a
	        fi
kusano 7d535a
	        $opt_dry_run || {
kusano 7d535a
	          if test -n "$dlprefile_dlbasename" ; then
kusano 7d535a
	            eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"'
kusano 7d535a
	          else
kusano 7d535a
	            func_warning "Could not compute DLL name from $name"
kusano 7d535a
	            eval '$ECHO ": $name " >> "$nlist"'
kusano 7d535a
	          fi
kusano 7d535a
	          func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
kusano 7d535a
	          eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe |
kusano 7d535a
	            $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'"
kusano 7d535a
	        }
kusano 7d535a
	      else # not an import lib
kusano 7d535a
	        $opt_dry_run || {
kusano 7d535a
	          eval '$ECHO ": $name " >> "$nlist"'
kusano 7d535a
	          func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
kusano 7d535a
	          eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
kusano 7d535a
	        }
kusano 7d535a
	      fi
kusano 7d535a
	    ;;
kusano 7d535a
	    *)
kusano 7d535a
	      $opt_dry_run || {
kusano 7d535a
	        eval '$ECHO ": $name " >> "$nlist"'
kusano 7d535a
	        func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
kusano 7d535a
	        eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
kusano 7d535a
	      }
kusano 7d535a
	    ;;
kusano 7d535a
          esac
kusano 7d535a
	done
kusano 7d535a
kusano 7d535a
	$opt_dry_run || {
kusano 7d535a
	  # Make sure we have at least an empty file.
kusano 7d535a
	  test -f "$nlist" || : > "$nlist"
kusano 7d535a
kusano 7d535a
	  if test -n "$exclude_expsyms"; then
kusano 7d535a
	    $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
kusano 7d535a
	    $MV "$nlist"T "$nlist"
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  # Try sorting and uniquifying the output.
kusano 7d535a
	  if $GREP -v "^: " < "$nlist" |
kusano 7d535a
	      if sort -k 3 </dev/null >/dev/null 2>&1; then
kusano 7d535a
		sort -k 3
kusano 7d535a
	      else
kusano 7d535a
		sort +2
kusano 7d535a
	      fi |
kusano 7d535a
	      uniq > "$nlist"S; then
kusano 7d535a
	    :
kusano 7d535a
	  else
kusano 7d535a
	    $GREP -v "^: " < "$nlist" > "$nlist"S
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  if test -f "$nlist"S; then
kusano 7d535a
	    eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
kusano 7d535a
	  else
kusano 7d535a
	    echo '/* NONE */' >> "$output_objdir/$my_dlsyms"
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  echo >> "$output_objdir/$my_dlsyms" "\
kusano 7d535a
kusano 7d535a
/* The mapping between symbol names and symbols.  */
kusano 7d535a
typedef struct {
kusano 7d535a
  const char *name;
kusano 7d535a
  void *address;
kusano 7d535a
} lt_dlsymlist;
kusano 7d535a
extern LT_DLSYM_CONST lt_dlsymlist
kusano 7d535a
lt_${my_prefix}_LTX_preloaded_symbols[];
kusano 7d535a
LT_DLSYM_CONST lt_dlsymlist
kusano 7d535a
lt_${my_prefix}_LTX_preloaded_symbols[] =
kusano 7d535a
{\
kusano 7d535a
  { \"$my_originator\", (void *) 0 },"
kusano 7d535a
kusano 7d535a
	  case $need_lib_prefix in
kusano 7d535a
	  no)
kusano 7d535a
	    eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
kusano 7d535a
	    ;;
kusano 7d535a
	  *)
kusano 7d535a
	    eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  echo >> "$output_objdir/$my_dlsyms" "\
kusano 7d535a
  {0, (void *) 0}
kusano 7d535a
};
kusano 7d535a
kusano 7d535a
/* This works around a problem in FreeBSD linker */
kusano 7d535a
#ifdef FREEBSD_WORKAROUND
kusano 7d535a
static const void *lt_preloaded_setup() {
kusano 7d535a
  return lt_${my_prefix}_LTX_preloaded_symbols;
kusano 7d535a
}
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
#ifdef __cplusplus
kusano 7d535a
}
kusano 7d535a
#endif\
kusano 7d535a
"
kusano 7d535a
	} # !$opt_dry_run
kusano 7d535a
kusano 7d535a
	pic_flag_for_symtable=
kusano 7d535a
	case "$compile_command " in
kusano 7d535a
	*" -static "*) ;;
kusano 7d535a
	*)
kusano 7d535a
	  case $host in
kusano 7d535a
	  # compiling the symbol table file with pic_flag works around
kusano 7d535a
	  # a FreeBSD bug that causes programs to crash when -lm is
kusano 7d535a
	  # linked before any other PIC object.  But we must not use
kusano 7d535a
	  # pic_flag when linking with -static.  The problem exists in
kusano 7d535a
	  # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
kusano 7d535a
	  *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
kusano 7d535a
	    pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
kusano 7d535a
	  *-*-hpux*)
kusano 7d535a
	    pic_flag_for_symtable=" $pic_flag"  ;;
kusano 7d535a
	  *)
kusano 7d535a
	    if test "X$my_pic_p" != Xno; then
kusano 7d535a
	      pic_flag_for_symtable=" $pic_flag"
kusano 7d535a
	    fi
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	symtab_cflags=
kusano 7d535a
	for arg in $LTCFLAGS; do
kusano 7d535a
	  case $arg in
kusano 7d535a
	  -pie | -fpie | -fPIE) ;;
kusano 7d535a
	  *) func_append symtab_cflags " $arg" ;;
kusano 7d535a
	  esac
kusano 7d535a
	done
kusano 7d535a
kusano 7d535a
	# Now compile the dynamic symbol file.
kusano 7d535a
	func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
kusano 7d535a
kusano 7d535a
	# Clean up the generated files.
kusano 7d535a
	func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"'
kusano 7d535a
kusano 7d535a
	# Transform the symbol file into the correct name.
kusano 7d535a
	symfileobj="$output_objdir/${my_outputname}S.$objext"
kusano 7d535a
	case $host in
kusano 7d535a
	*cygwin* | *mingw* | *cegcc* )
kusano 7d535a
	  if test -f "$output_objdir/$my_outputname.def"; then
kusano 7d535a
	    compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
kusano 7d535a
	    finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
kusano 7d535a
	  else
kusano 7d535a
	    compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"`
kusano 7d535a
	    finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
kusano 7d535a
	  fi
kusano 7d535a
	  ;;
kusano 7d535a
	*)
kusano 7d535a
	  compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"`
kusano 7d535a
	  finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	;;
kusano 7d535a
      *)
kusano 7d535a
	func_fatal_error "unknown suffix for \`$my_dlsyms'"
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
    else
kusano 7d535a
      # We keep going just in case the user didn't refer to
kusano 7d535a
      # lt_preloaded_symbols.  The linker will fail if global_symbol_pipe
kusano 7d535a
      # really was required.
kusano 7d535a
kusano 7d535a
      # Nullify the symbol file.
kusano 7d535a
      compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"`
kusano 7d535a
      finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"`
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_win32_libid arg
kusano 7d535a
# return the library type of file 'arg'
kusano 7d535a
#
kusano 7d535a
# Need a lot of goo to handle *both* DLLs and import libs
kusano 7d535a
# Has to be a shell function in order to 'eat' the argument
kusano 7d535a
# that is supplied when $file_magic_command is called.
kusano 7d535a
# Despite the name, also deal with 64 bit binaries.
kusano 7d535a
func_win32_libid ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  win32_libid_type="unknown"
kusano 7d535a
  win32_fileres=`file -L $1 2>/dev/null`
kusano 7d535a
  case $win32_fileres in
kusano 7d535a
  *ar\ archive\ import\ library*) # definitely import
kusano 7d535a
    win32_libid_type="x86 archive import"
kusano 7d535a
    ;;
kusano 7d535a
  *ar\ archive*) # could be an import, or static
kusano 7d535a
    # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD.
kusano 7d535a
    if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
kusano 7d535a
       $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then
kusano 7d535a
      func_to_tool_file "$1" func_convert_file_msys_to_w32
kusano 7d535a
      win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" |
kusano 7d535a
	$SED -n -e '
kusano 7d535a
	    1,100{
kusano 7d535a
		/ I /{
kusano 7d535a
		    s,.*,import,
kusano 7d535a
		    p
kusano 7d535a
		    q
kusano 7d535a
		}
kusano 7d535a
	    }'`
kusano 7d535a
      case $win32_nmres in
kusano 7d535a
      import*)  win32_libid_type="x86 archive import";;
kusano 7d535a
      *)        win32_libid_type="x86 archive static";;
kusano 7d535a
      esac
kusano 7d535a
    fi
kusano 7d535a
    ;;
kusano 7d535a
  *DLL*)
kusano 7d535a
    win32_libid_type="x86 DLL"
kusano 7d535a
    ;;
kusano 7d535a
  *executable*) # but shell scripts are "executable" too...
kusano 7d535a
    case $win32_fileres in
kusano 7d535a
    *MS\ Windows\ PE\ Intel*)
kusano 7d535a
      win32_libid_type="x86 DLL"
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
    ;;
kusano 7d535a
  esac
kusano 7d535a
  $ECHO "$win32_libid_type"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_cygming_dll_for_implib ARG
kusano 7d535a
#
kusano 7d535a
# Platform-specific function to extract the
kusano 7d535a
# name of the DLL associated with the specified
kusano 7d535a
# import library ARG.
kusano 7d535a
# Invoked by eval'ing the libtool variable
kusano 7d535a
#    $sharedlib_from_linklib_cmd
kusano 7d535a
# Result is available in the variable
kusano 7d535a
#    $sharedlib_from_linklib_result
kusano 7d535a
func_cygming_dll_for_implib ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"`
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs
kusano 7d535a
#
kusano 7d535a
# The is the core of a fallback implementation of a
kusano 7d535a
# platform-specific function to extract the name of the
kusano 7d535a
# DLL associated with the specified import library LIBNAME.
kusano 7d535a
#
kusano 7d535a
# SECTION_NAME is either .idata$6 or .idata$7, depending
kusano 7d535a
# on the platform and compiler that created the implib.
kusano 7d535a
#
kusano 7d535a
# Echos the name of the DLL associated with the
kusano 7d535a
# specified import library.
kusano 7d535a
func_cygming_dll_for_implib_fallback_core ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"`
kusano 7d535a
  $OBJDUMP -s --section "$1" "$2" 2>/dev/null |
kusano 7d535a
    $SED '/^Contents of section '"$match_literal"':/{
kusano 7d535a
      # Place marker at beginning of archive member dllname section
kusano 7d535a
      s/.*/====MARK====/
kusano 7d535a
      p
kusano 7d535a
      d
kusano 7d535a
    }
kusano 7d535a
    # These lines can sometimes be longer than 43 characters, but
kusano 7d535a
    # are always uninteresting
kusano 7d535a
    /:[	 ]*file format pe[i]\{,1\}-/d
kusano 7d535a
    /^In archive [^:]*:/d
kusano 7d535a
    # Ensure marker is printed
kusano 7d535a
    /^====MARK====/p
kusano 7d535a
    # Remove all lines with less than 43 characters
kusano 7d535a
    /^.\{43\}/!d
kusano 7d535a
    # From remaining lines, remove first 43 characters
kusano 7d535a
    s/^.\{43\}//' |
kusano 7d535a
    $SED -n '
kusano 7d535a
      # Join marker and all lines until next marker into a single line
kusano 7d535a
      /^====MARK====/ b para
kusano 7d535a
      H
kusano 7d535a
      $ b para
kusano 7d535a
      b
kusano 7d535a
      :para
kusano 7d535a
      x
kusano 7d535a
      s/\n//g
kusano 7d535a
      # Remove the marker
kusano 7d535a
      s/^====MARK====//
kusano 7d535a
      # Remove trailing dots and whitespace
kusano 7d535a
      s/[\. \t]*$//
kusano 7d535a
      # Print
kusano 7d535a
      /./p' |
kusano 7d535a
    # we now have a list, one entry per line, of the stringified
kusano 7d535a
    # contents of the appropriate section of all members of the
kusano 7d535a
    # archive which possess that section. Heuristic: eliminate
kusano 7d535a
    # all those which have a first or second character that is
kusano 7d535a
    # a '.' (that is, objdump's representation of an unprintable
kusano 7d535a
    # character.) This should work for all archives with less than
kusano 7d535a
    # 0x302f exports -- but will fail for DLLs whose name actually
kusano 7d535a
    # begins with a literal '.' or a single character followed by
kusano 7d535a
    # a '.'.
kusano 7d535a
    #
kusano 7d535a
    # Of those that remain, print the first one.
kusano 7d535a
    $SED -e '/^\./d;/^.\./d;q'
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_cygming_gnu_implib_p ARG
kusano 7d535a
# This predicate returns with zero status (TRUE) if
kusano 7d535a
# ARG is a GNU/binutils-style import library. Returns
kusano 7d535a
# with nonzero status (FALSE) otherwise.
kusano 7d535a
func_cygming_gnu_implib_p ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_tool_file "$1" func_convert_file_msys_to_w32
kusano 7d535a
  func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'`
kusano 7d535a
  test -n "$func_cygming_gnu_implib_tmp"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_cygming_ms_implib_p ARG
kusano 7d535a
# This predicate returns with zero status (TRUE) if
kusano 7d535a
# ARG is an MS-style import library. Returns
kusano 7d535a
# with nonzero status (FALSE) otherwise.
kusano 7d535a
func_cygming_ms_implib_p ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  func_to_tool_file "$1" func_convert_file_msys_to_w32
kusano 7d535a
  func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
kusano 7d535a
  test -n "$func_cygming_ms_implib_tmp"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_cygming_dll_for_implib_fallback ARG
kusano 7d535a
# Platform-specific function to extract the
kusano 7d535a
# name of the DLL associated with the specified
kusano 7d535a
# import library ARG.
kusano 7d535a
#
kusano 7d535a
# This fallback implementation is for use when $DLLTOOL
kusano 7d535a
# does not support the --identify-strict option.
kusano 7d535a
# Invoked by eval'ing the libtool variable
kusano 7d535a
#    $sharedlib_from_linklib_cmd
kusano 7d535a
# Result is available in the variable
kusano 7d535a
#    $sharedlib_from_linklib_result
kusano 7d535a
func_cygming_dll_for_implib_fallback ()
kusano 7d535a
{
kusano 7d535a
  $opt_debug
kusano 7d535a
  if func_cygming_gnu_implib_p "$1" ; then
kusano 7d535a
    # binutils import library
kusano 7d535a
    sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"`
kusano 7d535a
  elif func_cygming_ms_implib_p "$1" ; then
kusano 7d535a
    # ms-generated import library
kusano 7d535a
    sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"`
kusano 7d535a
  else
kusano 7d535a
    # unknown
kusano 7d535a
    sharedlib_from_linklib_result=""
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_extract_an_archive dir oldlib
kusano 7d535a
func_extract_an_archive ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    f_ex_an_ar_dir="$1"; shift
kusano 7d535a
    f_ex_an_ar_oldlib="$1"
kusano 7d535a
    if test "$lock_old_archive_extraction" = yes; then
kusano 7d535a
      lockfile=$f_ex_an_ar_oldlib.lock
kusano 7d535a
      until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
kusano 7d535a
	func_echo "Waiting for $lockfile to be removed"
kusano 7d535a
	sleep 2
kusano 7d535a
      done
kusano 7d535a
    fi
kusano 7d535a
    func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \
kusano 7d535a
		   'stat=$?; rm -f "$lockfile"; exit $stat'
kusano 7d535a
    if test "$lock_old_archive_extraction" = yes; then
kusano 7d535a
      $opt_dry_run || rm -f "$lockfile"
kusano 7d535a
    fi
kusano 7d535a
    if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
kusano 7d535a
     :
kusano 7d535a
    else
kusano 7d535a
      func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib"
kusano 7d535a
    fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_extract_archives gentop oldlib ...
kusano 7d535a
func_extract_archives ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    my_gentop="$1"; shift
kusano 7d535a
    my_oldlibs=${1+"$@"}
kusano 7d535a
    my_oldobjs=""
kusano 7d535a
    my_xlib=""
kusano 7d535a
    my_xabs=""
kusano 7d535a
    my_xdir=""
kusano 7d535a
kusano 7d535a
    for my_xlib in $my_oldlibs; do
kusano 7d535a
      # Extract the objects.
kusano 7d535a
      case $my_xlib in
kusano 7d535a
	[\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
kusano 7d535a
	*) my_xabs=`pwd`"/$my_xlib" ;;
kusano 7d535a
      esac
kusano 7d535a
      func_basename "$my_xlib"
kusano 7d535a
      my_xlib="$func_basename_result"
kusano 7d535a
      my_xlib_u=$my_xlib
kusano 7d535a
      while :; do
kusano 7d535a
        case " $extracted_archives " in
kusano 7d535a
	*" $my_xlib_u "*)
kusano 7d535a
	  func_arith $extracted_serial + 1
kusano 7d535a
	  extracted_serial=$func_arith_result
kusano 7d535a
	  my_xlib_u=lt$extracted_serial-$my_xlib ;;
kusano 7d535a
	*) break ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
      extracted_archives="$extracted_archives $my_xlib_u"
kusano 7d535a
      my_xdir="$my_gentop/$my_xlib_u"
kusano 7d535a
kusano 7d535a
      func_mkdir_p "$my_xdir"
kusano 7d535a
kusano 7d535a
      case $host in
kusano 7d535a
      *-darwin*)
kusano 7d535a
	func_verbose "Extracting $my_xabs"
kusano 7d535a
	# Do not bother doing anything if just a dry run
kusano 7d535a
	$opt_dry_run || {
kusano 7d535a
	  darwin_orig_dir=`pwd`
kusano 7d535a
	  cd $my_xdir || exit $?
kusano 7d535a
	  darwin_archive=$my_xabs
kusano 7d535a
	  darwin_curdir=`pwd`
kusano 7d535a
	  darwin_base_archive=`basename "$darwin_archive"`
kusano 7d535a
	  darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
kusano 7d535a
	  if test -n "$darwin_arches"; then
kusano 7d535a
	    darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
kusano 7d535a
	    darwin_arch=
kusano 7d535a
	    func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
kusano 7d535a
	    for darwin_arch in  $darwin_arches ; do
kusano 7d535a
	      func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
kusano 7d535a
	      $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
kusano 7d535a
	      cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
kusano 7d535a
	      func_extract_an_archive "`pwd`" "${darwin_base_archive}"
kusano 7d535a
	      cd "$darwin_curdir"
kusano 7d535a
	      $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
kusano 7d535a
	    done # $darwin_arches
kusano 7d535a
            ## Okay now we've a bunch of thin objects, gotta fatten them up :)
kusano 7d535a
	    darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u`
kusano 7d535a
	    darwin_file=
kusano 7d535a
	    darwin_files=
kusano 7d535a
	    for darwin_file in $darwin_filelist; do
kusano 7d535a
	      darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP`
kusano 7d535a
	      $LIPO -create -output "$darwin_file" $darwin_files
kusano 7d535a
	    done # $darwin_filelist
kusano 7d535a
	    $RM -rf unfat-$$
kusano 7d535a
	    cd "$darwin_orig_dir"
kusano 7d535a
	  else
kusano 7d535a
	    cd $darwin_orig_dir
kusano 7d535a
	    func_extract_an_archive "$my_xdir" "$my_xabs"
kusano 7d535a
	  fi # $darwin_arches
kusano 7d535a
	} # !$opt_dry_run
kusano 7d535a
	;;
kusano 7d535a
      *)
kusano 7d535a
        func_extract_an_archive "$my_xdir" "$my_xabs"
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
      my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP`
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    func_extract_archives_result="$my_oldobjs"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_emit_wrapper [arg=no]
kusano 7d535a
#
kusano 7d535a
# Emit a libtool wrapper script on stdout.
kusano 7d535a
# Don't directly open a file because we may want to
kusano 7d535a
# incorporate the script contents within a cygwin/mingw
kusano 7d535a
# wrapper executable.  Must ONLY be called from within
kusano 7d535a
# func_mode_link because it depends on a number of variables
kusano 7d535a
# set therein.
kusano 7d535a
#
kusano 7d535a
# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
kusano 7d535a
# variable will take.  If 'yes', then the emitted script
kusano 7d535a
# will assume that the directory in which it is stored is
kusano 7d535a
# the $objdir directory.  This is a cygwin/mingw-specific
kusano 7d535a
# behavior.
kusano 7d535a
func_emit_wrapper ()
kusano 7d535a
{
kusano 7d535a
	func_emit_wrapper_arg1=${1-no}
kusano 7d535a
kusano 7d535a
	$ECHO "\
kusano 7d535a
#! $SHELL
kusano 7d535a
kusano 7d535a
# $output - temporary wrapper script for $objdir/$outputname
kusano 7d535a
# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
kusano 7d535a
#
kusano 7d535a
# The $output program cannot be directly executed until all the libtool
kusano 7d535a
# libraries that it depends on are installed.
kusano 7d535a
#
kusano 7d535a
# This wrapper script should never be moved out of the build directory.
kusano 7d535a
# If it is, it will not operate correctly.
kusano 7d535a
kusano 7d535a
# Sed substitution that helps us do robust quoting.  It backslashifies
kusano 7d535a
# metacharacters that are still active within double-quoted strings.
kusano 7d535a
sed_quote_subst='$sed_quote_subst'
kusano 7d535a
kusano 7d535a
# Be Bourne compatible
kusano 7d535a
if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
kusano 7d535a
  emulate sh
kusano 7d535a
  NULLCMD=:
kusano 7d535a
  # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
kusano 7d535a
  # is contrary to our usage.  Disable this feature.
kusano 7d535a
  alias -g '\${1+\"\$@\"}'='\"\$@\"'
kusano 7d535a
  setopt NO_GLOB_SUBST
kusano 7d535a
else
kusano 7d535a
  case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
kusano 7d535a
fi
kusano 7d535a
BIN_SH=xpg4; export BIN_SH # for Tru64
kusano 7d535a
DUALCASE=1; export DUALCASE # for MKS sh
kusano 7d535a
kusano 7d535a
# The HP-UX ksh and POSIX shell print the target directory to stdout
kusano 7d535a
# if CDPATH is set.
kusano 7d535a
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
kusano 7d535a
kusano 7d535a
relink_command=\"$relink_command\"
kusano 7d535a
kusano 7d535a
# This environment variable determines our operation mode.
kusano 7d535a
if test \"\$libtool_install_magic\" = \"$magic\"; then
kusano 7d535a
  # install mode needs the following variables:
kusano 7d535a
  generated_by_libtool_version='$macro_version'
kusano 7d535a
  notinst_deplibs='$notinst_deplibs'
kusano 7d535a
else
kusano 7d535a
  # When we are sourced in execute mode, \$file and \$ECHO are already set.
kusano 7d535a
  if test \"\$libtool_execute_magic\" != \"$magic\"; then
kusano 7d535a
    file=\"\$0\""
kusano 7d535a
kusano 7d535a
    qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
kusano 7d535a
    $ECHO "\
kusano 7d535a
kusano 7d535a
# A function that is used when there is no print builtin or printf.
kusano 7d535a
func_fallback_echo ()
kusano 7d535a
{
kusano 7d535a
  eval 'cat <<_LTECHO_EOF
kusano 7d535a
\$1
kusano 7d535a
_LTECHO_EOF'
kusano 7d535a
}
kusano 7d535a
    ECHO=\"$qECHO\"
kusano 7d535a
  fi
kusano 7d535a
kusano 7d535a
# Very basic option parsing. These options are (a) specific to
kusano 7d535a
# the libtool wrapper, (b) are identical between the wrapper
kusano 7d535a
# /script/ and the wrapper /executable/ which is used only on
kusano 7d535a
# windows platforms, and (c) all begin with the string "--lt-"
kusano 7d535a
# (application programs are unlikely to have options which match
kusano 7d535a
# this pattern).
kusano 7d535a
#
kusano 7d535a
# There are only two supported options: --lt-debug and
kusano 7d535a
# --lt-dump-script. There is, deliberately, no --lt-help.
kusano 7d535a
#
kusano 7d535a
# The first argument to this parsing function should be the
kusano 7d535a
# script's $0 value, followed by "$@".
kusano 7d535a
lt_option_debug=
kusano 7d535a
func_parse_lt_options ()
kusano 7d535a
{
kusano 7d535a
  lt_script_arg0=\$0
kusano 7d535a
  shift
kusano 7d535a
  for lt_opt
kusano 7d535a
  do
kusano 7d535a
    case \"\$lt_opt\" in
kusano 7d535a
    --lt-debug) lt_option_debug=1 ;;
kusano 7d535a
    --lt-dump-script)
kusano 7d535a
        lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\`
kusano 7d535a
        test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=.
kusano 7d535a
        lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\`
kusano 7d535a
        cat \"\$lt_dump_D/\$lt_dump_F\"
kusano 7d535a
        exit 0
kusano 7d535a
      ;;
kusano 7d535a
    --lt-*)
kusano 7d535a
        \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2
kusano 7d535a
        exit 1
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
  done
kusano 7d535a
kusano 7d535a
  # Print the debug banner immediately:
kusano 7d535a
  if test -n \"\$lt_option_debug\"; then
kusano 7d535a
    echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2
kusano 7d535a
  fi
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# Used when --lt-debug. Prints its arguments to stdout
kusano 7d535a
# (redirection is the responsibility of the caller)
kusano 7d535a
func_lt_dump_args ()
kusano 7d535a
{
kusano 7d535a
  lt_dump_args_N=1;
kusano 7d535a
  for lt_arg
kusano 7d535a
  do
kusano 7d535a
    \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\"
kusano 7d535a
    lt_dump_args_N=\`expr \$lt_dump_args_N + 1\`
kusano 7d535a
  done
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# Core function for launching the target application
kusano 7d535a
func_exec_program_core ()
kusano 7d535a
{
kusano 7d535a
"
kusano 7d535a
  case $host in
kusano 7d535a
  # Backslashes separate directories on plain windows
kusano 7d535a
  *-*-mingw | *-*-os2* | *-cegcc*)
kusano 7d535a
    $ECHO "\
kusano 7d535a
      if test -n \"\$lt_option_debug\"; then
kusano 7d535a
        \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2
kusano 7d535a
        func_lt_dump_args \${1+\"\$@\"} 1>&2
kusano 7d535a
      fi
kusano 7d535a
      exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
kusano 7d535a
"
kusano 7d535a
    ;;
kusano 7d535a
kusano 7d535a
  *)
kusano 7d535a
    $ECHO "\
kusano 7d535a
      if test -n \"\$lt_option_debug\"; then
kusano 7d535a
        \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2
kusano 7d535a
        func_lt_dump_args \${1+\"\$@\"} 1>&2
kusano 7d535a
      fi
kusano 7d535a
      exec \"\$progdir/\$program\" \${1+\"\$@\"}
kusano 7d535a
"
kusano 7d535a
    ;;
kusano 7d535a
  esac
kusano 7d535a
  $ECHO "\
kusano 7d535a
      \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2
kusano 7d535a
      exit 1
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# A function to encapsulate launching the target application
kusano 7d535a
# Strips options in the --lt-* namespace from \$@ and
kusano 7d535a
# launches target application with the remaining arguments.
kusano 7d535a
func_exec_program ()
kusano 7d535a
{
kusano 7d535a
  case \" \$* \" in
kusano 7d535a
  *\\ --lt-*)
kusano 7d535a
    for lt_wr_arg
kusano 7d535a
    do
kusano 7d535a
      case \$lt_wr_arg in
kusano 7d535a
      --lt-*) ;;
kusano 7d535a
      *) set x \"\$@\" \"\$lt_wr_arg\"; shift;;
kusano 7d535a
      esac
kusano 7d535a
      shift
kusano 7d535a
    done ;;
kusano 7d535a
  esac
kusano 7d535a
  func_exec_program_core \${1+\"\$@\"}
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
  # Parse options
kusano 7d535a
  func_parse_lt_options \"\$0\" \${1+\"\$@\"}
kusano 7d535a
kusano 7d535a
  # Find the directory that this script lives in.
kusano 7d535a
  thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\`
kusano 7d535a
  test \"x\$thisdir\" = \"x\$file\" && thisdir=.
kusano 7d535a
kusano 7d535a
  # Follow symbolic links until we get to the real thisdir.
kusano 7d535a
  file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\`
kusano 7d535a
  while test -n \"\$file\"; do
kusano 7d535a
    destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\`
kusano 7d535a
kusano 7d535a
    # If there was a directory component, then change thisdir.
kusano 7d535a
    if test \"x\$destdir\" != \"x\$file\"; then
kusano 7d535a
      case \"\$destdir\" in
kusano 7d535a
      [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
kusano 7d535a
      *) thisdir=\"\$thisdir/\$destdir\" ;;
kusano 7d535a
      esac
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\`
kusano 7d535a
    file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\`
kusano 7d535a
  done
kusano 7d535a
kusano 7d535a
  # Usually 'no', except on cygwin/mingw when embedded into
kusano 7d535a
  # the cwrapper.
kusano 7d535a
  WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1
kusano 7d535a
  if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then
kusano 7d535a
    # special case for '.'
kusano 7d535a
    if test \"\$thisdir\" = \".\"; then
kusano 7d535a
      thisdir=\`pwd\`
kusano 7d535a
    fi
kusano 7d535a
    # remove .libs from thisdir
kusano 7d535a
    case \"\$thisdir\" in
kusano 7d535a
    *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;;
kusano 7d535a
    $objdir )   thisdir=. ;;
kusano 7d535a
    esac
kusano 7d535a
  fi
kusano 7d535a
kusano 7d535a
  # Try to get the absolute directory name.
kusano 7d535a
  absdir=\`cd \"\$thisdir\" && pwd\`
kusano 7d535a
  test -n \"\$absdir\" && thisdir=\"\$absdir\"
kusano 7d535a
"
kusano 7d535a
kusano 7d535a
	if test "$fast_install" = yes; then
kusano 7d535a
	  $ECHO "\
kusano 7d535a
  program=lt-'$outputname'$exeext
kusano 7d535a
  progdir=\"\$thisdir/$objdir\"
kusano 7d535a
kusano 7d535a
  if test ! -f \"\$progdir/\$program\" ||
kusano 7d535a
     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
kusano 7d535a
       test \"X\$file\" != \"X\$progdir/\$program\"; }; then
kusano 7d535a
kusano 7d535a
    file=\"\$\$-\$program\"
kusano 7d535a
kusano 7d535a
    if test ! -d \"\$progdir\"; then
kusano 7d535a
      $MKDIR \"\$progdir\"
kusano 7d535a
    else
kusano 7d535a
      $RM \"\$progdir/\$file\"
kusano 7d535a
    fi"
kusano 7d535a
kusano 7d535a
	  $ECHO "\
kusano 7d535a
kusano 7d535a
    # relink executable if necessary
kusano 7d535a
    if test -n \"\$relink_command\"; then
kusano 7d535a
      if relink_command_output=\`eval \$relink_command 2>&1\`; then :
kusano 7d535a
      else
kusano 7d535a
	$ECHO \"\$relink_command_output\" >&2
kusano 7d535a
	$RM \"\$progdir/\$file\"
kusano 7d535a
	exit 1
kusano 7d535a
      fi
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
kusano 7d535a
    { $RM \"\$progdir/\$program\";
kusano 7d535a
      $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; }
kusano 7d535a
    $RM \"\$progdir/\$file\"
kusano 7d535a
  fi"
kusano 7d535a
	else
kusano 7d535a
	  $ECHO "\
kusano 7d535a
  program='$outputname'
kusano 7d535a
  progdir=\"\$thisdir/$objdir\"
kusano 7d535a
"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	$ECHO "\
kusano 7d535a
kusano 7d535a
  if test -f \"\$progdir/\$program\"; then"
kusano 7d535a
kusano 7d535a
	# fixup the dll searchpath if we need to.
kusano 7d535a
	#
kusano 7d535a
	# Fix the DLL searchpath if we need to.  Do this before prepending
kusano 7d535a
	# to shlibpath, because on Windows, both are PATH and uninstalled
kusano 7d535a
	# libraries must come first.
kusano 7d535a
	if test -n "$dllsearchpath"; then
kusano 7d535a
	  $ECHO "\
kusano 7d535a
    # Add the dll search path components to the executable PATH
kusano 7d535a
    PATH=$dllsearchpath:\$PATH
kusano 7d535a
"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Export our shlibpath_var if we have one.
kusano 7d535a
	if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
kusano 7d535a
	  $ECHO "\
kusano 7d535a
    # Add our own library path to $shlibpath_var
kusano 7d535a
    $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
kusano 7d535a
kusano 7d535a
    # Some systems cannot cope with colon-terminated $shlibpath_var
kusano 7d535a
    # The second colon is a workaround for a bug in BeOS R4 sed
kusano 7d535a
    $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\`
kusano 7d535a
kusano 7d535a
    export $shlibpath_var
kusano 7d535a
"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	$ECHO "\
kusano 7d535a
    if test \"\$libtool_execute_magic\" != \"$magic\"; then
kusano 7d535a
      # Run the actual program with our arguments.
kusano 7d535a
      func_exec_program \${1+\"\$@\"}
kusano 7d535a
    fi
kusano 7d535a
  else
kusano 7d535a
    # The program doesn't exist.
kusano 7d535a
    \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
kusano 7d535a
    \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
kusano 7d535a
    \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
kusano 7d535a
    exit 1
kusano 7d535a
  fi
kusano 7d535a
fi\
kusano 7d535a
"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_emit_cwrapperexe_src
kusano 7d535a
# emit the source code for a wrapper executable on stdout
kusano 7d535a
# Must ONLY be called from within func_mode_link because
kusano 7d535a
# it depends on a number of variable set therein.
kusano 7d535a
func_emit_cwrapperexe_src ()
kusano 7d535a
{
kusano 7d535a
	cat <<EOF
kusano 7d535a
kusano 7d535a
/* $cwrappersource - temporary wrapper executable for $objdir/$outputname
kusano 7d535a
   Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
kusano 7d535a
kusano 7d535a
   The $output program cannot be directly executed until all the libtool
kusano 7d535a
   libraries that it depends on are installed.
kusano 7d535a
kusano 7d535a
   This wrapper executable should never be moved out of the build directory.
kusano 7d535a
   If it is, it will not operate correctly.
kusano 7d535a
*/
kusano 7d535a
EOF
kusano 7d535a
	    cat <<"EOF"
kusano 7d535a
#ifdef _MSC_VER
kusano 7d535a
# define _CRT_SECURE_NO_DEPRECATE 1
kusano 7d535a
#endif
kusano 7d535a
#include <stdio.h>
kusano 7d535a
#include <stdlib.h>
kusano 7d535a
#ifdef _MSC_VER
kusano 7d535a
# include <direct.h>
kusano 7d535a
# include <process.h>
kusano 7d535a
# include <io.h>
kusano 7d535a
#else
kusano 7d535a
# include <unistd.h>
kusano 7d535a
# include <stdint.h>
kusano 7d535a
# ifdef __CYGWIN__
kusano 7d535a
#  include <io.h>
kusano 7d535a
# endif
kusano 7d535a
#endif
kusano 7d535a
#include <malloc.h>
kusano 7d535a
#include <stdarg.h>
kusano 7d535a
#include <assert.h>
kusano 7d535a
#include <string.h>
kusano 7d535a
#include <ctype.h>
kusano 7d535a
#include <errno.h>
kusano 7d535a
#include <fcntl.h>
kusano 7d535a
#include <sys/stat.h>
kusano 7d535a
kusano 7d535a
/* declarations of non-ANSI functions */
kusano 7d535a
#if defined(__MINGW32__)
kusano 7d535a
# ifdef __STRICT_ANSI__
kusano 7d535a
int _putenv (const char *);
kusano 7d535a
# endif
kusano 7d535a
#elif defined(__CYGWIN__)
kusano 7d535a
# ifdef __STRICT_ANSI__
kusano 7d535a
char *realpath (const char *, char *);
kusano 7d535a
int putenv (char *);
kusano 7d535a
int setenv (const char *, const char *, int);
kusano 7d535a
# endif
kusano 7d535a
/* #elif defined (other platforms) ... */
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
/* portability defines, excluding path handling macros */
kusano 7d535a
#if defined(_MSC_VER)
kusano 7d535a
# define setmode _setmode
kusano 7d535a
# define stat    _stat
kusano 7d535a
# define chmod   _chmod
kusano 7d535a
# define getcwd  _getcwd
kusano 7d535a
# define putenv  _putenv
kusano 7d535a
# define S_IXUSR _S_IEXEC
kusano 7d535a
# ifndef _INTPTR_T_DEFINED
kusano 7d535a
#  define _INTPTR_T_DEFINED
kusano 7d535a
#  define intptr_t int
kusano 7d535a
# endif
kusano 7d535a
#elif defined(__MINGW32__)
kusano 7d535a
# define setmode _setmode
kusano 7d535a
# define stat    _stat
kusano 7d535a
# define chmod   _chmod
kusano 7d535a
# define getcwd  _getcwd
kusano 7d535a
# define putenv  _putenv
kusano 7d535a
#elif defined(__CYGWIN__)
kusano 7d535a
# define HAVE_SETENV
kusano 7d535a
# define FOPEN_WB "wb"
kusano 7d535a
/* #elif defined (other platforms) ... */
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
#if defined(PATH_MAX)
kusano 7d535a
# define LT_PATHMAX PATH_MAX
kusano 7d535a
#elif defined(MAXPATHLEN)
kusano 7d535a
# define LT_PATHMAX MAXPATHLEN
kusano 7d535a
#else
kusano 7d535a
# define LT_PATHMAX 1024
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
#ifndef S_IXOTH
kusano 7d535a
# define S_IXOTH 0
kusano 7d535a
#endif
kusano 7d535a
#ifndef S_IXGRP
kusano 7d535a
# define S_IXGRP 0
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
/* path handling portability macros */
kusano 7d535a
#ifndef DIR_SEPARATOR
kusano 7d535a
# define DIR_SEPARATOR '/'
kusano 7d535a
# define PATH_SEPARATOR ':'
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
kusano 7d535a
  defined (__OS2__)
kusano 7d535a
# define HAVE_DOS_BASED_FILE_SYSTEM
kusano 7d535a
# define FOPEN_WB "wb"
kusano 7d535a
# ifndef DIR_SEPARATOR_2
kusano 7d535a
#  define DIR_SEPARATOR_2 '\\'
kusano 7d535a
# endif
kusano 7d535a
# ifndef PATH_SEPARATOR_2
kusano 7d535a
#  define PATH_SEPARATOR_2 ';'
kusano 7d535a
# endif
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
#ifndef DIR_SEPARATOR_2
kusano 7d535a
# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
kusano 7d535a
#else /* DIR_SEPARATOR_2 */
kusano 7d535a
# define IS_DIR_SEPARATOR(ch) \
kusano 7d535a
	(((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
kusano 7d535a
#endif /* DIR_SEPARATOR_2 */
kusano 7d535a
kusano 7d535a
#ifndef PATH_SEPARATOR_2
kusano 7d535a
# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
kusano 7d535a
#else /* PATH_SEPARATOR_2 */
kusano 7d535a
# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
kusano 7d535a
#endif /* PATH_SEPARATOR_2 */
kusano 7d535a
kusano 7d535a
#ifndef FOPEN_WB
kusano 7d535a
# define FOPEN_WB "w"
kusano 7d535a
#endif
kusano 7d535a
#ifndef _O_BINARY
kusano 7d535a
# define _O_BINARY 0
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
#define XMALLOC(type, num)      ((type *) xmalloc ((num) * sizeof(type)))
kusano 7d535a
#define XFREE(stale) do { \
kusano 7d535a
  if (stale) { free ((void *) stale); stale = 0; } \
kusano 7d535a
} while (0)
kusano 7d535a
kusano 7d535a
#if defined(LT_DEBUGWRAPPER)
kusano 7d535a
static int lt_debug = 1;
kusano 7d535a
#else
kusano 7d535a
static int lt_debug = 0;
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */
kusano 7d535a
kusano 7d535a
void *xmalloc (size_t num);
kusano 7d535a
char *xstrdup (const char *string);
kusano 7d535a
const char *base_name (const char *name);
kusano 7d535a
char *find_executable (const char *wrapper);
kusano 7d535a
char *chase_symlinks (const char *pathspec);
kusano 7d535a
int make_executable (const char *path);
kusano 7d535a
int check_executable (const char *path);
kusano 7d535a
char *strendzap (char *str, const char *pat);
kusano 7d535a
void lt_debugprintf (const char *file, int line, const char *fmt, ...);
kusano 7d535a
void lt_fatal (const char *file, int line, const char *message, ...);
kusano 7d535a
static const char *nonnull (const char *s);
kusano 7d535a
static const char *nonempty (const char *s);
kusano 7d535a
void lt_setenv (const char *name, const char *value);
kusano 7d535a
char *lt_extend_str (const char *orig_value, const char *add, int to_end);
kusano 7d535a
void lt_update_exe_path (const char *name, const char *value);
kusano 7d535a
void lt_update_lib_path (const char *name, const char *value);
kusano 7d535a
char **prepare_spawn (char **argv);
kusano 7d535a
void lt_dump_script (FILE *f);
kusano 7d535a
EOF
kusano 7d535a
kusano 7d535a
	    cat <<EOF
kusano 7d535a
volatile const char * MAGIC_EXE = "$magic_exe";
kusano 7d535a
const char * LIB_PATH_VARNAME = "$shlibpath_var";
kusano 7d535a
EOF
kusano 7d535a
kusano 7d535a
	    if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
kusano 7d535a
              func_to_host_path "$temp_rpath"
kusano 7d535a
	      cat <<EOF
kusano 7d535a
const char * LIB_PATH_VALUE   = "$func_to_host_path_result";
kusano 7d535a
EOF
kusano 7d535a
	    else
kusano 7d535a
	      cat <<"EOF"
kusano 7d535a
const char * LIB_PATH_VALUE   = "";
kusano 7d535a
EOF
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    if test -n "$dllsearchpath"; then
kusano 7d535a
              func_to_host_path "$dllsearchpath:"
kusano 7d535a
	      cat <<EOF
kusano 7d535a
const char * EXE_PATH_VARNAME = "PATH";
kusano 7d535a
const char * EXE_PATH_VALUE   = "$func_to_host_path_result";
kusano 7d535a
EOF
kusano 7d535a
	    else
kusano 7d535a
	      cat <<"EOF"
kusano 7d535a
const char * EXE_PATH_VARNAME = "";
kusano 7d535a
const char * EXE_PATH_VALUE   = "";
kusano 7d535a
EOF
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    if test "$fast_install" = yes; then
kusano 7d535a
	      cat <<EOF
kusano 7d535a
const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
kusano 7d535a
EOF
kusano 7d535a
	    else
kusano 7d535a
	      cat <<EOF
kusano 7d535a
const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
kusano 7d535a
EOF
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
kusano 7d535a
	    cat <<"EOF"
kusano 7d535a
kusano 7d535a
#define LTWRAPPER_OPTION_PREFIX         "--lt-"
kusano 7d535a
kusano 7d535a
static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
kusano 7d535a
static const char *dumpscript_opt       = LTWRAPPER_OPTION_PREFIX "dump-script";
kusano 7d535a
static const char *debug_opt            = LTWRAPPER_OPTION_PREFIX "debug";
kusano 7d535a
kusano 7d535a
int
kusano 7d535a
main (int argc, char *argv[])
kusano 7d535a
{
kusano 7d535a
  char **newargz;
kusano 7d535a
  int  newargc;
kusano 7d535a
  char *tmp_pathspec;
kusano 7d535a
  char *actual_cwrapper_path;
kusano 7d535a
  char *actual_cwrapper_name;
kusano 7d535a
  char *target_name;
kusano 7d535a
  char *lt_argv_zero;
kusano 7d535a
  intptr_t rval = 127;
kusano 7d535a
kusano 7d535a
  int i;
kusano 7d535a
kusano 7d535a
  program_name = (char *) xstrdup (base_name (argv[0]));
kusano 7d535a
  newargz = XMALLOC (char *, argc + 1);
kusano 7d535a
kusano 7d535a
  /* very simple arg parsing; don't want to rely on getopt
kusano 7d535a
   * also, copy all non cwrapper options to newargz, except
kusano 7d535a
   * argz[0], which is handled differently
kusano 7d535a
   */
kusano 7d535a
  newargc=0;
kusano 7d535a
  for (i = 1; i < argc; i++)
kusano 7d535a
    {
kusano 7d535a
      if (strcmp (argv[i], dumpscript_opt) == 0)
kusano 7d535a
	{
kusano 7d535a
EOF
kusano 7d535a
	    case "$host" in
kusano 7d535a
	      *mingw* | *cygwin* )
kusano 7d535a
		# make stdout use "unix" line endings
kusano 7d535a
		echo "          setmode(1,_O_BINARY);"
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
kusano 7d535a
	    cat <<"EOF"
kusano 7d535a
	  lt_dump_script (stdout);
kusano 7d535a
	  return 0;
kusano 7d535a
	}
kusano 7d535a
      if (strcmp (argv[i], debug_opt) == 0)
kusano 7d535a
	{
kusano 7d535a
          lt_debug = 1;
kusano 7d535a
          continue;
kusano 7d535a
	}
kusano 7d535a
      if (strcmp (argv[i], ltwrapper_option_prefix) == 0)
kusano 7d535a
        {
kusano 7d535a
          /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
kusano 7d535a
             namespace, but it is not one of the ones we know about and
kusano 7d535a
             have already dealt with, above (inluding dump-script), then
kusano 7d535a
             report an error. Otherwise, targets might begin to believe
kusano 7d535a
             they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
kusano 7d535a
             namespace. The first time any user complains about this, we'll
kusano 7d535a
             need to make LTWRAPPER_OPTION_PREFIX a configure-time option
kusano 7d535a
             or a configure.ac-settable value.
kusano 7d535a
           */
kusano 7d535a
          lt_fatal (__FILE__, __LINE__,
kusano 7d535a
		    "unrecognized %s option: '%s'",
kusano 7d535a
                    ltwrapper_option_prefix, argv[i]);
kusano 7d535a
        }
kusano 7d535a
      /* otherwise ... */
kusano 7d535a
      newargz[++newargc] = xstrdup (argv[i]);
kusano 7d535a
    }
kusano 7d535a
  newargz[++newargc] = NULL;
kusano 7d535a
kusano 7d535a
EOF
kusano 7d535a
	    cat <<EOF
kusano 7d535a
  /* The GNU banner must be the first non-error debug message */
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\n");
kusano 7d535a
EOF
kusano 7d535a
	    cat <<"EOF"
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]);
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__, "(main) program_name: %s\n", program_name);
kusano 7d535a
kusano 7d535a
  tmp_pathspec = find_executable (argv[0]);
kusano 7d535a
  if (tmp_pathspec == NULL)
kusano 7d535a
    lt_fatal (__FILE__, __LINE__, "couldn't find %s", argv[0]);
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__,
kusano 7d535a
                  "(main) found exe (before symlink chase) at: %s\n",
kusano 7d535a
		  tmp_pathspec);
kusano 7d535a
kusano 7d535a
  actual_cwrapper_path = chase_symlinks (tmp_pathspec);
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__,
kusano 7d535a
                  "(main) found exe (after symlink chase) at: %s\n",
kusano 7d535a
		  actual_cwrapper_path);
kusano 7d535a
  XFREE (tmp_pathspec);
kusano 7d535a
kusano 7d535a
  actual_cwrapper_name = xstrdup (base_name (actual_cwrapper_path));
kusano 7d535a
  strendzap (actual_cwrapper_path, actual_cwrapper_name);
kusano 7d535a
kusano 7d535a
  /* wrapper name transforms */
kusano 7d535a
  strendzap (actual_cwrapper_name, ".exe");
kusano 7d535a
  tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
kusano 7d535a
  XFREE (actual_cwrapper_name);
kusano 7d535a
  actual_cwrapper_name = tmp_pathspec;
kusano 7d535a
  tmp_pathspec = 0;
kusano 7d535a
kusano 7d535a
  /* target_name transforms -- use actual target program name; might have lt- prefix */
kusano 7d535a
  target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
kusano 7d535a
  strendzap (target_name, ".exe");
kusano 7d535a
  tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
kusano 7d535a
  XFREE (target_name);
kusano 7d535a
  target_name = tmp_pathspec;
kusano 7d535a
  tmp_pathspec = 0;
kusano 7d535a
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__,
kusano 7d535a
		  "(main) libtool target name: %s\n",
kusano 7d535a
		  target_name);
kusano 7d535a
EOF
kusano 7d535a
kusano 7d535a
	    cat <<EOF
kusano 7d535a
  newargz[0] =
kusano 7d535a
    XMALLOC (char, (strlen (actual_cwrapper_path) +
kusano 7d535a
		    strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
kusano 7d535a
  strcpy (newargz[0], actual_cwrapper_path);
kusano 7d535a
  strcat (newargz[0], "$objdir");
kusano 7d535a
  strcat (newargz[0], "/");
kusano 7d535a
EOF
kusano 7d535a
kusano 7d535a
	    cat <<"EOF"
kusano 7d535a
  /* stop here, and copy so we don't have to do this twice */
kusano 7d535a
  tmp_pathspec = xstrdup (newargz[0]);
kusano 7d535a
kusano 7d535a
  /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
kusano 7d535a
  strcat (newargz[0], actual_cwrapper_name);
kusano 7d535a
kusano 7d535a
  /* DO want the lt- prefix here if it exists, so use target_name */
kusano 7d535a
  lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
kusano 7d535a
  XFREE (tmp_pathspec);
kusano 7d535a
  tmp_pathspec = NULL;
kusano 7d535a
EOF
kusano 7d535a
kusano 7d535a
	    case $host_os in
kusano 7d535a
	      mingw*)
kusano 7d535a
	    cat <<"EOF"
kusano 7d535a
  {
kusano 7d535a
    char* p;
kusano 7d535a
    while ((p = strchr (newargz[0], '\\')) != NULL)
kusano 7d535a
      {
kusano 7d535a
	*p = '/';
kusano 7d535a
      }
kusano 7d535a
    while ((p = strchr (lt_argv_zero, '\\')) != NULL)
kusano 7d535a
      {
kusano 7d535a
	*p = '/';
kusano 7d535a
      }
kusano 7d535a
  }
kusano 7d535a
EOF
kusano 7d535a
	    ;;
kusano 7d535a
	    esac
kusano 7d535a
kusano 7d535a
	    cat <<"EOF"
kusano 7d535a
  XFREE (target_name);
kusano 7d535a
  XFREE (actual_cwrapper_path);
kusano 7d535a
  XFREE (actual_cwrapper_name);
kusano 7d535a
kusano 7d535a
  lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
kusano 7d535a
  lt_setenv ("DUALCASE", "1");  /* for MSK sh */
kusano 7d535a
  /* Update the DLL searchpath.  EXE_PATH_VALUE ($dllsearchpath) must
kusano 7d535a
     be prepended before (that is, appear after) LIB_PATH_VALUE ($temp_rpath)
kusano 7d535a
     because on Windows, both *_VARNAMEs are PATH but uninstalled
kusano 7d535a
     libraries must come first. */
kusano 7d535a
  lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
kusano 7d535a
  lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
kusano 7d535a
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n",
kusano 7d535a
		  nonnull (lt_argv_zero));
kusano 7d535a
  for (i = 0; i < newargc; i++)
kusano 7d535a
    {
kusano 7d535a
      lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n",
kusano 7d535a
		      i, nonnull (newargz[i]));
kusano 7d535a
    }
kusano 7d535a
kusano 7d535a
EOF
kusano 7d535a
kusano 7d535a
	    case $host_os in
kusano 7d535a
	      mingw*)
kusano 7d535a
		cat <<"EOF"
kusano 7d535a
  /* execv doesn't actually work on mingw as expected on unix */
kusano 7d535a
  newargz = prepare_spawn (newargz);
kusano 7d535a
  rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
kusano 7d535a
  if (rval == -1)
kusano 7d535a
    {
kusano 7d535a
      /* failed to start process */
kusano 7d535a
      lt_debugprintf (__FILE__, __LINE__,
kusano 7d535a
		      "(main) failed to launch target \"%s\": %s\n",
kusano 7d535a
		      lt_argv_zero, nonnull (strerror (errno)));
kusano 7d535a
      return 127;
kusano 7d535a
    }
kusano 7d535a
  return rval;
kusano 7d535a
EOF
kusano 7d535a
		;;
kusano 7d535a
	      *)
kusano 7d535a
		cat <<"EOF"
kusano 7d535a
  execv (lt_argv_zero, newargz);
kusano 7d535a
  return rval; /* =127, but avoids unused variable warning */
kusano 7d535a
EOF
kusano 7d535a
		;;
kusano 7d535a
	    esac
kusano 7d535a
kusano 7d535a
	    cat <<"EOF"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
void *
kusano 7d535a
xmalloc (size_t num)
kusano 7d535a
{
kusano 7d535a
  void *p = (void *) malloc (num);
kusano 7d535a
  if (!p)
kusano 7d535a
    lt_fatal (__FILE__, __LINE__, "memory exhausted");
kusano 7d535a
kusano 7d535a
  return p;
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
char *
kusano 7d535a
xstrdup (const char *string)
kusano 7d535a
{
kusano 7d535a
  return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
kusano 7d535a
			  string) : NULL;
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
const char *
kusano 7d535a
base_name (const char *name)
kusano 7d535a
{
kusano 7d535a
  const char *base;
kusano 7d535a
kusano 7d535a
#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
kusano 7d535a
  /* Skip over the disk name in MSDOS pathnames. */
kusano 7d535a
  if (isalpha ((unsigned char) name[0]) && name[1] == ':')
kusano 7d535a
    name += 2;
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
  for (base = name; *name; name++)
kusano 7d535a
    if (IS_DIR_SEPARATOR (*name))
kusano 7d535a
      base = name + 1;
kusano 7d535a
  return base;
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
int
kusano 7d535a
check_executable (const char *path)
kusano 7d535a
{
kusano 7d535a
  struct stat st;
kusano 7d535a
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__, "(check_executable): %s\n",
kusano 7d535a
                  nonempty (path));
kusano 7d535a
  if ((!path) || (!*path))
kusano 7d535a
    return 0;
kusano 7d535a
kusano 7d535a
  if ((stat (path, &st) >= 0)
kusano 7d535a
      && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))
kusano 7d535a
    return 1;
kusano 7d535a
  else
kusano 7d535a
    return 0;
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
int
kusano 7d535a
make_executable (const char *path)
kusano 7d535a
{
kusano 7d535a
  int rval = 0;
kusano 7d535a
  struct stat st;
kusano 7d535a
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n",
kusano 7d535a
                  nonempty (path));
kusano 7d535a
  if ((!path) || (!*path))
kusano 7d535a
    return 0;
kusano 7d535a
kusano 7d535a
  if (stat (path, &st) >= 0)
kusano 7d535a
    {
kusano 7d535a
      rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR);
kusano 7d535a
    }
kusano 7d535a
  return rval;
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
/* Searches for the full path of the wrapper.  Returns
kusano 7d535a
   newly allocated full path name if found, NULL otherwise
kusano 7d535a
   Does not chase symlinks, even on platforms that support them.
kusano 7d535a
*/
kusano 7d535a
char *
kusano 7d535a
find_executable (const char *wrapper)
kusano 7d535a
{
kusano 7d535a
  int has_slash = 0;
kusano 7d535a
  const char *p;
kusano 7d535a
  const char *p_next;
kusano 7d535a
  /* static buffer for getcwd */
kusano 7d535a
  char tmp[LT_PATHMAX + 1];
kusano 7d535a
  int tmp_len;
kusano 7d535a
  char *concat_name;
kusano 7d535a
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n",
kusano 7d535a
                  nonempty (wrapper));
kusano 7d535a
kusano 7d535a
  if ((wrapper == NULL) || (*wrapper == '\0'))
kusano 7d535a
    return NULL;
kusano 7d535a
kusano 7d535a
  /* Absolute path? */
kusano 7d535a
#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
kusano 7d535a
  if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
kusano 7d535a
    {
kusano 7d535a
      concat_name = xstrdup (wrapper);
kusano 7d535a
      if (check_executable (concat_name))
kusano 7d535a
	return concat_name;
kusano 7d535a
      XFREE (concat_name);
kusano 7d535a
    }
kusano 7d535a
  else
kusano 7d535a
    {
kusano 7d535a
#endif
kusano 7d535a
      if (IS_DIR_SEPARATOR (wrapper[0]))
kusano 7d535a
	{
kusano 7d535a
	  concat_name = xstrdup (wrapper);
kusano 7d535a
	  if (check_executable (concat_name))
kusano 7d535a
	    return concat_name;
kusano 7d535a
	  XFREE (concat_name);
kusano 7d535a
	}
kusano 7d535a
#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
kusano 7d535a
    }
kusano 7d535a
#endif
kusano 7d535a
kusano 7d535a
  for (p = wrapper; *p; p++)
kusano 7d535a
    if (*p == '/')
kusano 7d535a
      {
kusano 7d535a
	has_slash = 1;
kusano 7d535a
	break;
kusano 7d535a
      }
kusano 7d535a
  if (!has_slash)
kusano 7d535a
    {
kusano 7d535a
      /* no slashes; search PATH */
kusano 7d535a
      const char *path = getenv ("PATH");
kusano 7d535a
      if (path != NULL)
kusano 7d535a
	{
kusano 7d535a
	  for (p = path; *p; p = p_next)
kusano 7d535a
	    {
kusano 7d535a
	      const char *q;
kusano 7d535a
	      size_t p_len;
kusano 7d535a
	      for (q = p; *q; q++)
kusano 7d535a
		if (IS_PATH_SEPARATOR (*q))
kusano 7d535a
		  break;
kusano 7d535a
	      p_len = q - p;
kusano 7d535a
	      p_next = (*q == '\0' ? q : q + 1);
kusano 7d535a
	      if (p_len == 0)
kusano 7d535a
		{
kusano 7d535a
		  /* empty path: current directory */
kusano 7d535a
		  if (getcwd (tmp, LT_PATHMAX) == NULL)
kusano 7d535a
		    lt_fatal (__FILE__, __LINE__, "getcwd failed: %s",
kusano 7d535a
                              nonnull (strerror (errno)));
kusano 7d535a
		  tmp_len = strlen (tmp);
kusano 7d535a
		  concat_name =
kusano 7d535a
		    XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
kusano 7d535a
		  memcpy (concat_name, tmp, tmp_len);
kusano 7d535a
		  concat_name[tmp_len] = '/';
kusano 7d535a
		  strcpy (concat_name + tmp_len + 1, wrapper);
kusano 7d535a
		}
kusano 7d535a
	      else
kusano 7d535a
		{
kusano 7d535a
		  concat_name =
kusano 7d535a
		    XMALLOC (char, p_len + 1 + strlen (wrapper) + 1);
kusano 7d535a
		  memcpy (concat_name, p, p_len);
kusano 7d535a
		  concat_name[p_len] = '/';
kusano 7d535a
		  strcpy (concat_name + p_len + 1, wrapper);
kusano 7d535a
		}
kusano 7d535a
	      if (check_executable (concat_name))
kusano 7d535a
		return concat_name;
kusano 7d535a
	      XFREE (concat_name);
kusano 7d535a
	    }
kusano 7d535a
	}
kusano 7d535a
      /* not found in PATH; assume curdir */
kusano 7d535a
    }
kusano 7d535a
  /* Relative path | not found in path: prepend cwd */
kusano 7d535a
  if (getcwd (tmp, LT_PATHMAX) == NULL)
kusano 7d535a
    lt_fatal (__FILE__, __LINE__, "getcwd failed: %s",
kusano 7d535a
              nonnull (strerror (errno)));
kusano 7d535a
  tmp_len = strlen (tmp);
kusano 7d535a
  concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
kusano 7d535a
  memcpy (concat_name, tmp, tmp_len);
kusano 7d535a
  concat_name[tmp_len] = '/';
kusano 7d535a
  strcpy (concat_name + tmp_len + 1, wrapper);
kusano 7d535a
kusano 7d535a
  if (check_executable (concat_name))
kusano 7d535a
    return concat_name;
kusano 7d535a
  XFREE (concat_name);
kusano 7d535a
  return NULL;
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
char *
kusano 7d535a
chase_symlinks (const char *pathspec)
kusano 7d535a
{
kusano 7d535a
#ifndef S_ISLNK
kusano 7d535a
  return xstrdup (pathspec);
kusano 7d535a
#else
kusano 7d535a
  char buf[LT_PATHMAX];
kusano 7d535a
  struct stat s;
kusano 7d535a
  char *tmp_pathspec = xstrdup (pathspec);
kusano 7d535a
  char *p;
kusano 7d535a
  int has_symlinks = 0;
kusano 7d535a
  while (strlen (tmp_pathspec) && !has_symlinks)
kusano 7d535a
    {
kusano 7d535a
      lt_debugprintf (__FILE__, __LINE__,
kusano 7d535a
		      "checking path component for symlinks: %s\n",
kusano 7d535a
		      tmp_pathspec);
kusano 7d535a
      if (lstat (tmp_pathspec, &s) == 0)
kusano 7d535a
	{
kusano 7d535a
	  if (S_ISLNK (s.st_mode) != 0)
kusano 7d535a
	    {
kusano 7d535a
	      has_symlinks = 1;
kusano 7d535a
	      break;
kusano 7d535a
	    }
kusano 7d535a
kusano 7d535a
	  /* search backwards for last DIR_SEPARATOR */
kusano 7d535a
	  p = tmp_pathspec + strlen (tmp_pathspec) - 1;
kusano 7d535a
	  while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
kusano 7d535a
	    p--;
kusano 7d535a
	  if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
kusano 7d535a
	    {
kusano 7d535a
	      /* no more DIR_SEPARATORS left */
kusano 7d535a
	      break;
kusano 7d535a
	    }
kusano 7d535a
	  *p = '\0';
kusano 7d535a
	}
kusano 7d535a
      else
kusano 7d535a
	{
kusano 7d535a
	  lt_fatal (__FILE__, __LINE__,
kusano 7d535a
		    "error accessing file \"%s\": %s",
kusano 7d535a
		    tmp_pathspec, nonnull (strerror (errno)));
kusano 7d535a
	}
kusano 7d535a
    }
kusano 7d535a
  XFREE (tmp_pathspec);
kusano 7d535a
kusano 7d535a
  if (!has_symlinks)
kusano 7d535a
    {
kusano 7d535a
      return xstrdup (pathspec);
kusano 7d535a
    }
kusano 7d535a
kusano 7d535a
  tmp_pathspec = realpath (pathspec, buf);
kusano 7d535a
  if (tmp_pathspec == 0)
kusano 7d535a
    {
kusano 7d535a
      lt_fatal (__FILE__, __LINE__,
kusano 7d535a
		"could not follow symlinks for %s", pathspec);
kusano 7d535a
    }
kusano 7d535a
  return xstrdup (tmp_pathspec);
kusano 7d535a
#endif
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
char *
kusano 7d535a
strendzap (char *str, const char *pat)
kusano 7d535a
{
kusano 7d535a
  size_t len, patlen;
kusano 7d535a
kusano 7d535a
  assert (str != NULL);
kusano 7d535a
  assert (pat != NULL);
kusano 7d535a
kusano 7d535a
  len = strlen (str);
kusano 7d535a
  patlen = strlen (pat);
kusano 7d535a
kusano 7d535a
  if (patlen <= len)
kusano 7d535a
    {
kusano 7d535a
      str += len - patlen;
kusano 7d535a
      if (strcmp (str, pat) == 0)
kusano 7d535a
	*str = '\0';
kusano 7d535a
    }
kusano 7d535a
  return str;
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
void
kusano 7d535a
lt_debugprintf (const char *file, int line, const char *fmt, ...)
kusano 7d535a
{
kusano 7d535a
  va_list args;
kusano 7d535a
  if (lt_debug)
kusano 7d535a
    {
kusano 7d535a
      (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line);
kusano 7d535a
      va_start (args, fmt);
kusano 7d535a
      (void) vfprintf (stderr, fmt, args);
kusano 7d535a
      va_end (args);
kusano 7d535a
    }
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
static void
kusano 7d535a
lt_error_core (int exit_status, const char *file,
kusano 7d535a
	       int line, const char *mode,
kusano 7d535a
	       const char *message, va_list ap)
kusano 7d535a
{
kusano 7d535a
  fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode);
kusano 7d535a
  vfprintf (stderr, message, ap);
kusano 7d535a
  fprintf (stderr, ".\n");
kusano 7d535a
kusano 7d535a
  if (exit_status >= 0)
kusano 7d535a
    exit (exit_status);
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
void
kusano 7d535a
lt_fatal (const char *file, int line, const char *message, ...)
kusano 7d535a
{
kusano 7d535a
  va_list ap;
kusano 7d535a
  va_start (ap, message);
kusano 7d535a
  lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap);
kusano 7d535a
  va_end (ap);
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
static const char *
kusano 7d535a
nonnull (const char *s)
kusano 7d535a
{
kusano 7d535a
  return s ? s : "(null)";
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
static const char *
kusano 7d535a
nonempty (const char *s)
kusano 7d535a
{
kusano 7d535a
  return (s && !*s) ? "(empty)" : nonnull (s);
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
void
kusano 7d535a
lt_setenv (const char *name, const char *value)
kusano 7d535a
{
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__,
kusano 7d535a
		  "(lt_setenv) setting '%s' to '%s'\n",
kusano 7d535a
                  nonnull (name), nonnull (value));
kusano 7d535a
  {
kusano 7d535a
#ifdef HAVE_SETENV
kusano 7d535a
    /* always make a copy, for consistency with !HAVE_SETENV */
kusano 7d535a
    char *str = xstrdup (value);
kusano 7d535a
    setenv (name, str, 1);
kusano 7d535a
#else
kusano 7d535a
    int len = strlen (name) + 1 + strlen (value) + 1;
kusano 7d535a
    char *str = XMALLOC (char, len);
kusano 7d535a
    sprintf (str, "%s=%s", name, value);
kusano 7d535a
    if (putenv (str) != EXIT_SUCCESS)
kusano 7d535a
      {
kusano 7d535a
        XFREE (str);
kusano 7d535a
      }
kusano 7d535a
#endif
kusano 7d535a
  }
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
char *
kusano 7d535a
lt_extend_str (const char *orig_value, const char *add, int to_end)
kusano 7d535a
{
kusano 7d535a
  char *new_value;
kusano 7d535a
  if (orig_value && *orig_value)
kusano 7d535a
    {
kusano 7d535a
      int orig_value_len = strlen (orig_value);
kusano 7d535a
      int add_len = strlen (add);
kusano 7d535a
      new_value = XMALLOC (char, add_len + orig_value_len + 1);
kusano 7d535a
      if (to_end)
kusano 7d535a
        {
kusano 7d535a
          strcpy (new_value, orig_value);
kusano 7d535a
          strcpy (new_value + orig_value_len, add);
kusano 7d535a
        }
kusano 7d535a
      else
kusano 7d535a
        {
kusano 7d535a
          strcpy (new_value, add);
kusano 7d535a
          strcpy (new_value + add_len, orig_value);
kusano 7d535a
        }
kusano 7d535a
    }
kusano 7d535a
  else
kusano 7d535a
    {
kusano 7d535a
      new_value = xstrdup (add);
kusano 7d535a
    }
kusano 7d535a
  return new_value;
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
void
kusano 7d535a
lt_update_exe_path (const char *name, const char *value)
kusano 7d535a
{
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__,
kusano 7d535a
		  "(lt_update_exe_path) modifying '%s' by prepending '%s'\n",
kusano 7d535a
                  nonnull (name), nonnull (value));
kusano 7d535a
kusano 7d535a
  if (name && *name && value && *value)
kusano 7d535a
    {
kusano 7d535a
      char *new_value = lt_extend_str (getenv (name), value, 0);
kusano 7d535a
      /* some systems can't cope with a ':'-terminated path #' */
kusano 7d535a
      int len = strlen (new_value);
kusano 7d535a
      while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
kusano 7d535a
        {
kusano 7d535a
          new_value[len-1] = '\0';
kusano 7d535a
        }
kusano 7d535a
      lt_setenv (name, new_value);
kusano 7d535a
      XFREE (new_value);
kusano 7d535a
    }
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
void
kusano 7d535a
lt_update_lib_path (const char *name, const char *value)
kusano 7d535a
{
kusano 7d535a
  lt_debugprintf (__FILE__, __LINE__,
kusano 7d535a
		  "(lt_update_lib_path) modifying '%s' by prepending '%s'\n",
kusano 7d535a
                  nonnull (name), nonnull (value));
kusano 7d535a
kusano 7d535a
  if (name && *name && value && *value)
kusano 7d535a
    {
kusano 7d535a
      char *new_value = lt_extend_str (getenv (name), value, 0);
kusano 7d535a
      lt_setenv (name, new_value);
kusano 7d535a
      XFREE (new_value);
kusano 7d535a
    }
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
EOF
kusano 7d535a
	    case $host_os in
kusano 7d535a
	      mingw*)
kusano 7d535a
		cat <<"EOF"
kusano 7d535a
kusano 7d535a
/* Prepares an argument vector before calling spawn().
kusano 7d535a
   Note that spawn() does not by itself call the command interpreter
kusano 7d535a
     (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") :
kusano 7d535a
      ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
kusano 7d535a
         GetVersionEx(&v);
kusano 7d535a
         v.dwPlatformId == VER_PLATFORM_WIN32_NT;
kusano 7d535a
      }) ? "cmd.exe" : "command.com").
kusano 7d535a
   Instead it simply concatenates the arguments, separated by ' ', and calls
kusano 7d535a
   CreateProcess().  We must quote the arguments since Win32 CreateProcess()
kusano 7d535a
   interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a
kusano 7d535a
   special way:
kusano 7d535a
   - Space and tab are interpreted as delimiters. They are not treated as
kusano 7d535a
     delimiters if they are surrounded by double quotes: "...".
kusano 7d535a
   - Unescaped double quotes are removed from the input. Their only effect is
kusano 7d535a
     that within double quotes, space and tab are treated like normal
kusano 7d535a
     characters.
kusano 7d535a
   - Backslashes not followed by double quotes are not special.
kusano 7d535a
   - But 2*n+1 backslashes followed by a double quote become
kusano 7d535a
     n backslashes followed by a double quote (n >= 0):
kusano 7d535a
       \" -> "
kusano 7d535a
       \\\" -> \"
kusano 7d535a
       \\\\\" -> \\"
kusano 7d535a
 */
kusano 7d535a
#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037"
kusano 7d535a
#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037"
kusano 7d535a
char **
kusano 7d535a
prepare_spawn (char **argv)
kusano 7d535a
{
kusano 7d535a
  size_t argc;
kusano 7d535a
  char **new_argv;
kusano 7d535a
  size_t i;
kusano 7d535a
kusano 7d535a
  /* Count number of arguments.  */
kusano 7d535a
  for (argc = 0; argv[argc] != NULL; argc++)
kusano 7d535a
    ;
kusano 7d535a
kusano 7d535a
  /* Allocate new argument vector.  */
kusano 7d535a
  new_argv = XMALLOC (char *, argc + 1);
kusano 7d535a
kusano 7d535a
  /* Put quoted arguments into the new argument vector.  */
kusano 7d535a
  for (i = 0; i < argc; i++)
kusano 7d535a
    {
kusano 7d535a
      const char *string = argv[i];
kusano 7d535a
kusano 7d535a
      if (string[0] == '\0')
kusano 7d535a
	new_argv[i] = xstrdup ("\"\"");
kusano 7d535a
      else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL)
kusano 7d535a
	{
kusano 7d535a
	  int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL);
kusano 7d535a
	  size_t length;
kusano 7d535a
	  unsigned int backslashes;
kusano 7d535a
	  const char *s;
kusano 7d535a
	  char *quoted_string;
kusano 7d535a
	  char *p;
kusano 7d535a
kusano 7d535a
	  length = 0;
kusano 7d535a
	  backslashes = 0;
kusano 7d535a
	  if (quote_around)
kusano 7d535a
	    length++;
kusano 7d535a
	  for (s = string; *s != '\0'; s++)
kusano 7d535a
	    {
kusano 7d535a
	      char c = *s;
kusano 7d535a
	      if (c == '"')
kusano 7d535a
		length += backslashes + 1;
kusano 7d535a
	      length++;
kusano 7d535a
	      if (c == '\\')
kusano 7d535a
		backslashes++;
kusano 7d535a
	      else
kusano 7d535a
		backslashes = 0;
kusano 7d535a
	    }
kusano 7d535a
	  if (quote_around)
kusano 7d535a
	    length += backslashes + 1;
kusano 7d535a
kusano 7d535a
	  quoted_string = XMALLOC (char, length + 1);
kusano 7d535a
kusano 7d535a
	  p = quoted_string;
kusano 7d535a
	  backslashes = 0;
kusano 7d535a
	  if (quote_around)
kusano 7d535a
	    *p++ = '"';
kusano 7d535a
	  for (s = string; *s != '\0'; s++)
kusano 7d535a
	    {
kusano 7d535a
	      char c = *s;
kusano 7d535a
	      if (c == '"')
kusano 7d535a
		{
kusano 7d535a
		  unsigned int j;
kusano 7d535a
		  for (j = backslashes + 1; j > 0; j--)
kusano 7d535a
		    *p++ = '\\';
kusano 7d535a
		}
kusano 7d535a
	      *p++ = c;
kusano 7d535a
	      if (c == '\\')
kusano 7d535a
		backslashes++;
kusano 7d535a
	      else
kusano 7d535a
		backslashes = 0;
kusano 7d535a
	    }
kusano 7d535a
	  if (quote_around)
kusano 7d535a
	    {
kusano 7d535a
	      unsigned int j;
kusano 7d535a
	      for (j = backslashes; j > 0; j--)
kusano 7d535a
		*p++ = '\\';
kusano 7d535a
	      *p++ = '"';
kusano 7d535a
	    }
kusano 7d535a
	  *p = '\0';
kusano 7d535a
kusano 7d535a
	  new_argv[i] = quoted_string;
kusano 7d535a
	}
kusano 7d535a
      else
kusano 7d535a
	new_argv[i] = (char *) string;
kusano 7d535a
    }
kusano 7d535a
  new_argv[argc] = NULL;
kusano 7d535a
kusano 7d535a
  return new_argv;
kusano 7d535a
}
kusano 7d535a
EOF
kusano 7d535a
		;;
kusano 7d535a
	    esac
kusano 7d535a
kusano 7d535a
            cat <<"EOF"
kusano 7d535a
void lt_dump_script (FILE* f)
kusano 7d535a
{
kusano 7d535a
EOF
kusano 7d535a
	    func_emit_wrapper yes |
kusano 7d535a
	      $SED -n -e '
kusano 7d535a
s/^\(.\{79\}\)\(..*\)/\1\
kusano 7d535a
\2/
kusano 7d535a
h
kusano 7d535a
s/\([\\"]\)/\\\1/g
kusano 7d535a
s/$/\\n/
kusano 7d535a
s/\([^\n]*\).*/  fputs ("\1", f);/p
kusano 7d535a
g
kusano 7d535a
D'
kusano 7d535a
            cat <<"EOF"
kusano 7d535a
}
kusano 7d535a
EOF
kusano 7d535a
}
kusano 7d535a
# end: func_emit_cwrapperexe_src
kusano 7d535a
kusano 7d535a
# func_win32_import_lib_p ARG
kusano 7d535a
# True if ARG is an import lib, as indicated by $file_magic_cmd
kusano 7d535a
func_win32_import_lib_p ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in
kusano 7d535a
    *import*) : ;;
kusano 7d535a
    *) false ;;
kusano 7d535a
    esac
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
# func_mode_link arg...
kusano 7d535a
func_mode_link ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    case $host in
kusano 7d535a
    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
kusano 7d535a
      # It is impossible to link a dll without this setting, and
kusano 7d535a
      # we shouldn't force the makefile maintainer to figure out
kusano 7d535a
      # which system we are compiling for in order to pass an extra
kusano 7d535a
      # flag for every libtool invocation.
kusano 7d535a
      # allow_undefined=no
kusano 7d535a
kusano 7d535a
      # FIXME: Unfortunately, there are problems with the above when trying
kusano 7d535a
      # to make a dll which has undefined symbols, in which case not
kusano 7d535a
      # even a static library is built.  For now, we need to specify
kusano 7d535a
      # -no-undefined on the libtool link line when we can be certain
kusano 7d535a
      # that all symbols are satisfied, otherwise we get a static library.
kusano 7d535a
      allow_undefined=yes
kusano 7d535a
      ;;
kusano 7d535a
    *)
kusano 7d535a
      allow_undefined=yes
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
    libtool_args=$nonopt
kusano 7d535a
    base_compile="$nonopt $@"
kusano 7d535a
    compile_command=$nonopt
kusano 7d535a
    finalize_command=$nonopt
kusano 7d535a
kusano 7d535a
    compile_rpath=
kusano 7d535a
    finalize_rpath=
kusano 7d535a
    compile_shlibpath=
kusano 7d535a
    finalize_shlibpath=
kusano 7d535a
    convenience=
kusano 7d535a
    old_convenience=
kusano 7d535a
    deplibs=
kusano 7d535a
    old_deplibs=
kusano 7d535a
    compiler_flags=
kusano 7d535a
    linker_flags=
kusano 7d535a
    dllsearchpath=
kusano 7d535a
    lib_search_path=`pwd`
kusano 7d535a
    inst_prefix_dir=
kusano 7d535a
    new_inherited_linker_flags=
kusano 7d535a
kusano 7d535a
    avoid_version=no
kusano 7d535a
    bindir=
kusano 7d535a
    dlfiles=
kusano 7d535a
    dlprefiles=
kusano 7d535a
    dlself=no
kusano 7d535a
    export_dynamic=no
kusano 7d535a
    export_symbols=
kusano 7d535a
    export_symbols_regex=
kusano 7d535a
    generated=
kusano 7d535a
    libobjs=
kusano 7d535a
    ltlibs=
kusano 7d535a
    module=no
kusano 7d535a
    no_install=no
kusano 7d535a
    objs=
kusano 7d535a
    non_pic_objects=
kusano 7d535a
    precious_files_regex=
kusano 7d535a
    prefer_static_libs=no
kusano 7d535a
    preload=no
kusano 7d535a
    prev=
kusano 7d535a
    prevarg=
kusano 7d535a
    release=
kusano 7d535a
    rpath=
kusano 7d535a
    xrpath=
kusano 7d535a
    perm_rpath=
kusano 7d535a
    temp_rpath=
kusano 7d535a
    thread_safe=no
kusano 7d535a
    vinfo=
kusano 7d535a
    vinfo_number=no
kusano 7d535a
    weak_libs=
kusano 7d535a
    single_module="${wl}-single_module"
kusano 7d535a
    func_infer_tag $base_compile
kusano 7d535a
kusano 7d535a
    # We need to know -static, to get the right output filenames.
kusano 7d535a
    for arg
kusano 7d535a
    do
kusano 7d535a
      case $arg in
kusano 7d535a
      -shared)
kusano 7d535a
	test "$build_libtool_libs" != yes && \
kusano 7d535a
	  func_fatal_configuration "can not build a shared library"
kusano 7d535a
	build_old_libs=no
kusano 7d535a
	break
kusano 7d535a
	;;
kusano 7d535a
      -all-static | -static | -static-libtool-libs)
kusano 7d535a
	case $arg in
kusano 7d535a
	-all-static)
kusano 7d535a
	  if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
kusano 7d535a
	    func_warning "complete static linking is impossible in this configuration"
kusano 7d535a
	  fi
kusano 7d535a
	  if test -n "$link_static_flag"; then
kusano 7d535a
	    dlopen_self=$dlopen_self_static
kusano 7d535a
	  fi
kusano 7d535a
	  prefer_static_libs=yes
kusano 7d535a
	  ;;
kusano 7d535a
	-static)
kusano 7d535a
	  if test -z "$pic_flag" && test -n "$link_static_flag"; then
kusano 7d535a
	    dlopen_self=$dlopen_self_static
kusano 7d535a
	  fi
kusano 7d535a
	  prefer_static_libs=built
kusano 7d535a
	  ;;
kusano 7d535a
	-static-libtool-libs)
kusano 7d535a
	  if test -z "$pic_flag" && test -n "$link_static_flag"; then
kusano 7d535a
	    dlopen_self=$dlopen_self_static
kusano 7d535a
	  fi
kusano 7d535a
	  prefer_static_libs=yes
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	build_libtool_libs=no
kusano 7d535a
	build_old_libs=yes
kusano 7d535a
	break
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    # See if our shared archives depend on static archives.
kusano 7d535a
    test -n "$old_archive_from_new_cmds" && build_old_libs=yes
kusano 7d535a
kusano 7d535a
    # Go through the arguments, transforming them on the way.
kusano 7d535a
    while test "$#" -gt 0; do
kusano 7d535a
      arg="$1"
kusano 7d535a
      shift
kusano 7d535a
      func_quote_for_eval "$arg"
kusano 7d535a
      qarg=$func_quote_for_eval_unquoted_result
kusano 7d535a
      func_append libtool_args " $func_quote_for_eval_result"
kusano 7d535a
kusano 7d535a
      # If the previous option needs an argument, assign it.
kusano 7d535a
      if test -n "$prev"; then
kusano 7d535a
	case $prev in
kusano 7d535a
	output)
kusano 7d535a
	  func_append compile_command " @OUTPUT@"
kusano 7d535a
	  func_append finalize_command " @OUTPUT@"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	case $prev in
kusano 7d535a
	bindir)
kusano 7d535a
	  bindir="$arg"
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	dlfiles|dlprefiles)
kusano 7d535a
	  if test "$preload" = no; then
kusano 7d535a
	    # Add the symbol object into the linking commands.
kusano 7d535a
	    func_append compile_command " @SYMFILE@"
kusano 7d535a
	    func_append finalize_command " @SYMFILE@"
kusano 7d535a
	    preload=yes
kusano 7d535a
	  fi
kusano 7d535a
	  case $arg in
kusano 7d535a
	  *.la | *.lo) ;;  # We handle these cases below.
kusano 7d535a
	  force)
kusano 7d535a
	    if test "$dlself" = no; then
kusano 7d535a
	      dlself=needless
kusano 7d535a
	      export_dynamic=yes
kusano 7d535a
	    fi
kusano 7d535a
	    prev=
kusano 7d535a
	    continue
kusano 7d535a
	    ;;
kusano 7d535a
	  self)
kusano 7d535a
	    if test "$prev" = dlprefiles; then
kusano 7d535a
	      dlself=yes
kusano 7d535a
	    elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
kusano 7d535a
	      dlself=yes
kusano 7d535a
	    else
kusano 7d535a
	      dlself=needless
kusano 7d535a
	      export_dynamic=yes
kusano 7d535a
	    fi
kusano 7d535a
	    prev=
kusano 7d535a
	    continue
kusano 7d535a
	    ;;
kusano 7d535a
	  *)
kusano 7d535a
	    if test "$prev" = dlfiles; then
kusano 7d535a
	      func_append dlfiles " $arg"
kusano 7d535a
	    else
kusano 7d535a
	      func_append dlprefiles " $arg"
kusano 7d535a
	    fi
kusano 7d535a
	    prev=
kusano 7d535a
	    continue
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	expsyms)
kusano 7d535a
	  export_symbols="$arg"
kusano 7d535a
	  test -f "$arg" \
kusano 7d535a
	    || func_fatal_error "symbol file \`$arg' does not exist"
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	expsyms_regex)
kusano 7d535a
	  export_symbols_regex="$arg"
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	framework)
kusano 7d535a
	  case $host in
kusano 7d535a
	    *-*-darwin*)
kusano 7d535a
	      case "$deplibs " in
kusano 7d535a
		*" $qarg.ltframework "*) ;;
kusano 7d535a
		*) func_append deplibs " $qarg.ltframework" # this is fixed later
kusano 7d535a
		   ;;
kusano 7d535a
	      esac
kusano 7d535a
	      ;;
kusano 7d535a
	  esac
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	inst_prefix)
kusano 7d535a
	  inst_prefix_dir="$arg"
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	objectlist)
kusano 7d535a
	  if test -f "$arg"; then
kusano 7d535a
	    save_arg=$arg
kusano 7d535a
	    moreargs=
kusano 7d535a
	    for fil in `cat "$save_arg"`
kusano 7d535a
	    do
kusano 7d535a
#	      func_append moreargs " $fil"
kusano 7d535a
	      arg=$fil
kusano 7d535a
	      # A libtool-controlled object.
kusano 7d535a
kusano 7d535a
	      # Check to see that this really is a libtool object.
kusano 7d535a
	      if func_lalib_unsafe_p "$arg"; then
kusano 7d535a
		pic_object=
kusano 7d535a
		non_pic_object=
kusano 7d535a
kusano 7d535a
		# Read the .lo file
kusano 7d535a
		func_source "$arg"
kusano 7d535a
kusano 7d535a
		if test -z "$pic_object" ||
kusano 7d535a
		   test -z "$non_pic_object" ||
kusano 7d535a
		   test "$pic_object" = none &&
kusano 7d535a
		   test "$non_pic_object" = none; then
kusano 7d535a
		  func_fatal_error "cannot find name of object for \`$arg'"
kusano 7d535a
		fi
kusano 7d535a
kusano 7d535a
		# Extract subdirectory from the argument.
kusano 7d535a
		func_dirname "$arg" "/" ""
kusano 7d535a
		xdir="$func_dirname_result"
kusano 7d535a
kusano 7d535a
		if test "$pic_object" != none; then
kusano 7d535a
		  # Prepend the subdirectory the object is found in.
kusano 7d535a
		  pic_object="$xdir$pic_object"
kusano 7d535a
kusano 7d535a
		  if test "$prev" = dlfiles; then
kusano 7d535a
		    if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
kusano 7d535a
		      func_append dlfiles " $pic_object"
kusano 7d535a
		      prev=
kusano 7d535a
		      continue
kusano 7d535a
		    else
kusano 7d535a
		      # If libtool objects are unsupported, then we need to preload.
kusano 7d535a
		      prev=dlprefiles
kusano 7d535a
		    fi
kusano 7d535a
		  fi
kusano 7d535a
kusano 7d535a
		  # CHECK ME:  I think I busted this.  -Ossama
kusano 7d535a
		  if test "$prev" = dlprefiles; then
kusano 7d535a
		    # Preload the old-style object.
kusano 7d535a
		    func_append dlprefiles " $pic_object"
kusano 7d535a
		    prev=
kusano 7d535a
		  fi
kusano 7d535a
kusano 7d535a
		  # A PIC object.
kusano 7d535a
		  func_append libobjs " $pic_object"
kusano 7d535a
		  arg="$pic_object"
kusano 7d535a
		fi
kusano 7d535a
kusano 7d535a
		# Non-PIC object.
kusano 7d535a
		if test "$non_pic_object" != none; then
kusano 7d535a
		  # Prepend the subdirectory the object is found in.
kusano 7d535a
		  non_pic_object="$xdir$non_pic_object"
kusano 7d535a
kusano 7d535a
		  # A standard non-PIC object
kusano 7d535a
		  func_append non_pic_objects " $non_pic_object"
kusano 7d535a
		  if test -z "$pic_object" || test "$pic_object" = none ; then
kusano 7d535a
		    arg="$non_pic_object"
kusano 7d535a
		  fi
kusano 7d535a
		else
kusano 7d535a
		  # If the PIC object exists, use it instead.
kusano 7d535a
		  # $xdir was prepended to $pic_object above.
kusano 7d535a
		  non_pic_object="$pic_object"
kusano 7d535a
		  func_append non_pic_objects " $non_pic_object"
kusano 7d535a
		fi
kusano 7d535a
	      else
kusano 7d535a
		# Only an error if not doing a dry-run.
kusano 7d535a
		if $opt_dry_run; then
kusano 7d535a
		  # Extract subdirectory from the argument.
kusano 7d535a
		  func_dirname "$arg" "/" ""
kusano 7d535a
		  xdir="$func_dirname_result"
kusano 7d535a
kusano 7d535a
		  func_lo2o "$arg"
kusano 7d535a
		  pic_object=$xdir$objdir/$func_lo2o_result
kusano 7d535a
		  non_pic_object=$xdir$func_lo2o_result
kusano 7d535a
		  func_append libobjs " $pic_object"
kusano 7d535a
		  func_append non_pic_objects " $non_pic_object"
kusano 7d535a
	        else
kusano 7d535a
		  func_fatal_error "\`$arg' is not a valid libtool object"
kusano 7d535a
		fi
kusano 7d535a
	      fi
kusano 7d535a
	    done
kusano 7d535a
	  else
kusano 7d535a
	    func_fatal_error "link input file \`$arg' does not exist"
kusano 7d535a
	  fi
kusano 7d535a
	  arg=$save_arg
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	precious_regex)
kusano 7d535a
	  precious_files_regex="$arg"
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	release)
kusano 7d535a
	  release="-$arg"
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	rpath | xrpath)
kusano 7d535a
	  # We need an absolute path.
kusano 7d535a
	  case $arg in
kusano 7d535a
	  [\\/]* | [A-Za-z]:[\\/]*) ;;
kusano 7d535a
	  *)
kusano 7d535a
	    func_fatal_error "only absolute run-paths are allowed"
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  if test "$prev" = rpath; then
kusano 7d535a
	    case "$rpath " in
kusano 7d535a
	    *" $arg "*) ;;
kusano 7d535a
	    *) func_append rpath " $arg" ;;
kusano 7d535a
	    esac
kusano 7d535a
	  else
kusano 7d535a
	    case "$xrpath " in
kusano 7d535a
	    *" $arg "*) ;;
kusano 7d535a
	    *) func_append xrpath " $arg" ;;
kusano 7d535a
	    esac
kusano 7d535a
	  fi
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	shrext)
kusano 7d535a
	  shrext_cmds="$arg"
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	weak)
kusano 7d535a
	  func_append weak_libs " $arg"
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	xcclinker)
kusano 7d535a
	  func_append linker_flags " $qarg"
kusano 7d535a
	  func_append compiler_flags " $qarg"
kusano 7d535a
	  prev=
kusano 7d535a
	  func_append compile_command " $qarg"
kusano 7d535a
	  func_append finalize_command " $qarg"
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	xcompiler)
kusano 7d535a
	  func_append compiler_flags " $qarg"
kusano 7d535a
	  prev=
kusano 7d535a
	  func_append compile_command " $qarg"
kusano 7d535a
	  func_append finalize_command " $qarg"
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	xlinker)
kusano 7d535a
	  func_append linker_flags " $qarg"
kusano 7d535a
	  func_append compiler_flags " $wl$qarg"
kusano 7d535a
	  prev=
kusano 7d535a
	  func_append compile_command " $wl$qarg"
kusano 7d535a
	  func_append finalize_command " $wl$qarg"
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	*)
kusano 7d535a
	  eval "$prev=\"\$arg\""
kusano 7d535a
	  prev=
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
      fi # test -n "$prev"
kusano 7d535a
kusano 7d535a
      prevarg="$arg"
kusano 7d535a
kusano 7d535a
      case $arg in
kusano 7d535a
      -all-static)
kusano 7d535a
	if test -n "$link_static_flag"; then
kusano 7d535a
	  # See comment for -static flag below, for more details.
kusano 7d535a
	  func_append compile_command " $link_static_flag"
kusano 7d535a
	  func_append finalize_command " $link_static_flag"
kusano 7d535a
	fi
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -allow-undefined)
kusano 7d535a
	# FIXME: remove this flag sometime in the future.
kusano 7d535a
	func_fatal_error "\`-allow-undefined' must not be used because it is the default"
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -avoid-version)
kusano 7d535a
	avoid_version=yes
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -bindir)
kusano 7d535a
	prev=bindir
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -dlopen)
kusano 7d535a
	prev=dlfiles
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -dlpreopen)
kusano 7d535a
	prev=dlprefiles
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -export-dynamic)
kusano 7d535a
	export_dynamic=yes
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -export-symbols | -export-symbols-regex)
kusano 7d535a
	if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
kusano 7d535a
	  func_fatal_error "more than one -exported-symbols argument is not allowed"
kusano 7d535a
	fi
kusano 7d535a
	if test "X$arg" = "X-export-symbols"; then
kusano 7d535a
	  prev=expsyms
kusano 7d535a
	else
kusano 7d535a
	  prev=expsyms_regex
kusano 7d535a
	fi
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -framework)
kusano 7d535a
	prev=framework
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -inst-prefix-dir)
kusano 7d535a
	prev=inst_prefix
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
kusano 7d535a
      # so, if we see these flags be careful not to treat them like -L
kusano 7d535a
      -L[A-Z][A-Z]*:*)
kusano 7d535a
	case $with_gcc/$host in
kusano 7d535a
	no/*-*-irix* | /*-*-irix*)
kusano 7d535a
	  func_append compile_command " $arg"
kusano 7d535a
	  func_append finalize_command " $arg"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -L*)
kusano 7d535a
	func_stripname "-L" '' "$arg"
kusano 7d535a
	if test -z "$func_stripname_result"; then
kusano 7d535a
	  if test "$#" -gt 0; then
kusano 7d535a
	    func_fatal_error "require no space between \`-L' and \`$1'"
kusano 7d535a
	  else
kusano 7d535a
	    func_fatal_error "need path for \`-L' option"
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
	func_resolve_sysroot "$func_stripname_result"
kusano 7d535a
	dir=$func_resolve_sysroot_result
kusano 7d535a
	# We need an absolute path.
kusano 7d535a
	case $dir in
kusano 7d535a
	[\\/]* | [A-Za-z]:[\\/]*) ;;
kusano 7d535a
	*)
kusano 7d535a
	  absdir=`cd "$dir" && pwd`
kusano 7d535a
	  test -z "$absdir" && \
kusano 7d535a
	    func_fatal_error "cannot determine absolute directory name of \`$dir'"
kusano 7d535a
	  dir="$absdir"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	case "$deplibs " in
kusano 7d535a
	*" -L$dir "* | *" $arg "*)
kusano 7d535a
	  # Will only happen for absolute or sysroot arguments
kusano 7d535a
	  ;;
kusano 7d535a
	*)
kusano 7d535a
	  # Preserve sysroot, but never include relative directories
kusano 7d535a
	  case $dir in
kusano 7d535a
	    [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;;
kusano 7d535a
	    *) func_append deplibs " -L$dir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	  func_append lib_search_path " $dir"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	case $host in
kusano 7d535a
	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
kusano 7d535a
	  testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'`
kusano 7d535a
	  case :$dllsearchpath: in
kusano 7d535a
	  *":$dir:"*) ;;
kusano 7d535a
	  ::) dllsearchpath=$dir;;
kusano 7d535a
	  *) func_append dllsearchpath ":$dir";;
kusano 7d535a
	  esac
kusano 7d535a
	  case :$dllsearchpath: in
kusano 7d535a
	  *":$testbindir:"*) ;;
kusano 7d535a
	  ::) dllsearchpath=$testbindir;;
kusano 7d535a
	  *) func_append dllsearchpath ":$testbindir";;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -l*)
kusano 7d535a
	if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
kusano 7d535a
	  case $host in
kusano 7d535a
	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*)
kusano 7d535a
	    # These systems don't actually have a C or math library (as such)
kusano 7d535a
	    continue
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-os2*)
kusano 7d535a
	    # These systems don't actually have a C library (as such)
kusano 7d535a
	    test "X$arg" = "X-lc" && continue
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
kusano 7d535a
	    # Do not include libc due to us having libc/libc_r.
kusano 7d535a
	    test "X$arg" = "X-lc" && continue
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-rhapsody* | *-*-darwin1.[012])
kusano 7d535a
	    # Rhapsody C and math libraries are in the System framework
kusano 7d535a
	    func_append deplibs " System.ltframework"
kusano 7d535a
	    continue
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-sco3.2v5* | *-*-sco5v6*)
kusano 7d535a
	    # Causes problems with __ctype
kusano 7d535a
	    test "X$arg" = "X-lc" && continue
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
kusano 7d535a
	    # Compiler inserts libc in the correct place for threads to work
kusano 7d535a
	    test "X$arg" = "X-lc" && continue
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	elif test "X$arg" = "X-lc_r"; then
kusano 7d535a
	 case $host in
kusano 7d535a
	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
kusano 7d535a
	   # Do not include libc_r directly, use -pthread flag.
kusano 7d535a
	   continue
kusano 7d535a
	   ;;
kusano 7d535a
	 esac
kusano 7d535a
	fi
kusano 7d535a
	func_append deplibs " $arg"
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -module)
kusano 7d535a
	module=yes
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      # Tru64 UNIX uses -model [arg] to determine the layout of C++
kusano 7d535a
      # classes, name mangling, and exception handling.
kusano 7d535a
      # Darwin uses the -arch flag to determine output architecture.
kusano 7d535a
      -model|-arch|-isysroot|--sysroot)
kusano 7d535a
	func_append compiler_flags " $arg"
kusano 7d535a
	func_append compile_command " $arg"
kusano 7d535a
	func_append finalize_command " $arg"
kusano 7d535a
	prev=xcompiler
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
kusano 7d535a
      |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
kusano 7d535a
	func_append compiler_flags " $arg"
kusano 7d535a
	func_append compile_command " $arg"
kusano 7d535a
	func_append finalize_command " $arg"
kusano 7d535a
	case "$new_inherited_linker_flags " in
kusano 7d535a
	    *" $arg "*) ;;
kusano 7d535a
	    * ) func_append new_inherited_linker_flags " $arg" ;;
kusano 7d535a
	esac
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -multi_module)
kusano 7d535a
	single_module="${wl}-multi_module"
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -no-fast-install)
kusano 7d535a
	fast_install=no
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -no-install)
kusano 7d535a
	case $host in
kusano 7d535a
	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
kusano 7d535a
	  # The PATH hackery in wrapper scripts is required on Windows
kusano 7d535a
	  # and Darwin in order for the loader to find any dlls it needs.
kusano 7d535a
	  func_warning "\`-no-install' is ignored for $host"
kusano 7d535a
	  func_warning "assuming \`-no-fast-install' instead"
kusano 7d535a
	  fast_install=no
kusano 7d535a
	  ;;
kusano 7d535a
	*) no_install=yes ;;
kusano 7d535a
	esac
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -no-undefined)
kusano 7d535a
	allow_undefined=no
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -objectlist)
kusano 7d535a
	prev=objectlist
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -o) prev=output ;;
kusano 7d535a
kusano 7d535a
      -precious-files-regex)
kusano 7d535a
	prev=precious_regex
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -release)
kusano 7d535a
	prev=release
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -rpath)
kusano 7d535a
	prev=rpath
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -R)
kusano 7d535a
	prev=xrpath
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -R*)
kusano 7d535a
	func_stripname '-R' '' "$arg"
kusano 7d535a
	dir=$func_stripname_result
kusano 7d535a
	# We need an absolute path.
kusano 7d535a
	case $dir in
kusano 7d535a
	[\\/]* | [A-Za-z]:[\\/]*) ;;
kusano 7d535a
	=*)
kusano 7d535a
	  func_stripname '=' '' "$dir"
kusano 7d535a
	  dir=$lt_sysroot$func_stripname_result
kusano 7d535a
	  ;;
kusano 7d535a
	*)
kusano 7d535a
	  func_fatal_error "only absolute run-paths are allowed"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	case "$xrpath " in
kusano 7d535a
	*" $dir "*) ;;
kusano 7d535a
	*) func_append xrpath " $dir" ;;
kusano 7d535a
	esac
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -shared)
kusano 7d535a
	# The effects of -shared are defined in a previous loop.
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -shrext)
kusano 7d535a
	prev=shrext
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -static | -static-libtool-libs)
kusano 7d535a
	# The effects of -static are defined in a previous loop.
kusano 7d535a
	# We used to do the same as -all-static on platforms that
kusano 7d535a
	# didn't have a PIC flag, but the assumption that the effects
kusano 7d535a
	# would be equivalent was wrong.  It would break on at least
kusano 7d535a
	# Digital Unix and AIX.
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -thread-safe)
kusano 7d535a
	thread_safe=yes
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -version-info)
kusano 7d535a
	prev=vinfo
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -version-number)
kusano 7d535a
	prev=vinfo
kusano 7d535a
	vinfo_number=yes
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -weak)
kusano 7d535a
        prev=weak
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -Wc,*)
kusano 7d535a
	func_stripname '-Wc,' '' "$arg"
kusano 7d535a
	args=$func_stripname_result
kusano 7d535a
	arg=
kusano 7d535a
	save_ifs="$IFS"; IFS=','
kusano 7d535a
	for flag in $args; do
kusano 7d535a
	  IFS="$save_ifs"
kusano 7d535a
          func_quote_for_eval "$flag"
kusano 7d535a
	  func_append arg " $func_quote_for_eval_result"
kusano 7d535a
	  func_append compiler_flags " $func_quote_for_eval_result"
kusano 7d535a
	done
kusano 7d535a
	IFS="$save_ifs"
kusano 7d535a
	func_stripname ' ' '' "$arg"
kusano 7d535a
	arg=$func_stripname_result
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -Wl,*)
kusano 7d535a
	func_stripname '-Wl,' '' "$arg"
kusano 7d535a
	args=$func_stripname_result
kusano 7d535a
	arg=
kusano 7d535a
	save_ifs="$IFS"; IFS=','
kusano 7d535a
	for flag in $args; do
kusano 7d535a
	  IFS="$save_ifs"
kusano 7d535a
          func_quote_for_eval "$flag"
kusano 7d535a
	  func_append arg " $wl$func_quote_for_eval_result"
kusano 7d535a
	  func_append compiler_flags " $wl$func_quote_for_eval_result"
kusano 7d535a
	  func_append linker_flags " $func_quote_for_eval_result"
kusano 7d535a
	done
kusano 7d535a
	IFS="$save_ifs"
kusano 7d535a
	func_stripname ' ' '' "$arg"
kusano 7d535a
	arg=$func_stripname_result
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -Xcompiler)
kusano 7d535a
	prev=xcompiler
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -Xlinker)
kusano 7d535a
	prev=xlinker
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      -XCClinker)
kusano 7d535a
	prev=xcclinker
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      # -msg_* for osf cc
kusano 7d535a
      -msg_*)
kusano 7d535a
	func_quote_for_eval "$arg"
kusano 7d535a
	arg="$func_quote_for_eval_result"
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      # Flags to be passed through unchanged, with rationale:
kusano 7d535a
      # -64, -mips[0-9]      enable 64-bit mode for the SGI compiler
kusano 7d535a
      # -r[0-9][0-9]*        specify processor for the SGI compiler
kusano 7d535a
      # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler
kusano 7d535a
      # +DA*, +DD*           enable 64-bit mode for the HP compiler
kusano 7d535a
      # -q*                  compiler args for the IBM compiler
kusano 7d535a
      # -m*, -t[45]*, -txscale* architecture-specific flags for GCC
kusano 7d535a
      # -F/path              path to uninstalled frameworks, gcc on darwin
kusano 7d535a
      # -p, -pg, --coverage, -fprofile-*  profiling flags for GCC
kusano 7d535a
      # @file                GCC response files
kusano 7d535a
      # -tp=*                Portland pgcc target processor selection
kusano 7d535a
      # --sysroot=*          for sysroot support
kusano 7d535a
      # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
kusano 7d535a
      -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
kusano 7d535a
      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
kusano 7d535a
      -O*|-flto*|-fwhopr*|-fuse-linker-plugin)
kusano 7d535a
        func_quote_for_eval "$arg"
kusano 7d535a
	arg="$func_quote_for_eval_result"
kusano 7d535a
        func_append compile_command " $arg"
kusano 7d535a
        func_append finalize_command " $arg"
kusano 7d535a
        func_append compiler_flags " $arg"
kusano 7d535a
        continue
kusano 7d535a
        ;;
kusano 7d535a
kusano 7d535a
      # Some other compiler flag.
kusano 7d535a
      -* | +*)
kusano 7d535a
        func_quote_for_eval "$arg"
kusano 7d535a
	arg="$func_quote_for_eval_result"
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *.$objext)
kusano 7d535a
	# A standard object.
kusano 7d535a
	func_append objs " $arg"
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *.lo)
kusano 7d535a
	# A libtool-controlled object.
kusano 7d535a
kusano 7d535a
	# Check to see that this really is a libtool object.
kusano 7d535a
	if func_lalib_unsafe_p "$arg"; then
kusano 7d535a
	  pic_object=
kusano 7d535a
	  non_pic_object=
kusano 7d535a
kusano 7d535a
	  # Read the .lo file
kusano 7d535a
	  func_source "$arg"
kusano 7d535a
kusano 7d535a
	  if test -z "$pic_object" ||
kusano 7d535a
	     test -z "$non_pic_object" ||
kusano 7d535a
	     test "$pic_object" = none &&
kusano 7d535a
	     test "$non_pic_object" = none; then
kusano 7d535a
	    func_fatal_error "cannot find name of object for \`$arg'"
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  # Extract subdirectory from the argument.
kusano 7d535a
	  func_dirname "$arg" "/" ""
kusano 7d535a
	  xdir="$func_dirname_result"
kusano 7d535a
kusano 7d535a
	  if test "$pic_object" != none; then
kusano 7d535a
	    # Prepend the subdirectory the object is found in.
kusano 7d535a
	    pic_object="$xdir$pic_object"
kusano 7d535a
kusano 7d535a
	    if test "$prev" = dlfiles; then
kusano 7d535a
	      if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
kusano 7d535a
		func_append dlfiles " $pic_object"
kusano 7d535a
		prev=
kusano 7d535a
		continue
kusano 7d535a
	      else
kusano 7d535a
		# If libtool objects are unsupported, then we need to preload.
kusano 7d535a
		prev=dlprefiles
kusano 7d535a
	      fi
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    # CHECK ME:  I think I busted this.  -Ossama
kusano 7d535a
	    if test "$prev" = dlprefiles; then
kusano 7d535a
	      # Preload the old-style object.
kusano 7d535a
	      func_append dlprefiles " $pic_object"
kusano 7d535a
	      prev=
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    # A PIC object.
kusano 7d535a
	    func_append libobjs " $pic_object"
kusano 7d535a
	    arg="$pic_object"
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  # Non-PIC object.
kusano 7d535a
	  if test "$non_pic_object" != none; then
kusano 7d535a
	    # Prepend the subdirectory the object is found in.
kusano 7d535a
	    non_pic_object="$xdir$non_pic_object"
kusano 7d535a
kusano 7d535a
	    # A standard non-PIC object
kusano 7d535a
	    func_append non_pic_objects " $non_pic_object"
kusano 7d535a
	    if test -z "$pic_object" || test "$pic_object" = none ; then
kusano 7d535a
	      arg="$non_pic_object"
kusano 7d535a
	    fi
kusano 7d535a
	  else
kusano 7d535a
	    # If the PIC object exists, use it instead.
kusano 7d535a
	    # $xdir was prepended to $pic_object above.
kusano 7d535a
	    non_pic_object="$pic_object"
kusano 7d535a
	    func_append non_pic_objects " $non_pic_object"
kusano 7d535a
	  fi
kusano 7d535a
	else
kusano 7d535a
	  # Only an error if not doing a dry-run.
kusano 7d535a
	  if $opt_dry_run; then
kusano 7d535a
	    # Extract subdirectory from the argument.
kusano 7d535a
	    func_dirname "$arg" "/" ""
kusano 7d535a
	    xdir="$func_dirname_result"
kusano 7d535a
kusano 7d535a
	    func_lo2o "$arg"
kusano 7d535a
	    pic_object=$xdir$objdir/$func_lo2o_result
kusano 7d535a
	    non_pic_object=$xdir$func_lo2o_result
kusano 7d535a
	    func_append libobjs " $pic_object"
kusano 7d535a
	    func_append non_pic_objects " $non_pic_object"
kusano 7d535a
	  else
kusano 7d535a
	    func_fatal_error "\`$arg' is not a valid libtool object"
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *.$libext)
kusano 7d535a
	# An archive.
kusano 7d535a
	func_append deplibs " $arg"
kusano 7d535a
	func_append old_deplibs " $arg"
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *.la)
kusano 7d535a
	# A libtool-controlled library.
kusano 7d535a
kusano 7d535a
	func_resolve_sysroot "$arg"
kusano 7d535a
	if test "$prev" = dlfiles; then
kusano 7d535a
	  # This library was specified with -dlopen.
kusano 7d535a
	  func_append dlfiles " $func_resolve_sysroot_result"
kusano 7d535a
	  prev=
kusano 7d535a
	elif test "$prev" = dlprefiles; then
kusano 7d535a
	  # The library was specified with -dlpreopen.
kusano 7d535a
	  func_append dlprefiles " $func_resolve_sysroot_result"
kusano 7d535a
	  prev=
kusano 7d535a
	else
kusano 7d535a
	  func_append deplibs " $func_resolve_sysroot_result"
kusano 7d535a
	fi
kusano 7d535a
	continue
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      # Some other compiler argument.
kusano 7d535a
      *)
kusano 7d535a
	# Unknown arguments in both finalize_command and compile_command need
kusano 7d535a
	# to be aesthetically quoted because they are evaled later.
kusano 7d535a
	func_quote_for_eval "$arg"
kusano 7d535a
	arg="$func_quote_for_eval_result"
kusano 7d535a
	;;
kusano 7d535a
      esac # arg
kusano 7d535a
kusano 7d535a
      # Now actually substitute the argument into the commands.
kusano 7d535a
      if test -n "$arg"; then
kusano 7d535a
	func_append compile_command " $arg"
kusano 7d535a
	func_append finalize_command " $arg"
kusano 7d535a
      fi
kusano 7d535a
    done # argument parsing loop
kusano 7d535a
kusano 7d535a
    test -n "$prev" && \
kusano 7d535a
      func_fatal_help "the \`$prevarg' option requires an argument"
kusano 7d535a
kusano 7d535a
    if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
kusano 7d535a
      eval arg=\"$export_dynamic_flag_spec\"
kusano 7d535a
      func_append compile_command " $arg"
kusano 7d535a
      func_append finalize_command " $arg"
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    oldlibs=
kusano 7d535a
    # calculate the name of the file, without its directory
kusano 7d535a
    func_basename "$output"
kusano 7d535a
    outputname="$func_basename_result"
kusano 7d535a
    libobjs_save="$libobjs"
kusano 7d535a
kusano 7d535a
    if test -n "$shlibpath_var"; then
kusano 7d535a
      # get the directories listed in $shlibpath_var
kusano 7d535a
      eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\`
kusano 7d535a
    else
kusano 7d535a
      shlib_search_path=
kusano 7d535a
    fi
kusano 7d535a
    eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
kusano 7d535a
    eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
kusano 7d535a
kusano 7d535a
    func_dirname "$output" "/" ""
kusano 7d535a
    output_objdir="$func_dirname_result$objdir"
kusano 7d535a
    func_to_tool_file "$output_objdir/"
kusano 7d535a
    tool_output_objdir=$func_to_tool_file_result
kusano 7d535a
    # Create the object directory.
kusano 7d535a
    func_mkdir_p "$output_objdir"
kusano 7d535a
kusano 7d535a
    # Determine the type of output
kusano 7d535a
    case $output in
kusano 7d535a
    "")
kusano 7d535a
      func_fatal_help "you must specify an output file"
kusano 7d535a
      ;;
kusano 7d535a
    *.$libext) linkmode=oldlib ;;
kusano 7d535a
    *.lo | *.$objext) linkmode=obj ;;
kusano 7d535a
    *.la) linkmode=lib ;;
kusano 7d535a
    *) linkmode=prog ;; # Anything else should be a program.
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    specialdeplibs=
kusano 7d535a
kusano 7d535a
    libs=
kusano 7d535a
    # Find all interdependent deplibs by searching for libraries
kusano 7d535a
    # that are linked more than once (e.g. -la -lb -la)
kusano 7d535a
    for deplib in $deplibs; do
kusano 7d535a
      if $opt_preserve_dup_deps ; then
kusano 7d535a
	case "$libs " in
kusano 7d535a
	*" $deplib "*) func_append specialdeplibs " $deplib" ;;
kusano 7d535a
	esac
kusano 7d535a
      fi
kusano 7d535a
      func_append libs " $deplib"
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    if test "$linkmode" = lib; then
kusano 7d535a
      libs="$predeps $libs $compiler_lib_search_path $postdeps"
kusano 7d535a
kusano 7d535a
      # Compute libraries that are listed more than once in $predeps
kusano 7d535a
      # $postdeps and mark them as special (i.e., whose duplicates are
kusano 7d535a
      # not to be eliminated).
kusano 7d535a
      pre_post_deps=
kusano 7d535a
      if $opt_duplicate_compiler_generated_deps; then
kusano 7d535a
	for pre_post_dep in $predeps $postdeps; do
kusano 7d535a
	  case "$pre_post_deps " in
kusano 7d535a
	  *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;;
kusano 7d535a
	  esac
kusano 7d535a
	  func_append pre_post_deps " $pre_post_dep"
kusano 7d535a
	done
kusano 7d535a
      fi
kusano 7d535a
      pre_post_deps=
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    deplibs=
kusano 7d535a
    newdependency_libs=
kusano 7d535a
    newlib_search_path=
kusano 7d535a
    need_relink=no # whether we're linking any uninstalled libtool libraries
kusano 7d535a
    notinst_deplibs= # not-installed libtool libraries
kusano 7d535a
    notinst_path= # paths that contain not-installed libtool libraries
kusano 7d535a
kusano 7d535a
    case $linkmode in
kusano 7d535a
    lib)
kusano 7d535a
	passes="conv dlpreopen link"
kusano 7d535a
	for file in $dlfiles $dlprefiles; do
kusano 7d535a
	  case $file in
kusano 7d535a
	  *.la) ;;
kusano 7d535a
	  *)
kusano 7d535a
	    func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file"
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	done
kusano 7d535a
	;;
kusano 7d535a
    prog)
kusano 7d535a
	compile_deplibs=
kusano 7d535a
	finalize_deplibs=
kusano 7d535a
	alldeplibs=no
kusano 7d535a
	newdlfiles=
kusano 7d535a
	newdlprefiles=
kusano 7d535a
	passes="conv scan dlopen dlpreopen link"
kusano 7d535a
	;;
kusano 7d535a
    *)  passes="conv"
kusano 7d535a
	;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    for pass in $passes; do
kusano 7d535a
      # The preopen pass in lib mode reverses $deplibs; put it back here
kusano 7d535a
      # so that -L comes before libs that need it for instance...
kusano 7d535a
      if test "$linkmode,$pass" = "lib,link"; then
kusano 7d535a
	## FIXME: Find the place where the list is rebuilt in the wrong
kusano 7d535a
	##        order, and fix it there properly
kusano 7d535a
        tmp_deplibs=
kusano 7d535a
	for deplib in $deplibs; do
kusano 7d535a
	  tmp_deplibs="$deplib $tmp_deplibs"
kusano 7d535a
	done
kusano 7d535a
	deplibs="$tmp_deplibs"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      if test "$linkmode,$pass" = "lib,link" ||
kusano 7d535a
	 test "$linkmode,$pass" = "prog,scan"; then
kusano 7d535a
	libs="$deplibs"
kusano 7d535a
	deplibs=
kusano 7d535a
      fi
kusano 7d535a
      if test "$linkmode" = prog; then
kusano 7d535a
	case $pass in
kusano 7d535a
	dlopen) libs="$dlfiles" ;;
kusano 7d535a
	dlpreopen) libs="$dlprefiles" ;;
kusano 7d535a
	link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
kusano 7d535a
	esac
kusano 7d535a
      fi
kusano 7d535a
      if test "$linkmode,$pass" = "lib,dlpreopen"; then
kusano 7d535a
	# Collect and forward deplibs of preopened libtool libs
kusano 7d535a
	for lib in $dlprefiles; do
kusano 7d535a
	  # Ignore non-libtool-libs
kusano 7d535a
	  dependency_libs=
kusano 7d535a
	  func_resolve_sysroot "$lib"
kusano 7d535a
	  case $lib in
kusano 7d535a
	  *.la)	func_source "$func_resolve_sysroot_result" ;;
kusano 7d535a
	  esac
kusano 7d535a
kusano 7d535a
	  # Collect preopened libtool deplibs, except any this library
kusano 7d535a
	  # has declared as weak libs
kusano 7d535a
	  for deplib in $dependency_libs; do
kusano 7d535a
	    func_basename "$deplib"
kusano 7d535a
            deplib_base=$func_basename_result
kusano 7d535a
	    case " $weak_libs " in
kusano 7d535a
	    *" $deplib_base "*) ;;
kusano 7d535a
	    *) func_append deplibs " $deplib" ;;
kusano 7d535a
	    esac
kusano 7d535a
	  done
kusano 7d535a
	done
kusano 7d535a
	libs="$dlprefiles"
kusano 7d535a
      fi
kusano 7d535a
      if test "$pass" = dlopen; then
kusano 7d535a
	# Collect dlpreopened libraries
kusano 7d535a
	save_deplibs="$deplibs"
kusano 7d535a
	deplibs=
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      for deplib in $libs; do
kusano 7d535a
	lib=
kusano 7d535a
	found=no
kusano 7d535a
	case $deplib in
kusano 7d535a
	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
kusano 7d535a
        |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
kusano 7d535a
	  if test "$linkmode,$pass" = "prog,link"; then
kusano 7d535a
	    compile_deplibs="$deplib $compile_deplibs"
kusano 7d535a
	    finalize_deplibs="$deplib $finalize_deplibs"
kusano 7d535a
	  else
kusano 7d535a
	    func_append compiler_flags " $deplib"
kusano 7d535a
	    if test "$linkmode" = lib ; then
kusano 7d535a
		case "$new_inherited_linker_flags " in
kusano 7d535a
		    *" $deplib "*) ;;
kusano 7d535a
		    * ) func_append new_inherited_linker_flags " $deplib" ;;
kusano 7d535a
		esac
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	-l*)
kusano 7d535a
	  if test "$linkmode" != lib && test "$linkmode" != prog; then
kusano 7d535a
	    func_warning "\`-l' is ignored for archives/objects"
kusano 7d535a
	    continue
kusano 7d535a
	  fi
kusano 7d535a
	  func_stripname '-l' '' "$deplib"
kusano 7d535a
	  name=$func_stripname_result
kusano 7d535a
	  if test "$linkmode" = lib; then
kusano 7d535a
	    searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
kusano 7d535a
	  else
kusano 7d535a
	    searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
kusano 7d535a
	  fi
kusano 7d535a
	  for searchdir in $searchdirs; do
kusano 7d535a
	    for search_ext in .la $std_shrext .so .a; do
kusano 7d535a
	      # Search the libtool library
kusano 7d535a
	      lib="$searchdir/lib${name}${search_ext}"
kusano 7d535a
	      if test -f "$lib"; then
kusano 7d535a
		if test "$search_ext" = ".la"; then
kusano 7d535a
		  found=yes
kusano 7d535a
		else
kusano 7d535a
		  found=no
kusano 7d535a
		fi
kusano 7d535a
		break 2
kusano 7d535a
	      fi
kusano 7d535a
	    done
kusano 7d535a
	  done
kusano 7d535a
	  if test "$found" != yes; then
kusano 7d535a
	    # deplib doesn't seem to be a libtool library
kusano 7d535a
	    if test "$linkmode,$pass" = "prog,link"; then
kusano 7d535a
	      compile_deplibs="$deplib $compile_deplibs"
kusano 7d535a
	      finalize_deplibs="$deplib $finalize_deplibs"
kusano 7d535a
	    else
kusano 7d535a
	      deplibs="$deplib $deplibs"
kusano 7d535a
	      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
kusano 7d535a
	    fi
kusano 7d535a
	    continue
kusano 7d535a
	  else # deplib is a libtool library
kusano 7d535a
	    # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
kusano 7d535a
	    # We need to do some special things here, and not later.
kusano 7d535a
	    if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
kusano 7d535a
	      case " $predeps $postdeps " in
kusano 7d535a
	      *" $deplib "*)
kusano 7d535a
		if func_lalib_p "$lib"; then
kusano 7d535a
		  library_names=
kusano 7d535a
		  old_library=
kusano 7d535a
		  func_source "$lib"
kusano 7d535a
		  for l in $old_library $library_names; do
kusano 7d535a
		    ll="$l"
kusano 7d535a
		  done
kusano 7d535a
		  if test "X$ll" = "X$old_library" ; then # only static version available
kusano 7d535a
		    found=no
kusano 7d535a
		    func_dirname "$lib" "" "."
kusano 7d535a
		    ladir="$func_dirname_result"
kusano 7d535a
		    lib=$ladir/$old_library
kusano 7d535a
		    if test "$linkmode,$pass" = "prog,link"; then
kusano 7d535a
		      compile_deplibs="$deplib $compile_deplibs"
kusano 7d535a
		      finalize_deplibs="$deplib $finalize_deplibs"
kusano 7d535a
		    else
kusano 7d535a
		      deplibs="$deplib $deplibs"
kusano 7d535a
		      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
kusano 7d535a
		    fi
kusano 7d535a
		    continue
kusano 7d535a
		  fi
kusano 7d535a
		fi
kusano 7d535a
		;;
kusano 7d535a
	      *) ;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	  ;; # -l
kusano 7d535a
	*.ltframework)
kusano 7d535a
	  if test "$linkmode,$pass" = "prog,link"; then
kusano 7d535a
	    compile_deplibs="$deplib $compile_deplibs"
kusano 7d535a
	    finalize_deplibs="$deplib $finalize_deplibs"
kusano 7d535a
	  else
kusano 7d535a
	    deplibs="$deplib $deplibs"
kusano 7d535a
	    if test "$linkmode" = lib ; then
kusano 7d535a
		case "$new_inherited_linker_flags " in
kusano 7d535a
		    *" $deplib "*) ;;
kusano 7d535a
		    * ) func_append new_inherited_linker_flags " $deplib" ;;
kusano 7d535a
		esac
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	-L*)
kusano 7d535a
	  case $linkmode in
kusano 7d535a
	  lib)
kusano 7d535a
	    deplibs="$deplib $deplibs"
kusano 7d535a
	    test "$pass" = conv && continue
kusano 7d535a
	    newdependency_libs="$deplib $newdependency_libs"
kusano 7d535a
	    func_stripname '-L' '' "$deplib"
kusano 7d535a
	    func_resolve_sysroot "$func_stripname_result"
kusano 7d535a
	    func_append newlib_search_path " $func_resolve_sysroot_result"
kusano 7d535a
	    ;;
kusano 7d535a
	  prog)
kusano 7d535a
	    if test "$pass" = conv; then
kusano 7d535a
	      deplibs="$deplib $deplibs"
kusano 7d535a
	      continue
kusano 7d535a
	    fi
kusano 7d535a
	    if test "$pass" = scan; then
kusano 7d535a
	      deplibs="$deplib $deplibs"
kusano 7d535a
	    else
kusano 7d535a
	      compile_deplibs="$deplib $compile_deplibs"
kusano 7d535a
	      finalize_deplibs="$deplib $finalize_deplibs"
kusano 7d535a
	    fi
kusano 7d535a
	    func_stripname '-L' '' "$deplib"
kusano 7d535a
	    func_resolve_sysroot "$func_stripname_result"
kusano 7d535a
	    func_append newlib_search_path " $func_resolve_sysroot_result"
kusano 7d535a
	    ;;
kusano 7d535a
	  *)
kusano 7d535a
	    func_warning "\`-L' is ignored for archives/objects"
kusano 7d535a
	    ;;
kusano 7d535a
	  esac # linkmode
kusano 7d535a
	  continue
kusano 7d535a
	  ;; # -L
kusano 7d535a
	-R*)
kusano 7d535a
	  if test "$pass" = link; then
kusano 7d535a
	    func_stripname '-R' '' "$deplib"
kusano 7d535a
	    func_resolve_sysroot "$func_stripname_result"
kusano 7d535a
	    dir=$func_resolve_sysroot_result
kusano 7d535a
	    # Make sure the xrpath contains only unique directories.
kusano 7d535a
	    case "$xrpath " in
kusano 7d535a
	    *" $dir "*) ;;
kusano 7d535a
	    *) func_append xrpath " $dir" ;;
kusano 7d535a
	    esac
kusano 7d535a
	  fi
kusano 7d535a
	  deplibs="$deplib $deplibs"
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	*.la)
kusano 7d535a
	  func_resolve_sysroot "$deplib"
kusano 7d535a
	  lib=$func_resolve_sysroot_result
kusano 7d535a
	  ;;
kusano 7d535a
	*.$libext)
kusano 7d535a
	  if test "$pass" = conv; then
kusano 7d535a
	    deplibs="$deplib $deplibs"
kusano 7d535a
	    continue
kusano 7d535a
	  fi
kusano 7d535a
	  case $linkmode in
kusano 7d535a
	  lib)
kusano 7d535a
	    # Linking convenience modules into shared libraries is allowed,
kusano 7d535a
	    # but linking other static libraries is non-portable.
kusano 7d535a
	    case " $dlpreconveniencelibs " in
kusano 7d535a
	    *" $deplib "*) ;;
kusano 7d535a
	    *)
kusano 7d535a
	      valid_a_lib=no
kusano 7d535a
	      case $deplibs_check_method in
kusano 7d535a
		match_pattern*)
kusano 7d535a
		  set dummy $deplibs_check_method; shift
kusano 7d535a
		  match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
kusano 7d535a
		  if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \
kusano 7d535a
		    | $EGREP "$match_pattern_regex" > /dev/null; then
kusano 7d535a
		    valid_a_lib=yes
kusano 7d535a
		  fi
kusano 7d535a
		;;
kusano 7d535a
		pass_all)
kusano 7d535a
		  valid_a_lib=yes
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	      if test "$valid_a_lib" != yes; then
kusano 7d535a
		echo
kusano 7d535a
		$ECHO "*** Warning: Trying to link with static lib archive $deplib."
kusano 7d535a
		echo "*** I have the capability to make that library automatically link in when"
kusano 7d535a
		echo "*** you link to this library.  But I can only do this if you have a"
kusano 7d535a
		echo "*** shared version of the library, which you do not appear to have"
kusano 7d535a
		echo "*** because the file extensions .$libext of this argument makes me believe"
kusano 7d535a
		echo "*** that it is just a static archive that I should not use here."
kusano 7d535a
	      else
kusano 7d535a
		echo
kusano 7d535a
		$ECHO "*** Warning: Linking the shared library $output against the"
kusano 7d535a
		$ECHO "*** static library $deplib is not portable!"
kusano 7d535a
		deplibs="$deplib $deplibs"
kusano 7d535a
	      fi
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	    continue
kusano 7d535a
	    ;;
kusano 7d535a
	  prog)
kusano 7d535a
	    if test "$pass" != link; then
kusano 7d535a
	      deplibs="$deplib $deplibs"
kusano 7d535a
	    else
kusano 7d535a
	      compile_deplibs="$deplib $compile_deplibs"
kusano 7d535a
	      finalize_deplibs="$deplib $finalize_deplibs"
kusano 7d535a
	    fi
kusano 7d535a
	    continue
kusano 7d535a
	    ;;
kusano 7d535a
	  esac # linkmode
kusano 7d535a
	  ;; # *.$libext
kusano 7d535a
	*.lo | *.$objext)
kusano 7d535a
	  if test "$pass" = conv; then
kusano 7d535a
	    deplibs="$deplib $deplibs"
kusano 7d535a
	  elif test "$linkmode" = prog; then
kusano 7d535a
	    if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
kusano 7d535a
	      # If there is no dlopen support or we're linking statically,
kusano 7d535a
	      # we need to preload.
kusano 7d535a
	      func_append newdlprefiles " $deplib"
kusano 7d535a
	      compile_deplibs="$deplib $compile_deplibs"
kusano 7d535a
	      finalize_deplibs="$deplib $finalize_deplibs"
kusano 7d535a
	    else
kusano 7d535a
	      func_append newdlfiles " $deplib"
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	%DEPLIBS%)
kusano 7d535a
	  alldeplibs=yes
kusano 7d535a
	  continue
kusano 7d535a
	  ;;
kusano 7d535a
	esac # case $deplib
kusano 7d535a
kusano 7d535a
	if test "$found" = yes || test -f "$lib"; then :
kusano 7d535a
	else
kusano 7d535a
	  func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Check to see that this really is a libtool archive.
kusano 7d535a
	func_lalib_unsafe_p "$lib" \
kusano 7d535a
	  || func_fatal_error "\`$lib' is not a valid libtool archive"
kusano 7d535a
kusano 7d535a
	func_dirname "$lib" "" "."
kusano 7d535a
	ladir="$func_dirname_result"
kusano 7d535a
kusano 7d535a
	dlname=
kusano 7d535a
	dlopen=
kusano 7d535a
	dlpreopen=
kusano 7d535a
	libdir=
kusano 7d535a
	library_names=
kusano 7d535a
	old_library=
kusano 7d535a
	inherited_linker_flags=
kusano 7d535a
	# If the library was installed with an old release of libtool,
kusano 7d535a
	# it will not redefine variables installed, or shouldnotlink
kusano 7d535a
	installed=yes
kusano 7d535a
	shouldnotlink=no
kusano 7d535a
	avoidtemprpath=
kusano 7d535a
kusano 7d535a
kusano 7d535a
	# Read the .la file
kusano 7d535a
	func_source "$lib"
kusano 7d535a
kusano 7d535a
	# Convert "-framework foo" to "foo.ltframework"
kusano 7d535a
	if test -n "$inherited_linker_flags"; then
kusano 7d535a
	  tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'`
kusano 7d535a
	  for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do
kusano 7d535a
	    case " $new_inherited_linker_flags " in
kusano 7d535a
	      *" $tmp_inherited_linker_flag "*) ;;
kusano 7d535a
	      *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";;
kusano 7d535a
	    esac
kusano 7d535a
	  done
kusano 7d535a
	fi
kusano 7d535a
	dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
kusano 7d535a
	if test "$linkmode,$pass" = "lib,link" ||
kusano 7d535a
	   test "$linkmode,$pass" = "prog,scan" ||
kusano 7d535a
	   { test "$linkmode" != prog && test "$linkmode" != lib; }; then
kusano 7d535a
	  test -n "$dlopen" && func_append dlfiles " $dlopen"
kusano 7d535a
	  test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	if test "$pass" = conv; then
kusano 7d535a
	  # Only check for convenience libraries
kusano 7d535a
	  deplibs="$lib $deplibs"
kusano 7d535a
	  if test -z "$libdir"; then
kusano 7d535a
	    if test -z "$old_library"; then
kusano 7d535a
	      func_fatal_error "cannot find name of link library for \`$lib'"
kusano 7d535a
	    fi
kusano 7d535a
	    # It is a libtool convenience library, so add in its objects.
kusano 7d535a
	    func_append convenience " $ladir/$objdir/$old_library"
kusano 7d535a
	    func_append old_convenience " $ladir/$objdir/$old_library"
kusano 7d535a
	  elif test "$linkmode" != prog && test "$linkmode" != lib; then
kusano 7d535a
	    func_fatal_error "\`$lib' is not a convenience library"
kusano 7d535a
	  fi
kusano 7d535a
	  tmp_libs=
kusano 7d535a
	  for deplib in $dependency_libs; do
kusano 7d535a
	    deplibs="$deplib $deplibs"
kusano 7d535a
	    if $opt_preserve_dup_deps ; then
kusano 7d535a
	      case "$tmp_libs " in
kusano 7d535a
	      *" $deplib "*) func_append specialdeplibs " $deplib" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
	    func_append tmp_libs " $deplib"
kusano 7d535a
	  done
kusano 7d535a
	  continue
kusano 7d535a
	fi # $pass = conv
kusano 7d535a
kusano 7d535a
kusano 7d535a
	# Get the name of the library we link against.
kusano 7d535a
	linklib=
kusano 7d535a
	if test -n "$old_library" &&
kusano 7d535a
	   { test "$prefer_static_libs" = yes ||
kusano 7d535a
	     test "$prefer_static_libs,$installed" = "built,no"; }; then
kusano 7d535a
	  linklib=$old_library
kusano 7d535a
	else
kusano 7d535a
	  for l in $old_library $library_names; do
kusano 7d535a
	    linklib="$l"
kusano 7d535a
	  done
kusano 7d535a
	fi
kusano 7d535a
	if test -z "$linklib"; then
kusano 7d535a
	  func_fatal_error "cannot find name of link library for \`$lib'"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# This library was specified with -dlopen.
kusano 7d535a
	if test "$pass" = dlopen; then
kusano 7d535a
	  if test -z "$libdir"; then
kusano 7d535a
	    func_fatal_error "cannot -dlopen a convenience library: \`$lib'"
kusano 7d535a
	  fi
kusano 7d535a
	  if test -z "$dlname" ||
kusano 7d535a
	     test "$dlopen_support" != yes ||
kusano 7d535a
	     test "$build_libtool_libs" = no; then
kusano 7d535a
	    # If there is no dlname, no dlopen support or we're linking
kusano 7d535a
	    # statically, we need to preload.  We also need to preload any
kusano 7d535a
	    # dependent libraries so libltdl's deplib preloader doesn't
kusano 7d535a
	    # bomb out in the load deplibs phase.
kusano 7d535a
	    func_append dlprefiles " $lib $dependency_libs"
kusano 7d535a
	  else
kusano 7d535a
	    func_append newdlfiles " $lib"
kusano 7d535a
	  fi
kusano 7d535a
	  continue
kusano 7d535a
	fi # $pass = dlopen
kusano 7d535a
kusano 7d535a
	# We need an absolute path.
kusano 7d535a
	case $ladir in
kusano 7d535a
	[\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
kusano 7d535a
	*)
kusano 7d535a
	  abs_ladir=`cd "$ladir" && pwd`
kusano 7d535a
	  if test -z "$abs_ladir"; then
kusano 7d535a
	    func_warning "cannot determine absolute directory name of \`$ladir'"
kusano 7d535a
	    func_warning "passing it literally to the linker, although it might fail"
kusano 7d535a
	    abs_ladir="$ladir"
kusano 7d535a
	  fi
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	func_basename "$lib"
kusano 7d535a
	laname="$func_basename_result"
kusano 7d535a
kusano 7d535a
	# Find the relevant object directory and library name.
kusano 7d535a
	if test "X$installed" = Xyes; then
kusano 7d535a
	  if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
kusano 7d535a
	    func_warning "library \`$lib' was moved."
kusano 7d535a
	    dir="$ladir"
kusano 7d535a
	    absdir="$abs_ladir"
kusano 7d535a
	    libdir="$abs_ladir"
kusano 7d535a
	  else
kusano 7d535a
	    dir="$lt_sysroot$libdir"
kusano 7d535a
	    absdir="$lt_sysroot$libdir"
kusano 7d535a
	  fi
kusano 7d535a
	  test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
kusano 7d535a
	else
kusano 7d535a
	  if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
kusano 7d535a
	    dir="$ladir"
kusano 7d535a
	    absdir="$abs_ladir"
kusano 7d535a
	    # Remove this search path later
kusano 7d535a
	    func_append notinst_path " $abs_ladir"
kusano 7d535a
	  else
kusano 7d535a
	    dir="$ladir/$objdir"
kusano 7d535a
	    absdir="$abs_ladir/$objdir"
kusano 7d535a
	    # Remove this search path later
kusano 7d535a
	    func_append notinst_path " $abs_ladir"
kusano 7d535a
	  fi
kusano 7d535a
	fi # $installed = yes
kusano 7d535a
	func_stripname 'lib' '.la' "$laname"
kusano 7d535a
	name=$func_stripname_result
kusano 7d535a
kusano 7d535a
	# This library was specified with -dlpreopen.
kusano 7d535a
	if test "$pass" = dlpreopen; then
kusano 7d535a
	  if test -z "$libdir" && test "$linkmode" = prog; then
kusano 7d535a
	    func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"
kusano 7d535a
	  fi
kusano 7d535a
	  case "$host" in
kusano 7d535a
	    # special handling for platforms with PE-DLLs.
kusano 7d535a
	    *cygwin* | *mingw* | *cegcc* )
kusano 7d535a
	      # Linker will automatically link against shared library if both
kusano 7d535a
	      # static and shared are present.  Therefore, ensure we extract
kusano 7d535a
	      # symbols from the import library if a shared library is present
kusano 7d535a
	      # (otherwise, the dlopen module name will be incorrect).  We do
kusano 7d535a
	      # this by putting the import library name into $newdlprefiles.
kusano 7d535a
	      # We recover the dlopen module name by 'saving' the la file
kusano 7d535a
	      # name in a special purpose variable, and (later) extracting the
kusano 7d535a
	      # dlname from the la file.
kusano 7d535a
	      if test -n "$dlname"; then
kusano 7d535a
	        func_tr_sh "$dir/$linklib"
kusano 7d535a
	        eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname"
kusano 7d535a
	        func_append newdlprefiles " $dir/$linklib"
kusano 7d535a
	      else
kusano 7d535a
	        func_append newdlprefiles " $dir/$old_library"
kusano 7d535a
	        # Keep a list of preopened convenience libraries to check
kusano 7d535a
	        # that they are being used correctly in the link pass.
kusano 7d535a
	        test -z "$libdir" && \
kusano 7d535a
	          func_append dlpreconveniencelibs " $dir/$old_library"
kusano 7d535a
	      fi
kusano 7d535a
	    ;;
kusano 7d535a
	    * )
kusano 7d535a
	      # Prefer using a static library (so that no silly _DYNAMIC symbols
kusano 7d535a
	      # are required to link).
kusano 7d535a
	      if test -n "$old_library"; then
kusano 7d535a
	        func_append newdlprefiles " $dir/$old_library"
kusano 7d535a
	        # Keep a list of preopened convenience libraries to check
kusano 7d535a
	        # that they are being used correctly in the link pass.
kusano 7d535a
	        test -z "$libdir" && \
kusano 7d535a
	          func_append dlpreconveniencelibs " $dir/$old_library"
kusano 7d535a
	      # Otherwise, use the dlname, so that lt_dlopen finds it.
kusano 7d535a
	      elif test -n "$dlname"; then
kusano 7d535a
	        func_append newdlprefiles " $dir/$dlname"
kusano 7d535a
	      else
kusano 7d535a
	        func_append newdlprefiles " $dir/$linklib"
kusano 7d535a
	      fi
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	fi # $pass = dlpreopen
kusano 7d535a
kusano 7d535a
	if test -z "$libdir"; then
kusano 7d535a
	  # Link the convenience library
kusano 7d535a
	  if test "$linkmode" = lib; then
kusano 7d535a
	    deplibs="$dir/$old_library $deplibs"
kusano 7d535a
	  elif test "$linkmode,$pass" = "prog,link"; then
kusano 7d535a
	    compile_deplibs="$dir/$old_library $compile_deplibs"
kusano 7d535a
	    finalize_deplibs="$dir/$old_library $finalize_deplibs"
kusano 7d535a
	  else
kusano 7d535a
	    deplibs="$lib $deplibs" # used for prog,scan pass
kusano 7d535a
	  fi
kusano 7d535a
	  continue
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
kusano 7d535a
	if test "$linkmode" = prog && test "$pass" != link; then
kusano 7d535a
	  func_append newlib_search_path " $ladir"
kusano 7d535a
	  deplibs="$lib $deplibs"
kusano 7d535a
kusano 7d535a
	  linkalldeplibs=no
kusano 7d535a
	  if test "$link_all_deplibs" != no || test -z "$library_names" ||
kusano 7d535a
	     test "$build_libtool_libs" = no; then
kusano 7d535a
	    linkalldeplibs=yes
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  tmp_libs=
kusano 7d535a
	  for deplib in $dependency_libs; do
kusano 7d535a
	    case $deplib in
kusano 7d535a
	    -L*) func_stripname '-L' '' "$deplib"
kusano 7d535a
	         func_resolve_sysroot "$func_stripname_result"
kusano 7d535a
	         func_append newlib_search_path " $func_resolve_sysroot_result"
kusano 7d535a
		 ;;
kusano 7d535a
	    esac
kusano 7d535a
	    # Need to link against all dependency_libs?
kusano 7d535a
	    if test "$linkalldeplibs" = yes; then
kusano 7d535a
	      deplibs="$deplib $deplibs"
kusano 7d535a
	    else
kusano 7d535a
	      # Need to hardcode shared library paths
kusano 7d535a
	      # or/and link against static libraries
kusano 7d535a
	      newdependency_libs="$deplib $newdependency_libs"
kusano 7d535a
	    fi
kusano 7d535a
	    if $opt_preserve_dup_deps ; then
kusano 7d535a
	      case "$tmp_libs " in
kusano 7d535a
	      *" $deplib "*) func_append specialdeplibs " $deplib" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
	    func_append tmp_libs " $deplib"
kusano 7d535a
	  done # for deplib
kusano 7d535a
	  continue
kusano 7d535a
	fi # $linkmode = prog...
kusano 7d535a
kusano 7d535a
	if test "$linkmode,$pass" = "prog,link"; then
kusano 7d535a
	  if test -n "$library_names" &&
kusano 7d535a
	     { { test "$prefer_static_libs" = no ||
kusano 7d535a
	         test "$prefer_static_libs,$installed" = "built,yes"; } ||
kusano 7d535a
	       test -z "$old_library"; }; then
kusano 7d535a
	    # We need to hardcode the library path
kusano 7d535a
	    if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
kusano 7d535a
	      # Make sure the rpath contains only unique directories.
kusano 7d535a
	      case "$temp_rpath:" in
kusano 7d535a
	      *"$absdir:"*) ;;
kusano 7d535a
	      *) func_append temp_rpath "$absdir:" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    # Hardcode the library path.
kusano 7d535a
	    # Skip directories that are in the system default run-time
kusano 7d535a
	    # search path.
kusano 7d535a
	    case " $sys_lib_dlsearch_path " in
kusano 7d535a
	    *" $absdir "*) ;;
kusano 7d535a
	    *)
kusano 7d535a
	      case "$compile_rpath " in
kusano 7d535a
	      *" $absdir "*) ;;
kusano 7d535a
	      *) func_append compile_rpath " $absdir" ;;
kusano 7d535a
	      esac
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	    case " $sys_lib_dlsearch_path " in
kusano 7d535a
	    *" $libdir "*) ;;
kusano 7d535a
	    *)
kusano 7d535a
	      case "$finalize_rpath " in
kusano 7d535a
	      *" $libdir "*) ;;
kusano 7d535a
	      *) func_append finalize_rpath " $libdir" ;;
kusano 7d535a
	      esac
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	  fi # $linkmode,$pass = prog,link...
kusano 7d535a
kusano 7d535a
	  if test "$alldeplibs" = yes &&
kusano 7d535a
	     { test "$deplibs_check_method" = pass_all ||
kusano 7d535a
	       { test "$build_libtool_libs" = yes &&
kusano 7d535a
		 test -n "$library_names"; }; }; then
kusano 7d535a
	    # We only need to search for static libraries
kusano 7d535a
	    continue
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	link_static=no # Whether the deplib will be linked statically
kusano 7d535a
	use_static_libs=$prefer_static_libs
kusano 7d535a
	if test "$use_static_libs" = built && test "$installed" = yes; then
kusano 7d535a
	  use_static_libs=no
kusano 7d535a
	fi
kusano 7d535a
	if test -n "$library_names" &&
kusano 7d535a
	   { test "$use_static_libs" = no || test -z "$old_library"; }; then
kusano 7d535a
	  case $host in
kusano 7d535a
	  *cygwin* | *mingw* | *cegcc*)
kusano 7d535a
	      # No point in relinking DLLs because paths are not encoded
kusano 7d535a
	      func_append notinst_deplibs " $lib"
kusano 7d535a
	      need_relink=no
kusano 7d535a
	    ;;
kusano 7d535a
	  *)
kusano 7d535a
	    if test "$installed" = no; then
kusano 7d535a
	      func_append notinst_deplibs " $lib"
kusano 7d535a
	      need_relink=yes
kusano 7d535a
	    fi
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  # This is a shared library
kusano 7d535a
kusano 7d535a
	  # Warn about portability, can't link against -module's on some
kusano 7d535a
	  # systems (darwin).  Don't bleat about dlopened modules though!
kusano 7d535a
	  dlopenmodule=""
kusano 7d535a
	  for dlpremoduletest in $dlprefiles; do
kusano 7d535a
	    if test "X$dlpremoduletest" = "X$lib"; then
kusano 7d535a
	      dlopenmodule="$dlpremoduletest"
kusano 7d535a
	      break
kusano 7d535a
	    fi
kusano 7d535a
	  done
kusano 7d535a
	  if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then
kusano 7d535a
	    echo
kusano 7d535a
	    if test "$linkmode" = prog; then
kusano 7d535a
	      $ECHO "*** Warning: Linking the executable $output against the loadable module"
kusano 7d535a
	    else
kusano 7d535a
	      $ECHO "*** Warning: Linking the shared library $output against the loadable module"
kusano 7d535a
	    fi
kusano 7d535a
	    $ECHO "*** $linklib is not portable!"
kusano 7d535a
	  fi
kusano 7d535a
	  if test "$linkmode" = lib &&
kusano 7d535a
	     test "$hardcode_into_libs" = yes; then
kusano 7d535a
	    # Hardcode the library path.
kusano 7d535a
	    # Skip directories that are in the system default run-time
kusano 7d535a
	    # search path.
kusano 7d535a
	    case " $sys_lib_dlsearch_path " in
kusano 7d535a
	    *" $absdir "*) ;;
kusano 7d535a
	    *)
kusano 7d535a
	      case "$compile_rpath " in
kusano 7d535a
	      *" $absdir "*) ;;
kusano 7d535a
	      *) func_append compile_rpath " $absdir" ;;
kusano 7d535a
	      esac
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	    case " $sys_lib_dlsearch_path " in
kusano 7d535a
	    *" $libdir "*) ;;
kusano 7d535a
	    *)
kusano 7d535a
	      case "$finalize_rpath " in
kusano 7d535a
	      *" $libdir "*) ;;
kusano 7d535a
	      *) func_append finalize_rpath " $libdir" ;;
kusano 7d535a
	      esac
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  if test -n "$old_archive_from_expsyms_cmds"; then
kusano 7d535a
	    # figure out the soname
kusano 7d535a
	    set dummy $library_names
kusano 7d535a
	    shift
kusano 7d535a
	    realname="$1"
kusano 7d535a
	    shift
kusano 7d535a
	    libname=`eval "\\$ECHO \"$libname_spec\""`
kusano 7d535a
	    # use dlname if we got it. it's perfectly good, no?
kusano 7d535a
	    if test -n "$dlname"; then
kusano 7d535a
	      soname="$dlname"
kusano 7d535a
	    elif test -n "$soname_spec"; then
kusano 7d535a
	      # bleh windows
kusano 7d535a
	      case $host in
kusano 7d535a
	      *cygwin* | mingw* | *cegcc*)
kusano 7d535a
	        func_arith $current - $age
kusano 7d535a
		major=$func_arith_result
kusano 7d535a
		versuffix="-$major"
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	      eval soname=\"$soname_spec\"
kusano 7d535a
	    else
kusano 7d535a
	      soname="$realname"
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    # Make a new name for the extract_expsyms_cmds to use
kusano 7d535a
	    soroot="$soname"
kusano 7d535a
	    func_basename "$soroot"
kusano 7d535a
	    soname="$func_basename_result"
kusano 7d535a
	    func_stripname 'lib' '.dll' "$soname"
kusano 7d535a
	    newlib=libimp-$func_stripname_result.a
kusano 7d535a
kusano 7d535a
	    # If the library has no export list, then create one now
kusano 7d535a
	    if test -f "$output_objdir/$soname-def"; then :
kusano 7d535a
	    else
kusano 7d535a
	      func_verbose "extracting exported symbol list from \`$soname'"
kusano 7d535a
	      func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    # Create $newlib
kusano 7d535a
	    if test -f "$output_objdir/$newlib"; then :; else
kusano 7d535a
	      func_verbose "generating import library for \`$soname'"
kusano 7d535a
	      func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
kusano 7d535a
	    fi
kusano 7d535a
	    # make sure the library variables are pointing to the new library
kusano 7d535a
	    dir=$output_objdir
kusano 7d535a
	    linklib=$newlib
kusano 7d535a
	  fi # test -n "$old_archive_from_expsyms_cmds"
kusano 7d535a
kusano 7d535a
	  if test "$linkmode" = prog || test "$opt_mode" != relink; then
kusano 7d535a
	    add_shlibpath=
kusano 7d535a
	    add_dir=
kusano 7d535a
	    add=
kusano 7d535a
	    lib_linked=yes
kusano 7d535a
	    case $hardcode_action in
kusano 7d535a
	    immediate | unsupported)
kusano 7d535a
	      if test "$hardcode_direct" = no; then
kusano 7d535a
		add="$dir/$linklib"
kusano 7d535a
		case $host in
kusano 7d535a
		  *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
kusano 7d535a
		  *-*-sysv4*uw2*) add_dir="-L$dir" ;;
kusano 7d535a
		  *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
kusano 7d535a
		    *-*-unixware7*) add_dir="-L$dir" ;;
kusano 7d535a
		  *-*-darwin* )
kusano 7d535a
		    # if the lib is a (non-dlopened) module then we can not
kusano 7d535a
		    # link against it, someone is ignoring the earlier warnings
kusano 7d535a
		    if /usr/bin/file -L $add 2> /dev/null |
kusano 7d535a
			 $GREP ": [^:]* bundle" >/dev/null ; then
kusano 7d535a
		      if test "X$dlopenmodule" != "X$lib"; then
kusano 7d535a
			$ECHO "*** Warning: lib $linklib is a module, not a shared library"
kusano 7d535a
			if test -z "$old_library" ; then
kusano 7d535a
			  echo
kusano 7d535a
			  echo "*** And there doesn't seem to be a static archive available"
kusano 7d535a
			  echo "*** The link will probably fail, sorry"
kusano 7d535a
			else
kusano 7d535a
			  add="$dir/$old_library"
kusano 7d535a
			fi
kusano 7d535a
		      elif test -n "$old_library"; then
kusano 7d535a
			add="$dir/$old_library"
kusano 7d535a
		      fi
kusano 7d535a
		    fi
kusano 7d535a
		esac
kusano 7d535a
	      elif test "$hardcode_minus_L" = no; then
kusano 7d535a
		case $host in
kusano 7d535a
		*-*-sunos*) add_shlibpath="$dir" ;;
kusano 7d535a
		esac
kusano 7d535a
		add_dir="-L$dir"
kusano 7d535a
		add="-l$name"
kusano 7d535a
	      elif test "$hardcode_shlibpath_var" = no; then
kusano 7d535a
		add_shlibpath="$dir"
kusano 7d535a
		add="-l$name"
kusano 7d535a
	      else
kusano 7d535a
		lib_linked=no
kusano 7d535a
	      fi
kusano 7d535a
	      ;;
kusano 7d535a
	    relink)
kusano 7d535a
	      if test "$hardcode_direct" = yes &&
kusano 7d535a
	         test "$hardcode_direct_absolute" = no; then
kusano 7d535a
		add="$dir/$linklib"
kusano 7d535a
	      elif test "$hardcode_minus_L" = yes; then
kusano 7d535a
		add_dir="-L$absdir"
kusano 7d535a
		# Try looking first in the location we're being installed to.
kusano 7d535a
		if test -n "$inst_prefix_dir"; then
kusano 7d535a
		  case $libdir in
kusano 7d535a
		    [\\/]*)
kusano 7d535a
		      func_append add_dir " -L$inst_prefix_dir$libdir"
kusano 7d535a
		      ;;
kusano 7d535a
		  esac
kusano 7d535a
		fi
kusano 7d535a
		add="-l$name"
kusano 7d535a
	      elif test "$hardcode_shlibpath_var" = yes; then
kusano 7d535a
		add_shlibpath="$dir"
kusano 7d535a
		add="-l$name"
kusano 7d535a
	      else
kusano 7d535a
		lib_linked=no
kusano 7d535a
	      fi
kusano 7d535a
	      ;;
kusano 7d535a
	    *) lib_linked=no ;;
kusano 7d535a
	    esac
kusano 7d535a
kusano 7d535a
	    if test "$lib_linked" != yes; then
kusano 7d535a
	      func_fatal_configuration "unsupported hardcode properties"
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    if test -n "$add_shlibpath"; then
kusano 7d535a
	      case :$compile_shlibpath: in
kusano 7d535a
	      *":$add_shlibpath:"*) ;;
kusano 7d535a
	      *) func_append compile_shlibpath "$add_shlibpath:" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
	    if test "$linkmode" = prog; then
kusano 7d535a
	      test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
kusano 7d535a
	      test -n "$add" && compile_deplibs="$add $compile_deplibs"
kusano 7d535a
	    else
kusano 7d535a
	      test -n "$add_dir" && deplibs="$add_dir $deplibs"
kusano 7d535a
	      test -n "$add" && deplibs="$add $deplibs"
kusano 7d535a
	      if test "$hardcode_direct" != yes &&
kusano 7d535a
		 test "$hardcode_minus_L" != yes &&
kusano 7d535a
		 test "$hardcode_shlibpath_var" = yes; then
kusano 7d535a
		case :$finalize_shlibpath: in
kusano 7d535a
		*":$libdir:"*) ;;
kusano 7d535a
		*) func_append finalize_shlibpath "$libdir:" ;;
kusano 7d535a
		esac
kusano 7d535a
	      fi
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  if test "$linkmode" = prog || test "$opt_mode" = relink; then
kusano 7d535a
	    add_shlibpath=
kusano 7d535a
	    add_dir=
kusano 7d535a
	    add=
kusano 7d535a
	    # Finalize command for both is simple: just hardcode it.
kusano 7d535a
	    if test "$hardcode_direct" = yes &&
kusano 7d535a
	       test "$hardcode_direct_absolute" = no; then
kusano 7d535a
	      add="$libdir/$linklib"
kusano 7d535a
	    elif test "$hardcode_minus_L" = yes; then
kusano 7d535a
	      add_dir="-L$libdir"
kusano 7d535a
	      add="-l$name"
kusano 7d535a
	    elif test "$hardcode_shlibpath_var" = yes; then
kusano 7d535a
	      case :$finalize_shlibpath: in
kusano 7d535a
	      *":$libdir:"*) ;;
kusano 7d535a
	      *) func_append finalize_shlibpath "$libdir:" ;;
kusano 7d535a
	      esac
kusano 7d535a
	      add="-l$name"
kusano 7d535a
	    elif test "$hardcode_automatic" = yes; then
kusano 7d535a
	      if test -n "$inst_prefix_dir" &&
kusano 7d535a
		 test -f "$inst_prefix_dir$libdir/$linklib" ; then
kusano 7d535a
		add="$inst_prefix_dir$libdir/$linklib"
kusano 7d535a
	      else
kusano 7d535a
		add="$libdir/$linklib"
kusano 7d535a
	      fi
kusano 7d535a
	    else
kusano 7d535a
	      # We cannot seem to hardcode it, guess we'll fake it.
kusano 7d535a
	      add_dir="-L$libdir"
kusano 7d535a
	      # Try looking first in the location we're being installed to.
kusano 7d535a
	      if test -n "$inst_prefix_dir"; then
kusano 7d535a
		case $libdir in
kusano 7d535a
		  [\\/]*)
kusano 7d535a
		    func_append add_dir " -L$inst_prefix_dir$libdir"
kusano 7d535a
		    ;;
kusano 7d535a
		esac
kusano 7d535a
	      fi
kusano 7d535a
	      add="-l$name"
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    if test "$linkmode" = prog; then
kusano 7d535a
	      test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
kusano 7d535a
	      test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
kusano 7d535a
	    else
kusano 7d535a
	      test -n "$add_dir" && deplibs="$add_dir $deplibs"
kusano 7d535a
	      test -n "$add" && deplibs="$add $deplibs"
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	elif test "$linkmode" = prog; then
kusano 7d535a
	  # Here we assume that one of hardcode_direct or hardcode_minus_L
kusano 7d535a
	  # is not unsupported.  This is valid on all known static and
kusano 7d535a
	  # shared platforms.
kusano 7d535a
	  if test "$hardcode_direct" != unsupported; then
kusano 7d535a
	    test -n "$old_library" && linklib="$old_library"
kusano 7d535a
	    compile_deplibs="$dir/$linklib $compile_deplibs"
kusano 7d535a
	    finalize_deplibs="$dir/$linklib $finalize_deplibs"
kusano 7d535a
	  else
kusano 7d535a
	    compile_deplibs="-l$name -L$dir $compile_deplibs"
kusano 7d535a
	    finalize_deplibs="-l$name -L$dir $finalize_deplibs"
kusano 7d535a
	  fi
kusano 7d535a
	elif test "$build_libtool_libs" = yes; then
kusano 7d535a
	  # Not a shared library
kusano 7d535a
	  if test "$deplibs_check_method" != pass_all; then
kusano 7d535a
	    # We're trying link a shared library against a static one
kusano 7d535a
	    # but the system doesn't support it.
kusano 7d535a
kusano 7d535a
	    # Just print a warning and add the library to dependency_libs so
kusano 7d535a
	    # that the program can be linked against the static library.
kusano 7d535a
	    echo
kusano 7d535a
	    $ECHO "*** Warning: This system can not link to static lib archive $lib."
kusano 7d535a
	    echo "*** I have the capability to make that library automatically link in when"
kusano 7d535a
	    echo "*** you link to this library.  But I can only do this if you have a"
kusano 7d535a
	    echo "*** shared version of the library, which you do not appear to have."
kusano 7d535a
	    if test "$module" = yes; then
kusano 7d535a
	      echo "*** But as you try to build a module library, libtool will still create "
kusano 7d535a
	      echo "*** a static module, that should work as long as the dlopening application"
kusano 7d535a
	      echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
kusano 7d535a
	      if test -z "$global_symbol_pipe"; then
kusano 7d535a
		echo
kusano 7d535a
		echo "*** However, this would only work if libtool was able to extract symbol"
kusano 7d535a
		echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
kusano 7d535a
		echo "*** not find such a program.  So, this module is probably useless."
kusano 7d535a
		echo "*** \`nm' from GNU binutils and a full rebuild may help."
kusano 7d535a
	      fi
kusano 7d535a
	      if test "$build_old_libs" = no; then
kusano 7d535a
		build_libtool_libs=module
kusano 7d535a
		build_old_libs=yes
kusano 7d535a
	      else
kusano 7d535a
		build_libtool_libs=no
kusano 7d535a
	      fi
kusano 7d535a
	    fi
kusano 7d535a
	  else
kusano 7d535a
	    deplibs="$dir/$old_library $deplibs"
kusano 7d535a
	    link_static=yes
kusano 7d535a
	  fi
kusano 7d535a
	fi # link shared/static library?
kusano 7d535a
kusano 7d535a
	if test "$linkmode" = lib; then
kusano 7d535a
	  if test -n "$dependency_libs" &&
kusano 7d535a
	     { test "$hardcode_into_libs" != yes ||
kusano 7d535a
	       test "$build_old_libs" = yes ||
kusano 7d535a
	       test "$link_static" = yes; }; then
kusano 7d535a
	    # Extract -R from dependency_libs
kusano 7d535a
	    temp_deplibs=
kusano 7d535a
	    for libdir in $dependency_libs; do
kusano 7d535a
	      case $libdir in
kusano 7d535a
	      -R*) func_stripname '-R' '' "$libdir"
kusano 7d535a
	           temp_xrpath=$func_stripname_result
kusano 7d535a
		   case " $xrpath " in
kusano 7d535a
		   *" $temp_xrpath "*) ;;
kusano 7d535a
		   *) func_append xrpath " $temp_xrpath";;
kusano 7d535a
		   esac;;
kusano 7d535a
	      *) func_append temp_deplibs " $libdir";;
kusano 7d535a
	      esac
kusano 7d535a
	    done
kusano 7d535a
	    dependency_libs="$temp_deplibs"
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  func_append newlib_search_path " $absdir"
kusano 7d535a
	  # Link against this library
kusano 7d535a
	  test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
kusano 7d535a
	  # ... and its dependency_libs
kusano 7d535a
	  tmp_libs=
kusano 7d535a
	  for deplib in $dependency_libs; do
kusano 7d535a
	    newdependency_libs="$deplib $newdependency_libs"
kusano 7d535a
	    case $deplib in
kusano 7d535a
              -L*) func_stripname '-L' '' "$deplib"
kusano 7d535a
                   func_resolve_sysroot "$func_stripname_result";;
kusano 7d535a
              *) func_resolve_sysroot "$deplib" ;;
kusano 7d535a
            esac
kusano 7d535a
	    if $opt_preserve_dup_deps ; then
kusano 7d535a
	      case "$tmp_libs " in
kusano 7d535a
	      *" $func_resolve_sysroot_result "*)
kusano 7d535a
                func_append specialdeplibs " $func_resolve_sysroot_result" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
	    func_append tmp_libs " $func_resolve_sysroot_result"
kusano 7d535a
	  done
kusano 7d535a
kusano 7d535a
	  if test "$link_all_deplibs" != no; then
kusano 7d535a
	    # Add the search paths of all dependency libraries
kusano 7d535a
	    for deplib in $dependency_libs; do
kusano 7d535a
	      path=
kusano 7d535a
	      case $deplib in
kusano 7d535a
	      -L*) path="$deplib" ;;
kusano 7d535a
	      *.la)
kusano 7d535a
	        func_resolve_sysroot "$deplib"
kusano 7d535a
	        deplib=$func_resolve_sysroot_result
kusano 7d535a
	        func_dirname "$deplib" "" "."
kusano 7d535a
		dir=$func_dirname_result
kusano 7d535a
		# We need an absolute path.
kusano 7d535a
		case $dir in
kusano 7d535a
		[\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
kusano 7d535a
		*)
kusano 7d535a
		  absdir=`cd "$dir" && pwd`
kusano 7d535a
		  if test -z "$absdir"; then
kusano 7d535a
		    func_warning "cannot determine absolute directory name of \`$dir'"
kusano 7d535a
		    absdir="$dir"
kusano 7d535a
		  fi
kusano 7d535a
		  ;;
kusano 7d535a
		esac
kusano 7d535a
		if $GREP "^installed=no" $deplib > /dev/null; then
kusano 7d535a
		case $host in
kusano 7d535a
		*-*-darwin*)
kusano 7d535a
		  depdepl=
kusano 7d535a
		  eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
kusano 7d535a
		  if test -n "$deplibrary_names" ; then
kusano 7d535a
		    for tmp in $deplibrary_names ; do
kusano 7d535a
		      depdepl=$tmp
kusano 7d535a
		    done
kusano 7d535a
		    if test -f "$absdir/$objdir/$depdepl" ; then
kusano 7d535a
		      depdepl="$absdir/$objdir/$depdepl"
kusano 7d535a
		      darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
kusano 7d535a
                      if test -z "$darwin_install_name"; then
kusano 7d535a
                          darwin_install_name=`${OTOOL64} -L $depdepl  | awk '{if (NR == 2) {print $1;exit}}'`
kusano 7d535a
                      fi
kusano 7d535a
		      func_append compiler_flags " ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}"
kusano 7d535a
		      func_append linker_flags " -dylib_file ${darwin_install_name}:${depdepl}"
kusano 7d535a
		      path=
kusano 7d535a
		    fi
kusano 7d535a
		  fi
kusano 7d535a
		  ;;
kusano 7d535a
		*)
kusano 7d535a
		  path="-L$absdir/$objdir"
kusano 7d535a
		  ;;
kusano 7d535a
		esac
kusano 7d535a
		else
kusano 7d535a
		  eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
kusano 7d535a
		  test -z "$libdir" && \
kusano 7d535a
		    func_fatal_error "\`$deplib' is not a valid libtool archive"
kusano 7d535a
		  test "$absdir" != "$libdir" && \
kusano 7d535a
		    func_warning "\`$deplib' seems to be moved"
kusano 7d535a
kusano 7d535a
		  path="-L$absdir"
kusano 7d535a
		fi
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	      case " $deplibs " in
kusano 7d535a
	      *" $path "*) ;;
kusano 7d535a
	      *) deplibs="$path $deplibs" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    done
kusano 7d535a
	  fi # link_all_deplibs != no
kusano 7d535a
	fi # linkmode = lib
kusano 7d535a
      done # for deplib in $libs
kusano 7d535a
      if test "$pass" = link; then
kusano 7d535a
	if test "$linkmode" = "prog"; then
kusano 7d535a
	  compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
kusano 7d535a
	  finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
kusano 7d535a
	else
kusano 7d535a
	  compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
kusano 7d535a
	fi
kusano 7d535a
      fi
kusano 7d535a
      dependency_libs="$newdependency_libs"
kusano 7d535a
      if test "$pass" = dlpreopen; then
kusano 7d535a
	# Link the dlpreopened libraries before other libraries
kusano 7d535a
	for deplib in $save_deplibs; do
kusano 7d535a
	  deplibs="$deplib $deplibs"
kusano 7d535a
	done
kusano 7d535a
      fi
kusano 7d535a
      if test "$pass" != dlopen; then
kusano 7d535a
	if test "$pass" != conv; then
kusano 7d535a
	  # Make sure lib_search_path contains only unique directories.
kusano 7d535a
	  lib_search_path=
kusano 7d535a
	  for dir in $newlib_search_path; do
kusano 7d535a
	    case "$lib_search_path " in
kusano 7d535a
	    *" $dir "*) ;;
kusano 7d535a
	    *) func_append lib_search_path " $dir" ;;
kusano 7d535a
	    esac
kusano 7d535a
	  done
kusano 7d535a
	  newlib_search_path=
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	if test "$linkmode,$pass" != "prog,link"; then
kusano 7d535a
	  vars="deplibs"
kusano 7d535a
	else
kusano 7d535a
	  vars="compile_deplibs finalize_deplibs"
kusano 7d535a
	fi
kusano 7d535a
	for var in $vars dependency_libs; do
kusano 7d535a
	  # Add libraries to $var in reverse order
kusano 7d535a
	  eval tmp_libs=\"\$$var\"
kusano 7d535a
	  new_libs=
kusano 7d535a
	  for deplib in $tmp_libs; do
kusano 7d535a
	    # FIXME: Pedantically, this is the right thing to do, so
kusano 7d535a
	    #        that some nasty dependency loop isn't accidentally
kusano 7d535a
	    #        broken:
kusano 7d535a
	    #new_libs="$deplib $new_libs"
kusano 7d535a
	    # Pragmatically, this seems to cause very few problems in
kusano 7d535a
	    # practice:
kusano 7d535a
	    case $deplib in
kusano 7d535a
	    -L*) new_libs="$deplib $new_libs" ;;
kusano 7d535a
	    -R*) ;;
kusano 7d535a
	    *)
kusano 7d535a
	      # And here is the reason: when a library appears more
kusano 7d535a
	      # than once as an explicit dependence of a library, or
kusano 7d535a
	      # is implicitly linked in more than once by the
kusano 7d535a
	      # compiler, it is considered special, and multiple
kusano 7d535a
	      # occurrences thereof are not removed.  Compare this
kusano 7d535a
	      # with having the same library being listed as a
kusano 7d535a
	      # dependency of multiple other libraries: in this case,
kusano 7d535a
	      # we know (pedantically, we assume) the library does not
kusano 7d535a
	      # need to be listed more than once, so we keep only the
kusano 7d535a
	      # last copy.  This is not always right, but it is rare
kusano 7d535a
	      # enough that we require users that really mean to play
kusano 7d535a
	      # such unportable linking tricks to link the library
kusano 7d535a
	      # using -Wl,-lname, so that libtool does not consider it
kusano 7d535a
	      # for duplicate removal.
kusano 7d535a
	      case " $specialdeplibs " in
kusano 7d535a
	      *" $deplib "*) new_libs="$deplib $new_libs" ;;
kusano 7d535a
	      *)
kusano 7d535a
		case " $new_libs " in
kusano 7d535a
		*" $deplib "*) ;;
kusano 7d535a
		*) new_libs="$deplib $new_libs" ;;
kusano 7d535a
		esac
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	  done
kusano 7d535a
	  tmp_libs=
kusano 7d535a
	  for deplib in $new_libs; do
kusano 7d535a
	    case $deplib in
kusano 7d535a
	    -L*)
kusano 7d535a
	      case " $tmp_libs " in
kusano 7d535a
	      *" $deplib "*) ;;
kusano 7d535a
	      *) func_append tmp_libs " $deplib" ;;
kusano 7d535a
	      esac
kusano 7d535a
	      ;;
kusano 7d535a
	    *) func_append tmp_libs " $deplib" ;;
kusano 7d535a
	    esac
kusano 7d535a
	  done
kusano 7d535a
	  eval $var=\"$tmp_libs\"
kusano 7d535a
	done # for var
kusano 7d535a
      fi
kusano 7d535a
      # Last step: remove runtime libs from dependency_libs
kusano 7d535a
      # (they stay in deplibs)
kusano 7d535a
      tmp_libs=
kusano 7d535a
      for i in $dependency_libs ; do
kusano 7d535a
	case " $predeps $postdeps $compiler_lib_search_path " in
kusano 7d535a
	*" $i "*)
kusano 7d535a
	  i=""
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	if test -n "$i" ; then
kusano 7d535a
	  func_append tmp_libs " $i"
kusano 7d535a
	fi
kusano 7d535a
      done
kusano 7d535a
      dependency_libs=$tmp_libs
kusano 7d535a
    done # for pass
kusano 7d535a
    if test "$linkmode" = prog; then
kusano 7d535a
      dlfiles="$newdlfiles"
kusano 7d535a
    fi
kusano 7d535a
    if test "$linkmode" = prog || test "$linkmode" = lib; then
kusano 7d535a
      dlprefiles="$newdlprefiles"
kusano 7d535a
    fi
kusano 7d535a
kusano 7d535a
    case $linkmode in
kusano 7d535a
    oldlib)
kusano 7d535a
      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
kusano 7d535a
	func_warning "\`-dlopen' is ignored for archives"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      case " $deplibs" in
kusano 7d535a
      *\ -l* | *\ -L*)
kusano 7d535a
	func_warning "\`-l' and \`-L' are ignored for archives" ;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      test -n "$rpath" && \
kusano 7d535a
	func_warning "\`-rpath' is ignored for archives"
kusano 7d535a
kusano 7d535a
      test -n "$xrpath" && \
kusano 7d535a
	func_warning "\`-R' is ignored for archives"
kusano 7d535a
kusano 7d535a
      test -n "$vinfo" && \
kusano 7d535a
	func_warning "\`-version-info/-version-number' is ignored for archives"
kusano 7d535a
kusano 7d535a
      test -n "$release" && \
kusano 7d535a
	func_warning "\`-release' is ignored for archives"
kusano 7d535a
kusano 7d535a
      test -n "$export_symbols$export_symbols_regex" && \
kusano 7d535a
	func_warning "\`-export-symbols' is ignored for archives"
kusano 7d535a
kusano 7d535a
      # Now set the variables for building old libraries.
kusano 7d535a
      build_libtool_libs=no
kusano 7d535a
      oldlibs="$output"
kusano 7d535a
      func_append objs "$old_deplibs"
kusano 7d535a
      ;;
kusano 7d535a
kusano 7d535a
    lib)
kusano 7d535a
      # Make sure we only generate libraries of the form `libNAME.la'.
kusano 7d535a
      case $outputname in
kusano 7d535a
      lib*)
kusano 7d535a
	func_stripname 'lib' '.la' "$outputname"
kusano 7d535a
	name=$func_stripname_result
kusano 7d535a
	eval shared_ext=\"$shrext_cmds\"
kusano 7d535a
	eval libname=\"$libname_spec\"
kusano 7d535a
	;;
kusano 7d535a
      *)
kusano 7d535a
	test "$module" = no && \
kusano 7d535a
	  func_fatal_help "libtool library \`$output' must begin with \`lib'"
kusano 7d535a
kusano 7d535a
	if test "$need_lib_prefix" != no; then
kusano 7d535a
	  # Add the "lib" prefix for modules if required
kusano 7d535a
	  func_stripname '' '.la' "$outputname"
kusano 7d535a
	  name=$func_stripname_result
kusano 7d535a
	  eval shared_ext=\"$shrext_cmds\"
kusano 7d535a
	  eval libname=\"$libname_spec\"
kusano 7d535a
	else
kusano 7d535a
	  func_stripname '' '.la' "$outputname"
kusano 7d535a
	  libname=$func_stripname_result
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      if test -n "$objs"; then
kusano 7d535a
	if test "$deplibs_check_method" != pass_all; then
kusano 7d535a
	  func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"
kusano 7d535a
	else
kusano 7d535a
	  echo
kusano 7d535a
	  $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
kusano 7d535a
	  $ECHO "*** objects $objs is not portable!"
kusano 7d535a
	  func_append libobjs " $objs"
kusano 7d535a
	fi
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      test "$dlself" != no && \
kusano 7d535a
	func_warning "\`-dlopen self' is ignored for libtool libraries"
kusano 7d535a
kusano 7d535a
      set dummy $rpath
kusano 7d535a
      shift
kusano 7d535a
      test "$#" -gt 1 && \
kusano 7d535a
	func_warning "ignoring multiple \`-rpath's for a libtool library"
kusano 7d535a
kusano 7d535a
      install_libdir="$1"
kusano 7d535a
kusano 7d535a
      oldlibs=
kusano 7d535a
      if test -z "$rpath"; then
kusano 7d535a
	if test "$build_libtool_libs" = yes; then
kusano 7d535a
	  # Building a libtool convenience library.
kusano 7d535a
	  # Some compilers have problems with a `.al' extension so
kusano 7d535a
	  # convenience libraries should have the same extension an
kusano 7d535a
	  # archive normally would.
kusano 7d535a
	  oldlibs="$output_objdir/$libname.$libext $oldlibs"
kusano 7d535a
	  build_libtool_libs=convenience
kusano 7d535a
	  build_old_libs=yes
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	test -n "$vinfo" && \
kusano 7d535a
	  func_warning "\`-version-info/-version-number' is ignored for convenience libraries"
kusano 7d535a
kusano 7d535a
	test -n "$release" && \
kusano 7d535a
	  func_warning "\`-release' is ignored for convenience libraries"
kusano 7d535a
      else
kusano 7d535a
kusano 7d535a
	# Parse the version information argument.
kusano 7d535a
	save_ifs="$IFS"; IFS=':'
kusano 7d535a
	set dummy $vinfo 0 0 0
kusano 7d535a
	shift
kusano 7d535a
	IFS="$save_ifs"
kusano 7d535a
kusano 7d535a
	test -n "$7" && \
kusano 7d535a
	  func_fatal_help "too many parameters to \`-version-info'"
kusano 7d535a
kusano 7d535a
	# convert absolute version numbers to libtool ages
kusano 7d535a
	# this retains compatibility with .la files and attempts
kusano 7d535a
	# to make the code below a bit more comprehensible
kusano 7d535a
kusano 7d535a
	case $vinfo_number in
kusano 7d535a
	yes)
kusano 7d535a
	  number_major="$1"
kusano 7d535a
	  number_minor="$2"
kusano 7d535a
	  number_revision="$3"
kusano 7d535a
	  #
kusano 7d535a
	  # There are really only two kinds -- those that
kusano 7d535a
	  # use the current revision as the major version
kusano 7d535a
	  # and those that subtract age and use age as
kusano 7d535a
	  # a minor version.  But, then there is irix
kusano 7d535a
	  # which has an extra 1 added just for fun
kusano 7d535a
	  #
kusano 7d535a
	  case $version_type in
kusano 7d535a
	  # correct linux to gnu/linux during the next big refactor
kusano 7d535a
	  darwin|linux|osf|windows|none)
kusano 7d535a
	    func_arith $number_major + $number_minor
kusano 7d535a
	    current=$func_arith_result
kusano 7d535a
	    age="$number_minor"
kusano 7d535a
	    revision="$number_revision"
kusano 7d535a
	    ;;
kusano 7d535a
	  freebsd-aout|freebsd-elf|qnx|sunos)
kusano 7d535a
	    current="$number_major"
kusano 7d535a
	    revision="$number_minor"
kusano 7d535a
	    age="0"
kusano 7d535a
	    ;;
kusano 7d535a
	  irix|nonstopux)
kusano 7d535a
	    func_arith $number_major + $number_minor
kusano 7d535a
	    current=$func_arith_result
kusano 7d535a
	    age="$number_minor"
kusano 7d535a
	    revision="$number_minor"
kusano 7d535a
	    lt_irix_increment=no
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	no)
kusano 7d535a
	  current="$1"
kusano 7d535a
	  revision="$2"
kusano 7d535a
	  age="$3"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	# Check that each of the things are valid numbers.
kusano 7d535a
	case $current in
kusano 7d535a
	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]) ;;
kusano 7d535a
	*)
kusano 7d535a
	  func_error "CURRENT \`$current' must be a nonnegative integer"
kusano 7d535a
	  func_fatal_error "\`$vinfo' is not valid version information"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	case $revision in
kusano 7d535a
	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]) ;;
kusano 7d535a
	*)
kusano 7d535a
	  func_error "REVISION \`$revision' must be a nonnegative integer"
kusano 7d535a
	  func_fatal_error "\`$vinfo' is not valid version information"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	case $age in
kusano 7d535a
	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]) ;;
kusano 7d535a
	*)
kusano 7d535a
	  func_error "AGE \`$age' must be a nonnegative integer"
kusano 7d535a
	  func_fatal_error "\`$vinfo' is not valid version information"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	if test "$age" -gt "$current"; then
kusano 7d535a
	  func_error "AGE \`$age' is greater than the current interface number \`$current'"
kusano 7d535a
	  func_fatal_error "\`$vinfo' is not valid version information"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Calculate the version variables.
kusano 7d535a
	major=
kusano 7d535a
	versuffix=
kusano 7d535a
	verstring=
kusano 7d535a
	case $version_type in
kusano 7d535a
	none) ;;
kusano 7d535a
kusano 7d535a
	darwin)
kusano 7d535a
	  # Like Linux, but with the current version available in
kusano 7d535a
	  # verstring for coding it into the library header
kusano 7d535a
	  func_arith $current - $age
kusano 7d535a
	  major=.$func_arith_result
kusano 7d535a
	  versuffix="$major.$age.$revision"
kusano 7d535a
	  # Darwin ld doesn't like 0 for these options...
kusano 7d535a
	  func_arith $current + 1
kusano 7d535a
	  minor_current=$func_arith_result
kusano 7d535a
	  xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
kusano 7d535a
	  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	freebsd-aout)
kusano 7d535a
	  major=".$current"
kusano 7d535a
	  versuffix=".$current.$revision";
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	freebsd-elf)
kusano 7d535a
	  major=".$current"
kusano 7d535a
	  versuffix=".$current"
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	irix | nonstopux)
kusano 7d535a
	  if test "X$lt_irix_increment" = "Xno"; then
kusano 7d535a
	    func_arith $current - $age
kusano 7d535a
	  else
kusano 7d535a
	    func_arith $current - $age + 1
kusano 7d535a
	  fi
kusano 7d535a
	  major=$func_arith_result
kusano 7d535a
kusano 7d535a
	  case $version_type in
kusano 7d535a
	    nonstopux) verstring_prefix=nonstopux ;;
kusano 7d535a
	    *)         verstring_prefix=sgi ;;
kusano 7d535a
	  esac
kusano 7d535a
	  verstring="$verstring_prefix$major.$revision"
kusano 7d535a
kusano 7d535a
	  # Add in all the interfaces that we are compatible with.
kusano 7d535a
	  loop=$revision
kusano 7d535a
	  while test "$loop" -ne 0; do
kusano 7d535a
	    func_arith $revision - $loop
kusano 7d535a
	    iface=$func_arith_result
kusano 7d535a
	    func_arith $loop - 1
kusano 7d535a
	    loop=$func_arith_result
kusano 7d535a
	    verstring="$verstring_prefix$major.$iface:$verstring"
kusano 7d535a
	  done
kusano 7d535a
kusano 7d535a
	  # Before this point, $major must not contain `.'.
kusano 7d535a
	  major=.$major
kusano 7d535a
	  versuffix="$major.$revision"
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	linux) # correct to gnu/linux during the next big refactor
kusano 7d535a
	  func_arith $current - $age
kusano 7d535a
	  major=.$func_arith_result
kusano 7d535a
	  versuffix="$major.$age.$revision"
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	osf)
kusano 7d535a
	  func_arith $current - $age
kusano 7d535a
	  major=.$func_arith_result
kusano 7d535a
	  versuffix=".$current.$age.$revision"
kusano 7d535a
	  verstring="$current.$age.$revision"
kusano 7d535a
kusano 7d535a
	  # Add in all the interfaces that we are compatible with.
kusano 7d535a
	  loop=$age
kusano 7d535a
	  while test "$loop" -ne 0; do
kusano 7d535a
	    func_arith $current - $loop
kusano 7d535a
	    iface=$func_arith_result
kusano 7d535a
	    func_arith $loop - 1
kusano 7d535a
	    loop=$func_arith_result
kusano 7d535a
	    verstring="$verstring:${iface}.0"
kusano 7d535a
	  done
kusano 7d535a
kusano 7d535a
	  # Make executables depend on our current version.
kusano 7d535a
	  func_append verstring ":${current}.0"
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	qnx)
kusano 7d535a
	  major=".$current"
kusano 7d535a
	  versuffix=".$current"
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	sunos)
kusano 7d535a
	  major=".$current"
kusano 7d535a
	  versuffix=".$current.$revision"
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	windows)
kusano 7d535a
	  # Use '-' rather than '.', since we only want one
kusano 7d535a
	  # extension on DOS 8.3 filesystems.
kusano 7d535a
	  func_arith $current - $age
kusano 7d535a
	  major=$func_arith_result
kusano 7d535a
	  versuffix="-$major"
kusano 7d535a
	  ;;
kusano 7d535a
kusano 7d535a
	*)
kusano 7d535a
	  func_fatal_configuration "unknown library version type \`$version_type'"
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	# Clear the version info if we defaulted, and they specified a release.
kusano 7d535a
	if test -z "$vinfo" && test -n "$release"; then
kusano 7d535a
	  major=
kusano 7d535a
	  case $version_type in
kusano 7d535a
	  darwin)
kusano 7d535a
	    # we can't check for "0.0" in archive_cmds due to quoting
kusano 7d535a
	    # problems, so we reset it completely
kusano 7d535a
	    verstring=
kusano 7d535a
	    ;;
kusano 7d535a
	  *)
kusano 7d535a
	    verstring="0.0"
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  if test "$need_version" = no; then
kusano 7d535a
	    versuffix=
kusano 7d535a
	  else
kusano 7d535a
	    versuffix=".0.0"
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Remove version info from name if versioning should be avoided
kusano 7d535a
	if test "$avoid_version" = yes && test "$need_version" = no; then
kusano 7d535a
	  major=
kusano 7d535a
	  versuffix=
kusano 7d535a
	  verstring=""
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Check to see if the archive will have undefined symbols.
kusano 7d535a
	if test "$allow_undefined" = yes; then
kusano 7d535a
	  if test "$allow_undefined_flag" = unsupported; then
kusano 7d535a
	    func_warning "undefined symbols not allowed in $host shared libraries"
kusano 7d535a
	    build_libtool_libs=no
kusano 7d535a
	    build_old_libs=yes
kusano 7d535a
	  fi
kusano 7d535a
	else
kusano 7d535a
	  # Don't allow undefined symbols.
kusano 7d535a
	  allow_undefined_flag="$no_undefined_flag"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      func_generate_dlsyms "$libname" "$libname" "yes"
kusano 7d535a
      func_append libobjs " $symfileobj"
kusano 7d535a
      test "X$libobjs" = "X " && libobjs=
kusano 7d535a
kusano 7d535a
      if test "$opt_mode" != relink; then
kusano 7d535a
	# Remove our outputs, but don't remove object files since they
kusano 7d535a
	# may have been created when compiling PIC objects.
kusano 7d535a
	removelist=
kusano 7d535a
	tempremovelist=`$ECHO "$output_objdir/*"`
kusano 7d535a
	for p in $tempremovelist; do
kusano 7d535a
	  case $p in
kusano 7d535a
	    *.$objext | *.gcno)
kusano 7d535a
	       ;;
kusano 7d535a
	    $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
kusano 7d535a
	       if test "X$precious_files_regex" != "X"; then
kusano 7d535a
		 if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
kusano 7d535a
		 then
kusano 7d535a
		   continue
kusano 7d535a
		 fi
kusano 7d535a
	       fi
kusano 7d535a
	       func_append removelist " $p"
kusano 7d535a
	       ;;
kusano 7d535a
	    *) ;;
kusano 7d535a
	  esac
kusano 7d535a
	done
kusano 7d535a
	test -n "$removelist" && \
kusano 7d535a
	  func_show_eval "${RM}r \$removelist"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Now set the variables for building old libraries.
kusano 7d535a
      if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
kusano 7d535a
	func_append oldlibs " $output_objdir/$libname.$libext"
kusano 7d535a
kusano 7d535a
	# Transform .lo files to .o files.
kusano 7d535a
	oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP`
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Eliminate all temporary directories.
kusano 7d535a
      #for path in $notinst_path; do
kusano 7d535a
      #	lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"`
kusano 7d535a
      #	deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"`
kusano 7d535a
      #	dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"`
kusano 7d535a
      #done
kusano 7d535a
kusano 7d535a
      if test -n "$xrpath"; then
kusano 7d535a
	# If the user specified any rpath flags, then add them.
kusano 7d535a
	temp_xrpath=
kusano 7d535a
	for libdir in $xrpath; do
kusano 7d535a
	  func_replace_sysroot "$libdir"
kusano 7d535a
	  func_append temp_xrpath " -R$func_replace_sysroot_result"
kusano 7d535a
	  case "$finalize_rpath " in
kusano 7d535a
	  *" $libdir "*) ;;
kusano 7d535a
	  *) func_append finalize_rpath " $libdir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	done
kusano 7d535a
	if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
kusano 7d535a
	  dependency_libs="$temp_xrpath $dependency_libs"
kusano 7d535a
	fi
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Make sure dlfiles contains only unique files that won't be dlpreopened
kusano 7d535a
      old_dlfiles="$dlfiles"
kusano 7d535a
      dlfiles=
kusano 7d535a
      for lib in $old_dlfiles; do
kusano 7d535a
	case " $dlprefiles $dlfiles " in
kusano 7d535a
	*" $lib "*) ;;
kusano 7d535a
	*) func_append dlfiles " $lib" ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
kusano 7d535a
      # Make sure dlprefiles contains only unique files
kusano 7d535a
      old_dlprefiles="$dlprefiles"
kusano 7d535a
      dlprefiles=
kusano 7d535a
      for lib in $old_dlprefiles; do
kusano 7d535a
	case "$dlprefiles " in
kusano 7d535a
	*" $lib "*) ;;
kusano 7d535a
	*) func_append dlprefiles " $lib" ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
kusano 7d535a
      if test "$build_libtool_libs" = yes; then
kusano 7d535a
	if test -n "$rpath"; then
kusano 7d535a
	  case $host in
kusano 7d535a
	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*)
kusano 7d535a
	    # these systems don't actually have a c library (as such)!
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-rhapsody* | *-*-darwin1.[012])
kusano 7d535a
	    # Rhapsody C library is in the System framework
kusano 7d535a
	    func_append deplibs " System.ltframework"
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-netbsd*)
kusano 7d535a
	    # Don't link with libc until the a.out ld.so is fixed.
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
kusano 7d535a
	    # Do not include libc due to us having libc/libc_r.
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-sco3.2v5* | *-*-sco5v6*)
kusano 7d535a
	    # Causes problems with __ctype
kusano 7d535a
	    ;;
kusano 7d535a
	  *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
kusano 7d535a
	    # Compiler inserts libc in the correct place for threads to work
kusano 7d535a
	    ;;
kusano 7d535a
	  *)
kusano 7d535a
	    # Add libc to deplibs on all other systems if necessary.
kusano 7d535a
	    if test "$build_libtool_need_lc" = "yes"; then
kusano 7d535a
	      func_append deplibs " -lc"
kusano 7d535a
	    fi
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Transform deplibs into only deplibs that can be linked in shared.
kusano 7d535a
	name_save=$name
kusano 7d535a
	libname_save=$libname
kusano 7d535a
	release_save=$release
kusano 7d535a
	versuffix_save=$versuffix
kusano 7d535a
	major_save=$major
kusano 7d535a
	# I'm not sure if I'm treating the release correctly.  I think
kusano 7d535a
	# release should show up in the -l (ie -lgmp5) so we don't want to
kusano 7d535a
	# add it in twice.  Is that correct?
kusano 7d535a
	release=""
kusano 7d535a
	versuffix=""
kusano 7d535a
	major=""
kusano 7d535a
	newdeplibs=
kusano 7d535a
	droppeddeps=no
kusano 7d535a
	case $deplibs_check_method in
kusano 7d535a
	pass_all)
kusano 7d535a
	  # Don't check for shared/static.  Everything works.
kusano 7d535a
	  # This might be a little naive.  We might want to check
kusano 7d535a
	  # whether the library exists or not.  But this is on
kusano 7d535a
	  # osf3 & osf4 and I'm not really sure... Just
kusano 7d535a
	  # implementing what was already the behavior.
kusano 7d535a
	  newdeplibs=$deplibs
kusano 7d535a
	  ;;
kusano 7d535a
	test_compile)
kusano 7d535a
	  # This code stresses the "libraries are programs" paradigm to its
kusano 7d535a
	  # limits. Maybe even breaks it.  We compile a program, linking it
kusano 7d535a
	  # against the deplibs as a proxy for the library.  Then we can check
kusano 7d535a
	  # whether they linked in statically or dynamically with ldd.
kusano 7d535a
	  $opt_dry_run || $RM conftest.c
kusano 7d535a
	  cat > conftest.c <<EOF
kusano 7d535a
	  int main() { return 0; }
kusano 7d535a
EOF
kusano 7d535a
	  $opt_dry_run || $RM conftest
kusano 7d535a
	  if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
kusano 7d535a
	    ldd_output=`ldd conftest`
kusano 7d535a
	    for i in $deplibs; do
kusano 7d535a
	      case $i in
kusano 7d535a
	      -l*)
kusano 7d535a
		func_stripname -l '' "$i"
kusano 7d535a
		name=$func_stripname_result
kusano 7d535a
		if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
kusano 7d535a
		  case " $predeps $postdeps " in
kusano 7d535a
		  *" $i "*)
kusano 7d535a
		    func_append newdeplibs " $i"
kusano 7d535a
		    i=""
kusano 7d535a
		    ;;
kusano 7d535a
		  esac
kusano 7d535a
		fi
kusano 7d535a
		if test -n "$i" ; then
kusano 7d535a
		  libname=`eval "\\$ECHO \"$libname_spec\""`
kusano 7d535a
		  deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
kusano 7d535a
		  set dummy $deplib_matches; shift
kusano 7d535a
		  deplib_match=$1
kusano 7d535a
		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
kusano 7d535a
		    func_append newdeplibs " $i"
kusano 7d535a
		  else
kusano 7d535a
		    droppeddeps=yes
kusano 7d535a
		    echo
kusano 7d535a
		    $ECHO "*** Warning: dynamic linker does not accept needed library $i."
kusano 7d535a
		    echo "*** I have the capability to make that library automatically link in when"
kusano 7d535a
		    echo "*** you link to this library.  But I can only do this if you have a"
kusano 7d535a
		    echo "*** shared version of the library, which I believe you do not have"
kusano 7d535a
		    echo "*** because a test_compile did reveal that the linker did not use it for"
kusano 7d535a
		    echo "*** its dynamic dependency list that programs get resolved with at runtime."
kusano 7d535a
		  fi
kusano 7d535a
		fi
kusano 7d535a
		;;
kusano 7d535a
	      *)
kusano 7d535a
		func_append newdeplibs " $i"
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	    done
kusano 7d535a
	  else
kusano 7d535a
	    # Error occurred in the first compile.  Let's try to salvage
kusano 7d535a
	    # the situation: Compile a separate program for each library.
kusano 7d535a
	    for i in $deplibs; do
kusano 7d535a
	      case $i in
kusano 7d535a
	      -l*)
kusano 7d535a
		func_stripname -l '' "$i"
kusano 7d535a
		name=$func_stripname_result
kusano 7d535a
		$opt_dry_run || $RM conftest
kusano 7d535a
		if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
kusano 7d535a
		  ldd_output=`ldd conftest`
kusano 7d535a
		  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
kusano 7d535a
		    case " $predeps $postdeps " in
kusano 7d535a
		    *" $i "*)
kusano 7d535a
		      func_append newdeplibs " $i"
kusano 7d535a
		      i=""
kusano 7d535a
		      ;;
kusano 7d535a
		    esac
kusano 7d535a
		  fi
kusano 7d535a
		  if test -n "$i" ; then
kusano 7d535a
		    libname=`eval "\\$ECHO \"$libname_spec\""`
kusano 7d535a
		    deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
kusano 7d535a
		    set dummy $deplib_matches; shift
kusano 7d535a
		    deplib_match=$1
kusano 7d535a
		    if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
kusano 7d535a
		      func_append newdeplibs " $i"
kusano 7d535a
		    else
kusano 7d535a
		      droppeddeps=yes
kusano 7d535a
		      echo
kusano 7d535a
		      $ECHO "*** Warning: dynamic linker does not accept needed library $i."
kusano 7d535a
		      echo "*** I have the capability to make that library automatically link in when"
kusano 7d535a
		      echo "*** you link to this library.  But I can only do this if you have a"
kusano 7d535a
		      echo "*** shared version of the library, which you do not appear to have"
kusano 7d535a
		      echo "*** because a test_compile did reveal that the linker did not use this one"
kusano 7d535a
		      echo "*** as a dynamic dependency that programs can get resolved with at runtime."
kusano 7d535a
		    fi
kusano 7d535a
		  fi
kusano 7d535a
		else
kusano 7d535a
		  droppeddeps=yes
kusano 7d535a
		  echo
kusano 7d535a
		  $ECHO "*** Warning!  Library $i is needed by this library but I was not able to"
kusano 7d535a
		  echo "*** make it link in!  You will probably need to install it or some"
kusano 7d535a
		  echo "*** library that it depends on before this library will be fully"
kusano 7d535a
		  echo "*** functional.  Installing it before continuing would be even better."
kusano 7d535a
		fi
kusano 7d535a
		;;
kusano 7d535a
	      *)
kusano 7d535a
		func_append newdeplibs " $i"
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	    done
kusano 7d535a
	  fi
kusano 7d535a
	  ;;
kusano 7d535a
	file_magic*)
kusano 7d535a
	  set dummy $deplibs_check_method; shift
kusano 7d535a
	  file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
kusano 7d535a
	  for a_deplib in $deplibs; do
kusano 7d535a
	    case $a_deplib in
kusano 7d535a
	    -l*)
kusano 7d535a
	      func_stripname -l '' "$a_deplib"
kusano 7d535a
	      name=$func_stripname_result
kusano 7d535a
	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
kusano 7d535a
		case " $predeps $postdeps " in
kusano 7d535a
		*" $a_deplib "*)
kusano 7d535a
		  func_append newdeplibs " $a_deplib"
kusano 7d535a
		  a_deplib=""
kusano 7d535a
		  ;;
kusano 7d535a
		esac
kusano 7d535a
	      fi
kusano 7d535a
	      if test -n "$a_deplib" ; then
kusano 7d535a
		libname=`eval "\\$ECHO \"$libname_spec\""`
kusano 7d535a
		if test -n "$file_magic_glob"; then
kusano 7d535a
		  libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
kusano 7d535a
		else
kusano 7d535a
		  libnameglob=$libname
kusano 7d535a
		fi
kusano 7d535a
		test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocaseglob`
kusano 7d535a
		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
kusano 7d535a
		  if test "$want_nocaseglob" = yes; then
kusano 7d535a
		    shopt -s nocaseglob
kusano 7d535a
		    potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
kusano 7d535a
		    $nocaseglob
kusano 7d535a
		  else
kusano 7d535a
		    potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
kusano 7d535a
		  fi
kusano 7d535a
		  for potent_lib in $potential_libs; do
kusano 7d535a
		      # Follow soft links.
kusano 7d535a
		      if ls -lLd "$potent_lib" 2>/dev/null |
kusano 7d535a
			 $GREP " -> " >/dev/null; then
kusano 7d535a
			continue
kusano 7d535a
		      fi
kusano 7d535a
		      # The statement above tries to avoid entering an
kusano 7d535a
		      # endless loop below, in case of cyclic links.
kusano 7d535a
		      # We might still enter an endless loop, since a link
kusano 7d535a
		      # loop can be closed while we follow links,
kusano 7d535a
		      # but so what?
kusano 7d535a
		      potlib="$potent_lib"
kusano 7d535a
		      while test -h "$potlib" 2>/dev/null; do
kusano 7d535a
			potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
kusano 7d535a
			case $potliblink in
kusano 7d535a
			[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
kusano 7d535a
			*) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";;
kusano 7d535a
			esac
kusano 7d535a
		      done
kusano 7d535a
		      if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
kusano 7d535a
			 $SED -e 10q |
kusano 7d535a
			 $EGREP "$file_magic_regex" > /dev/null; then
kusano 7d535a
			func_append newdeplibs " $a_deplib"
kusano 7d535a
			a_deplib=""
kusano 7d535a
			break 2
kusano 7d535a
		      fi
kusano 7d535a
		  done
kusano 7d535a
		done
kusano 7d535a
	      fi
kusano 7d535a
	      if test -n "$a_deplib" ; then
kusano 7d535a
		droppeddeps=yes
kusano 7d535a
		echo
kusano 7d535a
		$ECHO "*** Warning: linker path does not have real file for library $a_deplib."
kusano 7d535a
		echo "*** I have the capability to make that library automatically link in when"
kusano 7d535a
		echo "*** you link to this library.  But I can only do this if you have a"
kusano 7d535a
		echo "*** shared version of the library, which you do not appear to have"
kusano 7d535a
		echo "*** because I did check the linker path looking for a file starting"
kusano 7d535a
		if test -z "$potlib" ; then
kusano 7d535a
		  $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
kusano 7d535a
		else
kusano 7d535a
		  $ECHO "*** with $libname and none of the candidates passed a file format test"
kusano 7d535a
		  $ECHO "*** using a file magic. Last file checked: $potlib"
kusano 7d535a
		fi
kusano 7d535a
	      fi
kusano 7d535a
	      ;;
kusano 7d535a
	    *)
kusano 7d535a
	      # Add a -L argument.
kusano 7d535a
	      func_append newdeplibs " $a_deplib"
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	  done # Gone through all deplibs.
kusano 7d535a
	  ;;
kusano 7d535a
	match_pattern*)
kusano 7d535a
	  set dummy $deplibs_check_method; shift
kusano 7d535a
	  match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
kusano 7d535a
	  for a_deplib in $deplibs; do
kusano 7d535a
	    case $a_deplib in
kusano 7d535a
	    -l*)
kusano 7d535a
	      func_stripname -l '' "$a_deplib"
kusano 7d535a
	      name=$func_stripname_result
kusano 7d535a
	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
kusano 7d535a
		case " $predeps $postdeps " in
kusano 7d535a
		*" $a_deplib "*)
kusano 7d535a
		  func_append newdeplibs " $a_deplib"
kusano 7d535a
		  a_deplib=""
kusano 7d535a
		  ;;
kusano 7d535a
		esac
kusano 7d535a
	      fi
kusano 7d535a
	      if test -n "$a_deplib" ; then
kusano 7d535a
		libname=`eval "\\$ECHO \"$libname_spec\""`
kusano 7d535a
		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
kusano 7d535a
		  potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
kusano 7d535a
		  for potent_lib in $potential_libs; do
kusano 7d535a
		    potlib="$potent_lib" # see symlink-check above in file_magic test
kusano 7d535a
		    if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \
kusano 7d535a
		       $EGREP "$match_pattern_regex" > /dev/null; then
kusano 7d535a
		      func_append newdeplibs " $a_deplib"
kusano 7d535a
		      a_deplib=""
kusano 7d535a
		      break 2
kusano 7d535a
		    fi
kusano 7d535a
		  done
kusano 7d535a
		done
kusano 7d535a
	      fi
kusano 7d535a
	      if test -n "$a_deplib" ; then
kusano 7d535a
		droppeddeps=yes
kusano 7d535a
		echo
kusano 7d535a
		$ECHO "*** Warning: linker path does not have real file for library $a_deplib."
kusano 7d535a
		echo "*** I have the capability to make that library automatically link in when"
kusano 7d535a
		echo "*** you link to this library.  But I can only do this if you have a"
kusano 7d535a
		echo "*** shared version of the library, which you do not appear to have"
kusano 7d535a
		echo "*** because I did check the linker path looking for a file starting"
kusano 7d535a
		if test -z "$potlib" ; then
kusano 7d535a
		  $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
kusano 7d535a
		else
kusano 7d535a
		  $ECHO "*** with $libname and none of the candidates passed a file format test"
kusano 7d535a
		  $ECHO "*** using a regex pattern. Last file checked: $potlib"
kusano 7d535a
		fi
kusano 7d535a
	      fi
kusano 7d535a
	      ;;
kusano 7d535a
	    *)
kusano 7d535a
	      # Add a -L argument.
kusano 7d535a
	      func_append newdeplibs " $a_deplib"
kusano 7d535a
	      ;;
kusano 7d535a
	    esac
kusano 7d535a
	  done # Gone through all deplibs.
kusano 7d535a
	  ;;
kusano 7d535a
	none | unknown | *)
kusano 7d535a
	  newdeplibs=""
kusano 7d535a
	  tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'`
kusano 7d535a
	  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
kusano 7d535a
	    for i in $predeps $postdeps ; do
kusano 7d535a
	      # can't use Xsed below, because $i might contain '/'
kusano 7d535a
	      tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"`
kusano 7d535a
	    done
kusano 7d535a
	  fi
kusano 7d535a
	  case $tmp_deplibs in
kusano 7d535a
	  *[!\	\ ]*)
kusano 7d535a
	    echo
kusano 7d535a
	    if test "X$deplibs_check_method" = "Xnone"; then
kusano 7d535a
	      echo "*** Warning: inter-library dependencies are not supported in this platform."
kusano 7d535a
	    else
kusano 7d535a
	      echo "*** Warning: inter-library dependencies are not known to be supported."
kusano 7d535a
	    fi
kusano 7d535a
	    echo "*** All declared inter-library dependencies are being dropped."
kusano 7d535a
	    droppeddeps=yes
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
	versuffix=$versuffix_save
kusano 7d535a
	major=$major_save
kusano 7d535a
	release=$release_save
kusano 7d535a
	libname=$libname_save
kusano 7d535a
	name=$name_save
kusano 7d535a
kusano 7d535a
	case $host in
kusano 7d535a
	*-*-rhapsody* | *-*-darwin1.[012])
kusano 7d535a
	  # On Rhapsody replace the C library with the System framework
kusano 7d535a
	  newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'`
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	if test "$droppeddeps" = yes; then
kusano 7d535a
	  if test "$module" = yes; then
kusano 7d535a
	    echo
kusano 7d535a
	    echo "*** Warning: libtool could not satisfy all declared inter-library"
kusano 7d535a
	    $ECHO "*** dependencies of module $libname.  Therefore, libtool will create"
kusano 7d535a
	    echo "*** a static module, that should work as long as the dlopening"
kusano 7d535a
	    echo "*** application is linked with the -dlopen flag."
kusano 7d535a
	    if test -z "$global_symbol_pipe"; then
kusano 7d535a
	      echo
kusano 7d535a
	      echo "*** However, this would only work if libtool was able to extract symbol"
kusano 7d535a
	      echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
kusano 7d535a
	      echo "*** not find such a program.  So, this module is probably useless."
kusano 7d535a
	      echo "*** \`nm' from GNU binutils and a full rebuild may help."
kusano 7d535a
	    fi
kusano 7d535a
	    if test "$build_old_libs" = no; then
kusano 7d535a
	      oldlibs="$output_objdir/$libname.$libext"
kusano 7d535a
	      build_libtool_libs=module
kusano 7d535a
	      build_old_libs=yes
kusano 7d535a
	    else
kusano 7d535a
	      build_libtool_libs=no
kusano 7d535a
	    fi
kusano 7d535a
	  else
kusano 7d535a
	    echo "*** The inter-library dependencies that have been dropped here will be"
kusano 7d535a
	    echo "*** automatically added whenever a program is linked with this library"
kusano 7d535a
	    echo "*** or is declared to -dlopen it."
kusano 7d535a
kusano 7d535a
	    if test "$allow_undefined" = no; then
kusano 7d535a
	      echo
kusano 7d535a
	      echo "*** Since this library must not contain undefined symbols,"
kusano 7d535a
	      echo "*** because either the platform does not support them or"
kusano 7d535a
	      echo "*** it was explicitly requested with -no-undefined,"
kusano 7d535a
	      echo "*** libtool will only create a static version of it."
kusano 7d535a
	      if test "$build_old_libs" = no; then
kusano 7d535a
		oldlibs="$output_objdir/$libname.$libext"
kusano 7d535a
		build_libtool_libs=module
kusano 7d535a
		build_old_libs=yes
kusano 7d535a
	      else
kusano 7d535a
		build_libtool_libs=no
kusano 7d535a
	      fi
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
	# Done checking deplibs!
kusano 7d535a
	deplibs=$newdeplibs
kusano 7d535a
      fi
kusano 7d535a
      # Time to change all our "foo.ltframework" stuff back to "-framework foo"
kusano 7d535a
      case $host in
kusano 7d535a
	*-*-darwin*)
kusano 7d535a
	  newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
kusano 7d535a
	  new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
kusano 7d535a
	  deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
kusano 7d535a
	  ;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      # move library search paths that coincide with paths to not yet
kusano 7d535a
      # installed libraries to the beginning of the library search list
kusano 7d535a
      new_libs=
kusano 7d535a
      for path in $notinst_path; do
kusano 7d535a
	case " $new_libs " in
kusano 7d535a
	*" -L$path/$objdir "*) ;;
kusano 7d535a
	*)
kusano 7d535a
	  case " $deplibs " in
kusano 7d535a
	  *" -L$path/$objdir "*)
kusano 7d535a
	    func_append new_libs " -L$path/$objdir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
      for deplib in $deplibs; do
kusano 7d535a
	case $deplib in
kusano 7d535a
	-L*)
kusano 7d535a
	  case " $new_libs " in
kusano 7d535a
	  *" $deplib "*) ;;
kusano 7d535a
	  *) func_append new_libs " $deplib" ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	*) func_append new_libs " $deplib" ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
      deplibs="$new_libs"
kusano 7d535a
kusano 7d535a
      # All the library-specific variables (install_libdir is set above).
kusano 7d535a
      library_names=
kusano 7d535a
      old_library=
kusano 7d535a
      dlname=
kusano 7d535a
kusano 7d535a
      # Test again, we may have decided not to build it any more
kusano 7d535a
      if test "$build_libtool_libs" = yes; then
kusano 7d535a
	# Remove ${wl} instances when linking with ld.
kusano 7d535a
	# FIXME: should test the right _cmds variable.
kusano 7d535a
	case $archive_cmds in
kusano 7d535a
	  *\$LD\ *) wl= ;;
kusano 7d535a
        esac
kusano 7d535a
	if test "$hardcode_into_libs" = yes; then
kusano 7d535a
	  # Hardcode the library paths
kusano 7d535a
	  hardcode_libdirs=
kusano 7d535a
	  dep_rpath=
kusano 7d535a
	  rpath="$finalize_rpath"
kusano 7d535a
	  test "$opt_mode" != relink && rpath="$compile_rpath$rpath"
kusano 7d535a
	  for libdir in $rpath; do
kusano 7d535a
	    if test -n "$hardcode_libdir_flag_spec"; then
kusano 7d535a
	      if test -n "$hardcode_libdir_separator"; then
kusano 7d535a
		func_replace_sysroot "$libdir"
kusano 7d535a
		libdir=$func_replace_sysroot_result
kusano 7d535a
		if test -z "$hardcode_libdirs"; then
kusano 7d535a
		  hardcode_libdirs="$libdir"
kusano 7d535a
		else
kusano 7d535a
		  # Just accumulate the unique libdirs.
kusano 7d535a
		  case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
kusano 7d535a
		  *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
kusano 7d535a
		    ;;
kusano 7d535a
		  *)
kusano 7d535a
		    func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
kusano 7d535a
		    ;;
kusano 7d535a
		  esac
kusano 7d535a
		fi
kusano 7d535a
	      else
kusano 7d535a
		eval flag=\"$hardcode_libdir_flag_spec\"
kusano 7d535a
		func_append dep_rpath " $flag"
kusano 7d535a
	      fi
kusano 7d535a
	    elif test -n "$runpath_var"; then
kusano 7d535a
	      case "$perm_rpath " in
kusano 7d535a
	      *" $libdir "*) ;;
kusano 7d535a
	      *) func_append perm_rpath " $libdir" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
	  done
kusano 7d535a
	  # Substitute the hardcoded libdirs into the rpath.
kusano 7d535a
	  if test -n "$hardcode_libdir_separator" &&
kusano 7d535a
	     test -n "$hardcode_libdirs"; then
kusano 7d535a
	    libdir="$hardcode_libdirs"
kusano 7d535a
	    eval "dep_rpath=\"$hardcode_libdir_flag_spec\""
kusano 7d535a
	  fi
kusano 7d535a
	  if test -n "$runpath_var" && test -n "$perm_rpath"; then
kusano 7d535a
	    # We should set the runpath_var.
kusano 7d535a
	    rpath=
kusano 7d535a
	    for dir in $perm_rpath; do
kusano 7d535a
	      func_append rpath "$dir:"
kusano 7d535a
	    done
kusano 7d535a
	    eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
kusano 7d535a
	  fi
kusano 7d535a
	  test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	shlibpath="$finalize_shlibpath"
kusano 7d535a
	test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
kusano 7d535a
	if test -n "$shlibpath"; then
kusano 7d535a
	  eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Get the real and link names of the library.
kusano 7d535a
	eval shared_ext=\"$shrext_cmds\"
kusano 7d535a
	eval library_names=\"$library_names_spec\"
kusano 7d535a
	set dummy $library_names
kusano 7d535a
	shift
kusano 7d535a
	realname="$1"
kusano 7d535a
	shift
kusano 7d535a
kusano 7d535a
	if test -n "$soname_spec"; then
kusano 7d535a
	  eval soname=\"$soname_spec\"
kusano 7d535a
	else
kusano 7d535a
	  soname="$realname"
kusano 7d535a
	fi
kusano 7d535a
	if test -z "$dlname"; then
kusano 7d535a
	  dlname=$soname
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	lib="$output_objdir/$realname"
kusano 7d535a
	linknames=
kusano 7d535a
	for link
kusano 7d535a
	do
kusano 7d535a
	  func_append linknames " $link"
kusano 7d535a
	done
kusano 7d535a
kusano 7d535a
	# Use standard objects if they are pic
kusano 7d535a
	test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP`
kusano 7d535a
	test "X$libobjs" = "X " && libobjs=
kusano 7d535a
kusano 7d535a
	delfiles=
kusano 7d535a
	if test -n "$export_symbols" && test -n "$include_expsyms"; then
kusano 7d535a
	  $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp"
kusano 7d535a
	  export_symbols="$output_objdir/$libname.uexp"
kusano 7d535a
	  func_append delfiles " $export_symbols"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	orig_export_symbols=
kusano 7d535a
	case $host_os in
kusano 7d535a
	cygwin* | mingw* | cegcc*)
kusano 7d535a
	  if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
kusano 7d535a
	    # exporting using user supplied symfile
kusano 7d535a
	    if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
kusano 7d535a
	      # and it's NOT already a .def file. Must figure out
kusano 7d535a
	      # which of the given symbols are data symbols and tag
kusano 7d535a
	      # them as such. So, trigger use of export_symbols_cmds.
kusano 7d535a
	      # export_symbols gets reassigned inside the "prepare
kusano 7d535a
	      # the list of exported symbols" if statement, so the
kusano 7d535a
	      # include_expsyms logic still works.
kusano 7d535a
	      orig_export_symbols="$export_symbols"
kusano 7d535a
	      export_symbols=
kusano 7d535a
	      always_export_symbols=yes
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
kusano 7d535a
	# Prepare the list of exported symbols
kusano 7d535a
	if test -z "$export_symbols"; then
kusano 7d535a
	  if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
kusano 7d535a
	    func_verbose "generating symbol list for \`$libname.la'"
kusano 7d535a
	    export_symbols="$output_objdir/$libname.exp"
kusano 7d535a
	    $opt_dry_run || $RM $export_symbols
kusano 7d535a
	    cmds=$export_symbols_cmds
kusano 7d535a
	    save_ifs="$IFS"; IFS='~'
kusano 7d535a
	    for cmd1 in $cmds; do
kusano 7d535a
	      IFS="$save_ifs"
kusano 7d535a
	      # Take the normal branch if the nm_file_list_spec branch
kusano 7d535a
	      # doesn't work or if tool conversion is not needed.
kusano 7d535a
	      case $nm_file_list_spec~$to_tool_file_cmd in
kusano 7d535a
		*~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*)
kusano 7d535a
		  try_normal_branch=yes
kusano 7d535a
		  eval cmd=\"$cmd1\"
kusano 7d535a
		  func_len " $cmd"
kusano 7d535a
		  len=$func_len_result
kusano 7d535a
		  ;;
kusano 7d535a
		*)
kusano 7d535a
		  try_normal_branch=no
kusano 7d535a
		  ;;
kusano 7d535a
	      esac
kusano 7d535a
	      if test "$try_normal_branch" = yes \
kusano 7d535a
		 && { test "$len" -lt "$max_cmd_len" \
kusano 7d535a
		      || test "$max_cmd_len" -le -1; }
kusano 7d535a
	      then
kusano 7d535a
		func_show_eval "$cmd" 'exit $?'
kusano 7d535a
		skipped_export=false
kusano 7d535a
	      elif test -n "$nm_file_list_spec"; then
kusano 7d535a
		func_basename "$output"
kusano 7d535a
		output_la=$func_basename_result
kusano 7d535a
		save_libobjs=$libobjs
kusano 7d535a
		save_output=$output
kusano 7d535a
		output=${output_objdir}/${output_la}.nm
kusano 7d535a
		func_to_tool_file "$output"
kusano 7d535a
		libobjs=$nm_file_list_spec$func_to_tool_file_result
kusano 7d535a
		func_append delfiles " $output"
kusano 7d535a
		func_verbose "creating $NM input file list: $output"
kusano 7d535a
		for obj in $save_libobjs; do
kusano 7d535a
		  func_to_tool_file "$obj"
kusano 7d535a
		  $ECHO "$func_to_tool_file_result"
kusano 7d535a
		done > "$output"
kusano 7d535a
		eval cmd=\"$cmd1\"
kusano 7d535a
		func_show_eval "$cmd" 'exit $?'
kusano 7d535a
		output=$save_output
kusano 7d535a
		libobjs=$save_libobjs
kusano 7d535a
		skipped_export=false
kusano 7d535a
	      else
kusano 7d535a
		# The command line is too long to execute in one step.
kusano 7d535a
		func_verbose "using reloadable object file for export list..."
kusano 7d535a
		skipped_export=:
kusano 7d535a
		# Break out early, otherwise skipped_export may be
kusano 7d535a
		# set to false by a later but shorter cmd.
kusano 7d535a
		break
kusano 7d535a
	      fi
kusano 7d535a
	    done
kusano 7d535a
	    IFS="$save_ifs"
kusano 7d535a
	    if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then
kusano 7d535a
	      func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
kusano 7d535a
	      func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	if test -n "$export_symbols" && test -n "$include_expsyms"; then
kusano 7d535a
	  tmp_export_symbols="$export_symbols"
kusano 7d535a
	  test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
kusano 7d535a
	  $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then
kusano 7d535a
	  # The given exports_symbols file has to be filtered, so filter it.
kusano 7d535a
	  func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
kusano 7d535a
	  # FIXME: $output_objdir/$libname.filter potentially contains lots of
kusano 7d535a
	  # 's' commands which not all seds can handle. GNU sed should be fine
kusano 7d535a
	  # though. Also, the filter scales superlinearly with the number of
kusano 7d535a
	  # global variables. join(1) would be nice here, but unfortunately
kusano 7d535a
	  # isn't a blessed tool.
kusano 7d535a
	  $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
kusano 7d535a
	  func_append delfiles " $export_symbols $output_objdir/$libname.filter"
kusano 7d535a
	  export_symbols=$output_objdir/$libname.def
kusano 7d535a
	  $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	tmp_deplibs=
kusano 7d535a
	for test_deplib in $deplibs; do
kusano 7d535a
	  case " $convenience " in
kusano 7d535a
	  *" $test_deplib "*) ;;
kusano 7d535a
	  *)
kusano 7d535a
	    func_append tmp_deplibs " $test_deplib"
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	done
kusano 7d535a
	deplibs="$tmp_deplibs"
kusano 7d535a
kusano 7d535a
	if test -n "$convenience"; then
kusano 7d535a
	  if test -n "$whole_archive_flag_spec" &&
kusano 7d535a
	    test "$compiler_needs_object" = yes &&
kusano 7d535a
	    test -z "$libobjs"; then
kusano 7d535a
	    # extract the archives, so we have objects to list.
kusano 7d535a
	    # TODO: could optimize this to just extract one archive.
kusano 7d535a
	    whole_archive_flag_spec=
kusano 7d535a
	  fi
kusano 7d535a
	  if test -n "$whole_archive_flag_spec"; then
kusano 7d535a
	    save_libobjs=$libobjs
kusano 7d535a
	    eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
kusano 7d535a
	    test "X$libobjs" = "X " && libobjs=
kusano 7d535a
	  else
kusano 7d535a
	    gentop="$output_objdir/${outputname}x"
kusano 7d535a
	    func_append generated " $gentop"
kusano 7d535a
kusano 7d535a
	    func_extract_archives $gentop $convenience
kusano 7d535a
	    func_append libobjs " $func_extract_archives_result"
kusano 7d535a
	    test "X$libobjs" = "X " && libobjs=
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
kusano 7d535a
	  eval flag=\"$thread_safe_flag_spec\"
kusano 7d535a
	  func_append linker_flags " $flag"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Make a backup of the uninstalled library when relinking
kusano 7d535a
	if test "$opt_mode" = relink; then
kusano 7d535a
	  $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Do each of the archive commands.
kusano 7d535a
	if test "$module" = yes && test -n "$module_cmds" ; then
kusano 7d535a
	  if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
kusano 7d535a
	    eval test_cmds=\"$module_expsym_cmds\"
kusano 7d535a
	    cmds=$module_expsym_cmds
kusano 7d535a
	  else
kusano 7d535a
	    eval test_cmds=\"$module_cmds\"
kusano 7d535a
	    cmds=$module_cmds
kusano 7d535a
	  fi
kusano 7d535a
	else
kusano 7d535a
	  if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
kusano 7d535a
	    eval test_cmds=\"$archive_expsym_cmds\"
kusano 7d535a
	    cmds=$archive_expsym_cmds
kusano 7d535a
	  else
kusano 7d535a
	    eval test_cmds=\"$archive_cmds\"
kusano 7d535a
	    cmds=$archive_cmds
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	if test "X$skipped_export" != "X:" &&
kusano 7d535a
	   func_len " $test_cmds" &&
kusano 7d535a
	   len=$func_len_result &&
kusano 7d535a
	   test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
kusano 7d535a
	  :
kusano 7d535a
	else
kusano 7d535a
	  # The command line is too long to link in one step, link piecewise
kusano 7d535a
	  # or, if using GNU ld and skipped_export is not :, use a linker
kusano 7d535a
	  # script.
kusano 7d535a
kusano 7d535a
	  # Save the value of $output and $libobjs because we want to
kusano 7d535a
	  # use them later.  If we have whole_archive_flag_spec, we
kusano 7d535a
	  # want to use save_libobjs as it was before
kusano 7d535a
	  # whole_archive_flag_spec was expanded, because we can't
kusano 7d535a
	  # assume the linker understands whole_archive_flag_spec.
kusano 7d535a
	  # This may have to be revisited, in case too many
kusano 7d535a
	  # convenience libraries get linked in and end up exceeding
kusano 7d535a
	  # the spec.
kusano 7d535a
	  if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
kusano 7d535a
	    save_libobjs=$libobjs
kusano 7d535a
	  fi
kusano 7d535a
	  save_output=$output
kusano 7d535a
	  func_basename "$output"
kusano 7d535a
	  output_la=$func_basename_result
kusano 7d535a
kusano 7d535a
	  # Clear the reloadable object creation command queue and
kusano 7d535a
	  # initialize k to one.
kusano 7d535a
	  test_cmds=
kusano 7d535a
	  concat_cmds=
kusano 7d535a
	  objlist=
kusano 7d535a
	  last_robj=
kusano 7d535a
	  k=1
kusano 7d535a
kusano 7d535a
	  if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
kusano 7d535a
	    output=${output_objdir}/${output_la}.lnkscript
kusano 7d535a
	    func_verbose "creating GNU ld script: $output"
kusano 7d535a
	    echo 'INPUT (' > $output
kusano 7d535a
	    for obj in $save_libobjs
kusano 7d535a
	    do
kusano 7d535a
	      func_to_tool_file "$obj"
kusano 7d535a
	      $ECHO "$func_to_tool_file_result" >> $output
kusano 7d535a
	    done
kusano 7d535a
	    echo ')' >> $output
kusano 7d535a
	    func_append delfiles " $output"
kusano 7d535a
	    func_to_tool_file "$output"
kusano 7d535a
	    output=$func_to_tool_file_result
kusano 7d535a
	  elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
kusano 7d535a
	    output=${output_objdir}/${output_la}.lnk
kusano 7d535a
	    func_verbose "creating linker input file list: $output"
kusano 7d535a
	    : > $output
kusano 7d535a
	    set x $save_libobjs
kusano 7d535a
	    shift
kusano 7d535a
	    firstobj=
kusano 7d535a
	    if test "$compiler_needs_object" = yes; then
kusano 7d535a
	      firstobj="$1 "
kusano 7d535a
	      shift
kusano 7d535a
	    fi
kusano 7d535a
	    for obj
kusano 7d535a
	    do
kusano 7d535a
	      func_to_tool_file "$obj"
kusano 7d535a
	      $ECHO "$func_to_tool_file_result" >> $output
kusano 7d535a
	    done
kusano 7d535a
	    func_append delfiles " $output"
kusano 7d535a
	    func_to_tool_file "$output"
kusano 7d535a
	    output=$firstobj\"$file_list_spec$func_to_tool_file_result\"
kusano 7d535a
	  else
kusano 7d535a
	    if test -n "$save_libobjs"; then
kusano 7d535a
	      func_verbose "creating reloadable object files..."
kusano 7d535a
	      output=$output_objdir/$output_la-${k}.$objext
kusano 7d535a
	      eval test_cmds=\"$reload_cmds\"
kusano 7d535a
	      func_len " $test_cmds"
kusano 7d535a
	      len0=$func_len_result
kusano 7d535a
	      len=$len0
kusano 7d535a
kusano 7d535a
	      # Loop over the list of objects to be linked.
kusano 7d535a
	      for obj in $save_libobjs
kusano 7d535a
	      do
kusano 7d535a
		func_len " $obj"
kusano 7d535a
		func_arith $len + $func_len_result
kusano 7d535a
		len=$func_arith_result
kusano 7d535a
		if test "X$objlist" = X ||
kusano 7d535a
		   test "$len" -lt "$max_cmd_len"; then
kusano 7d535a
		  func_append objlist " $obj"
kusano 7d535a
		else
kusano 7d535a
		  # The command $test_cmds is almost too long, add a
kusano 7d535a
		  # command to the queue.
kusano 7d535a
		  if test "$k" -eq 1 ; then
kusano 7d535a
		    # The first file doesn't have a previous command to add.
kusano 7d535a
		    reload_objs=$objlist
kusano 7d535a
		    eval concat_cmds=\"$reload_cmds\"
kusano 7d535a
		  else
kusano 7d535a
		    # All subsequent reloadable object files will link in
kusano 7d535a
		    # the last one created.
kusano 7d535a
		    reload_objs="$objlist $last_robj"
kusano 7d535a
		    eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\"
kusano 7d535a
		  fi
kusano 7d535a
		  last_robj=$output_objdir/$output_la-${k}.$objext
kusano 7d535a
		  func_arith $k + 1
kusano 7d535a
		  k=$func_arith_result
kusano 7d535a
		  output=$output_objdir/$output_la-${k}.$objext
kusano 7d535a
		  objlist=" $obj"
kusano 7d535a
		  func_len " $last_robj"
kusano 7d535a
		  func_arith $len0 + $func_len_result
kusano 7d535a
		  len=$func_arith_result
kusano 7d535a
		fi
kusano 7d535a
	      done
kusano 7d535a
	      # Handle the remaining objects by creating one last
kusano 7d535a
	      # reloadable object file.  All subsequent reloadable object
kusano 7d535a
	      # files will link in the last one created.
kusano 7d535a
	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
kusano 7d535a
	      reload_objs="$objlist $last_robj"
kusano 7d535a
	      eval concat_cmds=\"\${concat_cmds}$reload_cmds\"
kusano 7d535a
	      if test -n "$last_robj"; then
kusano 7d535a
	        eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"
kusano 7d535a
	      fi
kusano 7d535a
	      func_append delfiles " $output"
kusano 7d535a
kusano 7d535a
	    else
kusano 7d535a
	      output=
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    if ${skipped_export-false}; then
kusano 7d535a
	      func_verbose "generating symbol list for \`$libname.la'"
kusano 7d535a
	      export_symbols="$output_objdir/$libname.exp"
kusano 7d535a
	      $opt_dry_run || $RM $export_symbols
kusano 7d535a
	      libobjs=$output
kusano 7d535a
	      # Append the command to create the export file.
kusano 7d535a
	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
kusano 7d535a
	      eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
kusano 7d535a
	      if test -n "$last_robj"; then
kusano 7d535a
		eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
kusano 7d535a
	      fi
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    test -n "$save_libobjs" &&
kusano 7d535a
	      func_verbose "creating a temporary reloadable object file: $output"
kusano 7d535a
kusano 7d535a
	    # Loop through the commands generated above and execute them.
kusano 7d535a
	    save_ifs="$IFS"; IFS='~'
kusano 7d535a
	    for cmd in $concat_cmds; do
kusano 7d535a
	      IFS="$save_ifs"
kusano 7d535a
	      $opt_silent || {
kusano 7d535a
		  func_quote_for_expand "$cmd"
kusano 7d535a
		  eval "func_echo $func_quote_for_expand_result"
kusano 7d535a
	      }
kusano 7d535a
	      $opt_dry_run || eval "$cmd" || {
kusano 7d535a
		lt_exit=$?
kusano 7d535a
kusano 7d535a
		# Restore the uninstalled library and exit
kusano 7d535a
		if test "$opt_mode" = relink; then
kusano 7d535a
		  ( cd "$output_objdir" && \
kusano 7d535a
		    $RM "${realname}T" && \
kusano 7d535a
		    $MV "${realname}U" "$realname" )
kusano 7d535a
		fi
kusano 7d535a
kusano 7d535a
		exit $lt_exit
kusano 7d535a
	      }
kusano 7d535a
	    done
kusano 7d535a
	    IFS="$save_ifs"
kusano 7d535a
kusano 7d535a
	    if test -n "$export_symbols_regex" && ${skipped_export-false}; then
kusano 7d535a
	      func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
kusano 7d535a
	      func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
          if ${skipped_export-false}; then
kusano 7d535a
	    if test -n "$export_symbols" && test -n "$include_expsyms"; then
kusano 7d535a
	      tmp_export_symbols="$export_symbols"
kusano 7d535a
	      test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
kusano 7d535a
	      $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    if test -n "$orig_export_symbols"; then
kusano 7d535a
	      # The given exports_symbols file has to be filtered, so filter it.
kusano 7d535a
	      func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
kusano 7d535a
	      # FIXME: $output_objdir/$libname.filter potentially contains lots of
kusano 7d535a
	      # 's' commands which not all seds can handle. GNU sed should be fine
kusano 7d535a
	      # though. Also, the filter scales superlinearly with the number of
kusano 7d535a
	      # global variables. join(1) would be nice here, but unfortunately
kusano 7d535a
	      # isn't a blessed tool.
kusano 7d535a
	      $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
kusano 7d535a
	      func_append delfiles " $export_symbols $output_objdir/$libname.filter"
kusano 7d535a
	      export_symbols=$output_objdir/$libname.def
kusano 7d535a
	      $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  libobjs=$output
kusano 7d535a
	  # Restore the value of output.
kusano 7d535a
	  output=$save_output
kusano 7d535a
kusano 7d535a
	  if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then
kusano 7d535a
	    eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
kusano 7d535a
	    test "X$libobjs" = "X " && libobjs=
kusano 7d535a
	  fi
kusano 7d535a
	  # Expand the library linking commands again to reset the
kusano 7d535a
	  # value of $libobjs for piecewise linking.
kusano 7d535a
kusano 7d535a
	  # Do each of the archive commands.
kusano 7d535a
	  if test "$module" = yes && test -n "$module_cmds" ; then
kusano 7d535a
	    if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
kusano 7d535a
	      cmds=$module_expsym_cmds
kusano 7d535a
	    else
kusano 7d535a
	      cmds=$module_cmds
kusano 7d535a
	    fi
kusano 7d535a
	  else
kusano 7d535a
	    if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
kusano 7d535a
	      cmds=$archive_expsym_cmds
kusano 7d535a
	    else
kusano 7d535a
	      cmds=$archive_cmds
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	if test -n "$delfiles"; then
kusano 7d535a
	  # Append the command to remove temporary files to $cmds.
kusano 7d535a
	  eval cmds=\"\$cmds~\$RM $delfiles\"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Add any objects from preloaded convenience libraries
kusano 7d535a
	if test -n "$dlprefiles"; then
kusano 7d535a
	  gentop="$output_objdir/${outputname}x"
kusano 7d535a
	  func_append generated " $gentop"
kusano 7d535a
kusano 7d535a
	  func_extract_archives $gentop $dlprefiles
kusano 7d535a
	  func_append libobjs " $func_extract_archives_result"
kusano 7d535a
	  test "X$libobjs" = "X " && libobjs=
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	save_ifs="$IFS"; IFS='~'
kusano 7d535a
	for cmd in $cmds; do
kusano 7d535a
	  IFS="$save_ifs"
kusano 7d535a
	  eval cmd=\"$cmd\"
kusano 7d535a
	  $opt_silent || {
kusano 7d535a
	    func_quote_for_expand "$cmd"
kusano 7d535a
	    eval "func_echo $func_quote_for_expand_result"
kusano 7d535a
	  }
kusano 7d535a
	  $opt_dry_run || eval "$cmd" || {
kusano 7d535a
	    lt_exit=$?
kusano 7d535a
kusano 7d535a
	    # Restore the uninstalled library and exit
kusano 7d535a
	    if test "$opt_mode" = relink; then
kusano 7d535a
	      ( cd "$output_objdir" && \
kusano 7d535a
	        $RM "${realname}T" && \
kusano 7d535a
		$MV "${realname}U" "$realname" )
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    exit $lt_exit
kusano 7d535a
	  }
kusano 7d535a
	done
kusano 7d535a
	IFS="$save_ifs"
kusano 7d535a
kusano 7d535a
	# Restore the uninstalled library and exit
kusano 7d535a
	if test "$opt_mode" = relink; then
kusano 7d535a
	  $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
kusano 7d535a
kusano 7d535a
	  if test -n "$convenience"; then
kusano 7d535a
	    if test -z "$whole_archive_flag_spec"; then
kusano 7d535a
	      func_show_eval '${RM}r "$gentop"'
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  exit $EXIT_SUCCESS
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Create links to the real library.
kusano 7d535a
	for linkname in $linknames; do
kusano 7d535a
	  if test "$realname" != "$linkname"; then
kusano 7d535a
	    func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?'
kusano 7d535a
	  fi
kusano 7d535a
	done
kusano 7d535a
kusano 7d535a
	# If -module or -export-dynamic was specified, set the dlname.
kusano 7d535a
	if test "$module" = yes || test "$export_dynamic" = yes; then
kusano 7d535a
	  # On all known operating systems, these are identical.
kusano 7d535a
	  dlname="$soname"
kusano 7d535a
	fi
kusano 7d535a
      fi
kusano 7d535a
      ;;
kusano 7d535a
kusano 7d535a
    obj)
kusano 7d535a
      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
kusano 7d535a
	func_warning "\`-dlopen' is ignored for objects"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      case " $deplibs" in
kusano 7d535a
      *\ -l* | *\ -L*)
kusano 7d535a
	func_warning "\`-l' and \`-L' are ignored for objects" ;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      test -n "$rpath" && \
kusano 7d535a
	func_warning "\`-rpath' is ignored for objects"
kusano 7d535a
kusano 7d535a
      test -n "$xrpath" && \
kusano 7d535a
	func_warning "\`-R' is ignored for objects"
kusano 7d535a
kusano 7d535a
      test -n "$vinfo" && \
kusano 7d535a
	func_warning "\`-version-info' is ignored for objects"
kusano 7d535a
kusano 7d535a
      test -n "$release" && \
kusano 7d535a
	func_warning "\`-release' is ignored for objects"
kusano 7d535a
kusano 7d535a
      case $output in
kusano 7d535a
      *.lo)
kusano 7d535a
	test -n "$objs$old_deplibs" && \
kusano 7d535a
	  func_fatal_error "cannot build library object \`$output' from non-libtool objects"
kusano 7d535a
kusano 7d535a
	libobj=$output
kusano 7d535a
	func_lo2o "$libobj"
kusano 7d535a
	obj=$func_lo2o_result
kusano 7d535a
	;;
kusano 7d535a
      *)
kusano 7d535a
	libobj=
kusano 7d535a
	obj="$output"
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      # Delete the old objects.
kusano 7d535a
      $opt_dry_run || $RM $obj $libobj
kusano 7d535a
kusano 7d535a
      # Objects from convenience libraries.  This assumes
kusano 7d535a
      # single-version convenience libraries.  Whenever we create
kusano 7d535a
      # different ones for PIC/non-PIC, this we'll have to duplicate
kusano 7d535a
      # the extraction.
kusano 7d535a
      reload_conv_objs=
kusano 7d535a
      gentop=
kusano 7d535a
      # reload_cmds runs $LD directly, so let us get rid of
kusano 7d535a
      # -Wl from whole_archive_flag_spec and hope we can get by with
kusano 7d535a
      # turning comma into space..
kusano 7d535a
      wl=
kusano 7d535a
kusano 7d535a
      if test -n "$convenience"; then
kusano 7d535a
	if test -n "$whole_archive_flag_spec"; then
kusano 7d535a
	  eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
kusano 7d535a
	  reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
kusano 7d535a
	else
kusano 7d535a
	  gentop="$output_objdir/${obj}x"
kusano 7d535a
	  func_append generated " $gentop"
kusano 7d535a
kusano 7d535a
	  func_extract_archives $gentop $convenience
kusano 7d535a
	  reload_conv_objs="$reload_objs $func_extract_archives_result"
kusano 7d535a
	fi
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # If we're not building shared, we need to use non_pic_objs
kusano 7d535a
      test "$build_libtool_libs" != yes && libobjs="$non_pic_objects"
kusano 7d535a
kusano 7d535a
      # Create the old-style object.
kusano 7d535a
      reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
kusano 7d535a
kusano 7d535a
      output="$obj"
kusano 7d535a
      func_execute_cmds "$reload_cmds" 'exit $?'
kusano 7d535a
kusano 7d535a
      # Exit if we aren't doing a library object file.
kusano 7d535a
      if test -z "$libobj"; then
kusano 7d535a
	if test -n "$gentop"; then
kusano 7d535a
	  func_show_eval '${RM}r "$gentop"'
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	exit $EXIT_SUCCESS
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      if test "$build_libtool_libs" != yes; then
kusano 7d535a
	if test -n "$gentop"; then
kusano 7d535a
	  func_show_eval '${RM}r "$gentop"'
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Create an invalid libtool object if no PIC, so that we don't
kusano 7d535a
	# accidentally link it into a program.
kusano 7d535a
	# $show "echo timestamp > $libobj"
kusano 7d535a
	# $opt_dry_run || eval "echo timestamp > $libobj" || exit $?
kusano 7d535a
	exit $EXIT_SUCCESS
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      if test -n "$pic_flag" || test "$pic_mode" != default; then
kusano 7d535a
	# Only do commands if we really have different PIC objects.
kusano 7d535a
	reload_objs="$libobjs $reload_conv_objs"
kusano 7d535a
	output="$libobj"
kusano 7d535a
	func_execute_cmds "$reload_cmds" 'exit $?'
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      if test -n "$gentop"; then
kusano 7d535a
	func_show_eval '${RM}r "$gentop"'
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      exit $EXIT_SUCCESS
kusano 7d535a
      ;;
kusano 7d535a
kusano 7d535a
    prog)
kusano 7d535a
      case $host in
kusano 7d535a
	*cygwin*) func_stripname '' '.exe' "$output"
kusano 7d535a
	          output=$func_stripname_result.exe;;
kusano 7d535a
      esac
kusano 7d535a
      test -n "$vinfo" && \
kusano 7d535a
	func_warning "\`-version-info' is ignored for programs"
kusano 7d535a
kusano 7d535a
      test -n "$release" && \
kusano 7d535a
	func_warning "\`-release' is ignored for programs"
kusano 7d535a
kusano 7d535a
      test "$preload" = yes \
kusano 7d535a
        && test "$dlopen_support" = unknown \
kusano 7d535a
	&& test "$dlopen_self" = unknown \
kusano 7d535a
	&& test "$dlopen_self_static" = unknown && \
kusano 7d535a
	  func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support."
kusano 7d535a
kusano 7d535a
      case $host in
kusano 7d535a
      *-*-rhapsody* | *-*-darwin1.[012])
kusano 7d535a
	# On Rhapsody replace the C library is the System framework
kusano 7d535a
	compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'`
kusano 7d535a
	finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'`
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
      case $host in
kusano 7d535a
      *-*-darwin*)
kusano 7d535a
	# Don't allow lazy linking, it breaks C++ global constructors
kusano 7d535a
	# But is supposedly fixed on 10.4 or later (yay!).
kusano 7d535a
	if test "$tagname" = CXX ; then
kusano 7d535a
	  case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
kusano 7d535a
	    10.[0123])
kusano 7d535a
	      func_append compile_command " ${wl}-bind_at_load"
kusano 7d535a
	      func_append finalize_command " ${wl}-bind_at_load"
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	fi
kusano 7d535a
	# Time to change all our "foo.ltframework" stuff back to "-framework foo"
kusano 7d535a
	compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
kusano 7d535a
	finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
kusano 7d535a
kusano 7d535a
      # move library search paths that coincide with paths to not yet
kusano 7d535a
      # installed libraries to the beginning of the library search list
kusano 7d535a
      new_libs=
kusano 7d535a
      for path in $notinst_path; do
kusano 7d535a
	case " $new_libs " in
kusano 7d535a
	*" -L$path/$objdir "*) ;;
kusano 7d535a
	*)
kusano 7d535a
	  case " $compile_deplibs " in
kusano 7d535a
	  *" -L$path/$objdir "*)
kusano 7d535a
	    func_append new_libs " -L$path/$objdir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
      for deplib in $compile_deplibs; do
kusano 7d535a
	case $deplib in
kusano 7d535a
	-L*)
kusano 7d535a
	  case " $new_libs " in
kusano 7d535a
	  *" $deplib "*) ;;
kusano 7d535a
	  *) func_append new_libs " $deplib" ;;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	*) func_append new_libs " $deplib" ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
      compile_deplibs="$new_libs"
kusano 7d535a
kusano 7d535a
kusano 7d535a
      func_append compile_command " $compile_deplibs"
kusano 7d535a
      func_append finalize_command " $finalize_deplibs"
kusano 7d535a
kusano 7d535a
      if test -n "$rpath$xrpath"; then
kusano 7d535a
	# If the user specified any rpath flags, then add them.
kusano 7d535a
	for libdir in $rpath $xrpath; do
kusano 7d535a
	  # This is the magic to use -rpath.
kusano 7d535a
	  case "$finalize_rpath " in
kusano 7d535a
	  *" $libdir "*) ;;
kusano 7d535a
	  *) func_append finalize_rpath " $libdir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	done
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Now hardcode the library paths
kusano 7d535a
      rpath=
kusano 7d535a
      hardcode_libdirs=
kusano 7d535a
      for libdir in $compile_rpath $finalize_rpath; do
kusano 7d535a
	if test -n "$hardcode_libdir_flag_spec"; then
kusano 7d535a
	  if test -n "$hardcode_libdir_separator"; then
kusano 7d535a
	    if test -z "$hardcode_libdirs"; then
kusano 7d535a
	      hardcode_libdirs="$libdir"
kusano 7d535a
	    else
kusano 7d535a
	      # Just accumulate the unique libdirs.
kusano 7d535a
	      case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
kusano 7d535a
	      *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
kusano 7d535a
		;;
kusano 7d535a
	      *)
kusano 7d535a
		func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
	  else
kusano 7d535a
	    eval flag=\"$hardcode_libdir_flag_spec\"
kusano 7d535a
	    func_append rpath " $flag"
kusano 7d535a
	  fi
kusano 7d535a
	elif test -n "$runpath_var"; then
kusano 7d535a
	  case "$perm_rpath " in
kusano 7d535a
	  *" $libdir "*) ;;
kusano 7d535a
	  *) func_append perm_rpath " $libdir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	fi
kusano 7d535a
	case $host in
kusano 7d535a
	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
kusano 7d535a
	  testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
kusano 7d535a
	  case :$dllsearchpath: in
kusano 7d535a
	  *":$libdir:"*) ;;
kusano 7d535a
	  ::) dllsearchpath=$libdir;;
kusano 7d535a
	  *) func_append dllsearchpath ":$libdir";;
kusano 7d535a
	  esac
kusano 7d535a
	  case :$dllsearchpath: in
kusano 7d535a
	  *":$testbindir:"*) ;;
kusano 7d535a
	  ::) dllsearchpath=$testbindir;;
kusano 7d535a
	  *) func_append dllsearchpath ":$testbindir";;
kusano 7d535a
	  esac
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
      done
kusano 7d535a
      # Substitute the hardcoded libdirs into the rpath.
kusano 7d535a
      if test -n "$hardcode_libdir_separator" &&
kusano 7d535a
	 test -n "$hardcode_libdirs"; then
kusano 7d535a
	libdir="$hardcode_libdirs"
kusano 7d535a
	eval rpath=\" $hardcode_libdir_flag_spec\"
kusano 7d535a
      fi
kusano 7d535a
      compile_rpath="$rpath"
kusano 7d535a
kusano 7d535a
      rpath=
kusano 7d535a
      hardcode_libdirs=
kusano 7d535a
      for libdir in $finalize_rpath; do
kusano 7d535a
	if test -n "$hardcode_libdir_flag_spec"; then
kusano 7d535a
	  if test -n "$hardcode_libdir_separator"; then
kusano 7d535a
	    if test -z "$hardcode_libdirs"; then
kusano 7d535a
	      hardcode_libdirs="$libdir"
kusano 7d535a
	    else
kusano 7d535a
	      # Just accumulate the unique libdirs.
kusano 7d535a
	      case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
kusano 7d535a
	      *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
kusano 7d535a
		;;
kusano 7d535a
	      *)
kusano 7d535a
		func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	    fi
kusano 7d535a
	  else
kusano 7d535a
	    eval flag=\"$hardcode_libdir_flag_spec\"
kusano 7d535a
	    func_append rpath " $flag"
kusano 7d535a
	  fi
kusano 7d535a
	elif test -n "$runpath_var"; then
kusano 7d535a
	  case "$finalize_perm_rpath " in
kusano 7d535a
	  *" $libdir "*) ;;
kusano 7d535a
	  *) func_append finalize_perm_rpath " $libdir" ;;
kusano 7d535a
	  esac
kusano 7d535a
	fi
kusano 7d535a
      done
kusano 7d535a
      # Substitute the hardcoded libdirs into the rpath.
kusano 7d535a
      if test -n "$hardcode_libdir_separator" &&
kusano 7d535a
	 test -n "$hardcode_libdirs"; then
kusano 7d535a
	libdir="$hardcode_libdirs"
kusano 7d535a
	eval rpath=\" $hardcode_libdir_flag_spec\"
kusano 7d535a
      fi
kusano 7d535a
      finalize_rpath="$rpath"
kusano 7d535a
kusano 7d535a
      if test -n "$libobjs" && test "$build_old_libs" = yes; then
kusano 7d535a
	# Transform all the library objects into standard objects.
kusano 7d535a
	compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
kusano 7d535a
	finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      func_generate_dlsyms "$outputname" "@PROGRAM@" "no"
kusano 7d535a
kusano 7d535a
      # template prelinking step
kusano 7d535a
      if test -n "$prelink_cmds"; then
kusano 7d535a
	func_execute_cmds "$prelink_cmds" 'exit $?'
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      wrappers_required=yes
kusano 7d535a
      case $host in
kusano 7d535a
      *cegcc* | *mingw32ce*)
kusano 7d535a
        # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.
kusano 7d535a
        wrappers_required=no
kusano 7d535a
        ;;
kusano 7d535a
      *cygwin* | *mingw* )
kusano 7d535a
        if test "$build_libtool_libs" != yes; then
kusano 7d535a
          wrappers_required=no
kusano 7d535a
        fi
kusano 7d535a
        ;;
kusano 7d535a
      *)
kusano 7d535a
        if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
kusano 7d535a
          wrappers_required=no
kusano 7d535a
        fi
kusano 7d535a
        ;;
kusano 7d535a
      esac
kusano 7d535a
      if test "$wrappers_required" = no; then
kusano 7d535a
	# Replace the output file specification.
kusano 7d535a
	compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
kusano 7d535a
	link_command="$compile_command$compile_rpath"
kusano 7d535a
kusano 7d535a
	# We have no uninstalled library dependencies, so finalize right now.
kusano 7d535a
	exit_status=0
kusano 7d535a
	func_show_eval "$link_command" 'exit_status=$?'
kusano 7d535a
kusano 7d535a
	if test -n "$postlink_cmds"; then
kusano 7d535a
	  func_to_tool_file "$output"
kusano 7d535a
	  postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
kusano 7d535a
	  func_execute_cmds "$postlink_cmds" 'exit $?'
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# Delete the generated files.
kusano 7d535a
	if test -f "$output_objdir/${outputname}S.${objext}"; then
kusano 7d535a
	  func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	exit $exit_status
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      if test -n "$compile_shlibpath$finalize_shlibpath"; then
kusano 7d535a
	compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
kusano 7d535a
      fi
kusano 7d535a
      if test -n "$finalize_shlibpath"; then
kusano 7d535a
	finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      compile_var=
kusano 7d535a
      finalize_var=
kusano 7d535a
      if test -n "$runpath_var"; then
kusano 7d535a
	if test -n "$perm_rpath"; then
kusano 7d535a
	  # We should set the runpath_var.
kusano 7d535a
	  rpath=
kusano 7d535a
	  for dir in $perm_rpath; do
kusano 7d535a
	    func_append rpath "$dir:"
kusano 7d535a
	  done
kusano 7d535a
	  compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
kusano 7d535a
	fi
kusano 7d535a
	if test -n "$finalize_perm_rpath"; then
kusano 7d535a
	  # We should set the runpath_var.
kusano 7d535a
	  rpath=
kusano 7d535a
	  for dir in $finalize_perm_rpath; do
kusano 7d535a
	    func_append rpath "$dir:"
kusano 7d535a
	  done
kusano 7d535a
	  finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
kusano 7d535a
	fi
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      if test "$no_install" = yes; then
kusano 7d535a
	# We don't need to create a wrapper script.
kusano 7d535a
	link_command="$compile_var$compile_command$compile_rpath"
kusano 7d535a
	# Replace the output file specification.
kusano 7d535a
	link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
kusano 7d535a
	# Delete the old output file.
kusano 7d535a
	$opt_dry_run || $RM $output
kusano 7d535a
	# Link the executable and exit
kusano 7d535a
	func_show_eval "$link_command" 'exit $?'
kusano 7d535a
kusano 7d535a
	if test -n "$postlink_cmds"; then
kusano 7d535a
	  func_to_tool_file "$output"
kusano 7d535a
	  postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
kusano 7d535a
	  func_execute_cmds "$postlink_cmds" 'exit $?'
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	exit $EXIT_SUCCESS
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      if test "$hardcode_action" = relink; then
kusano 7d535a
	# Fast installation is not supported
kusano 7d535a
	link_command="$compile_var$compile_command$compile_rpath"
kusano 7d535a
	relink_command="$finalize_var$finalize_command$finalize_rpath"
kusano 7d535a
kusano 7d535a
	func_warning "this platform does not like uninstalled shared libraries"
kusano 7d535a
	func_warning "\`$output' will be relinked during installation"
kusano 7d535a
      else
kusano 7d535a
	if test "$fast_install" != no; then
kusano 7d535a
	  link_command="$finalize_var$compile_command$finalize_rpath"
kusano 7d535a
	  if test "$fast_install" = yes; then
kusano 7d535a
	    relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
kusano 7d535a
	  else
kusano 7d535a
	    # fast_install is set to needless
kusano 7d535a
	    relink_command=
kusano 7d535a
	  fi
kusano 7d535a
	else
kusano 7d535a
	  link_command="$compile_var$compile_command$compile_rpath"
kusano 7d535a
	  relink_command="$finalize_var$finalize_command$finalize_rpath"
kusano 7d535a
	fi
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Replace the output file specification.
kusano 7d535a
      link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
kusano 7d535a
kusano 7d535a
      # Delete the old output files.
kusano 7d535a
      $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname
kusano 7d535a
kusano 7d535a
      func_show_eval "$link_command" 'exit $?'
kusano 7d535a
kusano 7d535a
      if test -n "$postlink_cmds"; then
kusano 7d535a
	func_to_tool_file "$output_objdir/$outputname"
kusano 7d535a
	postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
kusano 7d535a
	func_execute_cmds "$postlink_cmds" 'exit $?'
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Now create the wrapper script.
kusano 7d535a
      func_verbose "creating $output"
kusano 7d535a
kusano 7d535a
      # Quote the relink command for shipping.
kusano 7d535a
      if test -n "$relink_command"; then
kusano 7d535a
	# Preserve any variables that may affect compiler behavior
kusano 7d535a
	for var in $variables_saved_for_relink; do
kusano 7d535a
	  if eval test -z \"\${$var+set}\"; then
kusano 7d535a
	    relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
kusano 7d535a
	  elif eval var_value=\$$var; test -z "$var_value"; then
kusano 7d535a
	    relink_command="$var=; export $var; $relink_command"
kusano 7d535a
	  else
kusano 7d535a
	    func_quote_for_eval "$var_value"
kusano 7d535a
	    relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
kusano 7d535a
	  fi
kusano 7d535a
	done
kusano 7d535a
	relink_command="(cd `pwd`; $relink_command)"
kusano 7d535a
	relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Only actually do things if not in dry run mode.
kusano 7d535a
      $opt_dry_run || {
kusano 7d535a
	# win32 will think the script is a binary if it has
kusano 7d535a
	# a .exe suffix, so we strip it off here.
kusano 7d535a
	case $output in
kusano 7d535a
	  *.exe) func_stripname '' '.exe' "$output"
kusano 7d535a
	         output=$func_stripname_result ;;
kusano 7d535a
	esac
kusano 7d535a
	# test for cygwin because mv fails w/o .exe extensions
kusano 7d535a
	case $host in
kusano 7d535a
	  *cygwin*)
kusano 7d535a
	    exeext=.exe
kusano 7d535a
	    func_stripname '' '.exe' "$outputname"
kusano 7d535a
	    outputname=$func_stripname_result ;;
kusano 7d535a
	  *) exeext= ;;
kusano 7d535a
	esac
kusano 7d535a
	case $host in
kusano 7d535a
	  *cygwin* | *mingw* )
kusano 7d535a
	    func_dirname_and_basename "$output" "" "."
kusano 7d535a
	    output_name=$func_basename_result
kusano 7d535a
	    output_path=$func_dirname_result
kusano 7d535a
	    cwrappersource="$output_path/$objdir/lt-$output_name.c"
kusano 7d535a
	    cwrapper="$output_path/$output_name.exe"
kusano 7d535a
	    $RM $cwrappersource $cwrapper
kusano 7d535a
	    trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
kusano 7d535a
kusano 7d535a
	    func_emit_cwrapperexe_src > $cwrappersource
kusano 7d535a
kusano 7d535a
	    # The wrapper executable is built using the $host compiler,
kusano 7d535a
	    # because it contains $host paths and files. If cross-
kusano 7d535a
	    # compiling, it, like the target executable, must be
kusano 7d535a
	    # executed on the $host or under an emulation environment.
kusano 7d535a
	    $opt_dry_run || {
kusano 7d535a
	      $LTCC $LTCFLAGS -o $cwrapper $cwrappersource
kusano 7d535a
	      $STRIP $cwrapper
kusano 7d535a
	    }
kusano 7d535a
kusano 7d535a
	    # Now, create the wrapper script for func_source use:
kusano 7d535a
	    func_ltwrapper_scriptname $cwrapper
kusano 7d535a
	    $RM $func_ltwrapper_scriptname_result
kusano 7d535a
	    trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
kusano 7d535a
	    $opt_dry_run || {
kusano 7d535a
	      # note: this script will not be executed, so do not chmod.
kusano 7d535a
	      if test "x$build" = "x$host" ; then
kusano 7d535a
		$cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
kusano 7d535a
	      else
kusano 7d535a
		func_emit_wrapper no > $func_ltwrapper_scriptname_result
kusano 7d535a
	      fi
kusano 7d535a
	    }
kusano 7d535a
	  ;;
kusano 7d535a
	  * )
kusano 7d535a
	    $RM $output
kusano 7d535a
	    trap "$RM $output; exit $EXIT_FAILURE" 1 2 15
kusano 7d535a
kusano 7d535a
	    func_emit_wrapper no > $output
kusano 7d535a
	    chmod +x $output
kusano 7d535a
	  ;;
kusano 7d535a
	esac
kusano 7d535a
      }
kusano 7d535a
      exit $EXIT_SUCCESS
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
kusano 7d535a
    # See if we need to build an old-fashioned archive.
kusano 7d535a
    for oldlib in $oldlibs; do
kusano 7d535a
kusano 7d535a
      if test "$build_libtool_libs" = convenience; then
kusano 7d535a
	oldobjs="$libobjs_save $symfileobj"
kusano 7d535a
	addlibs="$convenience"
kusano 7d535a
	build_libtool_libs=no
kusano 7d535a
      else
kusano 7d535a
	if test "$build_libtool_libs" = module; then
kusano 7d535a
	  oldobjs="$libobjs_save"
kusano 7d535a
	  build_libtool_libs=no
kusano 7d535a
	else
kusano 7d535a
	  oldobjs="$old_deplibs $non_pic_objects"
kusano 7d535a
	  if test "$preload" = yes && test -f "$symfileobj"; then
kusano 7d535a
	    func_append oldobjs " $symfileobj"
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
	addlibs="$old_convenience"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      if test -n "$addlibs"; then
kusano 7d535a
	gentop="$output_objdir/${outputname}x"
kusano 7d535a
	func_append generated " $gentop"
kusano 7d535a
kusano 7d535a
	func_extract_archives $gentop $addlibs
kusano 7d535a
	func_append oldobjs " $func_extract_archives_result"
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Do each command in the archive commands.
kusano 7d535a
      if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
kusano 7d535a
	cmds=$old_archive_from_new_cmds
kusano 7d535a
      else
kusano 7d535a
kusano 7d535a
	# Add any objects from preloaded convenience libraries
kusano 7d535a
	if test -n "$dlprefiles"; then
kusano 7d535a
	  gentop="$output_objdir/${outputname}x"
kusano 7d535a
	  func_append generated " $gentop"
kusano 7d535a
kusano 7d535a
	  func_extract_archives $gentop $dlprefiles
kusano 7d535a
	  func_append oldobjs " $func_extract_archives_result"
kusano 7d535a
	fi
kusano 7d535a
kusano 7d535a
	# POSIX demands no paths to be encoded in archives.  We have
kusano 7d535a
	# to avoid creating archives with duplicate basenames if we
kusano 7d535a
	# might have to extract them afterwards, e.g., when creating a
kusano 7d535a
	# static archive out of a convenience library, or when linking
kusano 7d535a
	# the entirety of a libtool archive into another (currently
kusano 7d535a
	# not supported by libtool).
kusano 7d535a
	if (for obj in $oldobjs
kusano 7d535a
	    do
kusano 7d535a
	      func_basename "$obj"
kusano 7d535a
	      $ECHO "$func_basename_result"
kusano 7d535a
	    done | sort | sort -uc >/dev/null 2>&1); then
kusano 7d535a
	  :
kusano 7d535a
	else
kusano 7d535a
	  echo "copying selected object files to avoid basename conflicts..."
kusano 7d535a
	  gentop="$output_objdir/${outputname}x"
kusano 7d535a
	  func_append generated " $gentop"
kusano 7d535a
	  func_mkdir_p "$gentop"
kusano 7d535a
	  save_oldobjs=$oldobjs
kusano 7d535a
	  oldobjs=
kusano 7d535a
	  counter=1
kusano 7d535a
	  for obj in $save_oldobjs
kusano 7d535a
	  do
kusano 7d535a
	    func_basename "$obj"
kusano 7d535a
	    objbase="$func_basename_result"
kusano 7d535a
	    case " $oldobjs " in
kusano 7d535a
	    " ") oldobjs=$obj ;;
kusano 7d535a
	    *[\ /]"$objbase "*)
kusano 7d535a
	      while :; do
kusano 7d535a
		# Make sure we don't pick an alternate name that also
kusano 7d535a
		# overlaps.
kusano 7d535a
		newobj=lt$counter-$objbase
kusano 7d535a
		func_arith $counter + 1
kusano 7d535a
		counter=$func_arith_result
kusano 7d535a
		case " $oldobjs " in
kusano 7d535a
		*[\ /]"$newobj "*) ;;
kusano 7d535a
		*) if test ! -f "$gentop/$newobj"; then break; fi ;;
kusano 7d535a
		esac
kusano 7d535a
	      done
kusano 7d535a
	      func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
kusano 7d535a
	      func_append oldobjs " $gentop/$newobj"
kusano 7d535a
	      ;;
kusano 7d535a
	    *) func_append oldobjs " $obj" ;;
kusano 7d535a
	    esac
kusano 7d535a
	  done
kusano 7d535a
	fi
kusano 7d535a
	func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
kusano 7d535a
	tool_oldlib=$func_to_tool_file_result
kusano 7d535a
	eval cmds=\"$old_archive_cmds\"
kusano 7d535a
kusano 7d535a
	func_len " $cmds"
kusano 7d535a
	len=$func_len_result
kusano 7d535a
	if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
kusano 7d535a
	  cmds=$old_archive_cmds
kusano 7d535a
	elif test -n "$archiver_list_spec"; then
kusano 7d535a
	  func_verbose "using command file archive linking..."
kusano 7d535a
	  for obj in $oldobjs
kusano 7d535a
	  do
kusano 7d535a
	    func_to_tool_file "$obj"
kusano 7d535a
	    $ECHO "$func_to_tool_file_result"
kusano 7d535a
	  done > $output_objdir/$libname.libcmd
kusano 7d535a
	  func_to_tool_file "$output_objdir/$libname.libcmd"
kusano 7d535a
	  oldobjs=" $archiver_list_spec$func_to_tool_file_result"
kusano 7d535a
	  cmds=$old_archive_cmds
kusano 7d535a
	else
kusano 7d535a
	  # the command line is too long to link in one step, link in parts
kusano 7d535a
	  func_verbose "using piecewise archive linking..."
kusano 7d535a
	  save_RANLIB=$RANLIB
kusano 7d535a
	  RANLIB=:
kusano 7d535a
	  objlist=
kusano 7d535a
	  concat_cmds=
kusano 7d535a
	  save_oldobjs=$oldobjs
kusano 7d535a
	  oldobjs=
kusano 7d535a
	  # Is there a better way of finding the last object in the list?
kusano 7d535a
	  for obj in $save_oldobjs
kusano 7d535a
	  do
kusano 7d535a
	    last_oldobj=$obj
kusano 7d535a
	  done
kusano 7d535a
	  eval test_cmds=\"$old_archive_cmds\"
kusano 7d535a
	  func_len " $test_cmds"
kusano 7d535a
	  len0=$func_len_result
kusano 7d535a
	  len=$len0
kusano 7d535a
	  for obj in $save_oldobjs
kusano 7d535a
	  do
kusano 7d535a
	    func_len " $obj"
kusano 7d535a
	    func_arith $len + $func_len_result
kusano 7d535a
	    len=$func_arith_result
kusano 7d535a
	    func_append objlist " $obj"
kusano 7d535a
	    if test "$len" -lt "$max_cmd_len"; then
kusano 7d535a
	      :
kusano 7d535a
	    else
kusano 7d535a
	      # the above command should be used before it gets too long
kusano 7d535a
	      oldobjs=$objlist
kusano 7d535a
	      if test "$obj" = "$last_oldobj" ; then
kusano 7d535a
		RANLIB=$save_RANLIB
kusano 7d535a
	      fi
kusano 7d535a
	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
kusano 7d535a
	      eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
kusano 7d535a
	      objlist=
kusano 7d535a
	      len=$len0
kusano 7d535a
	    fi
kusano 7d535a
	  done
kusano 7d535a
	  RANLIB=$save_RANLIB
kusano 7d535a
	  oldobjs=$objlist
kusano 7d535a
	  if test "X$oldobjs" = "X" ; then
kusano 7d535a
	    eval cmds=\"\$concat_cmds\"
kusano 7d535a
	  else
kusano 7d535a
	    eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
      fi
kusano 7d535a
      func_execute_cmds "$cmds" 'exit $?'
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    test -n "$generated" && \
kusano 7d535a
      func_show_eval "${RM}r$generated"
kusano 7d535a
kusano 7d535a
    # Now create the libtool archive.
kusano 7d535a
    case $output in
kusano 7d535a
    *.la)
kusano 7d535a
      old_library=
kusano 7d535a
      test "$build_old_libs" = yes && old_library="$libname.$libext"
kusano 7d535a
      func_verbose "creating $output"
kusano 7d535a
kusano 7d535a
      # Preserve any variables that may affect compiler behavior
kusano 7d535a
      for var in $variables_saved_for_relink; do
kusano 7d535a
	if eval test -z \"\${$var+set}\"; then
kusano 7d535a
	  relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
kusano 7d535a
	elif eval var_value=\$$var; test -z "$var_value"; then
kusano 7d535a
	  relink_command="$var=; export $var; $relink_command"
kusano 7d535a
	else
kusano 7d535a
	  func_quote_for_eval "$var_value"
kusano 7d535a
	  relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
kusano 7d535a
	fi
kusano 7d535a
      done
kusano 7d535a
      # Quote the link command for shipping.
kusano 7d535a
      relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
kusano 7d535a
      relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
kusano 7d535a
      if test "$hardcode_automatic" = yes ; then
kusano 7d535a
	relink_command=
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Only create the output if not a dry run.
kusano 7d535a
      $opt_dry_run || {
kusano 7d535a
	for installed in no yes; do
kusano 7d535a
	  if test "$installed" = yes; then
kusano 7d535a
	    if test -z "$install_libdir"; then
kusano 7d535a
	      break
kusano 7d535a
	    fi
kusano 7d535a
	    output="$output_objdir/$outputname"i
kusano 7d535a
	    # Replace all uninstalled libtool libraries with the installed ones
kusano 7d535a
	    newdependency_libs=
kusano 7d535a
	    for deplib in $dependency_libs; do
kusano 7d535a
	      case $deplib in
kusano 7d535a
	      *.la)
kusano 7d535a
		func_basename "$deplib"
kusano 7d535a
		name="$func_basename_result"
kusano 7d535a
		func_resolve_sysroot "$deplib"
kusano 7d535a
		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result`
kusano 7d535a
		test -z "$libdir" && \
kusano 7d535a
		  func_fatal_error "\`$deplib' is not a valid libtool archive"
kusano 7d535a
		func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name"
kusano 7d535a
		;;
kusano 7d535a
	      -L*)
kusano 7d535a
		func_stripname -L '' "$deplib"
kusano 7d535a
		func_replace_sysroot "$func_stripname_result"
kusano 7d535a
		func_append newdependency_libs " -L$func_replace_sysroot_result"
kusano 7d535a
		;;
kusano 7d535a
	      -R*)
kusano 7d535a
		func_stripname -R '' "$deplib"
kusano 7d535a
		func_replace_sysroot "$func_stripname_result"
kusano 7d535a
		func_append newdependency_libs " -R$func_replace_sysroot_result"
kusano 7d535a
		;;
kusano 7d535a
	      *) func_append newdependency_libs " $deplib" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    done
kusano 7d535a
	    dependency_libs="$newdependency_libs"
kusano 7d535a
	    newdlfiles=
kusano 7d535a
kusano 7d535a
	    for lib in $dlfiles; do
kusano 7d535a
	      case $lib in
kusano 7d535a
	      *.la)
kusano 7d535a
	        func_basename "$lib"
kusano 7d535a
		name="$func_basename_result"
kusano 7d535a
		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
kusano 7d535a
		test -z "$libdir" && \
kusano 7d535a
		  func_fatal_error "\`$lib' is not a valid libtool archive"
kusano 7d535a
		func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name"
kusano 7d535a
		;;
kusano 7d535a
	      *) func_append newdlfiles " $lib" ;;
kusano 7d535a
	      esac
kusano 7d535a
	    done
kusano 7d535a
	    dlfiles="$newdlfiles"
kusano 7d535a
	    newdlprefiles=
kusano 7d535a
	    for lib in $dlprefiles; do
kusano 7d535a
	      case $lib in
kusano 7d535a
	      *.la)
kusano 7d535a
		# Only pass preopened files to the pseudo-archive (for
kusano 7d535a
		# eventual linking with the app. that links it) if we
kusano 7d535a
		# didn't already link the preopened objects directly into
kusano 7d535a
		# the library:
kusano 7d535a
		func_basename "$lib"
kusano 7d535a
		name="$func_basename_result"
kusano 7d535a
		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
kusano 7d535a
		test -z "$libdir" && \
kusano 7d535a
		  func_fatal_error "\`$lib' is not a valid libtool archive"
kusano 7d535a
		func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name"
kusano 7d535a
		;;
kusano 7d535a
	      esac
kusano 7d535a
	    done
kusano 7d535a
	    dlprefiles="$newdlprefiles"
kusano 7d535a
	  else
kusano 7d535a
	    newdlfiles=
kusano 7d535a
	    for lib in $dlfiles; do
kusano 7d535a
	      case $lib in
kusano 7d535a
		[\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
kusano 7d535a
		*) abs=`pwd`"/$lib" ;;
kusano 7d535a
	      esac
kusano 7d535a
	      func_append newdlfiles " $abs"
kusano 7d535a
	    done
kusano 7d535a
	    dlfiles="$newdlfiles"
kusano 7d535a
	    newdlprefiles=
kusano 7d535a
	    for lib in $dlprefiles; do
kusano 7d535a
	      case $lib in
kusano 7d535a
		[\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
kusano 7d535a
		*) abs=`pwd`"/$lib" ;;
kusano 7d535a
	      esac
kusano 7d535a
	      func_append newdlprefiles " $abs"
kusano 7d535a
	    done
kusano 7d535a
	    dlprefiles="$newdlprefiles"
kusano 7d535a
	  fi
kusano 7d535a
	  $RM $output
kusano 7d535a
	  # place dlname in correct position for cygwin
kusano 7d535a
	  # In fact, it would be nice if we could use this code for all target
kusano 7d535a
	  # systems that can't hard-code library paths into their executables
kusano 7d535a
	  # and that have no shared library path variable independent of PATH,
kusano 7d535a
	  # but it turns out we can't easily determine that from inspecting
kusano 7d535a
	  # libtool variables, so we have to hard-code the OSs to which it
kusano 7d535a
	  # applies here; at the moment, that means platforms that use the PE
kusano 7d535a
	  # object format with DLL files.  See the long comment at the top of
kusano 7d535a
	  # tests/bindir.at for full details.
kusano 7d535a
	  tdlname=$dlname
kusano 7d535a
	  case $host,$output,$installed,$module,$dlname in
kusano 7d535a
	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll)
kusano 7d535a
	      # If a -bindir argument was supplied, place the dll there.
kusano 7d535a
	      if test "x$bindir" != x ;
kusano 7d535a
	      then
kusano 7d535a
		func_relative_path "$install_libdir" "$bindir"
kusano 7d535a
		tdlname=$func_relative_path_result$dlname
kusano 7d535a
	      else
kusano 7d535a
		# Otherwise fall back on heuristic.
kusano 7d535a
		tdlname=../bin/$dlname
kusano 7d535a
	      fi
kusano 7d535a
	      ;;
kusano 7d535a
	  esac
kusano 7d535a
	  $ECHO > $output "\
kusano 7d535a
# $outputname - a libtool library file
kusano 7d535a
# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
kusano 7d535a
#
kusano 7d535a
# Please DO NOT delete this file!
kusano 7d535a
# It is necessary for linking the library.
kusano 7d535a
kusano 7d535a
# The name that we can dlopen(3).
kusano 7d535a
dlname='$tdlname'
kusano 7d535a
kusano 7d535a
# Names of this library.
kusano 7d535a
library_names='$library_names'
kusano 7d535a
kusano 7d535a
# The name of the static archive.
kusano 7d535a
old_library='$old_library'
kusano 7d535a
kusano 7d535a
# Linker flags that can not go in dependency_libs.
kusano 7d535a
inherited_linker_flags='$new_inherited_linker_flags'
kusano 7d535a
kusano 7d535a
# Libraries that this one depends upon.
kusano 7d535a
dependency_libs='$dependency_libs'
kusano 7d535a
kusano 7d535a
# Names of additional weak libraries provided by this library
kusano 7d535a
weak_library_names='$weak_libs'
kusano 7d535a
kusano 7d535a
# Version information for $libname.
kusano 7d535a
current=$current
kusano 7d535a
age=$age
kusano 7d535a
revision=$revision
kusano 7d535a
kusano 7d535a
# Is this an already installed library?
kusano 7d535a
installed=$installed
kusano 7d535a
kusano 7d535a
# Should we warn about portability when linking against -modules?
kusano 7d535a
shouldnotlink=$module
kusano 7d535a
kusano 7d535a
# Files to dlopen/dlpreopen
kusano 7d535a
dlopen='$dlfiles'
kusano 7d535a
dlpreopen='$dlprefiles'
kusano 7d535a
kusano 7d535a
# Directory that this library needs to be installed in:
kusano 7d535a
libdir='$install_libdir'"
kusano 7d535a
	  if test "$installed" = no && test "$need_relink" = yes; then
kusano 7d535a
	    $ECHO >> $output "\
kusano 7d535a
relink_command=\"$relink_command\""
kusano 7d535a
	  fi
kusano 7d535a
	done
kusano 7d535a
      }
kusano 7d535a
kusano 7d535a
      # Do a symbolic link so that the libtool archive can be found in
kusano 7d535a
      # LD_LIBRARY_PATH before the program is installed.
kusano 7d535a
      func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?'
kusano 7d535a
      ;;
kusano 7d535a
    esac
kusano 7d535a
    exit $EXIT_SUCCESS
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
{ test "$opt_mode" = link || test "$opt_mode" = relink; } &&
kusano 7d535a
    func_mode_link ${1+"$@"}
kusano 7d535a
kusano 7d535a
kusano 7d535a
# func_mode_uninstall arg...
kusano 7d535a
func_mode_uninstall ()
kusano 7d535a
{
kusano 7d535a
    $opt_debug
kusano 7d535a
    RM="$nonopt"
kusano 7d535a
    files=
kusano 7d535a
    rmforce=
kusano 7d535a
    exit_status=0
kusano 7d535a
kusano 7d535a
    # This variable tells wrapper scripts just to set variables rather
kusano 7d535a
    # than running their programs.
kusano 7d535a
    libtool_install_magic="$magic"
kusano 7d535a
kusano 7d535a
    for arg
kusano 7d535a
    do
kusano 7d535a
      case $arg in
kusano 7d535a
      -f) func_append RM " $arg"; rmforce=yes ;;
kusano 7d535a
      -*) func_append RM " $arg" ;;
kusano 7d535a
      *) func_append files " $arg" ;;
kusano 7d535a
      esac
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    test -z "$RM" && \
kusano 7d535a
      func_fatal_help "you must specify an RM program"
kusano 7d535a
kusano 7d535a
    rmdirs=
kusano 7d535a
kusano 7d535a
    for file in $files; do
kusano 7d535a
      func_dirname "$file" "" "."
kusano 7d535a
      dir="$func_dirname_result"
kusano 7d535a
      if test "X$dir" = X.; then
kusano 7d535a
	odir="$objdir"
kusano 7d535a
      else
kusano 7d535a
	odir="$dir/$objdir"
kusano 7d535a
      fi
kusano 7d535a
      func_basename "$file"
kusano 7d535a
      name="$func_basename_result"
kusano 7d535a
      test "$opt_mode" = uninstall && odir="$dir"
kusano 7d535a
kusano 7d535a
      # Remember odir for removal later, being careful to avoid duplicates
kusano 7d535a
      if test "$opt_mode" = clean; then
kusano 7d535a
	case " $rmdirs " in
kusano 7d535a
	  *" $odir "*) ;;
kusano 7d535a
	  *) func_append rmdirs " $odir" ;;
kusano 7d535a
	esac
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      # Don't error if the file doesn't exist and rm -f was used.
kusano 7d535a
      if { test -L "$file"; } >/dev/null 2>&1 ||
kusano 7d535a
	 { test -h "$file"; } >/dev/null 2>&1 ||
kusano 7d535a
	 test -f "$file"; then
kusano 7d535a
	:
kusano 7d535a
      elif test -d "$file"; then
kusano 7d535a
	exit_status=1
kusano 7d535a
	continue
kusano 7d535a
      elif test "$rmforce" = yes; then
kusano 7d535a
	continue
kusano 7d535a
      fi
kusano 7d535a
kusano 7d535a
      rmfiles="$file"
kusano 7d535a
kusano 7d535a
      case $name in
kusano 7d535a
      *.la)
kusano 7d535a
	# Possibly a libtool archive, so verify it.
kusano 7d535a
	if func_lalib_p "$file"; then
kusano 7d535a
	  func_source $dir/$name
kusano 7d535a
kusano 7d535a
	  # Delete the libtool libraries and symlinks.
kusano 7d535a
	  for n in $library_names; do
kusano 7d535a
	    func_append rmfiles " $odir/$n"
kusano 7d535a
	  done
kusano 7d535a
	  test -n "$old_library" && func_append rmfiles " $odir/$old_library"
kusano 7d535a
kusano 7d535a
	  case "$opt_mode" in
kusano 7d535a
	  clean)
kusano 7d535a
	    case " $library_names " in
kusano 7d535a
	    *" $dlname "*) ;;
kusano 7d535a
	    *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;;
kusano 7d535a
	    esac
kusano 7d535a
	    test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i"
kusano 7d535a
	    ;;
kusano 7d535a
	  uninstall)
kusano 7d535a
	    if test -n "$library_names"; then
kusano 7d535a
	      # Do each command in the postuninstall commands.
kusano 7d535a
	      func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    if test -n "$old_library"; then
kusano 7d535a
	      # Do each command in the old_postuninstall commands.
kusano 7d535a
	      func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
kusano 7d535a
	    fi
kusano 7d535a
	    # FIXME: should reinstall the best remaining shared library.
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *.lo)
kusano 7d535a
	# Possibly a libtool object, so verify it.
kusano 7d535a
	if func_lalib_p "$file"; then
kusano 7d535a
kusano 7d535a
	  # Read the .lo file
kusano 7d535a
	  func_source $dir/$name
kusano 7d535a
kusano 7d535a
	  # Add PIC object to the list of files to remove.
kusano 7d535a
	  if test -n "$pic_object" &&
kusano 7d535a
	     test "$pic_object" != none; then
kusano 7d535a
	    func_append rmfiles " $dir/$pic_object"
kusano 7d535a
	  fi
kusano 7d535a
kusano 7d535a
	  # Add non-PIC object to the list of files to remove.
kusano 7d535a
	  if test -n "$non_pic_object" &&
kusano 7d535a
	     test "$non_pic_object" != none; then
kusano 7d535a
	    func_append rmfiles " $dir/$non_pic_object"
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
kusano 7d535a
      *)
kusano 7d535a
	if test "$opt_mode" = clean ; then
kusano 7d535a
	  noexename=$name
kusano 7d535a
	  case $file in
kusano 7d535a
	  *.exe)
kusano 7d535a
	    func_stripname '' '.exe' "$file"
kusano 7d535a
	    file=$func_stripname_result
kusano 7d535a
	    func_stripname '' '.exe' "$name"
kusano 7d535a
	    noexename=$func_stripname_result
kusano 7d535a
	    # $file with .exe has already been added to rmfiles,
kusano 7d535a
	    # add $file without .exe
kusano 7d535a
	    func_append rmfiles " $file"
kusano 7d535a
	    ;;
kusano 7d535a
	  esac
kusano 7d535a
	  # Do a test to see if this is a libtool program.
kusano 7d535a
	  if func_ltwrapper_p "$file"; then
kusano 7d535a
	    if func_ltwrapper_executable_p "$file"; then
kusano 7d535a
	      func_ltwrapper_scriptname "$file"
kusano 7d535a
	      relink_command=
kusano 7d535a
	      func_source $func_ltwrapper_scriptname_result
kusano 7d535a
	      func_append rmfiles " $func_ltwrapper_scriptname_result"
kusano 7d535a
	    else
kusano 7d535a
	      relink_command=
kusano 7d535a
	      func_source $dir/$noexename
kusano 7d535a
	    fi
kusano 7d535a
kusano 7d535a
	    # note $name still contains .exe if it was in $file originally
kusano 7d535a
	    # as does the version of $file that was added into $rmfiles
kusano 7d535a
	    func_append rmfiles " $odir/$name $odir/${name}S.${objext}"
kusano 7d535a
	    if test "$fast_install" = yes && test -n "$relink_command"; then
kusano 7d535a
	      func_append rmfiles " $odir/lt-$name"
kusano 7d535a
	    fi
kusano 7d535a
	    if test "X$noexename" != "X$name" ; then
kusano 7d535a
	      func_append rmfiles " $odir/lt-${noexename}.c"
kusano 7d535a
	    fi
kusano 7d535a
	  fi
kusano 7d535a
	fi
kusano 7d535a
	;;
kusano 7d535a
      esac
kusano 7d535a
      func_show_eval "$RM $rmfiles" 'exit_status=1'
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    # Try to remove the ${objdir}s in the directories where we deleted files
kusano 7d535a
    for dir in $rmdirs; do
kusano 7d535a
      if test -d "$dir"; then
kusano 7d535a
	func_show_eval "rmdir $dir >/dev/null 2>&1"
kusano 7d535a
      fi
kusano 7d535a
    done
kusano 7d535a
kusano 7d535a
    exit $exit_status
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } &&
kusano 7d535a
    func_mode_uninstall ${1+"$@"}
kusano 7d535a
kusano 7d535a
test -z "$opt_mode" && {
kusano 7d535a
  help="$generic_help"
kusano 7d535a
  func_fatal_help "you must specify a MODE"
kusano 7d535a
}
kusano 7d535a
kusano 7d535a
test -z "$exec_cmd" && \
kusano 7d535a
  func_fatal_help "invalid operation mode \`$opt_mode'"
kusano 7d535a
kusano 7d535a
if test -n "$exec_cmd"; then
kusano 7d535a
  eval exec "$exec_cmd"
kusano 7d535a
  exit $EXIT_FAILURE
kusano 7d535a
fi
kusano 7d535a
kusano 7d535a
exit $exit_status
kusano 7d535a
kusano 7d535a
kusano 7d535a
# The TAGs below are defined such that we never get into a situation
kusano 7d535a
# in which we disable both kinds of libraries.  Given conflicting
kusano 7d535a
# choices, we go for a static library, that is the most portable,
kusano 7d535a
# since we can't tell whether shared libraries were disabled because
kusano 7d535a
# the user asked for that or because the platform doesn't support
kusano 7d535a
# them.  This is particularly important on AIX, because we don't
kusano 7d535a
# support having both static and shared libraries enabled at the same
kusano 7d535a
# time on that platform, so we default to a shared-only configuration.
kusano 7d535a
# If a disable-shared tag is given, we'll fallback to a static-only
kusano 7d535a
# configuration.  But we'll never go from static-only to shared-only.
kusano 7d535a
kusano 7d535a
# ### BEGIN LIBTOOL TAG CONFIG: disable-shared
kusano 7d535a
build_libtool_libs=no
kusano 7d535a
build_old_libs=yes
kusano 7d535a
# ### END LIBTOOL TAG CONFIG: disable-shared
kusano 7d535a
kusano 7d535a
# ### BEGIN LIBTOOL TAG CONFIG: disable-static
kusano 7d535a
build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
kusano 7d535a
# ### END LIBTOOL TAG CONFIG: disable-static
kusano 7d535a
kusano 7d535a
# Local Variables:
kusano 7d535a
# mode:shell-script
kusano 7d535a
# sh-indentation:2
kusano 7d535a
# End:
kusano 7d535a
# vi:sw=2
kusano 7d535a