Diff for /embedaddon/ipsec-tools/libtool between versions 1.1.1.1.2.3 and 1.1.1.1.2.3.2.1

version 1.1.1.1.2.3, 2013/07/22 12:28:06 version 1.1.1.1.2.3.2.1, 2014/07/30 09:05:17
Line 1 Line 1
 #! /bin/sh  #! /bin/sh
   
 # libtool - Provide generalized library-building support services.  # libtool - Provide generalized library-building support services.
# Generated automatically by config.status (ipsec-tools) 0.8.0# Generated automatically by config.status (ipsec-tools) 0.8.1
 # Libtool was configured on host elwix.aitnet.org:  # Libtool was configured on host elwix.aitnet.org:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #  #
 #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
#                 2006, 2007, 2008 Free Software Foundation, Inc.#                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
 #                 Foundation, Inc.
 #   Written by Gordon Matzigkeit, 1996  #   Written by Gordon Matzigkeit, 1996
 #  #
 #   This file is part of GNU Libtool.  #   This file is part of GNU Libtool.
Line 39  available_tags="" Line 40  available_tags=""
 # ### BEGIN LIBTOOL CONFIG  # ### BEGIN LIBTOOL CONFIG
   
 # Whether or not to build shared libraries.  # Whether or not to build shared libraries.
build_libtool_libs=yesbuild_libtool_libs=no
   
 # Which release of libtool.m4 was used?  # Which release of libtool.m4 was used?
macro_version=2.2.6bmacro_version=2.4.2
macro_revision=1.3017macro_revision=1.3337
   
 # Whether or not to build static libraries.  # Whether or not to build static libraries.
 build_old_libs=yes  build_old_libs=yes
Line 54  pic_mode=default Line 55  pic_mode=default
 # Whether or not to optimize for fast installation.  # Whether or not to optimize for fast installation.
 fast_install=needless  fast_install=needless
   
   # Shell to use when invoking shell scripts.
   SHELL="/bin/sh"
   
   # An echo program that protects backslashes.
   ECHO="printf %s\\n"
   
   # The PATH separator for the build system.
   PATH_SEPARATOR=":"
   
 # The host system.  # The host system.
 host_alias=  host_alias=
host=i386-elwix-freebsdhost=i386-unknown-freebsd11.0
host_os=freebsdhost_os=freebsd11.0
   
 # The build system.  # The build system.
build_alias=i386-elwix-freebsdbuild_alias=
build=i386-elwix-freebsdbuild=i386-unknown-freebsd11.0
build_os=freebsdbuild_os=freebsd11.0
   
 # A sed program that does not truncate output.  # A sed program that does not truncate output.
 SED="/usr/bin/sed"  SED="/usr/bin/sed"
Line 80  EGREP="/usr/bin/grep -E" Line 90  EGREP="/usr/bin/grep -E"
 FGREP="/usr/bin/grep -F"  FGREP="/usr/bin/grep -F"
   
 # A BSD- or MS-compatible name lister.  # A BSD- or MS-compatible name lister.
NM="nm"NM="/usr/bin/nm -B"
   
 # Whether we need soft or hard links.  # Whether we need soft or hard links.
 LN_S="ln -s"  LN_S="ln -s"
Line 103  SP2NL="tr \\040 \\012" Line 113  SP2NL="tr \\040 \\012"
 # turn newlines into spaces.  # turn newlines into spaces.
 NL2SP="tr \\015\\012 \\040\\040"  NL2SP="tr \\015\\012 \\040\\040"
   
# How to create reloadable object files.# convert $build file names to $host format.
reload_flag=" -r"to_host_file_cmd=func_convert_file_noop
reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" 
   
   # convert $build files to toolchain format.
   to_tool_file_cmd=func_convert_file_noop
   
 # An object symbol dumper.  # An object symbol dumper.
 OBJDUMP="objdump"  OBJDUMP="objdump"
   
 # Method to check whether dependent libraries are shared objects.  # Method to check whether dependent libraries are shared objects.
 deplibs_check_method="pass_all"  deplibs_check_method="pass_all"
   
# Command to use when deplibs_check_method == "file_magic".# Command to use when deplibs_check_method = "file_magic".
 file_magic_cmd="\$MAGIC_CMD"  file_magic_cmd="\$MAGIC_CMD"
   
   # How to find potential files when deplibs_check_method = "file_magic".
   file_magic_glob=""
   
   # Find potential files using nocaseglob when deplibs_check_method = "file_magic".
   want_nocaseglob="no"
   
   # DLL creation program.
   DLLTOOL="false"
   
   # Command to associate shared and link libraries.
   sharedlib_from_linklib_cmd="printf %s\\n"
   
 # The archiver.  # The archiver.
 AR="ar"  AR="ar"
   
   # Flags to create an archive.
 AR_FLAGS="cru"  AR_FLAGS="cru"
   
   # How to feed a file listing to the archiver.
   archiver_list_spec=""
   
 # A symbol stripping program.  # A symbol stripping program.
 STRIP="strip"  STRIP="strip"
   
 # Commands used to install an old-style archive.  # Commands used to install an old-style archive.
 RANLIB="ranlib"  RANLIB="ranlib"
old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$oldlib"old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$tool_oldlib"
 old_postuninstall_cmds=""  old_postuninstall_cmds=""
   
   # Whether to use a lock for old archive extraction.
   lock_old_archive_extraction=no
   
 # A C compiler.  # A C compiler.
LTCC="cc "LTCC="cc"
   
 # LTCC compiler flags.  # LTCC compiler flags.
 LTCFLAGS="-g -O2  -Wall -Werror -Wno-unused"  LTCFLAGS="-g -O2  -Wall -Werror -Wno-unused"
   
 # Take the output of nm and produce a listing of raw symbols and C names.  # Take the output of nm and produce a listing of raw symbols and C names.
global_symbol_pipe="sed -n -e 's/^.*[    ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[       ][      ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'"global_symbol_pipe="sed -n -e 's/^.*[    ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[       ][      ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p' | sed '/ __gnu_lto/d'"
   
 # Transform the output of nm in a proper C declaration.  # Transform the output of nm in a proper C declaration.
 global_symbol_to_cdecl="sed -n -e 's/^T .* \\(.*\\)\$/extern int \\1();/p' -e 's/^[ABCDGIRSTW]* .* \\(.*\\)\$/extern char \\1;/p'"  global_symbol_to_cdecl="sed -n -e 's/^T .* \\(.*\\)\$/extern int \\1();/p' -e 's/^[ABCDGIRSTW]* .* \\(.*\\)\$/extern char \\1;/p'"
   
 # Transform the output of nm in a C name address pair.  # Transform the output of nm in a C name address pair.
