| ltmain.sh | ltmain.sh | |||
|---|---|---|---|---|
| # Generated from ltmain.m4sh. | ||||
| # libtool (GNU libtool) 2.2.10 | # libtool (GNU libtool) 2.4 | |||
| # 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, | # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, | |||
| # 2007, 2008, 2009, 2010 Free Software Foundation, Inc. | # 2007, 2008, 2009, 2010 Free Software Foundation, Inc. | |||
| # This is free software; see the source for copying conditions. There is N O | # This is free software; see the source for copying conditions. There is N O | |||
| # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOS E. | # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOS E. | |||
| # GNU Libtool is free software; you can redistribute it and/or modify | # GNU Libtool is free software; you can redistribute it and/or modify | |||
| # it under the terms of the GNU General Public License as published by | # it under the terms of the GNU General Public License as published by | |||
| # the Free Software Foundation; either version 2 of the License, or | # the Free Software Foundation; either version 2 of the License, or | |||
| skipping to change at line 73 | skipping to change at line 72 | |||
| # Try `$progname --help --mode=MODE' for a more detailed description of MOD E. | # Try `$progname --help --mode=MODE' for a more detailed description of MOD E. | |||
| # | # | |||
| # 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.10 | # $progname: (GNU libtool) 2.4 | |||
| # 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=libtool | PROGRAM=libtool | |||
| PACKAGE=libtool | PACKAGE=libtool | |||
| VERSION=2.2.10 | VERSION=2.4 | |||
| TIMESTAMP="" | TIMESTAMP="" | |||
| package_revision=1.3175 | package_revision=1.3293 | |||
| # 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 | |||
| emulate sh | emulate sh | |||
| NULLCMD=: | NULLCMD=: | |||
| # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which | # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which | |||
| # is contrary to our usage. Disable this feature. | # is contrary to our usage. Disable this feature. | |||
| alias -g '${1+"$@"}'='"$@"' | alias -g '${1+"$@"}'='"$@"' | |||
| setopt NO_GLOB_SUBST | setopt NO_GLOB_SUBST | |||
| else | else | |||
| skipping to change at line 163 | skipping to change at line 164 | |||
| exit_status=$EXIT_SUCCESS | exit_status=$EXIT_SUCCESS | |||
| # Make sure IFS has a sensible default | # Make sure IFS has a sensible default | |||
| lt_nl=' | lt_nl=' | |||
| ' | ' | |||
| IFS=" $lt_nl" | IFS=" $lt_nl" | |||
| dirname="s,/[^/]*$,," | dirname="s,/[^/]*$,," | |||
| basename="s,^.*/,," | basename="s,^.*/,," | |||
| # func_dirname file append nondir_replacement | ||||
| # Compute the dirname of FILE. If nonempty, add APPEND to the result, | ||||
| # otherwise set result to NONDIR_REPLACEMENT. | ||||
| func_dirname () | ||||
| { | ||||
| func_dirname_result=`$ECHO "${1}" | $SED "$dirname"` | ||||
| if test "X$func_dirname_result" = "X${1}"; then | ||||
| func_dirname_result="${3}" | ||||
| else | ||||
| func_dirname_result="$func_dirname_result${2}" | ||||
| fi | ||||
| } # func_dirname may be replaced by extended shell implementation | ||||
| # func_basename file | ||||
| func_basename () | ||||
| { | ||||
| func_basename_result=`$ECHO "${1}" | $SED "$basename"` | ||||
| } # func_basename may be replaced by extended shell 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: | |||
| # dirname: Compute the dirname of FILE. If nonempty, | # dirname: Compute the dirname of FILE. If nonempty, | |||
| # add APPEND to the result, otherwise set result | # add APPEND to the result, otherwise set result | |||
| # to NONDIR_REPLACEMENT. | # to NONDIR_REPLACEMENT. | |||
| # value returned in "$func_dirname_result" | # value returned in "$func_dirname_result" | |||
| # basename: Compute filename of FILE. | # basename: Compute filename of FILE. | |||
| # value retuned in "$func_basename_result" | # value retuned in "$func_basename_result" | |||
| # Implementation must be kept synchronized with func_dirname | # Implementation must be kept synchronized with func_dirname | |||
| # and func_basename. For efficiency, we do not delegate to | # and func_basename. For efficiency, we do not delegate to | |||
| # those functions but instead duplicate the functionality here. | # those functions but instead duplicate the functionality here. | |||
| func_dirname_and_basename () | func_dirname_and_basename () | |||
| { | { | |||
| # Extract subdirectory from the argument. | # Extract subdirectory from the argument. | |||
| func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"` | func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"` | |||
| if test "X$func_dirname_result" = "X${1}"; then | if test "X$func_dirname_result" = "X${1}"; then | |||
| func_dirname_result="${3}" | func_dirname_result="${3}" | |||
| else | else | |||
| func_dirname_result="$func_dirname_result${2}" | func_dirname_result="$func_dirname_result${2}" | |||
| fi | fi | |||
| func_basename_result=`$ECHO "${1}" | $SED -e "$basename"` | func_basename_result=`$ECHO "${1}" | $SED -e "$basename"` | |||
| } | } # func_dirname_and_basename may be replaced by extended shell implementat | |||
| ion | ||||
| # Generated shell functions inserted here. | # func_stripname prefix suffix name | |||
| # strip PREFIX and SUFFIX off of NAME. | ||||
| # PREFIX and SUFFIX must not contain globbing or regex special | ||||
| # characters, hashes, percent signs, but SUFFIX may contain a leading | ||||
| # dot (in which case that matches only a dot). | ||||
| # func_strip_suffix prefix name | ||||
| func_stripname () | ||||
| { | ||||
| case ${2} in | ||||
| .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2} | ||||
| \$%%"`;; | ||||
| *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%% | ||||
| "`;; | ||||
| esac | ||||
| } # func_stripname may be replaced by extended shell implementation | ||||
| # These SED scripts presuppose an absolute path with a trailing slash. | # These SED scripts presuppose an absolute path with a trailing slash. | |||
| pathcar='s,^/\([^/]*\).*$,\1,' | pathcar='s,^/\([^/]*\).*$,\1,' | |||
| pathcdr='s,^/[^/]*,,' | pathcdr='s,^/[^/]*,,' | |||
| removedotparts=':dotsl | removedotparts=':dotsl | |||
| s@/\./@/@g | s@/\./@/@g | |||
| t dotsl | t dotsl | |||
| s,/\.$,/,' | s,/\.$,/,' | |||
| collapseslashes='s@/\{1,\}@/@g' | collapseslashes='s@/\{1,\}@/@g' | |||
| finalslash='s,/*$,/,' | finalslash='s,/*$,/,' | |||
| skipping to change at line 370 | skipping to change at line 402 | |||
| esac | esac | |||
| # 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//' | Xsed="${SED}"' -e 1s/^X//' | |||
| sed_quote_subst='s/\([`"$\\]\)/\\\1/g' | 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. | |||
| # Since each input `\' is now two `\'s, look for any number of runs of | # Since each input `\' is now two `\'s, look for any number of runs of | |||
| # four `\'s followed by two `\'s and then a '$'. `\' that '$'. | # four `\'s followed by two `\'s and then a '$'. `\' that '$'. | |||
| bs='\\' | bs='\\' | |||
| bs2='\\\\' | bs2='\\\\' | |||
| bs4='\\\\\\\\' | bs4='\\\\\\\\' | |||
| dollar='\$' | dollar='\$' | |||
| sed_double_backslash="\ | sed_double_backslash="\ | |||
| skipping to change at line 398 | skipping to change at line 439 | |||
| opt_help=false | opt_help=false | |||
| opt_quiet=false | opt_quiet=false | |||
| opt_verbose=false | opt_verbose=false | |||
| opt_warning=: | opt_warning=: | |||
| # func_echo arg... | # func_echo arg... | |||
| # Echo program name prefixed message, along with the current mode | # Echo program name prefixed message, along with the current mode | |||
| # 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... | |||
| # Echo program name prefixed message in verbose mode only. | # Echo program name prefixed message in verbose mode only. | |||
| func_verbose () | func_verbose () | |||
| { | { | |||
| $opt_verbose && func_echo ${1+"$@"} | $opt_verbose && func_echo ${1+"$@"} | |||
| # A bug in bash halts the script if the last line of a function | # A bug in bash halts the script if the last line of a function | |||
| # fails when set -e is in force, so we need another command to | # fails when set -e is in force, so we need another command to | |||
| skipping to change at line 424 | skipping to change at line 465 | |||
| # Invoke $ECHO with all args, space-separated. | # Invoke $ECHO with all args, space-separated. | |||
| func_echo_all () | func_echo_all () | |||
| { | { | |||
| $ECHO "$*" | $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: | |||
| : | : | |||
| } | } | |||
| # func_fatal_error arg... | # func_fatal_error arg... | |||
| # Echo program name prefixed message to standard error, and exit. | # Echo program name prefixed message to standard error, and exit. | |||
| func_fatal_error () | func_fatal_error () | |||
| { | { | |||
| func_error ${1+"$@"} | func_error ${1+"$@"} | |||
| skipping to change at line 643 | skipping to change at line 684 | |||
| eval "$lt_user_locale | eval "$lt_user_locale | |||
| $my_cmd" | $my_cmd" | |||
| my_status=$? | my_status=$? | |||
| eval "$lt_safe_locale" | eval "$lt_safe_locale" | |||
| if test "$my_status" -eq 0; then :; else | if test "$my_status" -eq 0; then :; else | |||
| eval "(exit $my_status); $my_fail_exp" | eval "(exit $my_status); $my_fail_exp" | |||
| fi | fi | |||
| 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 () | |||
| { | { | |||
| $opt_debug | ||||
| $SED -n '/(C)/!b go | $SED -n '/(C)/!b go | |||
| :more | :more | |||
| /\./!{ | /\./!{ | |||
| N | N | |||
| s/\n# / / | s/\n# / / | |||
| b more | b more | |||
| } | } | |||
| :go | :go | |||
| /^# '$PROGRAM' (GNU /,/# warranty; / { | /^# '$PROGRAM' (GNU /,/# warranty; / { | |||
| s/^# // | s/^# // | |||
| skipping to change at line 668 | skipping to change at line 728 | |||
| s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ | s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ | |||
| p | p | |||
| }' < "$progpath" | }' < "$progpath" | |||
| exit $? | exit $? | |||
| } | } | |||
| # func_usage | # func_usage | |||
| # Echo short help message to standard output and exit. | # Echo short help message to standard output and exit. | |||
| func_usage () | func_usage () | |||
| { | { | |||
| $opt_debug | ||||
| $SED -n '/^# Usage:/,/^# *.*--help/ { | $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 [NOEXIT] | # 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. | # unless 'noexit' is passed as argument. | |||
| func_help () | func_help () | |||
| { | { | |||
| $opt_debug | ||||
| $SED -n '/^# Usage:/,/# Report bugs to/ { | $SED -n '/^# Usage:/,/# Report bugs to/ { | |||
| s/^# // | s/^# // | |||
| s/^# *$// | s/^# *$// | |||
| s*\$progname*'$progname'* | s*\$progname*'$progname'* | |||
| s*\$host*'"$host"'* | s*\$host*'"$host"'* | |||
| s*\$SHELL*'"$SHELL"'* | s*\$SHELL*'"$SHELL"'* | |||
| s*\$LTCC*'"$LTCC"'* | s*\$LTCC*'"$LTCC"'* | |||
| 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 --version) 2>/dev/null |$SED 1q`"' / | |||
| s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"' / | s/\$autoconf_version/'"`(autoconf --version) 2>/dev/null |$SED 1q`"' / | |||
| p | p | |||
| }' < "$progpath" | d | |||
| } | ||||
| /^# .* home page:/b print | ||||
| /^# General help using/b print | ||||
| ' < "$progpath" | ||||
| ret=$? | ret=$? | |||
| if test -z "$1"; then | if test -z "$1"; then | |||
| exit $ret | exit $ret | |||
| fi | fi | |||
| } | } | |||
| # func_missing_arg argname | # func_missing_arg argname | |||
| # Echo program name prefixed message to standard error and set global | # Echo program name prefixed message to standard error and set global | |||
| # exit_cmd. | # exit_cmd. | |||
| func_missing_arg () | func_missing_arg () | |||
| { | { | |||
| $opt_debug | ||||
| func_error "missing argument for $1." | func_error "missing argument for $1." | |||
| exit_cmd=exit | exit_cmd=exit | |||
| } | } | |||
| # 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 () | ||||
| { | ||||
| my_sed_short_opt='1s/^\(..\).*$/\1/;q' | ||||
| my_sed_short_rest='1s/^..\(.*\)$/\1/;q' | ||||
| func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"` | ||||
| func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"` | ||||
| } # func_split_short_opt may be replaced by extended shell 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 () | ||||
| { | ||||
| my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q' | ||||
| my_sed_long_arg='1s/^--[^=]*=//' | ||||
| func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"` | ||||
| func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"` | ||||
| } # func_split_long_opt may be replaced by extended shell implementation | ||||
| exit_cmd=: | exit_cmd=: | |||
| 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=`expr "${@}"` | ||||
| } # func_arith may be replaced by extended shell implementation | ||||
| # func_len string | ||||
| # STRING may not start with a hyphen. | ||||
| func_len () | ||||
| { | ||||
| func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len` | ||||
| } # func_len may be replaced by extended shell implementation | ||||
| # func_lo2o object | ||||
| func_lo2o () | ||||
| { | ||||
| func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"` | ||||
| } # func_lo2o may be replaced by extended shell implementation | ||||
| # func_xform libobj-or-source | ||||
| func_xform () | ||||
| { | ||||
| func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'` | ||||
| } # func_xform may be replaced by extended shell 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. | |||
| func_fatal_configuration () | func_fatal_configuration () | |||
| { | { | |||
| func_error ${1+"$@"} | func_error ${1+"$@"} | |||
| func_error "See the $PACKAGE documentation for more information." | func_error "See the $PACKAGE documentation for more information." | |||
| func_fatal_error "Fatal configuration error." | func_fatal_error "Fatal configuration error." | |||
| } | } | |||
| skipping to change at line 826 | skipping to change at line 955 | |||
| # quotes we have to do it in 2 steps: | # quotes we have to do it in 2 steps: | |||
| extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` | extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` | |||
| eval "$extractedcf" | eval "$extractedcf" | |||
| else | else | |||
| func_error "ignoring unknown tag $tagname" | func_error "ignoring unknown tag $tagname" | |||
| fi | fi | |||
| ;; | ;; | |||
| 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 $VERSIO | ||||
| N | ||||
| $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 $VERSIO | ||||
| N | ||||
| $progname: and run autoconf again. | ||||
| _LT_EOF | ||||
| fi | ||||
| else | ||||
| cat >&2 <<_LT_EOF | ||||
| $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $pa | ||||
| ckage_revision, | ||||
| $progname: but the definition of this LT_INIT comes from revision $macro_re | ||||
| vision. | ||||
| $progname: You should recreate aclocal.m4 with macros from revision $packag | ||||
| e_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 | ||||
| ;; | # Shorthand for --mode=foo, only valid as the first argument | |||
| compile|compil|compi|comp|com|co|c) | case $1 in | |||
| shift; set dummy --mode compile ${1+"$@"}; shift | clean|clea|cle|cl) | |||
| ;; | shift; set dummy --mode clean ${1+"$@"}; shift | |||
| execute|execut|execu|exec|exe|ex|e) | ;; | |||
| shift; set dummy --mode execute ${1+"$@"}; shift | compile|compil|compi|comp|com|co|c) | |||
| ;; | shift; set dummy --mode compile ${1+"$@"}; shift | |||
| finish|finis|fini|fin|fi|f) | ;; | |||
| shift; set dummy --mode finish ${1+"$@"}; shift | execute|execut|execu|exec|exe|ex|e) | |||
| ;; | shift; set dummy --mode execute ${1+"$@"}; shift | |||
| install|instal|insta|inst|ins|in|i) | ;; | |||
| shift; set dummy --mode install ${1+"$@"}; shift | finish|finis|fini|fin|fi|f) | |||
| ;; | shift; set dummy --mode finish ${1+"$@"}; shift | |||
| link|lin|li|l) | ;; | |||
| shift; set dummy --mode link ${1+"$@"}; shift | install|instal|insta|inst|ins|in|i) | |||
| ;; | shift; set dummy --mode install ${1+"$@"}; shift | |||
| uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) | ;; | |||
| shift; set dummy --mode uninstall ${1+"$@"}; shift | link|lin|li|l) | |||
| ;; | shift; set dummy --mode link ${1+"$@"}; shift | |||
| esac | ;; | |||
| 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_verbose=: | ||||
| opt_silent=false | ||||
| opt_verbose=false | ||||
| # Parse non-mode specific arguments: | # Parse options once, thoroughly. This comes as soon as possible in the | |||
| while test "$#" -gt 0; do | # 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) | |||
| optarg="$1" | ||||
| --mode) test "$#" -eq 0 && func_missing_arg "$opt" && break | opt_dlopen="${opt_dlopen+$opt_dlopen | |||
| case $1 in | }$optarg" | |||
| # Valid mode arguments: | ||||
| clean) ;; | ||||
| compile) ;; | ||||
| execute) ;; | ||||
| finish) ;; | ||||
| install) ;; | ||||
| link) ;; | ||||
| relink) ;; | ||||
| uninstall) ;; | ||||
| # Catch anything else as an error | ||||
| *) func_error "invalid argument for $opt" | ||||
| exit_cmd=exit | ||||
| break | ||||
| ;; | ||||
| esac | ||||
| mode="$1" | ||||
| shift | shift | |||
| ;; | ;; | |||
| --preserve-dup-deps) | --preserve-dup-deps) | |||
| opt_duplicate_deps=: ;; | opt_preserve_dup_deps=: | |||
| --quiet|--silent) preserve_args="$preserve_args $opt" | ||||
| opt_silent=: | ||||
| opt_verbose=false | ||||
| ;; | ;; | |||
| --features) | ||||
| --no-quiet|--no-silent) | opt_features=: | |||
| preserve_args="$preserve_args $opt" | func_features | |||
| opt_silent=false | ||||
| ;; | ;; | |||
| --finish) | ||||
| --verbose| -v) preserve_args="$preserve_args $opt" | 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) ;; | ||||
| # 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 | |||
| opt_verbose=: | func_append preserve_args " $opt" | |||
| ;; | ;; | |||
| --no-verbose) | ||||
| --no-verbose) preserve_args="$preserve_args $opt" | ||||
| opt_verbose=false | opt_verbose=false | |||
| func_append preserve_args " $opt" | ||||
| ;; | ;; | |||
| --silent|--quiet) | ||||
| --tag) test "$#" -eq 0 && func_missing_arg "$opt" && break | opt_silent=: | |||
| preserve_args="$preserve_args $opt $1" | func_append preserve_args " $opt" | |||
| func_enable_tag "$1" # tagname is set here | opt_verbose=false | |||
| ;; | ||||
| --verbose|-v) | ||||
| opt_verbose=: | ||||
| func_append preserve_args " $opt" | ||||
| opt_silent=false | ||||
| ;; | ||||
| --tag) | ||||
| test $# = 0 && func_missing_arg $opt && break | ||||
| optarg="$1" | ||||
| opt_tag="$optarg" | ||||
| func_append 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 | set dummy "$func_split_long_opt_name" "$func_split_l | |||
| " ${1+"$@"} | ong_opt_arg" ${1+"$@"} | |||
| shift | shift | |||
| ;; | ;; | |||
| -\?|-h) func_usage ;; | # Separate non-argument short options: | |||
| --help) opt_help=: ;; | -\?*|-h*|-n*|-v*) | |||
| --help-all) opt_help=': help-all' ;; | func_split_short_opt "$opt" | |||
| --version) func_version ;; | 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" = : || func_append 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; | |||
| # Ensure that we are using m4 macros, and libtool script from the same | then | |||
| # release of libtool. | func_fatal_configuration "not configured to build any kind of library | |||
| 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 $VERSIO | ||||
| N | ||||
| $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 $VERSIO | ||||
| N | ||||
| $progname: and run autoconf again. | ||||
| _LT_EOF | ||||
| fi | ||||
| else | ||||
| cat >&2 <<_LT_EOF | ||||
| $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $pa | ||||
| ckage_revision, | ||||
| $progname: but the definition of this LT_INIT comes from revision $macro_re | ||||
| vision. | ||||
| $progname: You should recreate aclocal.m4 with macros from revision $packag | ||||
| e_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. | ||||
| generic_help="$help" | ||||
| help="Try \`$progname --help --mode=$opt_mode' for more information." | ||||
| } | ||||
| # Bail if the options were screwed | ||||
| $exit_cmd $EXIT_FAILURE | ||||
| } | } | |||
| ## ----------- ## | ## ----------- ## | |||
| ## Main. ## | ## Main. ## | |||
| ## ----------- ## | ## ----------- ## | |||
| $opt_help || { | ||||
| # Sanity checks first: | ||||
| func_check_version_match | ||||
| if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; th | ||||
| en | ||||
| func_fatal_configuration "not configured to build any kind of library" | ||||
| fi | ||||
| test -z "$mode" && func_fatal_error "error: you must specify a MODE." | ||||
| # Darwin sucks | ||||
| eval std_shrext=\"$shrext_cmds\" | ||||
| # Only execute mode is allowed to have -dlopen flags. | ||||
| if test -n "$execute_dlfiles" && test "$mode" != execute; then | ||||
| func_error "unrecognized option \`-dlopen'" | ||||
| $ECHO "$help" 1>&2 | ||||
| exit $EXIT_FAILURE | ||||
| fi | ||||
| # Change the help message to a mode-specific one. | ||||
| generic_help="$help" | ||||
| help="Try \`$progname --help --mode=$mode' for more information." | ||||
| } | ||||
| # func_lalib_p file | # 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 | |||
| # determined imposters. | # determined imposters. | |||
| func_lalib_p () | func_lalib_p () | |||
| { | { | |||
| test -f "$1" && | test -f "$1" && | |||
| $SED -e 4q "$1" 2>/dev/null \ | $SED -e 4q "$1" 2>/dev/null \ | |||
| | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 | | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 | |||
| } | } | |||
| skipping to change at line 1091 | skipping to change at line 1254 | |||
| esac | esac | |||
| $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 | $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 | |||
| } | } | |||
| # func_ltwrapper_scriptname file | # func_ltwrapper_scriptname file | |||
| # Assumes file is an ltwrapper_executable | # Assumes file is an ltwrapper_executable | |||
| # uses $file to determine the appropriate filename for a | # uses $file to determine the appropriate filename for a | |||
| # 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_s | |||
| func_stripname '' '.exe' "$func_basename_result" | tripname_result}_ltshwrapper" | |||
| func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${fun | ||||
| c_stripname_result}_ltshwrapper" | ||||
| fi | ||||
| } | } | |||
| # func_ltwrapper_p file | # func_ltwrapper_p file | |||
| # True iff FILE is a libtool wrapper script or wrapper executable | # True iff FILE is a libtool wrapper script or wrapper executable | |||
| # 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 | |||
| # determined imposters. | # determined imposters. | |||
| func_ltwrapper_p () | func_ltwrapper_p () | |||
| { | { | |||
| func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" | func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" | |||
| } | } | |||
| skipping to change at line 1139 | skipping to change at line 1299 | |||
| # `FILE.' does not work on cygwin managed mounts. | # `FILE.' does not work on cygwin managed mounts. | |||
| func_source () | func_source () | |||
| { | { | |||
| $opt_debug | $opt_debug | |||
| case $1 in | case $1 in | |||
| */* | *\\*) . "$1" ;; | */* | *\\*) . "$1" ;; | |||
| *) . "./$1" ;; | *) . "./$1" ;; | |||
| esac | esac | |||
| } | } | |||
| # 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. | |||
| # Only attempt this if the compiler in the base compile | # Only attempt this if the compiler in the base compile | |||
| # command doesn't match the default compiler. | # command doesn't match the default compiler. | |||
| # arg is usually of the form 'gcc ...' | # arg is usually of the form 'gcc ...' | |||
| func_infer_tag () | func_infer_tag () | |||
| { | { | |||
| $opt_debug | $opt_debug | |||
| 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_expanded=`func_echo_all $CC` | |||
| CC_quoted_expanded=`func_echo_all $CC_quoted` | 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 "* | " $CC_expanded "* | "$CC_expanded "* | \ | " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ | |||
| " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quo ted_expanded "*) ;; | " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quo ted_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. | |||
| *) | *) | |||
| for z in $available_tags; do | for z in $available_tags; do | |||
| if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /d ev/null; then | if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /d ev/null; then | |||
| # Evaluate the configuration. | # Evaluate the configuration. | |||
| eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^ # ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" | eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^ # ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" | |||
| 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_expanded=`func_echo_all $CC` | |||
| CC_quoted_expanded=`func_echo_all $CC_quoted` | CC_quoted_expanded=`func_echo_all $CC_quoted` | |||
| case "$@ " in | case "$@ " in | |||
| " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ | " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ | |||
| " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$C C_quoted_expanded "*) | " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$C C_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. | |||
| tagname=$z | tagname=$z | |||
| skipping to change at line 1202 | skipping to change at line 1391 | |||
| func_echo "unable to infer tagged configuration" | func_echo "unable to infer tagged configuration" | |||
| func_fatal_error "specify a tag with \`--tag'" | func_fatal_error "specify a tag with \`--tag'" | |||
| # else | # else | |||
| # func_verbose "using $tagname tagged configuration" | # func_verbose "using $tagname tagged configuration" | |||
| fi | fi | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| } | } | |||
| # func_write_libtool_object output_name pic_name nonpic_name | # func_write_libtool_object output_name pic_name nonpic_name | |||
| # Create a libtool object file (analogous to a ".la" file), | # Create a libtool object file (analogous to a ".la" file), | |||
| # but don't create it if we're doing a dry run. | # but don't create it if we're doing a dry run. | |||
| func_write_libtool_object () | func_write_libtool_object () | |||
| { | ||||
| write_libobj=${1} | ||||
| if test "$build_libtool_libs" = yes; then | ||||
| write_lobj=\'${2}\' | ||||
| else | ||||
| write_lobj=none | ||||
| fi | ||||
| if test "$build_old_libs" = yes; then | ||||
| write_oldobj=\'${3}\' | ||||
| else | ||||
| write_oldobj=none | ||||
| fi | ||||
| $opt_dry_run || { | ||||
| cat >${write_libobj}T <<EOF | ||||
| # $write_libobj - a libtool object file | ||||
| # Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION | ||||
| # | ||||
| # Please DO NOT delete this file! | ||||
| # It is necessary for linking the library. | ||||
| # Name of the PIC object. | ||||
| pic_object=$write_lobj | ||||
| # Name of the non-PIC object | ||||
| non_pic_object=$write_oldobj | ||||
| EOF | ||||
| $MV "${write_libobj}T" "${write_libobj}" | ||||
| } | ||||
| } | ||||
| ################################################## | ||||
| # 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 *ni | ||||
| x, | ||||
| # and $host is mingw, cygwin, or some other w32 environment. Relies on a | ||||
| # correctly configured wine environment available, with the winepath progra | ||||
| m | ||||
| # 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 wi | ||||
| ll | ||||
| # 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 prin | ||||
| t | ||||
| # *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, an | ||||
| d | ||||
| # $host is mingw, cygwin, or some other w32 environment. Relies on a correc | ||||
| tly | ||||
| # configured wine environment available, with the winepath program in $buil | ||||
| d'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_w | ||||
| 32_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_fil | ||||
| e_wine_to_w32_result" | ||||
| else | ||||
| func_append func_convert_core_path_wine_to_w32_result ";$func_con | ||||
| vert_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 w | ||||
| hen | ||||
| # 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 nam | ||||
| e | ||||
| # 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_C | ||||
| YGPATH'" | ||||
| 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, resett | ||||
| ing | ||||
| # 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 FRON | ||||
| TPAT | ||||
| # 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_append 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 res | ||||
| ult | ||||
| # 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 i | ||||
| n | ||||
| # 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 environme | ||||
| nt | ||||
| # 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 se | ||||
| t. | ||||
| # 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 instal | ||||
| led | ||||
| # in a wine environment, working winepath, and LT_CYGPATH set. Returns res | ||||
| ult | ||||
| # 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 cyg | ||||
| win. | ||||
| 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. I | ||||
| f | ||||
| # 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 combination | ||||
| s, | ||||
| # 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 () | ||||
| { | { | |||
| write_libobj=${1} | $opt_debug | |||
| if test "$build_libtool_libs" = yes; then | func_init_to_host_path_cmd | |||
| write_lobj=\'${2}\' | $to_host_path_cmd "$1" | |||
| else | } | |||
| write_lobj=none | # end func_to_host_path | |||
| fi | ||||
| if test "$build_old_libs" = yes; then | # func_convert_path_noop ARG | |||
| write_oldobj=\'${3}\' | # Copy ARG to func_to_host_path_result. | |||
| else | func_convert_path_noop () | |||
| write_oldobj=none | { | |||
| fi | func_to_host_path_result="$1" | |||
| } | ||||
| # end func_convert_path_noop | ||||
| $opt_dry_run || { | # func_convert_path_msys_to_w32 ARG | |||
| cat >${write_libobj}T <<EOF | # Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic | |||
| # $write_libobj - a libtool object file | # conversion to w32 is not available inside the cwrapper. Returns result i | |||
| # Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION | n | |||
| # | # func_to_host_path_result. | |||
| # Please DO NOT delete this file! | func_convert_path_msys_to_w32 () | |||
| # It is necessary for linking the library. | { | |||
| $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 | ||||
| # Name of the PIC object. | # func_convert_path_cygwin_to_w32 ARG | |||
| pic_object=$write_lobj | # 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 | ||||
| # Name of the non-PIC object | # func_convert_path_nix_to_w32 ARG | |||
| non_pic_object=$write_oldobj | # Convert path ARG from *nix to w32 format. Requires a wine environment an | |||
| d | ||||
| # 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 | ||||
| EOF | # func_convert_path_msys_to_cygwin ARG | |||
| $MV "${write_libobj}T" "${write_libobj}" | # 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 i | ||||
| n 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 () | |||
| { | { | |||
| $opt_debug | $opt_debug | |||
| # Get the compilation command and the source file. | # Get the compilation command and the source file. | |||
| base_compile= | base_compile= | |||
| srcfile="$nonopt" # always keep a non-empty value in "srcfile" | srcfile="$nonopt" # always keep a non-empty value in "srcfile" | |||
| suppress_opt=yes | suppress_opt=yes | |||
| suppress_output= | suppress_output= | |||
| skipping to change at line 1279 | skipping to change at line 1922 | |||
| # Accept any command-line options. | # Accept any command-line options. | |||
| case $arg in | case $arg in | |||
| -o) | -o) | |||
| test -n "$libobj" && \ | test -n "$libobj" && \ | |||
| func_fatal_error "you cannot specify \`-o' more than once" | func_fatal_error "you cannot specify \`-o' more than once" | |||
| arg_mode=target | arg_mode=target | |||
| continue | continue | |||
| ;; | ;; | |||
| -pie | -fpie | -fPIE) | -pie | -fpie | -fPIE) | |||
| pie_flag="$pie_flag $arg" | func_append pie_flag " $arg" | |||
| continue | continue | |||
| ;; | ;; | |||
| -shared | -static | -prefer-pic | -prefer-non-pic) | -shared | -static | -prefer-pic | -prefer-non-pic) | |||
| later="$later $arg" | func_append later " $arg" | |||
| continue | continue | |||
| ;; | ;; | |||
| -no-suppress) | -no-suppress) | |||
| suppress_opt=no | suppress_opt=no | |||
| continue | continue | |||
| ;; | ;; | |||
| -Xcompiler) | -Xcompiler) | |||
| arg_mode=arg # the next one goes into the "base_compile" arg lis t | arg_mode=arg # the next one goes into the "base_compile" arg lis t | |||
| continue # The current "srcfile" will either be retained or | continue # The current "srcfile" will either be retained or | |||
| ;; # replaced later. I would guess that would be a bu g. | ;; # replaced later. I would guess that would be a bu g. | |||
| -Wc,*) | -Wc,*) | |||
| func_stripname '-Wc,' '' "$arg" | func_stripname '-Wc,' '' "$arg" | |||
| args=$func_stripname_result | args=$func_stripname_result | |||
| lastarg= | lastarg= | |||
| 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" | |||
| lastarg=$func_stripname_result | lastarg=$func_stripname_result | |||
| # Add the arguments to base_compile. | # Add the arguments to base_compile. | |||
| base_compile="$base_compile $lastarg" | func_append base_compile " $lastarg" | |||
| continue | continue | |||
| ;; | ;; | |||
| *) | *) | |||
| # Accept the current argument as the source file. | # Accept the current argument as the source file. | |||
| # The previous "srcfile" becomes the current argument. | # The previous "srcfile" becomes the current argument. | |||
| # | # | |||
| lastarg="$srcfile" | lastarg="$srcfile" | |||
| srcfile="$arg" | srcfile="$arg" | |||
| ;; | ;; | |||
| esac # case $arg | esac # case $arg | |||
| ;; | ;; | |||
| 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 | |||
| arg) | arg) | |||
| func_fatal_error "you must specify an argument for -Xcompile" | func_fatal_error "you must specify an argument for -Xcompile" | |||
| ;; | ;; | |||
| target) | target) | |||
| func_fatal_error "you must specify a target with \`-o'" | func_fatal_error "you must specify a target with \`-o'" | |||
| ;; | ;; | |||
| *) | *) | |||
| skipping to change at line 1461 | skipping to change at line 2102 | |||
| This indicates that another process is trying to use the same | This indicates that another process is trying to use the same | |||
| temporary object file, and libtool could not work around it because | temporary object file, and libtool could not work around it because | |||
| your compiler does not support \`-c' and \`-o' together. If you | your compiler does not support \`-c' and \`-o' together. If you | |||
| repeat this compilation, it may succeed, by chance, but you had better | repeat this compilation, it may succeed, by chance, but you had better | |||
| avoid parallel builds (make -j) in this platform, or get a better | avoid parallel builds (make -j) in this platform, or get a better | |||
| compiler." | compiler." | |||
| $opt_dry_run || $RM $removelist | $opt_dry_run || $RM $removelist | |||
| exit $EXIT_FAILURE | exit $EXIT_FAILURE | |||
| fi | fi | |||
| removelist="$removelist $output_obj" | func_append removelist " $output_obj" | |||
| $ECHO "$srcfile" > "$lockfile" | $ECHO "$srcfile" > "$lockfile" | |||
| fi | fi | |||
| $opt_dry_run || $RM $removelist | $opt_dry_run || $RM $removelist | |||
| removelist="$removelist $lockfile" | func_append 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 | |||
| # Only build a PIC object if we are building libtool libraries. | # Only build a PIC object if we are building libtool libraries. | |||
| if test "$build_libtool_libs" = yes; then | if test "$build_libtool_libs" = yes; then | |||
| # Without this assignment, base_compile gets emptied. | # Without this assignment, base_compile gets emptied. | |||
| fbsd_hideous_sh_bug=$base_compile | fbsd_hideous_sh_bug=$base_compile | |||
| if test "$pic_mode" != no; then | if test "$pic_mode" != no; then | |||
| command="$base_compile $qsrcfile $pic_flag" | command="$base_compile $qsrcfile $pic_flag" | |||
| else | else | |||
| # Don't build PIC code | # Don't build PIC code | |||
| command="$base_compile $qsrcfile" | command="$base_compile $qsrcfile" | |||
| fi | fi | |||
| func_mkdir_p "$xdir$objdir" | func_mkdir_p "$xdir$objdir" | |||
| if test -z "$output_obj"; then | if test -z "$output_obj"; then | |||
| # Place PIC objects in $objdir | # Place PIC objects in $objdir | |||
| command="$command -o $lobj" | func_append command " -o $lobj" | |||
| fi | fi | |||
| func_show_eval_locale "$command" \ | func_show_eval_locale "$command" \ | |||
| 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' | 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' | |||
| if test "$need_locks" = warn && | if test "$need_locks" = warn && | |||
| test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then | test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then | |||
| $ECHO "\ | $ECHO "\ | |||
| *** ERROR, $lockfile contains: | *** ERROR, $lockfile contains: | |||
| `cat $lockfile 2>/dev/null` | `cat $lockfile 2>/dev/null` | |||
| skipping to change at line 1538 | skipping to change at line 2178 | |||
| # Only build a position-dependent object if we build old libraries. | # Only build a position-dependent object if we build old libraries. | |||
| if test "$build_old_libs" = yes; then | if test "$build_old_libs" = yes; then | |||
| if test "$pic_mode" != yes; then | if test "$pic_mode" != yes; then | |||
| # Don't build PIC code | # Don't build PIC code | |||
| command="$base_compile $qsrcfile$pie_flag" | command="$base_compile $qsrcfile$pie_flag" | |||
| else | else | |||
| command="$base_compile $qsrcfile $pic_flag" | command="$base_compile $qsrcfile $pic_flag" | |||
| fi | fi | |||
| if test "$compiler_c_o" = yes; then | if test "$compiler_c_o" = yes; then | |||
| command="$command -o $obj" | func_append command " -o $obj" | |||
| fi | fi | |||
| # Suppress compiler output if we already did a PIC compilation. | # Suppress compiler output if we already did a PIC compilation. | |||
| command="$command$suppress_output" | func_append command "$suppress_output" | |||
| func_show_eval_locale "$command" \ | func_show_eval_locale "$command" \ | |||
| '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' | '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' | |||
| if test "$need_locks" = warn && | if test "$need_locks" = warn && | |||
| test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then | test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then | |||
| $ECHO "\ | $ECHO "\ | |||
| *** ERROR, $lockfile contains: | *** ERROR, $lockfile contains: | |||
| `cat $lockfile 2>/dev/null` | `cat $lockfile 2>/dev/null` | |||
| but it should contain: | but it should contain: | |||
| skipping to change at line 1587 | skipping to change at line 2227 | |||
| if test "$need_locks" != no; then | if test "$need_locks" != no; then | |||
| removelist=$lockfile | removelist=$lockfile | |||
| $RM "$lockfile" | $RM "$lockfile" | |||
| fi | fi | |||
| } | } | |||
| exit $EXIT_SUCCESS | exit $EXIT_SUCCESS | |||
| } | } | |||
| $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. | |||
| func_help | func_help | |||
| ;; | ;; | |||
| clean) | clean) | |||
| $ECHO \ | $ECHO \ | |||
| "Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... | "Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... | |||
| skipping to change at line 1769 | skipping to change at line 2409 | |||
| RM is the name of the program to use to delete files associated with each F ILE | RM is the name of the program to use to delete files associated with each F ILE | |||
| (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passe d | (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passe d | |||
| to RM. | to RM. | |||
| If FILE is a libtool library, all the files associated with it are deleted. | If FILE is a libtool library, all the files associated with it are deleted. | |||
| Otherwise, only FILE itself is deleted using RM." | 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." | |||
| } | } | |||
| # 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 | |||
| if $opt_help; then | if $opt_help; then | |||
| if test "$opt_help" = :; then | if test "$opt_help" = :; then | |||
| func_mode_help | func_mode_help | |||
| else | else | |||
| { | { | |||
| func_help noexit | func_help noexit | |||
| for mode in compile link execute install finish uninstall clean; do | for opt_mode in compile link execute install finish uninstall clean; do | |||
| func_mode_help | func_mode_help | |||
| done | done | |||
| } | sed -n '1p; 2,$s/^Usage:/ or: /p' | } | sed -n '1p; 2,$s/^Usage:/ or: /p' | |||
| { | { | |||
| func_help noexit | func_help noexit | |||
| for mode in compile link execute install finish uninstall clean; do | for opt_mode in compile link execute install finish uninstall clean; do | |||
| echo | echo | |||
| func_mode_help | func_mode_help | |||
| done | done | |||
| } | | } | | |||
| sed '1d | sed '1d | |||
| /^When reporting/,/^Report/{ | /^When reporting/,/^Report/{ | |||
| H | H | |||
| d | d | |||
| } | } | |||
| $x | $x | |||
| skipping to change at line 1818 | skipping to change at line 2458 | |||
| # func_mode_execute arg... | # func_mode_execute arg... | |||
| func_mode_execute () | func_mode_execute () | |||
| { | { | |||
| $opt_debug | $opt_debug | |||
| # The first argument is the command name. | # The first argument is the command name. | |||
| cmd="$nonopt" | cmd="$nonopt" | |||
| test -z "$cmd" && \ | test -z "$cmd" && \ | |||
| 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" | |||
| # Read the libtool library. | # Read the libtool library. | |||
| dlname= | dlname= | |||
| library_names= | library_names= | |||
| func_source "$file" | func_source "$file" | |||
| # Skip this library if it cannot be dlopened. | # Skip this library if it cannot be dlopened. | |||
| skipping to change at line 1846 | skipping to change at line 2489 | |||
| # Warn if it was a shared library. | # Warn if it was a shared library. | |||
| test -n "$library_names" && \ | test -n "$library_names" && \ | |||
| func_warning "\`$file' was not linked with \`-export-dynamic'" | func_warning "\`$file' was not linked with \`-export-dynamic'" | |||
| continue | continue | |||
| fi | fi | |||
| func_dirname "$file" "" "." | func_dirname "$file" "" "." | |||
| dir="$func_dirname_result" | dir="$func_dirname_result" | |||
| if test -f "$dir/$objdir/$dlname"; then | if test -f "$dir/$objdir/$dlname"; then | |||
| dir="$dir/$objdir" | func_append dir "/$objdir" | |||
| else | else | |||
| if test ! -f "$dir/$dlname"; then | if test ! -f "$dir/$dlname"; then | |||
| func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$o bjdir'" | func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$o bjdir'" | |||
| fi | fi | |||
| fi | fi | |||
| ;; | ;; | |||
| *.lo) | *.lo) | |||
| # Just add the directory containing the .lo file. | # Just add the directory containing the .lo file. | |||
| func_dirname "$file" "" "." | func_dirname "$file" "" "." | |||
| skipping to change at line 1903 | skipping to change at line 2546 | |||
| file="$progdir/$program" | file="$progdir/$program" | |||
| elif func_ltwrapper_executable_p "$file"; then | elif func_ltwrapper_executable_p "$file"; then | |||
| func_ltwrapper_scriptname "$file" | func_ltwrapper_scriptname "$file" | |||
| func_source "$func_ltwrapper_scriptname_result" | func_source "$func_ltwrapper_scriptname_result" | |||
| # Transform arg to wrapped name. | # Transform arg to wrapped name. | |||
| file="$progdir/$program" | file="$progdir/$program" | |||
| fi | fi | |||
| ;; | ;; | |||
| 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 | |||
| if test -n "$shlibpath_var"; then | if test -n "$shlibpath_var"; then | |||
| # Export the shlibpath_var. | # Export the shlibpath_var. | |||
| eval "export $shlibpath_var" | eval "export $shlibpath_var" | |||
| fi | fi | |||
| # Restore saved environment variables | # Restore saved environment variables | |||
| 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 | |||
| skipping to change at line 1936 | skipping to change at line 2578 | |||
| # 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" | func_append libdirs " $opt" | |||
| done | ||||
| elif test -f "$opt"; then | ||||
| if func_lalib_unsafe_p "$opt"; then | ||||
| func_append 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" $l | ||||
| ib \ | ||||
| > $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. | |||
| func_execute_cmds "$finish_cmds" 'admincmds="$admincmds | func_execute_cmds "$finish_cmds" 'admincmds="$admincmds | |||
| '"$cmd"'"' | '"$cmd"'"' | |||
| fi | fi | |||
| if test -n "$finish_eval"; then | if test -n "$finish_eval"; then | |||
| # Do the single finish_eval. | # Do the single finish_eval. | |||
| eval cmds=\"$finish_eval\" | eval cmds=\"$finish_eval\" | |||
| $opt_dry_run || eval "$cmds" || admincmds="$admincmds | $opt_dry_run || eval "$cmds" || func_append admincmds " | |||
| $cmds" | $cmds" | |||
| fi | fi | |||
| done | done | |||
| fi | fi | |||
| # 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 "----------------------------------------------------------------- | if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then | |||
| -----" | echo "--------------------------------------------------------------- | |||
| echo "Libraries have been installed in:" | -------" | |||
| 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 " - add LIBDIR to the \`$shlibpath_var' environment variable" | echo "flag during linking and do at least one of the following:" | |||
| echo " during execution" | if test -n "$shlibpath_var"; then | |||
| fi | echo " - add LIBDIR to the \`$shlibpath_var' environment variable" | |||
| if test -n "$runpath_var"; then | echo " during execution" | |||
| echo " - add LIBDIR to the \`$runpath_var' environment variable" | fi | |||
| echo " during linking" | if test -n "$runpath_var"; then | |||
| fi | echo " - add LIBDIR to the \`$runpath_var' environment variable" | |||
| if test -n "$hardcode_libdir_flag_spec"; then | echo " during linking" | |||
| libdir=LIBDIR | fi | |||
| eval flag=\"$hardcode_libdir_flag_spec\" | if test -n "$hardcode_libdir_flag_spec"; then | |||
| 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:$adminc | $ECHO " - have your system administrator run these commands:$admin | |||
| mds" | cmds" | |||
| 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. | echo " - have your system administrator add LIBDIR to \`/etc/ld.so | |||
| conf'" | .conf'" | |||
| fi | fi | |||
| echo | echo | |||
| echo "See any operating system documentation about shared libraries for | echo "See any operating system documentation about shared libraries f | |||
| " | or" | |||
| 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) man | echo "more information, such as the ld(1), crle(1) and ld.so(8) ma | |||
| ual" | nual" | |||
| 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 page | |||
| ." | s." | |||
| ;; | ;; | |||
| esac | esac | |||
| echo "----------------------------------------------------------------- | 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... | |||
| func_mode_install () | func_mode_install () | |||
| { | { | |||
| $opt_debug | $opt_debug | |||
| # There may be an optional sh(1) argument at the beginning of | # There may be an optional sh(1) argument at the beginning of | |||
| # 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. | |||
| case $nonopt in *shtool*) :;; *) false;; esac; then | case $nonopt in *shtool*) :;; *) false;; esac; then | |||
| skipping to change at line 2039 | skipping to change at line 2720 | |||
| arg=$1 | arg=$1 | |||
| shift | shift | |||
| else | else | |||
| install_prog= | install_prog= | |||
| arg=$nonopt | arg=$nonopt | |||
| fi | fi | |||
| # The real first argument should be the name of the installation progra m. | # The real first argument should be the name of the installation progra m. | |||
| # 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" | func_append install_prog "$func_quote_for_eval_result" | |||
| install_shared_prog=$install_prog | install_shared_prog=$install_prog | |||
| case " $install_prog " in | case " $install_prog " in | |||
| *[\\\ /]cp\ *) install_cp=: ;; | *[\\\ /]cp\ *) install_cp=: ;; | |||
| *) install_cp=false ;; | *) install_cp=false ;; | |||
| esac | 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= | |||
| files= | files= | |||
| opts= | opts= | |||
| prev= | prev= | |||
| install_type= | install_type= | |||
| isdir=no | isdir=no | |||
| stripme= | stripme= | |||
| no_mode=: | no_mode=: | |||
| for arg | for arg | |||
| do | do | |||
| arg2= | arg2= | |||
| if test -n "$dest"; then | if test -n "$dest"; then | |||
| files="$files $dest" | func_append files " $dest" | |||
| dest=$arg | dest=$arg | |||
| continue | continue | |||
| fi | fi | |||
| case $arg in | case $arg in | |||
| -d) isdir=yes ;; | -d) isdir=yes ;; | |||
| -f) | -f) | |||
| if $install_cp; then :; else | if $install_cp; then :; else | |||
| prev=$arg | prev=$arg | |||
| fi | fi | |||
| skipping to change at line 2097 | skipping to change at line 2778 | |||
| prev= | prev= | |||
| else | else | |||
| dest=$arg | dest=$arg | |||
| continue | continue | |||
| fi | fi | |||
| ;; | ;; | |||
| esac | esac | |||
| # 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" | func_append install_prog " $func_quote_for_eval_result" | |||
| if test -n "$arg2"; then | if test -n "$arg2"; then | |||
| func_quote_for_eval "$arg2" | func_quote_for_eval "$arg2" | |||
| fi | fi | |||
| install_shared_prog="$install_shared_prog $func_quote_for_eval_result " | func_append install_shared_prog " $func_quote_for_eval_result" | |||
| done | done | |||
| test -z "$install_prog" && \ | test -z "$install_prog" && \ | |||
| func_fatal_help "you must specify an install program" | func_fatal_help "you must specify an install program" | |||
| 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 test -n "$install_override_mode" && $no_mode; then | |||
| if $install_cp; then :; else | if $install_cp; then :; else | |||
| func_quote_for_eval "$install_override_mode" | func_quote_for_eval "$install_override_mode" | |||
| install_shared_prog="$install_shared_prog -m $func_quote_for_eval_re sult" | func_append install_shared_prog " -m $func_quote_for_eval_result" | |||
| fi | fi | |||
| 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" | |||
| else | else | |||
| func_fatal_help "you must specify a destination" | func_fatal_help "you must specify a destination" | |||
| fi | fi | |||
| fi | fi | |||
| skipping to change at line 2171 | skipping to change at line 2852 | |||
| staticlibs= | staticlibs= | |||
| future_libdirs= | future_libdirs= | |||
| current_libdirs= | current_libdirs= | |||
| for file in $files; do | for file in $files; do | |||
| # Do each installation. | # Do each installation. | |||
| case $file in | case $file in | |||
| *.$libext) | *.$libext) | |||
| # Do the static libraries later. | # Do the static libraries later. | |||
| staticlibs="$staticlibs $file" | func_append staticlibs " $file" | |||
| ;; | ;; | |||
| *.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" | |||
| library_names= | library_names= | |||
| old_library= | old_library= | |||
| relink_command= | relink_command= | |||
| func_source "$file" | func_source "$file" | |||
| # Add the libdir to current_libdirs if it is the destination. | # Add the libdir to current_libdirs if it is the destination. | |||
| if test "X$destdir" = "X$libdir"; then | if test "X$destdir" = "X$libdir"; then | |||
| case "$current_libdirs " in | case "$current_libdirs " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) current_libdirs="$current_libdirs $libdir" ;; | *) func_append current_libdirs " $libdir" ;; | |||
| esac | esac | |||
| else | else | |||
| # Note the libdir as a future libdir. | # Note the libdir as a future libdir. | |||
| case "$future_libdirs " in | case "$future_libdirs " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) future_libdirs="$future_libdirs $libdir" ;; | *) func_append future_libdirs " $libdir" ;; | |||
| esac | esac | |||
| fi | fi | |||
| func_dirname "$file" "/" "" | func_dirname "$file" "/" "" | |||
| dir="$func_dirname_result" | dir="$func_dirname_result" | |||
| dir="$dir$objdir" | func_append dir "$objdir" | |||
| 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 "$destdir" | $SED -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 | |||
| # are installed to the same prefix. | # are installed to the same prefix. | |||
| # At present, this check doesn't affect windows .dll's that | # At present, this check doesn't affect windows .dll's that | |||
| # are installed into $libdir/../bin (currently, that works fine) | # are installed into $libdir/../bin (currently, that works fine) | |||
| skipping to change at line 2277 | skipping to change at line 2961 | |||
| func_execute_cmds "$postinstall_cmds" 'exit $?' | func_execute_cmds "$postinstall_cmds" 'exit $?' | |||
| fi | fi | |||
| # Install the pseudo-library for information purposes. | # Install the pseudo-library for information purposes. | |||
| func_basename "$file" | func_basename "$file" | |||
| name="$func_basename_result" | name="$func_basename_result" | |||
| instname="$dir/$name"i | instname="$dir/$name"i | |||
| func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' | func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' | |||
| # Maybe install the static library, too. | # Maybe install the static library, too. | |||
| test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" | test -n "$old_library" && func_append staticlibs " $dir/$old_library " | |||
| ;; | ;; | |||
| *.lo) | *.lo) | |||
| # Install (i.e. copy) a libtool object. | # Install (i.e. copy) a libtool object. | |||
| # Figure out destination file name, if it wasn't already specified. | # Figure out destination file name, if it wasn't already specified. | |||
| if test -n "$destname"; then | if test -n "$destname"; then | |||
| destfile="$destdir/$destname" | destfile="$destdir/$destname" | |||
| else | else | |||
| func_basename "$file" | func_basename "$file" | |||
| skipping to change at line 2474 | skipping to change at line 3158 | |||
| if test -n "$current_libdirs"; then | if test -n "$current_libdirs"; then | |||
| # Maybe just do a dry run. | # Maybe just do a dry run. | |||
| $opt_dry_run && current_libdirs=" -n$current_libdirs" | $opt_dry_run && current_libdirs=" -n$current_libdirs" | |||
| exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' | exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' | |||
| else | else | |||
| exit $EXIT_SUCCESS | exit $EXIT_SUCCESS | |||
| 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 | |||
| # Extract symbols from dlprefiles and create ${outputname}S.o with | # Extract symbols from dlprefiles and create ${outputname}S.o with | |||
| # a dlpreopen symbol table. | # a dlpreopen symbol table. | |||
| func_generate_dlsyms () | func_generate_dlsyms () | |||
| { | { | |||
| $opt_debug | $opt_debug | |||
| my_outputname="$1" | my_outputname="$1" | |||
| my_originator="$2" | my_originator="$2" | |||
| my_pic_p="${3-no}" | my_pic_p="${3-no}" | |||
| skipping to change at line 2520 | skipping to change at line 3204 | |||
| /* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ | /* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ | |||
| #ifdef __cplusplus | #ifdef __cplusplus | |||
| extern \"C\" { | extern \"C\" { | |||
| #endif | #endif | |||
| #if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__ GNUC__ > 4)) | #if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__ GNUC__ > 4)) | |||
| #pragma GCC diagnostic ignored \"-Wstrict-prototypes\" | #pragma GCC diagnostic ignored \"-Wstrict-prototypes\" | |||
| #endif | #endif | |||
| /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and test | ||||
| s. */ | ||||
| #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. */\ | |||
| " | " | |||
| if test "$dlself" = yes; then | if test "$dlself" = yes; then | |||
| func_verbose "generating symbol list for \`$output'" | func_verbose "generating symbol list for \`$output'" | |||
| $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 "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL 2SP` | progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL 2SP` | |||
| 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 >> '$n | func_verbose "extracting global C symbols from \`$func_to_tool_f | |||
| list'" | ile_result'" | |||
| $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_sy | ||||
| mbol_pipe >> '$nlist'" | ||||
| done | done | |||
| if test -n "$exclude_expsyms"; then | if test -n "$exclude_expsyms"; then | |||
| $opt_dry_run || { | $opt_dry_run || { | |||
| eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' | eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' | |||
| eval '$MV "$nlist"T "$nlist"' | eval '$MV "$nlist"T "$nlist"' | |||
| } | } | |||
| fi | fi | |||
| if test -n "$export_symbols_regex"; then | if test -n "$export_symbols_regex"; then | |||
| skipping to change at line 2581 | skipping to change at line 3278 | |||
| ;; | ;; | |||
| esac | esac | |||
| } | } | |||
| fi | fi | |||
| fi | fi | |||
| for dlprefile in $dlprefiles; do | for dlprefile in $dlprefiles; do | |||
| 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 >> '$nlis | # if an import library, we need to obtain dlname | |||
| t'" | 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"; th | ||||
| en | ||||
| # Use subshell, to avoid clobbering current variable value | ||||
| s | ||||
| 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 <impor | ||||
| t 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_w | ||||
| 32 | ||||
| eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $glo | ||||
| bal_symbol_pipe | | ||||
| $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$n | ||||
| list'" | ||||
| } | ||||
| else # not an import lib | ||||
| $opt_dry_run || { | ||||
| eval '$ECHO ": $name " >> "$nlist"' | ||||
| func_to_tool_file "$dlprefile" func_convert_file_msys_to_w | ||||
| 32 | ||||
| eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $glo | ||||
| bal_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 | $globa | ||||
| l_symbol_pipe >> '$nlist'" | ||||
| } | ||||
| ;; | ||||
| esac | ||||
| done | done | |||
| $opt_dry_run || { | $opt_dry_run || { | |||
| # Make sure we have at least an empty file. | # Make sure we have at least an empty file. | |||
| test -f "$nlist" || : > "$nlist" | test -f "$nlist" || : > "$nlist" | |||
| if test -n "$exclude_expsyms"; then | if test -n "$exclude_expsyms"; then | |||
| $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T | $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T | |||
| $MV "$nlist"T "$nlist" | $MV "$nlist"T "$nlist" | |||
| fi | fi | |||
| skipping to change at line 2622 | skipping to change at line 3361 | |||
| 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_dlsymlist | LT_DLSYM_CONST lt_dlsymlist | |||
| lt_${my_prefix}_LTX_preloaded_symbols[] = | lt_${my_prefix}_LTX_preloaded_symbols[] = | |||
| {\ | {\ | |||
| { \"$my_originator\", (void *) 0 }," | { \"$my_originator\", (void *) 0 }," | |||
| case $need_lib_prefix in | case $need_lib_prefix in | |||
| no) | no) | |||
| eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_o bjdir/$my_dlsyms" | eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_o bjdir/$my_dlsyms" | |||
| ;; | ;; | |||
| *) | *) | |||
| 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" | |||
| skipping to change at line 2697 | skipping to change at line 3419 | |||
| pic_flag_for_symtable=" $pic_flag" | pic_flag_for_symtable=" $pic_flag" | |||
| fi | fi | |||
| ;; | ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| symtab_cflags= | symtab_cflags= | |||
| for arg in $LTCFLAGS; do | for arg in $LTCFLAGS; do | |||
| case $arg in | case $arg in | |||
| -pie | -fpie | -fPIE) ;; | -pie | -fpie | -fPIE) ;; | |||
| *) symtab_cflags="$symtab_cflags $arg" ;; | *) func_append symtab_cflags " $arg" ;; | |||
| esac | esac | |||
| done | done | |||
| # Now compile the dynamic symbol file. | # Now compile the dynamic symbol file. | |||
| func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_buil tin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' | func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_buil tin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' | |||
| # Clean up the generated files. | # Clean up the generated files. | |||
| func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' | func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' | |||
| # Transform the symbol file into the correct name. | # Transform the symbol file into the correct name. | |||
| skipping to change at line 2760 | skipping to change at line 3482 | |||
| win32_libid_type="unknown" | win32_libid_type="unknown" | |||
| win32_fileres=`file -L $1 2>/dev/null` | win32_fileres=`file -L $1 2>/dev/null` | |||
| case $win32_fileres in | case $win32_fileres in | |||
| *ar\ archive\ import\ library*) # definitely import | *ar\ archive\ import\ library*) # definitely import | |||
| 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 . | # 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 (pei*-i386(.*architecture: i386)?|pe-arm-wince|p e-x86-64)' >/dev/null; then | $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|p e-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 /{ | |||
| s,.*,import, | s,.*,import, | |||
| p | p | |||
| q | q | |||
| } | } | |||
| }'` | }'` | |||
| case $win32_nmres in | case $win32_nmres in | |||
| import*) win32_libid_type="x86 archive import";; | import*) win32_libid_type="x86 archive import";; | |||
| skipping to change at line 2789 | skipping to change at line 3512 | |||
| case $win32_fileres in | case $win32_fileres in | |||
| *MS\ Windows\ PE\ Intel*) | *MS\ Windows\ PE\ Intel*) | |||
| win32_libid_type="x86 DLL" | win32_libid_type="x86 DLL" | |||
| ;; | ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| $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]*$// | ||||
| /./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 "$glo | ||||
| bal_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 "$glob | ||||
| al_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_cor | ||||
| e '.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_cor | ||||
| e '.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" | |||
| if test "$lock_old_archive_extraction" = yes; then | if test "$lock_old_archive_extraction" = yes; then | |||
| lockfile=$f_ex_an_ar_oldlib.lock | lockfile=$f_ex_an_ar_oldlib.lock | |||
| until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do | until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do | |||
| func_echo "Waiting for $lockfile to be removed" | func_echo "Waiting for $lockfile to be removed" | |||
| skipping to change at line 3163 | skipping to change at line 4012 | |||
| $ECHO "\ | $ECHO "\ | |||
| program='$outputname' | program='$outputname' | |||
| progdir=\"\$thisdir/$objdir\" | progdir=\"\$thisdir/$objdir\" | |||
| " | " | |||
| fi | fi | |||
| $ECHO "\ | $ECHO "\ | |||
| 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 "\ | |||
| # Add our own library path to $shlibpath_var | # Add our own library path to $shlibpath_var | |||
| $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" | $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" | |||
| # 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 \"\$$shlibpath_var\" | $SED '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+\"\$@\"} | func_exec_program \${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\ | |||
| " | " | |||
| } | } | |||
| # 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 | ||||
| func_to_host_path_result=`( cmd //c echo "$1" ) 2>/dev/null | | ||||
| $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"` | ||||
| ;; | ||||
| *cygwin* ) | ||||
| func_to_host_path_result=`cygpath -w "$1" | | ||||
| $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_stripname : : "$1" | ||||
| func_to_host_pathlist_tmp1=$func_stripname_result | ||||
| case $build in | ||||
| *mingw* ) # Actually, msys. | ||||
| # Awkward: cmd appends spaces to result. | ||||
| func_to_host_pathlist_result=` | ||||
| ( cmd //c echo "$func_to_host_pathlist_tmp1" ) 2>/dev/null | | ||||
| $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"` | ||||
| ;; | ||||
| *cygwin* ) | ||||
| func_to_host_pathlist_result=`cygpath -w -p "$func_to_host_path | ||||
| list_tmp1" | | ||||
| $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_append func_to_host_pathlist_result ";$func_to_hos | ||||
| t_path_result" | ||||
| fi | ||||
| fi | ||||
| fi | ||||
| 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_append 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 | |||
| # it depends on a number of variable set therein. | # it depends on a number of variable set therein. | |||
| func_emit_cwrapperexe_src () | func_emit_cwrapperexe_src () | |||
| { | { | |||
| cat <<EOF | cat <<EOF | |||
| /* $cwrappersource - temporary wrapper executable for $objdir/$outputname | /* $cwrappersource - temporary wrapper executable for $objdir/$outputname | |||
| Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION | Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION | |||
| skipping to change at line 3530 | skipping to change at line 4223 | |||
| static const char *nonempty (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_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); | char **prepare_spawn (char **argv); | |||
| void lt_dump_script (FILE *f); | void lt_dump_script (FILE *f); | |||
| EOF | EOF | |||
| cat <<EOF | cat <<EOF | |||
| const char * MAGIC_EXE = "$magic_exe"; | volatile 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 "$shlibp ath_var" && test -n "$temp_rpath"; then | if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibp ath_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" | |||
| const char * LIB_PATH_VALUE = ""; | const char * LIB_PATH_VALUE = ""; | |||
| EOF | 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" | |||
| const char * EXE_PATH_VARNAME = ""; | const char * EXE_PATH_VARNAME = ""; | |||
| const char * EXE_PATH_VALUE = ""; | const char * EXE_PATH_VALUE = ""; | |||
| EOF | EOF | |||
| fi | fi | |||
| if test "$fast_install" = yes; then | if test "$fast_install" = yes; then | |||
| cat <<EOF | cat <<EOF | |||
| skipping to change at line 3731 | skipping to change at line 4424 | |||
| ;; | ;; | |||
| esac | esac | |||
| cat <<"EOF" | cat <<"EOF" | |||
| XFREE (target_name); | XFREE (target_name); | |||
| XFREE (actual_cwrapper_path); | XFREE (actual_cwrapper_path); | |||
| XFREE (actual_cwrapper_name); | XFREE (actual_cwrapper_name); | |||
| 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_rpat | ||||
| h) | ||||
| 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); | ||||
| lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n", | lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n", | |||
| nonnull (lt_argv_zero)); | nonnull (lt_argv_zero)); | |||
| for (i = 0; i < newargc; i++) | for (i = 0; i < newargc; i++) | |||
| { | { | |||
| lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n", | lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n", | |||
| i, nonnull (newargz[i])); | i, nonnull (newargz[i])); | |||
| } | } | |||
| EOF | EOF | |||
| skipping to change at line 4481 | skipping to change at line 5178 | |||
| dlself=yes | dlself=yes | |||
| else | else | |||
| dlself=needless | dlself=needless | |||
| export_dynamic=yes | export_dynamic=yes | |||
| fi | fi | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| *) | *) | |||
| if test "$prev" = dlfiles; then | if test "$prev" = dlfiles; then | |||
| dlfiles="$dlfiles $arg" | func_append dlfiles " $arg" | |||
| else | else | |||
| dlprefiles="$dlprefiles $arg" | func_append dlprefiles " $arg" | |||
| fi | fi | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| expsyms) | expsyms) | |||
| export_symbols="$arg" | export_symbols="$arg" | |||
| test -f "$arg" \ | test -f "$arg" \ | |||
| || func_fatal_error "symbol file \`$arg' does not exist" | || func_fatal_error "symbol file \`$arg' does not exist" | |||
| skipping to change at line 4507 | skipping to change at line 5204 | |||
| expsyms_regex) | expsyms_regex) | |||
| export_symbols_regex="$arg" | export_symbols_regex="$arg" | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| framework) | framework) | |||
| case $host in | case $host in | |||
| *-*-darwin*) | *-*-darwin*) | |||
| case "$deplibs " in | case "$deplibs " in | |||
| *" $qarg.ltframework "*) ;; | *" $qarg.ltframework "*) ;; | |||
| *) deplibs="$deplibs $qarg.ltframework" # this is fixed late r | *) func_append deplibs " $qarg.ltframework" # this is fixed later | |||
| ;; | ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| inst_prefix) | inst_prefix) | |||
| inst_prefix_dir="$arg" | inst_prefix_dir="$arg" | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| objectlist) | objectlist) | |||
| if test -f "$arg"; then | if test -f "$arg"; then | |||
| save_arg=$arg | save_arg=$arg | |||
| moreargs= | moreargs= | |||
| for fil in `cat "$save_arg"` | for fil in `cat "$save_arg"` | |||
| do | do | |||
| # moreargs="$moreargs $fil" | # func_append moreargs " $fil" | |||
| arg=$fil | arg=$fil | |||
| # A libtool-controlled object. | # A libtool-controlled object. | |||
| # Check to see that this really is a libtool object. | # Check to see that this really is a libtool object. | |||
| if func_lalib_unsafe_p "$arg"; then | if func_lalib_unsafe_p "$arg"; then | |||
| pic_object= | pic_object= | |||
| non_pic_object= | non_pic_object= | |||
| # Read the .lo file | # Read the .lo file | |||
| func_source "$arg" | func_source "$arg" | |||
| skipping to change at line 4555 | skipping to change at line 5252 | |||
| # Extract subdirectory from the argument. | # Extract subdirectory from the argument. | |||
| func_dirname "$arg" "/" "" | func_dirname "$arg" "/" "" | |||
| xdir="$func_dirname_result" | xdir="$func_dirname_result" | |||
| if test "$pic_object" != none; then | if test "$pic_object" != none; then | |||
| # Prepend the subdirectory the object is found in. | # Prepend the subdirectory the object is found in. | |||
| pic_object="$xdir$pic_object" | pic_object="$xdir$pic_object" | |||
| if test "$prev" = dlfiles; then | if test "$prev" = dlfiles; then | |||
| if test "$build_libtool_libs" = yes && test "$dlopen_sup port" = yes; then | if test "$build_libtool_libs" = yes && test "$dlopen_sup port" = yes; then | |||
| dlfiles="$dlfiles $pic_object" | func_append dlfiles " $pic_object" | |||
| prev= | prev= | |||
| continue | continue | |||
| else | else | |||
| # If libtool objects are unsupported, then we need to preload. | # If libtool objects are unsupported, then we need to preload. | |||
| prev=dlprefiles | prev=dlprefiles | |||
| fi | fi | |||
| fi | fi | |||
| # CHECK ME: I think I busted this. -Ossama | # CHECK ME: I think I busted this. -Ossama | |||
| if test "$prev" = dlprefiles; then | if test "$prev" = dlprefiles; then | |||
| # Preload the old-style object. | # Preload the old-style object. | |||
| dlprefiles="$dlprefiles $pic_object" | func_append dlprefiles " $pic_object" | |||
| prev= | prev= | |||
| fi | fi | |||
| # A PIC object. | # A PIC object. | |||
| func_append libobjs " $pic_object" | func_append libobjs " $pic_object" | |||
| arg="$pic_object" | arg="$pic_object" | |||
| fi | fi | |||
| # Non-PIC object. | # Non-PIC object. | |||
| if test "$non_pic_object" != none; then | if test "$non_pic_object" != none; then | |||
| skipping to change at line 4637 | skipping to change at line 5334 | |||
| # We need an absolute path. | # We need an absolute path. | |||
| case $arg in | case $arg in | |||
| [\\/]* | [A-Za-z]:[\\/]*) ;; | [\\/]* | [A-Za-z]:[\\/]*) ;; | |||
| *) | *) | |||
| func_fatal_error "only absolute run-paths are allowed" | func_fatal_error "only absolute run-paths are allowed" | |||
| ;; | ;; | |||
| esac | esac | |||
| if test "$prev" = rpath; then | if test "$prev" = rpath; then | |||
| case "$rpath " in | case "$rpath " in | |||
| *" $arg "*) ;; | *" $arg "*) ;; | |||
| *) rpath="$rpath $arg" ;; | *) func_append rpath " $arg" ;; | |||
| esac | esac | |||
| else | else | |||
| case "$xrpath " in | case "$xrpath " in | |||
| *" $arg "*) ;; | *" $arg "*) ;; | |||
| *) xrpath="$xrpath $arg" ;; | *) func_append xrpath " $arg" ;; | |||
| esac | esac | |||
| fi | fi | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| shrext) | shrext) | |||
| shrext_cmds="$arg" | shrext_cmds="$arg" | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| weak) | weak) | |||
| weak_libs="$weak_libs $arg" | func_append weak_libs " $arg" | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| xcclinker) | xcclinker) | |||
| linker_flags="$linker_flags $qarg" | func_append linker_flags " $qarg" | |||
| compiler_flags="$compiler_flags $qarg" | func_append compiler_flags " $qarg" | |||
| prev= | prev= | |||
| func_append compile_command " $qarg" | func_append compile_command " $qarg" | |||
| func_append finalize_command " $qarg" | func_append finalize_command " $qarg" | |||
| continue | continue | |||
| ;; | ;; | |||
| xcompiler) | xcompiler) | |||
| compiler_flags="$compiler_flags $qarg" | func_append compiler_flags " $qarg" | |||
| prev= | prev= | |||
| func_append compile_command " $qarg" | func_append compile_command " $qarg" | |||
| func_append finalize_command " $qarg" | func_append finalize_command " $qarg" | |||
| continue | continue | |||
| ;; | ;; | |||
| xlinker) | xlinker) | |||
| linker_flags="$linker_flags $qarg" | func_append linker_flags " $qarg" | |||
| compiler_flags="$compiler_flags $wl$qarg" | func_append compiler_flags " $wl$qarg" | |||
| prev= | prev= | |||
| func_append compile_command " $wl$qarg" | func_append compile_command " $wl$qarg" | |||
| func_append finalize_command " $wl$qarg" | func_append finalize_command " $wl$qarg" | |||
| continue | continue | |||
| ;; | ;; | |||
| *) | *) | |||
| eval "$prev=\"\$arg\"" | eval "$prev=\"\$arg\"" | |||
| prev= | prev= | |||
| continue | continue | |||
| ;; | ;; | |||
| skipping to change at line 4766 | skipping to change at line 5463 | |||
| case $with_gcc/$host in | case $with_gcc/$host in | |||
| no/*-*-irix* | /*-*-irix*) | no/*-*-irix* | /*-*-irix*) | |||
| func_append compile_command " $arg" | func_append compile_command " $arg" | |||
| func_append finalize_command " $arg" | func_append 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]:[\\/]*) ;; | |||
| *) | *) | |||
| absdir=`cd "$dir" && pwd` | absdir=`cd "$dir" && pwd` | |||
| test -z "$absdir" && \ | test -z "$absdir" && \ | |||
| func_fatal_error "cannot determine absolute directory name of \` $dir'" | func_fatal_error "cannot determine absolute directory name of \` $dir'" | |||
| dir="$absdir" | dir="$absdir" | |||
| ;; | ;; | |||
| 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 | |||
| lib_search_path="$lib_search_path $dir" | case $dir in | |||
| [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; | ||||
| *) func_append deplibs " -L$dir" ;; | ||||
| esac | ||||
| func_append lib_search_path " $dir" | ||||
| ;; | ;; | |||
| esac | esac | |||
| case $host in | case $host in | |||
| *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) | *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) | |||
| testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` | testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` | |||
| case :$dllsearchpath: in | case :$dllsearchpath: in | |||
| *":$dir:"*) ;; | *":$dir:"*) ;; | |||
| ::) dllsearchpath=$dir;; | ::) dllsearchpath=$dir;; | |||
| *) dllsearchpath="$dllsearchpath:$dir";; | *) func_append dllsearchpath ":$dir";; | |||
| esac | esac | |||
| case :$dllsearchpath: in | case :$dllsearchpath: in | |||
| *":$testbindir:"*) ;; | *":$testbindir:"*) ;; | |||
| ::) dllsearchpath=$testbindir;; | ::) dllsearchpath=$testbindir;; | |||
| *) dllsearchpath="$dllsearchpath:$testbindir";; | *) func_append dllsearchpath ":$testbindir";; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| continue | continue | |||
| ;; | ;; | |||
| -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* | *-*- haiku*) | *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*- haiku*) | |||
| skipping to change at line 4827 | skipping to change at line 5531 | |||
| *-*-os2*) | *-*-os2*) | |||
| # These systems don't actually have a C library (as such) | # These systems don't actually have a C library (as such) | |||
| test "X$arg" = "X-lc" && continue | test "X$arg" = "X-lc" && continue | |||
| ;; | ;; | |||
| *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) | *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) | |||
| # Do not include libc due to us having libc/libc_r. | # Do not include libc due to us having libc/libc_r. | |||
| test "X$arg" = "X-lc" && continue | test "X$arg" = "X-lc" && continue | |||
| ;; | ;; | |||
| *-*-rhapsody* | *-*-darwin1.[012]) | *-*-rhapsody* | *-*-darwin1.[012]) | |||
| # Rhapsody C and math libraries are in the System framework | # Rhapsody C and math libraries are in the System framework | |||
| deplibs="$deplibs System.ltframework" | func_append deplibs " System.ltframework" | |||
| continue | continue | |||
| ;; | ;; | |||
| *-*-sco3.2v5* | *-*-sco5v6*) | *-*-sco3.2v5* | *-*-sco5v6*) | |||
| # Causes problems with __ctype | # Causes problems with __ctype | |||
| test "X$arg" = "X-lc" && continue | test "X$arg" = "X-lc" && continue | |||
| ;; | ;; | |||
| *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) | *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) | |||
| # Compiler inserts libc in the correct place for threads to work | # Compiler inserts libc in the correct place for threads to work | |||
| test "X$arg" = "X-lc" && continue | test "X$arg" = "X-lc" && continue | |||
| ;; | ;; | |||
| esac | esac | |||
| elif test "X$arg" = "X-lc_r"; then | elif test "X$arg" = "X-lc_r"; then | |||
| case $host in | case $host in | |||
| *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) | *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) | |||
| # Do not include libc_r directly, use -pthread flag. | # Do not include libc_r directly, use -pthread flag. | |||
| continue | continue | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| deplibs="$deplibs $arg" | func_append deplibs " $arg" | |||
| continue | continue | |||
| ;; | ;; | |||
| -module) | -module) | |||
| module=yes | module=yes | |||
| continue | continue | |||
| ;; | ;; | |||
| # 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" | func_append compiler_flags " $arg" | |||
| func_append compile_command " $arg" | func_append compile_command " $arg" | |||
| func_append finalize_command " $arg" | func_append finalize_command " $arg" | |||
| prev=xcompiler | prev=xcompiler | |||
| continue | continue | |||
| ;; | ;; | |||
| -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-thr eads) | -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-thr eads) | |||
| compiler_flags="$compiler_flags $arg" | func_append compiler_flags " $arg" | |||
| func_append compile_command " $arg" | func_append compile_command " $arg" | |||
| func_append finalize_command " $arg" | func_append 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 " ;; | * ) func_append new_inherited_linker_flags " $arg" ;; | |||
| esac | esac | |||
| continue | continue | |||
| ;; | ;; | |||
| -multi_module) | -multi_module) | |||
| single_module="${wl}-multi_module" | single_module="${wl}-multi_module" | |||
| continue | continue | |||
| ;; | ;; | |||
| -no-fast-install) | -no-fast-install) | |||
| skipping to change at line 4940 | skipping to change at line 5644 | |||
| prev=xrpath | prev=xrpath | |||
| continue | continue | |||
| ;; | ;; | |||
| -R*) | -R*) | |||
| func_stripname '-R' '' "$arg" | func_stripname '-R' '' "$arg" | |||
| dir=$func_stripname_result | dir=$func_stripname_result | |||
| # 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" | |||
| ;; | ;; | |||
| esac | esac | |||
| case "$xrpath " in | case "$xrpath " in | |||
| *" $dir "*) ;; | *" $dir "*) ;; | |||
| *) xrpath="$xrpath $dir" ;; | *) func_append xrpath " $dir" ;; | |||
| esac | esac | |||
| continue | continue | |||
| ;; | ;; | |||
| -shared) | -shared) | |||
| # The effects of -shared are defined in a previous loop. | # The effects of -shared are defined in a previous loop. | |||
| continue | continue | |||
| ;; | ;; | |||
| -shrext) | -shrext) | |||
| skipping to change at line 4999 | skipping to change at line 5707 | |||
| ;; | ;; | |||
| -Wc,*) | -Wc,*) | |||
| func_stripname '-Wc,' '' "$arg" | func_stripname '-Wc,' '' "$arg" | |||
| args=$func_stripname_result | args=$func_stripname_result | |||
| arg= | arg= | |||
| save_ifs="$IFS"; IFS=',' | save_ifs="$IFS"; IFS=',' | |||
| 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 $func_quote_for_eval_result" | func_append arg " $func_quote_for_eval_result" | |||
| compiler_flags="$compiler_flags $func_quote_for_eval_result" | func_append compiler_flags " $func_quote_for_eval_result" | |||
| done | done | |||
| IFS="$save_ifs" | IFS="$save_ifs" | |||
| func_stripname ' ' '' "$arg" | func_stripname ' ' '' "$arg" | |||
| arg=$func_stripname_result | arg=$func_stripname_result | |||
| ;; | ;; | |||
| -Wl,*) | -Wl,*) | |||
| func_stripname '-Wl,' '' "$arg" | func_stripname '-Wl,' '' "$arg" | |||
| args=$func_stripname_result | args=$func_stripname_result | |||
| arg= | arg= | |||
| save_ifs="$IFS"; IFS=',' | save_ifs="$IFS"; IFS=',' | |||
| 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" | func_append arg " $wl$func_quote_for_eval_result" | |||
| compiler_flags="$compiler_flags $wl$func_quote_for_eval_result" | func_append compiler_flags " $wl$func_quote_for_eval_result" | |||
| linker_flags="$linker_flags $func_quote_for_eval_result" | func_append linker_flags " $func_quote_for_eval_result" | |||
| done | done | |||
| IFS="$save_ifs" | IFS="$save_ifs" | |||
| func_stripname ' ' '' "$arg" | func_stripname ' ' '' "$arg" | |||
| arg=$func_stripname_result | arg=$func_stripname_result | |||
| ;; | ;; | |||
| -Xcompiler) | -Xcompiler) | |||
| prev=xcompiler | prev=xcompiler | |||
| continue | continue | |||
| ;; | ;; | |||
| skipping to change at line 5056 | skipping to change at line 5764 | |||
| # -64, -mips[0-9] enable 64-bit mode for the SGI compiler | # -64, -mips[0-9] enable 64-bit mode for the SGI compiler | |||
| # -r[0-9][0-9]* specify processor for the SGI compiler | # -r[0-9][0-9]* specify processor for the SGI compiler | |||
| # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler | # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler | |||
| # +DA*, +DD* enable 64-bit mode for the HP compiler | # +DA*, +DD* enable 64-bit mode for the HP compiler | |||
| # -q* compiler args for the IBM compiler | # -q* compiler args for the IBM compiler | |||
| # -m*, -t[45]*, -txscale* architecture-specific flags for GCC | # -m*, -t[45]*, -txscale* architecture-specific flags for GCC | |||
| # -F/path path to uninstalled frameworks, gcc on darwin | # -F/path path to uninstalled frameworks, gcc on darwin | |||
| # -p, -pg, --coverage, -fprofile-* profiling flags for GCC | # -p, -pg, --coverage, -fprofile-* profiling flags for GCC | |||
| # @file GCC response files | # @file GCC response files | |||
| # -tp=* Portland pgcc target processor selection | # -tp=* Portland pgcc target processor selection | |||
| # --sysroot=* for sysroot support | ||||
| # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimizati | ||||
| on | ||||
| -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*|@*|-tp=*) | -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroo | |||
| t=*| \ | ||||
| -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" | func_append compile_command " $arg" | |||
| func_append finalize_command " $arg" | func_append finalize_command " $arg" | |||
| compiler_flags="$compiler_flags $arg" | func_append compiler_flags " $arg" | |||
| continue | continue | |||
| ;; | ;; | |||
| # Some other compiler flag. | # Some other compiler flag. | |||
| -* | +*) | -* | +*) | |||
| func_quote_for_eval "$arg" | func_quote_for_eval "$arg" | |||
| arg="$func_quote_for_eval_result" | arg="$func_quote_for_eval_result" | |||
| ;; | ;; | |||
| *.$objext) | *.$objext) | |||
| # A standard object. | # A standard object. | |||
| objs="$objs $arg" | func_append objs " $arg" | |||
| ;; | ;; | |||
| *.lo) | *.lo) | |||
| # A libtool-controlled object. | # A libtool-controlled object. | |||
| # Check to see that this really is a libtool object. | # Check to see that this really is a libtool object. | |||
| if func_lalib_unsafe_p "$arg"; then | if func_lalib_unsafe_p "$arg"; then | |||
| pic_object= | pic_object= | |||
| non_pic_object= | non_pic_object= | |||
| skipping to change at line 5105 | skipping to change at line 5816 | |||
| # Extract subdirectory from the argument. | # Extract subdirectory from the argument. | |||
| func_dirname "$arg" "/" "" | func_dirname "$arg" "/" "" | |||
| xdir="$func_dirname_result" | xdir="$func_dirname_result" | |||
| if test "$pic_object" != none; then | if test "$pic_object" != none; then | |||
| # Prepend the subdirectory the object is found in. | # Prepend the subdirectory the object is found in. | |||
| pic_object="$xdir$pic_object" | pic_object="$xdir$pic_object" | |||
| if test "$prev" = dlfiles; then | if test "$prev" = dlfiles; then | |||
| if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then | if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then | |||
| dlfiles="$dlfiles $pic_object" | func_append dlfiles " $pic_object" | |||
| prev= | prev= | |||
| continue | continue | |||
| else | else | |||
| # If libtool objects are unsupported, then we need to preloa d. | # If libtool objects are unsupported, then we need to preloa d. | |||
| prev=dlprefiles | prev=dlprefiles | |||
| fi | fi | |||
| fi | fi | |||
| # CHECK ME: I think I busted this. -Ossama | # CHECK ME: I think I busted this. -Ossama | |||
| if test "$prev" = dlprefiles; then | if test "$prev" = dlprefiles; then | |||
| # Preload the old-style object. | # Preload the old-style object. | |||
| dlprefiles="$dlprefiles $pic_object" | func_append dlprefiles " $pic_object" | |||
| prev= | prev= | |||
| fi | fi | |||
| # A PIC object. | # A PIC object. | |||
| func_append libobjs " $pic_object" | func_append libobjs " $pic_object" | |||
| arg="$pic_object" | arg="$pic_object" | |||
| fi | fi | |||
| # Non-PIC object. | # Non-PIC object. | |||
| if test "$non_pic_object" != none; then | if test "$non_pic_object" != none; then | |||
| skipping to change at line 5162 | skipping to change at line 5873 | |||
| func_append libobjs " $pic_object" | func_append libobjs " $pic_object" | |||
| func_append non_pic_objects " $non_pic_object" | func_append 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 | |||
| fi | fi | |||
| ;; | ;; | |||
| *.$libext) | *.$libext) | |||
| # An archive. | # An archive. | |||
| deplibs="$deplibs $arg" | func_append deplibs " $arg" | |||
| old_deplibs="$old_deplibs $arg" | func_append old_deplibs " $arg" | |||
| continue | continue | |||
| ;; | ;; | |||
| *.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" | func_append 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" | func_append dlprefiles " $func_resolve_sysroot_result" | |||
| prev= | prev= | |||
| else | else | |||
| deplibs="$deplibs $arg" | func_append deplibs " $func_resolve_sysroot_result" | |||
| fi | fi | |||
| continue | continue | |||
| ;; | ;; | |||
| # Some other compiler argument. | # Some other compiler argument. | |||
| *) | *) | |||
| # Unknown arguments in both finalize_command and compile_command nee d | # Unknown arguments in both finalize_command and compile_command nee d | |||
| # to be aesthetically quoted because they are evaled later. | # to be aesthetically quoted because they are evaled later. | |||
| func_quote_for_eval "$arg" | func_quote_for_eval "$arg" | |||
| arg="$func_quote_for_eval_result" | arg="$func_quote_for_eval_result" | |||
| skipping to change at line 5226 | skipping to change at line 5938 | |||
| # get the directories listed in $shlibpath_var | # get the directories listed in $shlibpath_var | |||
| eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/: / /g\'\` | eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/: / /g\'\` | |||
| else | else | |||
| shlib_search_path= | shlib_search_path= | |||
| fi | fi | |||
| eval sys_lib_search_path=\"$sys_lib_search_path_spec\" | eval sys_lib_search_path=\"$sys_lib_search_path_spec\" | |||
| eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" | eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" | |||
| 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" | |||
| # Determine the type of output | # Determine the type of output | |||
| case $output in | case $output in | |||
| "") | "") | |||
| func_fatal_help "you must specify an output file" | func_fatal_help "you must specify an output file" | |||
| ;; | ;; | |||
| *.$libext) linkmode=oldlib ;; | *.$libext) linkmode=oldlib ;; | |||
| *.lo | *.$objext) linkmode=obj ;; | *.lo | *.$objext) linkmode=obj ;; | |||
| *.la) linkmode=lib ;; | *.la) linkmode=lib ;; | |||
| *) linkmode=prog ;; # Anything else should be a program. | *) linkmode=prog ;; # Anything else should be a program. | |||
| esac | esac | |||
| specialdeplibs= | specialdeplibs= | |||
| libs= | libs= | |||
| # 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 "*) func_append specialdeplibs " $deplib" ;; | |||
| esac | esac | |||
| fi | fi | |||
| libs="$libs $deplib" | func_append libs " $deplib" | |||
| done | done | |||
| if test "$linkmode" = lib; then | if test "$linkmode" = lib; then | |||
| libs="$predeps $libs $compiler_lib_search_path $postdeps" | libs="$predeps $libs $compiler_lib_search_path $postdeps" | |||
| # Compute libraries that are listed more than once in $predeps | # Compute libraries that are listed more than once in $predeps | |||
| # $postdeps and mark them as special (i.e., whose duplicates are | # $postdeps and mark them as special (i.e., whose duplicates are | |||
| # not to be eliminated). | # not to be eliminated). | |||
| pre_post_deps= | pre_post_deps= | |||
| if $opt_duplicate_compiler_generated_deps; then | if $opt_duplicate_compiler_generated_deps; then | |||
| for pre_post_dep in $predeps $postdeps; do | for pre_post_dep in $predeps $postdeps; do | |||
| case "$pre_post_deps " in | case "$pre_post_deps " in | |||
| *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_dep s" ;; | *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; | |||
| esac | esac | |||
| pre_post_deps="$pre_post_deps $pre_post_dep" | func_append pre_post_deps " $pre_post_dep" | |||
| done | done | |||
| fi | fi | |||
| pre_post_deps= | pre_post_deps= | |||
| fi | fi | |||
| deplibs= | deplibs= | |||
| newdependency_libs= | newdependency_libs= | |||
| newlib_search_path= | newlib_search_path= | |||
| need_relink=no # whether we're linking any uninstalled libtool librarie s | need_relink=no # whether we're linking any uninstalled libtool librarie s | |||
| notinst_deplibs= # not-installed libtool libraries | notinst_deplibs= # not-installed libtool libraries | |||
| skipping to change at line 5333 | skipping to change at line 6047 | |||
| dlopen) libs="$dlfiles" ;; | dlopen) libs="$dlfiles" ;; | |||
| dlpreopen) libs="$dlprefiles" ;; | dlpreopen) libs="$dlprefiles" ;; | |||
| link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; | link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; | |||
| esac | esac | |||
| fi | fi | |||
| if test "$linkmode,$pass" = "lib,dlpreopen"; then | if test "$linkmode,$pass" = "lib,dlpreopen"; then | |||
| # Collect and forward deplibs of preopened libtool libs | # Collect and forward deplibs of preopened libtool libs | |||
| 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 | |||
| func_basename "$deplib" | func_basename "$deplib" | |||
| deplib_base=$func_basename_result | deplib_base=$func_basename_result | |||
| case " $weak_libs " in | case " $weak_libs " in | |||
| *" $deplib_base "*) ;; | *" $deplib_base "*) ;; | |||
| *) deplibs="$deplibs $deplib" ;; | *) func_append deplibs " $deplib" ;; | |||
| esac | esac | |||
| done | done | |||
| done | done | |||
| libs="$dlprefiles" | libs="$dlprefiles" | |||
| fi | fi | |||
| if test "$pass" = dlopen; then | if test "$pass" = dlopen; then | |||
| # Collect dlpreopened libraries | # Collect dlpreopened libraries | |||
| save_deplibs="$deplibs" | save_deplibs="$deplibs" | |||
| deplibs= | deplibs= | |||
| fi | fi | |||
| for deplib in $libs; do | for deplib in $libs; do | |||
| lib= | lib= | |||
| found=no | found=no | |||
| case $deplib in | case $deplib in | |||
| -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-th reads) | -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-th reads) | |||
| 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" | |||
| else | else | |||
| compiler_flags="$compiler_flags $deplib" | func_append compiler_flags " $deplib" | |||
| if test "$linkmode" = lib ; then | if test "$linkmode" = lib ; then | |||
| case "$new_inherited_linker_flags " in | case "$new_inherited_linker_flags " in | |||
| *" $deplib "*) ;; | *" $deplib "*) ;; | |||
| * ) new_inherited_linker_flags="$new_inherited_linker_fl ags $deplib" ;; | * ) func_append new_inherited_linker_flags " $deplib" ;; | |||
| esac | esac | |||
| fi | fi | |||
| fi | fi | |||
| continue | continue | |||
| ;; | ;; | |||
| -l*) | -l*) | |||
| if test "$linkmode" != lib && test "$linkmode" != prog; then | if test "$linkmode" != lib && test "$linkmode" != prog; then | |||
| func_warning "\`-l' is ignored for archives/objects" | func_warning "\`-l' is ignored for archives/objects" | |||
| continue | continue | |||
| fi | fi | |||
| skipping to change at line 5454 | skipping to change at line 6169 | |||
| ;; # -l | ;; # -l | |||
| *.ltframework) | *.ltframework) | |||
| 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" | |||
| else | else | |||
| deplibs="$deplib $deplibs" | deplibs="$deplib $deplibs" | |||
| if test "$linkmode" = lib ; then | if test "$linkmode" = lib ; then | |||
| case "$new_inherited_linker_flags " in | case "$new_inherited_linker_flags " in | |||
| *" $deplib "*) ;; | *" $deplib "*) ;; | |||
| * ) new_inherited_linker_flags="$new_inherited_linker_fl ags $deplib" ;; | * ) func_append new_inherited_linker_flags " $deplib" ;; | |||
| esac | esac | |||
| fi | fi | |||
| fi | fi | |||
| continue | continue | |||
| ;; | ;; | |||
| -L*) | -L*) | |||
| case $linkmode in | case $linkmode in | |||
| lib) | lib) | |||
| deplibs="$deplib $deplibs" | deplibs="$deplib $deplibs" | |||
| 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" | |||
| func_append newlib_search_path " $func_resolve_sysroot_result" | ||||
| ;; | ;; | |||
| prog) | prog) | |||
| if test "$pass" = conv; then | if test "$pass" = conv; then | |||
| deplibs="$deplib $deplibs" | deplibs="$deplib $deplibs" | |||
| continue | continue | |||
| fi | fi | |||
| if test "$pass" = scan; then | if test "$pass" = scan; then | |||
| deplibs="$deplib $deplibs" | deplibs="$deplib $deplibs" | |||
| else | else | |||
| compile_deplibs="$deplib $compile_deplibs" | compile_deplibs="$deplib $compile_deplibs" | |||
| 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" | |||
| func_append newlib_search_path " $func_resolve_sysroot_result" | ||||
| ;; | ;; | |||
| *) | *) | |||
| func_warning "\`-L' is ignored for archives/objects" | func_warning "\`-L' is ignored for archives/objects" | |||
| ;; | ;; | |||
| esac # linkmode | esac # linkmode | |||
| continue | continue | |||
| ;; # -L | ;; # -L | |||
| -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 "*) ;; | |||
| *) xrpath="$xrpath $dir" ;; | *) func_append xrpath " $dir" ;; | |||
| esac | esac | |||
| fi | fi | |||
| 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" | |||
| continue | continue | |||
| fi | fi | |||
| case $linkmode in | case $linkmode in | |||
| lib) | lib) | |||
| # Linking convenience modules into shared libraries is allowed, | # Linking convenience modules into shared libraries is allowed, | |||
| # but linking other static libraries is non-portable. | # but linking other static libraries is non-portable. | |||
| case " $dlpreconveniencelibs " in | case " $dlpreconveniencelibs " in | |||
| skipping to change at line 5565 | skipping to change at line 6286 | |||
| ;; | ;; | |||
| esac # linkmode | esac # linkmode | |||
| ;; # *.$libext | ;; # *.$libext | |||
| *.lo | *.$objext) | *.lo | *.$objext) | |||
| if test "$pass" = conv; then | if test "$pass" = conv; then | |||
| deplibs="$deplib $deplibs" | deplibs="$deplib $deplibs" | |||
| elif test "$linkmode" = prog; then | elif test "$linkmode" = prog; then | |||
| if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then | if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then | |||
| # If there is no dlopen support or we're linking statically, | # If there is no dlopen support or we're linking statically, | |||
| # we need to preload. | # we need to preload. | |||
| newdlprefiles="$newdlprefiles $deplib" | func_append newdlprefiles " $deplib" | |||
| compile_deplibs="$deplib $compile_deplibs" | compile_deplibs="$deplib $compile_deplibs" | |||
| finalize_deplibs="$deplib $finalize_deplibs" | finalize_deplibs="$deplib $finalize_deplibs" | |||
| else | else | |||
| newdlfiles="$newdlfiles $deplib" | func_append newdlfiles " $deplib" | |||
| fi | fi | |||
| fi | fi | |||
| continue | continue | |||
| ;; | ;; | |||
| %DEPLIBS%) | %DEPLIBS%) | |||
| alldeplibs=yes | alldeplibs=yes | |||
| continue | continue | |||
| ;; | ;; | |||
| esac # case $deplib | esac # case $deplib | |||
| skipping to change at line 5614 | skipping to change at line 6335 | |||
| # Read the .la file | # Read the .la file | |||
| func_source "$lib" | func_source "$lib" | |||
| # 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 "$inherited_linker_flags" | $SED '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 "*) ;; | |||
| *) new_inherited_linker_flags="$new_inherited_linker_flags $tm p_inherited_linker_flag";; | *) func_append new_inherited_linker_flags " $tmp_inherited_lin ker_flag";; | |||
| esac | esac | |||
| done | done | |||
| fi | fi | |||
| dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltf ramework% -framework \1%g'` | dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltf ramework% -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 | |||
| test -n "$dlopen" && dlfiles="$dlfiles $dlopen" | test -n "$dlopen" && func_append dlfiles " $dlopen" | |||
| test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" | test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" | |||
| fi | fi | |||
| if test "$pass" = conv; then | if test "$pass" = conv; then | |||
| # Only check for convenience libraries | # Only check for convenience libraries | |||
| deplibs="$lib $deplibs" | deplibs="$lib $deplibs" | |||
| if test -z "$libdir"; then | if test -z "$libdir"; then | |||
| if test -z "$old_library"; then | if test -z "$old_library"; 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 | |||
| # 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" | func_append convenience " $ladir/$objdir/$old_library" | |||
| old_convenience="$old_convenience $ladir/$objdir/$old_library" | func_append old_convenience " $ladir/$objdir/$old_library" | |||
| 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= | tmp_libs= | |||
| for deplib in $dependency_libs; do | for deplib in $dependency_libs; do | |||
| deplibs="$deplib $deplibs" | deplibs="$deplib $deplibs" | |||
| if $opt_duplicate_deps ; then | if $opt_preserve_dup_deps ; then | |||
| case "$tmp_libs " in | case "$tmp_libs " in | |||
| *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; | *" $deplib "*) func_append specialdeplibs " $deplib" ;; | |||
| esac | esac | |||
| fi | fi | |||
| tmp_libs="$tmp_libs $deplib" | func_append tmp_libs " $deplib" | |||
| done | 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 | |||
| # This library was specified with -dlopen. | # This library was specified with -dlopen. | |||
| if test "$pass" = dlopen; then | if test "$pass" = dlopen; then | |||
| if test -z "$libdir"; then | if test -z "$libdir"; then | |||
| func_fatal_error "cannot -dlopen a convenience library: \`$lib'" | func_fatal_error "cannot -dlopen a convenience library: \`$lib'" | |||
| fi | fi | |||
| if test -z "$dlname" || | if test -z "$dlname" || | |||
| test "$dlopen_support" != yes || | test "$dlopen_support" != yes || | |||
| test "$build_libtool_libs" = no; then | test "$build_libtool_libs" = no; then | |||
| # If there is no dlname, no dlopen support or we're linking | # If there is no dlname, no dlopen support or we're linking | |||
| # statically, we need to preload. We also need to preload any | # statically, we need to preload. We also need to preload any | |||
| # dependent libraries so libltdl's deplib preloader doesn't | # dependent libraries so libltdl's deplib preloader doesn't | |||
| # bomb out in the load deplibs phase. | # bomb out in the load deplibs phase. | |||
| dlprefiles="$dlprefiles $lib $dependency_libs" | func_append dlprefiles " $lib $dependency_libs" | |||
| else | else | |||
| newdlfiles="$newdlfiles $lib" | func_append newdlfiles " $lib" | |||
| fi | fi | |||
| continue | continue | |||
| fi # $pass = dlopen | fi # $pass = dlopen | |||
| # We need an absolute path. | # We need an absolute path. | |||
| case $ladir in | case $ladir in | |||
| [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; | [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; | |||
| *) | *) | |||
| abs_ladir=`cd "$ladir" && pwd` | abs_ladir=`cd "$ladir" && pwd` | |||
| if test -z "$abs_ladir"; then | if test -z "$abs_ladir"; then | |||
| skipping to change at line 5697 | skipping to change at line 6424 | |||
| func_warning "passing it literally to the linker, although it mi ght fail" | func_warning "passing it literally to the linker, although it mi ght fail" | |||
| abs_ladir="$ladir" | abs_ladir="$ladir" | |||
| fi | fi | |||
| ;; | ;; | |||
| esac | esac | |||
| func_basename "$lib" | func_basename "$lib" | |||
| laname="$func_basename_result" | laname="$func_basename_result" | |||
| # 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 | |||
| if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$lin klib"; then | if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$lin klib"; then | |||
| dir="$ladir" | dir="$ladir" | |||
| absdir="$abs_ladir" | absdir="$abs_ladir" | |||
| # Remove this search path later | # Remove this search path later | |||
| notinst_path="$notinst_path $abs_ladir" | func_append notinst_path " $abs_ladir" | |||
| else | else | |||
| dir="$ladir/$objdir" | dir="$ladir/$objdir" | |||
| absdir="$abs_ladir/$objdir" | absdir="$abs_ladir/$objdir" | |||
| # Remove this search path later | # Remove this search path later | |||
| notinst_path="$notinst_path $abs_ladir" | func_append notinst_path " $abs_ladir" | |||
| fi | fi | |||
| fi # $installed = yes | fi # $installed = yes | |||
| func_stripname 'lib' '.la' "$laname" | func_stripname 'lib' '.la' "$laname" | |||
| name=$func_stripname_result | name=$func_stripname_result | |||
| # This library was specified with -dlpreopen. | # This library was specified with -dlpreopen. | |||
| if test "$pass" = dlpreopen; then | if test "$pass" = dlpreopen; then | |||
| 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 li brary: \`$lib'" | func_fatal_error "only libraries may -dlpreopen a convenience li brary: \`$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 bot | |||
| # Keep a list of preopened convenience libraries to check | h | |||
| # that they are being used correctly in the link pass. | # static and shared are present. Therefore, ensure we extract | |||
| test -z "$libdir" && \ | # symbols from the import library if a shared library is prese | |||
| dlpreconveniencelibs="$dlpreconveniencelibs $dir/$old_librar | nt | |||
| y" | # (otherwise, the dlopen module name will be incorrect). We d | |||
| # Otherwise, use the dlname, so that lt_dlopen finds it. | o | |||
| elif test -n "$dlname"; then | # this by putting the import library name into $newdlprefiles. | |||
| newdlprefiles="$newdlprefiles $dir/$dlname" | # We recover the dlopen module name by 'saving' the la file | |||
| else | # name in a special purpose variable, and (later) extracting t | |||
| newdlprefiles="$newdlprefiles $dir/$linklib" | he | |||
| fi | # dlname from the la file. | |||
| if test -n "$dlname"; then | ||||
| func_tr_sh "$dir/$linklib" | ||||
| eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" | ||||
| func_append newdlprefiles " $dir/$linklib" | ||||
| else | ||||
| func_append 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" && \ | ||||
| func_append dlpreconveniencelibs " $dir/$old_library" | ||||
| fi | ||||
| ;; | ||||
| * ) | ||||
| # Prefer using a static library (so that no silly _DYNAMIC sym | ||||
| bols | ||||
| # are required to link). | ||||
| if test -n "$old_library"; then | ||||
| func_append 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" && \ | ||||
| func_append dlpreconveniencelibs " $dir/$old_library" | ||||
| # Otherwise, use the dlname, so that lt_dlopen finds it. | ||||
| elif test -n "$dlname"; then | ||||
| func_append newdlprefiles " $dir/$dlname" | ||||
| else | ||||
| func_append newdlprefiles " $dir/$linklib" | ||||
| fi | ||||
| ;; | ||||
| esac | ||||
| fi # $pass = dlpreopen | fi # $pass = dlpreopen | |||
| if test -z "$libdir"; then | if test -z "$libdir"; then | |||
| # Link the convenience library | # Link the convenience library | |||
| if test "$linkmode" = lib; then | if test "$linkmode" = lib; then | |||
| deplibs="$dir/$old_library $deplibs" | deplibs="$dir/$old_library $deplibs" | |||
| elif test "$linkmode,$pass" = "prog,link"; then | elif test "$linkmode,$pass" = "prog,link"; then | |||
| compile_deplibs="$dir/$old_library $compile_deplibs" | compile_deplibs="$dir/$old_library $compile_deplibs" | |||
| finalize_deplibs="$dir/$old_library $finalize_deplibs" | finalize_deplibs="$dir/$old_library $finalize_deplibs" | |||
| else | else | |||
| deplibs="$lib $deplibs" # used for prog,scan pass | deplibs="$lib $deplibs" # used for prog,scan pass | |||
| fi | fi | |||
| continue | continue | |||
| fi | fi | |||
| if test "$linkmode" = prog && test "$pass" != link; then | if test "$linkmode" = prog && test "$pass" != link; then | |||
| newlib_search_path="$newlib_search_path $ladir" | func_append newlib_search_path " $ladir" | |||
| deplibs="$lib $deplibs" | deplibs="$lib $deplibs" | |||
| linkalldeplibs=no | linkalldeplibs=no | |||
| if test "$link_all_deplibs" != no || test -z "$library_names" || | if test "$link_all_deplibs" != no || test -z "$library_names" || | |||
| test "$build_libtool_libs" = no; then | test "$build_libtool_libs" = no; then | |||
| linkalldeplibs=yes | linkalldeplibs=yes | |||
| fi | fi | |||
| tmp_libs= | tmp_libs= | |||
| 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_res | func_resolve_sysroot "$func_stripname_result" | |||
| ult" | func_append newlib_search_path " $func_resolve_sysroot_resu | |||
| lt" | ||||
| ;; | ;; | |||
| esac | esac | |||
| # Need to link against all dependency_libs? | # Need to link against all dependency_libs? | |||
| if test "$linkalldeplibs" = yes; then | if test "$linkalldeplibs" = yes; then | |||
| deplibs="$deplib $deplibs" | deplibs="$deplib $deplibs" | |||
| else | else | |||
| # Need to hardcode shared library paths | # Need to hardcode shared library paths | |||
| # 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 "*) func_append specialdeplibs " $deplib" ;; | |||
| esac | esac | |||
| fi | fi | |||
| tmp_libs="$tmp_libs $deplib" | func_append tmp_libs " $deplib" | |||
| done # for deplib | done # for deplib | |||
| continue | continue | |||
| fi # $linkmode = prog... | fi # $linkmode = prog... | |||
| if test "$linkmode,$pass" = "prog,link"; then | if test "$linkmode,$pass" = "prog,link"; then | |||
| if test -n "$library_names" && | if test -n "$library_names" && | |||
| { { test "$prefer_static_libs" = no || | { { test "$prefer_static_libs" = no || | |||
| test "$prefer_static_libs,$installed" = "built,yes"; } || | test "$prefer_static_libs,$installed" = "built,yes"; } || | |||
| test -z "$old_library"; }; then | test -z "$old_library"; }; then | |||
| # We need to hardcode the library path | # We need to hardcode the library path | |||
| if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then | if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then | |||
| # Make sure the rpath contains only unique directories. | # Make sure the rpath contains only unique directories. | |||
| case "$temp_rpath:" in | case "$temp_rpath:" in | |||
| *"$absdir:"*) ;; | *"$absdir:"*) ;; | |||
| *) temp_rpath="$temp_rpath$absdir:" ;; | *) func_append temp_rpath "$absdir:" ;; | |||
| esac | esac | |||
| fi | fi | |||
| # Hardcode the library path. | # Hardcode the library path. | |||
| # Skip directories that are in the system default run-time | # Skip directories that are in the system default run-time | |||
| # search path. | # search path. | |||
| case " $sys_lib_dlsearch_path " in | case " $sys_lib_dlsearch_path " in | |||
| *" $absdir "*) ;; | *" $absdir "*) ;; | |||
| *) | *) | |||
| case "$compile_rpath " in | case "$compile_rpath " in | |||
| *" $absdir "*) ;; | *" $absdir "*) ;; | |||
| *) compile_rpath="$compile_rpath $absdir" | *) func_append compile_rpath " $absdir" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| case " $sys_lib_dlsearch_path " in | case " $sys_lib_dlsearch_path " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) | *) | |||
| case "$finalize_rpath " in | case "$finalize_rpath " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) finalize_rpath="$finalize_rpath $libdir" | *) func_append finalize_rpath " $libdir" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| fi # $linkmode,$pass = prog,link... | fi # $linkmode,$pass = prog,link... | |||
| if test "$alldeplibs" = yes && | if test "$alldeplibs" = yes && | |||
| { test "$deplibs_check_method" = pass_all || | { test "$deplibs_check_method" = pass_all || | |||
| { test "$build_libtool_libs" = yes && | { test "$build_libtool_libs" = yes && | |||
| test -n "$library_names"; }; }; then | test -n "$library_names"; }; }; then | |||
| # We only need to search for static libraries | # We only need to search for static libraries | |||
| skipping to change at line 5848 | skipping to change at line 6602 | |||
| link_static=no # Whether the deplib will be linked statically | link_static=no # Whether the deplib will be linked statically | |||
| use_static_libs=$prefer_static_libs | use_static_libs=$prefer_static_libs | |||
| if test "$use_static_libs" = built && test "$installed" = yes; then | if test "$use_static_libs" = built && test "$installed" = yes; then | |||
| use_static_libs=no | use_static_libs=no | |||
| fi | fi | |||
| if test -n "$library_names" && | if test -n "$library_names" && | |||
| { test "$use_static_libs" = no || test -z "$old_library"; }; then | { test "$use_static_libs" = no || test -z "$old_library"; }; then | |||
| case $host in | case $host in | |||
| *cygwin* | *mingw* | *cegcc*) | *cygwin* | *mingw* | *cegcc*) | |||
| # No point in relinking DLLs because paths are not encoded | # No point in relinking DLLs because paths are not encoded | |||
| notinst_deplibs="$notinst_deplibs $lib" | func_append notinst_deplibs " $lib" | |||
| need_relink=no | need_relink=no | |||
| ;; | ;; | |||
| *) | *) | |||
| if test "$installed" = no; then | if test "$installed" = no; then | |||
| notinst_deplibs="$notinst_deplibs $lib" | func_append notinst_deplibs " $lib" | |||
| need_relink=yes | need_relink=yes | |||
| fi | fi | |||
| ;; | ;; | |||
| esac | esac | |||
| # This is a shared library | # This is a shared library | |||
| # Warn about portability, can't link against -module's on some | # Warn about portability, can't link against -module's on some | |||
| # systems (darwin). Don't bleat about dlopened modules though! | # systems (darwin). Don't bleat about dlopened modules though! | |||
| dlopenmodule="" | dlopenmodule="" | |||
| for dlpremoduletest in $dlprefiles; do | for dlpremoduletest in $dlprefiles; do | |||
| skipping to change at line 5888 | skipping to change at line 6642 | |||
| if test "$linkmode" = lib && | if test "$linkmode" = lib && | |||
| test "$hardcode_into_libs" = yes; then | test "$hardcode_into_libs" = yes; then | |||
| # Hardcode the library path. | # Hardcode the library path. | |||
| # Skip directories that are in the system default run-time | # Skip directories that are in the system default run-time | |||
| # search path. | # search path. | |||
| case " $sys_lib_dlsearch_path " in | case " $sys_lib_dlsearch_path " in | |||
| *" $absdir "*) ;; | *" $absdir "*) ;; | |||
| *) | *) | |||
| case "$compile_rpath " in | case "$compile_rpath " in | |||
| *" $absdir "*) ;; | *" $absdir "*) ;; | |||
| *) compile_rpath="$compile_rpath $absdir" | *) func_append compile_rpath " $absdir" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| case " $sys_lib_dlsearch_path " in | case " $sys_lib_dlsearch_path " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) | *) | |||
| case "$finalize_rpath " in | case "$finalize_rpath " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) finalize_rpath="$finalize_rpath $libdir" | *) func_append finalize_rpath " $libdir" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| if test -n "$old_archive_from_expsyms_cmds"; then | if test -n "$old_archive_from_expsyms_cmds"; then | |||
| # figure out the soname | # figure out the soname | |||
| set dummy $library_names | set dummy $library_names | |||
| shift | shift | |||
| realname="$1" | realname="$1" | |||
| skipping to change at line 5951 | skipping to change at line 6705 | |||
| # Create $newlib | # Create $newlib | |||
| if test -f "$output_objdir/$newlib"; then :; else | if test -f "$output_objdir/$newlib"; then :; else | |||
| func_verbose "generating import library for \`$soname'" | func_verbose "generating import library for \`$soname'" | |||
| func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' | func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' | |||
| fi | fi | |||
| # make sure the library variables are pointing to the new librar y | # make sure the library variables are pointing to the new librar y | |||
| dir=$output_objdir | dir=$output_objdir | |||
| 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= | |||
| lib_linked=yes | lib_linked=yes | |||
| case $hardcode_action in | case $hardcode_action in | |||
| immediate | unsupported) | immediate | unsupported) | |||
| if test "$hardcode_direct" = no; then | if test "$hardcode_direct" = no; then | |||
| add="$dir/$linklib" | add="$dir/$linklib" | |||
| case $host in | case $host in | |||
| *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; | *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; | |||
| skipping to change at line 6007 | skipping to change at line 6761 | |||
| relink) | relink) | |||
| if test "$hardcode_direct" = yes && | if test "$hardcode_direct" = yes && | |||
| 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$dir" | |||
| # 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 | |||
| [\\/]*) | [\\/]*) | |||
| add_dir="$add_dir -L$inst_prefix_dir$libdir" | func_append add_dir " -L$inst_prefix_dir$libdir" | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| add="-l$name" | add="-l$name" | |||
| elif test "$hardcode_shlibpath_var" = yes; then | elif test "$hardcode_shlibpath_var" = yes; then | |||
| add_shlibpath="$dir" | add_shlibpath="$dir" | |||
| add="-l$name" | add="-l$name" | |||
| else | else | |||
| lib_linked=no | lib_linked=no | |||
| fi | fi | |||
| skipping to change at line 6029 | skipping to change at line 6783 | |||
| *) lib_linked=no ;; | *) lib_linked=no ;; | |||
| esac | esac | |||
| if test "$lib_linked" != yes; then | if test "$lib_linked" != yes; then | |||
| func_fatal_configuration "unsupported hardcode properties" | func_fatal_configuration "unsupported hardcode properties" | |||
| fi | fi | |||
| if test -n "$add_shlibpath"; then | if test -n "$add_shlibpath"; then | |||
| case :$compile_shlibpath: in | case :$compile_shlibpath: in | |||
| *":$add_shlibpath:"*) ;; | *":$add_shlibpath:"*) ;; | |||
| *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; | *) func_append compile_shlibpath "$add_shlibpath:" ;; | |||
| esac | esac | |||
| fi | fi | |||
| if test "$linkmode" = prog; then | if test "$linkmode" = prog; then | |||
| test -n "$add_dir" && compile_deplibs="$add_dir $compile_depli bs" | test -n "$add_dir" && compile_deplibs="$add_dir $compile_depli bs" | |||
| test -n "$add" && compile_deplibs="$add $compile_deplibs" | test -n "$add" && compile_deplibs="$add $compile_deplibs" | |||
| else | else | |||
| test -n "$add_dir" && deplibs="$add_dir $deplibs" | test -n "$add_dir" && deplibs="$add_dir $deplibs" | |||
| test -n "$add" && deplibs="$add $deplibs" | test -n "$add" && deplibs="$add $deplibs" | |||
| if test "$hardcode_direct" != yes && | if test "$hardcode_direct" != yes && | |||
| test "$hardcode_minus_L" != yes && | test "$hardcode_minus_L" != yes && | |||
| test "$hardcode_shlibpath_var" = yes; then | test "$hardcode_shlibpath_var" = yes; then | |||
| case :$finalize_shlibpath: in | case :$finalize_shlibpath: in | |||
| *":$libdir:"*) ;; | *":$libdir:"*) ;; | |||
| *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; | *) func_append finalize_shlibpath "$libdir:" ;; | |||
| esac | esac | |||
| fi | fi | |||
| 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= | |||
| # Finalize command for both is simple: just hardcode it. | # Finalize command for both is simple: just hardcode it. | |||
| if test "$hardcode_direct" = yes && | if test "$hardcode_direct" = yes && | |||
| test "$hardcode_direct_absolute" = no; then | test "$hardcode_direct_absolute" = no; then | |||
| add="$libdir/$linklib" | add="$libdir/$linklib" | |||
| elif test "$hardcode_minus_L" = yes; then | elif test "$hardcode_minus_L" = yes; then | |||
| add_dir="-L$libdir" | add_dir="-L$libdir" | |||
| add="-l$name" | add="-l$name" | |||
| elif test "$hardcode_shlibpath_var" = yes; then | elif test "$hardcode_shlibpath_var" = yes; then | |||
| case :$finalize_shlibpath: in | case :$finalize_shlibpath: in | |||
| *":$libdir:"*) ;; | *":$libdir:"*) ;; | |||
| *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; | *) func_append finalize_shlibpath "$libdir:" ;; | |||
| esac | esac | |||
| add="-l$name" | add="-l$name" | |||
| elif test "$hardcode_automatic" = yes; then | elif test "$hardcode_automatic" = yes; then | |||
| if test -n "$inst_prefix_dir" && | if test -n "$inst_prefix_dir" && | |||
| test -f "$inst_prefix_dir$libdir/$linklib" ; then | test -f "$inst_prefix_dir$libdir/$linklib" ; then | |||
| add="$inst_prefix_dir$libdir/$linklib" | add="$inst_prefix_dir$libdir/$linklib" | |||
| else | else | |||
| add="$libdir/$linklib" | add="$libdir/$linklib" | |||
| fi | fi | |||
| else | else | |||
| # We cannot seem to hardcode it, guess we'll fake it. | # We cannot seem to hardcode it, guess we'll fake it. | |||
| add_dir="-L$libdir" | add_dir="-L$libdir" | |||
| # 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 | |||
| [\\/]*) | [\\/]*) | |||
| add_dir="$add_dir -L$inst_prefix_dir$libdir" | func_append add_dir " -L$inst_prefix_dir$libdir" | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| add="-l$name" | add="-l$name" | |||
| fi | fi | |||
| if test "$linkmode" = prog; then | if test "$linkmode" = prog; then | |||
| test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_dep libs" | test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_dep libs" | |||
| test -n "$add" && finalize_deplibs="$add $finalize_deplibs" | test -n "$add" && finalize_deplibs="$add $finalize_deplibs" | |||
| else | else | |||
| skipping to change at line 6157 | skipping to change at line 6911 | |||
| test "$build_old_libs" = yes || | test "$build_old_libs" = yes || | |||
| test "$link_static" = yes; }; then | test "$link_static" = yes; }; then | |||
| # Extract -R from dependency_libs | # Extract -R from dependency_libs | |||
| temp_deplibs= | temp_deplibs= | |||
| for libdir in $dependency_libs; do | for libdir in $dependency_libs; do | |||
| case $libdir in | case $libdir in | |||
| -R*) func_stripname '-R' '' "$libdir" | -R*) func_stripname '-R' '' "$libdir" | |||
| temp_xrpath=$func_stripname_result | temp_xrpath=$func_stripname_result | |||
| case " $xrpath " in | case " $xrpath " in | |||
| *" $temp_xrpath "*) ;; | *" $temp_xrpath "*) ;; | |||
| *) xrpath="$xrpath $temp_xrpath";; | *) func_append xrpath " $temp_xrpath";; | |||
| esac;; | esac;; | |||
| *) temp_deplibs="$temp_deplibs $libdir";; | *) func_append temp_deplibs " $libdir";; | |||
| esac | esac | |||
| done | done | |||
| dependency_libs="$temp_deplibs" | dependency_libs="$temp_deplibs" | |||
| fi | fi | |||
| newlib_search_path="$newlib_search_path $absdir" | func_append newlib_search_path " $absdir" | |||
| # Link against this library | # Link against this library | |||
| test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" | test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" | |||
| # ... and its dependency_libs | # ... and its dependency_libs | |||
| 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 "*) | |||
| func_append specialdeplibs " $func_resolve_sysroot_result" | ||||
| ;; | ||||
| esac | esac | |||
| fi | fi | |||
| tmp_libs="$tmp_libs $deplib" | func_append tmp_libs " $func_resolve_sysroot_result" | |||
| done | done | |||
| if test "$link_all_deplibs" != no; then | if test "$link_all_deplibs" != no; then | |||
| # Add the search paths of all dependency libraries | # Add the search paths of all dependency libraries | |||
| for deplib in $dependency_libs; do | for deplib in $dependency_libs; do | |||
| path= | path= | |||
| 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" ;; | |||
| *) | *) | |||
| absdir=`cd "$dir" && pwd` | absdir=`cd "$dir" && pwd` | |||
| if test -z "$absdir"; then | if test -z "$absdir"; then | |||
| func_warning "cannot determine absolute directory name o f \`$dir'" | func_warning "cannot determine absolute directory name o f \`$dir'" | |||
| absdir="$dir" | absdir="$dir" | |||
| fi | fi | |||
| ;; | ;; | |||
| skipping to change at line 6215 | skipping to change at line 6977 | |||
| if test -n "$deplibrary_names" ; then | if test -n "$deplibrary_names" ; then | |||
| for tmp in $deplibrary_names ; do | for tmp in $deplibrary_names ; do | |||
| depdepl=$tmp | depdepl=$tmp | |||
| done | done | |||
| if test -f "$absdir/$objdir/$depdepl" ; then | if test -f "$absdir/$objdir/$depdepl" ; then | |||
| depdepl="$absdir/$objdir/$depdepl" | depdepl="$absdir/$objdir/$depdepl" | |||
| darwin_install_name=`${OTOOL} -L $depdepl | awk '{if ( NR == 2) {print $1;exit}}'` | darwin_install_name=`${OTOOL} -L $depdepl | awk '{if ( NR == 2) {print $1;exit}}'` | |||
| if test -z "$darwin_install_name"; then | if test -z "$darwin_install_name"; then | |||
| darwin_install_name=`${OTOOL64} -L $depdepl | aw k '{if (NR == 2) {print $1;exit}}'` | darwin_install_name=`${OTOOL64} -L $depdepl | aw k '{if (NR == 2) {print $1;exit}}'` | |||
| fi | fi | |||
| compiler_flags="$compiler_flags ${wl}-dylib_file ${wl} | func_append compiler_flags " ${wl}-dylib_file ${wl}${d | |||
| ${darwin_install_name}:${depdepl}" | arwin_install_name}:${depdepl}" | |||
| linker_flags="$linker_flags -dylib_file ${darwin_insta | func_append linker_flags " -dylib_file ${darwin_instal | |||
| ll_name}:${depdepl}" | l_name}:${depdepl}" | |||
| path= | path= | |||
| fi | fi | |||
| fi | fi | |||
| ;; | ;; | |||
| *) | *) | |||
| path="-L$absdir/$objdir" | path="-L$absdir/$objdir" | |||
| ;; | ;; | |||
| esac | esac | |||
| else | else | |||
| eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib ` | eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib ` | |||
| skipping to change at line 6266 | skipping to change at line 7028 | |||
| deplibs="$deplib $deplibs" | deplibs="$deplib $deplibs" | |||
| done | done | |||
| fi | fi | |||
| if test "$pass" != dlopen; then | if test "$pass" != dlopen; then | |||
| if test "$pass" != conv; then | if test "$pass" != conv; then | |||
| # Make sure lib_search_path contains only unique directories. | # Make sure lib_search_path contains only unique directories. | |||
| lib_search_path= | lib_search_path= | |||
| for dir in $newlib_search_path; do | for dir in $newlib_search_path; do | |||
| case "$lib_search_path " in | case "$lib_search_path " in | |||
| *" $dir "*) ;; | *" $dir "*) ;; | |||
| *) lib_search_path="$lib_search_path $dir" ;; | *) func_append lib_search_path " $dir" ;; | |||
| esac | esac | |||
| done | done | |||
| newlib_search_path= | newlib_search_path= | |||
| fi | fi | |||
| if test "$linkmode,$pass" != "prog,link"; then | if test "$linkmode,$pass" != "prog,link"; then | |||
| vars="deplibs" | vars="deplibs" | |||
| else | else | |||
| vars="compile_deplibs finalize_deplibs" | vars="compile_deplibs finalize_deplibs" | |||
| fi | fi | |||
| skipping to change at line 6324 | skipping to change at line 7086 | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| done | done | |||
| tmp_libs= | tmp_libs= | |||
| for deplib in $new_libs; do | for deplib in $new_libs; do | |||
| case $deplib in | case $deplib in | |||
| -L*) | -L*) | |||
| case " $tmp_libs " in | case " $tmp_libs " in | |||
| *" $deplib "*) ;; | *" $deplib "*) ;; | |||
| *) tmp_libs="$tmp_libs $deplib" ;; | *) func_append tmp_libs " $deplib" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| *) tmp_libs="$tmp_libs $deplib" ;; | *) func_append tmp_libs " $deplib" ;; | |||
| esac | esac | |||
| done | done | |||
| eval $var=\"$tmp_libs\" | eval $var=\"$tmp_libs\" | |||
| done # for var | done # for var | |||
| fi | fi | |||
| # Last step: remove runtime libs from dependency_libs | # Last step: remove runtime libs from dependency_libs | |||
| # (they stay in deplibs) | # (they stay in deplibs) | |||
| tmp_libs= | tmp_libs= | |||
| for i in $dependency_libs ; do | for i in $dependency_libs ; do | |||
| case " $predeps $postdeps $compiler_lib_search_path " in | case " $predeps $postdeps $compiler_lib_search_path " in | |||
| *" $i "*) | *" $i "*) | |||
| i="" | i="" | |||
| ;; | ;; | |||
| esac | esac | |||
| if test -n "$i" ; then | if test -n "$i" ; then | |||
| tmp_libs="$tmp_libs $i" | func_append tmp_libs " $i" | |||
| fi | fi | |||
| done | done | |||
| dependency_libs=$tmp_libs | dependency_libs=$tmp_libs | |||
| done # for pass | done # for pass | |||
| if test "$linkmode" = prog; then | if test "$linkmode" = prog; then | |||
| dlfiles="$newdlfiles" | dlfiles="$newdlfiles" | |||
| fi | fi | |||
| if test "$linkmode" = prog || test "$linkmode" = lib; then | if test "$linkmode" = prog || test "$linkmode" = lib; then | |||
| dlprefiles="$newdlprefiles" | dlprefiles="$newdlprefiles" | |||
| fi | fi | |||
| skipping to change at line 6384 | skipping to change at line 7146 | |||
| test -n "$release" && \ | test -n "$release" && \ | |||
| func_warning "\`-release' is ignored for archives" | func_warning "\`-release' is ignored for archives" | |||
| test -n "$export_symbols$export_symbols_regex" && \ | test -n "$export_symbols$export_symbols_regex" && \ | |||
| func_warning "\`-export-symbols' is ignored for archives" | func_warning "\`-export-symbols' is ignored for archives" | |||
| # Now set the variables for building old libraries. | # Now set the variables for building old libraries. | |||
| build_libtool_libs=no | build_libtool_libs=no | |||
| oldlibs="$output" | oldlibs="$output" | |||
| objs="$objs$old_deplibs" | func_append objs "$old_deplibs" | |||
| ;; | ;; | |||
| lib) | lib) | |||
| # Make sure we only generate libraries of the form `libNAME.la'. | # Make sure we only generate libraries of the form `libNAME.la'. | |||
| case $outputname in | case $outputname in | |||
| lib*) | lib*) | |||
| func_stripname 'lib' '.la' "$outputname" | func_stripname 'lib' '.la' "$outputname" | |||
| name=$func_stripname_result | name=$func_stripname_result | |||
| eval shared_ext=\"$shrext_cmds\" | eval shared_ext=\"$shrext_cmds\" | |||
| eval libname=\"$libname_spec\" | eval libname=\"$libname_spec\" | |||
| skipping to change at line 6420 | skipping to change at line 7182 | |||
| ;; | ;; | |||
| esac | esac | |||
| if test -n "$objs"; then | if test -n "$objs"; then | |||
| 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" | func_append libobjs " $objs" | |||
| fi | fi | |||
| fi | fi | |||
| test "$dlself" != no && \ | test "$dlself" != no && \ | |||
| func_warning "\`-dlopen self' is ignored for libtool libraries" | func_warning "\`-dlopen self' is ignored for libtool libraries" | |||
| set dummy $rpath | set dummy $rpath | |||
| shift | shift | |||
| test "$#" -gt 1 && \ | test "$#" -gt 1 && \ | |||
| func_warning "ignoring multiple \`-rpath's for a libtool library" | func_warning "ignoring multiple \`-rpath's for a libtool library" | |||
| skipping to change at line 6618 | skipping to change at line 7380 | |||
| loop=$age | loop=$age | |||
| while test "$loop" -ne 0; do | while test "$loop" -ne 0; do | |||
| func_arith $current - $loop | func_arith $current - $loop | |||
| iface=$func_arith_result | iface=$func_arith_result | |||
| func_arith $loop - 1 | func_arith $loop - 1 | |||
| loop=$func_arith_result | loop=$func_arith_result | |||
| verstring="$verstring:${iface}.0" | verstring="$verstring:${iface}.0" | |||
| done | done | |||
| # Make executables depend on our current version. | # Make executables depend on our current version. | |||
| verstring="$verstring:${current}.0" | func_append verstring ":${current}.0" | |||
| ;; | ;; | |||
| qnx) | qnx) | |||
| major=".$current" | major=".$current" | |||
| versuffix=".$current" | versuffix=".$current" | |||
| ;; | ;; | |||
| sunos) | sunos) | |||
| major=".$current" | major=".$current" | |||
| versuffix=".$current.$revision" | versuffix=".$current.$revision" | |||
| skipping to change at line 6686 | skipping to change at line 7448 | |||
| build_old_libs=yes | build_old_libs=yes | |||
| fi | fi | |||
| else | else | |||
| # Don't allow undefined symbols. | # Don't allow undefined symbols. | |||
| allow_undefined_flag="$no_undefined_flag" | allow_undefined_flag="$no_undefined_flag" | |||
| fi | fi | |||
| fi | fi | |||
| func_generate_dlsyms "$libname" "$libname" "yes" | func_generate_dlsyms "$libname" "$libname" "yes" | |||
| libobjs="$libobjs $symfileobj" | func_append 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= | |||
| tempremovelist=`$ECHO "$output_objdir/*"` | tempremovelist=`$ECHO "$output_objdir/*"` | |||
| for p in $tempremovelist; do | for p in $tempremovelist; do | |||
| case $p in | case $p in | |||
| *.$objext | *.gcno) | *.$objext | *.gcno) | |||
| ;; | ;; | |||
| $output_objdir/$outputname | $output_objdir/$libname.* | $output _objdir/${libname}${release}.*) | $output_objdir/$outputname | $output_objdir/$libname.* | $output _objdir/${libname}${release}.*) | |||
| if test "X$precious_files_regex" != "X"; then | if test "X$precious_files_regex" != "X"; then | |||
| if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/nul l 2>&1 | if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/nul l 2>&1 | |||
| then | then | |||
| continue | continue | |||
| fi | fi | |||
| fi | fi | |||
| removelist="$removelist $p" | func_append removelist " $p" | |||
| ;; | ;; | |||
| *) ;; | *) ;; | |||
| esac | esac | |||
| done | done | |||
| test -n "$removelist" && \ | test -n "$removelist" && \ | |||
| func_show_eval "${RM}r \$removelist" | func_show_eval "${RM}r \$removelist" | |||
| fi | fi | |||
| # Now set the variables for building old libraries. | # Now set the variables for building old libraries. | |||
| if test "$build_old_libs" = yes && test "$build_libtool_libs" != conv enience ; then | if test "$build_old_libs" = yes && test "$build_libtool_libs" != conv enience ; then | |||
| oldlibs="$oldlibs $output_objdir/$libname.$libext" | func_append oldlibs " $output_objdir/$libname.$libext" | |||
| # Transform .lo files to .o files. | # Transform .lo files to .o files. | |||
| oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $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 "$lib_search_path " | $SED "s% $path % %g"` | # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` | |||
| # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` | # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` | |||
| # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$pat h % %g"` | # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$pat h % %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" | |||
| func_append temp_xrpath " -R$func_replace_sysroot_result" | ||||
| case "$finalize_rpath " in | case "$finalize_rpath " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) finalize_rpath="$finalize_rpath $libdir" ;; | *) func_append finalize_rpath " $libdir" ;; | |||
| esac | esac | |||
| done | done | |||
| if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes ; then | if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes ; then | |||
| dependency_libs="$temp_xrpath $dependency_libs" | dependency_libs="$temp_xrpath $dependency_libs" | |||
| fi | fi | |||
| fi | fi | |||
| # Make sure dlfiles contains only unique files that won't be dlpreope ned | # Make sure dlfiles contains only unique files that won't be dlpreope ned | |||
| old_dlfiles="$dlfiles" | old_dlfiles="$dlfiles" | |||
| dlfiles= | dlfiles= | |||
| for lib in $old_dlfiles; do | for lib in $old_dlfiles; do | |||
| case " $dlprefiles $dlfiles " in | case " $dlprefiles $dlfiles " in | |||
| *" $lib "*) ;; | *" $lib "*) ;; | |||
| *) dlfiles="$dlfiles $lib" ;; | *) func_append dlfiles " $lib" ;; | |||
| esac | esac | |||
| done | done | |||
| # Make sure dlprefiles contains only unique files | # Make sure dlprefiles contains only unique files | |||
| old_dlprefiles="$dlprefiles" | old_dlprefiles="$dlprefiles" | |||
| dlprefiles= | dlprefiles= | |||
| for lib in $old_dlprefiles; do | for lib in $old_dlprefiles; do | |||
| case "$dlprefiles " in | case "$dlprefiles " in | |||
| *" $lib "*) ;; | *" $lib "*) ;; | |||
| *) dlprefiles="$dlprefiles $lib" ;; | *) func_append dlprefiles " $lib" ;; | |||
| esac | esac | |||
| done | done | |||
| 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* | *-ce gcc* | *-*-haiku*) | *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-ce gcc* | *-*-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]) | |||
| # Rhapsody C library is in the System framework | # Rhapsody C library is in the System framework | |||
| deplibs="$deplibs System.ltframework" | func_append deplibs " System.ltframework" | |||
| ;; | ;; | |||
| *-*-netbsd*) | *-*-netbsd*) | |||
| # Don't link with libc until the a.out ld.so is fixed. | # Don't link with libc until the a.out ld.so is fixed. | |||
| ;; | ;; | |||
| *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) | *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) | |||
| # Do not include libc due to us having libc/libc_r. | # Do not include libc due to us having libc/libc_r. | |||
| ;; | ;; | |||
| *-*-sco3.2v5* | *-*-sco5v6*) | *-*-sco3.2v5* | *-*-sco5v6*) | |||
| # Causes problems with __ctype | # Causes problems with __ctype | |||
| ;; | ;; | |||
| *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) | *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) | |||
| # Compiler inserts libc in the correct place for threads to work | # Compiler inserts libc in the correct place for threads to work | |||
| ;; | ;; | |||
| *) | *) | |||
| # Add libc to deplibs on all other systems if necessary. | # Add libc to deplibs on all other systems if necessary. | |||
| if test "$build_libtool_need_lc" = "yes"; then | if test "$build_libtool_need_lc" = "yes"; then | |||
| deplibs="$deplibs -lc" | func_append deplibs " -lc" | |||
| fi | fi | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| # Transform deplibs into only deplibs that can be linked in shared. | # Transform deplibs into only deplibs that can be linked in shared. | |||
| name_save=$name | name_save=$name | |||
| libname_save=$libname | libname_save=$libname | |||
| release_save=$release | release_save=$release | |||
| versuffix_save=$versuffix | versuffix_save=$versuffix | |||
| skipping to change at line 6838 | skipping to change at line 7601 | |||
| if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then | if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then | |||
| ldd_output=`ldd conftest` | ldd_output=`ldd conftest` | |||
| for i in $deplibs; do | for i in $deplibs; do | |||
| case $i in | case $i in | |||
| -l*) | -l*) | |||
| func_stripname -l '' "$i" | func_stripname -l '' "$i" | |||
| name=$func_stripname_result | name=$func_stripname_result | |||
| if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then | if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then | |||
| case " $predeps $postdeps " in | case " $predeps $postdeps " in | |||
| *" $i "*) | *" $i "*) | |||
| newdeplibs="$newdeplibs $i" | func_append newdeplibs " $i" | |||
| i="" | i="" | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| if test -n "$i" ; then | if test -n "$i" ; then | |||
| libname=`eval "\\$ECHO \"$libname_spec\""` | libname=`eval "\\$ECHO \"$libname_spec\""` | |||
| deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` | deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` | |||
| set dummy $deplib_matches; shift | set dummy $deplib_matches; shift | |||
| deplib_match=$1 | deplib_match=$1 | |||
| if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; t hen | if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; t hen | |||
| newdeplibs="$newdeplibs $i" | func_append newdeplibs " $i" | |||
| else | else | |||
| droppeddeps=yes | droppeddeps=yes | |||
| echo | echo | |||
| $ECHO "*** Warning: dynamic linker does not accept neede d library $i." | $ECHO "*** Warning: dynamic linker does not accept neede d library $i." | |||
| echo "*** I have the capability to make that library aut omatically link in when" | echo "*** I have the capability to make that library aut omatically link in when" | |||
| echo "*** you link to this library. But I can only do t his if you have a" | echo "*** you link to this library. But I can only do t his 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 lin ker did not use it for" | echo "*** because a test_compile did reveal that the lin ker 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 | |||
| ;; | ;; | |||
| *) | *) | |||
| newdeplibs="$newdeplibs $i" | func_append newdeplibs " $i" | |||
| ;; | ;; | |||
| esac | esac | |||
| done | done | |||
| else | else | |||
| # Error occurred in the first compile. Let's try to salvage | # Error occurred in the first compile. Let's try to salvage | |||
| # the situation: Compile a separate program for each library. | # the situation: Compile a separate program for each library. | |||
| for i in $deplibs; do | for i in $deplibs; do | |||
| case $i in | case $i in | |||
| -l*) | -l*) | |||
| func_stripname -l '' "$i" | func_stripname -l '' "$i" | |||
| name=$func_stripname_result | name=$func_stripname_result | |||
| $opt_dry_run || $RM conftest | $opt_dry_run || $RM conftest | |||
| if $LTCC $LTCFLAGS -o conftest conftest.c $i; then | if $LTCC $LTCFLAGS -o conftest conftest.c $i; then | |||
| ldd_output=`ldd conftest` | ldd_output=`ldd conftest` | |||
| if test "X$allow_libtool_libs_with_static_runtimes" = "Xye s" ; then | if test "X$allow_libtool_libs_with_static_runtimes" = "Xye s" ; then | |||
| case " $predeps $postdeps " in | case " $predeps $postdeps " in | |||
| *" $i "*) | *" $i "*) | |||
| newdeplibs="$newdeplibs $i" | func_append newdeplibs " $i" | |||
| i="" | i="" | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| if test -n "$i" ; then | if test -n "$i" ; then | |||
| libname=`eval "\\$ECHO \"$libname_spec\""` | libname=`eval "\\$ECHO \"$libname_spec\""` | |||
| deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` | deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` | |||
| set dummy $deplib_matches; shift | set dummy $deplib_matches; shift | |||
| deplib_match=$1 | deplib_match=$1 | |||
| if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then | if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then | |||
| newdeplibs="$newdeplibs $i" | func_append newdeplibs " $i" | |||
| else | else | |||
| droppeddeps=yes | droppeddeps=yes | |||
| echo | echo | |||
| $ECHO "*** Warning: dynamic linker does not accept nee ded library $i." | $ECHO "*** Warning: dynamic linker does not accept nee ded library $i." | |||
| echo "*** I have the capability to make that library a utomatically link in when" | echo "*** I have the capability to make that library a utomatically 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 l inker did not use this one" | echo "*** because a test_compile did reveal that the l inker did not use this one" | |||
| echo "*** as a dynamic dependency that programs can ge t resolved with at runtime." | echo "*** as a dynamic dependency that programs can ge t resolved with at runtime." | |||
| fi | fi | |||
| skipping to change at line 6914 | skipping to change at line 7677 | |||
| 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 inst all it or some" | echo "*** make it link in! You will probably need to inst all it or some" | |||
| echo "*** library that it depends on before this library w ill be fully" | echo "*** library that it depends on before this library w ill be fully" | |||
| echo "*** functional. Installing it before continuing wou ld be even better." | echo "*** functional. Installing it before continuing wou ld be even better." | |||
| fi | fi | |||
| ;; | ;; | |||
| *) | *) | |||
| newdeplibs="$newdeplibs $i" | func_append newdeplibs " $i" | |||
| ;; | ;; | |||
| esac | esac | |||
| done | done | |||
| fi | fi | |||
| ;; | ;; | |||
| file_magic*) | file_magic*) | |||
| set dummy $deplibs_check_method; shift | set dummy $deplibs_check_method; shift | |||
| file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` | file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` | |||
| for a_deplib in $deplibs; do | for a_deplib in $deplibs; do | |||
| case $a_deplib in | case $a_deplib in | |||
| -l*) | -l*) | |||
| func_stripname -l '' "$a_deplib" | func_stripname -l '' "$a_deplib" | |||
| name=$func_stripname_result | name=$func_stripname_result | |||
| if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then | if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then | |||
| case " $predeps $postdeps " in | case " $predeps $postdeps " in | |||
| *" $a_deplib "*) | *" $a_deplib "*) | |||
| newdeplibs="$newdeplibs $a_deplib" | func_append newdeplibs " $a_deplib" | |||
| a_deplib="" | a_deplib="" | |||
| ;; | ;; | |||
| esac | esac | |||
| 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_magi | ||||
| c_glob` | ||||
| else | ||||
| libnameglob=$libname | ||||
| fi | ||||
| test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocase | ||||
| glob` | ||||
| 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 | | |||
| $GREP " -> " >/dev/null; then | $GREP " -> " >/dev/null; then | |||
| continue | continue | |||
| fi | fi | |||
| # The statement above tries to avoid entering an | # The statement above tries to avoid entering an | |||
| # endless loop below, in case of cyclic links. | # endless loop below, in case of cyclic links. | |||
| # We might still enter an endless loop, since a link | # We might still enter an endless loop, since a link | |||
| # loop can be closed while we follow links, | # loop can be closed while we follow links, | |||
| skipping to change at line 6962 | skipping to change at line 7737 | |||
| while test -h "$potlib" 2>/dev/null; do | while test -h "$potlib" 2>/dev/null; do | |||
| 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 "$potlib" | $SED 's,[^/]*$,,'`"$pot liblink";; | *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$pot liblink";; | |||
| esac | esac | |||
| done | done | |||
| if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | | if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | | |||
| $SED -e 10q | | $SED -e 10q | | |||
| $EGREP "$file_magic_regex" > /dev/null; then | $EGREP "$file_magic_regex" > /dev/null; then | |||
| newdeplibs="$newdeplibs $a_deplib" | func_append newdeplibs " $a_deplib" | |||
| a_deplib="" | a_deplib="" | |||
| break 2 | break 2 | |||
| fi | fi | |||
| done | done | |||
| done | done | |||
| 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." | |||
| skipping to change at line 6987 | skipping to change at line 7762 | |||
| 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 | |||
| $ECHO "*** with $libname and none of the candidates passed a file format test" | $ECHO "*** with $libname and none of the candidates passed a file format test" | |||
| $ECHO "*** using a file magic. Last file checked: $potlib" | $ECHO "*** using a file magic. Last file checked: $potlib" | |||
| fi | fi | |||
| fi | fi | |||
| ;; | ;; | |||
| *) | *) | |||
| # Add a -L argument. | # Add a -L argument. | |||
| newdeplibs="$newdeplibs $a_deplib" | func_append newdeplibs " $a_deplib" | |||
| ;; | ;; | |||
| esac | esac | |||
| done # Gone through all deplibs. | done # Gone through all deplibs. | |||
| ;; | ;; | |||
| 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 \(.*\)"` | |||
| for a_deplib in $deplibs; do | for a_deplib in $deplibs; do | |||
| case $a_deplib in | case $a_deplib in | |||
| -l*) | -l*) | |||
| func_stripname -l '' "$a_deplib" | func_stripname -l '' "$a_deplib" | |||
| name=$func_stripname_result | name=$func_stripname_result | |||
| if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then | if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then | |||
| case " $predeps $postdeps " in | case " $predeps $postdeps " in | |||
| *" $a_deplib "*) | *" $a_deplib "*) | |||
| newdeplibs="$newdeplibs $a_deplib" | func_append newdeplibs " $a_deplib" | |||
| a_deplib="" | a_deplib="" | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| if test -n "$a_deplib" ; then | if test -n "$a_deplib" ; then | |||
| libname=`eval "\\$ECHO \"$libname_spec\""` | libname=`eval "\\$ECHO \"$libname_spec\""` | |||
| for i in $lib_search_path $sys_lib_search_path $shlib_search _path; do | for i in $lib_search_path $sys_lib_search_path $shlib_search _path; do | |||
| 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_m agic test | potlib="$potent_lib" # see symlink-check above in file_m agic test | |||
| if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 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" | func_append newdeplibs " $a_deplib" | |||
| a_deplib="" | a_deplib="" | |||
| break 2 | break 2 | |||
| fi | fi | |||
| done | done | |||
| done | done | |||
| 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." | |||
| skipping to change at line 7041 | skipping to change at line 7816 | |||
| 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 | |||
| $ECHO "*** with $libname and none of the candidates passed a file format test" | $ECHO "*** with $libname and none of the candidates passed a file format test" | |||
| $ECHO "*** using a regex pattern. Last file checked: $potl ib" | $ECHO "*** using a regex pattern. Last file checked: $potl ib" | |||
| fi | fi | |||
| fi | fi | |||
| ;; | ;; | |||
| *) | *) | |||
| # Add a -L argument. | # Add a -L argument. | |||
| newdeplibs="$newdeplibs $a_deplib" | func_append newdeplibs " $a_deplib" | |||
| ;; | ;; | |||
| esac | esac | |||
| done # Gone through all deplibs. | done # Gone through all deplibs. | |||
| ;; | ;; | |||
| none | unknown | *) | none | unknown | *) | |||
| newdeplibs="" | newdeplibs="" | |||
| tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g '` | tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g '` | |||
| if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; the n | if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; the n | |||
| 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 '/' | |||
| skipping to change at line 7145 | skipping to change at line 7920 | |||
| # move library search paths that coincide with paths to not yet | # move library search paths that coincide with paths to not yet | |||
| # installed libraries to the beginning of the library search list | # installed libraries to the beginning of the library search list | |||
| new_libs= | new_libs= | |||
| for path in $notinst_path; do | for path in $notinst_path; do | |||
| case " $new_libs " in | case " $new_libs " in | |||
| *" -L$path/$objdir "*) ;; | *" -L$path/$objdir "*) ;; | |||
| *) | *) | |||
| case " $deplibs " in | case " $deplibs " in | |||
| *" -L$path/$objdir "*) | *" -L$path/$objdir "*) | |||
| new_libs="$new_libs -L$path/$objdir" ;; | func_append new_libs " -L$path/$objdir" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| done | done | |||
| for deplib in $deplibs; do | for deplib in $deplibs; do | |||
| case $deplib in | case $deplib in | |||
| -L*) | -L*) | |||
| case " $new_libs " in | case " $new_libs " in | |||
| *" $deplib "*) ;; | *" $deplib "*) ;; | |||
| *) new_libs="$new_libs $deplib" ;; | *) func_append new_libs " $deplib" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| *) new_libs="$new_libs $deplib" ;; | *) func_append new_libs " $deplib" ;; | |||
| esac | esac | |||
| done | done | |||
| deplibs="$new_libs" | deplibs="$new_libs" | |||
| # All the library-specific variables (install_libdir is set above). | # All the library-specific variables (install_libdir is set above). | |||
| library_names= | library_names= | |||
| old_library= | old_library= | |||
| dlname= | dlname= | |||
| # 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 | |||
| 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 | |||
| # Just accumulate the unique libdirs. | # Just accumulate the unique libdirs. | |||
| case $hardcode_libdir_separator$hardcode_libdirs$hardcode_ libdir_separator in | case $hardcode_libdir_separator$hardcode_libdirs$hardcode_ libdir_separator in | |||
| *"$hardcode_libdir_separator$libdir$hardcode_libdir_separa tor"*) | *"$hardcode_libdir_separator$libdir$hardcode_libdir_separa tor"*) | |||
| ;; | ;; | |||
| *) | *) | |||
| hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_sepa rator$libdir" | func_append hardcode_libdirs "$hardcode_libdir_separator $libdir" | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| else | else | |||
| eval flag=\"$hardcode_libdir_flag_spec\" | eval flag=\"$hardcode_libdir_flag_spec\" | |||
| dep_rpath="$dep_rpath $flag" | func_append dep_rpath " $flag" | |||
| fi | fi | |||
| elif test -n "$runpath_var"; then | elif test -n "$runpath_var"; then | |||
| case "$perm_rpath " in | case "$perm_rpath " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) perm_rpath="$perm_rpath $libdir" ;; | *) func_apped perm_rpath " $libdir" ;; | |||
| esac | esac | |||
| fi | fi | |||
| done | done | |||
| # Substitute the hardcoded libdirs into the rpath. | # Substitute the hardcoded libdirs into the rpath. | |||
| 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 | if test -n "$hardcode_libdir_flag_spec_ld"; then | |||
| eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" | eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" | |||
| else | else | |||
| eval dep_rpath=\"$hardcode_libdir_flag_spec\" | eval dep_rpath=\"$hardcode_libdir_flag_spec\" | |||
| fi | 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. | |||
| rpath= | rpath= | |||
| for dir in $perm_rpath; do | for dir in $perm_rpath; do | |||
| rpath="$rpath$dir:" | func_append rpath "$dir:" | |||
| done | done | |||
| eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" | eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" | |||
| fi | fi | |||
| test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" | test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" | |||
| fi | fi | |||
| shlibpath="$finalize_shlibpath" | shlibpath="$finalize_shlibpath" | |||
| test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" | test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpat h" | |||
| if test -n "$shlibpath"; then | if test -n "$shlibpath"; then | |||
| eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpa th_var" | eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpa th_var" | |||
| fi | fi | |||
| # Get the real and link names of the library. | # Get the real and link names of the library. | |||
| eval shared_ext=\"$shrext_cmds\" | eval shared_ext=\"$shrext_cmds\" | |||
| eval library_names=\"$library_names_spec\" | eval library_names=\"$library_names_spec\" | |||
| set dummy $library_names | set dummy $library_names | |||
| shift | shift | |||
| realname="$1" | realname="$1" | |||
| skipping to change at line 7250 | skipping to change at line 8027 | |||
| soname="$realname" | soname="$realname" | |||
| fi | fi | |||
| if test -z "$dlname"; then | if test -z "$dlname"; then | |||
| dlname=$soname | dlname=$soname | |||
| fi | fi | |||
| lib="$output_objdir/$realname" | lib="$output_objdir/$realname" | |||
| linknames= | linknames= | |||
| for link | for link | |||
| do | do | |||
| linknames="$linknames $link" | func_append linknames " $link" | |||
| done | done | |||
| # Use standard objects if they are pic | # Use standard objects if they are pic | |||
| test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$l o2o" | $NL2SP` | test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$l o2o" | $NL2SP` | |||
| test "X$libobjs" = "X " && libobjs= | test "X$libobjs" = "X " && libobjs= | |||
| delfiles= | delfiles= | |||
| if test -n "$export_symbols" && test -n "$include_expsyms"; then | if test -n "$export_symbols" && test -n "$include_expsyms"; then | |||
| $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp " | $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp " | |||
| export_symbols="$output_objdir/$libname.uexp" | export_symbols="$output_objdir/$libname.uexp" | |||
| delfiles="$delfiles $export_symbols" | func_append delfiles " $export_symbols" | |||
| fi | fi | |||
| orig_export_symbols= | orig_export_symbols= | |||
| case $host_os in | case $host_os in | |||
| cygwin* | mingw* | cegcc*) | cygwin* | mingw* | cegcc*) | |||
| if test -n "$export_symbols" && test -z "$export_symbols_regex"; t hen | if test -n "$export_symbols" && test -z "$export_symbols_regex"; t hen | |||
| # exporting using user supplied symfile | # exporting using user supplied symfile | |||
| if test "x`$SED 1q $export_symbols`" != xEXPORTS; then | if test "x`$SED 1q $export_symbols`" != xEXPORTS; then | |||
| # and it's NOT already a .def file. Must figure out | # and it's NOT already a .def file. Must figure out | |||
| # which of the given symbols are data symbols and tag | # which of the given symbols are data symbols and tag | |||
| skipping to change at line 7292 | skipping to change at line 8069 | |||
| esac | esac | |||
| # Prepare the list of exported symbols | # Prepare the list of exported symbols | |||
| if test -z "$export_symbols"; then | if test -z "$export_symbols"; then | |||
| if test "$always_export_symbols" = yes || test -n "$export_symbols _regex"; then | if test "$always_export_symbols" = yes || test -n "$export_symbols _regex"; then | |||
| func_verbose "generating symbol list for \`$libname.la'" | func_verbose "generating symbol list for \`$libname.la'" | |||
| export_symbols="$output_objdir/$libname.exp" | export_symbols="$output_objdir/$libname.exp" | |||
| $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 - | *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | | |||
| 1; then | ~*) | |||
| 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 $?' | ||||
| 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 | ||||
| func_append 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 $?' | func_show_eval "$cmd" 'exit $?' | |||
| output=$save_output | ||||
| libobjs=$save_libobjs | ||||
| skipped_export=false | 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.. ." | |||
| skipped_export=: | skipped_export=: | |||
| # Break out early, otherwise skipped_export may be | # Break out early, otherwise skipped_export may be | |||
| # set to false by a later but shorter cmd. | # set to false by a later but shorter cmd. | |||
| break | break | |||
| fi | fi | |||
| done | done | |||
| skipping to change at line 7332 | skipping to change at line 8141 | |||
| if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols" ; then | if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols" ; then | |||
| # The given exports_symbols file has to be filtered, so filter it. | # The given exports_symbols file has to be filtered, so filter it. | |||
| func_verbose "filter symbol list for \`$libname.la' to tag DATA ex ports" | func_verbose "filter symbol list for \`$libname.la' to tag DATA ex ports" | |||
| # FIXME: $output_objdir/$libname.filter potentially contains lots of | # FIXME: $output_objdir/$libname.filter potentially contains lots of | |||
| # 's' commands which not all seds can handle. GNU sed should be fi ne | # 's' commands which not all seds can handle. GNU sed should be fi ne | |||
| # though. Also, the filter scales superlinearly with the number of | # though. Also, the filter scales superlinearly with the number of | |||
| # global variables. join(1) would be nice here, but unfortunately | # global variables. join(1) would be nice here, but unfortunately | |||
| # isn't a blessed tool. | # isn't a blessed tool. | |||
| $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\ 1\2|,' < $export_symbols > $output_objdir/$libname.filter | $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\ 1\2|,' < $export_symbols > $output_objdir/$libname.filter | |||
| delfiles="$delfiles $export_symbols $output_objdir/$libname.filter " | func_append delfiles " $export_symbols $output_objdir/$libname.fil ter" | |||
| export_symbols=$output_objdir/$libname.def | export_symbols=$output_objdir/$libname.def | |||
| $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_exp ort_symbols > $export_symbols | $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_exp ort_symbols > $export_symbols | |||
| fi | fi | |||
| tmp_deplibs= | tmp_deplibs= | |||
| for test_deplib in $deplibs; do | for test_deplib in $deplibs; do | |||
| case " $convenience " in | case " $convenience " in | |||
| *" $test_deplib "*) ;; | *" $test_deplib "*) ;; | |||
| *) | *) | |||
| tmp_deplibs="$tmp_deplibs $test_deplib" | func_append tmp_deplibs " $test_deplib" | |||
| ;; | ;; | |||
| esac | esac | |||
| done | done | |||
| deplibs="$tmp_deplibs" | deplibs="$tmp_deplibs" | |||
| if test -n "$convenience"; then | if test -n "$convenience"; then | |||
| if test -n "$whole_archive_flag_spec" && | if test -n "$whole_archive_flag_spec" && | |||
| test "$compiler_needs_object" = yes && | test "$compiler_needs_object" = yes && | |||
| test -z "$libobjs"; then | test -z "$libobjs"; then | |||
| # extract the archives, so we have objects to list. | # extract the archives, so we have objects to list. | |||
| # TODO: could optimize this to just extract one archive. | # TODO: could optimize this to just extract one archive. | |||
| whole_archive_flag_spec= | whole_archive_flag_spec= | |||
| fi | fi | |||
| if test -n "$whole_archive_flag_spec"; then | if test -n "$whole_archive_flag_spec"; then | |||
| save_libobjs=$libobjs | save_libobjs=$libobjs | |||
| eval libobjs=\"\$libobjs $whole_archive_flag_spec\" | eval libobjs=\"\$libobjs $whole_archive_flag_spec\" | |||
| test "X$libobjs" = "X " && libobjs= | test "X$libobjs" = "X " && libobjs= | |||
| else | else | |||
| gentop="$output_objdir/${outputname}x" | gentop="$output_objdir/${outputname}x" | |||
| generated="$generated $gentop" | func_append generated " $gentop" | |||
| func_extract_archives $gentop $convenience | func_extract_archives $gentop $convenience | |||
| libobjs="$libobjs $func_extract_archives_result" | func_append libobjs " $func_extract_archives_result" | |||
| test "X$libobjs" = "X " && libobjs= | test "X$libobjs" = "X " && libobjs= | |||
| fi | fi | |||
| fi | fi | |||
| if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; th en | if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; th en | |||
| eval flag=\"$thread_safe_flag_spec\" | eval flag=\"$thread_safe_flag_spec\" | |||
| linker_flags="$linker_flags $flag" | func_append linker_flags " $flag" | |||
| 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 && $M V $realname ${realname}U)' || exit $? | $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $M V $realname ${realname}U)' || exit $? | |||
| fi | fi | |||
| # Do each of the archive commands. | # Do each of the archive commands. | |||
| if test "$module" = yes && test -n "$module_cmds" ; then | if test "$module" = yes && test -n "$module_cmds" ; then | |||
| if test -n "$export_symbols" && test -n "$module_expsym_cmds"; the n | if test -n "$export_symbols" && test -n "$module_expsym_cmds"; the n | |||
| eval test_cmds=\"$module_expsym_cmds\" | eval test_cmds=\"$module_expsym_cmds\" | |||
| cmds=$module_expsym_cmds | cmds=$module_expsym_cmds | |||
| else | else | |||
| eval test_cmds=\"$module_cmds\" | eval test_cmds=\"$module_cmds\" | |||
| skipping to change at line 7438 | skipping to change at line 8247 | |||
| objlist= | objlist= | |||
| last_robj= | last_robj= | |||
| k=1 | k=1 | |||
| if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && t est "$with_gnu_ld" = yes; then | if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && t est "$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" | func_append 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" | |||
| : > $output | : > $output | |||
| set x $save_libobjs | set x $save_libobjs | |||
| shift | shift | |||
| firstobj= | firstobj= | |||
| if test "$compiler_needs_object" = yes; then | if test "$compiler_needs_object" = yes; then | |||
| firstobj="$1 " | firstobj="$1 " | |||
| shift | shift | |||
| 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" | func_append 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..." | |||
| output=$output_objdir/$output_la-${k}.$objext | output=$output_objdir/$output_la-${k}.$objext | |||
| eval test_cmds=\"$reload_cmds\" | eval test_cmds=\"$reload_cmds\" | |||
| func_len " $test_cmds" | func_len " $test_cmds" | |||
| len0=$func_len_result | len0=$func_len_result | |||
| len=$len0 | len=$len0 | |||
| # Loop over the list of objects to be linked. | # Loop over the list of objects to be linked. | |||
| skipping to change at line 7509 | skipping to change at line 8323 | |||
| done | done | |||
| # Handle the remaining objects by creating one last | # Handle the remaining objects by creating one last | |||
| # 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~ | |||
| reload_objs="$objlist $last_robj" | reload_objs="$objlist $last_robj" | |||
| eval concat_cmds=\"\${concat_cmds}$reload_cmds\" | 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 | |||
| delfiles="$delfiles $output" | func_append delfiles " $output" | |||
| else | else | |||
| output= | output= | |||
| fi | fi | |||
| if ${skipped_export-false}; then | if ${skipped_export-false}; then | |||
| func_verbose "generating symbol list for \`$libname.la'" | func_verbose "generating symbol list for \`$libname.la'" | |||
| export_symbols="$output_objdir/$libname.exp" | export_symbols="$output_objdir/$libname.exp" | |||
| $opt_dry_run || $RM $export_symbols | $opt_dry_run || $RM $export_symbols | |||
| libobjs=$output | libobjs=$output | |||
| skipping to change at line 7543 | skipping to change at line 8357 | |||
| for cmd in $concat_cmds; do | for cmd in $concat_cmds; do | |||
| IFS="$save_ifs" | IFS="$save_ifs" | |||
| $opt_silent || { | $opt_silent || { | |||
| func_quote_for_expand "$cmd" | func_quote_for_expand "$cmd" | |||
| eval "func_echo $func_quote_for_expand_result" | eval "func_echo $func_quote_for_expand_result" | |||
| } | } | |||
| $opt_dry_run || eval "$cmd" || { | $opt_dry_run || eval "$cmd" || { | |||
| 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" ) | |||
| fi | fi | |||
| exit $lt_exit | exit $lt_exit | |||
| } | } | |||
| done | done | |||
| IFS="$save_ifs" | IFS="$save_ifs" | |||
| skipping to change at line 7576 | skipping to change at line 8390 | |||
| if test -n "$orig_export_symbols"; then | if test -n "$orig_export_symbols"; then | |||
| # The given exports_symbols file has to be filtered, so filter it. | # The given exports_symbols file has to be filtered, so filter it. | |||
| func_verbose "filter symbol list for \`$libname.la' to tag DAT A exports" | func_verbose "filter symbol list for \`$libname.la' to tag DAT A exports" | |||
| # FIXME: $output_objdir/$libname.filter potentially contains l ots of | # FIXME: $output_objdir/$libname.filter potentially contains l ots of | |||
| # 's' commands which not all seds can handle. GNU sed should b e fine | # 's' commands which not all seds can handle. GNU sed should b e fine | |||
| # though. Also, the filter scales superlinearly with the numbe r of | # though. Also, the filter scales superlinearly with the numbe r of | |||
| # global variables. join(1) would be nice here, but unfortunat ely | # global variables. join(1) would be nice here, but unfortunat ely | |||
| # isn't a blessed tool. | # isn't a blessed tool. | |||
| $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\ 1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter | $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\ 1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter | |||
| delfiles="$delfiles $export_symbols $output_objdir/$libname.fi lter" | func_append delfiles " $export_symbols $output_objdir/$libname .filter" | |||
| export_symbols=$output_objdir/$libname.def | export_symbols=$output_objdir/$libname.def | |||
| $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig _export_symbols > $export_symbols | $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig _export_symbols > $export_symbols | |||
| fi | fi | |||
| fi | fi | |||
| libobjs=$output | libobjs=$output | |||
| # Restore the value of output. | # Restore the value of output. | |||
| output=$save_output | output=$save_output | |||
| if test -n "$convenience" && test -n "$whole_archive_flag_spec"; t hen | if test -n "$convenience" && test -n "$whole_archive_flag_spec"; t hen | |||
| skipping to change at line 7617 | skipping to change at line 8431 | |||
| fi | fi | |||
| if test -n "$delfiles"; then | if test -n "$delfiles"; then | |||
| # Append the command to remove temporary files to $cmds. | # Append the command to remove temporary files to $cmds. | |||
| eval cmds=\"\$cmds~\$RM $delfiles\" | eval cmds=\"\$cmds~\$RM $delfiles\" | |||
| fi | fi | |||
| # Add any objects from preloaded convenience libraries | # Add any objects from preloaded convenience libraries | |||
| if test -n "$dlprefiles"; then | if test -n "$dlprefiles"; then | |||
| gentop="$output_objdir/${outputname}x" | gentop="$output_objdir/${outputname}x" | |||
| generated="$generated $gentop" | func_append generated " $gentop" | |||
| func_extract_archives $gentop $dlprefiles | func_extract_archives $gentop $dlprefiles | |||
| libobjs="$libobjs $func_extract_archives_result" | func_append libobjs " $func_extract_archives_result" | |||
| test "X$libobjs" = "X " && libobjs= | test "X$libobjs" = "X " && libobjs= | |||
| fi | fi | |||
| save_ifs="$IFS"; IFS='~' | save_ifs="$IFS"; IFS='~' | |||
| for cmd in $cmds; do | for cmd in $cmds; do | |||
| IFS="$save_ifs" | IFS="$save_ifs" | |||
| eval cmd=\"$cmd\" | eval cmd=\"$cmd\" | |||
| $opt_silent || { | $opt_silent || { | |||
| func_quote_for_expand "$cmd" | func_quote_for_expand "$cmd" | |||
| eval "func_echo $func_quote_for_expand_result" | eval "func_echo $func_quote_for_expand_result" | |||
| } | } | |||
| $opt_dry_run || eval "$cmd" || { | $opt_dry_run || eval "$cmd" || { | |||
| 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" ) | |||
| fi | fi | |||
| exit $lt_exit | exit $lt_exit | |||
| } | } | |||
| done | done | |||
| 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 && $M V $realname ${realname}T && $MV ${realname}U $realname)' || exit $? | $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $M V $realname ${realname}T && $MV ${realname}U $realname)' || exit $? | |||
| if test -n "$convenience"; then | if test -n "$convenience"; then | |||
| if test -z "$whole_archive_flag_spec"; then | if test -z "$whole_archive_flag_spec"; then | |||
| func_show_eval '${RM}r "$gentop"' | func_show_eval '${RM}r "$gentop"' | |||
| fi | fi | |||
| fi | fi | |||
| exit $EXIT_SUCCESS | exit $EXIT_SUCCESS | |||
| fi | fi | |||
| skipping to change at line 7732 | skipping to change at line 8546 | |||
| # -Wl from whole_archive_flag_spec and hope we can get by with | # -Wl from whole_archive_flag_spec and hope we can get by with | |||
| # turning comma into space.. | # turning comma into space.. | |||
| wl= | wl= | |||
| 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 "$tmp_whole_archive_flags" | $SED '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" | func_append generated " $gentop" | |||
| func_extract_archives $gentop $convenience | func_extract_archives $gentop $convenience | |||
| reload_conv_objs="$reload_objs $func_extract_archives_result" | reload_conv_objs="$reload_objs $func_extract_archives_result" | |||
| 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 "$libobjs" | $SP2NL | $SED "/\ .${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuit e: skip nested quoting test | reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\ .${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuit e: skip nested quoting test | |||
| output="$obj" | output="$obj" | |||
| func_execute_cmds "$reload_cmds" 'exit $?' | func_execute_cmds "$reload_cmds" 'exit $?' | |||
| # Exit if we aren't doing a library object file. | # Exit if we aren't doing a library object file. | |||
| if test -z "$libobj"; then | if test -z "$libobj"; then | |||
| if test -n "$gentop"; then | if test -n "$gentop"; then | |||
| func_show_eval '${RM}r "$gentop"' | func_show_eval '${RM}r "$gentop"' | |||
| skipping to change at line 7812 | skipping to change at line 8629 | |||
| ;; | ;; | |||
| esac | esac | |||
| case $host in | case $host in | |||
| *-*-darwin*) | *-*-darwin*) | |||
| # Don't allow lazy linking, it breaks C++ global constructors | # Don't allow lazy linking, it breaks C++ global constructors | |||
| # But is supposedly fixed on 10.4 or later (yay!). | # But is supposedly fixed on 10.4 or later (yay!). | |||
| if test "$tagname" = CXX ; then | if test "$tagname" = CXX ; then | |||
| case ${MACOSX_DEPLOYMENT_TARGET-10.0} in | case ${MACOSX_DEPLOYMENT_TARGET-10.0} in | |||
| 10.[0123]) | 10.[0123]) | |||
| compile_command="$compile_command ${wl}-bind_at_load" | func_append compile_command " ${wl}-bind_at_load" | |||
| finalize_command="$finalize_command ${wl}-bind_at_load" | func_append finalize_command " ${wl}-bind_at_load" | |||
| ;; | ;; | |||
| 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 " $compile_deplibs" | $SED 's% \([^ $]*\).ltf ramework% -framework \1%g'` | compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltf ramework% -framework \1%g'` | |||
| finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).l tframework% -framework \1%g'` | finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).l tframework% -framework \1%g'` | |||
| ;; | ;; | |||
| esac | esac | |||
| # move library search paths that coincide with paths to not yet | # move library search paths that coincide with paths to not yet | |||
| # installed libraries to the beginning of the library search list | # installed libraries to the beginning of the library search list | |||
| new_libs= | new_libs= | |||
| for path in $notinst_path; do | for path in $notinst_path; do | |||
| case " $new_libs " in | case " $new_libs " in | |||
| *" -L$path/$objdir "*) ;; | *" -L$path/$objdir "*) ;; | |||
| *) | *) | |||
| case " $compile_deplibs " in | case " $compile_deplibs " in | |||
| *" -L$path/$objdir "*) | *" -L$path/$objdir "*) | |||
| new_libs="$new_libs -L$path/$objdir" ;; | func_append new_libs " -L$path/$objdir" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| done | done | |||
| for deplib in $compile_deplibs; do | for deplib in $compile_deplibs; do | |||
| case $deplib in | case $deplib in | |||
| -L*) | -L*) | |||
| case " $new_libs " in | case " $new_libs " in | |||
| *" $deplib "*) ;; | *" $deplib "*) ;; | |||
| *) new_libs="$new_libs $deplib" ;; | *) func_append new_libs " $deplib" ;; | |||
| esac | esac | |||
| ;; | ;; | |||
| *) new_libs="$new_libs $deplib" ;; | *) func_append new_libs " $deplib" ;; | |||
| esac | esac | |||
| done | done | |||
| compile_deplibs="$new_libs" | compile_deplibs="$new_libs" | |||
| compile_command="$compile_command $compile_deplibs" | func_append compile_command " $compile_deplibs" | |||
| finalize_command="$finalize_command $finalize_deplibs" | func_append finalize_command " $finalize_deplibs" | |||
| if test -n "$rpath$xrpath"; then | if test -n "$rpath$xrpath"; then | |||
| # If the user specified any rpath flags, then add them. | # If the user specified any rpath flags, then add them. | |||
| for libdir in $rpath $xrpath; do | for libdir in $rpath $xrpath; do | |||
| # This is the magic to use -rpath. | # This is the magic to use -rpath. | |||
| case "$finalize_rpath " in | case "$finalize_rpath " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) finalize_rpath="$finalize_rpath $libdir" ;; | *) func_append finalize_rpath " $libdir" ;; | |||
| esac | esac | |||
| done | done | |||
| fi | fi | |||
| # Now hardcode the library paths | # Now hardcode the library paths | |||
| rpath= | rpath= | |||
| hardcode_libdirs= | hardcode_libdirs= | |||
| for libdir in $compile_rpath $finalize_rpath; do | for libdir in $compile_rpath $finalize_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 | |||
| if test -z "$hardcode_libdirs"; then | if test -z "$hardcode_libdirs"; then | |||
| hardcode_libdirs="$libdir" | hardcode_libdirs="$libdir" | |||
| else | else | |||
| # Just accumulate the unique libdirs. | # Just accumulate the unique libdirs. | |||
| case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libd ir_separator in | case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libd ir_separator in | |||
| *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator" *) | *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator" *) | |||
| ;; | ;; | |||
| *) | *) | |||
| hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separato r$libdir" | func_append hardcode_libdirs "$hardcode_libdir_separator$lib dir" | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| else | else | |||
| eval flag=\"$hardcode_libdir_flag_spec\" | eval flag=\"$hardcode_libdir_flag_spec\" | |||
| rpath="$rpath $flag" | func_append rpath " $flag" | |||
| fi | fi | |||
| elif test -n "$runpath_var"; then | elif test -n "$runpath_var"; then | |||
| case "$perm_rpath " in | case "$perm_rpath " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) perm_rpath="$perm_rpath $libdir" ;; | *) func_append perm_rpath " $libdir" ;; | |||
| esac | esac | |||
| fi | fi | |||
| case $host in | case $host in | |||
| *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) | *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) | |||
| testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` | testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` | |||
| case :$dllsearchpath: in | case :$dllsearchpath: in | |||
| *":$libdir:"*) ;; | *":$libdir:"*) ;; | |||
| ::) dllsearchpath=$libdir;; | ::) dllsearchpath=$libdir;; | |||
| *) dllsearchpath="$dllsearchpath:$libdir";; | *) func_append dllsearchpath ":$libdir";; | |||
| esac | esac | |||
| case :$dllsearchpath: in | case :$dllsearchpath: in | |||
| *":$testbindir:"*) ;; | *":$testbindir:"*) ;; | |||
| ::) dllsearchpath=$testbindir;; | ::) dllsearchpath=$testbindir;; | |||
| *) dllsearchpath="$dllsearchpath:$testbindir";; | *) func_append dllsearchpath ":$testbindir";; | |||
| esac | esac | |||
| ;; | ;; | |||
| esac | esac | |||
| done | done | |||
| # Substitute the hardcoded libdirs into the rpath. | # Substitute the hardcoded libdirs into the rpath. | |||
| 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" | |||
| eval rpath=\" $hardcode_libdir_flag_spec\" | eval rpath=\" $hardcode_libdir_flag_spec\" | |||
| fi | fi | |||
| skipping to change at line 7929 | skipping to change at line 8746 | |||
| 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 | |||
| if test -z "$hardcode_libdirs"; then | if test -z "$hardcode_libdirs"; then | |||
| hardcode_libdirs="$libdir" | hardcode_libdirs="$libdir" | |||
| else | else | |||
| # Just accumulate the unique libdirs. | # Just accumulate the unique libdirs. | |||
| case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libd ir_separator in | case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libd ir_separator in | |||
| *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator" *) | *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator" *) | |||
| ;; | ;; | |||
| *) | *) | |||
| hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separato r$libdir" | func_append hardcode_libdirs "$hardcode_libdir_separator$lib dir" | |||
| ;; | ;; | |||
| esac | esac | |||
| fi | fi | |||
| else | else | |||
| eval flag=\"$hardcode_libdir_flag_spec\" | eval flag=\"$hardcode_libdir_flag_spec\" | |||
| rpath="$rpath $flag" | func_append rpath " $flag" | |||
| fi | fi | |||
| elif test -n "$runpath_var"; then | elif test -n "$runpath_var"; then | |||
| case "$finalize_perm_rpath " in | case "$finalize_perm_rpath " in | |||
| *" $libdir "*) ;; | *" $libdir "*) ;; | |||
| *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; | *) func_append finalize_perm_rpath " $libdir" ;; | |||
| esac | esac | |||
| fi | fi | |||
| done | done | |||
| # Substitute the hardcoded libdirs into the rpath. | # Substitute the hardcoded libdirs into the rpath. | |||
| 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" | |||
| eval rpath=\" $hardcode_libdir_flag_spec\" | eval rpath=\" $hardcode_libdir_flag_spec\" | |||
| fi | fi | |||
| finalize_rpath="$rpath" | finalize_rpath="$rpath" | |||
| skipping to change at line 7991 | skipping to change at line 8808 | |||
| 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 "$compile_command" | $SED 's%@OUTPUT@%'"$outp ut"'%g'` | compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$outp ut"'%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}"' | |||
| fi | fi | |||
| exit $exit_status | exit $exit_status | |||
| fi | fi | |||
| if test -n "$compile_shlibpath$finalize_shlibpath"; then | if test -n "$compile_shlibpath$finalize_shlibpath"; then | |||
| compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibp ath\$$shlibpath_var\" $compile_command" | compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibp ath\$$shlibpath_var\" $compile_command" | |||
| skipping to change at line 8013 | skipping to change at line 8836 | |||
| finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_v ar\" $finalize_command" | finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_v ar\" $finalize_command" | |||
| fi | fi | |||
| compile_var= | compile_var= | |||
| finalize_var= | finalize_var= | |||
| if test -n "$runpath_var"; then | if test -n "$runpath_var"; then | |||
| if test -n "$perm_rpath"; then | if test -n "$perm_rpath"; then | |||
| # We should set the runpath_var. | # We should set the runpath_var. | |||
| rpath= | rpath= | |||
| for dir in $perm_rpath; do | for dir in $perm_rpath; do | |||
| rpath="$rpath$dir:" | func_append rpath "$dir:" | |||
| done | done | |||
| compile_var="$runpath_var=\"$rpath\$$runpath_var\" " | compile_var="$runpath_var=\"$rpath\$$runpath_var\" " | |||
| fi | fi | |||
| if test -n "$finalize_perm_rpath"; then | if test -n "$finalize_perm_rpath"; then | |||
| # We should set the runpath_var. | # We should set the runpath_var. | |||
| rpath= | rpath= | |||
| for dir in $finalize_perm_rpath; do | for dir in $finalize_perm_rpath; do | |||
| rpath="$rpath$dir:" | func_append rpath "$dir:" | |||
| done | done | |||
| finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " | finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " | |||
| fi | fi | |||
| fi | fi | |||
| if test "$no_install" = yes; then | if test "$no_install" = yes; then | |||
| # 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 "$link_command" | $SED '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 | |||
| if test "$hardcode_action" = relink; then | if test "$hardcode_action" = relink; then | |||
| # Fast installation is not supported | # Fast installation is not supported | |||
| link_command="$compile_var$compile_command$compile_rpath" | link_command="$compile_var$compile_command$compile_rpath" | |||
| relink_command="$finalize_var$finalize_command$finalize_rpath" | relink_command="$finalize_var$finalize_command$finalize_rpath" | |||
| func_warning "this platform does not like uninstalled shared librari es" | func_warning "this platform does not like uninstalled shared librari es" | |||
| func_warning "\`$output' will be relinked during installation" | func_warning "\`$output' will be relinked during installation" | |||
| skipping to change at line 8069 | skipping to change at line 8899 | |||
| fi | fi | |||
| # Replace the output file specification. | # Replace the output file specification. | |||
| link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objd ir/$outputname"'%g'` | link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objd ir/$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" | |||
| # Quote the relink command for shipping. | # Quote the relink command for shipping. | |||
| if test -n "$relink_command"; then | if test -n "$relink_command"; then | |||
| # Preserve any variables that may affect compiler behavior | # Preserve any variables that may affect compiler behavior | |||
| for var in $variables_saved_for_relink; do | for var in $variables_saved_for_relink; do | |||
| if eval test -z \"\${$var+set}\"; then | if eval test -z \"\${$var+set}\"; then | |||
| relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" | relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" | |||
| elif eval var_value=\$$var; test -z "$var_value"; then | elif eval var_value=\$$var; test -z "$var_value"; then | |||
| skipping to change at line 8166 | skipping to change at line 9002 | |||
| oldobjs="$libobjs_save $symfileobj" | oldobjs="$libobjs_save $symfileobj" | |||
| addlibs="$convenience" | addlibs="$convenience" | |||
| build_libtool_libs=no | build_libtool_libs=no | |||
| else | else | |||
| if test "$build_libtool_libs" = module; then | if test "$build_libtool_libs" = module; then | |||
| oldobjs="$libobjs_save" | oldobjs="$libobjs_save" | |||
| build_libtool_libs=no | build_libtool_libs=no | |||
| else | else | |||
| oldobjs="$old_deplibs $non_pic_objects" | oldobjs="$old_deplibs $non_pic_objects" | |||
| if test "$preload" = yes && test -f "$symfileobj"; then | if test "$preload" = yes && test -f "$symfileobj"; then | |||
| oldobjs="$oldobjs $symfileobj" | func_append oldobjs " $symfileobj" | |||
| fi | fi | |||
| fi | fi | |||
| addlibs="$old_convenience" | addlibs="$old_convenience" | |||
| fi | fi | |||
| if test -n "$addlibs"; then | if test -n "$addlibs"; then | |||
| gentop="$output_objdir/${outputname}x" | gentop="$output_objdir/${outputname}x" | |||
| generated="$generated $gentop" | func_append generated " $gentop" | |||
| func_extract_archives $gentop $addlibs | func_extract_archives $gentop $addlibs | |||
| oldobjs="$oldobjs $func_extract_archives_result" | func_append oldobjs " $func_extract_archives_result" | |||
| fi | fi | |||
| # Do each command in the archive commands. | # Do each command in the archive commands. | |||
| if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then | if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then | |||
| cmds=$old_archive_from_new_cmds | cmds=$old_archive_from_new_cmds | |||
| else | else | |||
| # Add any objects from preloaded convenience libraries | # Add any objects from preloaded convenience libraries | |||
| if test -n "$dlprefiles"; then | if test -n "$dlprefiles"; then | |||
| gentop="$output_objdir/${outputname}x" | gentop="$output_objdir/${outputname}x" | |||
| generated="$generated $gentop" | func_append generated " $gentop" | |||
| func_extract_archives $gentop $dlprefiles | func_extract_archives $gentop $dlprefiles | |||
| oldobjs="$oldobjs $func_extract_archives_result" | func_append oldobjs " $func_extract_archives_result" | |||
| fi | fi | |||
| # POSIX demands no paths to be encoded in archives. We have | # POSIX demands no paths to be encoded in archives. We have | |||
| # to avoid creating archives with duplicate basenames if we | # to avoid creating archives with duplicate basenames if we | |||
| # might have to extract them afterwards, e.g., when creating a | # might have to extract them afterwards, e.g., when creating a | |||
| # static archive out of a convenience library, or when linking | # static archive out of a convenience library, or when linking | |||
| # the entirety of a libtool archive into another (currently | # the entirety of a libtool archive into another (currently | |||
| # not supported by libtool). | # not supported by libtool). | |||
| if (for obj in $oldobjs | if (for obj in $oldobjs | |||
| do | do | |||
| func_basename "$obj" | func_basename "$obj" | |||
| $ECHO "$func_basename_result" | $ECHO "$func_basename_result" | |||
| 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" | func_append generated " $gentop" | |||
| func_mkdir_p "$gentop" | func_mkdir_p "$gentop" | |||
| save_oldobjs=$oldobjs | save_oldobjs=$oldobjs | |||
| oldobjs= | oldobjs= | |||
| counter=1 | counter=1 | |||
| for obj in $save_oldobjs | for obj in $save_oldobjs | |||
| do | do | |||
| func_basename "$obj" | func_basename "$obj" | |||
| objbase="$func_basename_result" | objbase="$func_basename_result" | |||
| case " $oldobjs " in | case " $oldobjs " in | |||
| " ") oldobjs=$obj ;; | " ") oldobjs=$obj ;; | |||
| skipping to change at line 8233 | skipping to change at line 9069 | |||
| # overlaps. | # overlaps. | |||
| newobj=lt$counter-$objbase | newobj=lt$counter-$objbase | |||
| func_arith $counter + 1 | func_arith $counter + 1 | |||
| counter=$func_arith_result | counter=$func_arith_result | |||
| case " $oldobjs " in | case " $oldobjs " in | |||
| *[\ /]"$newobj "*) ;; | *[\ /]"$newobj "*) ;; | |||
| *) if test ! -f "$gentop/$newobj"; then break; fi ;; | *) if test ! -f "$gentop/$newobj"; then break; fi ;; | |||
| esac | esac | |||
| done | done | |||
| func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$ne wobj" | func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$ne wobj" | |||
| oldobjs="$oldobjs $gentop/$newobj" | func_append oldobjs " $gentop/$newobj" | |||
| ;; | ;; | |||
| *) oldobjs="$oldobjs $obj" ;; | *) func_append oldobjs " $obj" ;; | |||
| esac | esac | |||
| done | done | |||
| fi | fi | |||
| 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; the n | if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; the n | |||
| 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..." | |||
| save_RANLIB=$RANLIB | save_RANLIB=$RANLIB | |||
| RANLIB=: | RANLIB=: | |||
| objlist= | objlist= | |||
| concat_cmds= | concat_cmds= | |||
| save_oldobjs=$oldobjs | save_oldobjs=$oldobjs | |||
| oldobjs= | oldobjs= | |||
| # Is there a better way of finding the last object in the list? | # Is there a better way of finding the last object in the list? | |||
| skipping to change at line 8341 | skipping to change at line 9187 | |||
| # Replace all uninstalled libtool libraries with the installed o nes | # Replace all uninstalled libtool libraries with the installed o nes | |||
| newdependency_libs= | newdependency_libs= | |||
| for deplib in $dependency_libs; do | for deplib in $dependency_libs; do | |||
| case $deplib in | case $deplib in | |||
| *.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` | eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` | |||
| test -z "$libdir" && \ | test -z "$libdir" && \ | |||
| func_fatal_error "\`$deplib' is not a valid libtool archiv e" | func_fatal_error "\`$deplib' is not a valid libtool archiv e" | |||
| newdependency_libs="$newdependency_libs $libdir/$name" | func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$na | |||
| me" | ||||
| ;; | ||||
| -L*) | ||||
| func_stripname -L '' "$deplib" | ||||
| func_replace_sysroot "$func_stripname_result" | ||||
| func_append newdependency_libs " -L$func_replace_sysroot_res | ||||
| ult" | ||||
| ;; | ||||
| -R*) | ||||
| func_stripname -R '' "$deplib" | ||||
| func_replace_sysroot "$func_stripname_result" | ||||
| func_append newdependency_libs " -R$func_replace_sysroot_res | ||||
| ult" | ||||
| ;; | ;; | |||
| *) newdependency_libs="$newdependency_libs $deplib" ;; | *) func_append newdependency_libs " $deplib" ;; | |||
| esac | esac | |||
| done | done | |||
| dependency_libs="$newdependency_libs" | dependency_libs="$newdependency_libs" | |||
| newdlfiles= | newdlfiles= | |||
| for lib in $dlfiles; do | for lib in $dlfiles; do | |||
| case $lib in | case $lib in | |||
| *.la) | *.la) | |||
| func_basename "$lib" | func_basename "$lib" | |||
| name="$func_basename_result" | name="$func_basename_result" | |||
| 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" | func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" | |||
| ;; | ;; | |||
| *) newdlfiles="$newdlfiles $lib" ;; | *) func_append newdlfiles " $lib" ;; | |||
| esac | esac | |||
| done | done | |||
| dlfiles="$newdlfiles" | dlfiles="$newdlfiles" | |||
| newdlprefiles= | newdlprefiles= | |||
| for lib in $dlprefiles; do | for lib in $dlprefiles; do | |||
| case $lib in | case $lib in | |||
| *.la) | *.la) | |||
| # Only pass preopened files to the pseudo-archive (for | # Only pass preopened files to the pseudo-archive (for | |||
| # eventual linking with the app. that links it) if we | # eventual linking with the app. that links it) if we | |||
| # didn't already link the preopened objects directly into | # didn't already link the preopened objects directly into | |||
| # the library: | # the library: | |||
| func_basename "$lib" | func_basename "$lib" | |||
| name="$func_basename_result" | name="$func_basename_result" | |||
| 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" | func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" | |||
| ;; | ;; | |||
| esac | esac | |||
| done | done | |||
| dlprefiles="$newdlprefiles" | dlprefiles="$newdlprefiles" | |||
| else | else | |||
| newdlfiles= | newdlfiles= | |||
| for lib in $dlfiles; do | for lib in $dlfiles; do | |||
| case $lib in | case $lib in | |||
| [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; | [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; | |||
| *) abs=`pwd`"/$lib" ;; | *) abs=`pwd`"/$lib" ;; | |||
| esac | esac | |||
| newdlfiles="$newdlfiles $abs" | func_append newdlfiles " $abs" | |||
| done | done | |||
| dlfiles="$newdlfiles" | dlfiles="$newdlfiles" | |||
| newdlprefiles= | newdlprefiles= | |||
| for lib in $dlprefiles; do | for lib in $dlprefiles; do | |||
| case $lib in | case $lib in | |||
| [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; | [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; | |||
| *) abs=`pwd`"/$lib" ;; | *) abs=`pwd`"/$lib" ;; | |||
| esac | esac | |||
| newdlprefiles="$newdlprefiles $abs" | func_append newdlprefiles " $abs" | |||
| done | done | |||
| dlprefiles="$newdlprefiles" | dlprefiles="$newdlprefiles" | |||
| 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 targ et | # In fact, it would be nice if we could use this code for all targ et | |||
| # systems that can't hard-code library paths into their executable s | # systems that can't hard-code library paths into their executable s | |||
| # and that have no shared library path variable independent of PAT H, | # and that have no shared library path variable independent of PAT H, | |||
| # but it turns out we can't easily determine that from inspecting | # 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 | # libtool variables, so we have to hard-code the OSs to which it | |||
| skipping to change at line 8482 | skipping to change at line 9338 | |||
| } | } | |||
| # Do a symbolic link so that the libtool archive can be found in | # Do a symbolic link so that the libtool archive can be found in | |||
| # LD_LIBRARY_PATH before the program is installed. | # LD_LIBRARY_PATH before the program is installed. | |||
| func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S " ../$outputname" "$outputname" )' 'exit $?' | func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S " ../$outputname" "$outputname" )' 'exit $?' | |||
| ;; | ;; | |||
| esac | esac | |||
| 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+"$@"} | |||
| # func_mode_uninstall arg... | # func_mode_uninstall arg... | |||
| func_mode_uninstall () | func_mode_uninstall () | |||
| { | { | |||
| $opt_debug | $opt_debug | |||
| RM="$nonopt" | RM="$nonopt" | |||
| files= | files= | |||
| rmforce= | rmforce= | |||
| exit_status=0 | exit_status=0 | |||
| # This variable tells wrapper scripts just to set variables rather | # This variable tells wrapper scripts just to set variables rather | |||
| # than running their programs. | # than running their programs. | |||
| libtool_install_magic="$magic" | libtool_install_magic="$magic" | |||
| for arg | for arg | |||
| do | do | |||
| case $arg in | case $arg in | |||
| -f) RM="$RM $arg"; rmforce=yes ;; | -f) func_append RM " $arg"; rmforce=yes ;; | |||
| -*) RM="$RM $arg" ;; | -*) func_append RM " $arg" ;; | |||
| *) files="$files $arg" ;; | *) func_append files " $arg" ;; | |||
| esac | esac | |||
| done | done | |||
| test -z "$RM" && \ | test -z "$RM" && \ | |||
| func_fatal_help "you must specify an RM program" | func_fatal_help "you must specify an RM program" | |||
| 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 duplicate | # Remember odir for removal later, being careful to avoid duplicates | |||
| s | if test "$opt_mode" = clean; then | |||
| if test "$mode" = clean; then | ||||
| case " $rmdirs " in | case " $rmdirs " in | |||
| *" $objdir "*) ;; | *" $odir "*) ;; | |||
| *) rmdirs="$rmdirs $objdir" ;; | *) func_append rmdirs " $odir" ;; | |||
| esac | esac | |||
| fi | fi | |||
| # Don't error if the file doesn't exist and rm -f was used. | # Don't error if the file doesn't exist and rm -f was used. | |||
| if { test -L "$file"; } >/dev/null 2>&1 || | if { test -L "$file"; } >/dev/null 2>&1 || | |||
| { test -h "$file"; } >/dev/null 2>&1 || | { test -h "$file"; } >/dev/null 2>&1 || | |||
| test -f "$file"; then | test -f "$file"; then | |||
| : | : | |||
| elif test -d "$file"; then | elif test -d "$file"; then | |||
| exit_status=1 | exit_status=1 | |||
| skipping to change at line 8555 | skipping to change at line 9410 | |||
| rmfiles="$file" | rmfiles="$file" | |||
| case $name in | case $name in | |||
| *.la) | *.la) | |||
| # Possibly a libtool archive, so verify it. | # Possibly a libtool archive, so verify it. | |||
| if func_lalib_p "$file"; then | if func_lalib_p "$file"; then | |||
| func_source $dir/$name | func_source $dir/$name | |||
| # 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" | func_append rmfiles " $odir/$n" | |||
| done | done | |||
| test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" | test -n "$old_library" && func_append 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" && func_append rmfiles " $odir/$dlname" ;; | |||
| esac | esac | |||
| test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${n ame}i" | test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${n ame}i" | |||
| ;; | ;; | |||
| uninstall) | uninstall) | |||
| if test -n "$library_names"; then | if test -n "$library_names"; then | |||
| # Do each command in the postuninstall commands. | # Do each command in the postuninstall commands. | |||
| func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' | func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' | |||
| fi | fi | |||
| if test -n "$old_library"; then | if test -n "$old_library"; then | |||
| # Do each command in the old_postuninstall commands. | # Do each command in the old_postuninstall commands. | |||
| func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' | func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' | |||
| skipping to change at line 8594 | skipping to change at line 9448 | |||
| *.lo) | *.lo) | |||
| # Possibly a libtool object, so verify it. | # Possibly a libtool object, so verify it. | |||
| if func_lalib_p "$file"; then | if func_lalib_p "$file"; then | |||
| # Read the .lo file | # Read the .lo file | |||
| func_source $dir/$name | func_source $dir/$name | |||
| # Add PIC object to the list of files to remove. | # Add PIC object to the list of files to remove. | |||
| if test -n "$pic_object" && | if test -n "$pic_object" && | |||
| test "$pic_object" != none; then | test "$pic_object" != none; then | |||
| rmfiles="$rmfiles $dir/$pic_object" | func_append rmfiles " $dir/$pic_object" | |||
| fi | fi | |||
| # Add non-PIC object to the list of files to remove. | # Add non-PIC object to the list of files to remove. | |||
| if test -n "$non_pic_object" && | if test -n "$non_pic_object" && | |||
| test "$non_pic_object" != none; then | test "$non_pic_object" != none; then | |||
| rmfiles="$rmfiles $dir/$non_pic_object" | func_append rmfiles " $dir/$non_pic_object" | |||
| fi | fi | |||
| fi | fi | |||
| ;; | ;; | |||
| *) | *) | |||
| if test "$mode" = clean ; then | if test "$opt_mode" = clean ; then | |||
| noexename=$name | noexename=$name | |||
| case $file in | case $file in | |||
| *.exe) | *.exe) | |||
| func_stripname '' '.exe' "$file" | func_stripname '' '.exe' "$file" | |||
| file=$func_stripname_result | file=$func_stripname_result | |||
| func_stripname '' '.exe' "$name" | func_stripname '' '.exe' "$name" | |||
| noexename=$func_stripname_result | noexename=$func_stripname_result | |||
| # $file with .exe has already been added to rmfiles, | # $file with .exe has already been added to rmfiles, | |||
| # add $file without .exe | # add $file without .exe | |||
| rmfiles="$rmfiles $file" | func_append rmfiles " $file" | |||
| ;; | ;; | |||
| esac | esac | |||
| # Do a test to see if this is a libtool program. | # Do a test to see if this is a libtool program. | |||
| if func_ltwrapper_p "$file"; then | if func_ltwrapper_p "$file"; then | |||
| if func_ltwrapper_executable_p "$file"; then | if func_ltwrapper_executable_p "$file"; then | |||
| func_ltwrapper_scriptname "$file" | func_ltwrapper_scriptname "$file" | |||
| relink_command= | relink_command= | |||
| func_source $func_ltwrapper_scriptname_result | func_source $func_ltwrapper_scriptname_result | |||
| rmfiles="$rmfiles $func_ltwrapper_scriptname_result" | func_append rmfiles " $func_ltwrapper_scriptname_result" | |||
| else | else | |||
| relink_command= | relink_command= | |||
| func_source $dir/$noexename | func_source $dir/$noexename | |||
| fi | fi | |||
| # 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}" | func_append 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" | func_append 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" | func_append rmfiles " $odir/lt-${noexename}.c" | |||
| fi | fi | |||
| fi | fi | |||
| fi | fi | |||
| ;; | ;; | |||
| 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 file s | # Try to remove the ${objdir}s in the directories where we deleted file s | |||
| for dir in $rmdirs; do | for dir in $rmdirs; do | |||
| if test -d "$dir"; then | if test -d "$dir"; then | |||
| func_show_eval "rmdir $dir >/dev/null 2>&1" | func_show_eval "rmdir $dir >/dev/null 2>&1" | |||
| fi | fi | |||
| done | done | |||
| 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" | |||
| exit $EXIT_FAILURE | exit $EXIT_FAILURE | |||
| fi | fi | |||
| exit $exit_status | exit $exit_status | |||
| # The TAGs below are defined such that we never get into a situation | # The TAGs below are defined such that we never get into a situation | |||
| # in which we disable both kinds of libraries. Given conflicting | # in which we disable both kinds of libraries. Given conflicting | |||
| End of changes. 348 change blocks. | ||||
| 788 lines changed or deleted | 1714 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||