Home | History | Annotate | Download | only in cmockery_0_1_2
      1 # ltmain.sh - Provide generalized library-building support services.
      2 # NOTE: Changing this file will not affect anything until you rerun configure.
      3 #
      4 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
      5 # Free Software Foundation, Inc.
      6 # Originally by Gordon Matzigkeit <gord (at] gnu.ai.mit.edu>, 1996
      7 #
      8 # This program is free software; you can redistribute it and/or modify
      9 # it under the terms of the GNU General Public License as published by
     10 # the Free Software Foundation; either version 2 of the License, or
     11 # (at your option) any later version.
     12 #
     13 # This program is distributed in the hope that it will be useful, but
     14 # WITHOUT ANY WARRANTY; without even the implied warranty of
     15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     16 # General Public License for more details.
     17 #
     18 # You should have received a copy of the GNU General Public License
     19 # along with this program; if not, write to the Free Software
     20 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
     21 #
     22 # As a special exception to the GNU General Public License, if you
     23 # distribute this file as part of a program that contains a
     24 # configuration script generated by Autoconf, you may include it under
     25 # the same distribution terms that you use for the rest of that program.
     26 
     27 basename="s,^.*/,,g"
     28 
     29 # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
     30 # is ksh but when the shell is invoked as "sh" and the current value of
     31 # the _XPG environment variable is not equal to 1 (one), the special
     32 # positional parameter $0, within a function call, is the name of the
     33 # function.
     34 progpath="$0"
     35 
     36 # The name of this program:
     37 progname=`echo "$progpath" | $SED $basename`
     38 modename="$progname"
     39 
     40 # Global variables:
     41 EXIT_SUCCESS=0
     42 EXIT_FAILURE=1
     43 
     44 PROGRAM=ltmain.sh
     45 PACKAGE=libtool
     46 VERSION="1.5.22 Debian 1.5.22-2"
     47 TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)"
     48 
     49 # See if we are running on zsh, and set the options which allow our
     50 # commands through without removal of \ escapes.
     51 if test -n "${ZSH_VERSION+set}" ; then
     52   setopt NO_GLOB_SUBST
     53 fi
     54 
     55 # Check that we have a working $echo.
     56 if test "X$1" = X--no-reexec; then
     57   # Discard the --no-reexec flag, and continue.
     58   shift
     59 elif test "X$1" = X--fallback-echo; then
     60   # Avoid inline document here, it may be left over
     61   :
     62 elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
     63   # Yippee, $echo works!
     64   :
     65 else
     66   # Restart under the correct shell, and then maybe $echo will work.
     67   exec $SHELL "$progpath" --no-reexec ${1+"$@"}
     68 fi
     69 
     70 if test "X$1" = X--fallback-echo; then
     71   # used as fallback echo
     72   shift
     73   cat <<EOF
     74 $*
     75 EOF
     76   exit $EXIT_SUCCESS
     77 fi
     78 
     79 default_mode=
     80 help="Try \`$progname --help' for more information."
     81 magic="%%%MAGIC variable%%%"
     82 mkdir="mkdir"
     83 mv="mv -f"
     84 rm="rm -f"
     85 
     86 # Sed substitution that helps us do robust quoting.  It backslashifies
     87 # metacharacters that are still active within double-quoted strings.
     88 Xsed="${SED}"' -e 1s/^X//'
     89 sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
     90 # test EBCDIC or ASCII
     91 case `echo X|tr X '\101'` in
     92  A) # ASCII based system
     93     # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
     94   SP2NL='tr \040 \012'
     95   NL2SP='tr \015\012 \040\040'
     96   ;;
     97  *) # EBCDIC based system
     98   SP2NL='tr \100 \n'
     99   NL2SP='tr \r\n \100\100'
    100   ;;
    101 esac
    102 
    103 # NLS nuisances.
    104 # Only set LANG and LC_ALL to C if already set.
    105 # These must not be set unconditionally because not all systems understand
    106 # e.g. LANG=C (notably SCO).
    107 # We save the old values to restore during execute mode.
    108 if test "${LC_ALL+set}" = set; then
    109   save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
    110 fi
    111 if test "${LANG+set}" = set; then
    112   save_LANG="$LANG"; LANG=C; export LANG
    113 fi
    114 
    115 # Make sure IFS has a sensible default
    116 lt_nl='
    117 '
    118 IFS=" 	$lt_nl"
    119 
    120 if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
    121   $echo "$modename: not configured to build any kind of library" 1>&2
    122   $echo "Fatal configuration error.  See the $PACKAGE docs for more information." 1>&2
    123   exit $EXIT_FAILURE
    124 fi
    125 
    126 # Global variables.
    127 mode=$default_mode
    128 nonopt=
    129 prev=
    130 prevopt=
    131 run=
    132 show="$echo"
    133 show_help=
    134 execute_dlfiles=
    135 duplicate_deps=no
    136 preserve_args=
    137 lo2o="s/\\.lo\$/.${objext}/"
    138 o2lo="s/\\.${objext}\$/.lo/"
    139 
    140 #####################################
    141 # Shell function definitions:
    142 # This seems to be the best place for them
    143 
    144 # func_mktempdir [string]
    145 # Make a temporary directory that won't clash with other running
    146 # libtool processes, and avoids race conditions if possible.  If
    147 # given, STRING is the basename for that directory.
    148 func_mktempdir ()
    149 {
    150     my_template="${TMPDIR-/tmp}/${1-$progname}"
    151 
    152     if test "$run" = ":"; then
    153       # Return a directory name, but don't create it in dry-run mode
    154       my_tmpdir="${my_template}-$$"
    155     else
    156 
    157       # If mktemp works, use that first and foremost
    158       my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
    159 
    160       if test ! -d "$my_tmpdir"; then
    161 	# Failing that, at least try and use $RANDOM to avoid a race
    162 	my_tmpdir="${my_template}-${RANDOM-0}$$"
    163 
    164 	save_mktempdir_umask=`umask`
    165 	umask 0077
    166 	$mkdir "$my_tmpdir"
    167 	umask $save_mktempdir_umask
    168       fi
    169 
    170       # If we're not in dry-run mode, bomb out on failure
    171       test -d "$my_tmpdir" || {
    172         $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2
    173 	exit $EXIT_FAILURE
    174       }
    175     fi
    176 
    177     $echo "X$my_tmpdir" | $Xsed
    178 }
    179 
    180 
    181 # func_win32_libid arg
    182 # return the library type of file 'arg'
    183 #
    184 # Need a lot of goo to handle *both* DLLs and import libs
    185 # Has to be a shell function in order to 'eat' the argument
    186 # that is supplied when $file_magic_command is called.
    187 func_win32_libid ()
    188 {
    189   win32_libid_type="unknown"
    190   win32_fileres=`file -L $1 2>/dev/null`
    191   case $win32_fileres in
    192   *ar\ archive\ import\ library*) # definitely import
    193     win32_libid_type="x86 archive import"
    194     ;;
    195   *ar\ archive*) # could be an import, or static
    196     if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \
    197       $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
    198       win32_nmres=`eval $NM -f posix -A $1 | \
    199 	$SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'`
    200       case $win32_nmres in
    201       import*)  win32_libid_type="x86 archive import";;
    202       *)        win32_libid_type="x86 archive static";;
    203       esac
    204     fi
    205     ;;
    206   *DLL*)
    207     win32_libid_type="x86 DLL"
    208     ;;
    209   *executable*) # but shell scripts are "executable" too...
    210     case $win32_fileres in
    211     *MS\ Windows\ PE\ Intel*)
    212       win32_libid_type="x86 DLL"
    213       ;;
    214     esac
    215     ;;
    216   esac
    217   $echo $win32_libid_type
    218 }
    219 
    220 
    221 # func_infer_tag arg
    222 # Infer tagged configuration to use if any are available and
    223 # if one wasn't chosen via the "--tag" command line option.
    224 # Only attempt this if the compiler in the base compile
    225 # command doesn't match the default compiler.
    226 # arg is usually of the form 'gcc ...'
    227 func_infer_tag ()
    228 {
    229     if test -n "$available_tags" && test -z "$tagname"; then
    230       CC_quoted=
    231       for arg in $CC; do
    232 	case $arg in
    233 	  *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
    234 	  arg="\"$arg\""
    235 	  ;;
    236 	esac
    237 	CC_quoted="$CC_quoted $arg"
    238       done
    239       case $@ in
    240       # Blanks in the command may have been stripped by the calling shell,
    241       # but not from the CC environment variable when configure was run.
    242       " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) ;;
    243       # Blanks at the start of $base_compile will cause this to fail
    244       # if we don't check for them as well.
    245       *)
    246 	for z in $available_tags; do
    247 	  if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
    248 	    # Evaluate the configuration.
    249 	    eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
    250 	    CC_quoted=
    251 	    for arg in $CC; do
    252 	    # Double-quote args containing other shell metacharacters.
    253 	    case $arg in
    254 	      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
    255 	      arg="\"$arg\""
    256 	      ;;
    257 	    esac
    258 	    CC_quoted="$CC_quoted $arg"
    259 	  done
    260 	    case "$@ " in
    261 	      " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*)
    262 	      # The compiler in the base compile command matches
    263 	      # the one in the tagged configuration.
    264 	      # Assume this is the tagged configuration we want.
    265 	      tagname=$z
    266 	      break
    267 	      ;;
    268 	    esac
    269 	  fi
    270 	done
    271 	# If $tagname still isn't set, then no tagged configuration
    272 	# was found and let the user know that the "--tag" command
    273 	# line option must be used.
    274 	if test -z "$tagname"; then
    275 	  $echo "$modename: unable to infer tagged configuration"
    276 	  $echo "$modename: specify a tag with \`--tag'" 1>&2
    277 	  exit $EXIT_FAILURE
    278 #        else
    279 #          $echo "$modename: using $tagname tagged configuration"
    280 	fi
    281 	;;
    282       esac
    283     fi
    284 }
    285 
    286 
    287 # func_extract_an_archive dir oldlib
    288 func_extract_an_archive ()
    289 {
    290     f_ex_an_ar_dir="$1"; shift
    291     f_ex_an_ar_oldlib="$1"
    292 
    293     $show "(cd $f_ex_an_ar_dir && $AR x $f_ex_an_ar_oldlib)"
    294     $run eval "(cd \$f_ex_an_ar_dir && $AR x \$f_ex_an_ar_oldlib)" || exit $?
    295     if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
    296      :
    297     else
    298       $echo "$modename: ERROR: object name conflicts: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" 1>&2
    299       exit $EXIT_FAILURE
    300     fi
    301 }
    302 
    303 # func_extract_archives gentop oldlib ...
    304 func_extract_archives ()
    305 {
    306     my_gentop="$1"; shift
    307     my_oldlibs=${1+"$@"}
    308     my_oldobjs=""
    309     my_xlib=""
    310     my_xabs=""
    311     my_xdir=""
    312     my_status=""
    313 
    314     $show "${rm}r $my_gentop"
    315     $run ${rm}r "$my_gentop"
    316     $show "$mkdir $my_gentop"
    317     $run $mkdir "$my_gentop"
    318     my_status=$?
    319     if test "$my_status" -ne 0 && test ! -d "$my_gentop"; then
    320       exit $my_status
    321     fi
    322 
    323     for my_xlib in $my_oldlibs; do
    324       # Extract the objects.
    325       case $my_xlib in
    326 	[\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
    327 	*) my_xabs=`pwd`"/$my_xlib" ;;
    328       esac
    329       my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'`
    330       my_xdir="$my_gentop/$my_xlib"
    331 
    332       $show "${rm}r $my_xdir"
    333       $run ${rm}r "$my_xdir"
    334       $show "$mkdir $my_xdir"
    335       $run $mkdir "$my_xdir"
    336       exit_status=$?
    337       if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then
    338 	exit $exit_status
    339       fi
    340       case $host in
    341       *-darwin*)
    342 	$show "Extracting $my_xabs"
    343 	# Do not bother doing anything if just a dry run
    344 	if test -z "$run"; then
    345 	  darwin_orig_dir=`pwd`
    346 	  cd $my_xdir || exit $?
    347 	  darwin_archive=$my_xabs
    348 	  darwin_curdir=`pwd`
    349 	  darwin_base_archive=`$echo "X$darwin_archive" | $Xsed -e 's%^.*/%%'`
    350 	  darwin_arches=`lipo -info "$darwin_archive" 2>/dev/null | $EGREP Architectures 2>/dev/null`
    351 	  if test -n "$darwin_arches"; then 
    352 	    darwin_arches=`echo "$darwin_arches" | $SED -e 's/.*are://'`
    353 	    darwin_arch=
    354 	    $show "$darwin_base_archive has multiple architectures $darwin_arches"
    355 	    for darwin_arch in  $darwin_arches ; do
    356 	      mkdir -p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
    357 	      lipo -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
    358 	      cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
    359 	      func_extract_an_archive "`pwd`" "${darwin_base_archive}"
    360 	      cd "$darwin_curdir"
    361 	      $rm "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
    362 	    done # $darwin_arches
    363       ## Okay now we have a bunch of thin objects, gotta fatten them up :)
    364 	    darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print| xargs basename | sort -u | $NL2SP`
    365 	    darwin_file=
    366 	    darwin_files=
    367 	    for darwin_file in $darwin_filelist; do
    368 	      darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP`
    369 	      lipo -create -output "$darwin_file" $darwin_files
    370 	    done # $darwin_filelist
    371 	    ${rm}r unfat-$$
    372 	    cd "$darwin_orig_dir"
    373 	  else
    374 	    cd "$darwin_orig_dir"
    375  	    func_extract_an_archive "$my_xdir" "$my_xabs"
    376 	  fi # $darwin_arches
    377 	fi # $run
    378 	;;
    379       *)
    380         func_extract_an_archive "$my_xdir" "$my_xabs"
    381         ;;
    382       esac
    383       my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP`
    384     done
    385     func_extract_archives_result="$my_oldobjs"
    386 }
    387 # End of Shell function definitions
    388 #####################################
    389 
    390 # Darwin sucks
    391 eval std_shrext=\"$shrext_cmds\"
    392 
    393 disable_libs=no
    394 
    395 # Parse our command line options once, thoroughly.
    396 while test "$#" -gt 0
    397 do
    398   arg="$1"
    399   shift
    400 
    401   case $arg in
    402   -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
    403   *) optarg= ;;
    404   esac
    405 
    406   # If the previous option needs an argument, assign it.
    407   if test -n "$prev"; then
    408     case $prev in
    409     execute_dlfiles)
    410       execute_dlfiles="$execute_dlfiles $arg"
    411       ;;
    412     tag)
    413       tagname="$arg"
    414       preserve_args="${preserve_args}=$arg"
    415 
    416       # Check whether tagname contains only valid characters
    417       case $tagname in
    418       *[!-_A-Za-z0-9,/]*)
    419 	$echo "$progname: invalid tag name: $tagname" 1>&2
    420 	exit $EXIT_FAILURE
    421 	;;
    422       esac
    423 
    424       case $tagname in
    425       CC)
    426 	# Don't test for the "default" C tag, as we know, it's there, but
    427 	# not specially marked.
    428 	;;
    429       *)
    430 	if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$progpath" > /dev/null; then
    431 	  taglist="$taglist $tagname"
    432 	  # Evaluate the configuration.
    433 	  eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $progpath`"
    434 	else
    435 	  $echo "$progname: ignoring unknown tag $tagname" 1>&2
    436 	fi
    437 	;;
    438       esac
    439       ;;
    440     *)
    441       eval "$prev=\$arg"
    442       ;;
    443     esac
    444 
    445     prev=
    446     prevopt=
    447     continue
    448   fi
    449 
    450   # Have we seen a non-optional argument yet?
    451   case $arg in
    452   --help)
    453     show_help=yes
    454     ;;
    455 
    456   --version)
    457     $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"
    458     $echo
    459     $echo "Copyright (C) 2005  Free Software Foundation, Inc."
    460     $echo "This is free software; see the source for copying conditions.  There is NO"
    461     $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
    462     exit $?
    463     ;;
    464 
    465   --config)
    466     ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $progpath
    467     # Now print the configurations for the tags.
    468     for tagname in $taglist; do
    469       ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$progpath"
    470     done
    471     exit $?
    472     ;;
    473 
    474   --debug)
    475     $echo "$progname: enabling shell trace mode"
    476     set -x
    477     preserve_args="$preserve_args $arg"
    478     ;;
    479 
    480   --dry-run | -n)
    481     run=:
    482     ;;
    483 
    484   --features)
    485     $echo "host: $host"
    486     if test "$build_libtool_libs" = yes; then
    487       $echo "enable shared libraries"
    488     else
    489       $echo "disable shared libraries"
    490     fi
    491     if test "$build_old_libs" = yes; then
    492       $echo "enable static libraries"
    493     else
    494       $echo "disable static libraries"
    495     fi
    496     exit $?
    497     ;;
    498 
    499   --finish) mode="finish" ;;
    500 
    501   --mode) prevopt="--mode" prev=mode ;;
    502   --mode=*) mode="$optarg" ;;
    503 
    504   --preserve-dup-deps) duplicate_deps="yes" ;;
    505 
    506   --quiet | --silent)
    507     show=:
    508     preserve_args="$preserve_args $arg"
    509     ;;
    510 
    511   --tag)
    512     prevopt="--tag"
    513     prev=tag
    514     preserve_args="$preserve_args --tag"
    515     ;;
    516   --tag=*)
    517     set tag "$optarg" ${1+"$@"}
    518     shift
    519     prev=tag
    520     preserve_args="$preserve_args --tag"
    521     ;;
    522 
    523   -dlopen)
    524     prevopt="-dlopen"
    525     prev=execute_dlfiles
    526     ;;
    527 
    528   -*)
    529     $echo "$modename: unrecognized option \`$arg'" 1>&2
    530     $echo "$help" 1>&2
    531     exit $EXIT_FAILURE
    532     ;;
    533 
    534   *)
    535     nonopt="$arg"
    536     break
    537     ;;
    538   esac
    539 done
    540 
    541 if test -n "$prevopt"; then
    542   $echo "$modename: option \`$prevopt' requires an argument" 1>&2
    543   $echo "$help" 1>&2
    544   exit $EXIT_FAILURE
    545 fi
    546 
    547 case $disable_libs in
    548 no) 
    549   ;;
    550 shared)
    551   build_libtool_libs=no
    552   build_old_libs=yes
    553   ;;
    554 static)
    555   build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
    556   ;;
    557 esac
    558 
    559 # If this variable is set in any of the actions, the command in it
    560 # will be execed at the end.  This prevents here-documents from being
    561 # left over by shells.
    562 exec_cmd=
    563 
    564 if test -z "$show_help"; then
    565 
    566   # Infer the operation mode.
    567   if test -z "$mode"; then
    568     $echo "*** Warning: inferring the mode of operation is deprecated." 1>&2
    569     $echo "*** Future versions of Libtool will require --mode=MODE be specified." 1>&2
    570     case $nonopt in
    571     *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*)
    572       mode=link
    573       for arg
    574       do
    575 	case $arg in
    576 	-c)
    577 	   mode=compile
    578 	   break
    579 	   ;;
    580 	esac
    581       done
    582       ;;
    583     *db | *dbx | *strace | *truss)
    584       mode=execute
    585       ;;
    586     *install*|cp|mv)
    587       mode=install
    588       ;;
    589     *rm)
    590       mode=uninstall
    591       ;;
    592     *)
    593       # If we have no mode, but dlfiles were specified, then do execute mode.
    594       test -n "$execute_dlfiles" && mode=execute
    595 
    596       # Just use the default operation mode.
    597       if test -z "$mode"; then
    598 	if test -n "$nonopt"; then
    599 	  $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
    600 	else
    601 	  $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
    602 	fi
    603       fi
    604       ;;
    605     esac
    606   fi
    607 
    608   # Only execute mode is allowed to have -dlopen flags.
    609   if test -n "$execute_dlfiles" && test "$mode" != execute; then
    610     $echo "$modename: unrecognized option \`-dlopen'" 1>&2
    611     $echo "$help" 1>&2
    612     exit $EXIT_FAILURE
    613   fi
    614 
    615   # Change the help message to a mode-specific one.
    616   generic_help="$help"
    617   help="Try \`$modename --help --mode=$mode' for more information."
    618 
    619   # These modes are in order of execution frequency so that they run quickly.
    620   case $mode in
    621   # libtool compile mode
    622   compile)
    623     modename="$modename: compile"
    624     # Get the compilation command and the source file.
    625     base_compile=
    626     srcfile="$nonopt"  #  always keep a non-empty value in "srcfile"
    627     suppress_opt=yes
    628     suppress_output=
    629     arg_mode=normal
    630     libobj=
    631     later=
    632 
    633     for arg
    634     do
    635       case $arg_mode in
    636       arg  )
    637 	# do not "continue".  Instead, add this to base_compile
    638 	lastarg="$arg"
    639 	arg_mode=normal
    640 	;;
    641 
    642       target )
    643 	libobj="$arg"
    644 	arg_mode=normal
    645 	continue
    646 	;;
    647 
    648       normal )
    649 	# Accept any command-line options.
    650 	case $arg in
    651 	-o)
    652 	  if test -n "$libobj" ; then
    653 	    $echo "$modename: you cannot specify \`-o' more than once" 1>&2
    654 	    exit $EXIT_FAILURE
    655 	  fi
    656 	  arg_mode=target
    657 	  continue
    658 	  ;;
    659 
    660 	-static | -prefer-pic | -prefer-non-pic)
    661 	  later="$later $arg"
    662 	  continue
    663 	  ;;
    664 
    665 	-no-suppress)
    666 	  suppress_opt=no
    667 	  continue
    668 	  ;;
    669 
    670 	-Xcompiler)
    671 	  arg_mode=arg  #  the next one goes into the "base_compile" arg list
    672 	  continue      #  The current "srcfile" will either be retained or
    673 	  ;;            #  replaced later.  I would guess that would be a bug.
    674 
    675 	-Wc,*)
    676 	  args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
    677 	  lastarg=
    678 	  save_ifs="$IFS"; IFS=','
    679  	  for arg in $args; do
    680 	    IFS="$save_ifs"
    681 
    682 	    # Double-quote args containing other shell metacharacters.
    683 	    # Many Bourne shells cannot handle close brackets correctly
    684 	    # in scan sets, so we specify it separately.
    685 	    case $arg in
    686 	      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
    687 	      arg="\"$arg\""
    688 	      ;;
    689 	    esac
    690 	    lastarg="$lastarg $arg"
    691 	  done
    692 	  IFS="$save_ifs"
    693 	  lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"`
    694 
    695 	  # Add the arguments to base_compile.
    696 	  base_compile="$base_compile $lastarg"
    697 	  continue
    698 	  ;;
    699 
    700 	* )
    701 	  # Accept the current argument as the source file.
    702 	  # The previous "srcfile" becomes the current argument.
    703 	  #
    704 	  lastarg="$srcfile"
    705 	  srcfile="$arg"
    706 	  ;;
    707 	esac  #  case $arg
    708 	;;
    709       esac    #  case $arg_mode
    710 
    711       # Aesthetically quote the previous argument.
    712       lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
    713 
    714       case $lastarg in
    715       # Double-quote args containing other shell metacharacters.
    716       # Many Bourne shells cannot handle close brackets correctly
    717       # in scan sets, and some SunOS ksh mistreat backslash-escaping
    718       # in scan sets (worked around with variable expansion),
    719       # and furthermore cannot handle '|' '&' '(' ')' in scan sets 
    720       # at all, so we specify them separately.
    721       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
    722 	lastarg="\"$lastarg\""
    723 	;;
    724       esac
    725 
    726       base_compile="$base_compile $lastarg"
    727     done # for arg
    728 
    729     case $arg_mode in
    730     arg)
    731       $echo "$modename: you must specify an argument for -Xcompile"
    732       exit $EXIT_FAILURE
    733       ;;
    734     target)
    735       $echo "$modename: you must specify a target with \`-o'" 1>&2
    736       exit $EXIT_FAILURE
    737       ;;
    738     *)
    739       # Get the name of the library object.
    740       [ -z "$libobj" ] && libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'`
    741       ;;
    742     esac
    743 
    744     # Recognize several different file suffixes.
    745     # If the user specifies -o file.o, it is replaced with file.lo
    746     xform='[cCFSifmso]'
    747     case $libobj in
    748     *.ada) xform=ada ;;
    749     *.adb) xform=adb ;;
    750     *.ads) xform=ads ;;
    751     *.asm) xform=asm ;;
    752     *.c++) xform=c++ ;;
    753     *.cc) xform=cc ;;
    754     *.ii) xform=ii ;;
    755     *.class) xform=class ;;
    756     *.cpp) xform=cpp ;;
    757     *.cxx) xform=cxx ;;
    758     *.f90) xform=f90 ;;
    759     *.for) xform=for ;;
    760     *.java) xform=java ;;
    761     esac
    762 
    763     libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
    764 
    765     case $libobj in
    766     *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
    767     *)
    768       $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
    769       exit $EXIT_FAILURE
    770       ;;
    771     esac
    772 
    773     func_infer_tag $base_compile
    774 
    775     for arg in $later; do
    776       case $arg in
    777       -static)
    778 	build_old_libs=yes
    779 	continue
    780 	;;
    781 
    782       -prefer-pic)
    783 	pic_mode=yes
    784 	continue
    785 	;;
    786 
    787       -prefer-non-pic)
    788 	pic_mode=no
    789 	continue
    790 	;;
    791       esac
    792     done
    793 
    794     qlibobj=`$echo "X$libobj" | $Xsed -e "$sed_quote_subst"`
    795     case $qlibobj in
    796       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
    797 	qlibobj="\"$qlibobj\"" ;;
    798     esac
    799     test "X$libobj" != "X$qlibobj" \
    800 	&& $echo "X$libobj" | grep '[]~#^*{};<>?"'"'"' 	&()|`$[]' \
    801 	&& $echo "$modename: libobj name \`$libobj' may not contain shell special characters."
    802     objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
    803     xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
    804     if test "X$xdir" = "X$obj"; then
    805       xdir=
    806     else
    807       xdir=$xdir/
    808     fi
    809     lobj=${xdir}$objdir/$objname
    810 
    811     if test -z "$base_compile"; then
    812       $echo "$modename: you must specify a compilation command" 1>&2
    813       $echo "$help" 1>&2
    814       exit $EXIT_FAILURE
    815     fi
    816 
    817     # Delete any leftover library objects.
    818     if test "$build_old_libs" = yes; then
    819       removelist="$obj $lobj $libobj ${libobj}T"
    820     else
    821       removelist="$lobj $libobj ${libobj}T"
    822     fi
    823 
    824     $run $rm $removelist
    825     trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15
    826 
    827     # On Cygwin there's no "real" PIC flag so we must build both object types
    828     case $host_os in
    829     cygwin* | mingw* | pw32* | os2*)
    830       pic_mode=default
    831       ;;
    832     esac
    833     if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
    834       # non-PIC code in shared libraries is not supported
    835       pic_mode=default
    836     fi
    837 
    838     # Calculate the filename of the output object if compiler does
    839     # not support -o with -c
    840     if test "$compiler_c_o" = no; then
    841       output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
    842       lockfile="$output_obj.lock"
    843       removelist="$removelist $output_obj $lockfile"
    844       trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15
    845     else
    846       output_obj=
    847       need_locks=no
    848       lockfile=
    849     fi
    850 
    851     # Lock this critical section if it is needed
    852     # We use this script file to make the link, it avoids creating a new file
    853     if test "$need_locks" = yes; then
    854       until $run ln "$progpath" "$lockfile" 2>/dev/null; do
    855 	$show "Waiting for $lockfile to be removed"
    856 	sleep 2
    857       done
    858     elif test "$need_locks" = warn; then
    859       if test -f "$lockfile"; then
    860 	$echo "\
    861 *** ERROR, $lockfile exists and contains:
    862 `cat $lockfile 2>/dev/null`
    863 
    864 This indicates that another process is trying to use the same
    865 temporary object file, and libtool could not work around it because
    866 your compiler does not support \`-c' and \`-o' together.  If you
    867 repeat this compilation, it may succeed, by chance, but you had better
    868 avoid parallel builds (make -j) in this platform, or get a better
    869 compiler."
    870 
    871 	$run $rm $removelist
    872 	exit $EXIT_FAILURE
    873       fi
    874       $echo "$srcfile" > "$lockfile"
    875     fi
    876 
    877     if test -n "$fix_srcfile_path"; then
    878       eval srcfile=\"$fix_srcfile_path\"
    879     fi
    880     qsrcfile=`$echo "X$srcfile" | $Xsed -e "$sed_quote_subst"`
    881     case $qsrcfile in
    882       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
    883       qsrcfile="\"$qsrcfile\"" ;;
    884     esac
    885 
    886     $run $rm "$libobj" "${libobj}T"
    887 
    888     # Create a libtool object file (analogous to a ".la" file),
    889     # but don't create it if we're doing a dry run.
    890     test -z "$run" && cat > ${libobj}T <<EOF
    891 # $libobj - a libtool object file
    892 # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
    893 #
    894 # Please DO NOT delete this file!
    895 # It is necessary for linking the library.
    896 
    897 # Name of the PIC object.
    898 EOF
    899 
    900     # Only build a PIC object if we are building libtool libraries.
    901     if test "$build_libtool_libs" = yes; then
    902       # Without this assignment, base_compile gets emptied.
    903       fbsd_hideous_sh_bug=$base_compile
    904 
    905       if test "$pic_mode" != no; then
    906 	command="$base_compile $qsrcfile $pic_flag"
    907       else
    908 	# Don't build PIC code
    909 	command="$base_compile $qsrcfile"
    910       fi
    911 
    912       if test ! -d "${xdir}$objdir"; then
    913 	$show "$mkdir ${xdir}$objdir"
    914 	$run $mkdir ${xdir}$objdir
    915 	exit_status=$?
    916 	if test "$exit_status" -ne 0 && test ! -d "${xdir}$objdir"; then
    917 	  exit $exit_status
    918 	fi
    919       fi
    920 
    921       if test -z "$output_obj"; then
    922 	# Place PIC objects in $objdir
    923 	command="$command -o $lobj"
    924       fi
    925 
    926       $run $rm "$lobj" "$output_obj"
    927 
    928       $show "$command"
    929       if $run eval "$command"; then :
    930       else
    931 	test -n "$output_obj" && $run $rm $removelist
    932 	exit $EXIT_FAILURE
    933       fi
    934 
    935       if test "$need_locks" = warn &&
    936 	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
    937 	$echo "\
    938 *** ERROR, $lockfile contains:
    939 `cat $lockfile 2>/dev/null`
    940 
    941 but it should contain:
    942 $srcfile
    943 
    944 This indicates that another process is trying to use the same
    945 temporary object file, and libtool could not work around it because
    946 your compiler does not support \`-c' and \`-o' together.  If you
    947 repeat this compilation, it may succeed, by chance, but you had better
    948 avoid parallel builds (make -j) in this platform, or get a better
    949 compiler."
    950 
    951 	$run $rm $removelist
    952 	exit $EXIT_FAILURE
    953       fi
    954 
    955       # Just move the object if needed, then go on to compile the next one
    956       if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
    957 	$show "$mv $output_obj $lobj"
    958 	if $run $mv $output_obj $lobj; then :
    959 	else
    960 	  error=$?
    961 	  $run $rm $removelist
    962 	  exit $error
    963 	fi
    964       fi
    965 
    966       # Append the name of the PIC object to the libtool object file.
    967       test -z "$run" && cat >> ${libobj}T <<EOF
    968 pic_object='$objdir/$objname'
    969 
    970 EOF
    971 
    972       # Allow error messages only from the first compilation.
    973       if test "$suppress_opt" = yes; then
    974         suppress_output=' >/dev/null 2>&1'
    975       fi
    976     else
    977       # No PIC object so indicate it doesn't exist in the libtool
    978       # object file.
    979       test -z "$run" && cat >> ${libobj}T <<EOF
    980 pic_object=none
    981 
    982 EOF
    983     fi
    984 
    985     # Only build a position-dependent object if we build old libraries.
    986     if test "$build_old_libs" = yes; then
    987       if test "$pic_mode" != yes; then
    988 	# Don't build PIC code
    989 	command="$base_compile $qsrcfile"
    990       else
    991 	command="$base_compile $qsrcfile $pic_flag"
    992       fi
    993       if test "$compiler_c_o" = yes; then
    994 	command="$command -o $obj"
    995       fi
    996 
    997       # Suppress compiler output if we already did a PIC compilation.
    998       command="$command$suppress_output"
    999       $run $rm "$obj" "$output_obj"
   1000       $show "$command"
   1001       if $run eval "$command"; then :
   1002       else
   1003 	$run $rm $removelist
   1004 	exit $EXIT_FAILURE
   1005       fi
   1006 
   1007       if test "$need_locks" = warn &&
   1008 	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
   1009 	$echo "\
   1010 *** ERROR, $lockfile contains:
   1011 `cat $lockfile 2>/dev/null`
   1012 
   1013 but it should contain:
   1014 $srcfile
   1015 
   1016 This indicates that another process is trying to use the same
   1017 temporary object file, and libtool could not work around it because
   1018 your compiler does not support \`-c' and \`-o' together.  If you
   1019 repeat this compilation, it may succeed, by chance, but you had better
   1020 avoid parallel builds (make -j) in this platform, or get a better
   1021 compiler."
   1022 
   1023 	$run $rm $removelist
   1024 	exit $EXIT_FAILURE
   1025       fi
   1026 
   1027       # Just move the object if needed
   1028       if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
   1029 	$show "$mv $output_obj $obj"
   1030 	if $run $mv $output_obj $obj; then :
   1031 	else
   1032 	  error=$?
   1033 	  $run $rm $removelist
   1034 	  exit $error
   1035 	fi
   1036       fi
   1037 
   1038       # Append the name of the non-PIC object the libtool object file.
   1039       # Only append if the libtool object file exists.
   1040       test -z "$run" && cat >> ${libobj}T <<EOF
   1041 # Name of the non-PIC object.
   1042 non_pic_object='$objname'
   1043 
   1044 EOF
   1045     else
   1046       # Append the name of the non-PIC object the libtool object file.
   1047       # Only append if the libtool object file exists.
   1048       test -z "$run" && cat >> ${libobj}T <<EOF
   1049 # Name of the non-PIC object.
   1050 non_pic_object=none
   1051 
   1052 EOF
   1053     fi
   1054 
   1055     $run $mv "${libobj}T" "${libobj}"
   1056 
   1057     # Unlock the critical section if it was locked
   1058     if test "$need_locks" != no; then
   1059       $run $rm "$lockfile"
   1060     fi
   1061 
   1062     exit $EXIT_SUCCESS
   1063     ;;
   1064 
   1065   # libtool link mode
   1066   link | relink)
   1067     modename="$modename: link"
   1068     case $host in
   1069     *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
   1070       # It is impossible to link a dll without this setting, and
   1071       # we shouldn't force the makefile maintainer to figure out
   1072       # which system we are compiling for in order to pass an extra
   1073       # flag for every libtool invocation.
   1074       # allow_undefined=no
   1075 
   1076       # FIXME: Unfortunately, there are problems with the above when trying
   1077       # to make a dll which has undefined symbols, in which case not
   1078       # even a static library is built.  For now, we need to specify
   1079       # -no-undefined on the libtool link line when we can be certain
   1080       # that all symbols are satisfied, otherwise we get a static library.
   1081       allow_undefined=yes
   1082       ;;
   1083     *)
   1084       allow_undefined=yes
   1085       ;;
   1086     esac
   1087     libtool_args="$nonopt"
   1088     base_compile="$nonopt $@"
   1089     compile_command="$nonopt"
   1090     finalize_command="$nonopt"
   1091 
   1092     compile_rpath=
   1093     finalize_rpath=
   1094     compile_shlibpath=
   1095     finalize_shlibpath=
   1096     convenience=
   1097     old_convenience=
   1098     deplibs=
   1099     old_deplibs=
   1100     compiler_flags=
   1101     linker_flags=
   1102     dllsearchpath=
   1103     lib_search_path=`pwd`
   1104     inst_prefix_dir=
   1105 
   1106     avoid_version=no
   1107     dlfiles=
   1108     dlprefiles=
   1109     dlself=no
   1110     export_dynamic=no
   1111     export_symbols=
   1112     export_symbols_regex=
   1113     generated=
   1114     libobjs=
   1115     ltlibs=
   1116     module=no
   1117     no_install=no
   1118     objs=
   1119     non_pic_objects=
   1120     notinst_path= # paths that contain not-installed libtool libraries
   1121     precious_files_regex=
   1122     prefer_static_libs=no
   1123     preload=no
   1124     prev=
   1125     prevarg=
   1126     release=
   1127     rpath=
   1128     xrpath=
   1129     perm_rpath=
   1130     temp_rpath=
   1131     thread_safe=no
   1132     vinfo=
   1133     vinfo_number=no
   1134 
   1135     func_infer_tag $base_compile
   1136 
   1137     # We need to know -static, to get the right output filenames.
   1138     for arg
   1139     do
   1140       case $arg in
   1141       -all-static | -static)
   1142 	if test "X$arg" = "X-all-static"; then
   1143 	  if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
   1144 	    $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
   1145 	  fi
   1146 	  if test -n "$link_static_flag"; then
   1147 	    dlopen_self=$dlopen_self_static
   1148 	  fi
   1149 	  prefer_static_libs=yes
   1150 	else
   1151 	  if test -z "$pic_flag" && test -n "$link_static_flag"; then
   1152 	    dlopen_self=$dlopen_self_static
   1153 	  fi
   1154 	  prefer_static_libs=built
   1155 	fi
   1156 	build_libtool_libs=no
   1157 	build_old_libs=yes
   1158 	break
   1159 	;;
   1160       esac
   1161     done
   1162 
   1163     # See if our shared archives depend on static archives.
   1164     test -n "$old_archive_from_new_cmds" && build_old_libs=yes
   1165 
   1166     # Go through the arguments, transforming them on the way.
   1167     while test "$#" -gt 0; do
   1168       arg="$1"
   1169       shift
   1170       case $arg in
   1171       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   1172 	qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test
   1173 	;;
   1174       *) qarg=$arg ;;
   1175       esac
   1176       libtool_args="$libtool_args $qarg"
   1177 
   1178       # If the previous option needs an argument, assign it.
   1179       if test -n "$prev"; then
   1180 	case $prev in
   1181 	output)
   1182 	  compile_command="$compile_command @OUTPUT@"
   1183 	  finalize_command="$finalize_command @OUTPUT@"
   1184 	  ;;
   1185 	esac
   1186 
   1187 	case $prev in
   1188 	dlfiles|dlprefiles)
   1189 	  if test "$preload" = no; then
   1190 	    # Add the symbol object into the linking commands.
   1191 	    compile_command="$compile_command @SYMFILE@"
   1192 	    finalize_command="$finalize_command @SYMFILE@"
   1193 	    preload=yes
   1194 	  fi
   1195 	  case $arg in
   1196 	  *.la | *.lo) ;;  # We handle these cases below.
   1197 	  force)
   1198 	    if test "$dlself" = no; then
   1199 	      dlself=needless
   1200 	      export_dynamic=yes
   1201 	    fi
   1202 	    prev=
   1203 	    continue
   1204 	    ;;
   1205 	  self)
   1206 	    if test "$prev" = dlprefiles; then
   1207 	      dlself=yes
   1208 	    elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
   1209 	      dlself=yes
   1210 	    else
   1211 	      dlself=needless
   1212 	      export_dynamic=yes
   1213 	    fi
   1214 	    prev=
   1215 	    continue
   1216 	    ;;
   1217 	  *)
   1218 	    if test "$prev" = dlfiles; then
   1219 	      dlfiles="$dlfiles $arg"
   1220 	    else
   1221 	      dlprefiles="$dlprefiles $arg"
   1222 	    fi
   1223 	    prev=
   1224 	    continue
   1225 	    ;;
   1226 	  esac
   1227 	  ;;
   1228 	expsyms)
   1229 	  export_symbols="$arg"
   1230 	  if test ! -f "$arg"; then
   1231 	    $echo "$modename: symbol file \`$arg' does not exist"
   1232 	    exit $EXIT_FAILURE
   1233 	  fi
   1234 	  prev=
   1235 	  continue
   1236 	  ;;
   1237 	expsyms_regex)
   1238 	  export_symbols_regex="$arg"
   1239 	  prev=
   1240 	  continue
   1241 	  ;;
   1242 	inst_prefix)
   1243 	  inst_prefix_dir="$arg"
   1244 	  prev=
   1245 	  continue
   1246 	  ;;
   1247 	precious_regex)
   1248 	  precious_files_regex="$arg"
   1249 	  prev=
   1250 	  continue
   1251 	  ;;
   1252 	release)
   1253 	  release="-$arg"
   1254 	  prev=
   1255 	  continue
   1256 	  ;;
   1257 	objectlist)
   1258 	  if test -f "$arg"; then
   1259 	    save_arg=$arg
   1260 	    moreargs=
   1261 	    for fil in `cat $save_arg`
   1262 	    do
   1263 #	      moreargs="$moreargs $fil"
   1264 	      arg=$fil
   1265 	      # A libtool-controlled object.
   1266 
   1267 	      # Check to see that this really is a libtool object.
   1268 	      if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
   1269 		pic_object=
   1270 		non_pic_object=
   1271 
   1272 		# Read the .lo file
   1273 		# If there is no directory component, then add one.
   1274 		case $arg in
   1275 		*/* | *\\*) . $arg ;;
   1276 		*) . ./$arg ;;
   1277 		esac
   1278 
   1279 		if test -z "$pic_object" || \
   1280 		   test -z "$non_pic_object" ||
   1281 		   test "$pic_object" = none && \
   1282 		   test "$non_pic_object" = none; then
   1283 		  $echo "$modename: cannot find name of object for \`$arg'" 1>&2
   1284 		  exit $EXIT_FAILURE
   1285 		fi
   1286 
   1287 		# Extract subdirectory from the argument.
   1288 		xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
   1289 		if test "X$xdir" = "X$arg"; then
   1290 		  xdir=
   1291 		else
   1292 		  xdir="$xdir/"
   1293 		fi
   1294 
   1295 		if test "$pic_object" != none; then
   1296 		  # Prepend the subdirectory the object is found in.
   1297 		  pic_object="$xdir$pic_object"
   1298 
   1299 		  if test "$prev" = dlfiles; then
   1300 		    if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
   1301 		      dlfiles="$dlfiles $pic_object"
   1302 		      prev=
   1303 		      continue
   1304 		    else
   1305 		      # If libtool objects are unsupported, then we need to preload.
   1306 		      prev=dlprefiles
   1307 		    fi
   1308 		  fi
   1309 
   1310 		  # CHECK ME:  I think I busted this.  -Ossama
   1311 		  if test "$prev" = dlprefiles; then
   1312 		    # Preload the old-style object.
   1313 		    dlprefiles="$dlprefiles $pic_object"
   1314 		    prev=
   1315 		  fi
   1316 
   1317 		  # A PIC object.
   1318 		  libobjs="$libobjs $pic_object"
   1319 		  arg="$pic_object"
   1320 		fi
   1321 
   1322 		# Non-PIC object.
   1323 		if test "$non_pic_object" != none; then
   1324 		  # Prepend the subdirectory the object is found in.
   1325 		  non_pic_object="$xdir$non_pic_object"
   1326 
   1327 		  # A standard non-PIC object
   1328 		  non_pic_objects="$non_pic_objects $non_pic_object"
   1329 		  if test -z "$pic_object" || test "$pic_object" = none ; then
   1330 		    arg="$non_pic_object"
   1331 		  fi
   1332 		else
   1333 		  # If the PIC object exists, use it instead.
   1334 		  # $xdir was prepended to $pic_object above.
   1335 		  non_pic_object="$pic_object"
   1336 		  non_pic_objects="$non_pic_objects $non_pic_object"
   1337 		fi
   1338 	      else
   1339 		# Only an error if not doing a dry-run.
   1340 		if test -z "$run"; then
   1341 		  $echo "$modename: \`$arg' is not a valid libtool object" 1>&2
   1342 		  exit $EXIT_FAILURE
   1343 		else
   1344 		  # Dry-run case.
   1345 
   1346 		  # Extract subdirectory from the argument.
   1347 		  xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
   1348 		  if test "X$xdir" = "X$arg"; then
   1349 		    xdir=
   1350 		  else
   1351 		    xdir="$xdir/"
   1352 		  fi
   1353 
   1354 		  pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"`
   1355 		  non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"`
   1356 		  libobjs="$libobjs $pic_object"
   1357 		  non_pic_objects="$non_pic_objects $non_pic_object"
   1358 		fi
   1359 	      fi
   1360 	    done
   1361 	  else
   1362 	    $echo "$modename: link input file \`$save_arg' does not exist"
   1363 	    exit $EXIT_FAILURE
   1364 	  fi
   1365 	  arg=$save_arg
   1366 	  prev=
   1367 	  continue
   1368 	  ;;
   1369 	rpath | xrpath)
   1370 	  # We need an absolute path.
   1371 	  case $arg in
   1372 	  [\\/]* | [A-Za-z]:[\\/]*) ;;
   1373 	  *)
   1374 	    $echo "$modename: only absolute run-paths are allowed" 1>&2
   1375 	    exit $EXIT_FAILURE
   1376 	    ;;
   1377 	  esac
   1378 	  if test "$prev" = rpath; then
   1379 	    case "$rpath " in
   1380 	    *" $arg "*) ;;
   1381 	    *) rpath="$rpath $arg" ;;
   1382 	    esac
   1383 	  else
   1384 	    case "$xrpath " in
   1385 	    *" $arg "*) ;;
   1386 	    *) xrpath="$xrpath $arg" ;;
   1387 	    esac
   1388 	  fi
   1389 	  prev=
   1390 	  continue
   1391 	  ;;
   1392 	xcompiler)
   1393 	  compiler_flags="$compiler_flags $qarg"
   1394 	  prev=
   1395 	  compile_command="$compile_command $qarg"
   1396 	  finalize_command="$finalize_command $qarg"
   1397 	  continue
   1398 	  ;;
   1399 	xlinker)
   1400 	  linker_flags="$linker_flags $qarg"
   1401 	  compiler_flags="$compiler_flags $wl$qarg"
   1402 	  prev=
   1403 	  compile_command="$compile_command $wl$qarg"
   1404 	  finalize_command="$finalize_command $wl$qarg"
   1405 	  continue
   1406 	  ;;
   1407 	xcclinker)
   1408 	  linker_flags="$linker_flags $qarg"
   1409 	  compiler_flags="$compiler_flags $qarg"
   1410 	  prev=
   1411 	  compile_command="$compile_command $qarg"
   1412 	  finalize_command="$finalize_command $qarg"
   1413 	  continue
   1414 	  ;;
   1415 	shrext)
   1416   	  shrext_cmds="$arg"
   1417 	  prev=
   1418 	  continue
   1419 	  ;;
   1420 	darwin_framework|darwin_framework_skip)
   1421 	  test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg"
   1422 	  compile_command="$compile_command $arg"
   1423 	  finalize_command="$finalize_command $arg"
   1424 	  prev=
   1425 	  continue
   1426 	  ;;
   1427 	*)
   1428 	  eval "$prev=\"\$arg\""
   1429 	  prev=
   1430 	  continue
   1431 	  ;;
   1432 	esac
   1433       fi # test -n "$prev"
   1434 
   1435       prevarg="$arg"
   1436 
   1437       case $arg in
   1438       -all-static)
   1439 	if test -n "$link_static_flag"; then
   1440 	  compile_command="$compile_command $link_static_flag"
   1441 	  finalize_command="$finalize_command $link_static_flag"
   1442 	fi
   1443 	continue
   1444 	;;
   1445 
   1446       -allow-undefined)
   1447 	# FIXME: remove this flag sometime in the future.
   1448 	$echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
   1449 	continue
   1450 	;;
   1451 
   1452       -avoid-version)
   1453 	avoid_version=yes
   1454 	continue
   1455 	;;
   1456 
   1457       -dlopen)
   1458 	prev=dlfiles
   1459 	continue
   1460 	;;
   1461 
   1462       -dlpreopen)
   1463 	prev=dlprefiles
   1464 	continue
   1465 	;;
   1466 
   1467       -export-dynamic)
   1468 	export_dynamic=yes
   1469 	continue
   1470 	;;
   1471 
   1472       -export-symbols | -export-symbols-regex)
   1473 	if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
   1474 	  $echo "$modename: more than one -exported-symbols argument is not allowed"
   1475 	  exit $EXIT_FAILURE
   1476 	fi
   1477 	if test "X$arg" = "X-export-symbols"; then
   1478 	  prev=expsyms
   1479 	else
   1480 	  prev=expsyms_regex
   1481 	fi
   1482 	continue
   1483 	;;
   1484 
   1485       -framework|-arch|-isysroot)
   1486 	case " $CC " in
   1487 	  *" ${arg} ${1} "* | *" ${arg}	${1} "*) 
   1488 		prev=darwin_framework_skip ;;
   1489 	  *) compiler_flags="$compiler_flags $arg"
   1490 	     prev=darwin_framework ;;
   1491 	esac
   1492 	compile_command="$compile_command $arg"
   1493 	finalize_command="$finalize_command $arg"
   1494 	continue
   1495 	;;
   1496 
   1497       -inst-prefix-dir)
   1498 	prev=inst_prefix
   1499 	continue
   1500 	;;
   1501 
   1502       # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
   1503       # so, if we see these flags be careful not to treat them like -L
   1504       -L[A-Z][A-Z]*:*)
   1505 	case $with_gcc/$host in
   1506 	no/*-*-irix* | /*-*-irix*)
   1507 	  compile_command="$compile_command $arg"
   1508 	  finalize_command="$finalize_command $arg"
   1509 	  ;;
   1510 	esac
   1511 	continue
   1512 	;;
   1513 
   1514       -L*)
   1515 	dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
   1516 	# We need an absolute path.
   1517 	case $dir in
   1518 	[\\/]* | [A-Za-z]:[\\/]*) ;;
   1519 	*)
   1520 	  absdir=`cd "$dir" && pwd`
   1521 	  if test -z "$absdir"; then
   1522 	    $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
   1523 	    absdir="$dir"
   1524 	    notinst_path="$notinst_path $dir"
   1525 	  fi
   1526 	  dir="$absdir"
   1527 	  ;;
   1528 	esac
   1529 	case "$deplibs " in
   1530 	*" -L$dir "*) ;;
   1531 	*)
   1532 	  deplibs="$deplibs -L$dir"
   1533 	  lib_search_path="$lib_search_path $dir"
   1534 	  ;;
   1535 	esac
   1536 	case $host in
   1537 	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
   1538 	  testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'`
   1539 	  case :$dllsearchpath: in
   1540 	  *":$dir:"*) ;;
   1541 	  *) dllsearchpath="$dllsearchpath:$dir";;
   1542 	  esac
   1543 	  case :$dllsearchpath: in
   1544 	  *":$testbindir:"*) ;;
   1545 	  *) dllsearchpath="$dllsearchpath:$testbindir";;
   1546 	  esac
   1547 	  ;;
   1548 	esac
   1549 	continue
   1550 	;;
   1551 
   1552       -l*)
   1553 	if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
   1554 	  case $host in
   1555 	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*)
   1556 	    # These systems don't actually have a C or math library (as such)
   1557 	    continue
   1558 	    ;;
   1559 	  *-*-os2*)
   1560 	    # These systems don't actually have a C library (as such)
   1561 	    test "X$arg" = "X-lc" && continue
   1562 	    ;;
   1563 	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
   1564 	    # Do not include libc due to us having libc/libc_r.
   1565 	    test "X$arg" = "X-lc" && continue
   1566 	    ;;
   1567 	  *-*-rhapsody* | *-*-darwin1.[012])
   1568 	    # Rhapsody C and math libraries are in the System framework
   1569 	    deplibs="$deplibs -framework System"
   1570 	    continue
   1571 	    ;;
   1572 	  *-*-sco3.2v5* | *-*-sco5v6*)
   1573 	    # Causes problems with __ctype
   1574 	    test "X$arg" = "X-lc" && continue
   1575 	    ;;
   1576 	  *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
   1577 	    # Compiler inserts libc in the correct place for threads to work
   1578 	    test "X$arg" = "X-lc" && continue
   1579 	    ;;
   1580 	  esac
   1581 	elif test "X$arg" = "X-lc_r"; then
   1582 	 case $host in
   1583 	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
   1584 	   # Do not include libc_r directly, use -pthread flag.
   1585 	   continue
   1586 	   ;;
   1587 	 esac
   1588 	fi
   1589 	deplibs="$deplibs $arg"
   1590 	continue
   1591 	;;
   1592 
   1593       # Tru64 UNIX uses -model [arg] to determine the layout of C++
   1594       # classes, name mangling, and exception handling.
   1595       -model)
   1596 	compile_command="$compile_command $arg"
   1597 	compiler_flags="$compiler_flags $arg"
   1598 	finalize_command="$finalize_command $arg"
   1599 	prev=xcompiler
   1600 	continue
   1601 	;;
   1602 
   1603      -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
   1604 	compiler_flags="$compiler_flags $arg"
   1605 	compile_command="$compile_command $arg"
   1606 	finalize_command="$finalize_command $arg"
   1607 	continue
   1608 	;;
   1609 
   1610       -module)
   1611 	module=yes
   1612 	continue
   1613 	;;
   1614 
   1615       # -64, -mips[0-9] enable 64-bit mode on the SGI compiler
   1616       # -r[0-9][0-9]* specifies the processor on the SGI compiler
   1617       # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler
   1618       # +DA*, +DD* enable 64-bit mode on the HP compiler
   1619       # -q* pass through compiler args for the IBM compiler
   1620       # -m* pass through architecture-specific compiler args for GCC
   1621       # -m*, -t[45]*, -txscale* pass through architecture-specific
   1622       # compiler args for GCC
   1623       # -pg pass through profiling flag for GCC
   1624       # @file GCC response files
   1625       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \
   1626       -t[45]*|-txscale*|@*)
   1627 
   1628 	# Unknown arguments in both finalize_command and compile_command need
   1629 	# to be aesthetically quoted because they are evaled later.
   1630 	arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
   1631 	case $arg in
   1632 	*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   1633 	  arg="\"$arg\""
   1634 	  ;;
   1635 	esac
   1636         compile_command="$compile_command $arg"
   1637         finalize_command="$finalize_command $arg"
   1638         compiler_flags="$compiler_flags $arg"
   1639         continue
   1640         ;;
   1641 
   1642       -shrext)
   1643 	prev=shrext
   1644 	continue
   1645 	;;
   1646 
   1647       -no-fast-install)
   1648 	fast_install=no
   1649 	continue
   1650 	;;
   1651 
   1652       -no-install)
   1653 	case $host in
   1654 	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
   1655 	  # The PATH hackery in wrapper scripts is required on Windows
   1656 	  # in order for the loader to find any dlls it needs.
   1657 	  $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
   1658 	  $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
   1659 	  fast_install=no
   1660 	  ;;
   1661 	*) no_install=yes ;;
   1662 	esac
   1663 	continue
   1664 	;;
   1665 
   1666       -no-undefined)
   1667 	allow_undefined=no
   1668 	continue
   1669 	;;
   1670 
   1671       -objectlist)
   1672 	prev=objectlist
   1673 	continue
   1674 	;;
   1675 
   1676       -o) prev=output ;;
   1677 
   1678       -precious-files-regex)
   1679 	prev=precious_regex
   1680 	continue
   1681 	;;
   1682 
   1683       -release)
   1684 	prev=release
   1685 	continue
   1686 	;;
   1687 
   1688       -rpath)
   1689 	prev=rpath
   1690 	continue
   1691 	;;
   1692 
   1693       -R)
   1694 	prev=xrpath
   1695 	continue
   1696 	;;
   1697 
   1698       -R*)
   1699 	dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
   1700 	# We need an absolute path.
   1701 	case $dir in
   1702 	[\\/]* | [A-Za-z]:[\\/]*) ;;
   1703 	*)
   1704 	  $echo "$modename: only absolute run-paths are allowed" 1>&2
   1705 	  exit $EXIT_FAILURE
   1706 	  ;;
   1707 	esac
   1708 	case "$xrpath " in
   1709 	*" $dir "*) ;;
   1710 	*) xrpath="$xrpath $dir" ;;
   1711 	esac
   1712 	continue
   1713 	;;
   1714 
   1715       -static)
   1716 	# The effects of -static are defined in a previous loop.
   1717 	# We used to do the same as -all-static on platforms that
   1718 	# didn't have a PIC flag, but the assumption that the effects
   1719 	# would be equivalent was wrong.  It would break on at least
   1720 	# Digital Unix and AIX.
   1721 	continue
   1722 	;;
   1723 
   1724       -thread-safe)
   1725 	thread_safe=yes
   1726 	continue
   1727 	;;
   1728 
   1729       -version-info)
   1730 	prev=vinfo
   1731 	continue
   1732 	;;
   1733       -version-number)
   1734 	prev=vinfo
   1735 	vinfo_number=yes
   1736 	continue
   1737 	;;
   1738 
   1739       -Wc,*)
   1740 	args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
   1741 	arg=
   1742 	save_ifs="$IFS"; IFS=','
   1743 	for flag in $args; do
   1744 	  IFS="$save_ifs"
   1745 	  case $flag in
   1746 	    *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   1747 	    flag="\"$flag\""
   1748 	    ;;
   1749 	  esac
   1750 	  arg="$arg $wl$flag"
   1751 	  compiler_flags="$compiler_flags $flag"
   1752 	done
   1753 	IFS="$save_ifs"
   1754 	arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
   1755 	;;
   1756 
   1757       -Wl,*)
   1758 	args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
   1759 	arg=
   1760 	save_ifs="$IFS"; IFS=','
   1761 	for flag in $args; do
   1762 	  IFS="$save_ifs"
   1763 	  case $flag in
   1764 	    *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   1765 	    flag="\"$flag\""
   1766 	    ;;
   1767 	  esac
   1768 	  arg="$arg $wl$flag"
   1769 	  compiler_flags="$compiler_flags $wl$flag"
   1770 	  linker_flags="$linker_flags $flag"
   1771 	done
   1772 	IFS="$save_ifs"
   1773 	arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
   1774 	;;
   1775 
   1776       -Xcompiler)
   1777 	prev=xcompiler
   1778 	continue
   1779 	;;
   1780 
   1781       -Xlinker)
   1782 	prev=xlinker
   1783 	continue
   1784 	;;
   1785 
   1786       -XCClinker)
   1787 	prev=xcclinker
   1788 	continue
   1789 	;;
   1790 
   1791       # Some other compiler flag.
   1792       -* | +*)
   1793 	# Unknown arguments in both finalize_command and compile_command need
   1794 	# to be aesthetically quoted because they are evaled later.
   1795 	arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
   1796 	case $arg in
   1797 	*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   1798 	  arg="\"$arg\""
   1799 	  ;;
   1800 	esac
   1801 	;;
   1802 
   1803       *.$objext)
   1804 	# A standard object.
   1805 	objs="$objs $arg"
   1806 	;;
   1807 
   1808       *.lo)
   1809 	# A libtool-controlled object.
   1810 
   1811 	# Check to see that this really is a libtool object.
   1812 	if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
   1813 	  pic_object=
   1814 	  non_pic_object=
   1815 
   1816 	  # Read the .lo file
   1817 	  # If there is no directory component, then add one.
   1818 	  case $arg in
   1819 	  */* | *\\*) . $arg ;;
   1820 	  *) . ./$arg ;;
   1821 	  esac
   1822 
   1823 	  if test -z "$pic_object" || \
   1824 	     test -z "$non_pic_object" ||
   1825 	     test "$pic_object" = none && \
   1826 	     test "$non_pic_object" = none; then
   1827 	    $echo "$modename: cannot find name of object for \`$arg'" 1>&2
   1828 	    exit $EXIT_FAILURE
   1829 	  fi
   1830 
   1831 	  # Extract subdirectory from the argument.
   1832 	  xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
   1833 	  if test "X$xdir" = "X$arg"; then
   1834 	    xdir=
   1835  	  else
   1836 	    xdir="$xdir/"
   1837 	  fi
   1838 
   1839 	  if test "$pic_object" != none; then
   1840 	    # Prepend the subdirectory the object is found in.
   1841 	    pic_object="$xdir$pic_object"
   1842 
   1843 	    if test "$prev" = dlfiles; then
   1844 	      if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
   1845 		dlfiles="$dlfiles $pic_object"
   1846 		prev=
   1847 		continue
   1848 	      else
   1849 		# If libtool objects are unsupported, then we need to preload.
   1850 		prev=dlprefiles
   1851 	      fi
   1852 	    fi
   1853 
   1854 	    # CHECK ME:  I think I busted this.  -Ossama
   1855 	    if test "$prev" = dlprefiles; then
   1856 	      # Preload the old-style object.
   1857 	      dlprefiles="$dlprefiles $pic_object"
   1858 	      prev=
   1859 	    fi
   1860 
   1861 	    # A PIC object.
   1862 	    libobjs="$libobjs $pic_object"
   1863 	    arg="$pic_object"
   1864 	  fi
   1865 
   1866 	  # Non-PIC object.
   1867 	  if test "$non_pic_object" != none; then
   1868 	    # Prepend the subdirectory the object is found in.
   1869 	    non_pic_object="$xdir$non_pic_object"
   1870 
   1871 	    # A standard non-PIC object
   1872 	    non_pic_objects="$non_pic_objects $non_pic_object"
   1873 	    if test -z "$pic_object" || test "$pic_object" = none ; then
   1874 	      arg="$non_pic_object"
   1875 	    fi
   1876 	  else
   1877 	    # If the PIC object exists, use it instead.
   1878 	    # $xdir was prepended to $pic_object above.
   1879 	    non_pic_object="$pic_object"
   1880 	    non_pic_objects="$non_pic_objects $non_pic_object"
   1881 	  fi
   1882 	else
   1883 	  # Only an error if not doing a dry-run.
   1884 	  if test -z "$run"; then
   1885 	    $echo "$modename: \`$arg' is not a valid libtool object" 1>&2
   1886 	    exit $EXIT_FAILURE
   1887 	  else
   1888 	    # Dry-run case.
   1889 
   1890 	    # Extract subdirectory from the argument.
   1891 	    xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
   1892 	    if test "X$xdir" = "X$arg"; then
   1893 	      xdir=
   1894 	    else
   1895 	      xdir="$xdir/"
   1896 	    fi
   1897 
   1898 	    pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"`
   1899 	    non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"`
   1900 	    libobjs="$libobjs $pic_object"
   1901 	    non_pic_objects="$non_pic_objects $non_pic_object"
   1902 	  fi
   1903 	fi
   1904 	;;
   1905 
   1906       *.$libext)
   1907 	# An archive.
   1908 	deplibs="$deplibs $arg"
   1909 	old_deplibs="$old_deplibs $arg"
   1910 	continue
   1911 	;;
   1912 
   1913       *.la)
   1914 	# A libtool-controlled library.
   1915 
   1916 	if test "$prev" = dlfiles; then
   1917 	  # This library was specified with -dlopen.
   1918 	  dlfiles="$dlfiles $arg"
   1919 	  prev=
   1920 	elif test "$prev" = dlprefiles; then
   1921 	  # The library was specified with -dlpreopen.
   1922 	  dlprefiles="$dlprefiles $arg"
   1923 	  prev=
   1924 	else
   1925 	  deplibs="$deplibs $arg"
   1926 	fi
   1927 	continue
   1928 	;;
   1929 
   1930       # Some other compiler argument.
   1931       *)
   1932 	# Unknown arguments in both finalize_command and compile_command need
   1933 	# to be aesthetically quoted because they are evaled later.
   1934 	arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
   1935 	case $arg in
   1936 	*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   1937 	  arg="\"$arg\""
   1938 	  ;;
   1939 	esac
   1940 	;;
   1941       esac # arg
   1942 
   1943       # Now actually substitute the argument into the commands.
   1944       if test -n "$arg"; then
   1945 	compile_command="$compile_command $arg"
   1946 	finalize_command="$finalize_command $arg"
   1947       fi
   1948     done # argument parsing loop
   1949 
   1950     if test -n "$prev"; then
   1951       $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
   1952       $echo "$help" 1>&2
   1953       exit $EXIT_FAILURE
   1954     fi
   1955 
   1956     if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
   1957       eval arg=\"$export_dynamic_flag_spec\"
   1958       compile_command="$compile_command $arg"
   1959       finalize_command="$finalize_command $arg"
   1960     fi
   1961 
   1962     oldlibs=
   1963     # calculate the name of the file, without its directory
   1964     outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
   1965     libobjs_save="$libobjs"
   1966 
   1967     if test -n "$shlibpath_var"; then
   1968       # get the directories listed in $shlibpath_var
   1969       eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
   1970     else
   1971       shlib_search_path=
   1972     fi
   1973     eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
   1974     eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
   1975 
   1976     output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
   1977     if test "X$output_objdir" = "X$output"; then
   1978       output_objdir="$objdir"
   1979     else
   1980       output_objdir="$output_objdir/$objdir"
   1981     fi
   1982     # Create the object directory.
   1983     if test ! -d "$output_objdir"; then
   1984       $show "$mkdir $output_objdir"
   1985       $run $mkdir $output_objdir
   1986       exit_status=$?
   1987       if test "$exit_status" -ne 0 && test ! -d "$output_objdir"; then
   1988 	exit $exit_status
   1989       fi
   1990     fi
   1991 
   1992     # Determine the type of output
   1993     case $output in
   1994     "")
   1995       $echo "$modename: you must specify an output file" 1>&2
   1996       $echo "$help" 1>&2
   1997       exit $EXIT_FAILURE
   1998       ;;
   1999     *.$libext) linkmode=oldlib ;;
   2000     *.lo | *.$objext) linkmode=obj ;;
   2001     *.la) linkmode=lib ;;
   2002     *) linkmode=prog ;; # Anything else should be a program.
   2003     esac
   2004 
   2005     case $host in
   2006     *cygwin* | *mingw* | *pw32*)
   2007       # don't eliminate duplications in $postdeps and $predeps
   2008       duplicate_compiler_generated_deps=yes
   2009       ;;
   2010     *)
   2011       duplicate_compiler_generated_deps=$duplicate_deps
   2012       ;;
   2013     esac
   2014     specialdeplibs=
   2015 
   2016     libs=
   2017     # Find all interdependent deplibs by searching for libraries
   2018     # that are linked more than once (e.g. -la -lb -la)
   2019     for deplib in $deplibs; do
   2020       if test "X$duplicate_deps" = "Xyes" ; then
   2021 	case "$libs " in
   2022 	*" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
   2023 	esac
   2024       fi
   2025       libs="$libs $deplib"
   2026     done
   2027 
   2028     if test "$linkmode" = lib; then
   2029       libs="$predeps $libs $compiler_lib_search_path $postdeps"
   2030 
   2031       # Compute libraries that are listed more than once in $predeps
   2032       # $postdeps and mark them as special (i.e., whose duplicates are
   2033       # not to be eliminated).
   2034       pre_post_deps=
   2035       if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then
   2036 	for pre_post_dep in $predeps $postdeps; do
   2037 	  case "$pre_post_deps " in
   2038 	  *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;;
   2039 	  esac
   2040 	  pre_post_deps="$pre_post_deps $pre_post_dep"
   2041 	done
   2042       fi
   2043       pre_post_deps=
   2044     fi
   2045 
   2046     deplibs=
   2047     newdependency_libs=
   2048     newlib_search_path=
   2049     need_relink=no # whether we're linking any uninstalled libtool libraries
   2050     notinst_deplibs= # not-installed libtool libraries
   2051     case $linkmode in
   2052     lib)
   2053 	passes="conv link"
   2054 	for file in $dlfiles $dlprefiles; do
   2055 	  case $file in
   2056 	  *.la) ;;
   2057 	  *)
   2058 	    $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
   2059 	    exit $EXIT_FAILURE
   2060 	    ;;
   2061 	  esac
   2062 	done
   2063 	;;
   2064     prog)
   2065 	compile_deplibs=
   2066 	finalize_deplibs=
   2067 	alldeplibs=no
   2068 	newdlfiles=
   2069 	newdlprefiles=
   2070 	passes="conv scan dlopen dlpreopen link"
   2071 	;;
   2072     *)  passes="conv"
   2073 	;;
   2074     esac
   2075     for pass in $passes; do
   2076       if test "$linkmode,$pass" = "lib,link" ||
   2077 	 test "$linkmode,$pass" = "prog,scan"; then
   2078 	libs="$deplibs"
   2079 	deplibs=
   2080       fi
   2081       if test "$linkmode" = prog; then
   2082 	case $pass in
   2083 	dlopen) libs="$dlfiles" ;;
   2084 	dlpreopen) libs="$dlprefiles" ;;
   2085 	link)
   2086 	  libs="$deplibs %DEPLIBS%"
   2087 	  test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
   2088 	  ;;
   2089 	esac
   2090       fi
   2091       if test "$pass" = dlopen; then
   2092 	# Collect dlpreopened libraries
   2093 	save_deplibs="$deplibs"
   2094 	deplibs=
   2095       fi
   2096       for deplib in $libs; do
   2097 	lib=
   2098 	found=no
   2099 	case $deplib in
   2100 	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
   2101 	  if test "$linkmode,$pass" = "prog,link"; then
   2102 	    compile_deplibs="$deplib $compile_deplibs"
   2103 	    finalize_deplibs="$deplib $finalize_deplibs"
   2104 	  else
   2105 	    compiler_flags="$compiler_flags $deplib"
   2106 	  fi
   2107 	  continue
   2108 	  ;;
   2109 	-l*)
   2110 	  if test "$linkmode" != lib && test "$linkmode" != prog; then
   2111 	    $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2
   2112 	    continue
   2113 	  fi
   2114 	  name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
   2115 	  for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
   2116 	    for search_ext in .la $std_shrext .so .a; do
   2117 	      # Search the libtool library
   2118 	      lib="$searchdir/lib${name}${search_ext}"
   2119 	      if test -f "$lib"; then
   2120 		if test "$search_ext" = ".la"; then
   2121 		  found=yes
   2122 		else
   2123 		  found=no
   2124 		fi
   2125 		break 2
   2126 	      fi
   2127 	    done
   2128 	  done
   2129 	  if test "$found" != yes; then
   2130 	    # deplib doesn't seem to be a libtool library
   2131 	    if test "$linkmode,$pass" = "prog,link"; then
   2132 	      compile_deplibs="$deplib $compile_deplibs"
   2133 	      finalize_deplibs="$deplib $finalize_deplibs"
   2134 	    else
   2135 	      deplibs="$deplib $deplibs"
   2136 	      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
   2137 	    fi
   2138 	    continue
   2139 	  else # deplib is a libtool library
   2140 	    # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
   2141 	    # We need to do some special things here, and not later.
   2142 	    if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
   2143 	      case " $predeps $postdeps " in
   2144 	      *" $deplib "*)
   2145 		if (${SED} -e '2q' $lib |
   2146                     grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
   2147 		  library_names=
   2148 		  old_library=
   2149 		  case $lib in
   2150 		  */* | *\\*) . $lib ;;
   2151 		  *) . ./$lib ;;
   2152 		  esac
   2153 		  for l in $old_library $library_names; do
   2154 		    ll="$l"
   2155 		  done
   2156 		  if test "X$ll" = "X$old_library" ; then # only static version available
   2157 		    found=no
   2158 		    ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
   2159 		    test "X$ladir" = "X$lib" && ladir="."
   2160 		    lib=$ladir/$old_library
   2161 		    if test "$linkmode,$pass" = "prog,link"; then
   2162 		      compile_deplibs="$deplib $compile_deplibs"
   2163 		      finalize_deplibs="$deplib $finalize_deplibs"
   2164 		    else
   2165 		      deplibs="$deplib $deplibs"
   2166 		      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
   2167 		    fi
   2168 		    continue
   2169 		  fi
   2170 		fi
   2171 	        ;;
   2172 	      *) ;;
   2173 	      esac
   2174 	    fi
   2175 	  fi
   2176 	  ;; # -l
   2177 	-L*)
   2178 	  case $linkmode in
   2179 	  lib)
   2180 	    deplibs="$deplib $deplibs"
   2181 	    test "$pass" = conv && continue
   2182 	    newdependency_libs="$deplib $newdependency_libs"
   2183 	    newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
   2184 	    ;;
   2185 	  prog)
   2186 	    if test "$pass" = conv; then
   2187 	      deplibs="$deplib $deplibs"
   2188 	      continue
   2189 	    fi
   2190 	    if test "$pass" = scan; then
   2191 	      deplibs="$deplib $deplibs"
   2192 	    else
   2193 	      compile_deplibs="$deplib $compile_deplibs"
   2194 	      finalize_deplibs="$deplib $finalize_deplibs"
   2195 	    fi
   2196 	    newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
   2197 	    ;;
   2198 	  *)
   2199 	    $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2
   2200 	    ;;
   2201 	  esac # linkmode
   2202 	  continue
   2203 	  ;; # -L
   2204 	-R*)
   2205 	  if test "$pass" = link; then
   2206 	    dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
   2207 	    # Make sure the xrpath contains only unique directories.
   2208 	    case "$xrpath " in
   2209 	    *" $dir "*) ;;
   2210 	    *) xrpath="$xrpath $dir" ;;
   2211 	    esac
   2212 	  fi
   2213 	  deplibs="$deplib $deplibs"
   2214 	  continue
   2215 	  ;;
   2216 	*.la) lib="$deplib" ;;
   2217 	*.$libext)
   2218 	  if test "$pass" = conv; then
   2219 	    deplibs="$deplib $deplibs"
   2220 	    continue
   2221 	  fi
   2222 	  case $linkmode in
   2223 	  lib)
   2224 	    valid_a_lib=no
   2225 	    case $deplibs_check_method in
   2226 	      match_pattern*)
   2227 		set dummy $deplibs_check_method
   2228 	        match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
   2229 		if eval $echo \"$deplib\" 2>/dev/null \
   2230 		    | $SED 10q \
   2231 		    | $EGREP "$match_pattern_regex" > /dev/null; then
   2232 		  valid_a_lib=yes
   2233 		fi
   2234 		;;
   2235 	      pass_all)
   2236 		valid_a_lib=yes
   2237 		;;
   2238             esac
   2239 	    if test "$valid_a_lib" != yes; then
   2240 	      $echo
   2241 	      $echo "*** Warning: Trying to link with static lib archive $deplib."
   2242 	      $echo "*** I have the capability to make that library automatically link in when"
   2243 	      $echo "*** you link to this library.  But I can only do this if you have a"
   2244 	      $echo "*** shared version of the library, which you do not appear to have"
   2245 	      $echo "*** because the file extensions .$libext of this argument makes me believe"
   2246 	      $echo "*** that it is just a static archive that I should not used here."
   2247 	    else
   2248 	      $echo
   2249 	      $echo "*** Warning: Linking the shared library $output against the"
   2250 	      $echo "*** static library $deplib is not portable!"
   2251 	      deplibs="$deplib $deplibs"
   2252 	    fi
   2253 	    continue
   2254 	    ;;
   2255 	  prog)
   2256 	    if test "$pass" != link; then
   2257 	      deplibs="$deplib $deplibs"
   2258 	    else
   2259 	      compile_deplibs="$deplib $compile_deplibs"
   2260 	      finalize_deplibs="$deplib $finalize_deplibs"
   2261 	    fi
   2262 	    continue
   2263 	    ;;
   2264 	  esac # linkmode
   2265 	  ;; # *.$libext
   2266 	*.lo | *.$objext)
   2267 	  if test "$pass" = conv; then
   2268 	    deplibs="$deplib $deplibs"
   2269 	  elif test "$linkmode" = prog; then
   2270 	    if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
   2271 	      # If there is no dlopen support or we're linking statically,
   2272 	      # we need to preload.
   2273 	      newdlprefiles="$newdlprefiles $deplib"
   2274 	      compile_deplibs="$deplib $compile_deplibs"
   2275 	      finalize_deplibs="$deplib $finalize_deplibs"
   2276 	    else
   2277 	      newdlfiles="$newdlfiles $deplib"
   2278 	    fi
   2279 	  fi
   2280 	  continue
   2281 	  ;;
   2282 	%DEPLIBS%)
   2283 	  alldeplibs=yes
   2284 	  continue
   2285 	  ;;
   2286 	esac # case $deplib
   2287 	if test "$found" = yes || test -f "$lib"; then :
   2288 	else
   2289 	  $echo "$modename: cannot find the library \`$lib' or unhandled argument \`$deplib'" 1>&2
   2290 	  exit $EXIT_FAILURE
   2291 	fi
   2292 
   2293 	# Check to see that this really is a libtool archive.
   2294 	if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
   2295 	else
   2296 	  $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
   2297 	  exit $EXIT_FAILURE
   2298 	fi
   2299 
   2300 	ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
   2301 	test "X$ladir" = "X$lib" && ladir="."
   2302 
   2303 	dlname=
   2304 	dlopen=
   2305 	dlpreopen=
   2306 	libdir=
   2307 	library_names=
   2308 	old_library=
   2309 	# If the library was installed with an old release of libtool,
   2310 	# it will not redefine variables installed, or shouldnotlink
   2311 	installed=yes
   2312 	shouldnotlink=no
   2313 	avoidtemprpath=
   2314 
   2315 
   2316 	# Read the .la file
   2317 	case $lib in
   2318 	*/* | *\\*) . $lib ;;
   2319 	*) . ./$lib ;;
   2320 	esac
   2321 
   2322 	if test "$linkmode,$pass" = "lib,link" ||
   2323 	   test "$linkmode,$pass" = "prog,scan" ||
   2324 	   { test "$linkmode" != prog && test "$linkmode" != lib; }; then
   2325 	  test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
   2326 	  test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
   2327 	fi
   2328 
   2329 	if test "$pass" = conv; then
   2330 	  # Only check for convenience libraries
   2331 	  deplibs="$lib $deplibs"
   2332 	  if test -z "$libdir"; then
   2333 	    if test -z "$old_library"; then
   2334 	      $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
   2335 	      exit $EXIT_FAILURE
   2336 	    fi
   2337 	    # It is a libtool convenience library, so add in its objects.
   2338 	    convenience="$convenience $ladir/$objdir/$old_library"
   2339 	    old_convenience="$old_convenience $ladir/$objdir/$old_library"
   2340 	    tmp_libs=
   2341 	    for deplib in $dependency_libs; do
   2342 	      deplibs="$deplib $deplibs"
   2343               if test "X$duplicate_deps" = "Xyes" ; then
   2344 	        case "$tmp_libs " in
   2345 	        *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
   2346 	        esac
   2347               fi
   2348 	      tmp_libs="$tmp_libs $deplib"
   2349 	    done
   2350 	  elif test "$linkmode" != prog && test "$linkmode" != lib; then
   2351 	    $echo "$modename: \`$lib' is not a convenience library" 1>&2
   2352 	    exit $EXIT_FAILURE
   2353 	  fi
   2354 	  continue
   2355 	fi # $pass = conv
   2356 
   2357 
   2358 	# Get the name of the library we link against.
   2359 	linklib=
   2360 	for l in $old_library $library_names; do
   2361 	  linklib="$l"
   2362 	done
   2363 	if test -z "$linklib"; then
   2364 	  $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
   2365 	  exit $EXIT_FAILURE
   2366 	fi
   2367 
   2368 	# This library was specified with -dlopen.
   2369 	if test "$pass" = dlopen; then
   2370 	  if test -z "$libdir"; then
   2371 	    $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
   2372 	    exit $EXIT_FAILURE
   2373 	  fi
   2374 	  if test -z "$dlname" ||
   2375 	     test "$dlopen_support" != yes ||
   2376 	     test "$build_libtool_libs" = no; then
   2377 	    # If there is no dlname, no dlopen support or we're linking
   2378 	    # statically, we need to preload.  We also need to preload any
   2379 	    # dependent libraries so libltdl's deplib preloader doesn't
   2380 	    # bomb out in the load deplibs phase.
   2381 	    dlprefiles="$dlprefiles $lib $dependency_libs"
   2382 	  else
   2383 	    newdlfiles="$newdlfiles $lib"
   2384 	  fi
   2385 	  continue
   2386 	fi # $pass = dlopen
   2387 
   2388 	# We need an absolute path.
   2389 	case $ladir in
   2390 	[\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
   2391 	*)
   2392 	  abs_ladir=`cd "$ladir" && pwd`
   2393 	  if test -z "$abs_ladir"; then
   2394 	    $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
   2395 	    $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
   2396 	    abs_ladir="$ladir"
   2397 	  fi
   2398 	  ;;
   2399 	esac
   2400 	laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
   2401 
   2402 	# Find the relevant object directory and library name.
   2403 	if test "X$installed" = Xyes; then
   2404 	  if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
   2405 	    $echo "$modename: warning: library \`$lib' was moved." 1>&2
   2406 	    dir="$ladir"
   2407 	    absdir="$abs_ladir"
   2408 	    libdir="$abs_ladir"
   2409 	  else
   2410 	    dir="$libdir"
   2411 	    absdir="$libdir"
   2412 	  fi
   2413 	  test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
   2414 	else
   2415 	  if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
   2416 	    dir="$ladir"
   2417 	    absdir="$abs_ladir"
   2418 	    # Remove this search path later
   2419 	    notinst_path="$notinst_path $abs_ladir"
   2420 	  else
   2421 	    dir="$ladir/$objdir"
   2422 	    absdir="$abs_ladir/$objdir"
   2423 	    # Remove this search path later
   2424 	    notinst_path="$notinst_path $abs_ladir"
   2425 	  fi
   2426 	fi # $installed = yes
   2427 	name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
   2428 
   2429 	# This library was specified with -dlpreopen.
   2430 	if test "$pass" = dlpreopen; then
   2431 	  if test -z "$libdir"; then
   2432 	    $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
   2433 	    exit $EXIT_FAILURE
   2434 	  fi
   2435 	  # Prefer using a static library (so that no silly _DYNAMIC symbols
   2436 	  # are required to link).
   2437 	  if test -n "$old_library"; then
   2438 	    newdlprefiles="$newdlprefiles $dir/$old_library"
   2439 	  # Otherwise, use the dlname, so that lt_dlopen finds it.
   2440 	  elif test -n "$dlname"; then
   2441 	    newdlprefiles="$newdlprefiles $dir/$dlname"
   2442 	  else
   2443 	    newdlprefiles="$newdlprefiles $dir/$linklib"
   2444 	  fi
   2445 	fi # $pass = dlpreopen
   2446 
   2447 	if test -z "$libdir"; then
   2448 	  # Link the convenience library
   2449 	  if test "$linkmode" = lib; then
   2450 	    deplibs="$dir/$old_library $deplibs"
   2451 	  elif test "$linkmode,$pass" = "prog,link"; then
   2452 	    compile_deplibs="$dir/$old_library $compile_deplibs"
   2453 	    finalize_deplibs="$dir/$old_library $finalize_deplibs"
   2454 	  else
   2455 	    deplibs="$lib $deplibs" # used for prog,scan pass
   2456 	  fi
   2457 	  continue
   2458 	fi
   2459 
   2460 
   2461 	if test "$linkmode" = prog && test "$pass" != link; then
   2462 	  newlib_search_path="$newlib_search_path $ladir"
   2463 	  deplibs="$lib $deplibs"
   2464 
   2465 	  linkalldeplibs=no
   2466 	  if test "$link_all_deplibs" != no || test -z "$library_names" ||
   2467 	     test "$build_libtool_libs" = no; then
   2468 	    linkalldeplibs=yes
   2469 	  fi
   2470 
   2471 	  tmp_libs=
   2472 	  for deplib in $dependency_libs; do
   2473 	    case $deplib in
   2474 	    -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
   2475 	    esac
   2476 	    # Need to link against all dependency_libs?
   2477 	    if test "$linkalldeplibs" = yes; then
   2478 	      deplibs="$deplib $deplibs"
   2479 	    else
   2480 	      # Need to hardcode shared library paths
   2481 	      # or/and link against static libraries
   2482 	      newdependency_libs="$deplib $newdependency_libs"
   2483 	    fi
   2484 	    if test "X$duplicate_deps" = "Xyes" ; then
   2485 	      case "$tmp_libs " in
   2486 	      *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
   2487 	      esac
   2488 	    fi
   2489 	    tmp_libs="$tmp_libs $deplib"
   2490 	  done # for deplib
   2491 	  continue
   2492 	fi # $linkmode = prog...
   2493 
   2494 	if test "$linkmode,$pass" = "prog,link"; then
   2495 	  if test -n "$library_names" &&
   2496 	     { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
   2497 	    # We need to hardcode the library path
   2498 	    if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
   2499 	      # Make sure the rpath contains only unique directories.
   2500 	      case "$temp_rpath " in
   2501 	      *" $dir "*) ;;
   2502 	      *" $absdir "*) ;;
   2503 	      *) temp_rpath="$temp_rpath $absdir" ;;
   2504 	      esac
   2505 	    fi
   2506 
   2507 	    # Hardcode the library path.
   2508 	    # Skip directories that are in the system default run-time
   2509 	    # search path.
   2510 	    case " $sys_lib_dlsearch_path " in
   2511 	    *" $absdir "*) ;;
   2512 	    *)
   2513 	      case "$compile_rpath " in
   2514 	      *" $absdir "*) ;;
   2515 	      *) compile_rpath="$compile_rpath $absdir"
   2516 	      esac
   2517 	      ;;
   2518 	    esac
   2519 	    case " $sys_lib_dlsearch_path " in
   2520 	    *" $libdir "*) ;;
   2521 	    *)
   2522 	      case "$finalize_rpath " in
   2523 	      *" $libdir "*) ;;
   2524 	      *) finalize_rpath="$finalize_rpath $libdir"
   2525 	      esac
   2526 	      ;;
   2527 	    esac
   2528 	  fi # $linkmode,$pass = prog,link...
   2529 
   2530 	  if test "$alldeplibs" = yes &&
   2531 	     { test "$deplibs_check_method" = pass_all ||
   2532 	       { test "$build_libtool_libs" = yes &&
   2533 		 test -n "$library_names"; }; }; then
   2534 	    # We only need to search for static libraries
   2535 	    continue
   2536 	  fi
   2537 	fi
   2538 
   2539 	link_static=no # Whether the deplib will be linked statically
   2540 	use_static_libs=$prefer_static_libs
   2541 	if test "$use_static_libs" = built && test "$installed" = yes ; then
   2542 	  use_static_libs=no
   2543 	fi
   2544 	if test -n "$library_names" &&
   2545 	   { test "$use_static_libs" = no || test -z "$old_library"; }; then
   2546 	  if test "$installed" = no; then
   2547 	    notinst_deplibs="$notinst_deplibs $lib"
   2548 	    need_relink=yes
   2549 	  fi
   2550 	  # This is a shared library
   2551 
   2552 	  # Warn about portability, can't link against -module's on
   2553 	  # some systems (darwin)
   2554 	  if test "$shouldnotlink" = yes && test "$pass" = link ; then
   2555 	    $echo
   2556 	    if test "$linkmode" = prog; then
   2557 	      $echo "*** Warning: Linking the executable $output against the loadable module"
   2558 	    else
   2559 	      $echo "*** Warning: Linking the shared library $output against the loadable module"
   2560 	    fi
   2561 	    $echo "*** $linklib is not portable!"
   2562 	  fi
   2563 	  if test "$linkmode" = lib &&
   2564 	     test "$hardcode_into_libs" = yes; then
   2565 	    # Hardcode the library path.
   2566 	    # Skip directories that are in the system default run-time
   2567 	    # search path.
   2568 	    case " $sys_lib_dlsearch_path " in
   2569 	    *" $absdir "*) ;;
   2570 	    *)
   2571 	      case "$compile_rpath " in
   2572 	      *" $absdir "*) ;;
   2573 	      *) compile_rpath="$compile_rpath $absdir"
   2574 	      esac
   2575 	      ;;
   2576 	    esac
   2577 	    case " $sys_lib_dlsearch_path " in
   2578 	    *" $libdir "*) ;;
   2579 	    *)
   2580 	      case "$finalize_rpath " in
   2581 	      *" $libdir "*) ;;
   2582 	      *) finalize_rpath="$finalize_rpath $libdir"
   2583 	      esac
   2584 	      ;;
   2585 	    esac
   2586 	  fi
   2587 
   2588 	  if test -n "$old_archive_from_expsyms_cmds"; then
   2589 	    # figure out the soname
   2590 	    set dummy $library_names
   2591 	    realname="$2"
   2592 	    shift; shift
   2593 	    libname=`eval \\$echo \"$libname_spec\"`
   2594 	    # use dlname if we got it. it's perfectly good, no?
   2595 	    if test -n "$dlname"; then
   2596 	      soname="$dlname"
   2597 	    elif test -n "$soname_spec"; then
   2598 	      # bleh windows
   2599 	      case $host in
   2600 	      *cygwin* | mingw*)
   2601 		major=`expr $current - $age`
   2602 		versuffix="-$major"
   2603 		;;
   2604 	      esac
   2605 	      eval soname=\"$soname_spec\"
   2606 	    else
   2607 	      soname="$realname"
   2608 	    fi
   2609 
   2610 	    # Make a new name for the extract_expsyms_cmds to use
   2611 	    soroot="$soname"
   2612 	    soname=`$echo $soroot | ${SED} -e 's/^.*\///'`
   2613 	    newlib="libimp-`$echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
   2614 
   2615 	    # If the library has no export list, then create one now
   2616 	    if test -f "$output_objdir/$soname-def"; then :
   2617 	    else
   2618 	      $show "extracting exported symbol list from \`$soname'"
   2619 	      save_ifs="$IFS"; IFS='~'
   2620 	      cmds=$extract_expsyms_cmds
   2621 	      for cmd in $cmds; do
   2622 		IFS="$save_ifs"
   2623 		eval cmd=\"$cmd\"
   2624 		$show "$cmd"
   2625 		$run eval "$cmd" || exit $?
   2626 	      done
   2627 	      IFS="$save_ifs"
   2628 	    fi
   2629 
   2630 	    # Create $newlib
   2631 	    if test -f "$output_objdir/$newlib"; then :; else
   2632 	      $show "generating import library for \`$soname'"
   2633 	      save_ifs="$IFS"; IFS='~'
   2634 	      cmds=$old_archive_from_expsyms_cmds
   2635 	      for cmd in $cmds; do
   2636 		IFS="$save_ifs"
   2637 		eval cmd=\"$cmd\"
   2638 		$show "$cmd"
   2639 		$run eval "$cmd" || exit $?
   2640 	      done
   2641 	      IFS="$save_ifs"
   2642 	    fi
   2643 	    # make sure the library variables are pointing to the new library
   2644 	    dir=$output_objdir
   2645 	    linklib=$newlib
   2646 	  fi # test -n "$old_archive_from_expsyms_cmds"
   2647 
   2648 	  if test "$linkmode" = prog || test "$mode" != relink; then
   2649 	    add_shlibpath=
   2650 	    add_dir=
   2651 	    add=
   2652 	    lib_linked=yes
   2653 	    case $hardcode_action in
   2654 	    immediate | unsupported)
   2655 	      if test "$hardcode_direct" = no; then
   2656 		add="$dir/$linklib"
   2657 		case $host in
   2658 		  *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
   2659 		  *-*-sysv4*uw2*) add_dir="-L$dir" ;;
   2660 		  *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
   2661 		    *-*-unixware7*) add_dir="-L$dir" ;;
   2662 		  *-*-darwin* )
   2663 		    # if the lib is a module then we can not link against
   2664 		    # it, someone is ignoring the new warnings I added
   2665 		    if /usr/bin/file -L $add 2> /dev/null |
   2666                       $EGREP ": [^:]* bundle" >/dev/null ; then
   2667 		      $echo "** Warning, lib $linklib is a module, not a shared library"
   2668 		      if test -z "$old_library" ; then
   2669 		        $echo
   2670 		        $echo "** And there doesn't seem to be a static archive available"
   2671 		        $echo "** The link will probably fail, sorry"
   2672 		      else
   2673 		        add="$dir/$old_library"
   2674 		      fi
   2675 		    fi
   2676 		esac
   2677 	      elif test "$hardcode_minus_L" = no; then
   2678 		case $host in
   2679 		*-*-sunos*) add_shlibpath="$dir" ;;
   2680 		esac
   2681 		add_dir="-L$dir"
   2682 		add="-l$name"
   2683 	      elif test "$hardcode_shlibpath_var" = no; then
   2684 		add_shlibpath="$dir"
   2685 		add="-l$name"
   2686 	      else
   2687 		lib_linked=no
   2688 	      fi
   2689 	      ;;
   2690 	    relink)
   2691 	      if test "$hardcode_direct" = yes; then
   2692 		add="$dir/$linklib"
   2693 	      elif test "$hardcode_minus_L" = yes; then
   2694 		add_dir="-L$dir"
   2695 		# Try looking first in the location we're being installed to.
   2696 		if test -n "$inst_prefix_dir"; then
   2697 		  case $libdir in
   2698 		    [\\/]*)
   2699 		      add_dir="$add_dir -L$inst_prefix_dir$libdir"
   2700 		      ;;
   2701 		  esac
   2702 		fi
   2703 		add="-l$name"
   2704 	      elif test "$hardcode_shlibpath_var" = yes; then
   2705 		add_shlibpath="$dir"
   2706 		add="-l$name"
   2707 	      else
   2708 		lib_linked=no
   2709 	      fi
   2710 	      ;;
   2711 	    *) lib_linked=no ;;
   2712 	    esac
   2713 
   2714 	    if test "$lib_linked" != yes; then
   2715 	      $echo "$modename: configuration error: unsupported hardcode properties"
   2716 	      exit $EXIT_FAILURE
   2717 	    fi
   2718 
   2719 	    if test -n "$add_shlibpath"; then
   2720 	      case :$compile_shlibpath: in
   2721 	      *":$add_shlibpath:"*) ;;
   2722 	      *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
   2723 	      esac
   2724 	    fi
   2725 	    if test "$linkmode" = prog; then
   2726 	      test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
   2727 	      test -n "$add" && compile_deplibs="$add $compile_deplibs"
   2728 	    else
   2729 	      test -n "$add_dir" && deplibs="$add_dir $deplibs"
   2730 	      test -n "$add" && deplibs="$add $deplibs"
   2731 	      if test "$hardcode_direct" != yes && \
   2732 		 test "$hardcode_minus_L" != yes && \
   2733 		 test "$hardcode_shlibpath_var" = yes; then
   2734 		case :$finalize_shlibpath: in
   2735 		*":$libdir:"*) ;;
   2736 		*) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
   2737 		esac
   2738 	      fi
   2739 	    fi
   2740 	  fi
   2741 
   2742 	  if test "$linkmode" = prog || test "$mode" = relink; then
   2743 	    add_shlibpath=
   2744 	    add_dir=
   2745 	    add=
   2746 	    # Finalize command for both is simple: just hardcode it.
   2747 	    if test "$hardcode_direct" = yes; then
   2748 	      add="$libdir/$linklib"
   2749 	    elif test "$hardcode_minus_L" = yes; then
   2750 	      add_dir="-L$libdir"
   2751 	      add="-l$name"
   2752 	    elif test "$hardcode_shlibpath_var" = yes; then
   2753 	      case :$finalize_shlibpath: in
   2754 	      *":$libdir:"*) ;;
   2755 	      *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
   2756 	      esac
   2757 	      add="-l$name"
   2758 	    elif test "$hardcode_automatic" = yes; then
   2759 	      if test -n "$inst_prefix_dir" &&
   2760 		 test -f "$inst_prefix_dir$libdir/$linklib" ; then
   2761 	        add="$inst_prefix_dir$libdir/$linklib"
   2762 	      else
   2763 	        add="$libdir/$linklib"
   2764 	      fi
   2765 	    else
   2766 	      # We cannot seem to hardcode it, guess we'll fake it.
   2767 	      add_dir="-L$libdir"
   2768 	      # Try looking first in the location we're being installed to.
   2769 	      if test -n "$inst_prefix_dir"; then
   2770 		case $libdir in
   2771 		  [\\/]*)
   2772 		    add_dir="$add_dir -L$inst_prefix_dir$libdir"
   2773 		    ;;
   2774 		esac
   2775 	      fi
   2776 	      add="-l$name"
   2777 	    fi
   2778 
   2779 	    if test "$linkmode" = prog; then
   2780 	      test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
   2781 	      test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
   2782 	    else
   2783 	      test -n "$add_dir" && deplibs="$add_dir $deplibs"
   2784 	      test -n "$add" && deplibs="$add $deplibs"
   2785 	    fi
   2786 	  fi
   2787 	elif test "$linkmode" = prog; then
   2788 	  # Here we assume that one of hardcode_direct or hardcode_minus_L
   2789 	  # is not unsupported.  This is valid on all known static and
   2790 	  # shared platforms.
   2791 	  if test "$hardcode_direct" != unsupported; then
   2792 	    test -n "$old_library" && linklib="$old_library"
   2793 	    compile_deplibs="$dir/$linklib $compile_deplibs"
   2794 	    finalize_deplibs="$dir/$linklib $finalize_deplibs"
   2795 	  else
   2796 	    compile_deplibs="-l$name -L$dir $compile_deplibs"
   2797 	    finalize_deplibs="-l$name -L$dir $finalize_deplibs"
   2798 	  fi
   2799 	elif test "$build_libtool_libs" = yes; then
   2800 	  # Not a shared library
   2801 	  if test "$deplibs_check_method" != pass_all; then
   2802 	    # We're trying link a shared library against a static one
   2803 	    # but the system doesn't support it.
   2804 
   2805 	    # Just print a warning and add the library to dependency_libs so
   2806 	    # that the program can be linked against the static library.
   2807 	    $echo
   2808 	    $echo "*** Warning: This system can not link to static lib archive $lib."
   2809 	    $echo "*** I have the capability to make that library automatically link in when"
   2810 	    $echo "*** you link to this library.  But I can only do this if you have a"
   2811 	    $echo "*** shared version of the library, which you do not appear to have."
   2812 	    if test "$module" = yes; then
   2813 	      $echo "*** But as you try to build a module library, libtool will still create "
   2814 	      $echo "*** a static module, that should work as long as the dlopening application"
   2815 	      $echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
   2816 	      if test -z "$global_symbol_pipe"; then
   2817 		$echo
   2818 		$echo "*** However, this would only work if libtool was able to extract symbol"
   2819 		$echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
   2820 		$echo "*** not find such a program.  So, this module is probably useless."
   2821 		$echo "*** \`nm' from GNU binutils and a full rebuild may help."
   2822 	      fi
   2823 	      if test "$build_old_libs" = no; then
   2824 		build_libtool_libs=module
   2825 		build_old_libs=yes
   2826 	      else
   2827 		build_libtool_libs=no
   2828 	      fi
   2829 	    fi
   2830 	  else
   2831 	    deplibs="$dir/$old_library $deplibs"
   2832 	    link_static=yes
   2833 	  fi
   2834 	fi # link shared/static library?
   2835 
   2836 	if test "$linkmode" = lib; then
   2837 	  if test -n "$dependency_libs" &&
   2838 	     { test "$hardcode_into_libs" != yes ||
   2839 	       test "$build_old_libs" = yes ||
   2840 	       test "$link_static" = yes; }; then
   2841 	    # Extract -R from dependency_libs
   2842 	    temp_deplibs=
   2843 	    for libdir in $dependency_libs; do
   2844 	      case $libdir in
   2845 	      -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
   2846 		   case " $xrpath " in
   2847 		   *" $temp_xrpath "*) ;;
   2848 		   *) xrpath="$xrpath $temp_xrpath";;
   2849 		   esac;;
   2850 	      *) temp_deplibs="$temp_deplibs $libdir";;
   2851 	      esac
   2852 	    done
   2853 	    dependency_libs="$temp_deplibs"
   2854 	  fi
   2855 
   2856 	  newlib_search_path="$newlib_search_path $absdir"
   2857 	  # Link against this library
   2858 	  test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
   2859 	  # ... and its dependency_libs
   2860 	  tmp_libs=
   2861 	  for deplib in $dependency_libs; do
   2862 	    newdependency_libs="$deplib $newdependency_libs"
   2863 	    if test "X$duplicate_deps" = "Xyes" ; then
   2864 	      case "$tmp_libs " in
   2865 	      *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
   2866 	      esac
   2867 	    fi
   2868 	    tmp_libs="$tmp_libs $deplib"
   2869 	  done
   2870 
   2871 	  if test "$link_all_deplibs" != no; then
   2872 	    # Add the search paths of all dependency libraries
   2873 	    for deplib in $dependency_libs; do
   2874 	      case $deplib in
   2875 	      -L*) path="$deplib" ;;
   2876 	      *.la)
   2877 		dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
   2878 		test "X$dir" = "X$deplib" && dir="."
   2879 		# We need an absolute path.
   2880 		case $dir in
   2881 		[\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
   2882 		*)
   2883 		  absdir=`cd "$dir" && pwd`
   2884 		  if test -z "$absdir"; then
   2885 		    $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
   2886 		    absdir="$dir"
   2887 		  fi
   2888 		  ;;
   2889 		esac
   2890 		if grep "^installed=no" $deplib > /dev/null; then
   2891 		  path="$absdir/$objdir"
   2892 		else
   2893 		  eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
   2894 		  if test -z "$libdir"; then
   2895 		    $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
   2896 		    exit $EXIT_FAILURE
   2897 		  fi
   2898 		  if test "$absdir" != "$libdir"; then
   2899 		    $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
   2900 		  fi
   2901 		  path="$absdir"
   2902 		fi
   2903 		depdepl=
   2904 		case $host in
   2905 		*-*-darwin*)
   2906 		  # we do not want to link against static libs,
   2907 		  # but need to link against shared
   2908 		  eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
   2909 		  if test -n "$deplibrary_names" ; then
   2910 		    for tmp in $deplibrary_names ; do
   2911 		      depdepl=$tmp
   2912 		    done
   2913 		    if test -f "$path/$depdepl" ; then
   2914 		      depdepl="$path/$depdepl"
   2915 		    fi
   2916 		    # do not add paths which are already there
   2917 		    case " $newlib_search_path " in
   2918 		    *" $path "*) ;;
   2919 		    *) newlib_search_path="$newlib_search_path $path";;
   2920 		    esac
   2921 		  fi
   2922 		  path=""
   2923 		  ;;
   2924 		*)
   2925 		  path="-L$path"
   2926 		  ;;
   2927 		esac
   2928 		;;
   2929 	      -l*)
   2930 		case $host in
   2931 		*-*-darwin*)
   2932 		  # Again, we only want to link against shared libraries
   2933 		  eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"`
   2934 		  for tmp in $newlib_search_path ; do
   2935 		    if test -f "$tmp/lib$tmp_libs.dylib" ; then
   2936 		      eval depdepl="$tmp/lib$tmp_libs.dylib"
   2937 		      break
   2938 		    fi
   2939 		  done
   2940 		  path=""
   2941 		  ;;
   2942 		*) continue ;;
   2943 		esac
   2944 		;;
   2945 	      *) continue ;;
   2946 	      esac
   2947 	      case " $deplibs " in
   2948 	      *" $path "*) ;;
   2949 	      *) deplibs="$path $deplibs" ;;
   2950 	      esac
   2951 	      case " $deplibs " in
   2952 	      *" $depdepl "*) ;;
   2953 	      *) deplibs="$depdepl $deplibs" ;;
   2954 	      esac
   2955 	    done
   2956 	  fi # link_all_deplibs != no
   2957 	fi # linkmode = lib
   2958       done # for deplib in $libs
   2959       dependency_libs="$newdependency_libs"
   2960       if test "$pass" = dlpreopen; then
   2961 	# Link the dlpreopened libraries before other libraries
   2962 	for deplib in $save_deplibs; do
   2963 	  deplibs="$deplib $deplibs"
   2964 	done
   2965       fi
   2966       if test "$pass" != dlopen; then
   2967 	if test "$pass" != conv; then
   2968 	  # Make sure lib_search_path contains only unique directories.
   2969 	  lib_search_path=
   2970 	  for dir in $newlib_search_path; do
   2971 	    case "$lib_search_path " in
   2972 	    *" $dir "*) ;;
   2973 	    *) lib_search_path="$lib_search_path $dir" ;;
   2974 	    esac
   2975 	  done
   2976 	  newlib_search_path=
   2977 	fi
   2978 
   2979 	if test "$linkmode,$pass" != "prog,link"; then
   2980 	  vars="deplibs"
   2981 	else
   2982 	  vars="compile_deplibs finalize_deplibs"
   2983 	fi
   2984 	for var in $vars dependency_libs; do
   2985 	  # Add libraries to $var in reverse order
   2986 	  eval tmp_libs=\"\$$var\"
   2987 	  new_libs=
   2988 	  for deplib in $tmp_libs; do
   2989 	    # FIXME: Pedantically, this is the right thing to do, so
   2990 	    #        that some nasty dependency loop isn't accidentally
   2991 	    #        broken:
   2992 	    #new_libs="$deplib $new_libs"
   2993 	    # Pragmatically, this seems to cause very few problems in
   2994 	    # practice:
   2995 	    case $deplib in
   2996 	    -L*) new_libs="$deplib $new_libs" ;;
   2997 	    -R*) ;;
   2998 	    *)
   2999 	      # And here is the reason: when a library appears more
   3000 	      # than once as an explicit dependence of a library, or
   3001 	      # is implicitly linked in more than once by the
   3002 	      # compiler, it is considered special, and multiple
   3003 	      # occurrences thereof are not removed.  Compare this
   3004 	      # with having the same library being listed as a
   3005 	      # dependency of multiple other libraries: in this case,
   3006 	      # we know (pedantically, we assume) the library does not
   3007 	      # need to be listed more than once, so we keep only the
   3008 	      # last copy.  This is not always right, but it is rare
   3009 	      # enough that we require users that really mean to play
   3010 	      # such unportable linking tricks to link the library
   3011 	      # using -Wl,-lname, so that libtool does not consider it
   3012 	      # for duplicate removal.
   3013 	      case " $specialdeplibs " in
   3014 	      *" $deplib "*) new_libs="$deplib $new_libs" ;;
   3015 	      *)
   3016 		case " $new_libs " in
   3017 		*" $deplib "*) ;;
   3018 		*) new_libs="$deplib $new_libs" ;;
   3019 		esac
   3020 		;;
   3021 	      esac
   3022 	      ;;
   3023 	    esac
   3024 	  done
   3025 	  tmp_libs=
   3026 	  for deplib in $new_libs; do
   3027 	    case $deplib in
   3028 	    -L*)
   3029 	      case " $tmp_libs " in
   3030 	      *" $deplib "*) ;;
   3031 	      *) tmp_libs="$tmp_libs $deplib" ;;
   3032 	      esac
   3033 	      ;;
   3034 	    *) tmp_libs="$tmp_libs $deplib" ;;
   3035 	    esac
   3036 	  done
   3037 	  eval $var=\"$tmp_libs\"
   3038 	done # for var
   3039       fi
   3040       # Last step: remove runtime libs from dependency_libs
   3041       # (they stay in deplibs)
   3042       tmp_libs=
   3043       for i in $dependency_libs ; do
   3044 	case " $predeps $postdeps $compiler_lib_search_path " in
   3045 	*" $i "*)
   3046 	  i=""
   3047 	  ;;
   3048 	esac
   3049 	if test -n "$i" ; then
   3050 	  tmp_libs="$tmp_libs $i"
   3051 	fi
   3052       done
   3053       dependency_libs=$tmp_libs
   3054     done # for pass
   3055     if test "$linkmode" = prog; then
   3056       dlfiles="$newdlfiles"
   3057       dlprefiles="$newdlprefiles"
   3058     fi
   3059 
   3060     case $linkmode in
   3061     oldlib)
   3062       if test -n "$deplibs"; then
   3063 	$echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2
   3064       fi
   3065 
   3066       if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
   3067 	$echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
   3068       fi
   3069 
   3070       if test -n "$rpath"; then
   3071 	$echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2
   3072       fi
   3073 
   3074       if test -n "$xrpath"; then
   3075 	$echo "$modename: warning: \`-R' is ignored for archives" 1>&2
   3076       fi
   3077 
   3078       if test -n "$vinfo"; then
   3079 	$echo "$modename: warning: \`-version-info/-version-number' is ignored for archives" 1>&2
   3080       fi
   3081 
   3082       if test -n "$release"; then
   3083 	$echo "$modename: warning: \`-release' is ignored for archives" 1>&2
   3084       fi
   3085 
   3086       if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
   3087 	$echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2
   3088       fi
   3089 
   3090       # Now set the variables for building old libraries.
   3091       build_libtool_libs=no
   3092       oldlibs="$output"
   3093       objs="$objs$old_deplibs"
   3094       ;;
   3095 
   3096     lib)
   3097       # Make sure we only generate libraries of the form `libNAME.la'.
   3098       case $outputname in
   3099       lib*)
   3100 	name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
   3101 	eval shared_ext=\"$shrext_cmds\"
   3102 	eval libname=\"$libname_spec\"
   3103 	;;
   3104       *)
   3105 	if test "$module" = no; then
   3106 	  $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
   3107 	  $echo "$help" 1>&2
   3108 	  exit $EXIT_FAILURE
   3109 	fi
   3110 	if test "$need_lib_prefix" != no; then
   3111 	  # Add the "lib" prefix for modules if required
   3112 	  name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
   3113 	  eval shared_ext=\"$shrext_cmds\"
   3114 	  eval libname=\"$libname_spec\"
   3115 	else
   3116 	  libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
   3117 	fi
   3118 	;;
   3119       esac
   3120 
   3121       if test -n "$objs"; then
   3122 	if test "$deplibs_check_method" != pass_all; then
   3123 	  $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
   3124 	  exit $EXIT_FAILURE
   3125 	else
   3126 	  $echo
   3127 	  $echo "*** Warning: Linking the shared library $output against the non-libtool"
   3128 	  $echo "*** objects $objs is not portable!"
   3129 	  libobjs="$libobjs $objs"
   3130 	fi
   3131       fi
   3132 
   3133       if test "$dlself" != no; then
   3134 	$echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2
   3135       fi
   3136 
   3137       set dummy $rpath
   3138       if test "$#" -gt 2; then
   3139 	$echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
   3140       fi
   3141       install_libdir="$2"
   3142 
   3143       oldlibs=
   3144       if test -z "$rpath"; then
   3145 	if test "$build_libtool_libs" = yes; then
   3146 	  # Building a libtool convenience library.
   3147 	  # Some compilers have problems with a `.al' extension so
   3148 	  # convenience libraries should have the same extension an
   3149 	  # archive normally would.
   3150 	  oldlibs="$output_objdir/$libname.$libext $oldlibs"
   3151 	  build_libtool_libs=convenience
   3152 	  build_old_libs=yes
   3153 	fi
   3154 
   3155 	if test -n "$vinfo"; then
   3156 	  $echo "$modename: warning: \`-version-info/-version-number' is ignored for convenience libraries" 1>&2
   3157 	fi
   3158 
   3159 	if test -n "$release"; then
   3160 	  $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2
   3161 	fi
   3162       else
   3163 
   3164 	# Parse the version information argument.
   3165 	save_ifs="$IFS"; IFS=':'
   3166 	set dummy $vinfo 0 0 0
   3167 	IFS="$save_ifs"
   3168 
   3169 	if test -n "$8"; then
   3170 	  $echo "$modename: too many parameters to \`-version-info'" 1>&2
   3171 	  $echo "$help" 1>&2
   3172 	  exit $EXIT_FAILURE
   3173 	fi
   3174 
   3175 	# convert absolute version numbers to libtool ages
   3176 	# this retains compatibility with .la files and attempts
   3177 	# to make the code below a bit more comprehensible
   3178 
   3179 	case $vinfo_number in
   3180 	yes)
   3181 	  number_major="$2"
   3182 	  number_minor="$3"
   3183 	  number_revision="$4"
   3184 	  #
   3185 	  # There are really only two kinds -- those that
   3186 	  # use the current revision as the major version
   3187 	  # and those that subtract age and use age as
   3188 	  # a minor version.  But, then there is irix
   3189 	  # which has an extra 1 added just for fun
   3190 	  #
   3191 	  case $version_type in
   3192 	  darwin|linux|osf|windows)
   3193 	    current=`expr $number_major + $number_minor`
   3194 	    age="$number_minor"
   3195 	    revision="$number_revision"
   3196 	    ;;
   3197 	  freebsd-aout|freebsd-elf|sunos)
   3198 	    current="$number_major"
   3199 	    revision="$number_minor"
   3200 	    age="0"
   3201 	    ;;
   3202 	  irix|nonstopux)
   3203 	    current=`expr $number_major + $number_minor - 1`
   3204 	    age="$number_minor"
   3205 	    revision="$number_minor"
   3206 	    ;;
   3207 	  *)
   3208 	    $echo "$modename: unknown library version type \`$version_type'" 1>&2
   3209 	    $echo "Fatal configuration error.  See the $PACKAGE docs for more information." 1>&2
   3210 	    exit $EXIT_FAILURE
   3211 	    ;;
   3212 	  esac
   3213 	  ;;
   3214 	no)
   3215 	  current="$2"
   3216 	  revision="$3"
   3217 	  age="$4"
   3218 	  ;;
   3219 	esac
   3220 
   3221 	# Check that each of the things are valid numbers.
   3222 	case $current in
   3223 	0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
   3224 	*)
   3225 	  $echo "$modename: CURRENT \`$current' must be a nonnegative integer" 1>&2
   3226 	  $echo "$modename: \`$vinfo' is not valid version information" 1>&2
   3227 	  exit $EXIT_FAILURE
   3228 	  ;;
   3229 	esac
   3230 
   3231 	case $revision in
   3232 	0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
   3233 	*)
   3234 	  $echo "$modename: REVISION \`$revision' must be a nonnegative integer" 1>&2
   3235 	  $echo "$modename: \`$vinfo' is not valid version information" 1>&2
   3236 	  exit $EXIT_FAILURE
   3237 	  ;;
   3238 	esac
   3239 
   3240 	case $age in
   3241 	0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
   3242 	*)
   3243 	  $echo "$modename: AGE \`$age' must be a nonnegative integer" 1>&2
   3244 	  $echo "$modename: \`$vinfo' is not valid version information" 1>&2
   3245 	  exit $EXIT_FAILURE
   3246 	  ;;
   3247 	esac
   3248 
   3249 	if test "$age" -gt "$current"; then
   3250 	  $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
   3251 	  $echo "$modename: \`$vinfo' is not valid version information" 1>&2
   3252 	  exit $EXIT_FAILURE
   3253 	fi
   3254 
   3255 	# Calculate the version variables.
   3256 	major=
   3257 	versuffix=
   3258 	verstring=
   3259 	case $version_type in
   3260 	none) ;;
   3261 
   3262 	darwin)
   3263 	  # Like Linux, but with the current version available in
   3264 	  # verstring for coding it into the library header
   3265 	  major=.`expr $current - $age`
   3266 	  versuffix="$major.$age.$revision"
   3267 	  # Darwin ld doesn't like 0 for these options...
   3268 	  minor_current=`expr $current + 1`
   3269 	  verstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
   3270 	  ;;
   3271 
   3272 	freebsd-aout)
   3273 	  major=".$current"
   3274 	  versuffix=".$current.$revision";
   3275 	  ;;
   3276 
   3277 	freebsd-elf)
   3278 	  major=".$current"
   3279 	  versuffix=".$current";
   3280 	  ;;
   3281 
   3282 	irix | nonstopux)
   3283 	  major=`expr $current - $age + 1`
   3284 
   3285 	  case $version_type in
   3286 	    nonstopux) verstring_prefix=nonstopux ;;
   3287 	    *)         verstring_prefix=sgi ;;
   3288 	  esac
   3289 	  verstring="$verstring_prefix$major.$revision"
   3290 
   3291 	  # Add in all the interfaces that we are compatible with.
   3292 	  loop=$revision
   3293 	  while test "$loop" -ne 0; do
   3294 	    iface=`expr $revision - $loop`
   3295 	    loop=`expr $loop - 1`
   3296 	    verstring="$verstring_prefix$major.$iface:$verstring"
   3297 	  done
   3298 
   3299 	  # Before this point, $major must not contain `.'.
   3300 	  major=.$major
   3301 	  versuffix="$major.$revision"
   3302 	  ;;
   3303 
   3304 	linux)
   3305 	  major=.`expr $current - $age`
   3306 	  versuffix="$major.$age.$revision"
   3307 	  ;;
   3308 
   3309 	osf)
   3310 	  major=.`expr $current - $age`
   3311 	  versuffix=".$current.$age.$revision"
   3312 	  verstring="$current.$age.$revision"
   3313 
   3314 	  # Add in all the interfaces that we are compatible with.
   3315 	  loop=$age
   3316 	  while test "$loop" -ne 0; do
   3317 	    iface=`expr $current - $loop`
   3318 	    loop=`expr $loop - 1`
   3319 	    verstring="$verstring:${iface}.0"
   3320 	  done
   3321 
   3322 	  # Make executables depend on our current version.
   3323 	  verstring="$verstring:${current}.0"
   3324 	  ;;
   3325 
   3326 	sunos)
   3327 	  major=".$current"
   3328 	  versuffix=".$current.$revision"
   3329 	  ;;
   3330 
   3331 	windows)
   3332 	  # Use '-' rather than '.', since we only want one
   3333 	  # extension on DOS 8.3 filesystems.
   3334 	  major=`expr $current - $age`
   3335 	  versuffix="-$major"
   3336 	  ;;
   3337 
   3338 	*)
   3339 	  $echo "$modename: unknown library version type \`$version_type'" 1>&2
   3340 	  $echo "Fatal configuration error.  See the $PACKAGE docs for more information." 1>&2
   3341 	  exit $EXIT_FAILURE
   3342 	  ;;
   3343 	esac
   3344 
   3345 	# Clear the version info if we defaulted, and they specified a release.
   3346 	if test -z "$vinfo" && test -n "$release"; then
   3347 	  major=
   3348 	  case $version_type in
   3349 	  darwin)
   3350 	    # we can't check for "0.0" in archive_cmds due to quoting
   3351 	    # problems, so we reset it completely
   3352 	    verstring=
   3353 	    ;;
   3354 	  *)
   3355 	    verstring="0.0"
   3356 	    ;;
   3357 	  esac
   3358 	  if test "$need_version" = no; then
   3359 	    versuffix=
   3360 	  else
   3361 	    versuffix=".0.0"
   3362 	  fi
   3363 	fi
   3364 
   3365 	# Remove version info from name if versioning should be avoided
   3366 	if test "$avoid_version" = yes && test "$need_version" = no; then
   3367 	  major=
   3368 	  versuffix=
   3369 	  verstring=""
   3370 	fi
   3371 
   3372 	# Check to see if the archive will have undefined symbols.
   3373 	if test "$allow_undefined" = yes; then
   3374 	  if test "$allow_undefined_flag" = unsupported; then
   3375 	    $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
   3376 	    build_libtool_libs=no
   3377 	    build_old_libs=yes
   3378 	  fi
   3379 	else
   3380 	  # Don't allow undefined symbols.
   3381 	  allow_undefined_flag="$no_undefined_flag"
   3382 	fi
   3383       fi
   3384 
   3385       if test "$mode" != relink; then
   3386 	# Remove our outputs, but don't remove object files since they
   3387 	# may have been created when compiling PIC objects.
   3388 	removelist=
   3389 	tempremovelist=`$echo "$output_objdir/*"`
   3390 	for p in $tempremovelist; do
   3391 	  case $p in
   3392 	    *.$objext)
   3393 	       ;;
   3394 	    $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
   3395 	       if test "X$precious_files_regex" != "X"; then
   3396 	         if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
   3397 	         then
   3398 		   continue
   3399 		 fi
   3400 	       fi
   3401 	       removelist="$removelist $p"
   3402 	       ;;
   3403 	    *) ;;
   3404 	  esac
   3405 	done
   3406 	if test -n "$removelist"; then
   3407 	  $show "${rm}r $removelist"
   3408 	  $run ${rm}r $removelist
   3409 	fi
   3410       fi
   3411 
   3412       # Now set the variables for building old libraries.
   3413       if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
   3414 	oldlibs="$oldlibs $output_objdir/$libname.$libext"
   3415 
   3416 	# Transform .lo files to .o files.
   3417 	oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
   3418       fi
   3419 
   3420       # Eliminate all temporary directories.
   3421       for path in $notinst_path; do
   3422 	lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
   3423 	deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
   3424 	dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
   3425       done
   3426 
   3427       if test -n "$xrpath"; then
   3428 	# If the user specified any rpath flags, then add them.
   3429 	temp_xrpath=
   3430 	for libdir in $xrpath; do
   3431 	  temp_xrpath="$temp_xrpath -R$libdir"
   3432 	  case "$finalize_rpath " in
   3433 	  *" $libdir "*) ;;
   3434 	  *) finalize_rpath="$finalize_rpath $libdir" ;;
   3435 	  esac
   3436 	done
   3437 	if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
   3438 	  dependency_libs="$temp_xrpath $dependency_libs"
   3439 	fi
   3440       fi
   3441 
   3442       # Make sure dlfiles contains only unique files that won't be dlpreopened
   3443       old_dlfiles="$dlfiles"
   3444       dlfiles=
   3445       for lib in $old_dlfiles; do
   3446 	case " $dlprefiles $dlfiles " in
   3447 	*" $lib "*) ;;
   3448 	*) dlfiles="$dlfiles $lib" ;;
   3449 	esac
   3450       done
   3451 
   3452       # Make sure dlprefiles contains only unique files
   3453       old_dlprefiles="$dlprefiles"
   3454       dlprefiles=
   3455       for lib in $old_dlprefiles; do
   3456 	case "$dlprefiles " in
   3457 	*" $lib "*) ;;
   3458 	*) dlprefiles="$dlprefiles $lib" ;;
   3459 	esac
   3460       done
   3461 
   3462       if test "$build_libtool_libs" = yes; then
   3463 	if test -n "$rpath"; then
   3464 	  case $host in
   3465 	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
   3466 	    # these systems don't actually have a c library (as such)!
   3467 	    ;;
   3468 	  *-*-rhapsody* | *-*-darwin1.[012])
   3469 	    # Rhapsody C library is in the System framework
   3470 	    deplibs="$deplibs -framework System"
   3471 	    ;;
   3472 	  *-*-netbsd*)
   3473 	    # Don't link with libc until the a.out ld.so is fixed.
   3474 	    ;;
   3475 	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
   3476 	    # Do not include libc due to us having libc/libc_r.
   3477 	    ;;
   3478 	  *-*-sco3.2v5* | *-*-sco5v6*)
   3479 	    # Causes problems with __ctype
   3480 	    ;;
   3481 	  *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
   3482 	    # Compiler inserts libc in the correct place for threads to work
   3483 	    ;;
   3484  	  *)
   3485 	    # Add libc to deplibs on all other systems if necessary.
   3486 	    if test "$build_libtool_need_lc" = "yes"; then
   3487 	      deplibs="$deplibs -lc"
   3488 	    fi
   3489 	    ;;
   3490 	  esac
   3491 	fi
   3492 
   3493 	# Transform deplibs into only deplibs that can be linked in shared.
   3494 	name_save=$name
   3495 	libname_save=$libname
   3496 	release_save=$release
   3497 	versuffix_save=$versuffix
   3498 	major_save=$major
   3499 	# I'm not sure if I'm treating the release correctly.  I think
   3500 	# release should show up in the -l (ie -lgmp5) so we don't want to
   3501 	# add it in twice.  Is that correct?
   3502 	release=""
   3503 	versuffix=""
   3504 	major=""
   3505 	newdeplibs=
   3506 	droppeddeps=no
   3507 	case $deplibs_check_method in
   3508 	pass_all)
   3509 	  # Don't check for shared/static.  Everything works.
   3510 	  # This might be a little naive.  We might want to check
   3511 	  # whether the library exists or not.  But this is on
   3512 	  # osf3 & osf4 and I'm not really sure... Just
   3513 	  # implementing what was already the behavior.
   3514 	  newdeplibs=$deplibs
   3515 	  ;;
   3516 	test_compile)
   3517 	  # This code stresses the "libraries are programs" paradigm to its
   3518 	  # limits. Maybe even breaks it.  We compile a program, linking it
   3519 	  # against the deplibs as a proxy for the library.  Then we can check
   3520 	  # whether they linked in statically or dynamically with ldd.
   3521 	  $rm conftest.c
   3522 	  cat > conftest.c <<EOF
   3523 	  int main() { return 0; }
   3524 EOF
   3525 	  $rm conftest
   3526 	  $LTCC $LTCFLAGS -o conftest conftest.c $deplibs
   3527 	  if test "$?" -eq 0 ; then
   3528 	    ldd_output=`ldd conftest`
   3529 	    for i in $deplibs; do
   3530 	      name=`expr $i : '-l\(.*\)'`
   3531 	      # If $name is empty we are operating on a -L argument.
   3532               if test "$name" != "" && test "$name" -ne "0"; then
   3533 		if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
   3534 		  case " $predeps $postdeps " in
   3535 		  *" $i "*)
   3536 		    newdeplibs="$newdeplibs $i"
   3537 		    i=""
   3538 		    ;;
   3539 		  esac
   3540 	        fi
   3541 		if test -n "$i" ; then
   3542 		  libname=`eval \\$echo \"$libname_spec\"`
   3543 		  deplib_matches=`eval \\$echo \"$library_names_spec\"`
   3544 		  set dummy $deplib_matches
   3545 		  deplib_match=$2
   3546 		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
   3547 		    newdeplibs="$newdeplibs $i"
   3548 		  else
   3549 		    droppeddeps=yes
   3550 		    $echo
   3551 		    $echo "*** Warning: dynamic linker does not accept needed library $i."
   3552 		    $echo "*** I have the capability to make that library automatically link in when"
   3553 		    $echo "*** you link to this library.  But I can only do this if you have a"
   3554 		    $echo "*** shared version of the library, which I believe you do not have"
   3555 		    $echo "*** because a test_compile did reveal that the linker did not use it for"
   3556 		    $echo "*** its dynamic dependency list that programs get resolved with at runtime."
   3557 		  fi
   3558 		fi
   3559 	      else
   3560 		newdeplibs="$newdeplibs $i"
   3561 	      fi
   3562 	    done
   3563 	  else
   3564 	    # Error occurred in the first compile.  Let's try to salvage
   3565 	    # the situation: Compile a separate program for each library.
   3566 	    for i in $deplibs; do
   3567 	      name=`expr $i : '-l\(.*\)'`
   3568 	      # If $name is empty we are operating on a -L argument.
   3569               if test "$name" != "" && test "$name" != "0"; then
   3570 		$rm conftest
   3571 		$LTCC $LTCFLAGS -o conftest conftest.c $i
   3572 		# Did it work?
   3573 		if test "$?" -eq 0 ; then
   3574 		  ldd_output=`ldd conftest`
   3575 		  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
   3576 		    case " $predeps $postdeps " in
   3577 		    *" $i "*)
   3578 		      newdeplibs="$newdeplibs $i"
   3579 		      i=""
   3580 		      ;;
   3581 		    esac
   3582 		  fi
   3583 		  if test -n "$i" ; then
   3584 		    libname=`eval \\$echo \"$libname_spec\"`
   3585 		    deplib_matches=`eval \\$echo \"$library_names_spec\"`
   3586 		    set dummy $deplib_matches
   3587 		    deplib_match=$2
   3588 		    if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
   3589 		      newdeplibs="$newdeplibs $i"
   3590 		    else
   3591 		      droppeddeps=yes
   3592 		      $echo
   3593 		      $echo "*** Warning: dynamic linker does not accept needed library $i."
   3594 		      $echo "*** I have the capability to make that library automatically link in when"
   3595 		      $echo "*** you link to this library.  But I can only do this if you have a"
   3596 		      $echo "*** shared version of the library, which you do not appear to have"
   3597 		      $echo "*** because a test_compile did reveal that the linker did not use this one"
   3598 		      $echo "*** as a dynamic dependency that programs can get resolved with at runtime."
   3599 		    fi
   3600 		  fi
   3601 		else
   3602 		  droppeddeps=yes
   3603 		  $echo
   3604 		  $echo "*** Warning!  Library $i is needed by this library but I was not able to"
   3605 		  $echo "***  make it link in!  You will probably need to install it or some"
   3606 		  $echo "*** library that it depends on before this library will be fully"
   3607 		  $echo "*** functional.  Installing it before continuing would be even better."
   3608 		fi
   3609 	      else
   3610 		newdeplibs="$newdeplibs $i"
   3611 	      fi
   3612 	    done
   3613 	  fi
   3614 	  ;;
   3615 	file_magic*)
   3616 	  set dummy $deplibs_check_method
   3617 	  file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
   3618 	  for a_deplib in $deplibs; do
   3619 	    name=`expr $a_deplib : '-l\(.*\)'`
   3620 	    # If $name is empty we are operating on a -L argument.
   3621             if test "$name" != "" && test  "$name" != "0"; then
   3622 	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
   3623 		case " $predeps $postdeps " in
   3624 		*" $a_deplib "*)
   3625 		  newdeplibs="$newdeplibs $a_deplib"
   3626 		  a_deplib=""
   3627 		  ;;
   3628 		esac
   3629 	      fi
   3630 	      if test -n "$a_deplib" ; then
   3631 		libname=`eval \\$echo \"$libname_spec\"`
   3632 		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
   3633 		  potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
   3634 		  for potent_lib in $potential_libs; do
   3635 		      # Follow soft links.
   3636 		      if ls -lLd "$potent_lib" 2>/dev/null \
   3637 			 | grep " -> " >/dev/null; then
   3638 			continue
   3639 		      fi
   3640 		      # The statement above tries to avoid entering an
   3641 		      # endless loop below, in case of cyclic links.
   3642 		      # We might still enter an endless loop, since a link
   3643 		      # loop can be closed while we follow links,
   3644 		      # but so what?
   3645 		      potlib="$potent_lib"
   3646 		      while test -h "$potlib" 2>/dev/null; do
   3647 			potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
   3648 			case $potliblink in
   3649 			[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
   3650 			*) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
   3651 			esac
   3652 		      done
   3653 		      if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
   3654 			 | ${SED} 10q \
   3655 			 | $EGREP "$file_magic_regex" > /dev/null; then
   3656 			newdeplibs="$newdeplibs $a_deplib"
   3657 			a_deplib=""
   3658 			break 2
   3659 		      fi
   3660 		  done
   3661 		done
   3662 	      fi
   3663 	      if test -n "$a_deplib" ; then
   3664 		droppeddeps=yes
   3665 		$echo
   3666 		$echo "*** Warning: linker path does not have real file for library $a_deplib."
   3667 		$echo "*** I have the capability to make that library automatically link in when"
   3668 		$echo "*** you link to this library.  But I can only do this if you have a"
   3669 		$echo "*** shared version of the library, which you do not appear to have"
   3670 		$echo "*** because I did check the linker path looking for a file starting"
   3671 		if test -z "$potlib" ; then
   3672 		  $echo "*** with $libname but no candidates were found. (...for file magic test)"
   3673 		else
   3674 		  $echo "*** with $libname and none of the candidates passed a file format test"
   3675 		  $echo "*** using a file magic. Last file checked: $potlib"
   3676 		fi
   3677 	      fi
   3678 	    else
   3679 	      # Add a -L argument.
   3680 	      newdeplibs="$newdeplibs $a_deplib"
   3681 	    fi
   3682 	  done # Gone through all deplibs.
   3683 	  ;;
   3684 	match_pattern*)
   3685 	  set dummy $deplibs_check_method
   3686 	  match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
   3687 	  for a_deplib in $deplibs; do
   3688 	    name=`expr $a_deplib : '-l\(.*\)'`
   3689 	    # If $name is empty we are operating on a -L argument.
   3690 	    if test -n "$name" && test "$name" != "0"; then
   3691 	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
   3692 		case " $predeps $postdeps " in
   3693 		*" $a_deplib "*)
   3694 		  newdeplibs="$newdeplibs $a_deplib"
   3695 		  a_deplib=""
   3696 		  ;;
   3697 		esac
   3698 	      fi
   3699 	      if test -n "$a_deplib" ; then
   3700 		libname=`eval \\$echo \"$libname_spec\"`
   3701 		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
   3702 		  potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
   3703 		  for potent_lib in $potential_libs; do
   3704 		    potlib="$potent_lib" # see symlink-check above in file_magic test
   3705 		    if eval $echo \"$potent_lib\" 2>/dev/null \
   3706 		        | ${SED} 10q \
   3707 		        | $EGREP "$match_pattern_regex" > /dev/null; then
   3708 		      newdeplibs="$newdeplibs $a_deplib"
   3709 		      a_deplib=""
   3710 		      break 2
   3711 		    fi
   3712 		  done
   3713 		done
   3714 	      fi
   3715 	      if test -n "$a_deplib" ; then
   3716 		droppeddeps=yes
   3717 		$echo
   3718 		$echo "*** Warning: linker path does not have real file for library $a_deplib."
   3719 		$echo "*** I have the capability to make that library automatically link in when"
   3720 		$echo "*** you link to this library.  But I can only do this if you have a"
   3721 		$echo "*** shared version of the library, which you do not appear to have"
   3722 		$echo "*** because I did check the linker path looking for a file starting"
   3723 		if test -z "$potlib" ; then
   3724 		  $echo "*** with $libname but no candidates were found. (...for regex pattern test)"
   3725 		else
   3726 		  $echo "*** with $libname and none of the candidates passed a file format test"
   3727 		  $echo "*** using a regex pattern. Last file checked: $potlib"
   3728 		fi
   3729 	      fi
   3730 	    else
   3731 	      # Add a -L argument.
   3732 	      newdeplibs="$newdeplibs $a_deplib"
   3733 	    fi
   3734 	  done # Gone through all deplibs.
   3735 	  ;;
   3736 	none | unknown | *)
   3737 	  newdeplibs=""
   3738 	  tmp_deplibs=`$echo "X $deplibs" | $Xsed -e 's/ -lc$//' \
   3739 	    -e 's/ -[LR][^ ]*//g'`
   3740 	  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
   3741 	    for i in $predeps $postdeps ; do
   3742 	      # can't use Xsed below, because $i might contain '/'
   3743 	      tmp_deplibs=`$echo "X $tmp_deplibs" | ${SED} -e "1s,^X,," -e "s,$i,,"`
   3744 	    done
   3745 	  fi
   3746 	  if $echo "X $tmp_deplibs" | $Xsed -e 's/[ 	]//g' \
   3747 	    | grep . >/dev/null; then
   3748 	    $echo
   3749 	    if test "X$deplibs_check_method" = "Xnone"; then
   3750 	      $echo "*** Warning: inter-library dependencies are not supported in this platform."
   3751 	    else
   3752 	      $echo "*** Warning: inter-library dependencies are not known to be supported."
   3753 	    fi
   3754 	    $echo "*** All declared inter-library dependencies are being dropped."
   3755 	    droppeddeps=yes
   3756 	  fi
   3757 	  ;;
   3758 	esac
   3759 	versuffix=$versuffix_save
   3760 	major=$major_save
   3761 	release=$release_save
   3762 	libname=$libname_save
   3763 	name=$name_save
   3764 
   3765 	case $host in
   3766 	*-*-rhapsody* | *-*-darwin1.[012])
   3767 	  # On Rhapsody replace the C library is the System framework
   3768 	  newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
   3769 	  ;;
   3770 	esac
   3771 
   3772 	if test "$droppeddeps" = yes; then
   3773 	  if test "$module" = yes; then
   3774 	    $echo
   3775 	    $echo "*** Warning: libtool could not satisfy all declared inter-library"
   3776 	    $echo "*** dependencies of module $libname.  Therefore, libtool will create"
   3777 	    $echo "*** a static module, that should work as long as the dlopening"
   3778 	    $echo "*** application is linked with the -dlopen flag."
   3779 	    if test -z "$global_symbol_pipe"; then
   3780 	      $echo
   3781 	      $echo "*** However, this would only work if libtool was able to extract symbol"
   3782 	      $echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
   3783 	      $echo "*** not find such a program.  So, this module is probably useless."
   3784 	      $echo "*** \`nm' from GNU binutils and a full rebuild may help."
   3785 	    fi
   3786 	    if test "$build_old_libs" = no; then
   3787 	      oldlibs="$output_objdir/$libname.$libext"
   3788 	      build_libtool_libs=module
   3789 	      build_old_libs=yes
   3790 	    else
   3791 	      build_libtool_libs=no
   3792 	    fi
   3793 	  else
   3794 	    $echo "*** The inter-library dependencies that have been dropped here will be"
   3795 	    $echo "*** automatically added whenever a program is linked with this library"
   3796 	    $echo "*** or is declared to -dlopen it."
   3797 
   3798 	    if test "$allow_undefined" = no; then
   3799 	      $echo
   3800 	      $echo "*** Since this library must not contain undefined symbols,"
   3801 	      $echo "*** because either the platform does not support them or"
   3802 	      $echo "*** it was explicitly requested with -no-undefined,"
   3803 	      $echo "*** libtool will only create a static version of it."
   3804 	      if test "$build_old_libs" = no; then
   3805 		oldlibs="$output_objdir/$libname.$libext"
   3806 		build_libtool_libs=module
   3807 		build_old_libs=yes
   3808 	      else
   3809 		build_libtool_libs=no
   3810 	      fi
   3811 	    fi
   3812 	  fi
   3813 	fi
   3814 	# Done checking deplibs!
   3815 	deplibs=$newdeplibs
   3816       fi
   3817 
   3818 
   3819       # move library search paths that coincide with paths to not yet
   3820       # installed libraries to the beginning of the library search list
   3821       new_libs=
   3822       for path in $notinst_path; do
   3823 	case " $new_libs " in
   3824 	*" -L$path/$objdir "*) ;;
   3825 	*)
   3826 	  case " $deplibs " in
   3827 	  *" -L$path/$objdir "*)
   3828 	    new_libs="$new_libs -L$path/$objdir" ;;
   3829 	  esac
   3830 	  ;;
   3831 	esac
   3832       done
   3833       for deplib in $deplibs; do
   3834 	case $deplib in
   3835 	-L*)
   3836 	  case " $new_libs " in
   3837 	  *" $deplib "*) ;;
   3838 	  *) new_libs="$new_libs $deplib" ;;
   3839 	  esac
   3840 	  ;;
   3841 	*) new_libs="$new_libs $deplib" ;;
   3842 	esac
   3843       done
   3844       deplibs="$new_libs"
   3845 
   3846 
   3847       # All the library-specific variables (install_libdir is set above).
   3848       library_names=
   3849       old_library=
   3850       dlname=
   3851 
   3852       # Test again, we may have decided not to build it any more
   3853       if test "$build_libtool_libs" = yes; then
   3854 	if test "$hardcode_into_libs" = yes; then
   3855 	  # Hardcode the library paths
   3856 	  hardcode_libdirs=
   3857 	  dep_rpath=
   3858 	  rpath="$finalize_rpath"
   3859 	  test "$mode" != relink && rpath="$compile_rpath$rpath"
   3860 	  for libdir in $rpath; do
   3861 	    if test -n "$hardcode_libdir_flag_spec"; then
   3862 	      if test -n "$hardcode_libdir_separator"; then
   3863 		if test -z "$hardcode_libdirs"; then
   3864 		  hardcode_libdirs="$libdir"
   3865 		else
   3866 		  # Just accumulate the unique libdirs.
   3867 		  case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
   3868 		  *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
   3869 		    ;;
   3870 		  *)
   3871 		    hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
   3872 		    ;;
   3873 		  esac
   3874 		fi
   3875 	      else
   3876 		eval flag=\"$hardcode_libdir_flag_spec\"
   3877 		dep_rpath="$dep_rpath $flag"
   3878 	      fi
   3879 	    elif test -n "$runpath_var"; then
   3880 	      case "$perm_rpath " in
   3881 	      *" $libdir "*) ;;
   3882 	      *) perm_rpath="$perm_rpath $libdir" ;;
   3883 	      esac
   3884 	    fi
   3885 	  done
   3886 	  # Substitute the hardcoded libdirs into the rpath.
   3887 	  if test -n "$hardcode_libdir_separator" &&
   3888 	     test -n "$hardcode_libdirs"; then
   3889 	    libdir="$hardcode_libdirs"
   3890 	    if test -n "$hardcode_libdir_flag_spec_ld"; then
   3891 	      eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
   3892 	    else
   3893 	      eval dep_rpath=\"$hardcode_libdir_flag_spec\"
   3894 	    fi
   3895 	  fi
   3896 	  if test -n "$runpath_var" && test -n "$perm_rpath"; then
   3897 	    # We should set the runpath_var.
   3898 	    rpath=
   3899 	    for dir in $perm_rpath; do
   3900 	      rpath="$rpath$dir:"
   3901 	    done
   3902 	    eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
   3903 	  fi
   3904 	  test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
   3905 	fi
   3906 
   3907 	shlibpath="$finalize_shlibpath"
   3908 	test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
   3909 	if test -n "$shlibpath"; then
   3910 	  eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
   3911 	fi
   3912 
   3913 	# Get the real and link names of the library.
   3914 	eval shared_ext=\"$shrext_cmds\"
   3915 	eval library_names=\"$library_names_spec\"
   3916 	set dummy $library_names
   3917 	realname="$2"
   3918 	shift; shift
   3919 
   3920 	if test -n "$soname_spec"; then
   3921 	  eval soname=\"$soname_spec\"
   3922 	else
   3923 	  soname="$realname"
   3924 	fi
   3925 	if test -z "$dlname"; then
   3926 	  dlname=$soname
   3927 	fi
   3928 
   3929 	lib="$output_objdir/$realname"
   3930 	linknames=
   3931 	for link
   3932 	do
   3933 	  linknames="$linknames $link"
   3934 	done
   3935 
   3936 	# Use standard objects if they are pic
   3937 	test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
   3938 
   3939 	# Prepare the list of exported symbols
   3940 	if test -z "$export_symbols"; then
   3941 	  if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
   3942 	    $show "generating symbol list for \`$libname.la'"
   3943 	    export_symbols="$output_objdir/$libname.exp"
   3944 	    $run $rm $export_symbols
   3945 	    cmds=$export_symbols_cmds
   3946 	    save_ifs="$IFS"; IFS='~'
   3947 	    for cmd in $cmds; do
   3948 	      IFS="$save_ifs"
   3949 	      eval cmd=\"$cmd\"
   3950 	      if len=`expr "X$cmd" : ".*"` &&
   3951 	       test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
   3952 	        $show "$cmd"
   3953 	        $run eval "$cmd" || exit $?
   3954 	        skipped_export=false
   3955 	      else
   3956 	        # The command line is too long to execute in one step.
   3957 	        $show "using reloadable object file for export list..."
   3958 	        skipped_export=:
   3959 		# Break out early, otherwise skipped_export may be
   3960 		# set to false by a later but shorter cmd.
   3961 		break
   3962 	      fi
   3963 	    done
   3964 	    IFS="$save_ifs"
   3965 	    if test -n "$export_symbols_regex"; then
   3966 	      $show "$EGREP -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\""
   3967 	      $run eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
   3968 	      $show "$mv \"${export_symbols}T\" \"$export_symbols\""
   3969 	      $run eval '$mv "${export_symbols}T" "$export_symbols"'
   3970 	    fi
   3971 	  fi
   3972 	fi
   3973 
   3974 	if test -n "$export_symbols" && test -n "$include_expsyms"; then
   3975 	  $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"'
   3976 	fi
   3977 
   3978 	tmp_deplibs=
   3979 	for test_deplib in $deplibs; do
   3980 		case " $convenience " in
   3981 		*" $test_deplib "*) ;;
   3982 		*)
   3983 			tmp_deplibs="$tmp_deplibs $test_deplib"
   3984 			;;
   3985 		esac
   3986 	done
   3987 	deplibs="$tmp_deplibs"
   3988 
   3989 	if test -n "$convenience"; then
   3990 	  if test -n "$whole_archive_flag_spec"; then
   3991 	    save_libobjs=$libobjs
   3992 	    eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
   3993 	  else
   3994 	    gentop="$output_objdir/${outputname}x"
   3995 	    generated="$generated $gentop"
   3996 
   3997 	    func_extract_archives $gentop $convenience
   3998 	    libobjs="$libobjs $func_extract_archives_result"
   3999 	  fi
   4000 	fi
   4001 	
   4002 	if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
   4003 	  eval flag=\"$thread_safe_flag_spec\"
   4004 	  linker_flags="$linker_flags $flag"
   4005 	fi
   4006 
   4007 	# Make a backup of the uninstalled library when relinking
   4008 	if test "$mode" = relink; then
   4009 	  $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
   4010 	fi
   4011 
   4012 	# Do each of the archive commands.
   4013 	if test "$module" = yes && test -n "$module_cmds" ; then
   4014 	  if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
   4015 	    eval test_cmds=\"$module_expsym_cmds\"
   4016 	    cmds=$module_expsym_cmds
   4017 	  else
   4018 	    eval test_cmds=\"$module_cmds\"
   4019 	    cmds=$module_cmds
   4020 	  fi
   4021 	else
   4022 	if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
   4023 	  eval test_cmds=\"$archive_expsym_cmds\"
   4024 	  cmds=$archive_expsym_cmds
   4025 	else
   4026 	  eval test_cmds=\"$archive_cmds\"
   4027 	  cmds=$archive_cmds
   4028 	  fi
   4029 	fi
   4030 
   4031 	if test "X$skipped_export" != "X:" &&
   4032 	   len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
   4033 	   test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
   4034 	  :
   4035 	else
   4036 	  # The command line is too long to link in one step, link piecewise.
   4037 	  $echo "creating reloadable object files..."
   4038 
   4039 	  # Save the value of $output and $libobjs because we want to
   4040 	  # use them later.  If we have whole_archive_flag_spec, we
   4041 	  # want to use save_libobjs as it was before
   4042 	  # whole_archive_flag_spec was expanded, because we can't
   4043 	  # assume the linker understands whole_archive_flag_spec.
   4044 	  # This may have to be revisited, in case too many
   4045 	  # convenience libraries get linked in and end up exceeding
   4046 	  # the spec.
   4047 	  if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
   4048 	    save_libobjs=$libobjs
   4049 	  fi
   4050 	  save_output=$output
   4051 	  output_la=`$echo "X$output" | $Xsed -e "$basename"`
   4052 
   4053 	  # Clear the reloadable object creation command queue and
   4054 	  # initialize k to one.
   4055 	  test_cmds=
   4056 	  concat_cmds=
   4057 	  objlist=
   4058 	  delfiles=
   4059 	  last_robj=
   4060 	  k=1
   4061 	  output=$output_objdir/$output_la-${k}.$objext
   4062 	  # Loop over the list of objects to be linked.
   4063 	  for obj in $save_libobjs
   4064 	  do
   4065 	    eval test_cmds=\"$reload_cmds $objlist $last_robj\"
   4066 	    if test "X$objlist" = X ||
   4067 	       { len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
   4068 		 test "$len" -le "$max_cmd_len"; }; then
   4069 	      objlist="$objlist $obj"
   4070 	    else
   4071 	      # The command $test_cmds is almost too long, add a
   4072 	      # command to the queue.
   4073 	      if test "$k" -eq 1 ; then
   4074 		# The first file doesn't have a previous command to add.
   4075 		eval concat_cmds=\"$reload_cmds $objlist $last_robj\"
   4076 	      else
   4077 		# All subsequent reloadable object files will link in
   4078 		# the last one created.
   4079 		eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\"
   4080 	      fi
   4081 	      last_robj=$output_objdir/$output_la-${k}.$objext
   4082 	      k=`expr $k + 1`
   4083 	      output=$output_objdir/$output_la-${k}.$objext
   4084 	      objlist=$obj
   4085 	      len=1
   4086 	    fi
   4087 	  done
   4088 	  # Handle the remaining objects by creating one last
   4089 	  # reloadable object file.  All subsequent reloadable object
   4090 	  # files will link in the last one created.
   4091 	  test -z "$concat_cmds" || concat_cmds=$concat_cmds~
   4092 	  eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\"
   4093 
   4094 	  if ${skipped_export-false}; then
   4095 	    $show "generating symbol list for \`$libname.la'"
   4096 	    export_symbols="$output_objdir/$libname.exp"
   4097 	    $run $rm $export_symbols
   4098 	    libobjs=$output
   4099 	    # Append the command to create the export file.
   4100 	    eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\"
   4101           fi
   4102 
   4103 	  # Set up a command to remove the reloadable object files
   4104 	  # after they are used.
   4105 	  i=0
   4106 	  while test "$i" -lt "$k"
   4107 	  do
   4108 	    i=`expr $i + 1`
   4109 	    delfiles="$delfiles $output_objdir/$output_la-${i}.$objext"
   4110 	  done
   4111 
   4112 	  $echo "creating a temporary reloadable object file: $output"
   4113 
   4114 	  # Loop through the commands generated above and execute them.
   4115 	  save_ifs="$IFS"; IFS='~'
   4116 	  for cmd in $concat_cmds; do
   4117 	    IFS="$save_ifs"
   4118 	    $show "$cmd"
   4119 	    $run eval "$cmd" || exit $?
   4120 	  done
   4121 	  IFS="$save_ifs"
   4122 
   4123 	  libobjs=$output
   4124 	  # Restore the value of output.
   4125 	  output=$save_output
   4126 
   4127 	  if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then
   4128 	    eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
   4129 	  fi
   4130 	  # Expand the library linking commands again to reset the
   4131 	  # value of $libobjs for piecewise linking.
   4132 
   4133 	  # Do each of the archive commands.
   4134 	  if test "$module" = yes && test -n "$module_cmds" ; then
   4135 	    if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
   4136 	      cmds=$module_expsym_cmds
   4137 	    else
   4138 	      cmds=$module_cmds
   4139 	    fi
   4140 	  else
   4141 	  if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
   4142 	    cmds=$archive_expsym_cmds
   4143 	  else
   4144 	    cmds=$archive_cmds
   4145 	    fi
   4146 	  fi
   4147 
   4148 	  # Append the command to remove the reloadable object files
   4149 	  # to the just-reset $cmds.
   4150 	  eval cmds=\"\$cmds~\$rm $delfiles\"
   4151 	fi
   4152 	save_ifs="$IFS"; IFS='~'
   4153 	for cmd in $cmds; do
   4154 	  IFS="$save_ifs"
   4155 	  eval cmd=\"$cmd\"
   4156 	  $show "$cmd"
   4157 	  $run eval "$cmd" || {
   4158 	    lt_exit=$?
   4159 
   4160 	    # Restore the uninstalled library and exit
   4161 	    if test "$mode" = relink; then
   4162 	      $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)'
   4163 	    fi
   4164 
   4165 	    exit $lt_exit
   4166 	  }
   4167 	done
   4168 	IFS="$save_ifs"
   4169 
   4170 	# Restore the uninstalled library and exit
   4171 	if test "$mode" = relink; then
   4172 	  $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
   4173 
   4174 	  if test -n "$convenience"; then
   4175 	    if test -z "$whole_archive_flag_spec"; then
   4176 	      $show "${rm}r $gentop"
   4177 	      $run ${rm}r "$gentop"
   4178 	    fi
   4179 	  fi
   4180 
   4181 	  exit $EXIT_SUCCESS
   4182 	fi
   4183 
   4184 	# Create links to the real library.
   4185 	for linkname in $linknames; do
   4186 	  if test "$realname" != "$linkname"; then
   4187 	    $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)"
   4188 	    $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $?
   4189 	  fi
   4190 	done
   4191 
   4192 	# If -module or -export-dynamic was specified, set the dlname.
   4193 	if test "$module" = yes || test "$export_dynamic" = yes; then
   4194 	  # On all known operating systems, these are identical.
   4195 	  dlname="$soname"
   4196 	fi
   4197       fi
   4198       ;;
   4199 
   4200     obj)
   4201       if test -n "$deplibs"; then
   4202 	$echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
   4203       fi
   4204 
   4205       if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
   4206 	$echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2
   4207       fi
   4208 
   4209       if test -n "$rpath"; then
   4210 	$echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2
   4211       fi
   4212 
   4213       if test -n "$xrpath"; then
   4214 	$echo "$modename: warning: \`-R' is ignored for objects" 1>&2
   4215       fi
   4216 
   4217       if test -n "$vinfo"; then
   4218 	$echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2
   4219       fi
   4220 
   4221       if test -n "$release"; then
   4222 	$echo "$modename: warning: \`-release' is ignored for objects" 1>&2
   4223       fi
   4224 
   4225       case $output in
   4226       *.lo)
   4227 	if test -n "$objs$old_deplibs"; then
   4228 	  $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
   4229 	  exit $EXIT_FAILURE
   4230 	fi
   4231 	libobj="$output"
   4232 	obj=`$echo "X$output" | $Xsed -e "$lo2o"`
   4233 	;;
   4234       *)
   4235 	libobj=
   4236 	obj="$output"
   4237 	;;
   4238       esac
   4239 
   4240       # Delete the old objects.
   4241       $run $rm $obj $libobj
   4242 
   4243       # Objects from convenience libraries.  This assumes
   4244       # single-version convenience libraries.  Whenever we create
   4245       # different ones for PIC/non-PIC, this we'll have to duplicate
   4246       # the extraction.
   4247       reload_conv_objs=
   4248       gentop=
   4249       # reload_cmds runs $LD directly, so let us get rid of
   4250       # -Wl from whole_archive_flag_spec
   4251       wl=
   4252 
   4253       if test -n "$convenience"; then
   4254 	if test -n "$whole_archive_flag_spec"; then
   4255 	  eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
   4256 	else
   4257 	  gentop="$output_objdir/${obj}x"
   4258 	  generated="$generated $gentop"
   4259 
   4260 	  func_extract_archives $gentop $convenience
   4261 	  reload_conv_objs="$reload_objs $func_extract_archives_result"
   4262 	fi
   4263       fi
   4264 
   4265       # Create the old-style object.
   4266       reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
   4267 
   4268       output="$obj"
   4269       cmds=$reload_cmds
   4270       save_ifs="$IFS"; IFS='~'
   4271       for cmd in $cmds; do
   4272 	IFS="$save_ifs"
   4273 	eval cmd=\"$cmd\"
   4274 	$show "$cmd"
   4275 	$run eval "$cmd" || exit $?
   4276       done
   4277       IFS="$save_ifs"
   4278 
   4279       # Exit if we aren't doing a library object file.
   4280       if test -z "$libobj"; then
   4281 	if test -n "$gentop"; then
   4282 	  $show "${rm}r $gentop"
   4283 	  $run ${rm}r $gentop
   4284 	fi
   4285 
   4286 	exit $EXIT_SUCCESS
   4287       fi
   4288 
   4289       if test "$build_libtool_libs" != yes; then
   4290 	if test -n "$gentop"; then
   4291 	  $show "${rm}r $gentop"
   4292 	  $run ${rm}r $gentop
   4293 	fi
   4294 
   4295 	# Create an invalid libtool object if no PIC, so that we don't
   4296 	# accidentally link it into a program.
   4297 	# $show "echo timestamp > $libobj"
   4298 	# $run eval "echo timestamp > $libobj" || exit $?
   4299 	exit $EXIT_SUCCESS
   4300       fi
   4301 
   4302       if test -n "$pic_flag" || test "$pic_mode" != default; then
   4303 	# Only do commands if we really have different PIC objects.
   4304 	reload_objs="$libobjs $reload_conv_objs"
   4305 	output="$libobj"
   4306 	cmds=$reload_cmds
   4307 	save_ifs="$IFS"; IFS='~'
   4308 	for cmd in $cmds; do
   4309 	  IFS="$save_ifs"
   4310 	  eval cmd=\"$cmd\"
   4311 	  $show "$cmd"
   4312 	  $run eval "$cmd" || exit $?
   4313 	done
   4314 	IFS="$save_ifs"
   4315       fi
   4316 
   4317       if test -n "$gentop"; then
   4318 	$show "${rm}r $gentop"
   4319 	$run ${rm}r $gentop
   4320       fi
   4321 
   4322       exit $EXIT_SUCCESS
   4323       ;;
   4324 
   4325     prog)
   4326       case $host in
   4327 	*cygwin*) output=`$echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
   4328       esac
   4329       if test -n "$vinfo"; then
   4330 	$echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
   4331       fi
   4332 
   4333       if test -n "$release"; then
   4334 	$echo "$modename: warning: \`-release' is ignored for programs" 1>&2
   4335       fi
   4336 
   4337       if test "$preload" = yes; then
   4338 	if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown &&
   4339 	   test "$dlopen_self_static" = unknown; then
   4340 	  $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
   4341 	fi
   4342       fi
   4343 
   4344       case $host in
   4345       *-*-rhapsody* | *-*-darwin1.[012])
   4346 	# On Rhapsody replace the C library is the System framework
   4347 	compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
   4348 	finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
   4349 	;;
   4350       esac
   4351 
   4352       case $host in
   4353       *darwin*)
   4354         # Don't allow lazy linking, it breaks C++ global constructors
   4355         if test "$tagname" = CXX ; then
   4356         compile_command="$compile_command ${wl}-bind_at_load"
   4357         finalize_command="$finalize_command ${wl}-bind_at_load"
   4358         fi
   4359         ;;
   4360       esac
   4361 
   4362 
   4363       # move library search paths that coincide with paths to not yet
   4364       # installed libraries to the beginning of the library search list
   4365       new_libs=
   4366       for path in $notinst_path; do
   4367 	case " $new_libs " in
   4368 	*" -L$path/$objdir "*) ;;
   4369 	*)
   4370 	  case " $compile_deplibs " in
   4371 	  *" -L$path/$objdir "*)
   4372 	    new_libs="$new_libs -L$path/$objdir" ;;
   4373 	  esac
   4374 	  ;;
   4375 	esac
   4376       done
   4377       for deplib in $compile_deplibs; do
   4378 	case $deplib in
   4379 	-L*)
   4380 	  case " $new_libs " in
   4381 	  *" $deplib "*) ;;
   4382 	  *) new_libs="$new_libs $deplib" ;;
   4383 	  esac
   4384 	  ;;
   4385 	*) new_libs="$new_libs $deplib" ;;
   4386 	esac
   4387       done
   4388       compile_deplibs="$new_libs"
   4389 
   4390 
   4391       compile_command="$compile_command $compile_deplibs"
   4392       finalize_command="$finalize_command $finalize_deplibs"
   4393 
   4394       if test -n "$rpath$xrpath"; then
   4395 	# If the user specified any rpath flags, then add them.
   4396 	for libdir in $rpath $xrpath; do
   4397 	  # This is the magic to use -rpath.
   4398 	  case "$finalize_rpath " in
   4399 	  *" $libdir "*) ;;
   4400 	  *) finalize_rpath="$finalize_rpath $libdir" ;;
   4401 	  esac
   4402 	done
   4403       fi
   4404 
   4405       # Now hardcode the library paths
   4406       rpath=
   4407       hardcode_libdirs=
   4408       for libdir in $compile_rpath $finalize_rpath; do
   4409 	if test -n "$hardcode_libdir_flag_spec"; then
   4410 	  if test -n "$hardcode_libdir_separator"; then
   4411 	    if test -z "$hardcode_libdirs"; then
   4412 	      hardcode_libdirs="$libdir"
   4413 	    else
   4414 	      # Just accumulate the unique libdirs.
   4415 	      case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
   4416 	      *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
   4417 		;;
   4418 	      *)
   4419 		hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
   4420 		;;
   4421 	      esac
   4422 	    fi
   4423 	  else
   4424 	    eval flag=\"$hardcode_libdir_flag_spec\"
   4425 	    rpath="$rpath $flag"
   4426 	  fi
   4427 	elif test -n "$runpath_var"; then
   4428 	  case "$perm_rpath " in
   4429 	  *" $libdir "*) ;;
   4430 	  *) perm_rpath="$perm_rpath $libdir" ;;
   4431 	  esac
   4432 	fi
   4433 	case $host in
   4434 	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
   4435 	  testbindir=`$echo "X$libdir" | $Xsed -e 's*/lib$*/bin*'`
   4436 	  case :$dllsearchpath: in
   4437 	  *":$libdir:"*) ;;
   4438 	  *) dllsearchpath="$dllsearchpath:$libdir";;
   4439 	  esac
   4440 	  case :$dllsearchpath: in
   4441 	  *":$testbindir:"*) ;;
   4442 	  *) dllsearchpath="$dllsearchpath:$testbindir";;
   4443 	  esac
   4444 	  ;;
   4445 	esac
   4446       done
   4447       # Substitute the hardcoded libdirs into the rpath.
   4448       if test -n "$hardcode_libdir_separator" &&
   4449 	 test -n "$hardcode_libdirs"; then
   4450 	libdir="$hardcode_libdirs"
   4451 	eval rpath=\" $hardcode_libdir_flag_spec\"
   4452       fi
   4453       compile_rpath="$rpath"
   4454 
   4455       rpath=
   4456       hardcode_libdirs=
   4457       for libdir in $finalize_rpath; do
   4458 	if test -n "$hardcode_libdir_flag_spec"; then
   4459 	  if test -n "$hardcode_libdir_separator"; then
   4460 	    if test -z "$hardcode_libdirs"; then
   4461 	      hardcode_libdirs="$libdir"
   4462 	    else
   4463 	      # Just accumulate the unique libdirs.
   4464 	      case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
   4465 	      *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
   4466 		;;
   4467 	      *)
   4468 		hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
   4469 		;;
   4470 	      esac
   4471 	    fi
   4472 	  else
   4473 	    eval flag=\"$hardcode_libdir_flag_spec\"
   4474 	    rpath="$rpath $flag"
   4475 	  fi
   4476 	elif test -n "$runpath_var"; then
   4477 	  case "$finalize_perm_rpath " in
   4478 	  *" $libdir "*) ;;
   4479 	  *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
   4480 	  esac
   4481 	fi
   4482       done
   4483       # Substitute the hardcoded libdirs into the rpath.
   4484       if test -n "$hardcode_libdir_separator" &&
   4485 	 test -n "$hardcode_libdirs"; then
   4486 	libdir="$hardcode_libdirs"
   4487 	eval rpath=\" $hardcode_libdir_flag_spec\"
   4488       fi
   4489       finalize_rpath="$rpath"
   4490 
   4491       if test -n "$libobjs" && test "$build_old_libs" = yes; then
   4492 	# Transform all the library objects into standard objects.
   4493 	compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
   4494 	finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
   4495       fi
   4496 
   4497       dlsyms=
   4498       if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
   4499 	if test -n "$NM" && test -n "$global_symbol_pipe"; then
   4500 	  dlsyms="${outputname}S.c"
   4501 	else
   4502 	  $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
   4503 	fi
   4504       fi
   4505 
   4506       if test -n "$dlsyms"; then
   4507 	case $dlsyms in
   4508 	"") ;;
   4509 	*.c)
   4510 	  # Discover the nlist of each of the dlfiles.
   4511 	  nlist="$output_objdir/${outputname}.nm"
   4512 
   4513 	  $show "$rm $nlist ${nlist}S ${nlist}T"
   4514 	  $run $rm "$nlist" "${nlist}S" "${nlist}T"
   4515 
   4516 	  # Parse the name list into a source file.
   4517 	  $show "creating $output_objdir/$dlsyms"
   4518 
   4519 	  test -z "$run" && $echo > "$output_objdir/$dlsyms" "\
   4520 /* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */
   4521 /* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */
   4522 
   4523 #ifdef __cplusplus
   4524 extern \"C\" {
   4525 #endif
   4526 
   4527 /* Prevent the only kind of declaration conflicts we can make. */
   4528 #define lt_preloaded_symbols some_other_symbol
   4529 
   4530 /* External symbol declarations for the compiler. */\
   4531 "
   4532 
   4533 	  if test "$dlself" = yes; then
   4534 	    $show "generating symbol list for \`$output'"
   4535 
   4536 	    test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
   4537 
   4538 	    # Add our own program objects to the symbol list.
   4539 	    progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
   4540 	    for arg in $progfiles; do
   4541 	      $show "extracting global C symbols from \`$arg'"
   4542 	      $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
   4543 	    done
   4544 
   4545 	    if test -n "$exclude_expsyms"; then
   4546 	      $run eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
   4547 	      $run eval '$mv "$nlist"T "$nlist"'
   4548 	    fi
   4549 
   4550 	    if test -n "$export_symbols_regex"; then
   4551 	      $run eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
   4552 	      $run eval '$mv "$nlist"T "$nlist"'
   4553 	    fi
   4554 
   4555 	    # Prepare the list of exported symbols
   4556 	    if test -z "$export_symbols"; then
   4557 	      export_symbols="$output_objdir/$outputname.exp"
   4558 	      $run $rm $export_symbols
   4559 	      $run eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
   4560               case $host in
   4561               *cygwin* | *mingw* )
   4562 	        $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
   4563 		$run eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
   4564                 ;;
   4565               esac
   4566 	    else
   4567 	      $run eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
   4568 	      $run eval 'grep -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
   4569 	      $run eval 'mv "$nlist"T "$nlist"'
   4570               case $host in
   4571               *cygwin* | *mingw* )
   4572 	        $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
   4573 		$run eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
   4574                 ;;
   4575               esac
   4576 	    fi
   4577 	  fi
   4578 
   4579 	  for arg in $dlprefiles; do
   4580 	    $show "extracting global C symbols from \`$arg'"
   4581 	    name=`$echo "$arg" | ${SED} -e 's%^.*/%%'`
   4582 	    $run eval '$echo ": $name " >> "$nlist"'
   4583 	    $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
   4584 	  done
   4585 
   4586 	  if test -z "$run"; then
   4587 	    # Make sure we have at least an empty file.
   4588 	    test -f "$nlist" || : > "$nlist"
   4589 
   4590 	    if test -n "$exclude_expsyms"; then
   4591 	      $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
   4592 	      $mv "$nlist"T "$nlist"
   4593 	    fi
   4594 
   4595 	    # Try sorting and uniquifying the output.
   4596 	    if grep -v "^: " < "$nlist" |
   4597 		if sort -k 3 </dev/null >/dev/null 2>&1; then
   4598 		  sort -k 3
   4599 		else
   4600 		  sort +2
   4601 		fi |
   4602 		uniq > "$nlist"S; then
   4603 	      :
   4604 	    else
   4605 	      grep -v "^: " < "$nlist" > "$nlist"S
   4606 	    fi
   4607 
   4608 	    if test -f "$nlist"S; then
   4609 	      eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"'
   4610 	    else
   4611 	      $echo '/* NONE */' >> "$output_objdir/$dlsyms"
   4612 	    fi
   4613 
   4614 	    $echo >> "$output_objdir/$dlsyms" "\
   4615 
   4616 #undef lt_preloaded_symbols
   4617 
   4618 #if defined (__STDC__) && __STDC__
   4619 # define lt_ptr void *
   4620 #else
   4621 # define lt_ptr char *
   4622 # define const
   4623 #endif
   4624 
   4625 /* The mapping between symbol names and symbols. */
   4626 "
   4627 
   4628 	    case $host in
   4629 	    *cygwin* | *mingw* )
   4630 	  $echo >> "$output_objdir/$dlsyms" "\
   4631 /* DATA imports from DLLs on WIN32 can't be const, because
   4632    runtime relocations are performed -- see ld's documentation
   4633    on pseudo-relocs */
   4634 struct {
   4635 "
   4636 	      ;;
   4637 	    * )
   4638 	  $echo >> "$output_objdir/$dlsyms" "\
   4639 const struct {
   4640 "
   4641 	      ;;
   4642 	    esac
   4643 
   4644 
   4645 	  $echo >> "$output_objdir/$dlsyms" "\
   4646   const char *name;
   4647   lt_ptr address;
   4648 }
   4649 lt_preloaded_symbols[] =
   4650 {\
   4651 "
   4652 
   4653 	    eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms"
   4654 
   4655 	    $echo >> "$output_objdir/$dlsyms" "\
   4656   {0, (lt_ptr) 0}
   4657 };
   4658 
   4659 /* This works around a problem in FreeBSD linker */
   4660 #ifdef FREEBSD_WORKAROUND
   4661 static const void *lt_preloaded_setup() {
   4662   return lt_preloaded_symbols;
   4663 }
   4664 #endif
   4665 
   4666 #ifdef __cplusplus
   4667 }
   4668 #endif\
   4669 "
   4670 	  fi
   4671 
   4672 	  pic_flag_for_symtable=
   4673 	  case $host in
   4674 	  # compiling the symbol table file with pic_flag works around
   4675 	  # a FreeBSD bug that causes programs to crash when -lm is
   4676 	  # linked before any other PIC object.  But we must not use
   4677 	  # pic_flag when linking with -static.  The problem exists in
   4678 	  # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
   4679 	  *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
   4680 	    case "$compile_command " in
   4681 	    *" -static "*) ;;
   4682 	    *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";;
   4683 	    esac;;
   4684 	  *-*-hpux*)
   4685 	    case "$compile_command " in
   4686 	    *" -static "*) ;;
   4687 	    *) pic_flag_for_symtable=" $pic_flag";;
   4688 	    esac
   4689 	  esac
   4690 
   4691 	  # Now compile the dynamic symbol file.
   4692 	  $show "(cd $output_objdir && $LTCC  $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
   4693 	  $run eval '(cd $output_objdir && $LTCC  $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
   4694 
   4695 	  # Clean up the generated files.
   4696 	  $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T"
   4697 	  $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T"
   4698 
   4699 	  # Transform the symbol file into the correct name.
   4700           case $host in
   4701           *cygwin* | *mingw* )
   4702             if test -f "$output_objdir/${outputname}.def" ; then
   4703               compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
   4704               finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%"`
   4705             else
   4706               compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
   4707               finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
   4708              fi
   4709             ;;
   4710           * )
   4711             compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
   4712             finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
   4713             ;;
   4714           esac
   4715 	  ;;
   4716 	*)
   4717 	  $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
   4718 	  exit $EXIT_FAILURE
   4719 	  ;;
   4720 	esac
   4721       else
   4722 	# We keep going just in case the user didn't refer to
   4723 	# lt_preloaded_symbols.  The linker will fail if global_symbol_pipe
   4724 	# really was required.
   4725 
   4726 	# Nullify the symbol file.
   4727 	compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
   4728 	finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
   4729       fi
   4730 
   4731       if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
   4732 	# Replace the output file specification.
   4733 	compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
   4734 	link_command="$compile_command$compile_rpath"
   4735 
   4736 	# We have no uninstalled library dependencies, so finalize right now.
   4737 	$show "$link_command"
   4738 	$run eval "$link_command"
   4739 	exit_status=$?
   4740 
   4741 	# Delete the generated files.
   4742 	if test -n "$dlsyms"; then
   4743 	  $show "$rm $output_objdir/${outputname}S.${objext}"
   4744 	  $run $rm "$output_objdir/${outputname}S.${objext}"
   4745 	fi
   4746 
   4747 	exit $exit_status
   4748       fi
   4749 
   4750       if test -n "$shlibpath_var"; then
   4751 	# We should set the shlibpath_var
   4752 	rpath=
   4753 	for dir in $temp_rpath; do
   4754 	  case $dir in
   4755 	  [\\/]* | [A-Za-z]:[\\/]*)
   4756 	    # Absolute path.
   4757 	    rpath="$rpath$dir:"
   4758 	    ;;
   4759 	  *)
   4760 	    # Relative path: add a thisdir entry.
   4761 	    rpath="$rpath\$thisdir/$dir:"
   4762 	    ;;
   4763 	  esac
   4764 	done
   4765 	temp_rpath="$rpath"
   4766       fi
   4767 
   4768       if test -n "$compile_shlibpath$finalize_shlibpath"; then
   4769 	compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
   4770       fi
   4771       if test -n "$finalize_shlibpath"; then
   4772 	finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
   4773       fi
   4774 
   4775       compile_var=
   4776       finalize_var=
   4777       if test -n "$runpath_var"; then
   4778 	if test -n "$perm_rpath"; then
   4779 	  # We should set the runpath_var.
   4780 	  rpath=
   4781 	  for dir in $perm_rpath; do
   4782 	    rpath="$rpath$dir:"
   4783 	  done
   4784 	  compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
   4785 	fi
   4786 	if test -n "$finalize_perm_rpath"; then
   4787 	  # We should set the runpath_var.
   4788 	  rpath=
   4789 	  for dir in $finalize_perm_rpath; do
   4790 	    rpath="$rpath$dir:"
   4791 	  done
   4792 	  finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
   4793 	fi
   4794       fi
   4795 
   4796       if test "$no_install" = yes; then
   4797 	# We don't need to create a wrapper script.
   4798 	link_command="$compile_var$compile_command$compile_rpath"
   4799 	# Replace the output file specification.
   4800 	link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
   4801 	# Delete the old output file.
   4802 	$run $rm $output
   4803 	# Link the executable and exit
   4804 	$show "$link_command"
   4805 	$run eval "$link_command" || exit $?
   4806 	exit $EXIT_SUCCESS
   4807       fi
   4808 
   4809       if test "$hardcode_action" = relink; then
   4810 	# Fast installation is not supported
   4811 	link_command="$compile_var$compile_command$compile_rpath"
   4812 	relink_command="$finalize_var$finalize_command$finalize_rpath"
   4813 
   4814 	$echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
   4815 	$echo "$modename: \`$output' will be relinked during installation" 1>&2
   4816       else
   4817 	if test "$fast_install" != no; then
   4818 	  link_command="$finalize_var$compile_command$finalize_rpath"
   4819 	  if test "$fast_install" = yes; then
   4820 	    relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
   4821 	  else
   4822 	    # fast_install is set to needless
   4823 	    relink_command=
   4824 	  fi
   4825 	else
   4826 	  link_command="$compile_var$compile_command$compile_rpath"
   4827 	  relink_command="$finalize_var$finalize_command$finalize_rpath"
   4828 	fi
   4829       fi
   4830 
   4831       # Replace the output file specification.
   4832       link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
   4833 
   4834       # Delete the old output files.
   4835       $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
   4836 
   4837       $show "$link_command"
   4838       $run eval "$link_command" || exit $?
   4839 
   4840       # Now create the wrapper script.
   4841       $show "creating $output"
   4842 
   4843       # Quote the relink command for shipping.
   4844       if test -n "$relink_command"; then
   4845 	# Preserve any variables that may affect compiler behavior
   4846 	for var in $variables_saved_for_relink; do
   4847 	  if eval test -z \"\${$var+set}\"; then
   4848 	    relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
   4849 	  elif eval var_value=\$$var; test -z "$var_value"; then
   4850 	    relink_command="$var=; export $var; $relink_command"
   4851 	  else
   4852 	    var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
   4853 	    relink_command="$var=\"$var_value\"; export $var; $relink_command"
   4854 	  fi
   4855 	done
   4856 	relink_command="(cd `pwd`; $relink_command)"
   4857 	relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
   4858       fi
   4859 
   4860       # Quote $echo for shipping.
   4861       if test "X$echo" = "X$SHELL $progpath --fallback-echo"; then
   4862 	case $progpath in
   4863 	[\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";;
   4864 	*) qecho="$SHELL `pwd`/$progpath --fallback-echo";;
   4865 	esac
   4866 	qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"`
   4867       else
   4868 	qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"`
   4869       fi
   4870 
   4871       # Only actually do things if our run command is non-null.
   4872       if test -z "$run"; then
   4873 	# win32 will think the script is a binary if it has
   4874 	# a .exe suffix, so we strip it off here.
   4875 	case $output in
   4876 	  *.exe) output=`$echo $output|${SED} 's,.exe$,,'` ;;
   4877 	esac
   4878 	# test for cygwin because mv fails w/o .exe extensions
   4879 	case $host in
   4880 	  *cygwin*)
   4881 	    exeext=.exe
   4882 	    outputname=`$echo $outputname|${SED} 's,.exe$,,'` ;;
   4883 	  *) exeext= ;;
   4884 	esac
   4885 	case $host in
   4886 	  *cygwin* | *mingw* )
   4887             output_name=`basename $output`
   4888             output_path=`dirname $output`
   4889             cwrappersource="$output_path/$objdir/lt-$output_name.c"
   4890             cwrapper="$output_path/$output_name.exe"
   4891             $rm $cwrappersource $cwrapper
   4892             trap "$rm $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
   4893 
   4894 	    cat > $cwrappersource <<EOF
   4895 
   4896 /* $cwrappersource - temporary wrapper executable for $objdir/$outputname
   4897    Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
   4898 
   4899    The $output program cannot be directly executed until all the libtool
   4900    libraries that it depends on are installed.
   4901 
   4902    This wrapper executable should never be moved out of the build directory.
   4903    If it is, it will not operate correctly.
   4904 
   4905    Currently, it simply execs the wrapper *script* "/bin/sh $output",
   4906    but could eventually absorb all of the scripts functionality and
   4907    exec $objdir/$outputname directly.
   4908 */
   4909 EOF
   4910 	    cat >> $cwrappersource<<"EOF"
   4911 #include <stdio.h>
   4912 #include <stdlib.h>
   4913 #include <unistd.h>
   4914 #include <malloc.h>
   4915 #include <stdarg.h>
   4916 #include <assert.h>
   4917 #include <string.h>
   4918 #include <ctype.h>
   4919 #include <sys/stat.h>
   4920 
   4921 #if defined(PATH_MAX)
   4922 # define LT_PATHMAX PATH_MAX
   4923 #elif defined(MAXPATHLEN)
   4924 # define LT_PATHMAX MAXPATHLEN
   4925 #else
   4926 # define LT_PATHMAX 1024
   4927 #endif
   4928 
   4929 #ifndef DIR_SEPARATOR
   4930 # define DIR_SEPARATOR '/'
   4931 # define PATH_SEPARATOR ':'
   4932 #endif
   4933 
   4934 #if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
   4935   defined (__OS2__)
   4936 # define HAVE_DOS_BASED_FILE_SYSTEM
   4937 # ifndef DIR_SEPARATOR_2
   4938 #  define DIR_SEPARATOR_2 '\\'
   4939 # endif
   4940 # ifndef PATH_SEPARATOR_2
   4941 #  define PATH_SEPARATOR_2 ';'
   4942 # endif
   4943 #endif
   4944 
   4945 #ifndef DIR_SEPARATOR_2
   4946 # define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
   4947 #else /* DIR_SEPARATOR_2 */
   4948 # define IS_DIR_SEPARATOR(ch) \
   4949         (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
   4950 #endif /* DIR_SEPARATOR_2 */
   4951 
   4952 #ifndef PATH_SEPARATOR_2
   4953 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
   4954 #else /* PATH_SEPARATOR_2 */
   4955 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
   4956 #endif /* PATH_SEPARATOR_2 */
   4957 
   4958 #define XMALLOC(type, num)      ((type *) xmalloc ((num) * sizeof(type)))
   4959 #define XFREE(stale) do { \
   4960   if (stale) { free ((void *) stale); stale = 0; } \
   4961 } while (0)
   4962 
   4963 /* -DDEBUG is fairly common in CFLAGS.  */
   4964 #undef DEBUG
   4965 #if defined DEBUGWRAPPER
   4966 # define DEBUG(format, ...) fprintf(stderr, format, __VA_ARGS__)
   4967 #else
   4968 # define DEBUG(format, ...)
   4969 #endif
   4970 
   4971 const char *program_name = NULL;
   4972 
   4973 void * xmalloc (size_t num);
   4974 char * xstrdup (const char *string);
   4975 const char * base_name (const char *name);
   4976 char * find_executable(const char *wrapper);
   4977 int    check_executable(const char *path);
   4978 char * strendzap(char *str, const char *pat);
   4979 void lt_fatal (const char *message, ...);
   4980 
   4981 int
   4982 main (int argc, char *argv[])
   4983 {
   4984   char **newargz;
   4985   int i;
   4986 
   4987   program_name = (char *) xstrdup (base_name (argv[0]));
   4988   DEBUG("(main) argv[0]      : %s\n",argv[0]);
   4989   DEBUG("(main) program_name : %s\n",program_name);
   4990   newargz = XMALLOC(char *, argc+2);
   4991 EOF
   4992 
   4993             cat >> $cwrappersource <<EOF
   4994   newargz[0] = (char *) xstrdup("$SHELL");
   4995 EOF
   4996 
   4997             cat >> $cwrappersource <<"EOF"
   4998   newargz[1] = find_executable(argv[0]);
   4999   if (newargz[1] == NULL)
   5000     lt_fatal("Couldn't find %s", argv[0]);
   5001   DEBUG("(main) found exe at : %s\n",newargz[1]);
   5002   /* we know the script has the same name, without the .exe */
   5003   /* so make sure newargz[1] doesn't end in .exe */
   5004   strendzap(newargz[1],".exe");
   5005   for (i = 1; i < argc; i++)
   5006     newargz[i+1] = xstrdup(argv[i]);
   5007   newargz[argc+1] = NULL;
   5008 
   5009   for (i=0; i<argc+1; i++)
   5010   {
   5011     DEBUG("(main) newargz[%d]   : %s\n",i,newargz[i]);
   5012     ;
   5013   }
   5014 
   5015 EOF
   5016 
   5017             case $host_os in
   5018               mingw*)
   5019                 cat >> $cwrappersource <<EOF
   5020   execv("$SHELL",(char const **)newargz);
   5021 EOF
   5022               ;;
   5023               *)
   5024                 cat >> $cwrappersource <<EOF
   5025   execv("$SHELL",newargz);
   5026 EOF
   5027               ;;
   5028             esac
   5029 
   5030             cat >> $cwrappersource <<"EOF"
   5031   return 127;
   5032 }
   5033 
   5034 void *
   5035 xmalloc (size_t num)
   5036 {
   5037   void * p = (void *) malloc (num);
   5038   if (!p)
   5039     lt_fatal ("Memory exhausted");
   5040 
   5041   return p;
   5042 }
   5043 
   5044 char *
   5045 xstrdup (const char *string)
   5046 {
   5047   return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL
   5048 ;
   5049 }
   5050 
   5051 const char *
   5052 base_name (const char *name)
   5053 {
   5054   const char *base;
   5055 
   5056 #if defined (HAVE_DOS_BASED_FILE_SYSTEM)
   5057   /* Skip over the disk name in MSDOS pathnames. */
   5058   if (isalpha ((unsigned char)name[0]) && name[1] == ':')
   5059     name += 2;
   5060 #endif
   5061 
   5062   for (base = name; *name; name++)
   5063     if (IS_DIR_SEPARATOR (*name))
   5064       base = name + 1;
   5065   return base;
   5066 }
   5067 
   5068 int
   5069 check_executable(const char * path)
   5070 {
   5071   struct stat st;
   5072 
   5073   DEBUG("(check_executable)  : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!");
   5074   if ((!path) || (!*path))
   5075     return 0;
   5076 
   5077   if ((stat (path, &st) >= 0) &&
   5078       (
   5079         /* MinGW & native WIN32 do not support S_IXOTH or S_IXGRP */
   5080 #if defined (S_IXOTH)
   5081        ((st.st_mode & S_IXOTH) == S_IXOTH) ||
   5082 #endif
   5083 #if defined (S_IXGRP)
   5084        ((st.st_mode & S_IXGRP) == S_IXGRP) ||
   5085 #endif
   5086        ((st.st_mode & S_IXUSR) == S_IXUSR))
   5087       )
   5088     return 1;
   5089   else
   5090     return 0;
   5091 }
   5092 
   5093 /* Searches for the full path of the wrapper.  Returns
   5094    newly allocated full path name if found, NULL otherwise */
   5095 char *
   5096 find_executable (const char* wrapper)
   5097 {
   5098   int has_slash = 0;
   5099   const char* p;
   5100   const char* p_next;
   5101   /* static buffer for getcwd */
   5102   char tmp[LT_PATHMAX + 1];
   5103   int tmp_len;
   5104   char* concat_name;
   5105 
   5106   DEBUG("(find_executable)  : %s\n", wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!");
   5107 
   5108   if ((wrapper == NULL) || (*wrapper == '\0'))
   5109     return NULL;
   5110 
   5111   /* Absolute path? */
   5112 #if defined (HAVE_DOS_BASED_FILE_SYSTEM)
   5113   if (isalpha ((unsigned char)wrapper[0]) && wrapper[1] == ':')
   5114   {
   5115     concat_name = xstrdup (wrapper);
   5116     if (check_executable(concat_name))
   5117       return concat_name;
   5118     XFREE(concat_name);
   5119   }
   5120   else
   5121   {
   5122 #endif
   5123     if (IS_DIR_SEPARATOR (wrapper[0]))
   5124     {
   5125       concat_name = xstrdup (wrapper);
   5126       if (check_executable(concat_name))
   5127         return concat_name;
   5128       XFREE(concat_name);
   5129     }
   5130 #if defined (HAVE_DOS_BASED_FILE_SYSTEM)
   5131   }
   5132 #endif
   5133 
   5134   for (p = wrapper; *p; p++)
   5135     if (*p == '/')
   5136     {
   5137       has_slash = 1;
   5138       break;
   5139     }
   5140   if (!has_slash)
   5141   {
   5142     /* no slashes; search PATH */
   5143     const char* path = getenv ("PATH");
   5144     if (path != NULL)
   5145     {
   5146       for (p = path; *p; p = p_next)
   5147       {
   5148         const char* q;
   5149         size_t p_len;
   5150         for (q = p; *q; q++)
   5151           if (IS_PATH_SEPARATOR(*q))
   5152             break;
   5153         p_len = q - p;
   5154         p_next = (*q == '\0' ? q : q + 1);
   5155         if (p_len == 0)
   5156         {
   5157           /* empty path: current directory */
   5158           if (getcwd (tmp, LT_PATHMAX) == NULL)
   5159             lt_fatal ("getcwd failed");
   5160           tmp_len = strlen(tmp);
   5161           concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1);
   5162           memcpy (concat_name, tmp, tmp_len);
   5163           concat_name[tmp_len] = '/';
   5164           strcpy (concat_name + tmp_len + 1, wrapper);
   5165         }
   5166         else
   5167         {
   5168           concat_name = XMALLOC(char, p_len + 1 + strlen(wrapper) + 1);
   5169           memcpy (concat_name, p, p_len);
   5170           concat_name[p_len] = '/';
   5171           strcpy (concat_name + p_len + 1, wrapper);
   5172         }
   5173         if (check_executable(concat_name))
   5174           return concat_name;
   5175         XFREE(concat_name);
   5176       }
   5177     }
   5178     /* not found in PATH; assume curdir */
   5179   }
   5180   /* Relative path | not found in path: prepend cwd */
   5181   if (getcwd (tmp, LT_PATHMAX) == NULL)
   5182     lt_fatal ("getcwd failed");
   5183   tmp_len = strlen(tmp);
   5184   concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1);
   5185   memcpy (concat_name, tmp, tmp_len);
   5186   concat_name[tmp_len] = '/';
   5187   strcpy (concat_name + tmp_len + 1, wrapper);
   5188 
   5189   if (check_executable(concat_name))
   5190     return concat_name;
   5191   XFREE(concat_name);
   5192   return NULL;
   5193 }
   5194 
   5195 char *
   5196 strendzap(char *str, const char *pat)
   5197 {
   5198   size_t len, patlen;
   5199 
   5200   assert(str != NULL);
   5201   assert(pat != NULL);
   5202 
   5203   len = strlen(str);
   5204   patlen = strlen(pat);
   5205 
   5206   if (patlen <= len)
   5207   {
   5208     str += len - patlen;
   5209     if (strcmp(str, pat) == 0)
   5210       *str = '\0';
   5211   }
   5212   return str;
   5213 }
   5214 
   5215 static void
   5216 lt_error_core (int exit_status, const char * mode,
   5217           const char * message, va_list ap)
   5218 {
   5219   fprintf (stderr, "%s: %s: ", program_name, mode);
   5220   vfprintf (stderr, message, ap);
   5221   fprintf (stderr, ".\n");
   5222 
   5223   if (exit_status >= 0)
   5224     exit (exit_status);
   5225 }
   5226 
   5227 void
   5228 lt_fatal (const char *message, ...)
   5229 {
   5230   va_list ap;
   5231   va_start (ap, message);
   5232   lt_error_core (EXIT_FAILURE, "FATAL", message, ap);
   5233   va_end (ap);
   5234 }
   5235 EOF
   5236           # we should really use a build-platform specific compiler
   5237           # here, but OTOH, the wrappers (shell script and this C one)
   5238           # are only useful if you want to execute the "real" binary.
   5239           # Since the "real" binary is built for $host, then this
   5240           # wrapper might as well be built for $host, too.
   5241           $run $LTCC $LTCFLAGS -s -o $cwrapper $cwrappersource
   5242           ;;
   5243         esac
   5244         $rm $output
   5245         trap "$rm $output; exit $EXIT_FAILURE" 1 2 15
   5246 
   5247 	$echo > $output "\
   5248 #! $SHELL
   5249 
   5250 # $output - temporary wrapper script for $objdir/$outputname
   5251 # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
   5252 #
   5253 # The $output program cannot be directly executed until all the libtool
   5254 # libraries that it depends on are installed.
   5255 #
   5256 # This wrapper script should never be moved out of the build directory.
   5257 # If it is, it will not operate correctly.
   5258 
   5259 # Sed substitution that helps us do robust quoting.  It backslashifies
   5260 # metacharacters that are still active within double-quoted strings.
   5261 Xsed='${SED} -e 1s/^X//'
   5262 sed_quote_subst='$sed_quote_subst'
   5263 
   5264 # The HP-UX ksh and POSIX shell print the target directory to stdout
   5265 # if CDPATH is set.
   5266 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
   5267 
   5268 relink_command=\"$relink_command\"
   5269 
   5270 # This environment variable determines our operation mode.
   5271 if test \"\$libtool_install_magic\" = \"$magic\"; then
   5272   # install mode needs the following variable:
   5273   notinst_deplibs='$notinst_deplibs'
   5274 else
   5275   # When we are sourced in execute mode, \$file and \$echo are already set.
   5276   if test \"\$libtool_execute_magic\" != \"$magic\"; then
   5277     echo=\"$qecho\"
   5278     file=\"\$0\"
   5279     # Make sure echo works.
   5280     if test \"X\$1\" = X--no-reexec; then
   5281       # Discard the --no-reexec flag, and continue.
   5282       shift
   5283     elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then
   5284       # Yippee, \$echo works!
   5285       :
   5286     else
   5287       # Restart under the correct shell, and then maybe \$echo will work.
   5288       exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
   5289     fi
   5290   fi\
   5291 "
   5292 	$echo >> $output "\
   5293 
   5294   # Find the directory that this script lives in.
   5295   thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
   5296   test \"x\$thisdir\" = \"x\$file\" && thisdir=.
   5297 
   5298   # Follow symbolic links until we get to the real thisdir.
   5299   file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
   5300   while test -n \"\$file\"; do
   5301     destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
   5302 
   5303     # If there was a directory component, then change thisdir.
   5304     if test \"x\$destdir\" != \"x\$file\"; then
   5305       case \"\$destdir\" in
   5306       [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
   5307       *) thisdir=\"\$thisdir/\$destdir\" ;;
   5308       esac
   5309     fi
   5310 
   5311     file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
   5312     file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
   5313   done
   5314 
   5315   # Try to get the absolute directory name.
   5316   absdir=\`cd \"\$thisdir\" && pwd\`
   5317   test -n \"\$absdir\" && thisdir=\"\$absdir\"
   5318 "
   5319 
   5320 	if test "$fast_install" = yes; then
   5321 	  $echo >> $output "\
   5322   program=lt-'$outputname'$exeext
   5323   progdir=\"\$thisdir/$objdir\"
   5324 
   5325   if test ! -f \"\$progdir/\$program\" || \\
   5326      { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
   5327        test \"X\$file\" != \"X\$progdir/\$program\"; }; then
   5328 
   5329     file=\"\$\$-\$program\"
   5330 
   5331     if test ! -d \"\$progdir\"; then
   5332       $mkdir \"\$progdir\"
   5333     else
   5334       $rm \"\$progdir/\$file\"
   5335     fi"
   5336 
   5337 	  $echo >> $output "\
   5338 
   5339     # relink executable if necessary
   5340     if test -n \"\$relink_command\"; then
   5341       if relink_command_output=\`eval \$relink_command 2>&1\`; then :
   5342       else
   5343 	$echo \"\$relink_command_output\" >&2
   5344 	$rm \"\$progdir/\$file\"
   5345 	exit $EXIT_FAILURE
   5346       fi
   5347     fi
   5348 
   5349     $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
   5350     { $rm \"\$progdir/\$program\";
   5351       $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; }
   5352     $rm \"\$progdir/\$file\"
   5353   fi"
   5354 	else
   5355 	  $echo >> $output "\
   5356   program='$outputname'
   5357   progdir=\"\$thisdir/$objdir\"
   5358 "
   5359 	fi
   5360 
   5361 	$echo >> $output "\
   5362 
   5363   if test -f \"\$progdir/\$program\"; then"
   5364 
   5365 	# Export our shlibpath_var if we have one.
   5366 	if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
   5367 	  $echo >> $output "\
   5368     # Add our own library path to $shlibpath_var
   5369     $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
   5370 
   5371     # Some systems cannot cope with colon-terminated $shlibpath_var
   5372     # The second colon is a workaround for a bug in BeOS R4 sed
   5373     $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
   5374 
   5375     export $shlibpath_var
   5376 "
   5377 	fi
   5378 
   5379 	# fixup the dll searchpath if we need to.
   5380 	if test -n "$dllsearchpath"; then
   5381 	  $echo >> $output "\
   5382     # Add the dll search path components to the executable PATH
   5383     PATH=$dllsearchpath:\$PATH
   5384 "
   5385 	fi
   5386 
   5387 	$echo >> $output "\
   5388     if test \"\$libtool_execute_magic\" != \"$magic\"; then
   5389       # Run the actual program with our arguments.
   5390 "
   5391 	case $host in
   5392 	# Backslashes separate directories on plain windows
   5393 	*-*-mingw | *-*-os2*)
   5394 	  $echo >> $output "\
   5395       exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
   5396 "
   5397 	  ;;
   5398 
   5399 	*)
   5400 	  $echo >> $output "\
   5401       exec \"\$progdir/\$program\" \${1+\"\$@\"}
   5402 "
   5403 	  ;;
   5404 	esac
   5405 	$echo >> $output "\
   5406       \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
   5407       exit $EXIT_FAILURE
   5408     fi
   5409   else
   5410     # The program doesn't exist.
   5411     \$echo \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
   5412     \$echo \"This script is just a wrapper for \$program.\" 1>&2
   5413     $echo \"See the $PACKAGE documentation for more information.\" 1>&2
   5414     exit $EXIT_FAILURE
   5415   fi
   5416 fi\
   5417 "
   5418 	chmod +x $output
   5419       fi
   5420       exit $EXIT_SUCCESS
   5421       ;;
   5422     esac
   5423 
   5424     # See if we need to build an old-fashioned archive.
   5425     for oldlib in $oldlibs; do
   5426 
   5427       if test "$build_libtool_libs" = convenience; then
   5428 	oldobjs="$libobjs_save"
   5429 	addlibs="$convenience"
   5430 	build_libtool_libs=no
   5431       else
   5432 	if test "$build_libtool_libs" = module; then
   5433 	  oldobjs="$libobjs_save"
   5434 	  build_libtool_libs=no
   5435 	else
   5436 	  oldobjs="$old_deplibs $non_pic_objects"
   5437 	fi
   5438 	addlibs="$old_convenience"
   5439       fi
   5440 
   5441       if test -n "$addlibs"; then
   5442 	gentop="$output_objdir/${outputname}x"
   5443 	generated="$generated $gentop"
   5444 
   5445 	func_extract_archives $gentop $addlibs
   5446 	oldobjs="$oldobjs $func_extract_archives_result"
   5447       fi
   5448 
   5449       # Do each command in the archive commands.
   5450       if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
   5451        cmds=$old_archive_from_new_cmds
   5452       else
   5453 	# POSIX demands no paths to be encoded in archives.  We have
   5454 	# to avoid creating archives with duplicate basenames if we
   5455 	# might have to extract them afterwards, e.g., when creating a
   5456 	# static archive out of a convenience library, or when linking
   5457 	# the entirety of a libtool archive into another (currently
   5458 	# not supported by libtool).
   5459 	if (for obj in $oldobjs
   5460 	    do
   5461 	      $echo "X$obj" | $Xsed -e 's%^.*/%%'
   5462 	    done | sort | sort -uc >/dev/null 2>&1); then
   5463 	  :
   5464 	else
   5465 	  $echo "copying selected object files to avoid basename conflicts..."
   5466 
   5467 	  if test -z "$gentop"; then
   5468 	    gentop="$output_objdir/${outputname}x"
   5469 	    generated="$generated $gentop"
   5470 
   5471 	    $show "${rm}r $gentop"
   5472 	    $run ${rm}r "$gentop"
   5473 	    $show "$mkdir $gentop"
   5474 	    $run $mkdir "$gentop"
   5475 	    exit_status=$?
   5476 	    if test "$exit_status" -ne 0 && test ! -d "$gentop"; then
   5477 	      exit $exit_status
   5478 	    fi
   5479 	  fi
   5480 
   5481 	  save_oldobjs=$oldobjs
   5482 	  oldobjs=
   5483 	  counter=1
   5484 	  for obj in $save_oldobjs
   5485 	  do
   5486 	    objbase=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
   5487 	    case " $oldobjs " in
   5488 	    " ") oldobjs=$obj ;;
   5489 	    *[\ /]"$objbase "*)
   5490 	      while :; do
   5491 		# Make sure we don't pick an alternate name that also
   5492 		# overlaps.
   5493 		newobj=lt$counter-$objbase
   5494 		counter=`expr $counter + 1`
   5495 		case " $oldobjs " in
   5496 		*[\ /]"$newobj "*) ;;
   5497 		*) if test ! -f "$gentop/$newobj"; then break; fi ;;
   5498 		esac
   5499 	      done
   5500 	      $show "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
   5501 	      $run ln "$obj" "$gentop/$newobj" ||
   5502 	      $run cp "$obj" "$gentop/$newobj"
   5503 	      oldobjs="$oldobjs $gentop/$newobj"
   5504 	      ;;
   5505 	    *) oldobjs="$oldobjs $obj" ;;
   5506 	    esac
   5507 	  done
   5508 	fi
   5509 
   5510 	eval cmds=\"$old_archive_cmds\"
   5511 
   5512 	if len=`expr "X$cmds" : ".*"` &&
   5513 	     test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then
   5514 	  cmds=$old_archive_cmds
   5515 	else
   5516 	  # the command line is too long to link in one step, link in parts
   5517 	  $echo "using piecewise archive linking..."
   5518 	  save_RANLIB=$RANLIB
   5519 	  RANLIB=:
   5520 	  objlist=
   5521 	  concat_cmds=
   5522 	  save_oldobjs=$oldobjs
   5523 
   5524 	  # Is there a better way of finding the last object in the list?
   5525 	  for obj in $save_oldobjs
   5526 	  do
   5527 	    last_oldobj=$obj
   5528 	  done
   5529 	  for obj in $save_oldobjs
   5530 	  do
   5531 	    oldobjs="$objlist $obj"
   5532 	    objlist="$objlist $obj"
   5533 	    eval test_cmds=\"$old_archive_cmds\"
   5534 	    if len=`expr "X$test_cmds" : ".*" 2>/dev/null` &&
   5535 	       test "$len" -le "$max_cmd_len"; then
   5536 	      :
   5537 	    else
   5538 	      # the above command should be used before it gets too long
   5539 	      oldobjs=$objlist
   5540 	      if test "$obj" = "$last_oldobj" ; then
   5541 	        RANLIB=$save_RANLIB
   5542 	      fi
   5543 	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
   5544 	      eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
   5545 	      objlist=
   5546 	    fi
   5547 	  done
   5548 	  RANLIB=$save_RANLIB
   5549 	  oldobjs=$objlist
   5550 	  if test "X$oldobjs" = "X" ; then
   5551 	    eval cmds=\"\$concat_cmds\"
   5552 	  else
   5553 	    eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
   5554 	  fi
   5555 	fi
   5556       fi
   5557       save_ifs="$IFS"; IFS='~'
   5558       for cmd in $cmds; do
   5559         eval cmd=\"$cmd\"
   5560 	IFS="$save_ifs"
   5561 	$show "$cmd"
   5562 	$run eval "$cmd" || exit $?
   5563       done
   5564       IFS="$save_ifs"
   5565     done
   5566 
   5567     if test -n "$generated"; then
   5568       $show "${rm}r$generated"
   5569       $run ${rm}r$generated
   5570     fi
   5571 
   5572     # Now create the libtool archive.
   5573     case $output in
   5574     *.la)
   5575       old_library=
   5576       test "$build_old_libs" = yes && old_library="$libname.$libext"
   5577       $show "creating $output"
   5578 
   5579       # Preserve any variables that may affect compiler behavior
   5580       for var in $variables_saved_for_relink; do
   5581 	if eval test -z \"\${$var+set}\"; then
   5582 	  relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
   5583 	elif eval var_value=\$$var; test -z "$var_value"; then
   5584 	  relink_command="$var=; export $var; $relink_command"
   5585 	else
   5586 	  var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
   5587 	  relink_command="$var=\"$var_value\"; export $var; $relink_command"
   5588 	fi
   5589       done
   5590       # Quote the link command for shipping.
   5591       relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
   5592       relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
   5593       if test "$hardcode_automatic" = yes ; then
   5594 	relink_command=
   5595       fi
   5596 
   5597 
   5598       # Only create the output if not a dry run.
   5599       if test -z "$run"; then
   5600 	for installed in no yes; do
   5601 	  if test "$installed" = yes; then
   5602 	    if test -z "$install_libdir"; then
   5603 	      break
   5604 	    fi
   5605 	    output="$output_objdir/$outputname"i
   5606 	    # Replace all uninstalled libtool libraries with the installed ones
   5607 	    newdependency_libs=
   5608 	    for deplib in $dependency_libs; do
   5609 	      case $deplib in
   5610 	      *.la)
   5611 		name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
   5612 		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
   5613 		if test -z "$libdir"; then
   5614 		  $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
   5615 		  exit $EXIT_FAILURE
   5616 		fi
   5617 		newdependency_libs="$newdependency_libs $libdir/$name"
   5618 		;;
   5619 	      *) newdependency_libs="$newdependency_libs $deplib" ;;
   5620 	      esac
   5621 	    done
   5622 	    dependency_libs="$newdependency_libs"
   5623 	    newdlfiles=
   5624 	    for lib in $dlfiles; do
   5625 	      name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
   5626 	      eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
   5627 	      if test -z "$libdir"; then
   5628 		$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
   5629 		exit $EXIT_FAILURE
   5630 	      fi
   5631 	      newdlfiles="$newdlfiles $libdir/$name"
   5632 	    done
   5633 	    dlfiles="$newdlfiles"
   5634 	    newdlprefiles=
   5635 	    for lib in $dlprefiles; do
   5636 	      name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
   5637 	      eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
   5638 	      if test -z "$libdir"; then
   5639 		$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
   5640 		exit $EXIT_FAILURE
   5641 	      fi
   5642 	      newdlprefiles="$newdlprefiles $libdir/$name"
   5643 	    done
   5644 	    dlprefiles="$newdlprefiles"
   5645 	  else
   5646 	    newdlfiles=
   5647 	    for lib in $dlfiles; do
   5648 	      case $lib in
   5649 		[\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
   5650 		*) abs=`pwd`"/$lib" ;;
   5651 	      esac
   5652 	      newdlfiles="$newdlfiles $abs"
   5653 	    done
   5654 	    dlfiles="$newdlfiles"
   5655 	    newdlprefiles=
   5656 	    for lib in $dlprefiles; do
   5657 	      case $lib in
   5658 		[\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
   5659 		*) abs=`pwd`"/$lib" ;;
   5660 	      esac
   5661 	      newdlprefiles="$newdlprefiles $abs"
   5662 	    done
   5663 	    dlprefiles="$newdlprefiles"
   5664 	  fi
   5665 	  $rm $output
   5666 	  # place dlname in correct position for cygwin
   5667 	  tdlname=$dlname
   5668 	  case $host,$output,$installed,$module,$dlname in
   5669 	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
   5670 	  esac
   5671 	  $echo > $output "\
   5672 # $outputname - a libtool library file
   5673 # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
   5674 #
   5675 # Please DO NOT delete this file!
   5676 # It is necessary for linking the library.
   5677 
   5678 # The name that we can dlopen(3).
   5679 dlname='$tdlname'
   5680 
   5681 # Names of this library.
   5682 library_names='$library_names'
   5683 
   5684 # The name of the static archive.
   5685 old_library='$old_library'
   5686 
   5687 # Libraries that this one depends upon.
   5688 dependency_libs='$dependency_libs'
   5689 
   5690 # Version information for $libname.
   5691 current=$current
   5692 age=$age
   5693 revision=$revision
   5694 
   5695 # Is this an already installed library?
   5696 installed=$installed
   5697 
   5698 # Should we warn about portability when linking against -modules?
   5699 shouldnotlink=$module
   5700 
   5701 # Files to dlopen/dlpreopen
   5702 dlopen='$dlfiles'
   5703 dlpreopen='$dlprefiles'
   5704 
   5705 # Directory that this library needs to be installed in:
   5706 libdir='$install_libdir'"
   5707 	  if test "$installed" = no && test "$need_relink" = yes; then
   5708 	    $echo >> $output "\
   5709 relink_command=\"$relink_command\""
   5710 	  fi
   5711 	done
   5712       fi
   5713 
   5714       # Do a symbolic link so that the libtool archive can be found in
   5715       # LD_LIBRARY_PATH before the program is installed.
   5716       $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
   5717       $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
   5718       ;;
   5719     esac
   5720     exit $EXIT_SUCCESS
   5721     ;;
   5722 
   5723   # libtool install mode
   5724   install)
   5725     modename="$modename: install"
   5726 
   5727     # There may be an optional sh(1) argument at the beginning of
   5728     # install_prog (especially on Windows NT).
   5729     if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
   5730        # Allow the use of GNU shtool's install command.
   5731        $echo "X$nonopt" | grep shtool > /dev/null; then
   5732       # Aesthetically quote it.
   5733       arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
   5734       case $arg in
   5735       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   5736 	arg="\"$arg\""
   5737 	;;
   5738       esac
   5739       install_prog="$arg "
   5740       arg="$1"
   5741       shift
   5742     else
   5743       install_prog=
   5744       arg=$nonopt
   5745     fi
   5746 
   5747     # The real first argument should be the name of the installation program.
   5748     # Aesthetically quote it.
   5749     arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
   5750     case $arg in
   5751     *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   5752       arg="\"$arg\""
   5753       ;;
   5754     esac
   5755     install_prog="$install_prog$arg"
   5756 
   5757     # We need to accept at least all the BSD install flags.
   5758     dest=
   5759     files=
   5760     opts=
   5761     prev=
   5762     install_type=
   5763     isdir=no
   5764     stripme=
   5765     for arg
   5766     do
   5767       if test -n "$dest"; then
   5768 	files="$files $dest"
   5769 	dest=$arg
   5770 	continue
   5771       fi
   5772 
   5773       case $arg in
   5774       -d) isdir=yes ;;
   5775       -f) 
   5776       	case " $install_prog " in
   5777 	*[\\\ /]cp\ *) ;;
   5778 	*) prev=$arg ;;
   5779 	esac
   5780 	;;
   5781       -g | -m | -o) prev=$arg ;;
   5782       -s)
   5783 	stripme=" -s"
   5784 	continue
   5785 	;;
   5786       -*)
   5787 	;;
   5788       *)
   5789 	# If the previous option needed an argument, then skip it.
   5790 	if test -n "$prev"; then
   5791 	  prev=
   5792 	else
   5793 	  dest=$arg
   5794 	  continue
   5795 	fi
   5796 	;;
   5797       esac
   5798 
   5799       # Aesthetically quote the argument.
   5800       arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
   5801       case $arg in
   5802       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
   5803 	arg="\"$arg\""
   5804 	;;
   5805       esac
   5806       install_prog="$install_prog $arg"
   5807     done
   5808 
   5809     if test -z "$install_prog"; then
   5810       $echo "$modename: you must specify an install program" 1>&2
   5811       $echo "$help" 1>&2
   5812       exit $EXIT_FAILURE
   5813     fi
   5814 
   5815     if test -n "$prev"; then
   5816       $echo "$modename: the \`$prev' option requires an argument" 1>&2
   5817       $echo "$help" 1>&2
   5818       exit $EXIT_FAILURE
   5819     fi
   5820 
   5821     if test -z "$files"; then
   5822       if test -z "$dest"; then
   5823 	$echo "$modename: no file or destination specified" 1>&2
   5824       else
   5825 	$echo "$modename: you must specify a destination" 1>&2
   5826       fi
   5827       $echo "$help" 1>&2
   5828       exit $EXIT_FAILURE
   5829     fi
   5830 
   5831     # Strip any trailing slash from the destination.
   5832     dest=`$echo "X$dest" | $Xsed -e 's%/$%%'`
   5833 
   5834     # Check to see that the destination is a directory.
   5835     test -d "$dest" && isdir=yes
   5836     if test "$isdir" = yes; then
   5837       destdir="$dest"
   5838       destname=
   5839     else
   5840       destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'`
   5841       test "X$destdir" = "X$dest" && destdir=.
   5842       destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'`
   5843 
   5844       # Not a directory, so check to see that there is only one file specified.
   5845       set dummy $files
   5846       if test "$#" -gt 2; then
   5847 	$echo "$modename: \`$dest' is not a directory" 1>&2
   5848 	$echo "$help" 1>&2
   5849 	exit $EXIT_FAILURE
   5850       fi
   5851     fi
   5852     case $destdir in
   5853     [\\/]* | [A-Za-z]:[\\/]*) ;;
   5854     *)
   5855       for file in $files; do
   5856 	case $file in
   5857 	*.lo) ;;
   5858 	*)
   5859 	  $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
   5860 	  $echo "$help" 1>&2
   5861 	  exit $EXIT_FAILURE
   5862 	  ;;
   5863 	esac
   5864       done
   5865       ;;
   5866     esac
   5867 
   5868     # This variable tells wrapper scripts just to set variables rather
   5869     # than running their programs.
   5870     libtool_install_magic="$magic"
   5871 
   5872     staticlibs=
   5873     future_libdirs=
   5874     current_libdirs=
   5875     for file in $files; do
   5876 
   5877       # Do each installation.
   5878       case $file in
   5879       *.$libext)
   5880 	# Do the static libraries later.
   5881 	staticlibs="$staticlibs $file"
   5882 	;;
   5883 
   5884       *.la)
   5885 	# Check to see that this really is a libtool archive.
   5886 	if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
   5887 	else
   5888 	  $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
   5889 	  $echo "$help" 1>&2
   5890 	  exit $EXIT_FAILURE
   5891 	fi
   5892 
   5893 	library_names=
   5894 	old_library=
   5895 	relink_command=
   5896 	# If there is no directory component, then add one.
   5897 	case $file in
   5898 	*/* | *\\*) . $file ;;
   5899 	*) . ./$file ;;
   5900 	esac
   5901 
   5902 	# Add the libdir to current_libdirs if it is the destination.
   5903 	if test "X$destdir" = "X$libdir"; then
   5904 	  case "$current_libdirs " in
   5905 	  *" $libdir "*) ;;
   5906 	  *) current_libdirs="$current_libdirs $libdir" ;;
   5907 	  esac
   5908 	else
   5909 	  # Note the libdir as a future libdir.
   5910 	  case "$future_libdirs " in
   5911 	  *" $libdir "*) ;;
   5912 	  *) future_libdirs="$future_libdirs $libdir" ;;
   5913 	  esac
   5914 	fi
   5915 
   5916 	dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/
   5917 	test "X$dir" = "X$file/" && dir=
   5918 	dir="$dir$objdir"
   5919 
   5920 	if test -n "$relink_command"; then
   5921 	  # Determine the prefix the user has applied to our future dir.
   5922 	  inst_prefix_dir=`$echo "$destdir" | $SED "s%$libdir\$%%"`
   5923 
   5924 	  # Don't allow the user to place us outside of our expected
   5925 	  # location b/c this prevents finding dependent libraries that
   5926 	  # are installed to the same prefix.
   5927 	  # At present, this check doesn't affect windows .dll's that
   5928 	  # are installed into $libdir/../bin (currently, that works fine)
   5929 	  # but it's something to keep an eye on.
   5930 	  if test "$inst_prefix_dir" = "$destdir"; then
   5931 	    $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
   5932 	    exit $EXIT_FAILURE
   5933 	  fi
   5934 
   5935 	  if test -n "$inst_prefix_dir"; then
   5936 	    # Stick the inst_prefix_dir data into the link command.
   5937 	    relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
   5938 	  else
   5939 	    relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
   5940 	  fi
   5941 
   5942 	  $echo "$modename: warning: relinking \`$file'" 1>&2
   5943 	  $show "$relink_command"
   5944 	  if $run eval "$relink_command"; then :
   5945 	  else
   5946 	    $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
   5947 	    exit $EXIT_FAILURE
   5948 	  fi
   5949 	fi
   5950 
   5951 	# See the names of the shared library.
   5952 	set dummy $library_names
   5953 	if test -n "$2"; then
   5954 	  realname="$2"
   5955 	  shift
   5956 	  shift
   5957 
   5958 	  srcname="$realname"
   5959 	  test -n "$relink_command" && srcname="$realname"T
   5960 
   5961 	  # Install the shared library and build the symlinks.
   5962 	  $show "$install_prog $dir/$srcname $destdir/$realname"
   5963 	  $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
   5964 	  if test -n "$stripme" && test -n "$striplib"; then
   5965 	    $show "$striplib $destdir/$realname"
   5966 	    $run eval "$striplib $destdir/$realname" || exit $?
   5967 	  fi
   5968 
   5969 	  if test "$#" -gt 0; then
   5970 	    # Delete the old symlinks, and create new ones.
   5971 	    # Try `ln -sf' first, because the `ln' binary might depend on
   5972 	    # the symlink we replace!  Solaris /bin/ln does not understand -f,
   5973 	    # so we also need to try rm && ln -s.
   5974 	    for linkname
   5975 	    do
   5976 	      if test "$linkname" != "$realname"; then
   5977                 $show "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })"
   5978                 $run eval "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })"
   5979 	      fi
   5980 	    done
   5981 	  fi
   5982 
   5983 	  # Do each command in the postinstall commands.
   5984 	  lib="$destdir/$realname"
   5985 	  cmds=$postinstall_cmds
   5986 	  save_ifs="$IFS"; IFS='~'
   5987 	  for cmd in $cmds; do
   5988 	    IFS="$save_ifs"
   5989 	    eval cmd=\"$cmd\"
   5990 	    $show "$cmd"
   5991 	    $run eval "$cmd" || {
   5992 	      lt_exit=$?
   5993 
   5994 	      # Restore the uninstalled library and exit
   5995 	      if test "$mode" = relink; then
   5996 		$run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)'
   5997 	      fi
   5998 
   5999 	      exit $lt_exit
   6000 	    }
   6001 	  done
   6002 	  IFS="$save_ifs"
   6003 	fi
   6004 
   6005 	# Install the pseudo-library for information purposes.
   6006 	name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
   6007 	instname="$dir/$name"i
   6008 	$show "$install_prog $instname $destdir/$name"
   6009 	$run eval "$install_prog $instname $destdir/$name" || exit $?
   6010 
   6011 	# Maybe install the static library, too.
   6012 	test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
   6013 	;;
   6014 
   6015       *.lo)
   6016 	# Install (i.e. copy) a libtool object.
   6017 
   6018 	# Figure out destination file name, if it wasn't already specified.
   6019 	if test -n "$destname"; then
   6020 	  destfile="$destdir/$destname"
   6021 	else
   6022 	  destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
   6023 	  destfile="$destdir/$destfile"
   6024 	fi
   6025 
   6026 	# Deduce the name of the destination old-style object file.
   6027 	case $destfile in
   6028 	*.lo)
   6029 	  staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
   6030 	  ;;
   6031 	*.$objext)
   6032 	  staticdest="$destfile"
   6033 	  destfile=
   6034 	  ;;
   6035 	*)
   6036 	  $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
   6037 	  $echo "$help" 1>&2
   6038 	  exit $EXIT_FAILURE
   6039 	  ;;
   6040 	esac
   6041 
   6042 	# Install the libtool object if requested.
   6043 	if test -n "$destfile"; then
   6044 	  $show "$install_prog $file $destfile"
   6045 	  $run eval "$install_prog $file $destfile" || exit $?
   6046 	fi
   6047 
   6048 	# Install the old object if enabled.
   6049 	if test "$build_old_libs" = yes; then
   6050 	  # Deduce the name of the old-style object file.
   6051 	  staticobj=`$echo "X$file" | $Xsed -e "$lo2o"`
   6052 
   6053 	  $show "$install_prog $staticobj $staticdest"
   6054 	  $run eval "$install_prog \$staticobj \$staticdest" || exit $?
   6055 	fi
   6056 	exit $EXIT_SUCCESS
   6057 	;;
   6058 
   6059       *)
   6060 	# Figure out destination file name, if it wasn't already specified.
   6061 	if test -n "$destname"; then
   6062 	  destfile="$destdir/$destname"
   6063 	else
   6064 	  destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
   6065 	  destfile="$destdir/$destfile"
   6066 	fi
   6067 
   6068 	# If the file is missing, and there is a .exe on the end, strip it
   6069 	# because it is most likely a libtool script we actually want to
   6070 	# install
   6071 	stripped_ext=""
   6072 	case $file in
   6073 	  *.exe)
   6074 	    if test ! -f "$file"; then
   6075 	      file=`$echo $file|${SED} 's,.exe$,,'`
   6076 	      stripped_ext=".exe"
   6077 	    fi
   6078 	    ;;
   6079 	esac
   6080 
   6081 	# Do a test to see if this is really a libtool program.
   6082 	case $host in
   6083 	*cygwin*|*mingw*)
   6084 	    wrapper=`$echo $file | ${SED} -e 's,.exe$,,'`
   6085 	    ;;
   6086 	*)
   6087 	    wrapper=$file
   6088 	    ;;
   6089 	esac
   6090 	if (${SED} -e '4q' $wrapper | grep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
   6091 	  notinst_deplibs=
   6092 	  relink_command=
   6093 
   6094 	  # Note that it is not necessary on cygwin/mingw to append a dot to
   6095 	  # foo even if both foo and FILE.exe exist: automatic-append-.exe
   6096 	  # behavior happens only for exec(3), not for open(2)!  Also, sourcing
   6097 	  # `FILE.' does not work on cygwin managed mounts.
   6098 	  #
   6099 	  # If there is no directory component, then add one.
   6100 	  case $wrapper in
   6101 	  */* | *\\*) . ${wrapper} ;;
   6102 	  *) . ./${wrapper} ;;
   6103 	  esac
   6104 
   6105 	  # Check the variables that should have been set.
   6106 	  if test -z "$notinst_deplibs"; then
   6107 	    $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
   6108 	    exit $EXIT_FAILURE
   6109 	  fi
   6110 
   6111 	  finalize=yes
   6112 	  for lib in $notinst_deplibs; do
   6113 	    # Check to see that each library is installed.
   6114 	    libdir=
   6115 	    if test -f "$lib"; then
   6116 	      # If there is no directory component, then add one.
   6117 	      case $lib in
   6118 	      */* | *\\*) . $lib ;;
   6119 	      *) . ./$lib ;;
   6120 	      esac
   6121 	    fi
   6122 	    libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
   6123 	    if test -n "$libdir" && test ! -f "$libfile"; then
   6124 	      $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
   6125 	      finalize=no
   6126 	    fi
   6127 	  done
   6128 
   6129 	  relink_command=
   6130 	  # Note that it is not necessary on cygwin/mingw to append a dot to
   6131 	  # foo even if both foo and FILE.exe exist: automatic-append-.exe
   6132 	  # behavior happens only for exec(3), not for open(2)!  Also, sourcing
   6133 	  # `FILE.' does not work on cygwin managed mounts.
   6134 	  #
   6135 	  # If there is no directory component, then add one.
   6136 	  case $wrapper in
   6137 	  */* | *\\*) . ${wrapper} ;;
   6138 	  *) . ./${wrapper} ;;
   6139 	  esac
   6140 
   6141 	  outputname=
   6142 	  if test "$fast_install" = no && test -n "$relink_command"; then
   6143 	    if test "$finalize" = yes && test -z "$run"; then
   6144 	      tmpdir=`func_mktempdir`
   6145 	      file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'`
   6146 	      outputname="$tmpdir/$file"
   6147 	      # Replace the output file specification.
   6148 	      relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
   6149 
   6150 	      $show "$relink_command"
   6151 	      if $run eval "$relink_command"; then :
   6152 	      else
   6153 		$echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
   6154 		${rm}r "$tmpdir"
   6155 		continue
   6156 	      fi
   6157 	      file="$outputname"
   6158 	    else
   6159 	      $echo "$modename: warning: cannot relink \`$file'" 1>&2
   6160 	    fi
   6161 	  else
   6162 	    # Install the binary that we compiled earlier.
   6163 	    file=`$echo "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
   6164 	  fi
   6165 	fi
   6166 
   6167 	# remove .exe since cygwin /usr/bin/install will append another
   6168 	# one anyway 
   6169 	case $install_prog,$host in
   6170 	*/usr/bin/install*,*cygwin*)
   6171 	  case $file:$destfile in
   6172 	  *.exe:*.exe)
   6173 	    # this is ok
   6174 	    ;;
   6175 	  *.exe:*)
   6176 	    destfile=$destfile.exe
   6177 	    ;;
   6178 	  *:*.exe)
   6179 	    destfile=`$echo $destfile | ${SED} -e 's,.exe$,,'`
   6180 	    ;;
   6181 	  esac
   6182 	  ;;
   6183 	esac
   6184 	$show "$install_prog$stripme $file $destfile"
   6185 	$run eval "$install_prog\$stripme \$file \$destfile" || exit $?
   6186 	test -n "$outputname" && ${rm}r "$tmpdir"
   6187 	;;
   6188       esac
   6189     done
   6190 
   6191     for file in $staticlibs; do
   6192       name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
   6193 
   6194       # Set up the ranlib parameters.
   6195       oldlib="$destdir/$name"
   6196 
   6197       $show "$install_prog $file $oldlib"
   6198       $run eval "$install_prog \$file \$oldlib" || exit $?
   6199 
   6200       if test -n "$stripme" && test -n "$old_striplib"; then
   6201 	$show "$old_striplib $oldlib"
   6202 	$run eval "$old_striplib $oldlib" || exit $?
   6203       fi
   6204 
   6205       # Do each command in the postinstall commands.
   6206       cmds=$old_postinstall_cmds
   6207       save_ifs="$IFS"; IFS='~'
   6208       for cmd in $cmds; do
   6209 	IFS="$save_ifs"
   6210 	eval cmd=\"$cmd\"
   6211 	$show "$cmd"
   6212 	$run eval "$cmd" || exit $?
   6213       done
   6214       IFS="$save_ifs"
   6215     done
   6216 
   6217     if test -n "$future_libdirs"; then
   6218       $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
   6219     fi
   6220 
   6221     if test -n "$current_libdirs"; then
   6222       # Maybe just do a dry run.
   6223       test -n "$run" && current_libdirs=" -n$current_libdirs"
   6224       exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
   6225     else
   6226       exit $EXIT_SUCCESS
   6227     fi
   6228     ;;
   6229 
   6230   # libtool finish mode
   6231   finish)
   6232     modename="$modename: finish"
   6233     libdirs="$nonopt"
   6234     admincmds=
   6235 
   6236     if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
   6237       for dir
   6238       do
   6239 	libdirs="$libdirs $dir"
   6240       done
   6241 
   6242       for libdir in $libdirs; do
   6243 	if test -n "$finish_cmds"; then
   6244 	  # Do each command in the finish commands.
   6245 	  cmds=$finish_cmds
   6246 	  save_ifs="$IFS"; IFS='~'
   6247 	  for cmd in $cmds; do
   6248 	    IFS="$save_ifs"
   6249 	    eval cmd=\"$cmd\"
   6250 	    $show "$cmd"
   6251 	    $run eval "$cmd" || admincmds="$admincmds
   6252        $cmd"
   6253 	  done
   6254 	  IFS="$save_ifs"
   6255 	fi
   6256 	if test -n "$finish_eval"; then
   6257 	  # Do the single finish_eval.
   6258 	  eval cmds=\"$finish_eval\"
   6259 	  $run eval "$cmds" || admincmds="$admincmds
   6260        $cmds"
   6261 	fi
   6262       done
   6263     fi
   6264 
   6265     # Exit here if they wanted silent mode.
   6266     test "$show" = : && exit $EXIT_SUCCESS
   6267 
   6268     $echo "X----------------------------------------------------------------------" | $Xsed
   6269     $echo "Libraries have been installed in:"
   6270     for libdir in $libdirs; do
   6271       $echo "   $libdir"
   6272     done
   6273     $echo
   6274     $echo "If you ever happen to want to link against installed libraries"
   6275     $echo "in a given directory, LIBDIR, you must either use libtool, and"
   6276     $echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
   6277     $echo "flag during linking and do at least one of the following:"
   6278     if test -n "$shlibpath_var"; then
   6279       $echo "   - add LIBDIR to the \`$shlibpath_var' environment variable"
   6280       $echo "     during execution"
   6281     fi
   6282     if test -n "$runpath_var"; then
   6283       $echo "   - add LIBDIR to the \`$runpath_var' environment variable"
   6284       $echo "     during linking"
   6285     fi
   6286     if test -n "$hardcode_libdir_flag_spec"; then
   6287       libdir=LIBDIR
   6288       eval flag=\"$hardcode_libdir_flag_spec\"
   6289 
   6290       $echo "   - use the \`$flag' linker flag"
   6291     fi
   6292     if test -n "$admincmds"; then
   6293       $echo "   - have your system administrator run these commands:$admincmds"
   6294     fi
   6295     if test -f /etc/ld.so.conf; then
   6296       $echo "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
   6297     fi
   6298     $echo
   6299     $echo "See any operating system documentation about shared libraries for"
   6300     $echo "more information, such as the ld(1) and ld.so(8) manual pages."
   6301     $echo "X----------------------------------------------------------------------" | $Xsed
   6302     exit $EXIT_SUCCESS
   6303     ;;
   6304 
   6305   # libtool execute mode
   6306   execute)
   6307     modename="$modename: execute"
   6308 
   6309     # The first argument is the command name.
   6310     cmd="$nonopt"
   6311     if test -z "$cmd"; then
   6312       $echo "$modename: you must specify a COMMAND" 1>&2
   6313       $echo "$help"
   6314       exit $EXIT_FAILURE
   6315     fi
   6316 
   6317     # Handle -dlopen flags immediately.
   6318     for file in $execute_dlfiles; do
   6319       if test ! -f "$file"; then
   6320 	$echo "$modename: \`$file' is not a file" 1>&2
   6321 	$echo "$help" 1>&2
   6322 	exit $EXIT_FAILURE
   6323       fi
   6324 
   6325       dir=
   6326       case $file in
   6327       *.la)
   6328 	# Check to see that this really is a libtool archive.
   6329 	if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
   6330 	else
   6331 	  $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
   6332 	  $echo "$help" 1>&2
   6333 	  exit $EXIT_FAILURE
   6334 	fi
   6335 
   6336 	# Read the libtool library.
   6337 	dlname=
   6338 	library_names=
   6339 
   6340 	# If there is no directory component, then add one.
   6341 	case $file in
   6342 	*/* | *\\*) . $file ;;
   6343 	*) . ./$file ;;
   6344 	esac
   6345 
   6346 	# Skip this library if it cannot be dlopened.
   6347 	if test -z "$dlname"; then
   6348 	  # Warn if it was a shared library.
   6349 	  test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
   6350 	  continue
   6351 	fi
   6352 
   6353 	dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
   6354 	test "X$dir" = "X$file" && dir=.
   6355 
   6356 	if test -f "$dir/$objdir/$dlname"; then
   6357 	  dir="$dir/$objdir"
   6358 	else
   6359 	  $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
   6360 	  exit $EXIT_FAILURE
   6361 	fi
   6362 	;;
   6363 
   6364       *.lo)
   6365 	# Just add the directory containing the .lo file.
   6366 	dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
   6367 	test "X$dir" = "X$file" && dir=.
   6368 	;;
   6369 
   6370       *)
   6371 	$echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
   6372 	continue
   6373 	;;
   6374       esac
   6375 
   6376       # Get the absolute pathname.
   6377       absdir=`cd "$dir" && pwd`
   6378       test -n "$absdir" && dir="$absdir"
   6379 
   6380       # Now add the directory to shlibpath_var.
   6381       if eval "test -z \"\$$shlibpath_var\""; then
   6382 	eval "$shlibpath_var=\"\$dir\""
   6383       else
   6384 	eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
   6385       fi
   6386     done
   6387 
   6388     # This variable tells wrapper scripts just to set shlibpath_var
   6389     # rather than running their programs.
   6390     libtool_execute_magic="$magic"
   6391 
   6392     # Check if any of the arguments is a wrapper script.
   6393     args=
   6394     for file
   6395     do
   6396       case $file in
   6397       -*) ;;
   6398       *)
   6399 	# Do a test to see if this is really a libtool program.
   6400 	if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
   6401 	  # If there is no directory component, then add one.
   6402 	  case $file in
   6403 	  */* | *\\*) . $file ;;
   6404 	  *) . ./$file ;;
   6405 	  esac
   6406 
   6407 	  # Transform arg to wrapped name.
   6408 	  file="$progdir/$program"
   6409 	fi
   6410 	;;
   6411       esac
   6412       # Quote arguments (to preserve shell metacharacters).
   6413       file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"`
   6414       args="$args \"$file\""
   6415     done
   6416 
   6417     if test -z "$run"; then
   6418       if test -n "$shlibpath_var"; then
   6419 	# Export the shlibpath_var.
   6420 	eval "export $shlibpath_var"
   6421       fi
   6422 
   6423       # Restore saved environment variables
   6424       if test "${save_LC_ALL+set}" = set; then
   6425 	LC_ALL="$save_LC_ALL"; export LC_ALL
   6426       fi
   6427       if test "${save_LANG+set}" = set; then
   6428 	LANG="$save_LANG"; export LANG
   6429       fi
   6430 
   6431       # Now prepare to actually exec the command.
   6432       exec_cmd="\$cmd$args"
   6433     else
   6434       # Display what would be done.
   6435       if test -n "$shlibpath_var"; then
   6436 	eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
   6437 	$echo "export $shlibpath_var"
   6438       fi
   6439       $echo "$cmd$args"
   6440       exit $EXIT_SUCCESS
   6441     fi
   6442     ;;
   6443 
   6444   # libtool clean and uninstall mode
   6445   clean | uninstall)
   6446     modename="$modename: $mode"
   6447     rm="$nonopt"
   6448     files=
   6449     rmforce=
   6450     exit_status=0
   6451 
   6452     # This variable tells wrapper scripts just to set variables rather
   6453     # than running their programs.
   6454     libtool_install_magic="$magic"
   6455 
   6456     for arg
   6457     do
   6458       case $arg in
   6459       -f) rm="$rm $arg"; rmforce=yes ;;
   6460       -*) rm="$rm $arg" ;;
   6461       *) files="$files $arg" ;;
   6462       esac
   6463     done
   6464 
   6465     if test -z "$rm"; then
   6466       $echo "$modename: you must specify an RM program" 1>&2
   6467       $echo "$help" 1>&2
   6468       exit $EXIT_FAILURE
   6469     fi
   6470 
   6471     rmdirs=
   6472 
   6473     origobjdir="$objdir"
   6474     for file in $files; do
   6475       dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
   6476       if test "X$dir" = "X$file"; then
   6477 	dir=.
   6478 	objdir="$origobjdir"
   6479       else
   6480 	objdir="$dir/$origobjdir"
   6481       fi
   6482       name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
   6483       test "$mode" = uninstall && objdir="$dir"
   6484 
   6485       # Remember objdir for removal later, being careful to avoid duplicates
   6486       if test "$mode" = clean; then
   6487 	case " $rmdirs " in
   6488 	  *" $objdir "*) ;;
   6489 	  *) rmdirs="$rmdirs $objdir" ;;
   6490 	esac
   6491       fi
   6492 
   6493       # Don't error if the file doesn't exist and rm -f was used.
   6494       if (test -L "$file") >/dev/null 2>&1 \
   6495 	|| (test -h "$file") >/dev/null 2>&1 \
   6496 	|| test -f "$file"; then
   6497 	:
   6498       elif test -d "$file"; then
   6499 	exit_status=1
   6500 	continue
   6501       elif test "$rmforce" = yes; then
   6502 	continue
   6503       fi
   6504 
   6505       rmfiles="$file"
   6506 
   6507       case $name in
   6508       *.la)
   6509 	# Possibly a libtool archive, so verify it.
   6510 	if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
   6511 	  . $dir/$name
   6512 
   6513 	  # Delete the libtool libraries and symlinks.
   6514 	  for n in $library_names; do
   6515 	    rmfiles="$rmfiles $objdir/$n"
   6516 	  done
   6517 	  test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
   6518 
   6519 	  case "$mode" in
   6520 	  clean)
   6521 	    case "  $library_names " in
   6522 	    # "  " in the beginning catches empty $dlname
   6523 	    *" $dlname "*) ;;
   6524 	    *) rmfiles="$rmfiles $objdir/$dlname" ;;
   6525 	    esac
   6526 	     test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
   6527 	    ;;
   6528 	  uninstall)
   6529 	    if test -n "$library_names"; then
   6530 	      # Do each command in the postuninstall commands.
   6531 	      cmds=$postuninstall_cmds
   6532 	      save_ifs="$IFS"; IFS='~'
   6533 	      for cmd in $cmds; do
   6534 		IFS="$save_ifs"
   6535 		eval cmd=\"$cmd\"
   6536 		$show "$cmd"
   6537 		$run eval "$cmd"
   6538 		if test "$?" -ne 0 && test "$rmforce" != yes; then
   6539 		  exit_status=1
   6540 		fi
   6541 	      done
   6542 	      IFS="$save_ifs"
   6543 	    fi
   6544 
   6545 	    if test -n "$old_library"; then
   6546 	      # Do each command in the old_postuninstall commands.
   6547 	      cmds=$old_postuninstall_cmds
   6548 	      save_ifs="$IFS"; IFS='~'
   6549 	      for cmd in $cmds; do
   6550 		IFS="$save_ifs"
   6551 		eval cmd=\"$cmd\"
   6552 		$show "$cmd"
   6553 		$run eval "$cmd"
   6554 		if test "$?" -ne 0 && test "$rmforce" != yes; then
   6555 		  exit_status=1
   6556 		fi
   6557 	      done
   6558 	      IFS="$save_ifs"
   6559 	    fi
   6560 	    # FIXME: should reinstall the best remaining shared library.
   6561 	    ;;
   6562 	  esac
   6563 	fi
   6564 	;;
   6565 
   6566       *.lo)
   6567 	# Possibly a libtool object, so verify it.
   6568 	if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
   6569 
   6570 	  # Read the .lo file
   6571 	  . $dir/$name
   6572 
   6573 	  # Add PIC object to the list of files to remove.
   6574 	  if test -n "$pic_object" \
   6575 	     && test "$pic_object" != none; then
   6576 	    rmfiles="$rmfiles $dir/$pic_object"
   6577 	  fi
   6578 
   6579 	  # Add non-PIC object to the list of files to remove.
   6580 	  if test -n "$non_pic_object" \
   6581 	     && test "$non_pic_object" != none; then
   6582 	    rmfiles="$rmfiles $dir/$non_pic_object"
   6583 	  fi
   6584 	fi
   6585 	;;
   6586 
   6587       *)
   6588 	if test "$mode" = clean ; then
   6589 	  noexename=$name
   6590 	  case $file in
   6591 	  *.exe)
   6592 	    file=`$echo $file|${SED} 's,.exe$,,'`
   6593 	    noexename=`$echo $name|${SED} 's,.exe$,,'`
   6594 	    # $file with .exe has already been added to rmfiles,
   6595 	    # add $file without .exe
   6596 	    rmfiles="$rmfiles $file"
   6597 	    ;;
   6598 	  esac
   6599 	  # Do a test to see if this is a libtool program.
   6600 	  if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
   6601 	    relink_command=
   6602 	    . $dir/$noexename
   6603 
   6604 	    # note $name still contains .exe if it was in $file originally
   6605 	    # as does the version of $file that was added into $rmfiles
   6606 	    rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
   6607 	    if test "$fast_install" = yes && test -n "$relink_command"; then
   6608 	      rmfiles="$rmfiles $objdir/lt-$name"
   6609 	    fi
   6610 	    if test "X$noexename" != "X$name" ; then
   6611 	      rmfiles="$rmfiles $objdir/lt-${noexename}.c"
   6612 	    fi
   6613 	  fi
   6614 	fi
   6615 	;;
   6616       esac
   6617       $show "$rm $rmfiles"
   6618       $run $rm $rmfiles || exit_status=1
   6619     done
   6620     objdir="$origobjdir"
   6621 
   6622     # Try to remove the ${objdir}s in the directories where we deleted files
   6623     for dir in $rmdirs; do
   6624       if test -d "$dir"; then
   6625 	$show "rmdir $dir"
   6626 	$run rmdir $dir >/dev/null 2>&1
   6627       fi
   6628     done
   6629 
   6630     exit $exit_status
   6631     ;;
   6632 
   6633   "")
   6634     $echo "$modename: you must specify a MODE" 1>&2
   6635     $echo "$generic_help" 1>&2
   6636     exit $EXIT_FAILURE
   6637     ;;
   6638   esac
   6639 
   6640   if test -z "$exec_cmd"; then
   6641     $echo "$modename: invalid operation mode \`$mode'" 1>&2
   6642     $echo "$generic_help" 1>&2
   6643     exit $EXIT_FAILURE
   6644   fi
   6645 fi # test -z "$show_help"
   6646 
   6647 if test -n "$exec_cmd"; then
   6648   eval exec $exec_cmd
   6649   exit $EXIT_FAILURE
   6650 fi
   6651 
   6652 # We need to display help for each of the modes.
   6653 case $mode in
   6654 "") $echo \
   6655 "Usage: $modename [OPTION]... [MODE-ARG]...
   6656 
   6657 Provide generalized library-building support services.
   6658 
   6659     --config          show all configuration variables
   6660     --debug           enable verbose shell tracing
   6661 -n, --dry-run         display commands without modifying any files
   6662     --features        display basic configuration information and exit
   6663     --finish          same as \`--mode=finish'
   6664     --help            display this help message and exit
   6665     --mode=MODE       use operation mode MODE [default=inferred from MODE-ARGS]
   6666     --quiet           same as \`--silent'
   6667     --silent          don't print informational messages
   6668     --tag=TAG         use configuration variables from tag TAG
   6669     --version         print version information
   6670 
   6671 MODE must be one of the following:
   6672 
   6673       clean           remove files from the build directory
   6674       compile         compile a source file into a libtool object
   6675       execute         automatically set library path, then run a program
   6676       finish          complete the installation of libtool libraries
   6677       install         install libraries or executables
   6678       link            create a library or an executable
   6679       uninstall       remove libraries from an installed directory
   6680 
   6681 MODE-ARGS vary depending on the MODE.  Try \`$modename --help --mode=MODE' for
   6682 a more detailed description of MODE.
   6683 
   6684 Report bugs to <bug-libtool (at] gnu.org>."
   6685   exit $EXIT_SUCCESS
   6686   ;;
   6687 
   6688 clean)
   6689   $echo \
   6690 "Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
   6691 
   6692 Remove files from the build directory.
   6693 
   6694 RM is the name of the program to use to delete files associated with each FILE
   6695 (typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
   6696 to RM.
   6697 
   6698 If FILE is a libtool library, object or program, all the files associated
   6699 with it are deleted. Otherwise, only FILE itself is deleted using RM."
   6700   ;;
   6701 
   6702 compile)
   6703   $echo \
   6704 "Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
   6705 
   6706 Compile a source file into a libtool library object.
   6707 
   6708 This mode accepts the following additional options:
   6709 
   6710   -o OUTPUT-FILE    set the output file name to OUTPUT-FILE
   6711   -prefer-pic       try to building PIC objects only
   6712   -prefer-non-pic   try to building non-PIC objects only
   6713   -static           always build a \`.o' file suitable for static linking
   6714 
   6715 COMPILE-COMMAND is a command to be used in creating a \`standard' object file
   6716 from the given SOURCEFILE.
   6717 
   6718 The output file name is determined by removing the directory component from
   6719 SOURCEFILE, then substituting the C source code suffix \`.c' with the
   6720 library object suffix, \`.lo'."
   6721   ;;
   6722 
   6723 execute)
   6724   $echo \
   6725 "Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
   6726 
   6727 Automatically set library path, then run a program.
   6728 
   6729 This mode accepts the following additional options:
   6730 
   6731   -dlopen FILE      add the directory containing FILE to the library path
   6732 
   6733 This mode sets the library path environment variable according to \`-dlopen'
   6734 flags.
   6735 
   6736 If any of the ARGS are libtool executable wrappers, then they are translated
   6737 into their corresponding uninstalled binary, and any of their required library
   6738 directories are added to the library path.
   6739 
   6740 Then, COMMAND is executed, with ARGS as arguments."
   6741   ;;
   6742 
   6743 finish)
   6744   $echo \
   6745 "Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
   6746 
   6747 Complete the installation of libtool libraries.
   6748 
   6749 Each LIBDIR is a directory that contains libtool libraries.
   6750 
   6751 The commands that this mode executes may require superuser privileges.  Use
   6752 the \`--dry-run' option if you just want to see what would be executed."
   6753   ;;
   6754 
   6755 install)
   6756   $echo \
   6757 "Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
   6758 
   6759 Install executables or libraries.
   6760 
   6761 INSTALL-COMMAND is the installation command.  The first component should be
   6762 either the \`install' or \`cp' program.
   6763 
   6764 The rest of the components are interpreted as arguments to that command (only
   6765 BSD-compatible install options are recognized)."
   6766   ;;
   6767 
   6768 link)
   6769   $echo \
   6770 "Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
   6771 
   6772 Link object files or libraries together to form another library, or to
   6773 create an executable program.
   6774 
   6775 LINK-COMMAND is a command using the C compiler that you would use to create
   6776 a program from several object files.
   6777 
   6778 The following components of LINK-COMMAND are treated specially:
   6779 
   6780   -all-static       do not do any dynamic linking at all
   6781   -avoid-version    do not add a version suffix if possible
   6782   -dlopen FILE      \`-dlpreopen' FILE if it cannot be dlopened at runtime
   6783   -dlpreopen FILE   link in FILE and add its symbols to lt_preloaded_symbols
   6784   -export-dynamic   allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
   6785   -export-symbols SYMFILE
   6786 		    try to export only the symbols listed in SYMFILE
   6787   -export-symbols-regex REGEX
   6788 		    try to export only the symbols matching REGEX
   6789   -LLIBDIR          search LIBDIR for required installed libraries
   6790   -lNAME            OUTPUT-FILE requires the installed library libNAME
   6791   -module           build a library that can dlopened
   6792   -no-fast-install  disable the fast-install mode
   6793   -no-install       link a not-installable executable
   6794   -no-undefined     declare that a library does not refer to external symbols
   6795   -o OUTPUT-FILE    create OUTPUT-FILE from the specified objects
   6796   -objectlist FILE  Use a list of object files found in FILE to specify objects
   6797   -precious-files-regex REGEX
   6798                     don't remove output files matching REGEX
   6799   -release RELEASE  specify package release information
   6800   -rpath LIBDIR     the created library will eventually be installed in LIBDIR
   6801   -R[ ]LIBDIR       add LIBDIR to the runtime path of programs and libraries
   6802   -static           do not do any dynamic linking of libtool libraries
   6803   -version-info CURRENT[:REVISION[:AGE]]
   6804 		    specify library version info [each variable defaults to 0]
   6805 
   6806 All other options (arguments beginning with \`-') are ignored.
   6807 
   6808 Every other argument is treated as a filename.  Files ending in \`.la' are
   6809 treated as uninstalled libtool libraries, other files are standard or library
   6810 object files.
   6811 
   6812 If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
   6813 only library objects (\`.lo' files) may be specified, and \`-rpath' is
   6814 required, except when creating a convenience library.
   6815 
   6816 If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
   6817 using \`ar' and \`ranlib', or on Windows using \`lib'.
   6818 
   6819 If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
   6820 is created, otherwise an executable program is created."
   6821   ;;
   6822 
   6823 uninstall)
   6824   $echo \
   6825 "Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
   6826 
   6827 Remove libraries from an installation directory.
   6828 
   6829 RM is the name of the program to use to delete files associated with each FILE
   6830 (typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
   6831 to RM.
   6832 
   6833 If FILE is a libtool library, all the files associated with it are deleted.
   6834 Otherwise, only FILE itself is deleted using RM."
   6835   ;;
   6836 
   6837 *)
   6838   $echo "$modename: invalid operation mode \`$mode'" 1>&2
   6839   $echo "$help" 1>&2
   6840   exit $EXIT_FAILURE
   6841   ;;
   6842 esac
   6843 
   6844 $echo
   6845 $echo "Try \`$modename --help' for more information about other modes."
   6846 
   6847 exit $?
   6848 
   6849 # The TAGs below are defined such that we never get into a situation
   6850 # in which we disable both kinds of libraries.  Given conflicting
   6851 # choices, we go for a static library, that is the most portable,
   6852 # since we can't tell whether shared libraries were disabled because
   6853 # the user asked for that or because the platform doesn't support
   6854 # them.  This is particularly important on AIX, because we don't
   6855 # support having both static and shared libraries enabled at the same
   6856 # time on that platform, so we default to a shared-only configuration.
   6857 # If a disable-shared tag is given, we'll fallback to a static-only
   6858 # configuration.  But we'll never go from static-only to shared-only.
   6859 
   6860 # ### BEGIN LIBTOOL TAG CONFIG: disable-shared
   6861 disable_libs=shared
   6862 # ### END LIBTOOL TAG CONFIG: disable-shared
   6863 
   6864 # ### BEGIN LIBTOOL TAG CONFIG: disable-static
   6865 disable_libs=static
   6866 # ### END LIBTOOL TAG CONFIG: disable-static
   6867 
   6868 # Local Variables:
   6869 # mode:shell-script
   6870 # sh-indentation:2
   6871 # End:
   6872