global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/  {\\\"\\1\\\", (void *) 0},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\([^ ]*\\)\$/  {\"\\2\", (void *) \\&\\2},/p'"global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\)[ ]*\$/  {\\\"\\1\\\", (void *) 0},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\([^ ]*\\)\$/  {\"\\2\", (void *) \\&\\2},/p'"
   
 # Transform the output of nm in a C name address pair when lib prefix is needed.  # Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \\([^ ]*\\) \$/  {\\\"\\1\\\", (void *) 0},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\(lib[^ ]*\\)\$/  {\"\\2\", (void *) \\&\\2},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\([^ ]*\\)\$/  {\"lib\\2\", (void *) \\&\\2},/p'"global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \\([^ ]*\\)[ ]*\$/  {\\\"\\1\\\", (void *) 0},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\(lib[^ ]*\\)\$/  {\"\\2\", (void *) \\&\\2},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\([^ ]*\\)\$/  {\"lib\\2\", (void *) \\&\\2},/p'"
   
   # Specify filename containing input files for $NM.
   nm_file_list_spec="@"
   
   # The root where to search for dependent libraries,and in which our libraries should be installed.
   lt_sysroot=
   
 # The name of the directory that contains temporary libtool files.  # The name of the directory that contains temporary libtool files.
 objdir=.libs  objdir=.libs
   
 # Shell to use when invoking shell scripts.  
 SHELL="/bin/sh"  
   
 # An echo program that does not interpret backslashes.  
 ECHO="echo"  
   
 # Used to examine libraries when file_magic_cmd begins with "file".  # Used to examine libraries when file_magic_cmd begins with "file".
 MAGIC_CMD=file  MAGIC_CMD=file
   
 # Must we lock files when doing compilation?  # Must we lock files when doing compilation?
 need_locks="no"  need_locks="no"
   
   # Manifest tool.
   MANIFEST_TOOL=":"
   
 # Tool to manipulate archived DWARF debug symbol files on Mac OS X.  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
 DSYMUTIL=""  DSYMUTIL=""
   
Line 217  library_names_spec="\${libname}\${release}\${shared_ex Line 252  library_names_spec="\${libname}\${release}\${shared_ex
 # The coded name of the library, if different from the real name.  # The coded name of the library, if different from the real name.
 soname_spec=""  soname_spec=""
   
   # Permission mode override for installation of shared libraries.
   install_override_mode=""
   
 # Command to use after installation of a shared archive.  # Command to use after installation of a shared archive.
 postinstall_cmds=""  postinstall_cmds=""
   
Line 234  finish_eval="" Line 272  finish_eval=""
 hardcode_into_libs=yes  hardcode_into_libs=yes
   
 # Compile-time system search path for libraries.  # Compile-time system search path for libraries.
sys_lib_search_path_spec="/home/misho/work/elwix/build/1.9/obj/i386/home/fbsd_work.src/src/tmp/usr/lib"sys_lib_search_path_spec="/usr/lib "
   
 # Run-time system search path for libraries.  # Run-time system search path for libraries.
 sys_lib_dlsearch_path_spec="/lib /usr/lib"  sys_lib_dlsearch_path_spec="/lib /usr/lib"
Line 254  striplib="strip --strip-unneeded" Line 292  striplib="strip --strip-unneeded"
   
   
 # The linker used to build libraries.  # The linker used to build libraries.
LD="ld"LD="/usr/bin/ld"
   
   # How to create reloadable object files.
   reload_flag=" -r"
   reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs"
   
 # Commands used to build an old-style archive.  # Commands used to build an old-style archive.
old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$oldlib"old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$tool_oldlib"
   
 # A language specific compiler.  # A language specific compiler.
CC="cc "CC="cc"
   
 # Is the compiler the GNU compiler?  # Is the compiler the GNU compiler?
 with_gcc=yes  with_gcc=yes
Line 268  with_gcc=yes Line 310  with_gcc=yes
 # Compiler flag to turn off builtin functions.  # Compiler flag to turn off builtin functions.
 no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions"  no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions"
   
 # How to pass a linker flag through the compiler.  
 wl="-Wl,"  
   
 # Additional compiler flags for building library objects.  # Additional compiler flags for building library objects.
 pic_flag=" -fPIC -DPIC"  pic_flag=" -fPIC -DPIC"
   
   # How to pass a linker flag through the compiler.
   wl="-Wl,"
   
 # Compiler flag to prevent dynamic linking.  # Compiler flag to prevent dynamic linking.
 link_static_flag="-static"  link_static_flag="-static"
   
Line 281  link_static_flag="-static" Line 323  link_static_flag="-static"
 compiler_c_o="yes"  compiler_c_o="yes"
   
 # Whether or not to add -lc for building shared libraries.  # Whether or not to add -lc for building shared libraries.
build_libtool_need_lc=nobuild_libtool_need_lc=yes
   
 # Whether or not to disallow shared libs when runtime libs are static.  # Whether or not to disallow shared libs when runtime libs are static.
 allow_libtool_libs_with_static_runtimes=no  allow_libtool_libs_with_static_runtimes=no
Line 302  old_archive_from_new_cmds="" Line 344  old_archive_from_new_cmds=""
 old_archive_from_expsyms_cmds=""  old_archive_from_expsyms_cmds=""
   
 # Commands used to build a shared archive.  # Commands used to build a shared archive.
archive_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib"archive_cmds="\$CC -shared \$pic_flag \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib"
archive_expsym_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib"archive_expsym_cmds="\$CC -shared \$pic_flag \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib"
   
 # Commands used to build a loadable module if different from building  # Commands used to build a loadable module if different from building
 # a shared archive.  # a shared archive.
Line 323  no_undefined_flag="" Line 365  no_undefined_flag=""
 # This must work even if $libdir does not exist  # This must work even if $libdir does not exist
 hardcode_libdir_flag_spec="\${wl}-rpath \${wl}\$libdir"  hardcode_libdir_flag_spec="\${wl}-rpath \${wl}\$libdir"
   
 # If ld is used when linking, flag to hardcode $libdir into a binary  
 # during linking.  This must work even if $libdir does not exist.  
 hardcode_libdir_flag_spec_ld=""  
   
 # Whether we need a single "-rpath" flag with a separated argument.  # Whether we need a single "-rpath" flag with a separated argument.
 hardcode_libdir_separator=""  hardcode_libdir_separator=""
   
Line 360  inherit_rpath=no Line 398  inherit_rpath=no
 # Whether libtool must link a program against all its dependency libraries.  # Whether libtool must link a program against all its dependency libraries.
 link_all_deplibs=unknown  link_all_deplibs=unknown
   
 # Fix the shell variable $srcfile for the compiler.  
 fix_srcfile_path=""  
   
 # Set to "yes" if exported symbols are required.  # Set to "yes" if exported symbols are required.
 always_export_symbols=no  always_export_symbols=no
   
Line 378  include_expsyms="" Line 413  include_expsyms=""
 # Commands necessary for linking programs (against libraries) with templates.  # Commands necessary for linking programs (against libraries) with templates.
 prelink_cmds=""  prelink_cmds=""
   
   # Commands necessary for finishing linking programs.
   postlink_cmds=""
   
 # Specify filename containing input files.  # Specify filename containing input files.
 file_list_spec=""  file_list_spec=""
   
Line 386  hardcode_action=immediate Line 424  hardcode_action=immediate
   
 # ### END LIBTOOL CONFIG  # ### END LIBTOOL CONFIG
   
 # Generated from ltmain.m4sh.  
   
# ltmain.sh (GNU libtool) 2.2.6b# libtool (GNU libtool) 2.4.2
 # Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996  # Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
   
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007 2008 Free Software Foundation, Inc.# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
 # 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
 # This is free software; see the source for copying conditions.  There is NO  # This is free software; see the source for copying conditions.  There is NO
 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
   
Line 420  hardcode_action=immediate Line 458  hardcode_action=immediate
 #  #
 # Provide generalized library-building support services.  # Provide generalized library-building support services.
 #  #
#     --config             show all configuration variables#       --config             show all configuration variables
#     --debug              enable verbose shell tracing#       --debug              enable verbose shell tracing
-n, --dry-run            display commands without modifying any files#   -n, --dry-run            display commands without modifying any files
#     --features           display basic configuration information and exit#       --features           display basic configuration information and exit
#     --mode=MODE          use operation mode MODE#       --mode=MODE          use operation mode MODE
#     --preserve-dup-deps  don't remove duplicate dependency libraries#       --preserve-dup-deps  don't remove duplicate dependency libraries
#     --quiet, --silent    don't print informational messages#       --quiet, --silent    don't print informational messages
#     --tag=TAG            use configuration variables from tag TAG#       --no-quiet, --no-silent
-v, --verbose            print informational messages (default)#                            print informational messages (default)
#     --version            print version information#       --no-warn            don't display warning messages
-h, --help               print short or long help message#       --tag=TAG            use configuration variables from tag TAG
 #   -v, --verbose            print more informational messages than default
 #       --no-verbose         don't print the extra informational messages
 #       --version            print version information
 #   -h, --help, --help-all   print short, long, or detailed help message
 #  #
 # MODE must be one of the following:  # MODE must be one of the following:
 #  #
#       clean              remove files from the build directory#         clean              remove files from the build directory
#       compile            compile a source file into a libtool object#         compile            compile a source file into a libtool object
#       execute            automatically set library path, then run a program#         execute            automatically set library path, then run a program
#       finish             complete the installation of libtool libraries#         finish             complete the installation of libtool libraries
#       install            install libraries or executables#         install            install libraries or executables
#       link               create a library or an executable#         link               create a library or an executable
#       uninstall          remove libraries from an installed directory #
 #  #
# MODE-ARGS vary depending on the MODE.# MODE-ARGS vary depending on the MODE.  When passed as first option,
 # `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that.
 # Try `$progname --help --mode=MODE' for a more detailed description of MODE.  # Try `$progname --help --mode=MODE' for a more detailed description of MODE.
 #  #
 # When reporting a bug, please describe a test case to reproduce it and  # When reporting a bug, please describe a test case to reproduce it and
 # include the following information:  # include the following information:
 #  #
#       host-triplet:    $host#         host-triplet: $host
#       shell:          $SHELL#         shell:                $SHELL
#       compiler:               $LTCC#         compiler:             $LTCC
#       compiler flags:         $LTCFLAGS#         compiler flags:               $LTCFLAGS
#       linker:         $LD (gnu? $with_gnu_ld)#         linker:               $LD (gnu? $with_gnu_ld)
#       $progname:              (GNU libtool) 2.2.6b Debian-2.2.6b-2ubuntu1#         $progname:    (GNU libtool) 2.4.2
#       automake:                $automake_version#         automake:     $automake_version
#       autoconf:               $autoconf_version#         autoconf:  $autoconf_version
 #  #
 # Report bugs to <bug-libtool@gnu.org>.  # Report bugs to <bug-libtool@gnu.org>.
   # GNU libtool home page: <http://www.gnu.org/software/libtool/>.
   # General help using GNU software: <http://www.gnu.org/gethelp/>.
   
PROGRAM=ltmain.shPROGRAM=libtool
 PACKAGE=libtool  PACKAGE=libtool
VERSION="2.2.6b Debian-2.2.6b-2ubuntu1"VERSION=2.4.2
 TIMESTAMP=""  TIMESTAMP=""
package_revision=1.3017package_revision=1.3337
   
 # Be Bourne compatible  # Be Bourne compatible
 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then  if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
Line 479  fi Line 524  fi
 BIN_SH=xpg4; export BIN_SH # for Tru64  BIN_SH=xpg4; export BIN_SH # for Tru64
 DUALCASE=1; export DUALCASE # for MKS sh  DUALCASE=1; export DUALCASE # for MKS sh
   
   # A function that is used when there is no print builtin or printf.
   func_fallback_echo ()
   {
     eval 'cat <<_LTECHO_EOF
   $1
   _LTECHO_EOF'
   }
   
 # NLS nuisances: We save the old values to restore during execute mode.  # NLS nuisances: We save the old values to restore during execute mode.
 # Only set LANG and LC_ALL to C if already set.  
 # These must not be set unconditionally because not all systems understand  
 # e.g. LANG=C (notably SCO).  
 lt_user_locale=  lt_user_locale=
 lt_safe_locale=  lt_safe_locale=
 for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES  for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
Line 495  do Line 545  do
           lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"            lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
         fi"          fi"
 done  done
   LC_ALL=C
   LANGUAGE=C
   export LANGUAGE LC_ALL
   
 $lt_unset CDPATH  $lt_unset CDPATH
   
   
   # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
   # is ksh but when the shell is invoked as "sh" and the current value of
   # the _XPG environment variable is not equal to 1 (one), the special
   # positional parameter $0, within a function call, is the name of the
   # function.
   progpath="$0"
   
   
   
 : ${CP="cp -f"}  : ${CP="cp -f"}
: ${ECHO="echo"}test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'}
: ${EGREP="/bin/grep -E"} 
: ${FGREP="/bin/grep -F"} 
: ${GREP="/bin/grep"} 
: ${LN_S="ln -s"} 
 : ${MAKE="make"}  : ${MAKE="make"}
 : ${MKDIR="mkdir"}  : ${MKDIR="mkdir"}
 : ${MV="mv -f"}  : ${MV="mv -f"}
 : ${RM="rm -f"}  : ${RM="rm -f"}
 : ${SED="/bin/sed"}  
 : ${SHELL="${CONFIG_SHELL-/bin/sh}"}  : ${SHELL="${CONFIG_SHELL-/bin/sh}"}
 : ${Xsed="$SED -e 1s/^X//"}  : ${Xsed="$SED -e 1s/^X//"}
   
Line 532  IFS="  $lt_nl" Line 586  IFS="  $lt_nl"
 dirname="s,/[^/]*$,,"  dirname="s,/[^/]*$,,"
 basename="s,^.*/,,"  basename="s,^.*/,,"
   
 # func_dirname_and_basename file append nondir_replacement  
 # perform func_basename and func_dirname in a single function  
 # call:  
 #   dirname:  Compute the dirname of FILE.  If nonempty,  
 #             add APPEND to the result, otherwise set result  
 #             to NONDIR_REPLACEMENT.  
 #             value returned in "$func_dirname_result"  
 #   basename: Compute filename of FILE.  
 #             value retuned in "$func_basename_result"  
 # Implementation must be kept synchronized with func_dirname  
 # and func_basename. For efficiency, we do not delegate to  
 # those functions but instead duplicate the functionality here.  
 func_dirname_and_basename ()  
 {  
   # Extract subdirectory from the argument.  
   func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`  
   if test "X$func_dirname_result" = "X${1}"; then  
     func_dirname_result="${3}"  
   else  
     func_dirname_result="$func_dirname_result${2}"  
   fi  
   func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`  
 }  
   
 # Generated shell functions inserted here.  
   
 # func_dirname file append nondir_replacement  # func_dirname file append nondir_replacement
 # Compute the dirname of FILE.  If nonempty, add APPEND to the result,  # Compute the dirname of FILE.  If nonempty, add APPEND to the result,
 # otherwise set result to NONDIR_REPLACEMENT.  # otherwise set result to NONDIR_REPLACEMENT.
 func_dirname ()  func_dirname ()
 {  {
  case ${1} in    case ${1} in
    */*) func_dirname_result="${1%/*}${2}" ;;      */*) func_dirname_result="${1%/*}${2}" ;;
    *  ) func_dirname_result="${3}" ;;      *  ) func_dirname_result="${3}" ;;
  esac    esac
}# Extended-shell func_dirname implementation
   
   
 # func_basename file  # func_basename file
 func_basename ()  func_basename ()
 {  {
  func_basename_result="${1##*/}"    func_basename_result="${1##*/}"
}# Extended-shell func_basename implementation
   
   
 # func_dirname_and_basename file append nondir_replacement  # func_dirname_and_basename file append nondir_replacement
 # perform func_basename and func_dirname in a single function  # perform func_basename and func_dirname in a single function
 # call:  # call:
Line 589  func_basename () Line 619  func_basename ()
 # those functions but instead duplicate the functionality here.  # those functions but instead duplicate the functionality here.
 func_dirname_and_basename ()  func_dirname_and_basename ()
 {  {
  case ${1} in    case ${1} in
    */*) func_dirname_result="${1%/*}${2}" ;;      */*) func_dirname_result="${1%/*}${2}" ;;
    *  ) func_dirname_result="${3}" ;;      *  ) func_dirname_result="${3}" ;;
  esac    esac
  func_basename_result="${1##*/}"    func_basename_result="${1##*/}"
}# Extended-shell func_dirname_and_basename implementation
   
   
 # func_stripname prefix suffix name  # func_stripname prefix suffix name
 # strip PREFIX and SUFFIX off of NAME.  # strip PREFIX and SUFFIX off of NAME.
 # PREFIX and SUFFIX must not contain globbing or regex special  # PREFIX and SUFFIX must not contain globbing or regex special
 # characters, hashes, percent signs, but SUFFIX may contain a leading  # characters, hashes, percent signs, but SUFFIX may contain a leading
 # dot (in which case that matches only a dot).  # dot (in which case that matches only a dot).
   # func_strip_suffix prefix name
 func_stripname ()  func_stripname ()
 {  {
  # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
  # positional parameters, so assign one to ordinary parameter first.    # positional parameters, so assign one to ordinary parameter first.
  func_stripname_result=${3}    func_stripname_result=${3}
  func_stripname_result=${func_stripname_result#"${1}"}    func_stripname_result=${func_stripname_result#"${1}"}
  func_stripname_result=${func_stripname_result%"${2}"}    func_stripname_result=${func_stripname_result%"${2}"}
}# Extended-shell func_stripname implementation
   
 # func_opt_split  
 func_opt_split ()  
 {  
   func_opt_split_opt=${1%%=*}  
   func_opt_split_arg=${1#*=}  
 }  
   
# func_lo2o object# These SED scripts presuppose an absolute path with a trailing slash.
func_lo2o ()pathcar='s,^/\([^/]*\).*$,\1,'
 pathcdr='s,^/[^/]*,,'
 removedotparts=':dotsl
                 s@/\./@/@g
                 t dotsl
                 s,/\.$,/,'
 collapseslashes='s@/\{1,\}@/@g'
 finalslash='s,/*$,/,'
 
 # func_normal_abspath PATH
 # Remove doubled-up and trailing slashes, "." path components,
 # and cancel out any ".." path components in PATH after making
 # it an absolute path.
 #             value returned in "$func_normal_abspath_result"
 func_normal_abspath ()
 {  {
  case ${1} in  # Start from root dir and reassemble the path.
    *.lo) func_lo2o_result=${1%.lo}.${objext} ;;  func_normal_abspath_result=
    *)    func_lo2o_result=${1} ;;  func_normal_abspath_tpath=$1
   func_normal_abspath_altnamespace=
   case $func_normal_abspath_tpath in
     "")
       # Empty path, that just means $cwd.
       func_stripname '' '/' "`pwd`"
       func_normal_abspath_result=$func_stripname_result
       return
     ;;
     # The next three entries are used to spot a run of precisely
     # two leading slashes without using negated character classes;
     # we take advantage of case's first-match behaviour.
     ///*)
       # Unusual form of absolute path, do nothing.
     ;;
     //*)
       # Not necessarily an ordinary path; POSIX reserves leading '//'
       # and for example Cygwin uses it to access remote file shares
       # over CIFS/SMB, so we conserve a leading double slash if found.
       func_normal_abspath_altnamespace=/
     ;;
     /*)
       # Absolute path, do nothing.
     ;;
     *)
       # Relative path, prepend $cwd.
       func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath
     ;;
   esac    esac
     # Cancel out all the simple stuff to save iterations.  We also want
     # the path to end with a slash for ease of parsing, so make sure
     # there is one (and only one) here.
     func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
           -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"`
     while :; do
       # Processed it all yet?
       if test "$func_normal_abspath_tpath" = / ; then
         # If we ascended to the root using ".." the result may be empty now.
         if test -z "$func_normal_abspath_result" ; then
           func_normal_abspath_result=/
         fi
         break
       fi
       func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \
           -e "$pathcar"`
       func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
           -e "$pathcdr"`
       # Figure out what to do with it
       case $func_normal_abspath_tcomponent in
         "")
           # Trailing empty path component, ignore it.
         ;;
         ..)
           # Parent dir; strip last assembled component from result.
           func_dirname "$func_normal_abspath_result"
           func_normal_abspath_result=$func_dirname_result
         ;;
         *)
           # Actual path component, append it.
           func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent
         ;;
       esac
     done
     # Restore leading double-slash if one was found on entry.
     func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result
 }  }
   
# func_xform libobj-or-source# func_relative_path SRCDIR DSTDIR
func_xform ()# generates a relative path from SRCDIR to DSTDIR, with a trailing
 # slash if non-empty, suitable for immediately appending a filename
 # without needing to append a separator.
 #             value returned in "$func_relative_path_result"
 func_relative_path ()
 {  {
  func_xform_result=${1%.*}.lo  func_relative_path_result=
}  func_normal_abspath "$1"
   func_relative_path_tlibdir=$func_normal_abspath_result
   func_normal_abspath "$2"
   func_relative_path_tbindir=$func_normal_abspath_result
   
# func_arith arithmetic-term...  # Ascend the tree starting from libdir
func_arith ()  while :; do
{    # check if we have found a prefix of bindir
  func_arith_result=$(( $* ))    case $func_relative_path_tbindir in
}      $func_relative_path_tlibdir)
         # found an exact match
         func_relative_path_tcancelled=
         break
         ;;
       $func_relative_path_tlibdir*)
         # found a matching prefix
         func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir"
         func_relative_path_tcancelled=$func_stripname_result
         if test -z "$func_relative_path_result"; then
           func_relative_path_result=.
         fi
         break
         ;;
       *)
         func_dirname $func_relative_path_tlibdir
         func_relative_path_tlibdir=${func_dirname_result}
         if test "x$func_relative_path_tlibdir" = x ; then
           # Have to descend all the way to the root!
           func_relative_path_result=../$func_relative_path_result
           func_relative_path_tcancelled=$func_relative_path_tbindir
           break
         fi
         func_relative_path_result=../$func_relative_path_result
         ;;
     esac
   done
   
# func_len string  # Now calculate path; take care to avoid doubling-up slashes.
# STRING may not start with a hyphen.  func_stripname '' '/' "$func_relative_path_result"
func_len ()  func_relative_path_result=$func_stripname_result
{  func_stripname '/' '/' "$func_relative_path_tcancelled"
  func_len_result=${#1}  if test "x$func_stripname_result" != x ; then
}    func_relative_path_result=${func_relative_path_result}/${func_stripname_result}
   fi
   
  # Normalisation. If bindir is libdir, return empty string,
# func_append var value  # else relative path ending with a slash; either way, target
# Append VALUE to the end of shell variable VAR.  # file name can be directly appended.
func_append ()  if test ! -z "$func_relative_path_result"; then
{    func_stripname './' '' "$func_relative_path_result/"
  eval "$1=\$$1\$2"    func_relative_path_result=$func_stripname_result
   fi
 }  }
   
 # Generated shell functions inserted here.  
   
 # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh  
 # is ksh but when the shell is invoked as "sh" and the current value of  
 # the _XPG environment variable is not equal to 1 (one), the special  
 # positional parameter $0, within a function call, is the name of the  
 # function.  
 progpath="$0"  
   
 # The name of this program:  # The name of this program:
 # In the unlikely event $progname began with a '-', it would play havoc with  
 # func_echo (imagine progname=-n), so we prepend ./ in that case:  
 func_dirname_and_basename "$progpath"  func_dirname_and_basename "$progpath"
 progname=$func_basename_result  progname=$func_basename_result
 case $progname in  
   -*) progname=./$progname ;;  
 esac  
   
 # Make sure we have an absolute path for reexecution:  # Make sure we have an absolute path for reexecution:
 case $progpath in  case $progpath in
Line 681  case $progpath in Line 805  case $progpath in
      ;;       ;;
   *)    *)
      save_IFS="$IFS"       save_IFS="$IFS"
     IFS=:     IFS=${PATH_SEPARATOR-:}
      for progdir in $PATH; do       for progdir in $PATH; do
        IFS="$save_IFS"         IFS="$save_IFS"
        test -x "$progdir/$progname" && break         test -x "$progdir/$progname" && break
Line 700  sed_quote_subst='s/\([`"$\\]\)/\\\1/g' Line 824  sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
 # Same as above, but do not quote variable references.  # Same as above, but do not quote variable references.
 double_quote_subst='s/\(["`\\]\)/\\\1/g'  double_quote_subst='s/\(["`\\]\)/\\\1/g'
   
   # Sed substitution that turns a string into a regex matching for the
   # string literally.
   sed_make_literal_regex='s,[].[^$\\*\/],\\&,g'
   
   # Sed substitution that converts a w32 file name or path
   # which contains forward slashes, into one that contains
   # (escaped) backslashes.  A very naive implementation.
   lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
   
 # Re-`\' parameter expansions in output of double_quote_subst that were  # Re-`\' parameter expansions in output of double_quote_subst that were
 # `\'-ed in input to the same.  If an odd number of `\' preceded a '$'  # `\'-ed in input to the same.  If an odd number of `\' preceded a '$'
 # in input to double_quote_subst, that '$' was protected from expansion.  # in input to double_quote_subst, that '$' was protected from expansion.
Line 728  opt_warning=: Line 861  opt_warning=:
 # name if it has been set yet.  # name if it has been set yet.
 func_echo ()  func_echo ()
 {  {
    $ECHO "$progname${mode+: }$mode: $*"    $ECHO "$progname: ${opt_mode+$opt_mode: }$*"
 }  }
   
 # func_verbose arg...  # func_verbose arg...
Line 743  func_verbose () Line 876  func_verbose ()
     :      :
 }  }
   
   # func_echo_all arg...
   # Invoke $ECHO with all args, space-separated.
   func_echo_all ()
   {
       $ECHO "$*"
   }
   
 # func_error arg...  # func_error arg...
 # Echo program name prefixed message to standard error.  # Echo program name prefixed message to standard error.
 func_error ()  func_error ()
 {  {
    $ECHO "$progname${mode+: }$mode: "${1+"$@"} 1>&2    $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2
 }  }
   
 # func_warning arg...  # func_warning arg...
 # Echo program name prefixed warning message to standard error.  # Echo program name prefixed warning message to standard error.
 func_warning ()  func_warning ()
 {  {
    $opt_warning && $ECHO "$progname${mode+: }$mode: warning: "${1+"$@"} 1>&2    $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2
   
     # bash bug again:      # bash bug again:
     :      :
Line 811  func_mkdir_p () Line 951  func_mkdir_p ()
         case $my_directory_path in */*) ;; *) break ;; esac          case $my_directory_path in */*) ;; *) break ;; esac
   
         # ...otherwise throw away the child directory and loop          # ...otherwise throw away the child directory and loop
        my_directory_path=`$ECHO "X$my_directory_path" | $Xsed -e "$dirname"`        my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"`
       done        done
      my_dir_list=`$ECHO "X$my_dir_list" | $Xsed -e 's,:*$,,'`      my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'`
   
       save_mkdir_p_IFS="$IFS"; IFS=':'        save_mkdir_p_IFS="$IFS"; IFS=':'
       for my_dir in $my_dir_list; do        for my_dir in $my_dir_list; do
Line 863  func_mktempdir () Line 1003  func_mktempdir ()
         func_fatal_error "cannot create temporary directory \`$my_tmpdir'"          func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
     fi      fi
   
    $ECHO "X$my_tmpdir" | $Xsed    $ECHO "$my_tmpdir"
 }  }
   
   
Line 877  func_quote_for_eval () Line 1017  func_quote_for_eval ()
 {  {
     case $1 in      case $1 in
       *[\\\`\"\$]*)        *[\\\`\"\$]*)
        func_quote_for_eval_unquoted_result=`$ECHO "X$1" | $Xsed -e "$sed_quote_subst"` ;;        func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;;
       *)        *)
         func_quote_for_eval_unquoted_result="$1" ;;          func_quote_for_eval_unquoted_result="$1" ;;
     esac      esac
Line 904  func_quote_for_expand () Line 1044  func_quote_for_expand ()
 {  {
     case $1 in      case $1 in
       *[\\\`\"]*)        *[\\\`\"]*)
        my_arg=`$ECHO "X$1" | $Xsed \        my_arg=`$ECHO "$1" | $SED \
             -e "$double_quote_subst" -e "$sed_double_backslash"` ;;              -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
       *)        *)
         my_arg="$1" ;;          my_arg="$1" ;;
Line 973  func_show_eval_locale () Line 1113  func_show_eval_locale ()
     fi      fi
 }  }
   
   # func_tr_sh
   # Turn $1 into a string suitable for a shell variable name.
   # Result is stored in $func_tr_sh_result.  All characters
   # not in the set a-zA-Z0-9_ are replaced with '_'. Further,
   # if $1 begins with a digit, a '_' is prepended as well.
   func_tr_sh ()
   {
     case $1 in
     [0-9]* | *[!a-zA-Z0-9_]*)
       func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'`
       ;;
     * )
       func_tr_sh_result=$1
       ;;
     esac
   }
   
   
   
   
 # func_version  # func_version
 # Echo version message to standard output and exit.  # Echo version message to standard output and exit.
 func_version ()  func_version ()
 {  {
    $SED -n '/^# '$PROGRAM' (GNU /,/# warranty; / {    $opt_debug
 
     $SED -n '/(C)/!b go
         :more
         /\./!{
           N
           s/\n# / /
           b more
         }
         :go
         /^# '$PROGRAM' (GNU /,/# warranty; / {
         s/^# //          s/^# //
         s/^# *$//          s/^# *$//
         s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/          s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
Line 994  func_version () Line 1158  func_version ()
 # Echo short help message to standard output and exit.  # Echo short help message to standard output and exit.
 func_usage ()  func_usage ()
 {  {
    $SED -n '/^# Usage:/,/# -h/ {    $opt_debug
 
     $SED -n '/^# Usage:/,/^#  *.*--help/ {
         s/^# //          s/^# //
         s/^# *$//          s/^# *$//
         s/\$progname/'$progname'/          s/\$progname/'$progname'/
         p          p
     }' < "$progpath"      }' < "$progpath"
    $ECHO    echo
     $ECHO "run \`$progname --help | more' for full usage"      $ECHO "run \`$progname --help | more' for full usage"
     exit $?      exit $?
 }  }
   
# func_help# func_help [NOEXIT]
# Echo long help message to standard output and exit.# Echo long help message to standard output and exit,
 # unless 'noexit' is passed as argument.
 func_help ()  func_help ()
 {  {
       $opt_debug
   
     $SED -n '/^# Usage:/,/# Report bugs to/ {      $SED -n '/^# Usage:/,/# Report bugs to/ {
           :print
         s/^# //          s/^# //
         s/^# *$//          s/^# *$//
         s*\$progname*'$progname'*          s*\$progname*'$progname'*
Line 1019  func_help () Line 1189  func_help ()
         s*\$LTCFLAGS*'"$LTCFLAGS"'*          s*\$LTCFLAGS*'"$LTCFLAGS"'*
         s*\$LD*'"$LD"'*          s*\$LD*'"$LD"'*
         s/\$with_gnu_ld/'"$with_gnu_ld"'/          s/\$with_gnu_ld/'"$with_gnu_ld"'/
        s/\$automake_version/'"`(automake --version) 2>/dev/null |$SED 1q`"'/        s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/
        s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"'/        s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/
         p          p
     }' < "$progpath"        d
    exit $?     }
      /^# .* home page:/b print
      /^# General help using/b print
      ' < "$progpath"
     ret=$?
     if test -z "$1"; then
       exit $ret
     fi
 }  }
   
 # func_missing_arg argname  # func_missing_arg argname
Line 1031  func_help () Line 1208  func_help ()
 # exit_cmd.  # exit_cmd.
 func_missing_arg ()  func_missing_arg ()
 {  {
    func_error "missing argument for $1"    $opt_debug
 
     func_error "missing argument for $1."
     exit_cmd=exit      exit_cmd=exit
 }  }
   
 exit_cmd=:  
   
   # func_split_short_opt shortopt
   # Set func_split_short_opt_name and func_split_short_opt_arg shell
   # variables after splitting SHORTOPT after the 2nd character.
   func_split_short_opt ()
   {
       func_split_short_opt_arg=${1#??}
       func_split_short_opt_name=${1%"$func_split_short_opt_arg"}
   } # Extended-shell func_split_short_opt implementation
   
   
   # func_split_long_opt longopt
   # Set func_split_long_opt_name and func_split_long_opt_arg shell
   # variables after splitting LONGOPT at the `=' sign.
   func_split_long_opt ()
   {
       func_split_long_opt_name=${1%%=*}
       func_split_long_opt_arg=${1#*=}
   } # Extended-shell func_split_long_opt implementation
   
   exit_cmd=:
   
 # Check that we have a working $ECHO.  
 if test "X$1" = X--no-reexec; then  
   # Discard the --no-reexec flag, and continue.  
   shift  
 elif test "X$1" = X--fallback-echo; then  
   # Avoid inline document here, it may be left over  
   :  
 elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then  
   # Yippee, $ECHO works!  
   :  
 else  
   # Restart under the correct shell, and then maybe $ECHO will work.  
   exec $SHELL "$progpath" --no-reexec ${1+"$@"}  
 fi  
   
 if test "X$1" = X--fallback-echo; then  
   # used as fallback echo  
   shift  
   cat <<EOF  
 $*  
 EOF  
   exit $EXIT_SUCCESS  
 fi  
   
   
   
 magic="%%%MAGIC variable%%%"  magic="%%%MAGIC variable%%%"
 magic_exe="%%%MAGIC EXE variable%%%"  magic_exe="%%%MAGIC EXE variable%%%"
   
 # Global variables.  # Global variables.
 # $mode is unset  
 nonopt=  nonopt=
 execute_dlfiles=  
 preserve_args=  preserve_args=
 lo2o="s/\\.lo\$/.${objext}/"  lo2o="s/\\.lo\$/.${objext}/"
 o2lo="s/\\.${objext}\$/.lo/"  o2lo="s/\\.${objext}\$/.lo/"
 extracted_archives=  extracted_archives=
 extracted_serial=0  extracted_serial=0
   
 opt_dry_run=false  
 opt_duplicate_deps=false  
 opt_silent=false  
 opt_debug=:  
   
 # If this variable is set in any of the actions, the command in it  # If this variable is set in any of the actions, the command in it
 # will be execed at the end.  This prevents here-documents from being  # will be execed at the end.  This prevents here-documents from being
 # left over by shells.  # left over by shells.
 exec_cmd=  exec_cmd=
   
   # func_append var value
   # Append VALUE to the end of shell variable VAR.
   func_append ()
   {
       eval "${1}=\$${1}\${2}"
   } # func_append may be replaced by extended shell implementation
   
   # func_append_quoted var value
   # Quote VALUE and append to the end of shell variable VAR, separated
   # by a space.
   func_append_quoted ()
   {
       func_quote_for_eval "${2}"
       eval "${1}=\$${1}\\ \$func_quote_for_eval_result"
   } # func_append_quoted may be replaced by extended shell implementation
   
   
   # func_arith arithmetic-term...
   func_arith ()
   {
   func_arith_result=$(( $* ))
   } # Extended-shell func_arith implementation
   
   
   # func_len string
   # STRING may not start with a hyphen.
   func_len ()
   {
   func_len_result=${#1}
   } # Extended-shell func_len implementation
   
   
   # func_lo2o object
   func_lo2o ()
   {
       case ${1} in
         *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
         *)    func_lo2o_result=${1} ;;
       esac
   } # Extended-shell func_lo2o implementation
   
   
   # func_xform libobj-or-source
   func_xform ()
   {
   func_xform_result=${1%.*}.lo
   } # Extended-shell func_xform implementation
   
   
 # func_fatal_configuration arg...  # func_fatal_configuration arg...
 # Echo program name prefixed message to standard error, followed by  # Echo program name prefixed message to standard error, followed by
 # a configuration failure hint, and exit.  # a configuration failure hint, and exit.
Line 1121  func_config () Line 1338  func_config ()
 # Display the features supported by this script.  # Display the features supported by this script.
 func_features ()  func_features ()
 {  {
    $ECHO "host: $host"    echo "host: $host"
     if test "$build_libtool_libs" = yes; then      if test "$build_libtool_libs" = yes; then
      $ECHO "enable shared libraries"      echo "enable shared libraries"
     else      else
      $ECHO "disable shared libraries"      echo "disable shared libraries"
     fi      fi
     if test "$build_old_libs" = yes; then      if test "$build_old_libs" = yes; then
      $ECHO "enable static libraries"      echo "enable static libraries"
     else      else
      $ECHO "disable static libraries"      echo "disable static libraries"
     fi      fi
   
     exit $?      exit $?
Line 1177  func_enable_tag () Line 1394  func_enable_tag ()
   esac    esac
 }  }
   
# Parse options once, thoroughly.  This comes as soon as possible in# func_check_version_match
# the script to make things like `libtool --version' happen quickly.# Ensure that we are using m4 macros, and libtool script from the same
 # release of libtool.
 func_check_version_match ()
 {  {
     if test "$package_revision" != "$macro_revision"; then
       if test "$VERSION" != "$macro_version"; then
         if test -z "$macro_version"; then
           cat >&2 <<_LT_EOF
   $progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
   $progname: definition of this LT_INIT comes from an older release.
   $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
   $progname: and run autoconf again.
   _LT_EOF
         else
           cat >&2 <<_LT_EOF
   $progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
   $progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
   $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
   $progname: and run autoconf again.
   _LT_EOF
         fi
       else
         cat >&2 <<_LT_EOF
   $progname: Version mismatch error.  This is $PACKAGE $VERSION, revision $package_revision,
   $progname: but the definition of this LT_INIT comes from revision $macro_revision.
   $progname: You should recreate aclocal.m4 with macros from revision $package_revision
   $progname: of $PACKAGE $VERSION and run autoconf again.
   _LT_EOF
       fi
   
  # Shorthand for --mode=foo, only valid as the first argument    exit $EXIT_MISMATCH
  case $1 in  fi
  clean|clea|cle|cl)}
    shift; set dummy --mode clean ${1+"$@"}; shift 
    ;; 
  compile|compil|compi|comp|com|co|c) 
    shift; set dummy --mode compile ${1+"$@"}; shift 
    ;; 
  execute|execut|execu|exec|exe|ex|e) 
    shift; set dummy --mode execute ${1+"$@"}; shift 
    ;; 
  finish|finis|fini|fin|fi|f) 
    shift; set dummy --mode finish ${1+"$@"}; shift 
    ;; 
  install|instal|insta|inst|ins|in|i) 
    shift; set dummy --mode install ${1+"$@"}; shift 
    ;; 
  link|lin|li|l) 
    shift; set dummy --mode link ${1+"$@"}; shift 
    ;; 
  uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) 
    shift; set dummy --mode uninstall ${1+"$@"}; shift 
    ;; 
  esac 
   
  # Parse non-mode specific arguments:
  while test "$#" -gt 0; do# Shorthand for --mode=foo, only valid as the first argument
 case $1 in
 clean|clea|cle|cl)
   shift; set dummy --mode clean ${1+"$@"}; shift
   ;;
 compile|compil|compi|comp|com|co|c)
   shift; set dummy --mode compile ${1+"$@"}; shift
   ;;
 execute|execut|execu|exec|exe|ex|e)
   shift; set dummy --mode execute ${1+"$@"}; shift
   ;;
 finish|finis|fini|fin|fi|f)
   shift; set dummy --mode finish ${1+"$@"}; shift
   ;;
 install|instal|insta|inst|ins|in|i)
   shift; set dummy --mode install ${1+"$@"}; shift
   ;;
 link|lin|li|l)
   shift; set dummy --mode link ${1+"$@"}; shift
   ;;
 uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
   shift; set dummy --mode uninstall ${1+"$@"}; shift
   ;;
 esac
 
 
 
 # Option defaults:
 opt_debug=:
 opt_dry_run=false
 opt_config=false
 opt_preserve_dup_deps=false
 opt_features=false
 opt_finish=false
 opt_help=false
 opt_help_all=false
 opt_silent=:
 opt_warning=:
 opt_verbose=:
 opt_silent=false
 opt_verbose=false
 
 
 # Parse options once, thoroughly.  This comes as soon as possible in the
 # script to make things like `--version' happen as quickly as we can.
 {
   # this just eases exit handling
   while test $# -gt 0; do
     opt="$1"      opt="$1"
     shift      shift
   
     case $opt in      case $opt in
      --config)         func_config                                     ;;      --debug|-x)    opt_debug='set -x'
 
      --debug)               preserve_args="$preserve_args $opt" 
                         func_echo "enabling shell trace mode"                          func_echo "enabling shell trace mode"
                         opt_debug='set -x'  
                         $opt_debug                          $opt_debug
                         ;;                          ;;
      --dry-run|--dryrun|-n)
      -dlopen)          test "$#" -eq 0 && func_missing_arg "$opt" && break                        opt_dry_run=:
                        execute_dlfiles="$execute_dlfiles $1" 
                        shift 
                         ;;                          ;;
      --config)
      --dry-run | -n)        opt_dry_run=:                                       ;;                        opt_config=:
      --features)       func_features                                        ;;func_config
      --finish)         mode="finish"                                   ;;                        ;;
      --dlopen|-dlopen)
      --mode)           test "$#" -eq 0 && func_missing_arg "$opt" && break                        optarg="$1"
                        case $1 in                        opt_dlopen="${opt_dlopen+$opt_dlopen
                          # Valid mode arguments:}$optarg"
                          clean)        ;; 
                          compile)      ;; 
                          execute)      ;; 
                          finish)       ;; 
                          install)      ;; 
                          link)         ;; 
                          relink)       ;; 
                          uninstall)    ;; 
 
                          # Catch anything else as an error 
                          *) func_error "invalid argument for $opt" 
                             exit_cmd=exit 
                             break 
                             ;; 
                        esac 
 
                        mode="$1" 
                         shift                          shift
                         ;;                          ;;
   
       --preserve-dup-deps)        --preserve-dup-deps)
                        opt_duplicate_deps=:                                ;;                        opt_preserve_dup_deps=:
 
      --quiet|--silent)        preserve_args="$preserve_args $opt" 
                        opt_silent=: 
                         ;;                          ;;
         --features)
                           opt_features=:
   func_features
                           ;;
         --finish)
                           opt_finish=:
   set dummy --mode finish ${1+"$@"}; shift
                           ;;
         --help)
                           opt_help=:
                           ;;
         --help-all)
                           opt_help_all=:
   opt_help=': help-all'
                           ;;
         --mode)
                           test $# = 0 && func_missing_arg $opt && break
                           optarg="$1"
                           opt_mode="$optarg"
   case $optarg in
     # Valid mode arguments:
     clean|compile|execute|finish|install|link|relink|uninstall) ;;
   
      --verbose| -v)    preserve_args="$preserve_args $opt"  # Catch anything else as an error
   *) func_error "invalid argument for $opt"
      exit_cmd=exit
      break
      ;;
 esac
                         shift
                         ;;
       --no-silent|--no-quiet)
                         opt_silent=false                          opt_silent=false
   preserve_args="$preserve_args $opt"
                         ;;                          ;;
      --no-warning|--no-warn)
      --tag)            test "$#" -eq 0 && func_missing_arg "$opt" && break                        opt_warning=false
                        preserve_args="$preserve_args $opt $1"preserve_args="$preserve_args $opt"
                        func_enable_tag "$1"      # tagname is set here                        ;;
       --no-verbose)
                         opt_verbose=false
 preserve_args="$preserve_args $opt"
                         ;;
       --silent|--quiet)
                         opt_silent=:
 preserve_args="$preserve_args $opt"
         opt_verbose=false
                         ;;
       --verbose|-v)
                         opt_verbose=:
 preserve_args="$preserve_args $opt"
 opt_silent=false
                         ;;
       --tag)
                         test $# = 0 && func_missing_arg $opt && break
                         optarg="$1"
                         opt_tag="$optarg"
 preserve_args="$preserve_args $opt $optarg"
 func_enable_tag "$optarg"
                         shift                          shift
                         ;;                          ;;
   
         -\?|-h)           func_usage                              ;;
         --help)           func_help                               ;;
         --version)        func_version                            ;;
   
       # Separate optargs to long options:        # Separate optargs to long options:
      -dlopen=*|--mode=*|--tag=*)      --*=*)
                        func_opt_split "$opt"                        func_split_long_opt "$opt"
                        set dummy "$func_opt_split_opt" "$func_opt_split_arg" ${1+"$@"}                        set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"}
                         shift                          shift
                         ;;                          ;;
   
      -\?|-h)           func_usage                                      ;;      # Separate non-argument short options:
      --help)           opt_help=:                                      ;;      -\?*|-h*|-n*|-v*)
      --version)        func_version                                    ;;                        func_split_short_opt "$opt"
                        set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"}
      -*)               func_fatal_help "unrecognized option \`$opt'"        ;;                        shift
 
      *)                nonopt="$opt" 
                        break 
                         ;;                          ;;
   
         --)               break                                   ;;
         -*)               func_fatal_help "unrecognized option \`$opt'" ;;
         *)                set dummy "$opt" ${1+"$@"};     shift; break  ;;
     esac      esac
   done    done
   
     # Validate options:
   
     # save first non-option argument
     if test "$#" -gt 0; then
       nonopt="$opt"
       shift
     fi
   
     # preserve --debug
     test "$opt_debug" = : || preserve_args="$preserve_args --debug"
   
   case $host in    case $host in
     *cygwin* | *mingw* | *pw32* | *cegcc*)      *cygwin* | *mingw* | *pw32* | *cegcc*)
       # don't eliminate duplications in $postdeps and $predeps        # don't eliminate duplications in $postdeps and $predeps
       opt_duplicate_compiler_generated_deps=:        opt_duplicate_compiler_generated_deps=:
       ;;        ;;
     *)      *)
      opt_duplicate_compiler_generated_deps=$opt_duplicate_deps      opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
       ;;        ;;
   esac    esac
   
  # Having warned about all mis-specified options, bail out if  $opt_help || {
  # anything was wrong.    # Sanity checks first:
  $exit_cmd $EXIT_FAILURE    func_check_version_match
} 
   
# func_check_version_match    if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
# Ensure that we are using m4 macros, and libtool script from the same      func_fatal_configuration "not configured to build any kind of library"
# release of libtool. 
func_check_version_match () 
{ 
  if test "$package_revision" != "$macro_revision"; then 
    if test "$VERSION" != "$macro_version"; then 
      if test -z "$macro_version"; then 
        cat >&2 <<_LT_EOF 
$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the 
$progname: definition of this LT_INIT comes from an older release. 
$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION 
$progname: and run autoconf again. 
_LT_EOF 
      else 
        cat >&2 <<_LT_EOF 
$progname: Version mismatch error.  This is $PACKAGE $VERSION, but the 
$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. 
$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION 
$progname: and run autoconf again. 
_LT_EOF 
      fi 
    else 
      cat >&2 <<_LT_EOF 
$progname: Version mismatch error.  This is $PACKAGE $VERSION, revision $package_revision, 
$progname: but the definition of this LT_INIT comes from revision $macro_revision. 
$progname: You should recreate aclocal.m4 with macros from revision $package_revision 
$progname: of $PACKAGE $VERSION and run autoconf again. 
_LT_EOF 
     fi      fi
   
    exit $EXIT_MISMATCH    # Darwin sucks
  fi    eval std_shrext=\"$shrext_cmds\"
} 
   
       # Only execute mode is allowed to have -dlopen flags.
       if test -n "$opt_dlopen" && test "$opt_mode" != execute; then
         func_error "unrecognized option \`-dlopen'"
         $ECHO "$help" 1>&2
         exit $EXIT_FAILURE
       fi
   
## ----------- ##    # Change the help message to a mode-specific one.
##    Main.    ##    generic_help="$help"
## ----------- ##    help="Try \`$progname --help --mode=$opt_mode' for more information."
   }
   
 $opt_help || {  
   # Sanity checks first:  
   func_check_version_match  
   
  if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then  # Bail if the options were screwed
    func_fatal_configuration "not configured to build any kind of library"  $exit_cmd $EXIT_FAILURE
  fi}
   
   test -z "$mode" && func_fatal_error "error: you must specify a MODE."  
   
   
   # Darwin sucks  
   eval std_shrext=\"$shrext_cmds\"  
   
   ## ----------- ##
   ##    Main.    ##
   ## ----------- ##
   
   # Only execute mode is allowed to have -dlopen flags.  
   if test -n "$execute_dlfiles" && test "$mode" != execute; then  
     func_error "unrecognized option \`-dlopen'"  
     $ECHO "$help" 1>&2  
     exit $EXIT_FAILURE  
   fi  
   
   # Change the help message to a mode-specific one.  
   generic_help="$help"  
   help="Try \`$progname --help --mode=$mode' for more information."  
 }  
   
   
 # func_lalib_p file  # func_lalib_p file
 # True iff FILE is a libtool `.la' library or `.lo' object file.  # True iff FILE is a libtool `.la' library or `.lo' object file.
 # This function is only a basic sanity check; it will hardly flush out  # This function is only a basic sanity check; it will hardly flush out
Line 1435  func_ltwrapper_executable_p () Line 1706  func_ltwrapper_executable_p ()
 # temporary ltwrapper_script.  # temporary ltwrapper_script.
 func_ltwrapper_scriptname ()  func_ltwrapper_scriptname ()
 {  {
    func_ltwrapper_scriptname_result=""    func_dirname_and_basename "$1" "" "."
    if func_ltwrapper_executable_p "$1"; then    func_stripname '' '.exe' "$func_basename_result"
        func_dirname_and_basename "$1" "" "."    func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper"
        func_stripname '' '.exe' "$func_basename_result" 
        func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" 
    fi 
 }  }
   
 # func_ltwrapper_p file  # func_ltwrapper_p file
Line 1486  func_source () Line 1754  func_source ()
 }  }
   
   
   # func_resolve_sysroot PATH
   # Replace a leading = in PATH with a sysroot.  Store the result into
   # func_resolve_sysroot_result
   func_resolve_sysroot ()
   {
     func_resolve_sysroot_result=$1
     case $func_resolve_sysroot_result in
     =*)
       func_stripname '=' '' "$func_resolve_sysroot_result"
       func_resolve_sysroot_result=$lt_sysroot$func_stripname_result
       ;;
     esac
   }
   
   # func_replace_sysroot PATH
   # If PATH begins with the sysroot, replace it with = and
   # store the result into func_replace_sysroot_result.
   func_replace_sysroot ()
   {
     case "$lt_sysroot:$1" in
     ?*:"$lt_sysroot"*)
       func_stripname "$lt_sysroot" '' "$1"
       func_replace_sysroot_result="=$func_stripname_result"
       ;;
     *)
       # Including no sysroot.
       func_replace_sysroot_result=$1
       ;;
     esac
   }
   
 # func_infer_tag arg  # func_infer_tag arg
 # Infer tagged configuration to use if any are available and  # Infer tagged configuration to use if any are available and
 # if one wasn't chosen via the "--tag" command line option.  # if one wasn't chosen via the "--tag" command line option.
Line 1498  func_infer_tag () Line 1797  func_infer_tag ()
     if test -n "$available_tags" && test -z "$tagname"; then      if test -n "$available_tags" && test -z "$tagname"; then
       CC_quoted=        CC_quoted=
       for arg in $CC; do        for arg in $CC; do
        func_quote_for_eval "$arg"        func_append_quoted CC_quoted "$arg"
        CC_quoted="$CC_quoted $func_quote_for_eval_result" 
       done        done
         CC_expanded=`func_echo_all $CC`
         CC_quoted_expanded=`func_echo_all $CC_quoted`
       case $@ in        case $@ in
       # Blanks in the command may have been stripped by the calling shell,        # Blanks in the command may have been stripped by the calling shell,
       # but not from the CC environment variable when configure was run.        # but not from the CC environment variable when configure was run.
      " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*) ;;      " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \
       " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;;
       # Blanks at the start of $base_compile will cause this to fail        # Blanks at the start of $base_compile will cause this to fail
       # if we don't check for them as well.        # if we don't check for them as well.
       *)        *)
Line 1515  func_infer_tag () Line 1816  func_infer_tag ()
             CC_quoted=              CC_quoted=
             for arg in $CC; do              for arg in $CC; do
               # Double-quote args containing other shell metacharacters.                # Double-quote args containing other shell metacharacters.
              func_quote_for_eval "$arg"              func_append_quoted CC_quoted "$arg"
              CC_quoted="$CC_quoted $func_quote_for_eval_result" 
             done              done
               CC_expanded=`func_echo_all $CC`
               CC_quoted_expanded=`func_echo_all $CC_quoted`
             case "$@ " in              case "$@ " in
              " $CC "* | "$CC "* | " `$ECHO $CC` "* | "`$ECHO $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$ECHO $CC_quoted` "* | "`$ECHO $CC_quoted` "*)            " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \
             " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*)
               # The compiler in the base compile command matches                # The compiler in the base compile command matches
               # the one in the tagged configuration.                # the one in the tagged configuration.
               # Assume this is the tagged configuration we want.                # Assume this is the tagged configuration we want.
Line 1582  EOF Line 1885  EOF
     }      }
 }  }
   
   
   ##################################################
   # FILE NAME AND PATH CONVERSION HELPER FUNCTIONS #
   ##################################################
   
   # func_convert_core_file_wine_to_w32 ARG
   # Helper function used by file name conversion functions when $build is *nix,
   # and $host is mingw, cygwin, or some other w32 environment. Relies on a
   # correctly configured wine environment available, with the winepath program
   # in $build's $PATH.
   #
   # ARG is the $build file name to be converted to w32 format.
   # Result is available in $func_convert_core_file_wine_to_w32_result, and will
   # be empty on error (or when ARG is empty)
   func_convert_core_file_wine_to_w32 ()
   {
     $opt_debug
     func_convert_core_file_wine_to_w32_result="$1"
     if test -n "$1"; then
       # Unfortunately, winepath does not exit with a non-zero error code, so we
       # are forced to check the contents of stdout. On the other hand, if the
       # command is not found, the shell will set an exit code of 127 and print
       # *an error message* to stdout. So we must check for both error code of
       # zero AND non-empty stdout, which explains the odd construction:
       func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/dev/null`
       if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then
         func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" |
           $SED -e "$lt_sed_naive_backslashify"`
       else
         func_convert_core_file_wine_to_w32_result=
       fi
     fi
   }
   # end: func_convert_core_file_wine_to_w32
   
   
   # func_convert_core_path_wine_to_w32 ARG
   # Helper function used by path conversion functions when $build is *nix, and
   # $host is mingw, cygwin, or some other w32 environment. Relies on a correctly
   # configured wine environment available, with the winepath program in $build's
   # $PATH. Assumes ARG has no leading or trailing path separator characters.
   #
   # ARG is path to be converted from $build format to win32.
   # Result is available in $func_convert_core_path_wine_to_w32_result.
   # Unconvertible file (directory) names in ARG are skipped; if no directory names
   # are convertible, then the result may be empty.
   func_convert_core_path_wine_to_w32 ()
   {
     $opt_debug
     # unfortunately, winepath doesn't convert paths, only file names
     func_convert_core_path_wine_to_w32_result=""
     if test -n "$1"; then
       oldIFS=$IFS
       IFS=:
       for func_convert_core_path_wine_to_w32_f in $1; do
         IFS=$oldIFS
         func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f"
         if test -n "$func_convert_core_file_wine_to_w32_result" ; then
           if test -z "$func_convert_core_path_wine_to_w32_result"; then
             func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result"
           else
             func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result"
           fi
         fi
       done
       IFS=$oldIFS
     fi
   }
   # end: func_convert_core_path_wine_to_w32
   
   
   # func_cygpath ARGS...
   # Wrapper around calling the cygpath program via LT_CYGPATH. This is used when
   # when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2)
   # $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or
   # (2), returns the Cygwin file name or path in func_cygpath_result (input
   # file name or path is assumed to be in w32 format, as previously converted
   # from $build's *nix or MSYS format). In case (3), returns the w32 file name
   # or path in func_cygpath_result (input file name or path is assumed to be in
   # Cygwin format). Returns an empty string on error.
   #
   # ARGS are passed to cygpath, with the last one being the file name or path to
   # be converted.
   #
   # Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH
   # environment variable; do not put it in $PATH.
   func_cygpath ()
   {
     $opt_debug
     if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then
       func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null`
       if test "$?" -ne 0; then
         # on failure, ensure result is empty
         func_cygpath_result=
       fi
     else
       func_cygpath_result=
       func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'"
     fi
   }
   #end: func_cygpath
   
   
   # func_convert_core_msys_to_w32 ARG
   # Convert file name or path ARG from MSYS format to w32 format.  Return
   # result in func_convert_core_msys_to_w32_result.
   func_convert_core_msys_to_w32 ()
   {
     $opt_debug
     # awkward: cmd appends spaces to result
     func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
       $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"`
   }
   #end: func_convert_core_msys_to_w32
   
   
   # func_convert_file_check ARG1 ARG2
   # Verify that ARG1 (a file name in $build format) was converted to $host
   # format in ARG2. Otherwise, emit an error message, but continue (resetting
   # func_to_host_file_result to ARG1).
   func_convert_file_check ()
   {
     $opt_debug
     if test -z "$2" && test -n "$1" ; then
       func_error "Could not determine host file name corresponding to"
       func_error "  \`$1'"
       func_error "Continuing, but uninstalled executables may not work."
       # Fallback:
       func_to_host_file_result="$1"
     fi
   }
   # end func_convert_file_check
   
   
   # func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH
   # Verify that FROM_PATH (a path in $build format) was converted to $host
   # format in TO_PATH. Otherwise, emit an error message, but continue, resetting
   # func_to_host_file_result to a simplistic fallback value (see below).
   func_convert_path_check ()
   {
     $opt_debug
     if test -z "$4" && test -n "$3"; then
       func_error "Could not determine the host path corresponding to"
       func_error "  \`$3'"
       func_error "Continuing, but uninstalled executables may not work."
       # Fallback.  This is a deliberately simplistic "conversion" and
       # should not be "improved".  See libtool.info.
       if test "x$1" != "x$2"; then
         lt_replace_pathsep_chars="s|$1|$2|g"
         func_to_host_path_result=`echo "$3" |
           $SED -e "$lt_replace_pathsep_chars"`
       else
         func_to_host_path_result="$3"
       fi
     fi
   }
   # end func_convert_path_check
   
   
   # func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG
   # Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT
   # and appending REPL if ORIG matches BACKPAT.
   func_convert_path_front_back_pathsep ()
   {
     $opt_debug
     case $4 in
     $1 ) func_to_host_path_result="$3$func_to_host_path_result"
       ;;
     esac
     case $4 in
     $2 ) func_to_host_path_result="$func_to_host_path_result$3"
       ;;
     esac
   }
   # end func_convert_path_front_back_pathsep
   
   
   ##################################################
   # $build to $host FILE NAME CONVERSION FUNCTIONS #
   ##################################################
   # invoked via `$to_host_file_cmd ARG'
   #
   # In each case, ARG is the path to be converted from $build to $host format.
   # Result will be available in $func_to_host_file_result.
   
   
   # func_to_host_file ARG
   # Converts the file name ARG from $build format to $host format. Return result
   # in func_to_host_file_result.
   func_to_host_file ()
   {
     $opt_debug
     $to_host_file_cmd "$1"
   }
   # end func_to_host_file
   
   
   # func_to_tool_file ARG LAZY
   # converts the file name ARG from $build format to toolchain format. Return
   # result in func_to_tool_file_result.  If the conversion in use is listed
   # in (the comma separated) LAZY, no conversion takes place.
   func_to_tool_file ()
   {
     $opt_debug
     case ,$2, in
       *,"$to_tool_file_cmd",*)
         func_to_tool_file_result=$1
         ;;
       *)
         $to_tool_file_cmd "$1"
         func_to_tool_file_result=$func_to_host_file_result
         ;;
     esac
   }
   # end func_to_tool_file
   
   
   # func_convert_file_noop ARG
   # Copy ARG to func_to_host_file_result.
   func_convert_file_noop ()
   {
     func_to_host_file_result="$1"
   }
   # end func_convert_file_noop
   
   
   # func_convert_file_msys_to_w32 ARG
   # Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic
   # conversion to w32 is not available inside the cwrapper.  Returns result in
   # func_to_host_file_result.
   func_convert_file_msys_to_w32 ()
   {
     $opt_debug
     func_to_host_file_result="$1"
     if test -n "$1"; then
       func_convert_core_msys_to_w32 "$1"
       func_to_host_file_result="$func_convert_core_msys_to_w32_result"
     fi
     func_convert_file_check "$1" "$func_to_host_file_result"
   }
   # end func_convert_file_msys_to_w32
   
   
   # func_convert_file_cygwin_to_w32 ARG
   # Convert file name ARG from Cygwin to w32 format.  Returns result in
   # func_to_host_file_result.
   func_convert_file_cygwin_to_w32 ()
   {
     $opt_debug
     func_to_host_file_result="$1"
     if test -n "$1"; then
       # because $build is cygwin, we call "the" cygpath in $PATH; no need to use
       # LT_CYGPATH in this case.
       func_to_host_file_result=`cygpath -m "$1"`
     fi
     func_convert_file_check "$1" "$func_to_host_file_result"
   }
   # end func_convert_file_cygwin_to_w32
   
   
   # func_convert_file_nix_to_w32 ARG
   # Convert file name ARG from *nix to w32 format.  Requires a wine environment
   # and a working winepath. Returns result in func_to_host_file_result.
   func_convert_file_nix_to_w32 ()
   {
     $opt_debug
     func_to_host_file_result="$1"
     if test -n "$1"; then
       func_convert_core_file_wine_to_w32 "$1"
       func_to_host_file_result="$func_convert_core_file_wine_to_w32_result"
     fi
     func_convert_file_check "$1" "$func_to_host_file_result"
   }
   # end func_convert_file_nix_to_w32
   
   
   # func_convert_file_msys_to_cygwin ARG
   # Convert file name ARG from MSYS to Cygwin format.  Requires LT_CYGPATH set.
   # Returns result in func_to_host_file_result.
   func_convert_file_msys_to_cygwin ()
   {
     $opt_debug
     func_to_host_file_result="$1"
     if test -n "$1"; then
       func_convert_core_msys_to_w32 "$1"
       func_cygpath -u "$func_convert_core_msys_to_w32_result"
       func_to_host_file_result="$func_cygpath_result"
     fi
     func_convert_file_check "$1" "$func_to_host_file_result"
   }
   # end func_convert_file_msys_to_cygwin
   
   
   # func_convert_file_nix_to_cygwin ARG
   # Convert file name ARG from *nix to Cygwin format.  Requires Cygwin installed
   # in a wine environment, working winepath, and LT_CYGPATH set.  Returns result
   # in func_to_host_file_result.
   func_convert_file_nix_to_cygwin ()
   {
     $opt_debug
     func_to_host_file_result="$1"
     if test -n "$1"; then
       # convert from *nix to w32, then use cygpath to convert from w32 to cygwin.
       func_convert_core_file_wine_to_w32 "$1"
       func_cygpath -u "$func_convert_core_file_wine_to_w32_result"
       func_to_host_file_result="$func_cygpath_result"
     fi
     func_convert_file_check "$1" "$func_to_host_file_result"
   }
   # end func_convert_file_nix_to_cygwin
   
   
   #############################################
   # $build to $host PATH CONVERSION FUNCTIONS #
   #############################################
   # invoked via `$to_host_path_cmd ARG'
   #
   # In each case, ARG is the path to be converted from $build to $host format.
   # The result will be available in $func_to_host_path_result.
   #
   # Path separators are also converted from $build format to $host format.  If
   # ARG begins or ends with a path separator character, it is preserved (but
   # converted to $host format) on output.
   #
   # All path conversion functions are named using the following convention:
   #   file name conversion function    : func_convert_file_X_to_Y ()
   #   path conversion function         : func_convert_path_X_to_Y ()
   # where, for any given $build/$host combination the 'X_to_Y' value is the
   # same.  If conversion functions are added for new $build/$host combinations,
   # the two new functions must follow this pattern, or func_init_to_host_path_cmd
   # will break.
   
   
   # func_init_to_host_path_cmd
   # Ensures that function "pointer" variable $to_host_path_cmd is set to the
   # appropriate value, based on the value of $to_host_file_cmd.
   to_host_path_cmd=
   func_init_to_host_path_cmd ()
   {
     $opt_debug
     if test -z "$to_host_path_cmd"; then
       func_stripname 'func_convert_file_' '' "$to_host_file_cmd"
       to_host_path_cmd="func_convert_path_${func_stripname_result}"
     fi
   }
   
   
   # func_to_host_path ARG
   # Converts the path ARG from $build format to $host format. Return result
   # in func_to_host_path_result.
   func_to_host_path ()
   {
     $opt_debug
     func_init_to_host_path_cmd
     $to_host_path_cmd "$1"
   }
   # end func_to_host_path
   
   
   # func_convert_path_noop ARG
   # Copy ARG to func_to_host_path_result.
   func_convert_path_noop ()
   {
     func_to_host_path_result="$1"
   }
   # end func_convert_path_noop
   
   
   # func_convert_path_msys_to_w32 ARG
   # Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic
   # conversion to w32 is not available inside the cwrapper.  Returns result in
   # func_to_host_path_result.
   func_convert_path_msys_to_w32 ()
   {
     $opt_debug
     func_to_host_path_result="$1"
     if test -n "$1"; then
       # Remove leading and trailing path separator characters from ARG.  MSYS
       # behavior is inconsistent here; cygpath turns them into '.;' and ';.';
       # and winepath ignores them completely.
       func_stripname : : "$1"
       func_to_host_path_tmp1=$func_stripname_result
       func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
       func_to_host_path_result="$func_convert_core_msys_to_w32_result"
       func_convert_path_check : ";" \
         "$func_to_host_path_tmp1" "$func_to_host_path_result"
       func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
     fi
   }
   # end func_convert_path_msys_to_w32
   
   
   # func_convert_path_cygwin_to_w32 ARG
   # Convert path ARG from Cygwin to w32 format.  Returns result in
   # func_to_host_file_result.
   func_convert_path_cygwin_to_w32 ()
   {
     $opt_debug
     func_to_host_path_result="$1"
     if test -n "$1"; then
       # See func_convert_path_msys_to_w32:
       func_stripname : : "$1"
       func_to_host_path_tmp1=$func_stripname_result
       func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"`
       func_convert_path_check : ";" \
         "$func_to_host_path_tmp1" "$func_to_host_path_result"
       func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
     fi
   }
   # end func_convert_path_cygwin_to_w32
   
   
   # func_convert_path_nix_to_w32 ARG
   # Convert path ARG from *nix to w32 format.  Requires a wine environment and
   # a working winepath.  Returns result in func_to_host_file_result.
   func_convert_path_nix_to_w32 ()
   {
     $opt_debug
     func_to_host_path_result="$1"
     if test -n "$1"; then
       # See func_convert_path_msys_to_w32:
       func_stripname : : "$1"
       func_to_host_path_tmp1=$func_stripname_result
       func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
       func_to_host_path_result="$func_convert_core_path_wine_to_w32_result"
       func_convert_path_check : ";" \
         "$func_to_host_path_tmp1" "$func_to_host_path_result"
       func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
     fi
   }
   # end func_convert_path_nix_to_w32
   
   
   # func_convert_path_msys_to_cygwin ARG
   # Convert path ARG from MSYS to Cygwin format.  Requires LT_CYGPATH set.
   # Returns result in func_to_host_file_result.
   func_convert_path_msys_to_cygwin ()
   {
     $opt_debug
     func_to_host_path_result="$1"
     if test -n "$1"; then
       # See func_convert_path_msys_to_w32:
       func_stripname : : "$1"
       func_to_host_path_tmp1=$func_stripname_result
       func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
       func_cygpath -u -p "$func_convert_core_msys_to_w32_result"
       func_to_host_path_result="$func_cygpath_result"
       func_convert_path_check : : \
         "$func_to_host_path_tmp1" "$func_to_host_path_result"
       func_convert_path_front_back_pathsep ":*" "*:" : "$1"
     fi
   }
   # end func_convert_path_msys_to_cygwin
   
   
   # func_convert_path_nix_to_cygwin ARG
   # Convert path ARG from *nix to Cygwin format.  Requires Cygwin installed in a
   # a wine environment, working winepath, and LT_CYGPATH set.  Returns result in
   # func_to_host_file_result.
   func_convert_path_nix_to_cygwin ()
   {
     $opt_debug
     func_to_host_path_result="$1"
     if test -n "$1"; then
       # Remove leading and trailing path separator characters from
       # ARG. msys behavior is inconsistent here, cygpath turns them
       # into '.;' and ';.', and winepath ignores them completely.
       func_stripname : : "$1"
       func_to_host_path_tmp1=$func_stripname_result
       func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
       func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result"
       func_to_host_path_result="$func_cygpath_result"
       func_convert_path_check : : \
         "$func_to_host_path_tmp1" "$func_to_host_path_result"
       func_convert_path_front_back_pathsep ":*" "*:" : "$1"
     fi
   }
   # end func_convert_path_nix_to_cygwin
   
   
 # func_mode_compile arg...  # func_mode_compile arg...
 func_mode_compile ()  func_mode_compile ()
 {  {
Line 1648  func_mode_compile () Line 2431  func_mode_compile ()
           save_ifs="$IFS"; IFS=','            save_ifs="$IFS"; IFS=','
           for arg in $args; do            for arg in $args; do
             IFS="$save_ifs"              IFS="$save_ifs"
            func_quote_for_eval "$arg"            func_append_quoted lastarg "$arg"
            lastarg="$lastarg $func_quote_for_eval_result" 
           done            done
           IFS="$save_ifs"            IFS="$save_ifs"
           func_stripname ' ' '' "$lastarg"            func_stripname ' ' '' "$lastarg"
Line 1672  func_mode_compile () Line 2454  func_mode_compile ()
       esac    #  case $arg_mode        esac    #  case $arg_mode
   
       # Aesthetically quote the previous argument.        # Aesthetically quote the previous argument.
      func_quote_for_eval "$lastarg"      func_append_quoted base_compile "$lastarg"
      base_compile="$base_compile $func_quote_for_eval_result" 
     done # for arg      done # for arg
   
     case $arg_mode in      case $arg_mode in
Line 1698  func_mode_compile () Line 2479  func_mode_compile ()
     *.[cCFSifmso] | \      *.[cCFSifmso] | \
     *.ada | *.adb | *.ads | *.asm | \      *.ada | *.adb | *.ads | *.asm | \
     *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \      *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
    *.[fF][09]? | *.for | *.java | *.obj | *.sx)    *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup)
       func_xform "$libobj"        func_xform "$libobj"
       libobj=$func_xform_result        libobj=$func_xform_result
       ;;        ;;
Line 1773  func_mode_compile () Line 2554  func_mode_compile ()
     # Calculate the filename of the output object if compiler does      # Calculate the filename of the output object if compiler does
     # not support -o with -c      # not support -o with -c
     if test "$compiler_c_o" = no; then      if test "$compiler_c_o" = no; then
      output_obj=`$ECHO "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}      output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext}
       lockfile="$output_obj.lock"        lockfile="$output_obj.lock"
     else      else
       output_obj=        output_obj=
Line 1812  compiler." Line 2593  compiler."
     removelist="$removelist $lockfile"      removelist="$removelist $lockfile"
     trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15      trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15
   
    if test -n "$fix_srcfile_path"; then    func_to_tool_file "$srcfile" func_convert_file_msys_to_w32
      eval srcfile=\"$fix_srcfile_path\"    srcfile=$func_to_tool_file_result
    fi 
     func_quote_for_eval "$srcfile"      func_quote_for_eval "$srcfile"
     qsrcfile=$func_quote_for_eval_result      qsrcfile=$func_quote_for_eval_result
   
Line 1930  compiler." Line 2710  compiler."
 }  }
   
 $opt_help || {  $opt_help || {
test "$mode" = compile && func_mode_compile ${1+"$@"}  test "$opt_mode" = compile && func_mode_compile ${1+"$@"}
 }  }
   
 func_mode_help ()  func_mode_help ()
 {  {
     # We need to display help for each of the modes.      # We need to display help for each of the modes.
    case $mode in    case $opt_mode in
       "")        "")
         # Generic help is extracted from the usage comments          # Generic help is extracted from the usage comments
         # at the start of this file.          # at the start of this file.
Line 1967  This mode accepts the following additional options: Line 2747  This mode accepts the following additional options:
   
   -o OUTPUT-FILE    set the output file name to OUTPUT-FILE    -o OUTPUT-FILE    set the output file name to OUTPUT-FILE
   -no-suppress      do not suppress compiler output for multiple passes    -no-suppress      do not suppress compiler output for multiple passes
  -prefer-pic       try to building PIC objects only  -prefer-pic       try to build PIC objects only
  -prefer-non-pic   try to building non-PIC objects only  -prefer-non-pic   try to build non-PIC objects only
   -shared           do not build a \`.o' file suitable for static linking    -shared           do not build a \`.o' file suitable for static linking
   -static           only build a \`.o' file suitable for static linking    -static           only build a \`.o' file suitable for static linking
     -Wc,FLAG          pass FLAG directly to the compiler
   
 COMPILE-COMMAND is a command to be used in creating a \`standard' object file  COMPILE-COMMAND is a command to be used in creating a \`standard' object file
 from the given SOURCEFILE.  from the given SOURCEFILE.
Line 2023  either the \`install' or \`cp' program. Line 2804  either the \`install' or \`cp' program.
   
 The following components of INSTALL-COMMAND are treated specially:  The following components of INSTALL-COMMAND are treated specially:
   
  -inst-prefix PREFIX-DIR  Use PREFIX-DIR as a staging area for installation  -inst-prefix-dir PREFIX-DIR  Use PREFIX-DIR as a staging area for installation
   
 The rest of the components are interpreted as arguments to that command (only  The rest of the components are interpreted as arguments to that command (only
 BSD-compatible install options are recognized)."  BSD-compatible install options are recognized)."
Line 2043  The following components of LINK-COMMAND are treated s Line 2824  The following components of LINK-COMMAND are treated s
   
   -all-static       do not do any dynamic linking at all    -all-static       do not do any dynamic linking at all
   -avoid-version    do not add a version suffix if possible    -avoid-version    do not add a version suffix if possible
     -bindir BINDIR    specify path to binaries directory (for systems where
                       libraries must be found in the PATH setting at runtime)
   -dlopen FILE      \`-dlpreopen' FILE if it cannot be dlopened at runtime    -dlopen FILE      \`-dlpreopen' FILE if it cannot be dlopened at runtime
   -dlpreopen FILE   link in FILE and add its symbols to lt_preloaded_symbols    -dlpreopen FILE   link in FILE and add its symbols to lt_preloaded_symbols
   -export-dynamic   allow symbols from OUTPUT-FILE to be resolved with dlsym(3)    -export-dynamic   allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
Line 2071  The following components of LINK-COMMAND are treated s Line 2854  The following components of LINK-COMMAND are treated s
   -version-info CURRENT[:REVISION[:AGE]]    -version-info CURRENT[:REVISION[:AGE]]
                     specify library version info [each variable defaults to 0]                      specify library version info [each variable defaults to 0]
   -weak LIBNAME     declare that the target provides the LIBNAME interface    -weak LIBNAME     declare that the target provides the LIBNAME interface
     -Wc,FLAG
     -Xcompiler FLAG   pass linker-specific FLAG directly to the compiler
     -Wl,FLAG
     -Xlinker FLAG     pass linker-specific FLAG directly to the linker
     -XCClinker FLAG   pass link-specific FLAG to the compiler driver (CC)
   
 All other options (arguments beginning with \`-') are ignored.  All other options (arguments beginning with \`-') are ignored.
   
Line 2104  Otherwise, only FILE itself is deleted using RM." Line 2892  Otherwise, only FILE itself is deleted using RM."
         ;;          ;;
   
       *)        *)
        func_fatal_help "invalid operation mode \`$mode'"        func_fatal_help "invalid operation mode \`$opt_mode'"
         ;;          ;;
     esac      esac
   
    $ECHO    echo
     $ECHO "Try \`$progname --help' for more information about other modes."      $ECHO "Try \`$progname --help' for more information about other modes."
   
     exit $?  
 }  }
   
  # Now that we've collected a possible --mode arg, show help if necessary# Now that we've collected a possible --mode arg, show help if necessary
  $opt_help && func_mode_helpif $opt_help; then
   if test "$opt_help" = :; then
     func_mode_help
   else
     {
       func_help noexit
       for opt_mode in compile link execute install finish uninstall clean; do
         func_mode_help
       done
     } | sed -n '1p; 2,$s/^Usage:/  or: /p'
     {
       func_help noexit
       for opt_mode in compile link execute install finish uninstall clean; do
         echo
         func_mode_help
       done
     } |
     sed '1d
       /^When reporting/,/^Report/{
         H
         d
       }
       $x
       /information about other modes/d
       /more detailed .*MODE/d
       s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/'
   fi
   exit $?
 fi
   
   
 # func_mode_execute arg...  # func_mode_execute arg...
Line 2128  func_mode_execute () Line 2942  func_mode_execute ()
       func_fatal_help "you must specify a COMMAND"        func_fatal_help "you must specify a COMMAND"
   
     # Handle -dlopen flags immediately.      # Handle -dlopen flags immediately.
    for file in $execute_dlfiles; do    for file in $opt_dlopen; do
       test -f "$file" \        test -f "$file" \
         || func_fatal_help "\`$file' is not a file"          || func_fatal_help "\`$file' is not a file"
   
       dir=        dir=
       case $file in        case $file in
       *.la)        *.la)
           func_resolve_sysroot "$file"
           file=$func_resolve_sysroot_result
   
         # Check to see that this really is a libtool archive.          # Check to see that this really is a libtool archive.
         func_lalib_unsafe_p "$file" \          func_lalib_unsafe_p "$file" \
           || func_fatal_help "\`$lib' is not a valid libtool archive"            || func_fatal_help "\`$lib' is not a valid libtool archive"
Line 2197  func_mode_execute () Line 3014  func_mode_execute ()
     for file      for file
     do      do
       case $file in        case $file in
      -*) ;;      -* | *.la | *.lo ) ;;
       *)        *)
         # Do a test to see if this is really a libtool program.          # Do a test to see if this is really a libtool program.
         if func_ltwrapper_script_p "$file"; then          if func_ltwrapper_script_p "$file"; then
Line 2213  func_mode_execute () Line 3030  func_mode_execute ()
         ;;          ;;
       esac        esac
       # Quote arguments (to preserve shell metacharacters).        # Quote arguments (to preserve shell metacharacters).
      func_quote_for_eval "$file"      func_append_quoted args "$file"
      args="$args $func_quote_for_eval_result" 
     done      done
   
     if test "X$opt_dry_run" = Xfalse; then      if test "X$opt_dry_run" = Xfalse; then
Line 2239  func_mode_execute () Line 3055  func_mode_execute ()
       # Display what would be done.        # Display what would be done.
       if test -n "$shlibpath_var"; then        if test -n "$shlibpath_var"; then
         eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""          eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
        $ECHO "export $shlibpath_var"        echo "export $shlibpath_var"
       fi        fi
       $ECHO "$cmd$args"        $ECHO "$cmd$args"
       exit $EXIT_SUCCESS        exit $EXIT_SUCCESS
     fi      fi
 }  }
   
test "$mode" = execute && func_mode_execute ${1+"$@"}test "$opt_mode" = execute && func_mode_execute ${1+"$@"}
   
   
 # func_mode_finish arg...  # func_mode_finish arg...
 func_mode_finish ()  func_mode_finish ()
 {  {
     $opt_debug      $opt_debug
    libdirs="$nonopt"    libs=
     libdirs=
     admincmds=      admincmds=
   
    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then    for opt in "$nonopt" ${1+"$@"}
      for dir    do
      do      if test -d "$opt"; then
        libdirs="$libdirs $dir"        libdirs="$libdirs $opt"
      done 
   
         elif test -f "$opt"; then
           if func_lalib_unsafe_p "$opt"; then
             libs="$libs $opt"
           else
             func_warning "\`$opt' is not a valid libtool archive"
           fi
   
         else
           func_fatal_error "invalid argument \`$opt'"
         fi
       done
   
       if test -n "$libs"; then
         if test -n "$lt_sysroot"; then
           sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"`
           sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;"
         else
           sysroot_cmd=
         fi
   
         # Remove sysroot references
         if $opt_dry_run; then
           for lib in $libs; do
             echo "removing references to $lt_sysroot and \`=' prefixes from $lib"
           done
         else
           tmpdir=`func_mktempdir`
           for lib in $libs; do
             sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \
               > $tmpdir/tmp-la
             mv -f $tmpdir/tmp-la $lib
           done
           ${RM}r "$tmpdir"
         fi
       fi
   
       if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
       for libdir in $libdirs; do        for libdir in $libdirs; do
         if test -n "$finish_cmds"; then          if test -n "$finish_cmds"; then
           # Do each command in the finish commands.            # Do each command in the finish commands.
Line 2280  func_mode_finish () Line 3133  func_mode_finish ()
     # Exit here if they wanted silent mode.      # Exit here if they wanted silent mode.
     $opt_silent && exit $EXIT_SUCCESS      $opt_silent && exit $EXIT_SUCCESS
   
    $ECHO "X----------------------------------------------------------------------" | $Xsed    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
    $ECHO "Libraries have been installed in:"      echo "----------------------------------------------------------------------"
    for libdir in $libdirs; do      echo "Libraries have been installed in:"
      $ECHO "   $libdir"      for libdir in $libdirs; do
    done        $ECHO "   $libdir"
    $ECHO      done
    $ECHO "If you ever happen to want to link against installed libraries"      echo
    $ECHO "in a given directory, LIBDIR, you must either use libtool, and"      echo "If you ever happen to want to link against installed libraries"
    $ECHO "specify the full pathname of the library, or use the \`-LLIBDIR'"      echo "in a given directory, LIBDIR, you must either use libtool, and"
    $ECHO "flag during linking and do at least one of the following:"      echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
    if test -n "$shlibpath_var"; then      echo "flag during linking and do at least one of the following:"
      $ECHO "   - add LIBDIR to the \`$shlibpath_var' environment variable"      if test -n "$shlibpath_var"; then
      $ECHO "     during execution"        echo "   - add LIBDIR to the \`$shlibpath_var' environment variable"
    fi        echo "     during execution"
    if test -n "$runpath_var"; then      fi
      $ECHO "   - add LIBDIR to the \`$runpath_var' environment variable"      if test -n "$runpath_var"; then
      $ECHO "     during linking"        echo "   - add LIBDIR to the \`$runpath_var' environment variable"
    fi        echo "     during linking"
    if test -n "$hardcode_libdir_flag_spec"; then      fi
      libdir=LIBDIR      if test -n "$hardcode_libdir_flag_spec"; then
      eval flag=\"$hardcode_libdir_flag_spec\"        libdir=LIBDIR
         eval flag=\"$hardcode_libdir_flag_spec\"
   
      $ECHO "   - use the \`$flag' linker flag"        $ECHO "   - use the \`$flag' linker flag"
    fi      fi
    if test -n "$admincmds"; then      if test -n "$admincmds"; then
      $ECHO "   - have your system administrator run these commands:$admincmds"        $ECHO "   - have your system administrator run these commands:$admincmds"
    fi      fi
    if test -f /etc/ld.so.conf; then      if test -f /etc/ld.so.conf; then
      $ECHO "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"        echo "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
    fi      fi
    $ECHO      echo
   
    $ECHO "See any operating system documentation about shared libraries for"      echo "See any operating system documentation about shared libraries for"
    case $host in      case $host in
      solaris2.[6789]|solaris2.1[0-9])        solaris2.[6789]|solaris2.1[0-9])
        $ECHO "more information, such as the ld(1), crle(1) and ld.so(8) manual"          echo "more information, such as the ld(1), crle(1) and ld.so(8) manual"
        $ECHO "pages."          echo "pages."
        ;;          ;;
      *)        *)
        $ECHO "more information, such as the ld(1) and ld.so(8) manual pages."          echo "more information, such as the ld(1) and ld.so(8) manual pages."
        ;;          ;;
    esac      esac
    $ECHO "X----------------------------------------------------------------------" | $Xsed      echo "----------------------------------------------------------------------"
     fi
     exit $EXIT_SUCCESS      exit $EXIT_SUCCESS
 }  }
   
test "$mode" = finish && func_mode_finish ${1+"$@"}test "$opt_mode" = finish && func_mode_finish ${1+"$@"}
   
   
 # func_mode_install arg...  # func_mode_install arg...
Line 2337  func_mode_install () Line 3192  func_mode_install ()
     # install_prog (especially on Windows NT).      # install_prog (especially on Windows NT).
     if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||      if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
        # Allow the use of GNU shtool's install command.         # Allow the use of GNU shtool's install command.
       $ECHO "X$nonopt" | $GREP shtool >/dev/null; then       case $nonopt in *shtool*) :;; *) false;; esac; then
       # Aesthetically quote it.        # Aesthetically quote it.
       func_quote_for_eval "$nonopt"        func_quote_for_eval "$nonopt"
       install_prog="$func_quote_for_eval_result "        install_prog="$func_quote_for_eval_result "
Line 2352  func_mode_install () Line 3207  func_mode_install ()
     # Aesthetically quote it.      # Aesthetically quote it.
     func_quote_for_eval "$arg"      func_quote_for_eval "$arg"
     install_prog="$install_prog$func_quote_for_eval_result"      install_prog="$install_prog$func_quote_for_eval_result"
       install_shared_prog=$install_prog
       case " $install_prog " in
         *[\\\ /]cp\ *) install_cp=: ;;
         *) install_cp=false ;;
       esac
   
     # We need to accept at least all the BSD install flags.      # We need to accept at least all the BSD install flags.
     dest=      dest=
Line 2361  func_mode_install () Line 3221  func_mode_install ()
     install_type=      install_type=
     isdir=no      isdir=no
     stripme=      stripme=
       no_mode=:
     for arg      for arg
     do      do
         arg2=
       if test -n "$dest"; then        if test -n "$dest"; then
         files="$files $dest"          files="$files $dest"
         dest=$arg          dest=$arg
Line 2372  func_mode_install () Line 3234  func_mode_install ()
       case $arg in        case $arg in
       -d) isdir=yes ;;        -d) isdir=yes ;;
       -f)        -f)
        case " $install_prog " in        if $install_cp; then :; else
        *[\\\ /]cp\ *) ;;          prev=$arg
        *) prev=$arg ;;        fi
        esac 
         ;;          ;;
       -g | -m | -o)        -g | -m | -o)
         prev=$arg          prev=$arg
Line 2389  func_mode_install () Line 3250  func_mode_install ()
       *)        *)
         # If the previous option needed an argument, then skip it.          # If the previous option needed an argument, then skip it.
         if test -n "$prev"; then          if test -n "$prev"; then
             if test "x$prev" = x-m && test -n "$install_override_mode"; then
               arg2=$install_override_mode
               no_mode=false
             fi
           prev=            prev=
         else          else
           dest=$arg            dest=$arg
Line 2400  func_mode_install () Line 3265  func_mode_install ()
       # Aesthetically quote the argument.        # Aesthetically quote the argument.
       func_quote_for_eval "$arg"        func_quote_for_eval "$arg"
       install_prog="$install_prog $func_quote_for_eval_result"        install_prog="$install_prog $func_quote_for_eval_result"
         if test -n "$arg2"; then
           func_quote_for_eval "$arg2"
         fi
         install_shared_prog="$install_shared_prog $func_quote_for_eval_result"
     done      done
   
     test -z "$install_prog" && \      test -z "$install_prog" && \
Line 2408  func_mode_install () Line 3277  func_mode_install ()
     test -n "$prev" && \      test -n "$prev" && \
       func_fatal_help "the \`$prev' option requires an argument"        func_fatal_help "the \`$prev' option requires an argument"
   
       if test -n "$install_override_mode" && $no_mode; then
         if $install_cp; then :; else
           func_quote_for_eval "$install_override_mode"
           install_shared_prog="$install_shared_prog -m $func_quote_for_eval_result"
         fi
       fi
   
     if test -z "$files"; then      if test -z "$files"; then
       if test -z "$dest"; then        if test -z "$dest"; then
         func_fatal_help "no file or destination specified"          func_fatal_help "no file or destination specified"
Line 2466  func_mode_install () Line 3342  func_mode_install ()
         ;;          ;;
   
       *.la)        *.la)
           func_resolve_sysroot "$file"
           file=$func_resolve_sysroot_result
   
         # Check to see that this really is a libtool archive.          # Check to see that this really is a libtool archive.
         func_lalib_unsafe_p "$file" \          func_lalib_unsafe_p "$file" \
           || func_fatal_help "\`$file' is not a valid libtool archive"            || func_fatal_help "\`$file' is not a valid libtool archive"
Line 2495  func_mode_install () Line 3374  func_mode_install ()
   
         if test -n "$relink_command"; then          if test -n "$relink_command"; then
           # Determine the prefix the user has applied to our future dir.            # Determine the prefix the user has applied to our future dir.
          inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -e "s%$libdir\$%%"`          inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`
   
           # Don't allow the user to place us outside of our expected            # Don't allow the user to place us outside of our expected
           # location b/c this prevents finding dependent libraries that            # location b/c this prevents finding dependent libraries that
Line 2508  func_mode_install () Line 3387  func_mode_install ()
   
           if test -n "$inst_prefix_dir"; then            if test -n "$inst_prefix_dir"; then
             # Stick the inst_prefix_dir data into the link command.              # Stick the inst_prefix_dir data into the link command.
            relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`            relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
           else            else
            relink_command=`$ECHO "X$relink_command" | $Xsed -e "s%@inst_prefix_dir@%%"`            relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
           fi            fi
   
           func_warning "relinking \`$file'"            func_warning "relinking \`$file'"
Line 2528  func_mode_install () Line 3407  func_mode_install ()
           test -n "$relink_command" && srcname="$realname"T            test -n "$relink_command" && srcname="$realname"T
   
           # Install the shared library and build the symlinks.            # Install the shared library and build the symlinks.
          func_show_eval "$install_prog $dir/$srcname $destdir/$realname" \          func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \
               'exit $?'                'exit $?'
           tstripme="$stripme"            tstripme="$stripme"
           case $host_os in            case $host_os in
Line 2668  func_mode_install () Line 3547  func_mode_install ()
             if test -f "$lib"; then              if test -f "$lib"; then
               func_source "$lib"                func_source "$lib"
             fi              fi
            libfile="$libdir/"`$ECHO "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test            libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test
             if test -n "$libdir" && test ! -f "$libfile"; then              if test -n "$libdir" && test ! -f "$libfile"; then
               func_warning "\`$lib' has not been installed in \`$libdir'"                func_warning "\`$lib' has not been installed in \`$libdir'"
               finalize=no                finalize=no
Line 2687  func_mode_install () Line 3566  func_mode_install ()
                 file="$func_basename_result"                  file="$func_basename_result"
                 outputname="$tmpdir/$file"                  outputname="$tmpdir/$file"
                 # Replace the output file specification.                  # Replace the output file specification.
                relink_command=`$ECHO "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`                relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'`
   
                 $opt_silent || {                  $opt_silent || {
                   func_quote_for_expand "$relink_command"                    func_quote_for_expand "$relink_command"
Line 2706  func_mode_install () Line 3585  func_mode_install ()
             }              }
           else            else
             # Install the binary that we compiled earlier.              # Install the binary that we compiled earlier.
            file=`$ECHO "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`            file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"`
           fi            fi
         fi          fi
   
Line 2742  func_mode_install () Line 3621  func_mode_install ()
   
       # Set up the ranlib parameters.        # Set up the ranlib parameters.
       oldlib="$destdir/$name"        oldlib="$destdir/$name"
         func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
         tool_oldlib=$func_to_tool_file_result
   
       func_show_eval "$install_prog \$file \$oldlib" 'exit $?'        func_show_eval "$install_prog \$file \$oldlib" 'exit $?'
   
       if test -n "$stripme" && test -n "$old_striplib"; then        if test -n "$stripme" && test -n "$old_striplib"; then
        func_show_eval "$old_striplib $oldlib" 'exit $?'        func_show_eval "$old_striplib $tool_oldlib" 'exit $?'
       fi        fi
   
       # Do each command in the postinstall commands.        # Do each command in the postinstall commands.
Line 2765  func_mode_install () Line 3646  func_mode_install ()
     fi      fi
 }  }
   
test "$mode" = install && func_mode_install ${1+"$@"}test "$opt_mode" = install && func_mode_install ${1+"$@"}
   
   
 # func_generate_dlsyms outputname originator pic_p  # func_generate_dlsyms outputname originator pic_p
Line 2808  func_generate_dlsyms () Line 3689  func_generate_dlsyms ()
 extern \"C\" {  extern \"C\" {
 #endif  #endif
   
   #if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))
   #pragma GCC diagnostic ignored \"-Wstrict-prototypes\"
   #endif
   
   /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
   #if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
   /* DATA imports from DLLs on WIN32 con't be const, because runtime
      relocations are performed -- see ld's documentation on pseudo-relocs.  */
   # define LT_DLSYM_CONST
   #elif defined(__osf__)
   /* This system does not cope well with relocations in const data.  */
   # define LT_DLSYM_CONST
   #else
   # define LT_DLSYM_CONST const
   #endif
   
 /* External symbol declarations for the compiler. */\  /* External symbol declarations for the compiler. */\
 "  "
   
