Annotation of tme/libltdl/ltmain.sh, revision 1.1.1.2

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

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.