Line 2817  extern \"C\" { Line 3714  extern \"C\" {
           $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"            $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
   
           # Add our own program objects to the symbol list.            # Add our own program objects to the symbol list.
          progfiles=`$ECHO "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`          progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP`
           for progfile in $progfiles; do            for progfile in $progfiles; do
            func_verbose "extracting global C symbols from \`$progfile'"            func_to_tool_file "$progfile" func_convert_file_msys_to_w32
            $opt_dry_run || eval "$NM $progfile | $global_symbol_pipe >> '$nlist'"            func_verbose "extracting global C symbols from \`$func_to_tool_file_result'"
             $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'"
           done            done
   
           if test -n "$exclude_expsyms"; then            if test -n "$exclude_expsyms"; then
Line 2856  extern \"C\" { Line 3754  extern \"C\" {
               eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'                eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
               eval '$MV "$nlist"T "$nlist"'                eval '$MV "$nlist"T "$nlist"'
               case $host in                case $host in
                *cygwin | *mingw* | *cegcc* )                *cygwin* | *mingw* | *cegcc* )
                   eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'                    eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
                   eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'                    eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
                   ;;                    ;;
Line 2869  extern \"C\" { Line 3767  extern \"C\" {
           func_verbose "extracting global C symbols from \`$dlprefile'"            func_verbose "extracting global C symbols from \`$dlprefile'"
           func_basename "$dlprefile"            func_basename "$dlprefile"
           name="$func_basename_result"            name="$func_basename_result"
          $opt_dry_run || {          case $host in
            eval '$ECHO ": $name " >> "$nlist"'            *cygwin* | *mingw* | *cegcc* )
            eval "$NM $dlprefile 2>/dev/null | $global_symbol_pipe >> '$nlist'"              # if an import library, we need to obtain dlname
          }              if func_win32_import_lib_p "$dlprefile"; then
                 func_tr_sh "$dlprefile"
                 eval "curr_lafile=\$libfile_$func_tr_sh_result"
                 dlprefile_dlbasename=""
                 if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then
                   # Use subshell, to avoid clobbering current variable values
                   dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"`
                   if test -n "$dlprefile_dlname" ; then
                     func_basename "$dlprefile_dlname"
                     dlprefile_dlbasename="$func_basename_result"
                   else
                     # no lafile. user explicitly requested -dlpreopen <import library>.
                     $sharedlib_from_linklib_cmd "$dlprefile"
                     dlprefile_dlbasename=$sharedlib_from_linklib_result
                   fi
                 fi
                 $opt_dry_run || {
                   if test -n "$dlprefile_dlbasename" ; then
                     eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"'
                   else
                     func_warning "Could not compute DLL name from $name"
                     eval '$ECHO ": $name " >> "$nlist"'
                   fi
                   func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
                   eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe |
                     $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'"
                 }
               else # not an import lib
                 $opt_dry_run || {
                   eval '$ECHO ": $name " >> "$nlist"'
                   func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
                   eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
                 }
               fi
             ;;
             *)
               $opt_dry_run || {
                 eval '$ECHO ": $name " >> "$nlist"'
                 func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
                 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
               }
             ;;
           esac
         done          done
   
         $opt_dry_run || {          $opt_dry_run || {
Line 2900  extern \"C\" { Line 3840  extern \"C\" {
           if test -f "$nlist"S; then            if test -f "$nlist"S; then
             eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'              eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
           else            else
            $ECHO '/* NONE */' >> "$output_objdir/$my_dlsyms"            echo '/* NONE */' >> "$output_objdir/$my_dlsyms"
           fi            fi
   
          $ECHO >> "$output_objdir/$my_dlsyms" "\          echo >> "$output_objdir/$my_dlsyms" "\
   
 /* The mapping between symbol names and symbols.  */  /* The mapping between symbol names and symbols.  */
 typedef struct {  typedef struct {
   const char *name;    const char *name;
   void *address;    void *address;
 } lt_dlsymlist;  } lt_dlsymlist;
"extern LT_DLSYM_CONST lt_dlsymlist
          case $host in 
          *cygwin* | *mingw* | *cegcc* ) 
            $ECHO >> "$output_objdir/$my_dlsyms" "\ 
/* DATA imports from DLLs on WIN32 con't be const, because 
   runtime relocations are performed -- see ld's documentation 
   on pseudo-relocs.  */" 
            lt_dlsym_const= ;; 
          *osf5*) 
            echo >> "$output_objdir/$my_dlsyms" "\ 
/* This system does not cope well with relocations in const data */" 
            lt_dlsym_const= ;; 
          *) 
            lt_dlsym_const=const ;; 
          esac 
 
          $ECHO >> "$output_objdir/$my_dlsyms" "\ 
extern $lt_dlsym_const lt_dlsymlist 
 lt_${my_prefix}_LTX_preloaded_symbols[];  lt_${my_prefix}_LTX_preloaded_symbols[];
$lt_dlsym_const lt_dlsymlistLT_DLSYM_CONST lt_dlsymlist
 lt_${my_prefix}_LTX_preloaded_symbols[] =  lt_${my_prefix}_LTX_preloaded_symbols[] =
 {\  {\
   { \"$my_originator\", (void *) 0 },"    { \"$my_originator\", (void *) 0 },"
Line 2942  lt_${my_prefix}_LTX_preloaded_symbols[] = Line 3865  lt_${my_prefix}_LTX_preloaded_symbols[] =
             eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"              eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
             ;;              ;;
           esac            esac
          $ECHO >> "$output_objdir/$my_dlsyms" "\          echo >> "$output_objdir/$my_dlsyms" "\
   {0, (void *) 0}    {0, (void *) 0}
 };  };
   
Line 2969  static const void *lt_preloaded_setup() { Line 3892  static const void *lt_preloaded_setup() {
           # linked before any other PIC object.  But we must not use            # linked before any other PIC object.  But we must not use
           # pic_flag when linking with -static.  The problem exists in            # pic_flag when linking with -static.  The problem exists in
           # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.            # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
          *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)          *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
             pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;              pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
           *-*-hpux*)            *-*-hpux*)
             pic_flag_for_symtable=" $pic_flag"  ;;              pic_flag_for_symtable=" $pic_flag"  ;;
Line 3000  static const void *lt_preloaded_setup() { Line 3923  static const void *lt_preloaded_setup() {
         case $host in          case $host in
         *cygwin* | *mingw* | *cegcc* )          *cygwin* | *mingw* | *cegcc* )
           if test -f "$output_objdir/$my_outputname.def"; then            if test -f "$output_objdir/$my_outputname.def"; then
            compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`            compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
            finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`            finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
           else            else
            compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`            compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"`
            finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`            finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
           fi            fi
           ;;            ;;
         *)          *)
          compile_command=`$ECHO "X$compile_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`          compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"`
          finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$symfileobj%"`          finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
           ;;            ;;
         esac          esac
         ;;          ;;
Line 3023  static const void *lt_preloaded_setup() { Line 3946  static const void *lt_preloaded_setup() {
       # really was required.        # really was required.
   
       # Nullify the symbol file.        # Nullify the symbol file.
      compile_command=`$ECHO "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`      compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"`
      finalize_command=`$ECHO "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`      finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"`
     fi      fi
 }  }
   
Line 3034  static const void *lt_preloaded_setup() { Line 3957  static const void *lt_preloaded_setup() {
 # Need a lot of goo to handle *both* DLLs and import libs  # Need a lot of goo to handle *both* DLLs and import libs
 # Has to be a shell function in order to 'eat' the argument  # Has to be a shell function in order to 'eat' the argument
 # that is supplied when $file_magic_command is called.  # that is supplied when $file_magic_command is called.
   # Despite the name, also deal with 64 bit binaries.
 func_win32_libid ()  func_win32_libid ()
 {  {
   $opt_debug    $opt_debug
Line 3044  func_win32_libid () Line 3968  func_win32_libid ()
     win32_libid_type="x86 archive import"      win32_libid_type="x86 archive import"
     ;;      ;;
   *ar\ archive*) # could be an import, or static    *ar\ archive*) # could be an import, or static
       # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD.
     if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |      if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
       $EGREP 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then       $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then
      win32_nmres=`eval $NM -f posix -A $1 |      func_to_tool_file "$1" func_convert_file_msys_to_w32
       win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" |
         $SED -n -e '          $SED -n -e '
             1,100{              1,100{
                 / I /{                  / I /{
Line 3075  func_win32_libid () Line 4001  func_win32_libid ()
   $ECHO "$win32_libid_type"    $ECHO "$win32_libid_type"
 }  }
   
   # func_cygming_dll_for_implib ARG
   #
   # Platform-specific function to extract the
   # name of the DLL associated with the specified
   # import library ARG.
   # Invoked by eval'ing the libtool variable
   #    $sharedlib_from_linklib_cmd
   # Result is available in the variable
   #    $sharedlib_from_linklib_result
   func_cygming_dll_for_implib ()
   {
     $opt_debug
     sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"`
   }
   
   # func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs
   #
   # The is the core of a fallback implementation of a
   # platform-specific function to extract the name of the
   # DLL associated with the specified import library LIBNAME.
   #
   # SECTION_NAME is either .idata$6 or .idata$7, depending
   # on the platform and compiler that created the implib.
   #
   # Echos the name of the DLL associated with the
   # specified import library.
   func_cygming_dll_for_implib_fallback_core ()
   {
     $opt_debug
     match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"`
     $OBJDUMP -s --section "$1" "$2" 2>/dev/null |
       $SED '/^Contents of section '"$match_literal"':/{
         # Place marker at beginning of archive member dllname section
         s/.*/====MARK====/
         p
         d
       }
       # These lines can sometimes be longer than 43 characters, but
       # are always uninteresting
       /:[  ]*file format pe[i]\{,1\}-/d
       /^In archive [^:]*:/d
       # Ensure marker is printed
       /^====MARK====/p
       # Remove all lines with less than 43 characters
       /^.\{43\}/!d
       # From remaining lines, remove first 43 characters
       s/^.\{43\}//' |
       $SED -n '
         # Join marker and all lines until next marker into a single line
         /^====MARK====/ b para
         H
         $ b para
         b
         :para
         x
         s/\n//g
         # Remove the marker
         s/^====MARK====//
         # Remove trailing dots and whitespace
         s/[\. \t]*$//
         # Print
         /./p' |
       # we now have a list, one entry per line, of the stringified
       # contents of the appropriate section of all members of the
       # archive which possess that section. Heuristic: eliminate
       # all those which have a first or second character that is
       # a '.' (that is, objdump's representation of an unprintable
       # character.) This should work for all archives with less than
       # 0x302f exports -- but will fail for DLLs whose name actually
       # begins with a literal '.' or a single character followed by
       # a '.'.
       #
       # Of those that remain, print the first one.
       $SED -e '/^\./d;/^.\./d;q'
   }
   
   # func_cygming_gnu_implib_p ARG
   # This predicate returns with zero status (TRUE) if
   # ARG is a GNU/binutils-style import library. Returns
   # with nonzero status (FALSE) otherwise.
   func_cygming_gnu_implib_p ()
   {
     $opt_debug
     func_to_tool_file "$1" func_convert_file_msys_to_w32
     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)$'`
     test -n "$func_cygming_gnu_implib_tmp"
   }
   
   # func_cygming_ms_implib_p ARG
   # This predicate returns with zero status (TRUE) if
   # ARG is an MS-style import library. Returns
   # with nonzero status (FALSE) otherwise.
   func_cygming_ms_implib_p ()
   {
     $opt_debug
     func_to_tool_file "$1" func_convert_file_msys_to_w32
     func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
     test -n "$func_cygming_ms_implib_tmp"
   }
   
   # func_cygming_dll_for_implib_fallback ARG
   # Platform-specific function to extract the
   # name of the DLL associated with the specified
   # import library ARG.
   #
   # This fallback implementation is for use when $DLLTOOL
   # does not support the --identify-strict option.
   # Invoked by eval'ing the libtool variable
   #    $sharedlib_from_linklib_cmd
   # Result is available in the variable
   #    $sharedlib_from_linklib_result
   func_cygming_dll_for_implib_fallback ()
   {
     $opt_debug
     if func_cygming_gnu_implib_p "$1" ; then
       # binutils import library
       sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"`
     elif func_cygming_ms_implib_p "$1" ; then
       # ms-generated import library
       sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"`
     else
       # unknown
       sharedlib_from_linklib_result=""
     fi
   }
   
   
 # func_extract_an_archive dir oldlib  # func_extract_an_archive dir oldlib
 func_extract_an_archive ()  func_extract_an_archive ()
 {  {
     $opt_debug      $opt_debug
     f_ex_an_ar_dir="$1"; shift      f_ex_an_ar_dir="$1"; shift
     f_ex_an_ar_oldlib="$1"      f_ex_an_ar_oldlib="$1"
    func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" 'exit $?'    if test "$lock_old_archive_extraction" = yes; then
       lockfile=$f_ex_an_ar_oldlib.lock
       until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
         func_echo "Waiting for $lockfile to be removed"
         sleep 2
       done
     fi
     func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \
                    'stat=$?; rm -f "$lockfile"; exit $stat'
     if test "$lock_old_archive_extraction" = yes; then
       $opt_dry_run || rm -f "$lockfile"
     fi
     if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then      if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
      :       :
     else      else
Line 3154  func_extract_archives () Line 4216  func_extract_archives ()
             darwin_file=              darwin_file=
             darwin_files=              darwin_files=
             for darwin_file in $darwin_filelist; do              for darwin_file in $darwin_filelist; do
              darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`              darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP`
               $LIPO -create -output "$darwin_file" $darwin_files                $LIPO -create -output "$darwin_file" $darwin_files
             done # $darwin_filelist              done # $darwin_filelist
             $RM -rf unfat-$$              $RM -rf unfat-$$
Line 3169  func_extract_archives () Line 4231  func_extract_archives ()
         func_extract_an_archive "$my_xdir" "$my_xabs"          func_extract_an_archive "$my_xdir" "$my_xabs"
         ;;          ;;
       esac        esac
      my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`      my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP`
     done      done
   
     func_extract_archives_result="$my_oldobjs"      func_extract_archives_result="$my_oldobjs"
 }  }
   
   
# func_emit_wrapper [arg=no]
# func_emit_wrapper_part1 [arg=no] 
 #  #
# Emit the first part of a libtool wrapper script on stdout.# Emit a libtool wrapper script on stdout.
For more information, see the description associated withDon't directly open a file because we may want to
# func_emit_wrapper(), below.# incorporate the script contents within a cygwin/mingw
func_emit_wrapper_part1 ()# wrapper executable.  Must ONLY be called from within
 # func_mode_link because it depends on a number of variables
 # set therein.
 #
 # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
 # variable will take.  If 'yes', then the emitted script
 # will assume that the directory in which it is stored is
 # the $objdir directory.  This is a cygwin/mingw-specific
 # behavior.
 func_emit_wrapper ()
 {  {
        func_emit_wrapper_part1_arg1=no        func_emit_wrapper_arg1=${1-no}
        if test -n "$1" ; then 
          func_emit_wrapper_part1_arg1=$1 
        fi 
   
         $ECHO "\          $ECHO "\
 #! $SHELL  #! $SHELL
Line 3203  func_emit_wrapper_part1 () Line 4270  func_emit_wrapper_part1 ()
   
 # Sed substitution that helps us do robust quoting.  It backslashifies  # Sed substitution that helps us do robust quoting.  It backslashifies
 # metacharacters that are still active within double-quoted strings.  # metacharacters that are still active within double-quoted strings.
 Xsed='${SED} -e 1s/^X//'  
 sed_quote_subst='$sed_quote_subst'  sed_quote_subst='$sed_quote_subst'
   
 # Be Bourne compatible  # Be Bourne compatible
Line 3234  if test \"\$libtool_install_magic\" = \"$magic\"; then Line 4300  if test \"\$libtool_install_magic\" = \"$magic\"; then
 else  else
   # When we are sourced in execute mode, \$file and \$ECHO are already set.    # When we are sourced in execute mode, \$file and \$ECHO are already set.
   if test \"\$libtool_execute_magic\" != \"$magic\"; then    if test \"\$libtool_execute_magic\" != \"$magic\"; then
    ECHO=\"$qecho\"    file=\"\$0\""
    file=\"\$0\"
    # Make sure echo works.    qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
    if test \"X\$1\" = X--no-reexec; then    $ECHO "\
      # Discard the --no-reexec flag, and continue.
      shift# A function that is used when there is no print builtin or printf.
    elif test \"X\`{ \$ECHO '\t'; } 2>/dev/null\`\" = 'X\t'; thenfunc_fallback_echo ()
      # Yippee, \$ECHO works!{
      :  eval 'cat <<_LTECHO_EOF
    else\$1
      # Restart under the correct shell, and then maybe \$ECHO will work._LTECHO_EOF'
      exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}}
    fi    ECHO=\"$qECHO\"
  fi\  fi
 
 # Very basic option parsing. These options are (a) specific to
 # the libtool wrapper, (b) are identical between the wrapper
 # /script/ and the wrapper /executable/ which is used only on
 # windows platforms, and (c) all begin with the string "--lt-"
 # (application programs are unlikely to have options which match
 # this pattern).
 #
 # There are only two supported options: --lt-debug and
 # --lt-dump-script. There is, deliberately, no --lt-help.
 #
 # The first argument to this parsing function should be the
 # script's $0 value, followed by "$@".
 lt_option_debug=
 func_parse_lt_options ()
 {
   lt_script_arg0=\$0
   shift
   for lt_opt
   do
     case \"\$lt_opt\" in
     --lt-debug) lt_option_debug=1 ;;
     --lt-dump-script)
         lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\`
         test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=.
         lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\`
         cat \"\$lt_dump_D/\$lt_dump_F\"
         exit 0
       ;;
     --lt-*)
         \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2
         exit 1
       ;;
     esac
   done
 
   # Print the debug banner immediately:
   if test -n \"\$lt_option_debug\"; then
     echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2
   fi
 }
 
 # Used when --lt-debug. Prints its arguments to stdout
 # (redirection is the responsibility of the caller)
 func_lt_dump_args ()
 {
   lt_dump_args_N=1;
   for lt_arg
   do
     \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\"
     lt_dump_args_N=\`expr \$lt_dump_args_N + 1\`
   done
 }
 
 # Core function for launching the target application
 func_exec_program_core ()
 {
 "  "
        $ECHO "\  case $host in
   # Backslashes separate directories on plain windows
   *-*-mingw | *-*-os2* | *-cegcc*)
     $ECHO "\
       if test -n \"\$lt_option_debug\"; then
         \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2
         func_lt_dump_args \${1+\"\$@\"} 1>&2
       fi
       exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
 "
     ;;
   
     *)
       $ECHO "\
         if test -n \"\$lt_option_debug\"; then
           \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2
           func_lt_dump_args \${1+\"\$@\"} 1>&2
         fi
         exec \"\$progdir/\$program\" \${1+\"\$@\"}
   "
       ;;
     esac
     $ECHO "\
         \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2
         exit 1
   }
   
   # A function to encapsulate launching the target application
   # Strips options in the --lt-* namespace from \$@ and
   # launches target application with the remaining arguments.
   func_exec_program ()
   {
     case \" \$* \" in
     *\\ --lt-*)
       for lt_wr_arg
       do
         case \$lt_wr_arg in
         --lt-*) ;;
         *) set x \"\$@\" \"\$lt_wr_arg\"; shift;;
         esac
         shift
       done ;;
     esac
     func_exec_program_core \${1+\"\$@\"}
   }
   
     # Parse options
     func_parse_lt_options \"\$0\" \${1+\"\$@\"}
   
   # Find the directory that this script lives in.    # Find the directory that this script lives in.
  thisdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`  thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\`
   test \"x\$thisdir\" = \"x\$file\" && thisdir=.    test \"x\$thisdir\" = \"x\$file\" && thisdir=.
   
   # Follow symbolic links until we get to the real thisdir.    # Follow symbolic links until we get to the real thisdir.
  file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`  file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\`
   while test -n \"\$file\"; do    while test -n \"\$file\"; do
    destdir=\`\$ECHO \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`    destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\`
   
     # If there was a directory component, then change thisdir.      # If there was a directory component, then change thisdir.
     if test \"x\$destdir\" != \"x\$file\"; then      if test \"x\$destdir\" != \"x\$file\"; then
Line 3268  else Line 4438  else
       esac        esac
     fi      fi
   
    file=\`\$ECHO \"X\$file\" | \$Xsed -e 's%^.*/%%'\`    file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\`
    file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`    file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\`
   done    done
 "  
 }  
 # end: func_emit_wrapper_part1  
   
 # func_emit_wrapper_part2 [arg=no]  
 #  
 # Emit the second part of a libtool wrapper script on stdout.  
 # For more information, see the description associated with  
 # func_emit_wrapper(), below.  
 func_emit_wrapper_part2 ()  
 {  
         func_emit_wrapper_part2_arg1=no  
         if test -n "$1" ; then  
           func_emit_wrapper_part2_arg1=$1  
         fi  
   
         $ECHO "\  
   
   # Usually 'no', except on cygwin/mingw when embedded into    # Usually 'no', except on cygwin/mingw when embedded into
   # the cwrapper.    # the cwrapper.
  WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_part2_arg1  WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1
   if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then    if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then
     # special case for '.'      # special case for '.'
     if test \"\$thisdir\" = \".\"; then      if test \"\$thisdir\" = \".\"; then
Line 3299  func_emit_wrapper_part2 () Line 4452  func_emit_wrapper_part2 ()
     fi      fi
     # remove .libs from thisdir      # remove .libs from thisdir
     case \"\$thisdir\" in      case \"\$thisdir\" in
    *[\\\\/]$objdir ) thisdir=\`\$ECHO \"X\$thisdir\" | \$Xsed -e 's%[\\\\/][^\\\\/]*$%%'\` ;;    *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;;
     $objdir )   thisdir=. ;;      $objdir )   thisdir=. ;;
     esac      esac
   fi    fi
Line 3354  func_emit_wrapper_part2 () Line 4507  func_emit_wrapper_part2 ()
   
   if test -f \"\$progdir/\$program\"; then"    if test -f \"\$progdir/\$program\"; then"
   
           # fixup the dll searchpath if we need to.
           #
           # Fix the DLL searchpath if we need to.  Do this before prepending
           # to shlibpath, because on Windows, both are PATH and uninstalled
           # libraries must come first.
           if test -n "$dllsearchpath"; then
             $ECHO "\
       # Add the dll search path components to the executable PATH
       PATH=$dllsearchpath:\$PATH
   "
           fi
   
         # Export our shlibpath_var if we have one.          # Export our shlibpath_var if we have one.
         if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then          if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
           $ECHO "\            $ECHO "\
Line 3362  func_emit_wrapper_part2 () Line 4527  func_emit_wrapper_part2 ()
   
     # Some systems cannot cope with colon-terminated $shlibpath_var      # Some systems cannot cope with colon-terminated $shlibpath_var
     # The second colon is a workaround for a bug in BeOS R4 sed      # The second colon is a workaround for a bug in BeOS R4 sed
    $shlibpath_var=\`\$ECHO \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`    $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\`
   
     export $shlibpath_var      export $shlibpath_var
 "  "
         fi          fi
   
         # fixup the dll searchpath if we need to.  
         if test -n "$dllsearchpath"; then  
           $ECHO "\  
     # Add the dll search path components to the executable PATH  
     PATH=$dllsearchpath:\$PATH  
 "  
         fi  
   
         $ECHO "\          $ECHO "\
     if test \"\$libtool_execute_magic\" != \"$magic\"; then      if test \"\$libtool_execute_magic\" != \"$magic\"; then
       # Run the actual program with our arguments.        # Run the actual program with our arguments.
"      func_exec_program \${1+\"\$@\"}
        case $host in 
        # Backslashes separate directories on plain windows 
        *-*-mingw | *-*-os2* | *-cegcc*) 
          $ECHO "\ 
      exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} 
" 
          ;; 
 
        *) 
          $ECHO "\ 
      exec \"\$progdir/\$program\" \${1+\"\$@\"} 
" 
          ;; 
        esac 
        $ECHO "\ 
      \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 
      exit 1 
     fi      fi
   else    else
     # The program doesn't exist.      # The program doesn't exist.
     \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2      \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
     \$ECHO \"This script is just a wrapper for \$program.\" 1>&2      \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
    $ECHO \"See the $PACKAGE documentation for more information.\" 1>&2    \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
     exit 1      exit 1
   fi    fi
 fi\  fi\
 "  "
 }  }
 # end: func_emit_wrapper_part2  
   
   
 # func_emit_wrapper [arg=no]  
 #  
 # Emit a libtool wrapper script on stdout.  
 # Don't directly open a file because we may want to  
 # incorporate the script contents within a cygwin/mingw  
 # wrapper executable.  Must ONLY be called from within  
 # func_mode_link because it depends on a number of variables  
 # set therein.  
 #  
 # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR  
 # variable will take.  If 'yes', then the emitted script  
 # will assume that the directory in which it is stored is  
 # the $objdir directory.  This is a cygwin/mingw-specific  
 # behavior.  
 func_emit_wrapper ()  
 {  
         func_emit_wrapper_arg1=no  
         if test -n "$1" ; then  
           func_emit_wrapper_arg1=$1  
         fi  
   
         # split this up so that func_emit_cwrapperexe_src  
         # can call each part independently.  
         func_emit_wrapper_part1 "${func_emit_wrapper_arg1}"  
         func_emit_wrapper_part2 "${func_emit_wrapper_arg1}"  
 }  
   
   
 # func_to_host_path arg  
 #  
 # Convert paths to host format when used with build tools.  
 # Intended for use with "native" mingw (where libtool itself  
 # is running under the msys shell), or in the following cross-  
 # build environments:  
 #    $build          $host  
 #    mingw (msys)    mingw  [e.g. native]  
 #    cygwin          mingw  
 #    *nix + wine     mingw  
 # where wine is equipped with the `winepath' executable.  
 # In the native mingw case, the (msys) shell automatically  
 # converts paths for any non-msys applications it launches,  
 # but that facility isn't available from inside the cwrapper.  
 # Similar accommodations are necessary for $host mingw and  
 # $build cygwin.  Calling this function does no harm for other  
 # $host/$build combinations not listed above.  
 #  
 # ARG is the path (on $build) that should be converted to  
 # the proper representation for $host. The result is stored  
 # in $func_to_host_path_result.  
 func_to_host_path ()  
 {  
   func_to_host_path_result="$1"  
   if test -n "$1" ; then  
     case $host in  
       *mingw* )  
         lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'  
         case $build in  
           *mingw* ) # actually, msys  
             # awkward: cmd appends spaces to result  
             lt_sed_strip_trailing_spaces="s/[ ]*\$//"  
             func_to_host_path_tmp1=`( cmd //c echo "$1" |\  
               $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`  
             func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\  
               $SED -e "$lt_sed_naive_backslashify"`  
             ;;  
           *cygwin* )  
             func_to_host_path_tmp1=`cygpath -w "$1"`  
             func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\  
               $SED -e "$lt_sed_naive_backslashify"`  
             ;;  
           * )  
             # Unfortunately, winepath does not exit with a non-zero  
             # error code, so we are forced to check the contents of  
             # stdout. On the other hand, if the command is not  
             # found, the shell will set an exit code of 127 and print  
             # *an error message* to stdout. So we must check for both  
             # error code of zero AND non-empty stdout, which explains  
             # the odd construction:  
             func_to_host_path_tmp1=`winepath -w "$1" 2>/dev/null`  
             if test "$?" -eq 0 && test -n "${func_to_host_path_tmp1}"; then  
               func_to_host_path_result=`echo "$func_to_host_path_tmp1" |\  
                 $SED -e "$lt_sed_naive_backslashify"`  
             else  
               # Allow warning below.  
               func_to_host_path_result=""  
             fi  
             ;;  
         esac  
         if test -z "$func_to_host_path_result" ; then  
           func_error "Could not determine host path corresponding to"  
           func_error "  '$1'"  
           func_error "Continuing, but uninstalled executables may not work."  
           # Fallback:  
           func_to_host_path_result="$1"  
         fi  
         ;;  
     esac  
   fi  
 }  
 # end: func_to_host_path  
   
 # func_to_host_pathlist arg  
 #  
 # Convert pathlists to host format when used with build tools.  
 # See func_to_host_path(), above. This function supports the  
 # following $build/$host combinations (but does no harm for  
 # combinations not listed here):  
 #    $build          $host  
 #    mingw (msys)    mingw  [e.g. native]  
 #    cygwin          mingw  
 #    *nix + wine     mingw  
 #  
 # Path separators are also converted from $build format to  
 # $host format. If ARG begins or ends with a path separator  
 # character, it is preserved (but converted to $host format)  
 # on output.  
 #  
 # ARG is a pathlist (on $build) that should be converted to  
 # the proper representation on $host. The result is stored  
 # in $func_to_host_pathlist_result.  
 func_to_host_pathlist ()  
 {  
   func_to_host_pathlist_result="$1"  
   if test -n "$1" ; then  
     case $host in  
       *mingw* )  
         lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'  
         # Remove leading and trailing path separator characters from  
         # ARG. msys behavior is inconsistent here, cygpath turns them  
         # into '.;' and ';.', and winepath ignores them completely.  
         func_to_host_pathlist_tmp2="$1"  
         # Once set for this call, this variable should not be  
         # reassigned. It is used in tha fallback case.  
         func_to_host_pathlist_tmp1=`echo "$func_to_host_pathlist_tmp2" |\  
           $SED -e 's|^:*||' -e 's|:*$||'`  
         case $build in  
           *mingw* ) # Actually, msys.  
             # Awkward: cmd appends spaces to result.  
             lt_sed_strip_trailing_spaces="s/[ ]*\$//"  
             func_to_host_pathlist_tmp2=`( cmd //c echo "$func_to_host_pathlist_tmp1" |\  
               $SED -e "$lt_sed_strip_trailing_spaces" ) 2>/dev/null || echo ""`  
             func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\  
               $SED -e "$lt_sed_naive_backslashify"`  
             ;;  
           *cygwin* )  
             func_to_host_pathlist_tmp2=`cygpath -w -p "$func_to_host_pathlist_tmp1"`  
             func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp2" |\  
               $SED -e "$lt_sed_naive_backslashify"`  
             ;;  
           * )  
             # unfortunately, winepath doesn't convert pathlists  
             func_to_host_pathlist_result=""  
             func_to_host_pathlist_oldIFS=$IFS  
             IFS=:  
             for func_to_host_pathlist_f in $func_to_host_pathlist_tmp1 ; do  
               IFS=$func_to_host_pathlist_oldIFS  
               if test -n "$func_to_host_pathlist_f" ; then  
                 func_to_host_path "$func_to_host_pathlist_f"  
                 if test -n "$func_to_host_path_result" ; then  
                   if test -z "$func_to_host_pathlist_result" ; then  
                     func_to_host_pathlist_result="$func_to_host_path_result"  
                   else  
                     func_to_host_pathlist_result="$func_to_host_pathlist_result;$func_to_host_path_result"  
                   fi  
                 fi  
               fi  
               IFS=:  
             done  
             IFS=$func_to_host_pathlist_oldIFS  
             ;;  
         esac  
         if test -z "$func_to_host_pathlist_result" ; then  
           func_error "Could not determine the host path(s) corresponding to"  
           func_error "  '$1'"  
           func_error "Continuing, but uninstalled executables may not work."  
           # Fallback. This may break if $1 contains DOS-style drive  
           # specifications. The fix is not to complicate the expression  
           # below, but for the user to provide a working wine installation  
           # with winepath so that path translation in the cross-to-mingw  
           # case works properly.  
           lt_replace_pathsep_nix_to_dos="s|:|;|g"  
           func_to_host_pathlist_result=`echo "$func_to_host_pathlist_tmp1" |\  
             $SED -e "$lt_replace_pathsep_nix_to_dos"`  
         fi  
         # Now, add the leading and trailing path separators back  
         case "$1" in  
           :* ) func_to_host_pathlist_result=";$func_to_host_pathlist_result"  
             ;;  
         esac  
         case "$1" in  
           *: ) func_to_host_pathlist_result="$func_to_host_pathlist_result;"  
             ;;  
         esac  
         ;;  
     esac  
   fi  
 }  
 # end: func_to_host_pathlist  
   
 # func_emit_cwrapperexe_src  # func_emit_cwrapperexe_src
 # emit the source code for a wrapper executable on stdout  # emit the source code for a wrapper executable on stdout
 # Must ONLY be called from within func_mode_link because  # Must ONLY be called from within func_mode_link because
Line 3626  func_emit_cwrapperexe_src () Line 4566  func_emit_cwrapperexe_src ()
   
    This wrapper executable should never be moved out of the build directory.     This wrapper executable should never be moved out of the build directory.
    If it is, it will not operate correctly.     If it is, it will not operate correctly.
   
    Currently, it simply execs the wrapper *script* "$SHELL $output",  
    but could eventually absorb all of the scripts functionality and  
    exec $objdir/$outputname directly.  
 */  */
 EOF  EOF
             cat <<"EOF"              cat <<"EOF"
   #ifdef _MSC_VER
   # define _CRT_SECURE_NO_DEPRECATE 1
   #endif
 #include <stdio.h>  #include <stdio.h>
 #include <stdlib.h>  #include <stdlib.h>
 #ifdef _MSC_VER  #ifdef _MSC_VER
 # include <direct.h>  # include <direct.h>
 # include <process.h>  # include <process.h>
 # include <io.h>  # include <io.h>
 # define setmode _setmode  
 #else  #else
 # include <unistd.h>  # include <unistd.h>
 # include <stdint.h>  # include <stdint.h>
 # ifdef __CYGWIN__  # ifdef __CYGWIN__
 #  include <io.h>  #  include <io.h>
 #  define HAVE_SETENV  
 #  ifdef __STRICT_ANSI__  
 char *realpath (const char *, char *);  
 int putenv (char *);  
 int setenv (const char *, const char *, int);  
 #  endif  
 # endif  # endif
 #endif  #endif
 #include <malloc.h>  #include <malloc.h>
Line 3662  int setenv (const char *, const char *, int); Line 4594  int setenv (const char *, const char *, int);
 #include <fcntl.h>  #include <fcntl.h>
 #include <sys/stat.h>  #include <sys/stat.h>
   
   /* declarations of non-ANSI functions */
   #if defined(__MINGW32__)
   # ifdef __STRICT_ANSI__
   int _putenv (const char *);
   # endif
   #elif defined(__CYGWIN__)
   # ifdef __STRICT_ANSI__
   char *realpath (const char *, char *);
   int putenv (char *);
   int setenv (const char *, const char *, int);
   # endif
   /* #elif defined (other platforms) ... */
   #endif
   
   /* portability defines, excluding path handling macros */
   #if defined(_MSC_VER)
   # define setmode _setmode
   # define stat    _stat
   # define chmod   _chmod
   # define getcwd  _getcwd
   # define putenv  _putenv
   # define S_IXUSR _S_IEXEC
   # ifndef _INTPTR_T_DEFINED
   #  define _INTPTR_T_DEFINED
   #  define intptr_t int
   # endif
   #elif defined(__MINGW32__)
   # define setmode _setmode
   # define stat    _stat
   # define chmod   _chmod
   # define getcwd  _getcwd
   # define putenv  _putenv
   #elif defined(__CYGWIN__)
   # define HAVE_SETENV
   # define FOPEN_WB "wb"
   /* #elif defined (other platforms) ... */
   #endif
   
 #if defined(PATH_MAX)  #if defined(PATH_MAX)
 # define LT_PATHMAX PATH_MAX  # define LT_PATHMAX PATH_MAX
 #elif defined(MAXPATHLEN)  #elif defined(MAXPATHLEN)
Line 3677  int setenv (const char *, const char *, int); Line 4647  int setenv (const char *, const char *, int);
 # define S_IXGRP 0  # define S_IXGRP 0
 #endif  #endif
   
#ifdef _MSC_VER/* path handling portability macros */
# define S_IXUSR _S_IEXEC 
# define stat _stat 
# ifndef _INTPTR_T_DEFINED 
#  define intptr_t int 
# endif 
#endif 
 
 #ifndef DIR_SEPARATOR  #ifndef DIR_SEPARATOR
 # define DIR_SEPARATOR '/'  # define DIR_SEPARATOR '/'
 # define PATH_SEPARATOR ':'  # define PATH_SEPARATOR ':'
Line 3715  int setenv (const char *, const char *, int); Line 4678  int setenv (const char *, const char *, int);
 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)  # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
 #endif /* PATH_SEPARATOR_2 */  #endif /* PATH_SEPARATOR_2 */
   
 #ifdef __CYGWIN__  
 # define FOPEN_WB "wb"  
 #endif  
   
 #ifndef FOPEN_WB  #ifndef FOPEN_WB
 # define FOPEN_WB "w"  # define FOPEN_WB "w"
 #endif  #endif
Line 3731  int setenv (const char *, const char *, int); Line 4690  int setenv (const char *, const char *, int);
   if (stale) { free ((void *) stale); stale = 0; } \    if (stale) { free ((void *) stale); stale = 0; } \
 } while (0)  } while (0)
   
#undef LTWRAPPER_DEBUGPRINTF#if defined(LT_DEBUGWRAPPER)
#if defined DEBUGWRAPPERstatic int lt_debug = 1;
# define LTWRAPPER_DEBUGPRINTF(args) ltwrapper_debugprintf args 
static void 
ltwrapper_debugprintf (const char *fmt, ...) 
{ 
    va_list args; 
    va_start (args, fmt); 
    (void) vfprintf (stderr, fmt, args); 
    va_end (args); 
} 
 #else  #else
# define LTWRAPPER_DEBUGPRINTF(args)static int lt_debug = 0;
 #endif  #endif
   
const char *program_name = NULL;const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */
   
 void *xmalloc (size_t num);  void *xmalloc (size_t num);
 char *xstrdup (const char *string);  char *xstrdup (const char *string);
Line 3756  char *chase_symlinks (const char *pathspec); Line 4706  char *chase_symlinks (const char *pathspec);
 int make_executable (const char *path);  int make_executable (const char *path);
 int check_executable (const char *path);  int check_executable (const char *path);
 char *strendzap (char *str, const char *pat);  char *strendzap (char *str, const char *pat);
void lt_fatal (const char *message, ...);void lt_debugprintf (const char *file, int line, const char *fmt, ...);
 void lt_fatal (const char *file, int line, const char *message, ...);
 static const char *nonnull (const char *s);
 static const char *nonempty (const char *s);
 void lt_setenv (const char *name, const char *value);  void lt_setenv (const char *name, const char *value);
 char *lt_extend_str (const char *orig_value, const char *add, int to_end);  char *lt_extend_str (const char *orig_value, const char *add, int to_end);
 void lt_opt_process_env_set (const char *arg);  
 void lt_opt_process_env_prepend (const char *arg);  
 void lt_opt_process_env_append (const char *arg);  
 int lt_split_name_value (const char *arg, char** name, char** value);  
 void lt_update_exe_path (const char *name, const char *value);  void lt_update_exe_path (const char *name, const char *value);
 void lt_update_lib_path (const char *name, const char *value);  void lt_update_lib_path (const char *name, const char *value);
char **prepare_spawn (char **argv);
static const char *script_text_part1 =void lt_dump_script (FILE *f);
 EOF  EOF
   
             func_emit_wrapper_part1 yes |  
                 $SED -e 's/\([\\"]\)/\\\1/g' \  
                      -e 's/^/  "/' -e 's/$/\\n"/'  
             echo ";"  
             cat <<EOF              cat <<EOF
volatile const char * MAGIC_EXE = "$magic_exe";
static const char *script_text_part2 = 
EOF 
            func_emit_wrapper_part2 yes | 
                $SED -e 's/\([\\"]\)/\\\1/g' \ 
                     -e 's/^/  "/' -e 's/$/\\n"/' 
            echo ";" 
 
            cat <<EOF 
const char * MAGIC_EXE = "$magic_exe"; 
 const char * LIB_PATH_VARNAME = "$shlibpath_var";  const char * LIB_PATH_VARNAME = "$shlibpath_var";
 EOF  EOF
   
             if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then              if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
              func_to_host_pathlist "$temp_rpath"              func_to_host_path "$temp_rpath"
               cat <<EOF                cat <<EOF
const char * LIB_PATH_VALUE   = "$func_to_host_pathlist_result";const char * LIB_PATH_VALUE   = "$func_to_host_path_result";
 EOF  EOF
             else              else
               cat <<"EOF"                cat <<"EOF"
Line 3799  EOF Line 4735  EOF
             fi              fi
   
             if test -n "$dllsearchpath"; then              if test -n "$dllsearchpath"; then
              func_to_host_pathlist "$dllsearchpath:"              func_to_host_path "$dllsearchpath:"
               cat <<EOF                cat <<EOF
 const char * EXE_PATH_VARNAME = "PATH";  const char * EXE_PATH_VARNAME = "PATH";
const char * EXE_PATH_VALUE   = "$func_to_host_pathlist_result";const char * EXE_PATH_VALUE   = "$func_to_host_path_result";
 EOF  EOF
             else              else
               cat <<"EOF"                cat <<"EOF"
Line 3825  EOF Line 4761  EOF
             cat <<"EOF"              cat <<"EOF"
   
 #define LTWRAPPER_OPTION_PREFIX         "--lt-"  #define LTWRAPPER_OPTION_PREFIX         "--lt-"
 #define LTWRAPPER_OPTION_PREFIX_LENGTH  5  
   
 static const size_t opt_prefix_len         = LTWRAPPER_OPTION_PREFIX_LENGTH;  
 static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;  static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
   
 static const char *dumpscript_opt       = LTWRAPPER_OPTION_PREFIX "dump-script";  static const char *dumpscript_opt       = LTWRAPPER_OPTION_PREFIX "dump-script";
   static const char *debug_opt            = LTWRAPPER_OPTION_PREFIX "debug";
   
 static const size_t env_set_opt_len     = LTWRAPPER_OPTION_PREFIX_LENGTH + 7;  
 static const char *env_set_opt          = LTWRAPPER_OPTION_PREFIX "env-set";  
   /* argument is putenv-style "foo=bar", value of foo is set to bar */  
   
 static const size_t env_prepend_opt_len = LTWRAPPER_OPTION_PREFIX_LENGTH + 11;  
 static const char *env_prepend_opt      = LTWRAPPER_OPTION_PREFIX "env-prepend";  
   /* argument is putenv-style "foo=bar", new value of foo is bar${foo} */  
   
 static const size_t env_append_opt_len  = LTWRAPPER_OPTION_PREFIX_LENGTH + 10;  
 static const char *env_append_opt       = LTWRAPPER_OPTION_PREFIX "env-append";  
   /* argument is putenv-style "foo=bar", new value of foo is ${foo}bar */  
   
 int  int
 main (int argc, char *argv[])  main (int argc, char *argv[])
 {  {
Line 3859  main (int argc, char *argv[]) Line 4781  main (int argc, char *argv[])
   int i;    int i;
   
   program_name = (char *) xstrdup (base_name (argv[0]));    program_name = (char *) xstrdup (base_name (argv[0]));
  LTWRAPPER_DEBUGPRINTF (("(main) argv[0]      : %s\n", argv[0]));  newargz = XMALLOC (char *, argc + 1);
  LTWRAPPER_DEBUGPRINTF (("(main) program_name : %s\n", program_name)); 
   
  /* very simple arg parsing; don't want to rely on getopt */  /* very simple arg parsing; don't want to rely on getopt
    * also, copy all non cwrapper options to newargz, except
    * argz[0], which is handled differently
    */
   newargc=0;
   for (i = 1; i < argc; i++)    for (i = 1; i < argc; i++)
     {      {
       if (strcmp (argv[i], dumpscript_opt) == 0)        if (strcmp (argv[i], dumpscript_opt) == 0)
Line 3876  EOF Line 4801  EOF
               esac                esac
   
             cat <<"EOF"              cat <<"EOF"
          printf ("%s", script_text_part1);          lt_dump_script (stdout);
          printf ("%s", script_text_part2); 
           return 0;            return 0;
         }          }
         if (strcmp (argv[i], debug_opt) == 0)
           {
             lt_debug = 1;
             continue;
           }
         if (strcmp (argv[i], ltwrapper_option_prefix) == 0)
           {
             /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
                namespace, but it is not one of the ones we know about and
                have already dealt with, above (inluding dump-script), then
                report an error. Otherwise, targets might begin to believe
                they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
                namespace. The first time any user complains about this, we'll
                need to make LTWRAPPER_OPTION_PREFIX a configure-time option
                or a configure.ac-settable value.
              */
             lt_fatal (__FILE__, __LINE__,
                       "unrecognized %s option: '%s'",
                       ltwrapper_option_prefix, argv[i]);
           }
         /* otherwise ... */
         newargz[++newargc] = xstrdup (argv[i]);
     }      }
     newargz[++newargc] = NULL;
   
  newargz = XMALLOC (char *, argc + 1);EOF
             cat <<EOF
   /* The GNU banner must be the first non-error debug message */
   lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\n");
 EOF
             cat <<"EOF"
   lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]);
   lt_debugprintf (__FILE__, __LINE__, "(main) program_name: %s\n", program_name);
 
   tmp_pathspec = find_executable (argv[0]);    tmp_pathspec = find_executable (argv[0]);
   if (tmp_pathspec == NULL)    if (tmp_pathspec == NULL)
    lt_fatal ("Couldn't find %s", argv[0]);    lt_fatal (__FILE__, __LINE__, "couldn't find %s", argv[0]);
  LTWRAPPER_DEBUGPRINTF (("(main) found exe (before symlink chase) at : %s\n",  lt_debugprintf (__FILE__, __LINE__,
                          tmp_pathspec));                  "(main) found exe (before symlink chase) at: %s\n",
                   tmp_pathspec);
   
   actual_cwrapper_path = chase_symlinks (tmp_pathspec);    actual_cwrapper_path = chase_symlinks (tmp_pathspec);
  LTWRAPPER_DEBUGPRINTF (("(main) found exe (after symlink chase) at : %s\n",  lt_debugprintf (__FILE__, __LINE__,
                          actual_cwrapper_path));                  "(main) found exe (after symlink chase) at: %s\n",
                   actual_cwrapper_path);
   XFREE (tmp_pathspec);    XFREE (tmp_pathspec);
   
  actual_cwrapper_name = xstrdup( base_name (actual_cwrapper_path));  actual_cwrapper_name = xstrdup (base_name (actual_cwrapper_path));
   strendzap (actual_cwrapper_path, actual_cwrapper_name);    strendzap (actual_cwrapper_path, actual_cwrapper_name);
   
   /* wrapper name transforms */    /* wrapper name transforms */
Line 3912  EOF Line 4869  EOF
   target_name = tmp_pathspec;    target_name = tmp_pathspec;
   tmp_pathspec = 0;    tmp_pathspec = 0;
   
  LTWRAPPER_DEBUGPRINTF (("(main) libtool target name: %s\n",  lt_debugprintf (__FILE__, __LINE__,
                          target_name));                  "(main) libtool target name: %s\n",
                   target_name);
 EOF  EOF
   
             cat <<EOF              cat <<EOF
Line 3963  EOF Line 4921  EOF
   
   lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */    lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
   lt_setenv ("DUALCASE", "1");  /* for MSK sh */    lt_setenv ("DUALCASE", "1");  /* for MSK sh */
  lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);  /* Update the DLL searchpath.  EXE_PATH_VALUE ($dllsearchpath) must
      be prepended before (that is, appear after) LIB_PATH_VALUE ($temp_rpath)
      because on Windows, both *_VARNAMEs are PATH but uninstalled
      libraries must come first. */
   lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);    lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
     lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
   
  newargc=0;  lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n",
  for (i = 1; i < argc; i++)                  nonnull (lt_argv_zero));
    { 
      if (strncmp (argv[i], env_set_opt, env_set_opt_len) == 0) 
        { 
          if (argv[i][env_set_opt_len] == '=') 
            { 
              const char *p = argv[i] + env_set_opt_len + 1; 
              lt_opt_process_env_set (p); 
            } 
          else if (argv[i][env_set_opt_len] == '\0' && i + 1 < argc) 
            { 
              lt_opt_process_env_set (argv[++i]); /* don't copy */ 
            } 
          else 
            lt_fatal ("%s missing required argument", env_set_opt); 
          continue; 
        } 
      if (strncmp (argv[i], env_prepend_opt, env_prepend_opt_len) == 0) 
        { 
          if (argv[i][env_prepend_opt_len] == '=') 
            { 
              const char *p = argv[i] + env_prepend_opt_len + 1; 
              lt_opt_process_env_prepend (p); 
            } 
          else if (argv[i][env_prepend_opt_len] == '\0' && i + 1 < argc) 
            { 
              lt_opt_process_env_prepend (argv[++i]); /* don't copy */ 
            } 
          else 
            lt_fatal ("%s missing required argument", env_prepend_opt); 
          continue; 
        } 
      if (strncmp (argv[i], env_append_opt, env_append_opt_len) == 0) 
        { 
          if (argv[i][env_append_opt_len] == '=') 
            { 
              const char *p = argv[i] + env_append_opt_len + 1; 
              lt_opt_process_env_append (p); 
            } 
          else if (argv[i][env_append_opt_len] == '\0' && i + 1 < argc) 
            { 
              lt_opt_process_env_append (argv[++i]); /* don't copy */ 
            } 
          else 
            lt_fatal ("%s missing required argument", env_append_opt); 
          continue; 
        } 
      if (strncmp (argv[i], ltwrapper_option_prefix, opt_prefix_len) == 0) 
        { 
          /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX 
             namespace, but it is not one of the ones we know about and 
             have already dealt with, above (inluding dump-script), then 
             report an error. Otherwise, targets might begin to believe 
             they are allowed to use options in the LTWRAPPER_OPTION_PREFIX 
             namespace. The first time any user complains about this, we'll 
             need to make LTWRAPPER_OPTION_PREFIX a configure-time option 
             or a configure.ac-settable value. 
           */ 
          lt_fatal ("Unrecognized option in %s namespace: '%s'", 
                    ltwrapper_option_prefix, argv[i]); 
        } 
      /* otherwise ... */ 
      newargz[++newargc] = xstrdup (argv[i]); 
    } 
  newargz[++newargc] = NULL; 
 
  LTWRAPPER_DEBUGPRINTF     (("(main) lt_argv_zero : %s\n", (lt_argv_zero ? lt_argv_zero : "<NULL>"))); 
   for (i = 0; i < newargc; i++)    for (i = 0; i < newargc; i++)
     {      {
      LTWRAPPER_DEBUGPRINTF (("(main) newargz[%d]   : %s\n", i, (newargz[i] ? newargz[i] : "<NULL>")));      lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n",
                       i, nonnull (newargz[i]));
     }      }
   
 EOF  EOF
Line 4045  EOF Line 4942  EOF
               mingw*)                mingw*)
                 cat <<"EOF"                  cat <<"EOF"
   /* execv doesn't actually work on mingw as expected on unix */    /* execv doesn't actually work on mingw as expected on unix */
     newargz = prepare_spawn (newargz);
   rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);    rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
   if (rval == -1)    if (rval == -1)
     {      {
       /* failed to start process */        /* failed to start process */
      LTWRAPPER_DEBUGPRINTF (("(main) failed to launch target \"%s\": errno = %d\n", lt_argv_zero, errno));      lt_debugprintf (__FILE__, __LINE__,
                       "(main) failed to launch target \"%s\": %s\n",
                       lt_argv_zero, nonnull (strerror (errno)));
       return 127;        return 127;
     }      }
   return rval;    return rval;
Line 4071  xmalloc (size_t num) Line 4971  xmalloc (size_t num)
 {  {
   void *p = (void *) malloc (num);    void *p = (void *) malloc (num);
   if (!p)    if (!p)
    lt_fatal ("Memory exhausted");    lt_fatal (__FILE__, __LINE__, "memory exhausted");
   
   return p;    return p;
 }  }
Line 4105  check_executable (const char *path) Line 5005  check_executable (const char *path)
 {  {
   struct stat st;    struct stat st;
   
  LTWRAPPER_DEBUGPRINTF (("(check_executable)  : %s\n",  lt_debugprintf (__FILE__, __LINE__, "(check_executable): %s\n",
                          path ? (*path ? path : "EMPTY!") : "NULL!"));                  nonempty (path));
   if ((!path) || (!*path))    if ((!path) || (!*path))
     return 0;      return 0;
   
Line 4123  make_executable (const char *path) Line 5023  make_executable (const char *path)
   int rval = 0;    int rval = 0;
   struct stat st;    struct stat st;
   
  LTWRAPPER_DEBUGPRINTF (("(make_executable)   : %s\n",  lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n",
                          path ? (*path ? path : "EMPTY!") : "NULL!"));                  nonempty (path));
   if ((!path) || (!*path))    if ((!path) || (!*path))
     return 0;      return 0;
   
Line 4150  find_executable (const char *wrapper) Line 5050  find_executable (const char *wrapper)
   int tmp_len;    int tmp_len;
   char *concat_name;    char *concat_name;
   
  LTWRAPPER_DEBUGPRINTF (("(find_executable)   : %s\n",  lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n",
                          wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!"));                  nonempty (wrapper));
   
   if ((wrapper == NULL) || (*wrapper == '\0'))    if ((wrapper == NULL) || (*wrapper == '\0'))
     return NULL;      return NULL;
Line 4204  find_executable (const char *wrapper) Line 5104  find_executable (const char *wrapper)
                 {                  {
                   /* empty path: current directory */                    /* empty path: current directory */
                   if (getcwd (tmp, LT_PATHMAX) == NULL)                    if (getcwd (tmp, LT_PATHMAX) == NULL)
                    lt_fatal ("getcwd failed");                    lt_fatal (__FILE__, __LINE__, "getcwd failed: %s",
                               nonnull (strerror (errno)));
                   tmp_len = strlen (tmp);                    tmp_len = strlen (tmp);
                   concat_name =                    concat_name =
                     XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);                      XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
Line 4229  find_executable (const char *wrapper) Line 5130  find_executable (const char *wrapper)
     }      }
   /* Relative path | not found in path: prepend cwd */    /* Relative path | not found in path: prepend cwd */
   if (getcwd (tmp, LT_PATHMAX) == NULL)    if (getcwd (tmp, LT_PATHMAX) == NULL)
    lt_fatal ("getcwd failed");    lt_fatal (__FILE__, __LINE__, "getcwd failed: %s",
               nonnull (strerror (errno)));
   tmp_len = strlen (tmp);    tmp_len = strlen (tmp);
   concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);    concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
   memcpy (concat_name, tmp, tmp_len);    memcpy (concat_name, tmp, tmp_len);
Line 4255  chase_symlinks (const char *pathspec) Line 5157  chase_symlinks (const char *pathspec)
   int has_symlinks = 0;    int has_symlinks = 0;
   while (strlen (tmp_pathspec) && !has_symlinks)    while (strlen (tmp_pathspec) && !has_symlinks)
     {      {
      LTWRAPPER_DEBUGPRINTF (("checking path component for symlinks: %s\n",      lt_debugprintf (__FILE__, __LINE__,
                              tmp_pathspec));                      "checking path component for symlinks: %s\n",
                       tmp_pathspec);
       if (lstat (tmp_pathspec, &s) == 0)        if (lstat (tmp_pathspec, &s) == 0)
         {          {
           if (S_ISLNK (s.st_mode) != 0)            if (S_ISLNK (s.st_mode) != 0)
Line 4278  chase_symlinks (const char *pathspec) Line 5181  chase_symlinks (const char *pathspec)
         }          }
       else        else
         {          {
          char *errstr = strerror (errno);          lt_fatal (__FILE__, __LINE__,
          lt_fatal ("Error accessing file %s (%s)", tmp_pathspec, errstr);                    "error accessing file \"%s\": %s",
                     tmp_pathspec, nonnull (strerror (errno)));
         }          }
     }      }
   XFREE (tmp_pathspec);    XFREE (tmp_pathspec);
Line 4292  chase_symlinks (const char *pathspec) Line 5196  chase_symlinks (const char *pathspec)
   tmp_pathspec = realpath (pathspec, buf);    tmp_pathspec = realpath (pathspec, buf);
   if (tmp_pathspec == 0)    if (tmp_pathspec == 0)
     {      {
      lt_fatal ("Could not follow symlinks for %s", pathspec);      lt_fatal (__FILE__, __LINE__,
                 "could not follow symlinks for %s", pathspec);
     }      }
   return xstrdup (tmp_pathspec);    return xstrdup (tmp_pathspec);
 #endif  #endif
Line 4318  strendzap (char *str, const char *pat) Line 5223  strendzap (char *str, const char *pat)
   return str;    return str;
 }  }
   
   void
   lt_debugprintf (const char *file, int line, const char *fmt, ...)
   {
     va_list args;
     if (lt_debug)
       {
         (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line);
         va_start (args, fmt);
         (void) vfprintf (stderr, fmt, args);
         va_end (args);
       }
   }
   
 static void  static void
lt_error_core (int exit_status, const char *mode,lt_error_core (int exit_status, const char *file,
                int line, const char *mode,
                const char *message, va_list ap)                 const char *message, va_list ap)
 {  {
  fprintf (stderr, "%s: %s: ", program_name, mode);  fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode);
   vfprintf (stderr, message, ap);    vfprintf (stderr, message, ap);
   fprintf (stderr, ".\n");    fprintf (stderr, ".\n");
   
Line 4331  lt_error_core (int exit_status, const char *mode, Line 5250  lt_error_core (int exit_status, const char *mode,
 }  }
   
 void  void
lt_fatal (const char *message, ...)lt_fatal (const char *file, int line, const char *message, ...)
 {  {
   va_list ap;    va_list ap;
   va_start (ap, message);    va_start (ap, message);
  lt_error_core (EXIT_FAILURE, "FATAL", message, ap);  lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap);
   va_end (ap);    va_end (ap);
 }  }
   
   static const char *
   nonnull (const char *s)
   {
     return s ? s : "(null)";
   }
   
   static const char *
   nonempty (const char *s)
   {
     return (s && !*s) ? "(empty)" : nonnull (s);
   }
   
 void  void
 lt_setenv (const char *name, const char *value)  lt_setenv (const char *name, const char *value)
 {  {
  LTWRAPPER_DEBUGPRINTF (("(lt_setenv) setting '%s' to '%s'\n",  lt_debugprintf (__FILE__, __LINE__,
                          (name ? name : "<NULL>"),                  "(lt_setenv) setting '%s' to '%s'\n",
                          (value ? value : "<NULL>")));                  nonnull (name), nonnull (value));
   {    {
 #ifdef HAVE_SETENV  #ifdef HAVE_SETENV
     /* always make a copy, for consistency with !HAVE_SETENV */      /* always make a copy, for consistency with !HAVE_SETENV */
Line 4389  lt_extend_str (const char *orig_value, const char *add Line 5320  lt_extend_str (const char *orig_value, const char *add
   return new_value;    return new_value;
 }  }
   
 int  
 lt_split_name_value (const char *arg, char** name, char** value)  
 {  
   const char *p;  
   int len;  
   if (!arg || !*arg)  
     return 1;  
   
   p = strchr (arg, (int)'=');  
   
   if (!p)  
     return 1;  
   
   *value = xstrdup (++p);  
   
   len = strlen (arg) - strlen (*value);  
   *name = XMALLOC (char, len);  
   strncpy (*name, arg, len-1);  
   (*name)[len - 1] = '\0';  
   
   return 0;  
 }  
   
 void  void
 lt_opt_process_env_set (const char *arg)  
 {  
   char *name = NULL;  
   char *value = NULL;  
   
   if (lt_split_name_value (arg, &name, &value) != 0)  
     {  
       XFREE (name);  
       XFREE (value);  
       lt_fatal ("bad argument for %s: '%s'", env_set_opt, arg);  
     }  
   
   lt_setenv (name, value);  
   XFREE (name);  
   XFREE (value);  
 }  
   
 void  
 lt_opt_process_env_prepend (const char *arg)  
 {  
   char *name = NULL;  
   char *value = NULL;  
   char *new_value = NULL;  
   
   if (lt_split_name_value (arg, &name, &value) != 0)  
     {  
       XFREE (name);  
       XFREE (value);  
       lt_fatal ("bad argument for %s: '%s'", env_prepend_opt, arg);  
     }  
   
   new_value = lt_extend_str (getenv (name), value, 0);  
   lt_setenv (name, new_value);  
   XFREE (new_value);  
   XFREE (name);  
   XFREE (value);  
 }  
   
 void  
 lt_opt_process_env_append (const char *arg)  
 {  
   char *name = NULL;  
   char *value = NULL;  
   char *new_value = NULL;  
   
   if (lt_split_name_value (arg, &name, &value) != 0)  
     {  
       XFREE (name);  
       XFREE (value);  
       lt_fatal ("bad argument for %s: '%s'", env_append_opt, arg);  
     }  
   
   new_value = lt_extend_str (getenv (name), value, 1);  
   lt_setenv (name, new_value);  
   XFREE (new_value);  
   XFREE (name);  
   XFREE (value);  
 }  
   
 void  
 lt_update_exe_path (const char *name, const char *value)  lt_update_exe_path (const char *name, const char *value)
 {  {
  LTWRAPPER_DEBUGPRINTF (("(lt_update_exe_path) modifying '%s' by prepending '%s'\n",  lt_debugprintf (__FILE__, __LINE__,
                          (name ? name : "<NULL>"),                  "(lt_update_exe_path) modifying '%s' by prepending '%s'\n",
                          (value ? value : "<NULL>")));                  nonnull (name), nonnull (value));
   
   if (name && *name && value && *value)    if (name && *name && value && *value)
     {      {
Line 4496  lt_update_exe_path (const char *name, const char *valu Line 5344  lt_update_exe_path (const char *name, const char *valu
 void  void
 lt_update_lib_path (const char *name, const char *value)  lt_update_lib_path (const char *name, const char *value)
 {  {
  LTWRAPPER_DEBUGPRINTF (("(lt_update_lib_path) modifying '%s' by prepending '%s'\n",  lt_debugprintf (__FILE__, __LINE__,
                          (name ? name : "<NULL>"),                  "(lt_update_lib_path) modifying '%s' by prepending '%s'\n",
                          (value ? value : "<NULL>")));                  nonnull (name), nonnull (value));
   
   if (name && *name && value && *value)    if (name && *name && value && *value)
     {      {
Line 4508  lt_update_lib_path (const char *name, const char *valu Line 5356  lt_update_lib_path (const char *name, const char *valu
     }      }
 }  }
   
   EOF
               case $host_os in
                 mingw*)
                   cat <<"EOF"
   
   /* Prepares an argument vector before calling spawn().
      Note that spawn() does not by itself call the command interpreter
        (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") :
         ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
            GetVersionEx(&v);
            v.dwPlatformId == VER_PLATFORM_WIN32_NT;
         }) ? "cmd.exe" : "command.com").
      Instead it simply concatenates the arguments, separated by ' ', and calls
      CreateProcess().  We must quote the arguments since Win32 CreateProcess()
      interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a
      special way:
      - Space and tab are interpreted as delimiters. They are not treated as
        delimiters if they are surrounded by double quotes: "...".
      - Unescaped double quotes are removed from the input. Their only effect is
        that within double quotes, space and tab are treated like normal
        characters.
      - Backslashes not followed by double quotes are not special.
      - But 2*n+1 backslashes followed by a double quote become
        n backslashes followed by a double quote (n >= 0):
          \" -> "
          \\\" -> \"
          \\\\\" -> \\"
    */
   #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"
   #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"
   char **
   prepare_spawn (char **argv)
   {
     size_t argc;
     char **new_argv;
     size_t i;
   
     /* Count number of arguments.  */
     for (argc = 0; argv[argc] != NULL; argc++)
       ;
   
     /* Allocate new argument vector.  */
     new_argv = XMALLOC (char *, argc + 1);
   
     /* Put quoted arguments into the new argument vector.  */
     for (i = 0; i < argc; i++)
       {
         const char *string = argv[i];
   
         if (string[0] == '\0')
           new_argv[i] = xstrdup ("\"\"");
         else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL)
           {
             int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL);
             size_t length;
             unsigned int backslashes;
             const char *s;
             char *quoted_string;
             char *p;
   
             length = 0;
             backslashes = 0;
             if (quote_around)
               length++;
             for (s = string; *s != '\0'; s++)
               {
                 char c = *s;
                 if (c == '"')
                   length += backslashes + 1;
                 length++;
                 if (c == '\\')
                   backslashes++;
                 else
                   backslashes = 0;
               }
             if (quote_around)
               length += backslashes + 1;
   
             quoted_string = XMALLOC (char, length + 1);
   
             p = quoted_string;
             backslashes = 0;
             if (quote_around)
               *p++ = '"';
             for (s = string; *s != '\0'; s++)
               {
                 char c = *s;
                 if (c == '"')
                   {
                     unsigned int j;
                     for (j = backslashes + 1; j > 0; j--)
                       *p++ = '\\';
                   }
                 *p++ = c;
                 if (c == '\\')
                   backslashes++;
                 else
                   backslashes = 0;
               }
             if (quote_around)
               {
                 unsigned int j;
                 for (j = backslashes; j > 0; j--)
                   *p++ = '\\';
                 *p++ = '"';
               }
             *p = '\0';
   
             new_argv[i] = quoted_string;
           }
         else
           new_argv[i] = (char *) string;
       }
     new_argv[argc] = NULL;
   
     return new_argv;
   }
 EOF  EOF
                   ;;
               esac
   
               cat <<"EOF"
   void lt_dump_script (FILE* f)
   {
   EOF
               func_emit_wrapper yes |
                 $SED -n -e '
   s/^\(.\{79\}\)\(..*\)/\1\
   \2/
   h
   s/\([\\"]\)/\\\1/g
   s/$/\\n/
   s/\([^\n]*\).*/  fputs ("\1", f);/p
   g
   D'
               cat <<"EOF"
 }  }
   EOF
   }
 # end: func_emit_cwrapperexe_src  # end: func_emit_cwrapperexe_src
   
   # func_win32_import_lib_p ARG
   # True if ARG is an import lib, as indicated by $file_magic_cmd
   func_win32_import_lib_p ()
   {
       $opt_debug
       case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in
       *import*) : ;;
       *) false ;;
       esac
   }
   
 # func_mode_link arg...  # func_mode_link arg...
 func_mode_link ()  func_mode_link ()
 {  {
Line 4557  func_mode_link () Line 5552  func_mode_link ()
     new_inherited_linker_flags=      new_inherited_linker_flags=
   
     avoid_version=no      avoid_version=no
       bindir=
     dlfiles=      dlfiles=
     dlprefiles=      dlprefiles=
     dlself=no      dlself=no
Line 4637  func_mode_link () Line 5633  func_mode_link ()
       shift        shift
       func_quote_for_eval "$arg"        func_quote_for_eval "$arg"
       qarg=$func_quote_for_eval_unquoted_result        qarg=$func_quote_for_eval_unquoted_result
      func_append libtool_args " $func_quote_for_eval_result"      libtool_args="$libtool_args $func_quote_for_eval_result"
   
       # If the previous option needs an argument, assign it.        # If the previous option needs an argument, assign it.
       if test -n "$prev"; then        if test -n "$prev"; then
         case $prev in          case $prev in
         output)          output)
          func_append compile_command " @OUTPUT@"          compile_command="$compile_command @OUTPUT@"
          func_append finalize_command " @OUTPUT@"          finalize_command="$finalize_command @OUTPUT@"
           ;;            ;;
         esac          esac
   
         case $prev in          case $prev in
           bindir)
             bindir="$arg"
             prev=
             continue
             ;;
         dlfiles|dlprefiles)          dlfiles|dlprefiles)
           if test "$preload" = no; then            if test "$preload" = no; then
             # Add the symbol object into the linking commands.              # Add the symbol object into the linking commands.
            func_append compile_command " @SYMFILE@"            compile_command="$compile_command @SYMFILE@"
            func_append finalize_command " @SYMFILE@"            finalize_command="$finalize_command @SYMFILE@"
             preload=yes              preload=yes
           fi            fi
           case $arg in            case $arg in
Line 4771  func_mode_link () Line 5772  func_mode_link ()
                   fi                    fi
   
                   # A PIC object.                    # A PIC object.
                  func_append libobjs " $pic_object"                  libobjs="$libobjs $pic_object"
                   arg="$pic_object"                    arg="$pic_object"
                 fi                  fi
   
Line 4781  func_mode_link () Line 5782  func_mode_link ()
                   non_pic_object="$xdir$non_pic_object"                    non_pic_object="$xdir$non_pic_object"
   
                   # A standard non-PIC object                    # A standard non-PIC object
                  func_append non_pic_objects " $non_pic_object"                  non_pic_objects="$non_pic_objects $non_pic_object"
                   if test -z "$pic_object" || test "$pic_object" = none ; then                    if test -z "$pic_object" || test "$pic_object" = none ; then
                     arg="$non_pic_object"                      arg="$non_pic_object"
                   fi                    fi
Line 4789  func_mode_link () Line 5790  func_mode_link ()
                   # If the PIC object exists, use it instead.                    # If the PIC object exists, use it instead.
                   # $xdir was prepended to $pic_object above.                    # $xdir was prepended to $pic_object above.
                   non_pic_object="$pic_object"                    non_pic_object="$pic_object"
                  func_append non_pic_objects " $non_pic_object"                  non_pic_objects="$non_pic_objects $non_pic_object"
                 fi                  fi
               else                else
                 # Only an error if not doing a dry-run.                  # Only an error if not doing a dry-run.
Line 4801  func_mode_link () Line 5802  func_mode_link ()
                   func_lo2o "$arg"                    func_lo2o "$arg"
                   pic_object=$xdir$objdir/$func_lo2o_result                    pic_object=$xdir$objdir/$func_lo2o_result
                   non_pic_object=$xdir$func_lo2o_result                    non_pic_object=$xdir$func_lo2o_result
                  func_append libobjs " $pic_object"                  libobjs="$libobjs $pic_object"
                  func_append non_pic_objects " $non_pic_object"                  non_pic_objects="$non_pic_objects $non_pic_object"
                 else                  else
                   func_fatal_error "\`$arg' is not a valid libtool object"                    func_fatal_error "\`$arg' is not a valid libtool object"
                 fi                  fi
Line 4861  func_mode_link () Line 5862  func_mode_link ()
           linker_flags="$linker_flags $qarg"            linker_flags="$linker_flags $qarg"
           compiler_flags="$compiler_flags $qarg"            compiler_flags="$compiler_flags $qarg"
           prev=            prev=
          func_append compile_command " $qarg"          compile_command="$compile_command $qarg"
          func_append finalize_command " $qarg"          finalize_command="$finalize_command $qarg"
           continue            continue
           ;;            ;;
         xcompiler)          xcompiler)
           compiler_flags="$compiler_flags $qarg"            compiler_flags="$compiler_flags $qarg"
           prev=            prev=
          func_append compile_command " $qarg"          compile_command="$compile_command $qarg"
          func_append finalize_command " $qarg"          finalize_command="$finalize_command $qarg"
           continue            continue
           ;;            ;;
         xlinker)          xlinker)
           linker_flags="$linker_flags $qarg"            linker_flags="$linker_flags $qarg"
           compiler_flags="$compiler_flags $wl$qarg"            compiler_flags="$compiler_flags $wl$qarg"
           prev=            prev=
          func_append compile_command " $wl$qarg"          compile_command="$compile_command $wl$qarg"
          func_append finalize_command " $wl$qarg"          finalize_command="$finalize_command $wl$qarg"
           continue            continue
           ;;            ;;
         *)          *)
Line 4894  func_mode_link () Line 5895  func_mode_link ()
       -all-static)        -all-static)
         if test -n "$link_static_flag"; then          if test -n "$link_static_flag"; then
           # See comment for -static flag below, for more details.            # See comment for -static flag below, for more details.
          func_append compile_command " $link_static_flag"          compile_command="$compile_command $link_static_flag"
          func_append finalize_command " $link_static_flag"          finalize_command="$finalize_command $link_static_flag"
         fi          fi
         continue          continue
         ;;          ;;
Line 4910  func_mode_link () Line 5911  func_mode_link ()
         continue          continue
         ;;          ;;
   
         -bindir)
           prev=bindir
           continue
           ;;
   
       -dlopen)        -dlopen)
         prev=dlfiles          prev=dlfiles
         continue          continue
Line 4952  func_mode_link () Line 5958  func_mode_link ()
       -L[A-Z][A-Z]*:*)        -L[A-Z][A-Z]*:*)
         case $with_gcc/$host in          case $with_gcc/$host in
         no/*-*-irix* | /*-*-irix*)          no/*-*-irix* | /*-*-irix*)
          func_append compile_command " $arg"          compile_command="$compile_command $arg"
          func_append finalize_command " $arg"          finalize_command="$finalize_command $arg"
           ;;            ;;
         esac          esac
         continue          continue
         ;;          ;;
   
       -L*)        -L*)
        func_stripname '-L' '' "$arg"        func_stripname "-L" '' "$arg"
        dir=$func_stripname_result        if test -z "$func_stripname_result"; then
        if test -z "$dir"; then 
           if test "$#" -gt 0; then            if test "$#" -gt 0; then
             func_fatal_error "require no space between \`-L' and \`$1'"              func_fatal_error "require no space between \`-L' and \`$1'"
           else            else
             func_fatal_error "need path for \`-L' option"              func_fatal_error "need path for \`-L' option"
           fi            fi
         fi          fi
           func_resolve_sysroot "$func_stripname_result"
           dir=$func_resolve_sysroot_result
         # We need an absolute path.          # We need an absolute path.
         case $dir in          case $dir in
         [\\/]* | [A-Za-z]:[\\/]*) ;;          [\\/]* | [A-Za-z]:[\\/]*) ;;
Line 4980  func_mode_link () Line 5987  func_mode_link ()
           ;;            ;;
         esac          esac
         case "$deplibs " in          case "$deplibs " in
        *" -L$dir "*) ;;        *" -L$dir "* | *" $arg "*)
           # Will only happen for absolute or sysroot arguments
           ;;
         *)          *)
          deplibs="$deplibs -L$dir"          # Preserve sysroot, but never include relative directories
           case $dir in
             [\\/]* | [A-Za-z]:[\\/]* | =*) deplibs="$deplibs $arg" ;;
             *) deplibs="$deplibs -L$dir" ;;
           esac
           lib_search_path="$lib_search_path $dir"            lib_search_path="$lib_search_path $dir"
           ;;            ;;
         esac          esac
         case $host in          case $host in
         *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)          *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
          testbindir=`$ECHO "X$dir" | $Xsed -e 's*/lib$*/bin*'`          testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'`
           case :$dllsearchpath: in            case :$dllsearchpath: in
           *":$dir:"*) ;;            *":$dir:"*) ;;
           ::) dllsearchpath=$dir;;            ::) dllsearchpath=$dir;;
Line 5007  func_mode_link () Line 6020  func_mode_link ()
       -l*)        -l*)
         if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then          if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
           case $host in            case $host in
          *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc*)          *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*)
             # These systems don't actually have a C or math library (as such)              # These systems don't actually have a C or math library (as such)
             continue              continue
             ;;              ;;
Line 5053  func_mode_link () Line 6066  func_mode_link ()
       # Tru64 UNIX uses -model [arg] to determine the layout of C++        # Tru64 UNIX uses -model [arg] to determine the layout of C++
       # classes, name mangling, and exception handling.        # classes, name mangling, and exception handling.
       # Darwin uses the -arch flag to determine output architecture.        # Darwin uses the -arch flag to determine output architecture.
      -model|-arch|-isysroot)      -model|-arch|-isysroot|--sysroot)
         compiler_flags="$compiler_flags $arg"          compiler_flags="$compiler_flags $arg"
        func_append compile_command " $arg"        compile_command="$compile_command $arg"
        func_append finalize_command " $arg"        finalize_command="$finalize_command $arg"
         prev=xcompiler          prev=xcompiler
         continue          continue
         ;;          ;;
   
      -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)      -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
       |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
         compiler_flags="$compiler_flags $arg"          compiler_flags="$compiler_flags $arg"
        func_append compile_command " $arg"        compile_command="$compile_command $arg"
        func_append finalize_command " $arg"        finalize_command="$finalize_command $arg"
         case "$new_inherited_linker_flags " in          case "$new_inherited_linker_flags " in
             *" $arg "*) ;;              *" $arg "*) ;;
             * ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;;              * ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;;
Line 5134  func_mode_link () Line 6148  func_mode_link ()
         # We need an absolute path.          # We need an absolute path.
         case $dir in          case $dir in
         [\\/]* | [A-Za-z]:[\\/]*) ;;          [\\/]* | [A-Za-z]:[\\/]*) ;;
           =*)
             func_stripname '=' '' "$dir"
             dir=$lt_sysroot$func_stripname_result
             ;;
         *)          *)
           func_fatal_error "only absolute run-paths are allowed"            func_fatal_error "only absolute run-paths are allowed"
           ;;            ;;
Line 5193  func_mode_link () Line 6211  func_mode_link ()
         for flag in $args; do          for flag in $args; do
           IFS="$save_ifs"            IFS="$save_ifs"
           func_quote_for_eval "$flag"            func_quote_for_eval "$flag"
          arg="$arg $wl$func_quote_for_eval_result"          arg="$arg $func_quote_for_eval_result"
           compiler_flags="$compiler_flags $func_quote_for_eval_result"            compiler_flags="$compiler_flags $func_quote_for_eval_result"
         done          done
         IFS="$save_ifs"          IFS="$save_ifs"
Line 5239  func_mode_link () Line 6257  func_mode_link ()
         arg="$func_quote_for_eval_result"          arg="$func_quote_for_eval_result"
         ;;          ;;
   
      # -64, -mips[0-9] enable 64-bit mode on the SGI compiler      # Flags to be passed through unchanged, with rationale:
      # -r[0-9][0-9]* specifies the processor on the SGI compiler      # -64, -mips[0-9]      enable 64-bit mode for the SGI compiler
      # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler      # -r[0-9][0-9]*        specify processor for the SGI compiler
      # +DA*, +DD* enable 64-bit mode on the HP compiler      # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler
      # -q* pass through compiler args for the IBM compiler      # +DA*, +DD*           enable 64-bit mode for the HP compiler
      # -m*, -t[45]*, -txscale* pass through architecture-specific      # -q*                  compiler args for the IBM compiler
      # compiler args for GCC      # -m*, -t[45]*, -txscale* architecture-specific flags for GCC
      # -F/path gives path to uninstalled frameworks, gcc on darwin      # -F/path              path to uninstalled frameworks, gcc on darwin
      # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC      # -p, -pg, --coverage, -fprofile-*  profiling flags for GCC
      # @file GCC response files      # @file                GCC response files
       # -tp=*                Portland pgcc target processor selection
       # --sysroot=*          for sysroot support
       # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \        -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*)      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
       -O*|-flto*|-fwhopr*|-fuse-linker-plugin)
         func_quote_for_eval "$arg"          func_quote_for_eval "$arg"
         arg="$func_quote_for_eval_result"          arg="$func_quote_for_eval_result"
        func_append compile_command " $arg"        compile_command="$compile_command $arg"
        func_append finalize_command " $arg"        finalize_command="$finalize_command $arg"
         compiler_flags="$compiler_flags $arg"          compiler_flags="$compiler_flags $arg"
         continue          continue
         ;;          ;;
Line 5315  func_mode_link () Line 6337  func_mode_link ()
             fi              fi
   
             # A PIC object.              # A PIC object.
            func_append libobjs " $pic_object"            libobjs="$libobjs $pic_object"
             arg="$pic_object"              arg="$pic_object"
           fi            fi
   
Line 5325  func_mode_link () Line 6347  func_mode_link ()
             non_pic_object="$xdir$non_pic_object"              non_pic_object="$xdir$non_pic_object"
   
             # A standard non-PIC object              # A standard non-PIC object
            func_append non_pic_objects " $non_pic_object"            non_pic_objects="$non_pic_objects $non_pic_object"
             if test -z "$pic_object" || test "$pic_object" = none ; then              if test -z "$pic_object" || test "$pic_object" = none ; then
               arg="$non_pic_object"                arg="$non_pic_object"
             fi              fi
Line 5333  func_mode_link () Line 6355  func_mode_link ()
             # If the PIC object exists, use it instead.              # If the PIC object exists, use it instead.
             # $xdir was prepended to $pic_object above.              # $xdir was prepended to $pic_object above.
             non_pic_object="$pic_object"              non_pic_object="$pic_object"
            func_append non_pic_objects " $non_pic_object"            non_pic_objects="$non_pic_objects $non_pic_object"
           fi            fi
         else          else
           # Only an error if not doing a dry-run.            # Only an error if not doing a dry-run.
Line 5345  func_mode_link () Line 6367  func_mode_link ()
             func_lo2o "$arg"              func_lo2o "$arg"
             pic_object=$xdir$objdir/$func_lo2o_result              pic_object=$xdir$objdir/$func_lo2o_result
             non_pic_object=$xdir$func_lo2o_result              non_pic_object=$xdir$func_lo2o_result
            func_append libobjs " $pic_object"            libobjs="$libobjs $pic_object"
            func_append non_pic_objects " $non_pic_object"            non_pic_objects="$non_pic_objects $non_pic_object"
           else            else
             func_fatal_error "\`$arg' is not a valid libtool object"              func_fatal_error "\`$arg' is not a valid libtool object"
           fi            fi
Line 5363  func_mode_link () Line 6385  func_mode_link ()
       *.la)        *.la)
         # A libtool-controlled library.          # A libtool-controlled library.
   
           func_resolve_sysroot "$arg"
         if test "$prev" = dlfiles; then          if test "$prev" = dlfiles; then
           # This library was specified with -dlopen.            # This library was specified with -dlopen.
          dlfiles="$dlfiles $arg"          dlfiles="$dlfiles $func_resolve_sysroot_result"
           prev=            prev=
         elif test "$prev" = dlprefiles; then          elif test "$prev" = dlprefiles; then
           # The library was specified with -dlpreopen.            # The library was specified with -dlpreopen.
          dlprefiles="$dlprefiles $arg"          dlprefiles="$dlprefiles $func_resolve_sysroot_result"
           prev=            prev=
         else          else
          deplibs="$deplibs $arg"          deplibs="$deplibs $func_resolve_sysroot_result"
         fi          fi
         continue          continue
         ;;          ;;
Line 5388  func_mode_link () Line 6411  func_mode_link ()
   
       # Now actually substitute the argument into the commands.        # Now actually substitute the argument into the commands.
       if test -n "$arg"; then        if test -n "$arg"; then
        func_append compile_command " $arg"        compile_command="$compile_command $arg"
        func_append finalize_command " $arg"        finalize_command="$finalize_command $arg"
       fi        fi
     done # argument parsing loop      done # argument parsing loop
   
Line 5398  func_mode_link () Line 6421  func_mode_link ()
   
     if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then      if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
       eval arg=\"$export_dynamic_flag_spec\"        eval arg=\"$export_dynamic_flag_spec\"
      func_append compile_command " $arg"      compile_command="$compile_command $arg"
      func_append finalize_command " $arg"      finalize_command="$finalize_command $arg"
     fi      fi
   
     oldlibs=      oldlibs=
Line 5410  func_mode_link () Line 6433  func_mode_link ()
   
     if test -n "$shlibpath_var"; then      if test -n "$shlibpath_var"; then
       # get the directories listed in $shlibpath_var        # get the directories listed in $shlibpath_var
      eval shlib_search_path=\`\$ECHO \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`      eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\`
     else      else
       shlib_search_path=        shlib_search_path=
     fi      fi
Line 5419  func_mode_link () Line 6442  func_mode_link ()
   
     func_dirname "$output" "/" ""      func_dirname "$output" "/" ""
     output_objdir="$func_dirname_result$objdir"      output_objdir="$func_dirname_result$objdir"
       func_to_tool_file "$output_objdir/"
       tool_output_objdir=$func_to_tool_file_result
     # Create the object directory.      # Create the object directory.
     func_mkdir_p "$output_objdir"      func_mkdir_p "$output_objdir"
   
Line 5439  func_mode_link () Line 6464  func_mode_link ()
     # Find all interdependent deplibs by searching for libraries      # Find all interdependent deplibs by searching for libraries
     # that are linked more than once (e.g. -la -lb -la)      # that are linked more than once (e.g. -la -lb -la)
     for deplib in $deplibs; do      for deplib in $deplibs; do
      if $opt_duplicate_deps ; then      if $opt_preserve_dup_deps ; then
         case "$libs " in          case "$libs " in
         *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;          *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
         esac          esac
Line 5518  func_mode_link () Line 6543  func_mode_link ()
         case $pass in          case $pass in
         dlopen) libs="$dlfiles" ;;          dlopen) libs="$dlfiles" ;;
         dlpreopen) libs="$dlprefiles" ;;          dlpreopen) libs="$dlprefiles" ;;
        link)        link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
          libs="$deplibs %DEPLIBS%" 
          test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" 
          ;; 
         esac          esac
       fi        fi
       if test "$linkmode,$pass" = "lib,dlpreopen"; then        if test "$linkmode,$pass" = "lib,dlpreopen"; then
Line 5529  func_mode_link () Line 6551  func_mode_link ()
         for lib in $dlprefiles; do          for lib in $dlprefiles; do
           # Ignore non-libtool-libs            # Ignore non-libtool-libs
           dependency_libs=            dependency_libs=
             func_resolve_sysroot "$lib"
           case $lib in            case $lib in
          *.la) func_source "$lib" ;;          *.la) func_source "$func_resolve_sysroot_result" ;;
           esac            esac
   
           # Collect preopened libtool deplibs, except any this library            # Collect preopened libtool deplibs, except any this library
           # has declared as weak libs            # has declared as weak libs
           for deplib in $dependency_libs; do            for deplib in $dependency_libs; do
            deplib_base=`$ECHO "X$deplib" | $Xsed -e "$basename"`            func_basename "$deplib"
             deplib_base=$func_basename_result
             case " $weak_libs " in              case " $weak_libs " in
             *" $deplib_base "*) ;;              *" $deplib_base "*) ;;
             *) deplibs="$deplibs $deplib" ;;              *) deplibs="$deplibs $deplib" ;;
Line 5555  func_mode_link () Line 6579  func_mode_link ()
         lib=          lib=
         found=no          found=no
         case $deplib in          case $deplib in
        -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)        -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
         |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
           if test "$linkmode,$pass" = "prog,link"; then            if test "$linkmode,$pass" = "prog,link"; then
             compile_deplibs="$deplib $compile_deplibs"              compile_deplibs="$deplib $compile_deplibs"
             finalize_deplibs="$deplib $finalize_deplibs"              finalize_deplibs="$deplib $finalize_deplibs"
Line 5662  func_mode_link () Line 6687  func_mode_link ()
             test "$pass" = conv && continue              test "$pass" = conv && continue
             newdependency_libs="$deplib $newdependency_libs"              newdependency_libs="$deplib $newdependency_libs"
             func_stripname '-L' '' "$deplib"              func_stripname '-L' '' "$deplib"
            newlib_search_path="$newlib_search_path $func_stripname_result"            func_resolve_sysroot "$func_stripname_result"
             newlib_search_path="$newlib_search_path $func_resolve_sysroot_result"
             ;;              ;;
           prog)            prog)
             if test "$pass" = conv; then              if test "$pass" = conv; then
Line 5676  func_mode_link () Line 6702  func_mode_link ()
               finalize_deplibs="$deplib $finalize_deplibs"                finalize_deplibs="$deplib $finalize_deplibs"
             fi              fi
             func_stripname '-L' '' "$deplib"              func_stripname '-L' '' "$deplib"
            newlib_search_path="$newlib_search_path $func_stripname_result"            func_resolve_sysroot "$func_stripname_result"
             newlib_search_path="$newlib_search_path $func_resolve_sysroot_result"
             ;;              ;;
           *)            *)
             func_warning "\`-L' is ignored for archives/objects"              func_warning "\`-L' is ignored for archives/objects"
Line 5687  func_mode_link () Line 6714  func_mode_link ()
         -R*)          -R*)
           if test "$pass" = link; then            if test "$pass" = link; then
             func_stripname '-R' '' "$deplib"              func_stripname '-R' '' "$deplib"
            dir=$func_stripname_result            func_resolve_sysroot "$func_stripname_result"
             dir=$func_resolve_sysroot_result
             # Make sure the xrpath contains only unique directories.              # Make sure the xrpath contains only unique directories.
             case "$xrpath " in              case "$xrpath " in
             *" $dir "*) ;;              *" $dir "*) ;;
Line 5697  func_mode_link () Line 6725  func_mode_link ()
           deplibs="$deplib $deplibs"            deplibs="$deplib $deplibs"
           continue            continue
           ;;            ;;
        *.la) lib="$deplib" ;;        *.la)
           func_resolve_sysroot "$deplib"
           lib=$func_resolve_sysroot_result
           ;;
         *.$libext)          *.$libext)
           if test "$pass" = conv; then            if test "$pass" = conv; then
             deplibs="$deplib $deplibs"              deplibs="$deplib $deplibs"
Line 5715  func_mode_link () Line 6746  func_mode_link ()
                 match_pattern*)                  match_pattern*)
                   set dummy $deplibs_check_method; shift                    set dummy $deplibs_check_method; shift
                   match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`                    match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
                  if eval "\$ECHO \"X$deplib\"" 2>/dev/null | $Xsed -e 10q \                  if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \
                     | $EGREP "$match_pattern_regex" > /dev/null; then                      | $EGREP "$match_pattern_regex" > /dev/null; then
                     valid_a_lib=yes                      valid_a_lib=yes
                   fi                    fi
Line 5725  func_mode_link () Line 6756  func_mode_link ()
                 ;;                  ;;
               esac                esac
               if test "$valid_a_lib" != yes; then                if test "$valid_a_lib" != yes; then
                $ECHO                echo
                 $ECHO "*** Warning: Trying to link with static lib archive $deplib."                  $ECHO "*** Warning: Trying to link with static lib archive $deplib."
                $ECHO "*** I have the capability to make that library automatically link in when"                echo "*** I have the capability to make that library automatically link in when"
                $ECHO "*** you link to this library.  But I can only do this if you have a"                echo "*** you link to this library.  But I can only do this if you have a"
                $ECHO "*** shared version of the library, which you do not appear to have"                echo "*** shared version of the library, which you do not appear to have"
                $ECHO "*** because the file extensions .$libext of this argument makes me believe"                echo "*** because the file extensions .$libext of this argument makes me believe"
                $ECHO "*** that it is just a static archive that I should not use here."                echo "*** that it is just a static archive that I should not use here."
               else                else
                $ECHO                echo
                 $ECHO "*** Warning: Linking the shared library $output against the"                  $ECHO "*** Warning: Linking the shared library $output against the"
                 $ECHO "*** static library $deplib is not portable!"                  $ECHO "*** static library $deplib is not portable!"
                 deplibs="$deplib $deplibs"                  deplibs="$deplib $deplibs"
Line 5806  func_mode_link () Line 6837  func_mode_link ()
   
         # Convert "-framework foo" to "foo.ltframework"          # Convert "-framework foo" to "foo.ltframework"
         if test -n "$inherited_linker_flags"; then          if test -n "$inherited_linker_flags"; then
          tmp_inherited_linker_flags=`$ECHO "X$inherited_linker_flags" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'`          tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'`
           for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do            for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do
             case " $new_inherited_linker_flags " in              case " $new_inherited_linker_flags " in
               *" $tmp_inherited_linker_flag "*) ;;                *" $tmp_inherited_linker_flag "*) ;;
Line 5814  func_mode_link () Line 6845  func_mode_link ()
             esac              esac
           done            done
         fi          fi
        dependency_libs=`$ECHO "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`        dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
         if test "$linkmode,$pass" = "lib,link" ||          if test "$linkmode,$pass" = "lib,link" ||
            test "$linkmode,$pass" = "prog,scan" ||             test "$linkmode,$pass" = "prog,scan" ||
            { test "$linkmode" != prog && test "$linkmode" != lib; }; then             { test "$linkmode" != prog && test "$linkmode" != lib; }; then
Line 5832  func_mode_link () Line 6863  func_mode_link ()
             # It is a libtool convenience library, so add in its objects.              # It is a libtool convenience library, so add in its objects.
             convenience="$convenience $ladir/$objdir/$old_library"              convenience="$convenience $ladir/$objdir/$old_library"
             old_convenience="$old_convenience $ladir/$objdir/$old_library"              old_convenience="$old_convenience $ladir/$objdir/$old_library"
             tmp_libs=  
             for deplib in $dependency_libs; do  
               deplibs="$deplib $deplibs"  
               if $opt_duplicate_deps ; then  
                 case "$tmp_libs " in  
                 *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;  
                 esac  
               fi  
               tmp_libs="$tmp_libs $deplib"  
             done  
           elif test "$linkmode" != prog && test "$linkmode" != lib; then            elif test "$linkmode" != prog && test "$linkmode" != lib; then
             func_fatal_error "\`$lib' is not a convenience library"              func_fatal_error "\`$lib' is not a convenience library"
           fi            fi
             tmp_libs=
             for deplib in $dependency_libs; do
               deplibs="$deplib $deplibs"
               if $opt_preserve_dup_deps ; then
                 case "$tmp_libs " in
                 *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
                 esac
               fi
               tmp_libs="$tmp_libs $deplib"
             done
           continue            continue
         fi # $pass = conv          fi # $pass = conv
   
   
         # Get the name of the library we link against.          # Get the name of the library we link against.
         linklib=          linklib=
        for l in $old_library $library_names; do        if test -n "$old_library" &&
          linklib="$l"           { test "$prefer_static_libs" = yes ||
        done             test "$prefer_static_libs,$installed" = "built,no"; }; then
           linklib=$old_library
         else
           for l in $old_library $library_names; do
             linklib="$l"
           done
         fi
         if test -z "$linklib"; then          if test -z "$linklib"; then
           func_fatal_error "cannot find name of link library for \`$lib'"            func_fatal_error "cannot find name of link library for \`$lib'"
         fi          fi
Line 5894  func_mode_link () Line 6931  func_mode_link ()
   
         # Find the relevant object directory and library name.          # Find the relevant object directory and library name.
         if test "X$installed" = Xyes; then          if test "X$installed" = Xyes; then
          if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then          if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
             func_warning "library \`$lib' was moved."              func_warning "library \`$lib' was moved."
             dir="$ladir"              dir="$ladir"
             absdir="$abs_ladir"              absdir="$abs_ladir"
             libdir="$abs_ladir"              libdir="$abs_ladir"
           else            else
            dir="$libdir"            dir="$lt_sysroot$libdir"
            absdir="$libdir"            absdir="$lt_sysroot$libdir"
           fi            fi
           test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes            test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
         else          else
Line 5925  func_mode_link () Line 6962  func_mode_link ()
           if test -z "$libdir" && test "$linkmode" = prog; then            if test -z "$libdir" && test "$linkmode" = prog; then
             func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"              func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"
           fi            fi
          # Prefer using a static library (so that no silly _DYNAMIC symbols          case "$host" in
          # are required to link).            # special handling for platforms with PE-DLLs.
          if test -n "$old_library"; then            *cygwin* | *mingw* | *cegcc* )
            newdlprefiles="$newdlprefiles $dir/$old_library"              # Linker will automatically link against shared library if both
            # Keep a list of preopened convenience libraries to check              # static and shared are present.  Therefore, ensure we extract
            # that they are being used correctly in the link pass.              # symbols from the import library if a shared library is present
            test -z "$libdir" && \              # (otherwise, the dlopen module name will be incorrect).  We do
                dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library"              # this by putting the import library name into $newdlprefiles.
          # Otherwise, use the dlname, so that lt_dlopen finds it.              # We recover the dlopen module name by 'saving' the la file
          elif test -n "$dlname"; then              # name in a special purpose variable, and (later) extracting the
            newdlprefiles="$newdlprefiles $dir/$dlname"              # dlname from the la file.
          else              if test -n "$dlname"; then
            newdlprefiles="$newdlprefiles $dir/$linklib"                func_tr_sh "$dir/$linklib"
          fi                eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname"
                 newdlprefiles="$newdlprefiles $dir/$linklib"
               else
                 newdlprefiles="$newdlprefiles $dir/$old_library"
                 # Keep a list of preopened convenience libraries to check
                 # that they are being used correctly in the link pass.
                 test -z "$libdir" && \
                   dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library"
               fi
             ;;
             * )
               # Prefer using a static library (so that no silly _DYNAMIC symbols
               # are required to link).
               if test -n "$old_library"; then
                 newdlprefiles="$newdlprefiles $dir/$old_library"
                 # Keep a list of preopened convenience libraries to check
                 # that they are being used correctly in the link pass.
                 test -z "$libdir" && \
                   dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_library"
               # Otherwise, use the dlname, so that lt_dlopen finds it.
               elif test -n "$dlname"; then
                 newdlprefiles="$newdlprefiles $dir/$dlname"
               else
                 newdlprefiles="$newdlprefiles $dir/$linklib"
               fi
             ;;
           esac
         fi # $pass = dlpreopen          fi # $pass = dlpreopen
   
         if test -z "$libdir"; then          if test -z "$libdir"; then
Line 5969  func_mode_link () Line 7032  func_mode_link ()
           for deplib in $dependency_libs; do            for deplib in $dependency_libs; do
             case $deplib in              case $deplib in
             -L*) func_stripname '-L' '' "$deplib"              -L*) func_stripname '-L' '' "$deplib"
                 newlib_search_path="$newlib_search_path $func_stripname_result"                 func_resolve_sysroot "$func_stripname_result"
                  newlib_search_path="$newlib_search_path $func_resolve_sysroot_result"
                  ;;                   ;;
             esac              esac
             # Need to link against all dependency_libs?              # Need to link against all dependency_libs?
Line 5980  func_mode_link () Line 7044  func_mode_link ()
               # or/and link against static libraries                # or/and link against static libraries
               newdependency_libs="$deplib $newdependency_libs"                newdependency_libs="$deplib $newdependency_libs"
             fi              fi
            if $opt_duplicate_deps ; then            if $opt_preserve_dup_deps ; then
               case "$tmp_libs " in                case "$tmp_libs " in
               *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;                *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
               esac                esac
Line 6012  func_mode_link () Line 7076  func_mode_link ()
             *)              *)
               case "$compile_rpath " in                case "$compile_rpath " in
               *" $absdir "*) ;;                *" $absdir "*) ;;
              *) compile_rpath="$compile_rpath $absdir"              *) compile_rpath="$compile_rpath $absdir" ;;
               esac                esac
               ;;                ;;
             esac              esac
Line 6021  func_mode_link () Line 7085  func_mode_link ()
             *)              *)
               case "$finalize_rpath " in                case "$finalize_rpath " in
               *" $libdir "*) ;;                *" $libdir "*) ;;
              *) finalize_rpath="$finalize_rpath $libdir"              *) finalize_rpath="$finalize_rpath $libdir" ;;
               esac                esac
               ;;                ;;
             esac              esac
Line 6068  func_mode_link () Line 7132  func_mode_link ()
             fi              fi
           done            done
           if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then            if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then
            $ECHO            echo
             if test "$linkmode" = prog; then              if test "$linkmode" = prog; then
               $ECHO "*** Warning: Linking the executable $output against the loadable module"                $ECHO "*** Warning: Linking the executable $output against the loadable module"
             else              else
Line 6086  func_mode_link () Line 7150  func_mode_link ()
             *)              *)
               case "$compile_rpath " in                case "$compile_rpath " in
               *" $absdir "*) ;;                *" $absdir "*) ;;
              *) compile_rpath="$compile_rpath $absdir"              *) compile_rpath="$compile_rpath $absdir" ;;
               esac                esac
               ;;                ;;
             esac              esac
Line 6095  func_mode_link () Line 7159  func_mode_link ()
             *)              *)
               case "$finalize_rpath " in                case "$finalize_rpath " in
               *" $libdir "*) ;;                *" $libdir "*) ;;
              *) finalize_rpath="$finalize_rpath $libdir"              *) finalize_rpath="$finalize_rpath $libdir" ;;
               esac                esac
               ;;                ;;
             esac              esac
Line 6149  func_mode_link () Line 7213  func_mode_link ()
             linklib=$newlib              linklib=$newlib
           fi # test -n "$old_archive_from_expsyms_cmds"            fi # test -n "$old_archive_from_expsyms_cmds"
   
          if test "$linkmode" = prog || test "$mode" != relink; then          if test "$linkmode" = prog || test "$opt_mode" != relink; then
             add_shlibpath=              add_shlibpath=
             add_dir=              add_dir=
             add=              add=
Line 6171  func_mode_link () Line 7235  func_mode_link ()
                       if test "X$dlopenmodule" != "X$lib"; then                        if test "X$dlopenmodule" != "X$lib"; then
                         $ECHO "*** Warning: lib $linklib is a module, not a shared library"                          $ECHO "*** Warning: lib $linklib is a module, not a shared library"
                         if test -z "$old_library" ; then                          if test -z "$old_library" ; then
                          $ECHO                          echo
                          $ECHO "*** And there doesn't seem to be a static archive available"                          echo "*** And there doesn't seem to be a static archive available"
                          $ECHO "*** The link will probably fail, sorry"                          echo "*** The link will probably fail, sorry"
                         else                          else
                           add="$dir/$old_library"                            add="$dir/$old_library"
                         fi                          fi
Line 6200  func_mode_link () Line 7264  func_mode_link ()
                  test "$hardcode_direct_absolute" = no; then                   test "$hardcode_direct_absolute" = no; then
                 add="$dir/$linklib"                  add="$dir/$linklib"
               elif test "$hardcode_minus_L" = yes; then                elif test "$hardcode_minus_L" = yes; then
                add_dir="-L$dir"                add_dir="-L$absdir"
                 # Try looking first in the location we're being installed to.                  # Try looking first in the location we're being installed to.
                 if test -n "$inst_prefix_dir"; then                  if test -n "$inst_prefix_dir"; then
                   case $libdir in                    case $libdir in
Line 6247  func_mode_link () Line 7311  func_mode_link ()
             fi              fi
           fi            fi
   
          if test "$linkmode" = prog || test "$mode" = relink; then          if test "$linkmode" = prog || test "$opt_mode" = relink; then
             add_shlibpath=              add_shlibpath=
             add_dir=              add_dir=
             add=              add=
Line 6313  func_mode_link () Line 7377  func_mode_link ()
   
             # Just print a warning and add the library to dependency_libs so              # Just print a warning and add the library to dependency_libs so
             # that the program can be linked against the static library.              # that the program can be linked against the static library.
            $ECHO            echo
             $ECHO "*** Warning: This system can not link to static lib archive $lib."              $ECHO "*** Warning: This system can not link to static lib archive $lib."
            $ECHO "*** I have the capability to make that library automatically link in when"            echo "*** I have the capability to make that library automatically link in when"
            $ECHO "*** you link to this library.  But I can only do this if you have a"            echo "*** you link to this library.  But I can only do this if you have a"
            $ECHO "*** shared version of the library, which you do not appear to have."            echo "*** shared version of the library, which you do not appear to have."
             if test "$module" = yes; then              if test "$module" = yes; then
              $ECHO "*** But as you try to build a module library, libtool will still create "              echo "*** But as you try to build a module library, libtool will still create "
              $ECHO "*** a static module, that should work as long as the dlopening application"              echo "*** a static module, that should work as long as the dlopening application"
              $ECHO "*** is linked with the -dlopen flag to resolve symbols at runtime."              echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
               if test -z "$global_symbol_pipe"; then                if test -z "$global_symbol_pipe"; then
                $ECHO                echo
                $ECHO "*** However, this would only work if libtool was able to extract symbol"                echo "*** However, this would only work if libtool was able to extract symbol"
                $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could"                echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
                $ECHO "*** not find such a program.  So, this module is probably useless."                echo "*** not find such a program.  So, this module is probably useless."
                $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."                echo "*** \`nm' from GNU binutils and a full rebuild may help."
               fi                fi
               if test "$build_old_libs" = no; then                if test "$build_old_libs" = no; then
                 build_libtool_libs=module                  build_libtool_libs=module
Line 6370  func_mode_link () Line 7434  func_mode_link ()
           tmp_libs=            tmp_libs=
           for deplib in $dependency_libs; do            for deplib in $dependency_libs; do
             newdependency_libs="$deplib $newdependency_libs"              newdependency_libs="$deplib $newdependency_libs"
            if $opt_duplicate_deps ; then            case $deplib in
               -L*) func_stripname '-L' '' "$deplib"
                    func_resolve_sysroot "$func_stripname_result";;
               *) func_resolve_sysroot "$deplib" ;;
             esac
             if $opt_preserve_dup_deps ; then
               case "$tmp_libs " in                case "$tmp_libs " in
              *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;              *" $func_resolve_sysroot_result "*)
                 specialdeplibs="$specialdeplibs $func_resolve_sysroot_result" ;;
               esac                esac
             fi              fi
            tmp_libs="$tmp_libs $deplib"            tmp_libs="$tmp_libs $func_resolve_sysroot_result"
           done            done
   
           if test "$link_all_deplibs" != no; then            if test "$link_all_deplibs" != no; then
Line 6385  func_mode_link () Line 7455  func_mode_link ()
               case $deplib in                case $deplib in
               -L*) path="$deplib" ;;                -L*) path="$deplib" ;;
               *.la)                *.la)
                   func_resolve_sysroot "$deplib"
                   deplib=$func_resolve_sysroot_result
                 func_dirname "$deplib" "" "."                  func_dirname "$deplib" "" "."
                dir="$func_dirname_result"                dir=$func_dirname_result
                 # We need an absolute path.                  # We need an absolute path.
                 case $dir in                  case $dir in
                 [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;                  [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
Line 6447  func_mode_link () Line 7519  func_mode_link ()
           compile_deplibs="$new_inherited_linker_flags $compile_deplibs"            compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
           finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"            finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
         else          else
          compiler_flags="$compiler_flags "`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`          compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
         fi          fi
       fi        fi
       dependency_libs="$newdependency_libs"        dependency_libs="$newdependency_libs"
Line 6615  func_mode_link () Line 7687  func_mode_link ()
         if test "$deplibs_check_method" != pass_all; then          if test "$deplibs_check_method" != pass_all; then
           func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"            func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"
         else          else
          $ECHO          echo
           $ECHO "*** Warning: Linking the shared library $output against the non-libtool"            $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
           $ECHO "*** objects $objs is not portable!"            $ECHO "*** objects $objs is not portable!"
           libobjs="$libobjs $objs"            libobjs="$libobjs $objs"
Line 6677  func_mode_link () Line 7749  func_mode_link ()
           # which has an extra 1 added just for fun            # which has an extra 1 added just for fun
           #            #
           case $version_type in            case $version_type in
             # correct linux to gnu/linux during the next big refactor
           darwin|linux|osf|windows|none)            darwin|linux|osf|windows|none)
             func_arith $number_major + $number_minor              func_arith $number_major + $number_minor
             current=$func_arith_result              current=$func_arith_result
             age="$number_minor"              age="$number_minor"
             revision="$number_revision"              revision="$number_revision"
             ;;              ;;
          freebsd-aout|freebsd-elf|sunos)          freebsd-aout|freebsd-elf|qnx|sunos)
             current="$number_major"              current="$number_major"
             revision="$number_minor"              revision="$number_minor"
             age="0"              age="0"
Line 6695  func_mode_link () Line 7768  func_mode_link ()
             revision="$number_minor"              revision="$number_minor"
             lt_irix_increment=no              lt_irix_increment=no
             ;;              ;;
           *)  
             func_fatal_configuration "$modename: unknown library version type \`$version_type'"  
             ;;  
           esac            esac
           ;;            ;;
         no)          no)
Line 6796  func_mode_link () Line 7866  func_mode_link ()
           versuffix="$major.$revision"            versuffix="$major.$revision"
           ;;            ;;
   
        linux)        linux) # correct to gnu/linux during the next big refactor
           func_arith $current - $age            func_arith $current - $age
           major=.$func_arith_result            major=.$func_arith_result
           versuffix="$major.$age.$revision"            versuffix="$major.$age.$revision"
Line 6890  func_mode_link () Line 7960  func_mode_link ()
       libobjs="$libobjs $symfileobj"        libobjs="$libobjs $symfileobj"
       test "X$libobjs" = "X " && libobjs=        test "X$libobjs" = "X " && libobjs=
   
      if test "$mode" != relink; then      if test "$opt_mode" != relink; then
         # Remove our outputs, but don't remove object files since they          # Remove our outputs, but don't remove object files since they
         # may have been created when compiling PIC objects.          # may have been created when compiling PIC objects.
         removelist=          removelist=
Line 6920  func_mode_link () Line 7990  func_mode_link ()
         oldlibs="$oldlibs $output_objdir/$libname.$libext"          oldlibs="$oldlibs $output_objdir/$libname.$libext"
   
         # Transform .lo files to .o files.          # Transform .lo files to .o files.
        oldobjs="$objs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`        oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP`
       fi        fi
   
       # Eliminate all temporary directories.        # Eliminate all temporary directories.
       #for path in $notinst_path; do        #for path in $notinst_path; do
      # lib_search_path=`$ECHO "X$lib_search_path " | $Xsed -e "s% $path % %g"`      # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"`
      # deplibs=`$ECHO "X$deplibs " | $Xsed -e "s% -L$path % %g"`      # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"`
      # dependency_libs=`$ECHO "X$dependency_libs " | $Xsed -e "s% -L$path % %g"`      # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"`
       #done        #done
   
       if test -n "$xrpath"; then        if test -n "$xrpath"; then
         # If the user specified any rpath flags, then add them.          # If the user specified any rpath flags, then add them.
         temp_xrpath=          temp_xrpath=
         for libdir in $xrpath; do          for libdir in $xrpath; do
          temp_xrpath="$temp_xrpath -R$libdir"          func_replace_sysroot "$libdir"
           temp_xrpath="$temp_xrpath -R$func_replace_sysroot_result"
           case "$finalize_rpath " in            case "$finalize_rpath " in
           *" $libdir "*) ;;            *" $libdir "*) ;;
           *) finalize_rpath="$finalize_rpath $libdir" ;;            *) finalize_rpath="$finalize_rpath $libdir" ;;
Line 6968  func_mode_link () Line 8039  func_mode_link ()
       if test "$build_libtool_libs" = yes; then        if test "$build_libtool_libs" = yes; then
         if test -n "$rpath"; then          if test -n "$rpath"; then
           case $host in            case $host in
          *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc*)          *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*)
             # these systems don't actually have a c library (as such)!              # these systems don't actually have a c library (as such)!
             ;;              ;;
           *-*-rhapsody* | *-*-darwin1.[012])            *-*-rhapsody* | *-*-darwin1.[012])
Line 7053  EOF Line 8124  EOF
                     newdeplibs="$newdeplibs $i"                      newdeplibs="$newdeplibs $i"
                   else                    else
                     droppeddeps=yes                      droppeddeps=yes
                    $ECHO                    echo
                     $ECHO "*** Warning: dynamic linker does not accept needed library $i."                      $ECHO "*** Warning: dynamic linker does not accept needed library $i."
                    $ECHO "*** I have the capability to make that library automatically link in when"                    echo "*** I have the capability to make that library automatically link in when"
                    $ECHO "*** you link to this library.  But I can only do this if you have a"                    echo "*** you link to this library.  But I can only do this if you have a"
                    $ECHO "*** shared version of the library, which I believe you do not have"                    echo "*** shared version of the library, which I believe you do not have"
                    $ECHO "*** because a test_compile did reveal that the linker did not use it for"                    echo "*** because a test_compile did reveal that the linker did not use it for"
                    $ECHO "*** its dynamic dependency list that programs get resolved with at runtime."                    echo "*** its dynamic dependency list that programs get resolved with at runtime."
                   fi                    fi
                 fi                  fi
                 ;;                  ;;
Line 7096  EOF Line 8167  EOF
                       newdeplibs="$newdeplibs $i"                        newdeplibs="$newdeplibs $i"
                     else                      else
                       droppeddeps=yes                        droppeddeps=yes
                      $ECHO                      echo
                       $ECHO "*** Warning: dynamic linker does not accept needed library $i."                        $ECHO "*** Warning: dynamic linker does not accept needed library $i."
                      $ECHO "*** I have the capability to make that library automatically link in when"                      echo "*** I have the capability to make that library automatically link in when"
                      $ECHO "*** you link to this library.  But I can only do this if you have a"                      echo "*** you link to this library.  But I can only do this if you have a"
                      $ECHO "*** shared version of the library, which you do not appear to have"                      echo "*** shared version of the library, which you do not appear to have"
                      $ECHO "*** because a test_compile did reveal that the linker did not use this one"                      echo "*** because a test_compile did reveal that the linker did not use this one"
                      $ECHO "*** as a dynamic dependency that programs can get resolved with at runtime."                      echo "*** as a dynamic dependency that programs can get resolved with at runtime."
                     fi                      fi
                   fi                    fi
                 else                  else
                   droppeddeps=yes                    droppeddeps=yes
                  $ECHO                  echo
                   $ECHO "*** Warning!  Library $i is needed by this library but I was not able to"                    $ECHO "*** Warning!  Library $i is needed by this library but I was not able to"
                  $ECHO "*** make it link in!  You will probably need to install it or some"                  echo "*** make it link in!  You will probably need to install it or some"
                  $ECHO "*** library that it depends on before this library will be fully"                  echo "*** library that it depends on before this library will be fully"
                  $ECHO "*** functional.  Installing it before continuing would be even better."                  echo "*** functional.  Installing it before continuing would be even better."
                 fi                  fi
                 ;;                  ;;
               *)                *)
Line 7139  EOF Line 8210  EOF
               fi                fi
               if test -n "$a_deplib" ; then                if test -n "$a_deplib" ; then
                 libname=`eval "\\$ECHO \"$libname_spec\""`                  libname=`eval "\\$ECHO \"$libname_spec\""`
                   if test -n "$file_magic_glob"; then
                     libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
                   else
                     libnameglob=$libname
                   fi
                   test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocaseglob`
                 for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do                  for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
                  potential_libs=`ls $i/$libname[.-]* 2>/dev/null`                  if test "$want_nocaseglob" = yes; then
                     shopt -s nocaseglob
                     potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
                     $nocaseglob
                   else
                     potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
                   fi
                   for potent_lib in $potential_libs; do                    for potent_lib in $potential_libs; do
                       # Follow soft links.                        # Follow soft links.
                       if ls -lLd "$potent_lib" 2>/dev/null |                        if ls -lLd "$potent_lib" 2>/dev/null |
Line 7157  EOF Line 8240  EOF
                         potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`                          potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
                         case $potliblink in                          case $potliblink in
                         [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;                          [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
                        *) potlib=`$ECHO "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;                        *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";;
                         esac                          esac
                       done                        done
                       if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |                        if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
Line 7172  EOF Line 8255  EOF
               fi                fi
               if test -n "$a_deplib" ; then                if test -n "$a_deplib" ; then
                 droppeddeps=yes                  droppeddeps=yes
                $ECHO                echo
                 $ECHO "*** Warning: linker path does not have real file for library $a_deplib."                  $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
                $ECHO "*** I have the capability to make that library automatically link in when"                echo "*** I have the capability to make that library automatically link in when"
                $ECHO "*** you link to this library.  But I can only do this if you have a"                echo "*** you link to this library.  But I can only do this if you have a"
                $ECHO "*** shared version of the library, which you do not appear to have"                echo "*** shared version of the library, which you do not appear to have"
                $ECHO "*** because I did check the linker path looking for a file starting"                echo "*** because I did check the linker path looking for a file starting"
                 if test -z "$potlib" ; then                  if test -z "$potlib" ; then
                   $ECHO "*** with $libname but no candidates were found. (...for file magic test)"                    $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
                 else                  else
Line 7215  EOF Line 8298  EOF
                   potential_libs=`ls $i/$libname[.-]* 2>/dev/null`                    potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
                   for potent_lib in $potential_libs; do                    for potent_lib in $potential_libs; do
                     potlib="$potent_lib" # see symlink-check above in file_magic test                      potlib="$potent_lib" # see symlink-check above in file_magic test
                    if eval "\$ECHO \"X$potent_lib\"" 2>/dev/null | $Xsed -e 10q | \                    if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \
                        $EGREP "$match_pattern_regex" > /dev/null; then                         $EGREP "$match_pattern_regex" > /dev/null; then
                       newdeplibs="$newdeplibs $a_deplib"                        newdeplibs="$newdeplibs $a_deplib"
                       a_deplib=""                        a_deplib=""
Line 7226  EOF Line 8309  EOF
               fi                fi
               if test -n "$a_deplib" ; then                if test -n "$a_deplib" ; then
                 droppeddeps=yes                  droppeddeps=yes
                $ECHO                echo
                 $ECHO "*** Warning: linker path does not have real file for library $a_deplib."                  $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
                $ECHO "*** I have the capability to make that library automatically link in when"                echo "*** I have the capability to make that library automatically link in when"
                $ECHO "*** you link to this library.  But I can only do this if you have a"                echo "*** you link to this library.  But I can only do this if you have a"
                $ECHO "*** shared version of the library, which you do not appear to have"                echo "*** shared version of the library, which you do not appear to have"
                $ECHO "*** because I did check the linker path looking for a file starting"                echo "*** because I did check the linker path looking for a file starting"
                 if test -z "$potlib" ; then                  if test -z "$potlib" ; then
                   $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"                    $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
                 else                  else
Line 7249  EOF Line 8332  EOF
           ;;            ;;
         none | unknown | *)          none | unknown | *)
           newdeplibs=""            newdeplibs=""
          tmp_deplibs=`$ECHO "X $deplibs" | $Xsed \          tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'`
              -e 's/ -lc$//' -e 's/ -[LR][^ ]*//g'` 
           if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then            if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
             for i in $predeps $postdeps ; do              for i in $predeps $postdeps ; do
               # can't use Xsed below, because $i might contain '/'                # can't use Xsed below, because $i might contain '/'
              tmp_deplibs=`$ECHO "X $tmp_deplibs" | $Xsed -e "s,$i,,"`              tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"`
             done              done
           fi            fi
          if $ECHO "X $tmp_deplibs" | $Xsed -e 's/[        ]//g' |          case $tmp_deplibs in
             $GREP . >/dev/null; then          *[!\  \ ]*)
            $ECHO            echo
             if test "X$deplibs_check_method" = "Xnone"; then              if test "X$deplibs_check_method" = "Xnone"; then
              $ECHO "*** Warning: inter-library dependencies are not supported in this platform."              echo "*** Warning: inter-library dependencies are not supported in this platform."
             else              else
              $ECHO "*** Warning: inter-library dependencies are not known to be supported."              echo "*** Warning: inter-library dependencies are not known to be supported."
             fi              fi
            $ECHO "*** All declared inter-library dependencies are being dropped."            echo "*** All declared inter-library dependencies are being dropped."
             droppeddeps=yes              droppeddeps=yes
          fi            ;;
           esac
           ;;            ;;
         esac          esac
         versuffix=$versuffix_save          versuffix=$versuffix_save
Line 7279  EOF Line 8362  EOF
         case $host in          case $host in
         *-*-rhapsody* | *-*-darwin1.[012])          *-*-rhapsody* | *-*-darwin1.[012])
           # On Rhapsody replace the C library with the System framework            # On Rhapsody replace the C library with the System framework
          newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'`          newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'`
           ;;            ;;
         esac          esac
   
         if test "$droppeddeps" = yes; then          if test "$droppeddeps" = yes; then
           if test "$module" = yes; then            if test "$module" = yes; then
            $ECHO            echo
            $ECHO "*** Warning: libtool could not satisfy all declared inter-library"            echo "*** Warning: libtool could not satisfy all declared inter-library"
             $ECHO "*** dependencies of module $libname.  Therefore, libtool will create"              $ECHO "*** dependencies of module $libname.  Therefore, libtool will create"
            $ECHO "*** a static module, that should work as long as the dlopening"            echo "*** a static module, that should work as long as the dlopening"
            $ECHO "*** application is linked with the -dlopen flag."            echo "*** application is linked with the -dlopen flag."
             if test -z "$global_symbol_pipe"; then              if test -z "$global_symbol_pipe"; then
              $ECHO              echo
              $ECHO "*** However, this would only work if libtool was able to extract symbol"              echo "*** However, this would only work if libtool was able to extract symbol"
              $ECHO "*** lists from a program, using \`nm' or equivalent, but libtool could"              echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
              $ECHO "*** not find such a program.  So, this module is probably useless."              echo "*** not find such a program.  So, this module is probably useless."
              $ECHO "*** \`nm' from GNU binutils and a full rebuild may help."              echo "*** \`nm' from GNU binutils and a full rebuild may help."
             fi              fi
             if test "$build_old_libs" = no; then              if test "$build_old_libs" = no; then
               oldlibs="$output_objdir/$libname.$libext"                oldlibs="$output_objdir/$libname.$libext"
Line 7305  EOF Line 8388  EOF
               build_libtool_libs=no                build_libtool_libs=no
             fi              fi
           else            else
            $ECHO "*** The inter-library dependencies that have been dropped here will be"            echo "*** The inter-library dependencies that have been dropped here will be"
            $ECHO "*** automatically added whenever a program is linked with this library"            echo "*** automatically added whenever a program is linked with this library"
            $ECHO "*** or is declared to -dlopen it."            echo "*** or is declared to -dlopen it."
   
             if test "$allow_undefined" = no; then              if test "$allow_undefined" = no; then
              $ECHO              echo
              $ECHO "*** Since this library must not contain undefined symbols,"              echo "*** Since this library must not contain undefined symbols,"
              $ECHO "*** because either the platform does not support them or"              echo "*** because either the platform does not support them or"
              $ECHO "*** it was explicitly requested with -no-undefined,"              echo "*** it was explicitly requested with -no-undefined,"
              $ECHO "*** libtool will only create a static version of it."              echo "*** libtool will only create a static version of it."
               if test "$build_old_libs" = no; then                if test "$build_old_libs" = no; then
                 oldlibs="$output_objdir/$libname.$libext"                  oldlibs="$output_objdir/$libname.$libext"
                 build_libtool_libs=module                  build_libtool_libs=module
Line 7331  EOF Line 8414  EOF
       # Time to change all our "foo.ltframework" stuff back to "-framework foo"        # Time to change all our "foo.ltframework" stuff back to "-framework foo"
       case $host in        case $host in
         *-*-darwin*)          *-*-darwin*)
          newdeplibs=`$ECHO "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`          newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
          new_inherited_linker_flags=`$ECHO "X $new_inherited_linker_flags" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`          new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
          deplibs=`$ECHO "X $deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`          deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
           ;;            ;;
       esac        esac
   
Line 7371  EOF Line 8454  EOF
   
       # Test again, we may have decided not to build it any more        # Test again, we may have decided not to build it any more
       if test "$build_libtool_libs" = yes; then        if test "$build_libtool_libs" = yes; then
           # Remove ${wl} instances when linking with ld.
           # FIXME: should test the right _cmds variable.
           case $archive_cmds in
             *\$LD\ *) wl= ;;
           esac
         if test "$hardcode_into_libs" = yes; then          if test "$hardcode_into_libs" = yes; then
           # Hardcode the library paths            # Hardcode the library paths
           hardcode_libdirs=            hardcode_libdirs=
           dep_rpath=            dep_rpath=
           rpath="$finalize_rpath"            rpath="$finalize_rpath"
          test "$mode" != relink && rpath="$compile_rpath$rpath"          test "$opt_mode" != relink && rpath="$compile_rpath$rpath"
           for libdir in $rpath; do            for libdir in $rpath; do
             if test -n "$hardcode_libdir_flag_spec"; then              if test -n "$hardcode_libdir_flag_spec"; then
               if test -n "$hardcode_libdir_separator"; then                if test -n "$hardcode_libdir_separator"; then
                   func_replace_sysroot "$libdir"
                   libdir=$func_replace_sysroot_result
                 if test -z "$hardcode_libdirs"; then                  if test -z "$hardcode_libdirs"; then
                   hardcode_libdirs="$libdir"                    hardcode_libdirs="$libdir"
                 else                  else
Line 7407  EOF Line 8497  EOF
           if test -n "$hardcode_libdir_separator" &&            if test -n "$hardcode_libdir_separator" &&
              test -n "$hardcode_libdirs"; then               test -n "$hardcode_libdirs"; then
             libdir="$hardcode_libdirs"              libdir="$hardcode_libdirs"
            if test -n "$hardcode_libdir_flag_spec_ld"; then            eval "dep_rpath=\"$hardcode_libdir_flag_spec\""
              eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" 
            else 
              eval dep_rpath=\"$hardcode_libdir_flag_spec\" 
            fi 
           fi            fi
           if test -n "$runpath_var" && test -n "$perm_rpath"; then            if test -n "$runpath_var" && test -n "$perm_rpath"; then
             # We should set the runpath_var.              # We should set the runpath_var.
Line 7425  EOF Line 8511  EOF
         fi          fi
   
         shlibpath="$finalize_shlibpath"          shlibpath="$finalize_shlibpath"
        test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"        test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
         if test -n "$shlibpath"; then          if test -n "$shlibpath"; then
           eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"            eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
         fi          fi
Line 7455  EOF Line 8541  EOF
         done          done
   
         # Use standard objects if they are pic          # Use standard objects if they are pic
        test -z "$pic_flag" && libobjs=`$ECHO "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`        test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP`
         test "X$libobjs" = "X " && libobjs=          test "X$libobjs" = "X " && libobjs=
   
         delfiles=          delfiles=
Line 7493  EOF Line 8579  EOF
             $opt_dry_run || $RM $export_symbols              $opt_dry_run || $RM $export_symbols
             cmds=$export_symbols_cmds              cmds=$export_symbols_cmds
             save_ifs="$IFS"; IFS='~'              save_ifs="$IFS"; IFS='~'
            for cmd in $cmds; do            for cmd1 in $cmds; do
               IFS="$save_ifs"                IFS="$save_ifs"
              eval cmd=\"$cmd\"              # Take the normal branch if the nm_file_list_spec branch
              func_len " $cmd"              # doesn't work or if tool conversion is not needed.
              len=$func_len_result              case $nm_file_list_spec~$to_tool_file_cmd in
              if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then                *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*)
                   try_normal_branch=yes
                   eval cmd=\"$cmd1\"
                   func_len " $cmd"
                   len=$func_len_result
                   ;;
                 *)
                   try_normal_branch=no
                   ;;
               esac
               if test "$try_normal_branch" = yes \
                  && { test "$len" -lt "$max_cmd_len" \
                       || test "$max_cmd_len" -le -1; }
               then
                 func_show_eval "$cmd" 'exit $?'                  func_show_eval "$cmd" 'exit $?'
                 skipped_export=false                  skipped_export=false
                 elif test -n "$nm_file_list_spec"; then
                   func_basename "$output"
                   output_la=$func_basename_result
                   save_libobjs=$libobjs
                   save_output=$output
                   output=${output_objdir}/${output_la}.nm
                   func_to_tool_file "$output"
                   libobjs=$nm_file_list_spec$func_to_tool_file_result
                   delfiles="$delfiles $output"
                   func_verbose "creating $NM input file list: $output"
                   for obj in $save_libobjs; do
                     func_to_tool_file "$obj"
                     $ECHO "$func_to_tool_file_result"
                   done > "$output"
                   eval cmd=\"$cmd1\"
                   func_show_eval "$cmd" 'exit $?'
                   output=$save_output
                   libobjs=$save_libobjs
                   skipped_export=false
               else                else
                 # The command line is too long to execute in one step.                  # The command line is too long to execute in one step.
                 func_verbose "using reloadable object file for export list..."                  func_verbose "using reloadable object file for export list..."
Line 7521  EOF Line 8639  EOF
         if test -n "$export_symbols" && test -n "$include_expsyms"; then          if test -n "$export_symbols" && test -n "$include_expsyms"; then
           tmp_export_symbols="$export_symbols"            tmp_export_symbols="$export_symbols"
           test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"            test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
          $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'          $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
         fi          fi
   
         if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then          if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then
Line 7577  EOF Line 8695  EOF
         fi          fi
   
         # Make a backup of the uninstalled library when relinking          # Make a backup of the uninstalled library when relinking
        if test "$mode" = relink; then        if test "$opt_mode" = relink; then
           $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?            $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
         fi          fi
   
Line 7622  EOF Line 8740  EOF
             save_libobjs=$libobjs              save_libobjs=$libobjs
           fi            fi
           save_output=$output            save_output=$output
          output_la=`$ECHO "X$output" | $Xsed -e "$basename"`          func_basename "$output"
           output_la=$func_basename_result
   
           # Clear the reloadable object creation command queue and            # Clear the reloadable object creation command queue and
           # initialize k to one.            # initialize k to one.
Line 7635  EOF Line 8754  EOF
           if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then            if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
             output=${output_objdir}/${output_la}.lnkscript              output=${output_objdir}/${output_la}.lnkscript
             func_verbose "creating GNU ld script: $output"              func_verbose "creating GNU ld script: $output"
            $ECHO 'INPUT (' > $output            echo 'INPUT (' > $output
             for obj in $save_libobjs              for obj in $save_libobjs
             do              do
              $ECHO "$obj" >> $output              func_to_tool_file "$obj"
               $ECHO "$func_to_tool_file_result" >> $output
             done              done
            $ECHO ')' >> $output            echo ')' >> $output
             delfiles="$delfiles $output"              delfiles="$delfiles $output"
               func_to_tool_file "$output"
               output=$func_to_tool_file_result
           elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then            elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
             output=${output_objdir}/${output_la}.lnk              output=${output_objdir}/${output_la}.lnk
             func_verbose "creating linker input file list: $output"              func_verbose "creating linker input file list: $output"
Line 7655  EOF Line 8777  EOF
             fi              fi
             for obj              for obj
             do              do
              $ECHO "$obj" >> $output              func_to_tool_file "$obj"
               $ECHO "$func_to_tool_file_result" >> $output
             done              done
             delfiles="$delfiles $output"              delfiles="$delfiles $output"
            output=$firstobj\"$file_list_spec$output\"            func_to_tool_file "$output"
             output=$firstobj\"$file_list_spec$func_to_tool_file_result\"
           else            else
             if test -n "$save_libobjs"; then              if test -n "$save_libobjs"; then
               func_verbose "creating reloadable object files..."                func_verbose "creating reloadable object files..."
Line 7676  EOF Line 8800  EOF
                 len=$func_arith_result                  len=$func_arith_result
                 if test "X$objlist" = X ||                  if test "X$objlist" = X ||
                    test "$len" -lt "$max_cmd_len"; then                     test "$len" -lt "$max_cmd_len"; then
                  func_append objlist " $obj"                  objlist="$objlist $obj"
                 else                  else
                   # The command $test_cmds is almost too long, add a                    # The command $test_cmds is almost too long, add a
                   # command to the queue.                    # command to the queue.
                   if test "$k" -eq 1 ; then                    if test "$k" -eq 1 ; then
                     # The first file doesn't have a previous command to add.                      # The first file doesn't have a previous command to add.
                    eval concat_cmds=\"$reload_cmds $objlist $last_robj\"                    reload_objs=$objlist
                     eval concat_cmds=\"$reload_cmds\"
                   else                    else
                     # All subsequent reloadable object files will link in                      # All subsequent reloadable object files will link in
                     # the last one created.                      # the last one created.
                    eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj~\$RM $last_robj\"                    reload_objs="$objlist $last_robj"
                     eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\"
                   fi                    fi
                   last_robj=$output_objdir/$output_la-${k}.$objext                    last_robj=$output_objdir/$output_la-${k}.$objext
                   func_arith $k + 1                    func_arith $k + 1
                   k=$func_arith_result                    k=$func_arith_result
                   output=$output_objdir/$output_la-${k}.$objext                    output=$output_objdir/$output_la-${k}.$objext
                  objlist=$obj                  objlist=" $obj"
                   func_len " $last_robj"                    func_len " $last_robj"
                   func_arith $len0 + $func_len_result                    func_arith $len0 + $func_len_result
                   len=$func_arith_result                    len=$func_arith_result
Line 7702  EOF Line 8828  EOF
               # reloadable object file.  All subsequent reloadable object                # reloadable object file.  All subsequent reloadable object
               # files will link in the last one created.                # files will link in the last one created.
               test -z "$concat_cmds" || concat_cmds=$concat_cmds~                test -z "$concat_cmds" || concat_cmds=$concat_cmds~
              eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\"              reload_objs="$objlist $last_robj"
               eval concat_cmds=\"\${concat_cmds}$reload_cmds\"
               if test -n "$last_robj"; then                if test -n "$last_robj"; then
                 eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"                  eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"
               fi                fi
Line 7740  EOF Line 8867  EOF
                 lt_exit=$?                  lt_exit=$?
   
                 # Restore the uninstalled library and exit                  # Restore the uninstalled library and exit
                if test "$mode" = relink; then                if test "$opt_mode" = relink; then
                   ( cd "$output_objdir" && \                    ( cd "$output_objdir" && \
                     $RM "${realname}T" && \                      $RM "${realname}T" && \
                     $MV "${realname}U" "$realname" )                      $MV "${realname}U" "$realname" )
Line 7761  EOF Line 8888  EOF
             if test -n "$export_symbols" && test -n "$include_expsyms"; then              if test -n "$export_symbols" && test -n "$include_expsyms"; then
               tmp_export_symbols="$export_symbols"                tmp_export_symbols="$export_symbols"
               test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"                test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
              $opt_dry_run || eval '$ECHO "X$include_expsyms" | $Xsed | $SP2NL >> "$tmp_export_symbols"'              $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
             fi              fi
   
             if test -n "$orig_export_symbols"; then              if test -n "$orig_export_symbols"; then
Line 7833  EOF Line 8960  EOF
             lt_exit=$?              lt_exit=$?
   
             # Restore the uninstalled library and exit              # Restore the uninstalled library and exit
            if test "$mode" = relink; then            if test "$opt_mode" = relink; then
               ( cd "$output_objdir" && \                ( cd "$output_objdir" && \
                 $RM "${realname}T" && \                  $RM "${realname}T" && \
                 $MV "${realname}U" "$realname" )                  $MV "${realname}U" "$realname" )
Line 7845  EOF Line 8972  EOF
         IFS="$save_ifs"          IFS="$save_ifs"
   
         # Restore the uninstalled library and exit          # Restore the uninstalled library and exit
        if test "$mode" = relink; then        if test "$opt_mode" = relink; then
           $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?            $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
   
           if test -n "$convenience"; then            if test -n "$convenience"; then
Line 7926  EOF Line 9053  EOF
       if test -n "$convenience"; then        if test -n "$convenience"; then
         if test -n "$whole_archive_flag_spec"; then          if test -n "$whole_archive_flag_spec"; then
           eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"            eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
          reload_conv_objs=$reload_objs\ `$ECHO "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`          reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
         else          else
           gentop="$output_objdir/${obj}x"            gentop="$output_objdir/${obj}x"
           generated="$generated $gentop"            generated="$generated $gentop"
Line 7936  EOF Line 9063  EOF
         fi          fi
       fi        fi
   
         # If we're not building shared, we need to use non_pic_objs
         test "$build_libtool_libs" != yes && libobjs="$non_pic_objects"
   
       # Create the old-style object.        # Create the old-style object.
      reload_objs="$objs$old_deplibs "`$ECHO "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test      reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
   
       output="$obj"        output="$obj"
       func_execute_cmds "$reload_cmds" 'exit $?'        func_execute_cmds "$reload_cmds" 'exit $?'
Line 7997  EOF Line 9127  EOF
       case $host in        case $host in
       *-*-rhapsody* | *-*-darwin1.[012])        *-*-rhapsody* | *-*-darwin1.[012])
         # On Rhapsody replace the C library is the System framework          # On Rhapsody replace the C library is the System framework
        compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`        compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'`
        finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`        finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'`
         ;;          ;;
       esac        esac
   
Line 8015  EOF Line 9145  EOF
           esac            esac
         fi          fi
         # Time to change all our "foo.ltframework" stuff back to "-framework foo"          # Time to change all our "foo.ltframework" stuff back to "-framework foo"
        compile_deplibs=`$ECHO "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`        compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
        finalize_deplibs=`$ECHO "X $finalize_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`        finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
         ;;          ;;
       esac        esac
   
Line 8153  EOF Line 9283  EOF
   
       if test -n "$libobjs" && test "$build_old_libs" = yes; then        if test -n "$libobjs" && test "$build_old_libs" = yes; then
         # Transform all the library objects into standard objects.          # Transform all the library objects into standard objects.
        compile_command=`$ECHO "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`        compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
        finalize_command=`$ECHO "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`        finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
       fi        fi
   
       func_generate_dlsyms "$outputname" "@PROGRAM@" "no"        func_generate_dlsyms "$outputname" "@PROGRAM@" "no"
Line 8166  EOF Line 9296  EOF
   
       wrappers_required=yes        wrappers_required=yes
       case $host in        case $host in
         *cegcc* | *mingw32ce*)
           # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.
           wrappers_required=no
           ;;
       *cygwin* | *mingw* )        *cygwin* | *mingw* )
         if test "$build_libtool_libs" != yes; then          if test "$build_libtool_libs" != yes; then
           wrappers_required=no            wrappers_required=no
         fi          fi
         ;;          ;;
       *cegcc)  
         # Disable wrappers for cegcc, we are cross compiling anyway.  
         wrappers_required=no  
         ;;  
       *)        *)
         if test "$need_relink" = no || test "$build_libtool_libs" != yes; then          if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
           wrappers_required=no            wrappers_required=no
Line 8183  EOF Line 9313  EOF
       esac        esac
       if test "$wrappers_required" = no; then        if test "$wrappers_required" = no; then
         # Replace the output file specification.          # Replace the output file specification.
        compile_command=`$ECHO "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`        compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
         link_command="$compile_command$compile_rpath"          link_command="$compile_command$compile_rpath"
   
         # We have no uninstalled library dependencies, so finalize right now.          # We have no uninstalled library dependencies, so finalize right now.
         exit_status=0          exit_status=0
         func_show_eval "$link_command" 'exit_status=$?'          func_show_eval "$link_command" 'exit_status=$?'
   
           if test -n "$postlink_cmds"; then
             func_to_tool_file "$output"
             postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
             func_execute_cmds "$postlink_cmds" 'exit $?'
           fi
   
         # Delete the generated files.          # Delete the generated files.
         if test -f "$output_objdir/${outputname}S.${objext}"; then          if test -f "$output_objdir/${outputname}S.${objext}"; then
           func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'            func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'
Line 8230  EOF Line 9366  EOF
         # We don't need to create a wrapper script.          # We don't need to create a wrapper script.
         link_command="$compile_var$compile_command$compile_rpath"          link_command="$compile_var$compile_command$compile_rpath"
         # Replace the output file specification.          # Replace the output file specification.
        link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`        link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
         # Delete the old output file.          # Delete the old output file.
         $opt_dry_run || $RM $output          $opt_dry_run || $RM $output
         # Link the executable and exit          # Link the executable and exit
         func_show_eval "$link_command" 'exit $?'          func_show_eval "$link_command" 'exit $?'
   
           if test -n "$postlink_cmds"; then
             func_to_tool_file "$output"
             postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
             func_execute_cmds "$postlink_cmds" 'exit $?'
           fi
   
         exit $EXIT_SUCCESS          exit $EXIT_SUCCESS
       fi        fi
   
Line 8249  EOF Line 9392  EOF
         if test "$fast_install" != no; then          if test "$fast_install" != no; then
           link_command="$finalize_var$compile_command$finalize_rpath"            link_command="$finalize_var$compile_command$finalize_rpath"
           if test "$fast_install" = yes; then            if test "$fast_install" = yes; then
            relink_command=`$ECHO "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`            relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
           else            else
             # fast_install is set to needless              # fast_install is set to needless
             relink_command=              relink_command=
Line 8261  EOF Line 9404  EOF
       fi        fi
   
       # Replace the output file specification.        # Replace the output file specification.
      link_command=`$ECHO "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`      link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
   
       # Delete the old output files.        # Delete the old output files.
       $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname        $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname
   
       func_show_eval "$link_command" 'exit $?'        func_show_eval "$link_command" 'exit $?'
   
         if test -n "$postlink_cmds"; then
           func_to_tool_file "$output_objdir/$outputname"
           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'`
           func_execute_cmds "$postlink_cmds" 'exit $?'
         fi
   
       # Now create the wrapper script.        # Now create the wrapper script.
       func_verbose "creating $output"        func_verbose "creating $output"
   
Line 8285  EOF Line 9434  EOF
           fi            fi
         done          done
         relink_command="(cd `pwd`; $relink_command)"          relink_command="(cd `pwd`; $relink_command)"
        relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`        relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
       fi        fi
   
       # Quote $ECHO for shipping.  
       if test "X$ECHO" = "X$SHELL $progpath --fallback-echo"; then  
         case $progpath in  
         [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";;  
         *) qecho="$SHELL `pwd`/$progpath --fallback-echo";;  
         esac  
         qecho=`$ECHO "X$qecho" | $Xsed -e "$sed_quote_subst"`  
       else  
         qecho=`$ECHO "X$ECHO" | $Xsed -e "$sed_quote_subst"`  
       fi  
   
       # Only actually do things if not in dry run mode.        # Only actually do things if not in dry run mode.
       $opt_dry_run || {        $opt_dry_run || {
         # win32 will think the script is a binary if it has          # win32 will think the script is a binary if it has
Line 8417  EOF Line 9555  EOF
             done | sort | sort -uc >/dev/null 2>&1); then              done | sort | sort -uc >/dev/null 2>&1); then
           :            :
         else          else
          $ECHO "copying selected object files to avoid basename conflicts..."          echo "copying selected object files to avoid basename conflicts..."
           gentop="$output_objdir/${outputname}x"            gentop="$output_objdir/${outputname}x"
           generated="$generated $gentop"            generated="$generated $gentop"
           func_mkdir_p "$gentop"            func_mkdir_p "$gentop"
Line 8449  EOF Line 9587  EOF
             esac              esac
           done            done
         fi          fi
           func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
           tool_oldlib=$func_to_tool_file_result
         eval cmds=\"$old_archive_cmds\"          eval cmds=\"$old_archive_cmds\"
   
         func_len " $cmds"          func_len " $cmds"
         len=$func_len_result          len=$func_len_result
         if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then          if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
           cmds=$old_archive_cmds            cmds=$old_archive_cmds
           elif test -n "$archiver_list_spec"; then
             func_verbose "using command file archive linking..."
             for obj in $oldobjs
             do
               func_to_tool_file "$obj"
               $ECHO "$func_to_tool_file_result"
             done > $output_objdir/$libname.libcmd
             func_to_tool_file "$output_objdir/$libname.libcmd"
             oldobjs=" $archiver_list_spec$func_to_tool_file_result"
             cmds=$old_archive_cmds
         else          else
           # the command line is too long to link in one step, link in parts            # the command line is too long to link in one step, link in parts
           func_verbose "using piecewise archive linking..."            func_verbose "using piecewise archive linking..."
Line 8478  EOF Line 9628  EOF
             func_len " $obj"              func_len " $obj"
             func_arith $len + $func_len_result              func_arith $len + $func_len_result
             len=$func_arith_result              len=$func_arith_result
            func_append objlist " $obj"            objlist="$objlist $obj"
             if test "$len" -lt "$max_cmd_len"; then              if test "$len" -lt "$max_cmd_len"; then
               :                :
             else              else
Line 8528  EOF Line 9678  EOF
       done        done
       # Quote the link command for shipping.        # Quote the link command for shipping.
       relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"        relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
      relink_command=`$ECHO "X$relink_command" | $Xsed -e "$sed_quote_subst"`      relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
       if test "$hardcode_automatic" = yes ; then        if test "$hardcode_automatic" = yes ; then
         relink_command=          relink_command=
       fi        fi
Line 8548  EOF Line 9698  EOF
               *.la)                *.la)
                 func_basename "$deplib"                  func_basename "$deplib"
                 name="$func_basename_result"                  name="$func_basename_result"
                eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`                func_resolve_sysroot "$deplib"
                 eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result`
                 test -z "$libdir" && \                  test -z "$libdir" && \
                   func_fatal_error "\`$deplib' is not a valid libtool archive"                    func_fatal_error "\`$deplib' is not a valid libtool archive"
                newdependency_libs="$newdependency_libs $libdir/$name"                newdependency_libs="$newdependency_libs ${lt_sysroot:+=}$libdir/$name"
                 ;;                  ;;
                 -L*)
                   func_stripname -L '' "$deplib"
                   func_replace_sysroot "$func_stripname_result"
                   newdependency_libs="$newdependency_libs -L$func_replace_sysroot_result"
                   ;;
                 -R*)
                   func_stripname -R '' "$deplib"
                   func_replace_sysroot "$func_stripname_result"
                   newdependency_libs="$newdependency_libs -R$func_replace_sysroot_result"
                   ;;
               *) newdependency_libs="$newdependency_libs $deplib" ;;                *) newdependency_libs="$newdependency_libs $deplib" ;;
               esac                esac
             done              done
Line 8567  EOF Line 9728  EOF
                 eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`                  eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
                 test -z "$libdir" && \                  test -z "$libdir" && \
                   func_fatal_error "\`$lib' is not a valid libtool archive"                    func_fatal_error "\`$lib' is not a valid libtool archive"
                newdlfiles="$newdlfiles $libdir/$name"                newdlfiles="$newdlfiles ${lt_sysroot:+=}$libdir/$name"
                 ;;                  ;;
               *) newdlfiles="$newdlfiles $lib" ;;                *) newdlfiles="$newdlfiles $lib" ;;
               esac                esac
Line 8586  EOF Line 9747  EOF
                 eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`                  eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
                 test -z "$libdir" && \                  test -z "$libdir" && \
                   func_fatal_error "\`$lib' is not a valid libtool archive"                    func_fatal_error "\`$lib' is not a valid libtool archive"
                newdlprefiles="$newdlprefiles $libdir/$name"                newdlprefiles="$newdlprefiles ${lt_sysroot:+=}$libdir/$name"
                 ;;                  ;;
               esac                esac
             done              done
Line 8613  EOF Line 9774  EOF
           fi            fi
           $RM $output            $RM $output
           # place dlname in correct position for cygwin            # place dlname in correct position for cygwin
             # In fact, it would be nice if we could use this code for all target
             # systems that can't hard-code library paths into their executables
             # and that have no shared library path variable independent of PATH,
             # but it turns out we can't easily determine that from inspecting
             # libtool variables, so we have to hard-code the OSs to which it
             # applies here; at the moment, that means platforms that use the PE
             # object format with DLL files.  See the long comment at the top of
             # tests/bindir.at for full details.
           tdlname=$dlname            tdlname=$dlname
           case $host,$output,$installed,$module,$dlname in            case $host,$output,$installed,$module,$dlname in
            *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;            *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll)
               # If a -bindir argument was supplied, place the dll there.
               if test "x$bindir" != x ;
               then
                 func_relative_path "$install_libdir" "$bindir"
                 tdlname=$func_relative_path_result$dlname
               else
                 # Otherwise fall back on heuristic.
                 tdlname=../bin/$dlname
               fi
               ;;
           esac            esac
           $ECHO > $output "\            $ECHO > $output "\
 # $outputname - a libtool library file  # $outputname - a libtool library file
Line 8674  relink_command=\"$relink_command\"" Line 9853  relink_command=\"$relink_command\""
     exit $EXIT_SUCCESS      exit $EXIT_SUCCESS
 }  }
   
{ test "$mode" = link || test "$mode" = relink; } &&{ test "$opt_mode" = link || test "$opt_mode" = relink; } &&
     func_mode_link ${1+"$@"}      func_mode_link ${1+"$@"}
   
   
Line 8705  func_mode_uninstall () Line 9884  func_mode_uninstall ()
   
     rmdirs=      rmdirs=
   
     origobjdir="$objdir"  
     for file in $files; do      for file in $files; do
       func_dirname "$file" "" "."        func_dirname "$file" "" "."
       dir="$func_dirname_result"        dir="$func_dirname_result"
       if test "X$dir" = X.; then        if test "X$dir" = X.; then
        objdir="$origobjdir"        odir="$objdir"
       else        else
        objdir="$dir/$origobjdir"        odir="$dir/$objdir"
       fi        fi
       func_basename "$file"        func_basename "$file"
       name="$func_basename_result"        name="$func_basename_result"
      test "$mode" = uninstall && objdir="$dir"      test "$opt_mode" = uninstall && odir="$dir"
   
      # Remember objdir for removal later, being careful to avoid duplicates      # Remember odir for removal later, being careful to avoid duplicates
      if test "$mode" = clean; then      if test "$opt_mode" = clean; then
         case " $rmdirs " in          case " $rmdirs " in
          *" $objdir "*) ;;          *" $odir "*) ;;
          *) rmdirs="$rmdirs $objdir" ;;          *) rmdirs="$rmdirs $odir" ;;
         esac          esac
       fi        fi
   
Line 8748  func_mode_uninstall () Line 9926  func_mode_uninstall ()
   
           # Delete the libtool libraries and symlinks.            # Delete the libtool libraries and symlinks.
           for n in $library_names; do            for n in $library_names; do
            rmfiles="$rmfiles $objdir/$n"            rmfiles="$rmfiles $odir/$n"
           done            done
          test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"          test -n "$old_library" && rmfiles="$rmfiles $odir/$old_library"
   
          case "$mode" in          case "$opt_mode" in
           clean)            clean)
            case "  $library_names " in            case " $library_names " in
            # "  " in the beginning catches empty $dlname 
             *" $dlname "*) ;;              *" $dlname "*) ;;
            *) rmfiles="$rmfiles $objdir/$dlname" ;;            *) test -n "$dlname" && rmfiles="$rmfiles $odir/$dlname" ;;
             esac              esac
            test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"            test -n "$libdir" && rmfiles="$rmfiles $odir/$name $odir/${name}i"
             ;;              ;;
           uninstall)            uninstall)
             if test -n "$library_names"; then              if test -n "$library_names"; then
Line 8799  func_mode_uninstall () Line 9976  func_mode_uninstall ()
         ;;          ;;
   
       *)        *)
        if test "$mode" = clean ; then        if test "$opt_mode" = clean ; then
           noexename=$name            noexename=$name
           case $file in            case $file in
           *.exe)            *.exe)
Line 8826  func_mode_uninstall () Line 10003  func_mode_uninstall ()
   
             # note $name still contains .exe if it was in $file originally              # note $name still contains .exe if it was in $file originally
             # as does the version of $file that was added into $rmfiles              # as does the version of $file that was added into $rmfiles
            rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"            rmfiles="$rmfiles $odir/$name $odir/${name}S.${objext}"
             if test "$fast_install" = yes && test -n "$relink_command"; then              if test "$fast_install" = yes && test -n "$relink_command"; then
              rmfiles="$rmfiles $objdir/lt-$name"              rmfiles="$rmfiles $odir/lt-$name"
             fi              fi
             if test "X$noexename" != "X$name" ; then              if test "X$noexename" != "X$name" ; then
              rmfiles="$rmfiles $objdir/lt-${noexename}.c"              rmfiles="$rmfiles $odir/lt-${noexename}.c"
             fi              fi
           fi            fi
         fi          fi
Line 8839  func_mode_uninstall () Line 10016  func_mode_uninstall ()
       esac        esac
       func_show_eval "$RM $rmfiles" 'exit_status=1'        func_show_eval "$RM $rmfiles" 'exit_status=1'
     done      done
     objdir="$origobjdir"  
   
     # Try to remove the ${objdir}s in the directories where we deleted files      # Try to remove the ${objdir}s in the directories where we deleted files
     for dir in $rmdirs; do      for dir in $rmdirs; do
Line 8851  func_mode_uninstall () Line 10027  func_mode_uninstall ()
     exit $exit_status      exit $exit_status
 }  }
   
{ test "$mode" = uninstall || test "$mode" = clean; } &&{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } &&
     func_mode_uninstall ${1+"$@"}      func_mode_uninstall ${1+"$@"}
   
test -z "$mode" && {test -z "$opt_mode" && {
   help="$generic_help"    help="$generic_help"
   func_fatal_help "you must specify a MODE"    func_fatal_help "you must specify a MODE"
 }  }
   
 test -z "$exec_cmd" && \  test -z "$exec_cmd" && \
  func_fatal_help "invalid operation mode \`$mode'"  func_fatal_help "invalid operation mode \`$opt_mode'"
   
 if test -n "$exec_cmd"; then  if test -n "$exec_cmd"; then
   eval exec "$exec_cmd"    eval exec "$exec_cmd"

Removed from v.1.1.1.1.2.3  
changed lines
  Added in v.1.1.1.1.2.3.2.1


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>