Annotation of sql/sqlite/ltmain.sh, revision 1.1
1.1 ! misha 1: # ltmain.sh - Provide generalized library-building support services.
! 2: # NOTE: Changing this file will not affect anything until you rerun configure.
! 3: #
! 4: # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
! 5: # Free Software Foundation, Inc.
! 6: # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
! 7: #
! 8: # This program is free software; you can redistribute it and/or modify
! 9: # it under the terms of the GNU General Public License as published by
! 10: # the Free Software Foundation; either version 2 of the License, or
! 11: # (at your option) any later version.
! 12: #
! 13: # This program is distributed in the hope that it will be useful, but
! 14: # WITHOUT ANY WARRANTY; without even the implied warranty of
! 15: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
! 16: # General Public License for more details.
! 17: #
! 18: # You should have received a copy of the GNU General Public License
! 19: # along with this program; if not, write to the Free Software
! 20: # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
! 21: #
! 22: # As a special exception to the GNU General Public License, if you
! 23: # distribute this file as part of a program that contains a
! 24: # configuration script generated by Autoconf, you may include it under
! 25: # the same distribution terms that you use for the rest of that program.
! 26:
! 27: # Check that we have a working $echo.
! 28: if test "X$1" = X--no-reexec; then
! 29: # Discard the --no-reexec flag, and continue.
! 30: shift
! 31: elif test "X$1" = X--fallback-echo; then
! 32: # Avoid inline document here, it may be left over
! 33: :
! 34: elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
! 35: # Yippee, $echo works!
! 36: :
! 37: else
! 38: # Restart under the correct shell, and then maybe $echo will work.
! 39: exec $SHELL "$0" --no-reexec ${1+"$@"}
! 40: fi
! 41:
! 42: if test "X$1" = X--fallback-echo; then
! 43: # used as fallback echo
! 44: shift
! 45: cat <<EOF
! 46: $*
! 47: EOF
! 48: exit 0
! 49: fi
! 50:
! 51: # The name of this program.
! 52: progname=`$echo "$0" | ${SED} 's%^.*/%%'`
! 53: modename="$progname"
! 54:
! 55: # Constants.
! 56: PROGRAM=ltmain.sh
! 57: PACKAGE=libtool
! 58: VERSION=1.4.3
! 59: TIMESTAMP=" (1.922.2.110 2002/10/23 01:39:54)"
! 60:
! 61: default_mode=
! 62: help="Try \`$progname --help' for more information."
! 63: magic="%%%MAGIC variable%%%"
! 64: mkdir="mkdir"
! 65: mv="mv -f"
! 66: rm="rm -f"
! 67:
! 68: # Sed substitution that helps us do robust quoting. It backslashifies
! 69: # metacharacters that are still active within double-quoted strings.
! 70: Xsed="${SED}"' -e 1s/^X//'
! 71: sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
! 72: # test EBCDIC or ASCII
! 73: case `echo A|od -x` in
! 74: *[Cc]1*) # EBCDIC based system
! 75: SP2NL="tr '\100' '\n'"
! 76: NL2SP="tr '\r\n' '\100\100'"
! 77: ;;
! 78: *) # Assume ASCII based system
! 79: SP2NL="tr '\040' '\012'"
! 80: NL2SP="tr '\015\012' '\040\040'"
! 81: ;;
! 82: esac
! 83:
! 84: # NLS nuisances.
! 85: # Only set LANG and LC_ALL to C if already set.
! 86: # These must not be set unconditionally because not all systems understand
! 87: # e.g. LANG=C (notably SCO).
! 88: # We save the old values to restore during execute mode.
! 89: if test "${LC_ALL+set}" = set; then
! 90: save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
! 91: fi
! 92: if test "${LANG+set}" = set; then
! 93: save_LANG="$LANG"; LANG=C; export LANG
! 94: fi
! 95:
! 96: # Make sure IFS has a sensible default
! 97: : ${IFS=" "}
! 98:
! 99: if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
! 100: echo "$modename: not configured to build any kind of library" 1>&2
! 101: echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
! 102: exit 1
! 103: fi
! 104:
! 105: # Global variables.
! 106: mode=$default_mode
! 107: nonopt=
! 108: prev=
! 109: prevopt=
! 110: run=
! 111: show="$echo"
! 112: show_help=
! 113: execute_dlfiles=
! 114: lo2o="s/\\.lo\$/.${objext}/"
! 115: o2lo="s/\\.${objext}\$/.lo/"
! 116:
! 117: # Parse our command line options once, thoroughly.
! 118: while test $# -gt 0
! 119: do
! 120: arg="$1"
! 121: shift
! 122:
! 123: case $arg in
! 124: -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
! 125: *) optarg= ;;
! 126: esac
! 127:
! 128: # If the previous option needs an argument, assign it.
! 129: if test -n "$prev"; then
! 130: case $prev in
! 131: execute_dlfiles)
! 132: execute_dlfiles="$execute_dlfiles $arg"
! 133: ;;
! 134: *)
! 135: eval "$prev=\$arg"
! 136: ;;
! 137: esac
! 138:
! 139: prev=
! 140: prevopt=
! 141: continue
! 142: fi
! 143:
! 144: # Have we seen a non-optional argument yet?
! 145: case $arg in
! 146: --help)
! 147: show_help=yes
! 148: ;;
! 149:
! 150: --version)
! 151: echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"
! 152: exit 0
! 153: ;;
! 154:
! 155: --config)
! 156: ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
! 157: exit 0
! 158: ;;
! 159:
! 160: --debug)
! 161: echo "$progname: enabling shell trace mode"
! 162: set -x
! 163: ;;
! 164:
! 165: --dry-run | -n)
! 166: run=:
! 167: ;;
! 168:
! 169: --features)
! 170: echo "host: $host"
! 171: if test "$build_libtool_libs" = yes; then
! 172: echo "enable shared libraries"
! 173: else
! 174: echo "disable shared libraries"
! 175: fi
! 176: if test "$build_old_libs" = yes; then
! 177: echo "enable static libraries"
! 178: else
! 179: echo "disable static libraries"
! 180: fi
! 181: exit 0
! 182: ;;
! 183:
! 184: --finish) mode="finish" ;;
! 185:
! 186: --mode) prevopt="--mode" prev=mode ;;
! 187: --mode=*) mode="$optarg" ;;
! 188:
! 189: --preserve-dup-deps) duplicate_deps="yes" ;;
! 190:
! 191: --quiet | --silent)
! 192: show=:
! 193: ;;
! 194:
! 195: -dlopen)
! 196: prevopt="-dlopen"
! 197: prev=execute_dlfiles
! 198: ;;
! 199:
! 200: -*)
! 201: $echo "$modename: unrecognized option \`$arg'" 1>&2
! 202: $echo "$help" 1>&2
! 203: exit 1
! 204: ;;
! 205:
! 206: *)
! 207: nonopt="$arg"
! 208: break
! 209: ;;
! 210: esac
! 211: done
! 212:
! 213: if test -n "$prevopt"; then
! 214: $echo "$modename: option \`$prevopt' requires an argument" 1>&2
! 215: $echo "$help" 1>&2
! 216: exit 1
! 217: fi
! 218:
! 219: # If this variable is set in any of the actions, the command in it
! 220: # will be execed at the end. This prevents here-documents from being
! 221: # left over by shells.
! 222: exec_cmd=
! 223:
! 224: if test -z "$show_help"; then
! 225:
! 226: # Infer the operation mode.
! 227: if test -z "$mode"; then
! 228: case $nonopt in
! 229: *cc | *++ | gcc* | *-gcc* | xlc*)
! 230: mode=link
! 231: for arg
! 232: do
! 233: case $arg in
! 234: -c)
! 235: mode=compile
! 236: break
! 237: ;;
! 238: esac
! 239: done
! 240: ;;
! 241: *db | *dbx | *strace | *truss)
! 242: mode=execute
! 243: ;;
! 244: *install*|cp|mv)
! 245: mode=install
! 246: ;;
! 247: *rm)
! 248: mode=uninstall
! 249: ;;
! 250: *)
! 251: # If we have no mode, but dlfiles were specified, then do execute mode.
! 252: test -n "$execute_dlfiles" && mode=execute
! 253:
! 254: # Just use the default operation mode.
! 255: if test -z "$mode"; then
! 256: if test -n "$nonopt"; then
! 257: $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
! 258: else
! 259: $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
! 260: fi
! 261: fi
! 262: ;;
! 263: esac
! 264: fi
! 265:
! 266: # Only execute mode is allowed to have -dlopen flags.
! 267: if test -n "$execute_dlfiles" && test "$mode" != execute; then
! 268: $echo "$modename: unrecognized option \`-dlopen'" 1>&2
! 269: $echo "$help" 1>&2
! 270: exit 1
! 271: fi
! 272:
! 273: # Change the help message to a mode-specific one.
! 274: generic_help="$help"
! 275: help="Try \`$modename --help --mode=$mode' for more information."
! 276:
! 277: # These modes are in order of execution frequency so that they run quickly.
! 278: case $mode in
! 279: # libtool compile mode
! 280: compile)
! 281: modename="$modename: compile"
! 282: # Get the compilation command and the source file.
! 283: base_compile=
! 284: prev=
! 285: lastarg=
! 286: srcfile="$nonopt"
! 287: suppress_output=
! 288:
! 289: user_target=no
! 290: for arg
! 291: do
! 292: case $prev in
! 293: "") ;;
! 294: xcompiler)
! 295: # Aesthetically quote the previous argument.
! 296: prev=
! 297: lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
! 298:
! 299: case $arg in
! 300: # Double-quote args containing other shell metacharacters.
! 301: # Many Bourne shells cannot handle close brackets correctly
! 302: # in scan sets, so we specify it separately.
! 303: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
! 304: arg="\"$arg\""
! 305: ;;
! 306: esac
! 307:
! 308: # Add the previous argument to base_compile.
! 309: if test -z "$base_compile"; then
! 310: base_compile="$lastarg"
! 311: else
! 312: base_compile="$base_compile $lastarg"
! 313: fi
! 314: continue
! 315: ;;
! 316: esac
! 317:
! 318: # Accept any command-line options.
! 319: case $arg in
! 320: -o)
! 321: if test "$user_target" != "no"; then
! 322: $echo "$modename: you cannot specify \`-o' more than once" 1>&2
! 323: exit 1
! 324: fi
! 325: user_target=next
! 326: ;;
! 327:
! 328: -static)
! 329: build_old_libs=yes
! 330: continue
! 331: ;;
! 332:
! 333: -prefer-pic)
! 334: pic_mode=yes
! 335: continue
! 336: ;;
! 337:
! 338: -prefer-non-pic)
! 339: pic_mode=no
! 340: continue
! 341: ;;
! 342:
! 343: -Xcompiler)
! 344: prev=xcompiler
! 345: continue
! 346: ;;
! 347:
! 348: -Wc,*)
! 349: args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
! 350: lastarg=
! 351: save_ifs="$IFS"; IFS=','
! 352: for arg in $args; do
! 353: IFS="$save_ifs"
! 354:
! 355: # Double-quote args containing other shell metacharacters.
! 356: # Many Bourne shells cannot handle close brackets correctly
! 357: # in scan sets, so we specify it separately.
! 358: case $arg in
! 359: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
! 360: arg="\"$arg\""
! 361: ;;
! 362: esac
! 363: lastarg="$lastarg $arg"
! 364: done
! 365: IFS="$save_ifs"
! 366: lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"`
! 367:
! 368: # Add the arguments to base_compile.
! 369: if test -z "$base_compile"; then
! 370: base_compile="$lastarg"
! 371: else
! 372: base_compile="$base_compile $lastarg"
! 373: fi
! 374: continue
! 375: ;;
! 376: esac
! 377:
! 378: case $user_target in
! 379: next)
! 380: # The next one is the -o target name
! 381: user_target=yes
! 382: continue
! 383: ;;
! 384: yes)
! 385: # We got the output file
! 386: user_target=set
! 387: libobj="$arg"
! 388: continue
! 389: ;;
! 390: esac
! 391:
! 392: # Accept the current argument as the source file.
! 393: lastarg="$srcfile"
! 394: srcfile="$arg"
! 395:
! 396: # Aesthetically quote the previous argument.
! 397:
! 398: # Backslashify any backslashes, double quotes, and dollar signs.
! 399: # These are the only characters that are still specially
! 400: # interpreted inside of double-quoted scrings.
! 401: lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
! 402:
! 403: # Double-quote args containing other shell metacharacters.
! 404: # Many Bourne shells cannot handle close brackets correctly
! 405: # in scan sets, so we specify it separately.
! 406: case $lastarg in
! 407: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
! 408: lastarg="\"$lastarg\""
! 409: ;;
! 410: esac
! 411:
! 412: # Add the previous argument to base_compile.
! 413: if test -z "$base_compile"; then
! 414: base_compile="$lastarg"
! 415: else
! 416: base_compile="$base_compile $lastarg"
! 417: fi
! 418: done
! 419:
! 420: case $user_target in
! 421: set)
! 422: ;;
! 423: no)
! 424: # Get the name of the library object.
! 425: libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'`
! 426: ;;
! 427: *)
! 428: $echo "$modename: you must specify a target with \`-o'" 1>&2
! 429: exit 1
! 430: ;;
! 431: esac
! 432:
! 433: # Recognize several different file suffixes.
! 434: # If the user specifies -o file.o, it is replaced with file.lo
! 435: xform='[cCFSfmso]'
! 436: case $libobj in
! 437: *.ada) xform=ada ;;
! 438: *.adb) xform=adb ;;
! 439: *.ads) xform=ads ;;
! 440: *.asm) xform=asm ;;
! 441: *.c++) xform=c++ ;;
! 442: *.cc) xform=cc ;;
! 443: *.cpp) xform=cpp ;;
! 444: *.cxx) xform=cxx ;;
! 445: *.f90) xform=f90 ;;
! 446: *.for) xform=for ;;
! 447: esac
! 448:
! 449: libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
! 450:
! 451: case $libobj in
! 452: *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
! 453: *)
! 454: $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
! 455: exit 1
! 456: ;;
! 457: esac
! 458:
! 459: if test -z "$base_compile"; then
! 460: $echo "$modename: you must specify a compilation command" 1>&2
! 461: $echo "$help" 1>&2
! 462: exit 1
! 463: fi
! 464:
! 465: # Delete any leftover library objects.
! 466: if test "$build_old_libs" = yes; then
! 467: removelist="$obj $libobj"
! 468: else
! 469: removelist="$libobj"
! 470: fi
! 471:
! 472: $run $rm $removelist
! 473: trap "$run $rm $removelist; exit 1" 1 2 15
! 474:
! 475: # On Cygwin there's no "real" PIC flag so we must build both object types
! 476: case $host_os in
! 477: cygwin* | mingw* | pw32* | os2*)
! 478: pic_mode=default
! 479: ;;
! 480: esac
! 481: if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
! 482: # non-PIC code in shared libraries is not supported
! 483: pic_mode=default
! 484: fi
! 485:
! 486: # Calculate the filename of the output object if compiler does
! 487: # not support -o with -c
! 488: if test "$compiler_c_o" = no; then
! 489: output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
! 490: lockfile="$output_obj.lock"
! 491: removelist="$removelist $output_obj $lockfile"
! 492: trap "$run $rm $removelist; exit 1" 1 2 15
! 493: else
! 494: need_locks=no
! 495: lockfile=
! 496: fi
! 497:
! 498: # Lock this critical section if it is needed
! 499: # We use this script file to make the link, it avoids creating a new file
! 500: if test "$need_locks" = yes; then
! 501: until $run ln "$0" "$lockfile" 2>/dev/null; do
! 502: $show "Waiting for $lockfile to be removed"
! 503: sleep 2
! 504: done
! 505: elif test "$need_locks" = warn; then
! 506: if test -f "$lockfile"; then
! 507: echo "\
! 508: *** ERROR, $lockfile exists and contains:
! 509: `cat $lockfile 2>/dev/null`
! 510:
! 511: This indicates that another process is trying to use the same
! 512: temporary object file, and libtool could not work around it because
! 513: your compiler does not support \`-c' and \`-o' together. If you
! 514: repeat this compilation, it may succeed, by chance, but you had better
! 515: avoid parallel builds (make -j) in this platform, or get a better
! 516: compiler."
! 517:
! 518: $run $rm $removelist
! 519: exit 1
! 520: fi
! 521: echo $srcfile > "$lockfile"
! 522: fi
! 523:
! 524: if test -n "$fix_srcfile_path"; then
! 525: eval srcfile=\"$fix_srcfile_path\"
! 526: fi
! 527:
! 528: # Only build a PIC object if we are building libtool libraries.
! 529: if test "$build_libtool_libs" = yes; then
! 530: # Without this assignment, base_compile gets emptied.
! 531: fbsd_hideous_sh_bug=$base_compile
! 532:
! 533: if test "$pic_mode" != no; then
! 534: # All platforms use -DPIC, to notify preprocessed assembler code.
! 535: command="$base_compile $srcfile $pic_flag -DPIC"
! 536: else
! 537: # Don't build PIC code
! 538: command="$base_compile $srcfile"
! 539: fi
! 540: if test "$build_old_libs" = yes; then
! 541: lo_libobj="$libobj"
! 542: dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
! 543: if test "X$dir" = "X$libobj"; then
! 544: dir="$objdir"
! 545: else
! 546: dir="$dir/$objdir"
! 547: fi
! 548: libobj="$dir/"`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
! 549:
! 550: if test -d "$dir"; then
! 551: $show "$rm $libobj"
! 552: $run $rm $libobj
! 553: else
! 554: $show "$mkdir $dir"
! 555: $run $mkdir $dir
! 556: status=$?
! 557: if test $status -ne 0 && test ! -d $dir; then
! 558: exit $status
! 559: fi
! 560: fi
! 561: fi
! 562: if test "$compiler_o_lo" = yes; then
! 563: output_obj="$libobj"
! 564: command="$command -o $output_obj"
! 565: elif test "$compiler_c_o" = yes; then
! 566: output_obj="$obj"
! 567: command="$command -o $output_obj"
! 568: fi
! 569:
! 570: $run $rm "$output_obj"
! 571: $show "$command"
! 572: if $run eval "$command"; then :
! 573: else
! 574: test -n "$output_obj" && $run $rm $removelist
! 575: exit 1
! 576: fi
! 577:
! 578: if test "$need_locks" = warn &&
! 579: test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then
! 580: echo "\
! 581: *** ERROR, $lockfile contains:
! 582: `cat $lockfile 2>/dev/null`
! 583:
! 584: but it should contain:
! 585: $srcfile
! 586:
! 587: This indicates that another process is trying to use the same
! 588: temporary object file, and libtool could not work around it because
! 589: your compiler does not support \`-c' and \`-o' together. If you
! 590: repeat this compilation, it may succeed, by chance, but you had better
! 591: avoid parallel builds (make -j) in this platform, or get a better
! 592: compiler."
! 593:
! 594: $run $rm $removelist
! 595: exit 1
! 596: fi
! 597:
! 598: # Just move the object if needed, then go on to compile the next one
! 599: if test x"$output_obj" != x"$libobj"; then
! 600: $show "$mv $output_obj $libobj"
! 601: if $run $mv $output_obj $libobj; then :
! 602: else
! 603: error=$?
! 604: $run $rm $removelist
! 605: exit $error
! 606: fi
! 607: fi
! 608:
! 609: # If we have no pic_flag, then copy the object into place and finish.
! 610: if (test -z "$pic_flag" || test "$pic_mode" != default) &&
! 611: test "$build_old_libs" = yes; then
! 612: # Rename the .lo from within objdir to obj
! 613: if test -f $obj; then
! 614: $show $rm $obj
! 615: $run $rm $obj
! 616: fi
! 617:
! 618: $show "$mv $libobj $obj"
! 619: if $run $mv $libobj $obj; then :
! 620: else
! 621: error=$?
! 622: $run $rm $removelist
! 623: exit $error
! 624: fi
! 625:
! 626: xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
! 627: if test "X$xdir" = "X$obj"; then
! 628: xdir="."
! 629: else
! 630: xdir="$xdir"
! 631: fi
! 632: baseobj=`$echo "X$obj" | $Xsed -e "s%.*/%%"`
! 633: libobj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
! 634: # Now arrange that obj and lo_libobj become the same file
! 635: $show "(cd $xdir && $LN_S $baseobj $libobj)"
! 636: if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
! 637: # Unlock the critical section if it was locked
! 638: if test "$need_locks" != no; then
! 639: $run $rm "$lockfile"
! 640: fi
! 641: exit 0
! 642: else
! 643: error=$?
! 644: $run $rm $removelist
! 645: exit $error
! 646: fi
! 647: fi
! 648:
! 649: # Allow error messages only from the first compilation.
! 650: suppress_output=' >/dev/null 2>&1'
! 651: fi
! 652:
! 653: # Only build a position-dependent object if we build old libraries.
! 654: if test "$build_old_libs" = yes; then
! 655: if test "$pic_mode" != yes; then
! 656: # Don't build PIC code
! 657: command="$base_compile $srcfile"
! 658: else
! 659: # All platforms use -DPIC, to notify preprocessed assembler code.
! 660: command="$base_compile $srcfile $pic_flag -DPIC"
! 661: fi
! 662: if test "$compiler_c_o" = yes; then
! 663: command="$command -o $obj"
! 664: output_obj="$obj"
! 665: fi
! 666:
! 667: # Suppress compiler output if we already did a PIC compilation.
! 668: command="$command$suppress_output"
! 669: $run $rm "$output_obj"
! 670: $show "$command"
! 671: if $run eval "$command"; then :
! 672: else
! 673: $run $rm $removelist
! 674: exit 1
! 675: fi
! 676:
! 677: if test "$need_locks" = warn &&
! 678: test x"`cat $lockfile 2>/dev/null`" != x"$srcfile"; then
! 679: echo "\
! 680: *** ERROR, $lockfile contains:
! 681: `cat $lockfile 2>/dev/null`
! 682:
! 683: but it should contain:
! 684: $srcfile
! 685:
! 686: This indicates that another process is trying to use the same
! 687: temporary object file, and libtool could not work around it because
! 688: your compiler does not support \`-c' and \`-o' together. If you
! 689: repeat this compilation, it may succeed, by chance, but you had better
! 690: avoid parallel builds (make -j) in this platform, or get a better
! 691: compiler."
! 692:
! 693: $run $rm $removelist
! 694: exit 1
! 695: fi
! 696:
! 697: # Just move the object if needed
! 698: if test x"$output_obj" != x"$obj"; then
! 699: $show "$mv $output_obj $obj"
! 700: if $run $mv $output_obj $obj; then :
! 701: else
! 702: error=$?
! 703: $run $rm $removelist
! 704: exit $error
! 705: fi
! 706: fi
! 707:
! 708: # Create an invalid libtool object if no PIC, so that we do not
! 709: # accidentally link it into a program.
! 710: if test "$build_libtool_libs" != yes; then
! 711: $show "echo timestamp > $libobj"
! 712: $run eval "echo timestamp > \$libobj" || exit $?
! 713: else
! 714: # Move the .lo from within objdir
! 715: $show "$mv $libobj $lo_libobj"
! 716: if $run $mv $libobj $lo_libobj; then :
! 717: else
! 718: error=$?
! 719: $run $rm $removelist
! 720: exit $error
! 721: fi
! 722: fi
! 723: fi
! 724:
! 725: # Unlock the critical section if it was locked
! 726: if test "$need_locks" != no; then
! 727: $run $rm "$lockfile"
! 728: fi
! 729:
! 730: exit 0
! 731: ;;
! 732:
! 733: # libtool link mode
! 734: link | relink)
! 735: modename="$modename: link"
! 736: case $host in
! 737: *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
! 738: # It is impossible to link a dll without this setting, and
! 739: # we shouldn't force the makefile maintainer to figure out
! 740: # which system we are compiling for in order to pass an extra
! 741: # flag for every libtool invokation.
! 742: # allow_undefined=no
! 743:
! 744: # FIXME: Unfortunately, there are problems with the above when trying
! 745: # to make a dll which has undefined symbols, in which case not
! 746: # even a static library is built. For now, we need to specify
! 747: # -no-undefined on the libtool link line when we can be certain
! 748: # that all symbols are satisfied, otherwise we get a static library.
! 749: allow_undefined=yes
! 750: ;;
! 751: *)
! 752: allow_undefined=yes
! 753: ;;
! 754: esac
! 755: libtool_args="$nonopt"
! 756: compile_command="$nonopt"
! 757: finalize_command="$nonopt"
! 758:
! 759: compile_rpath=
! 760: finalize_rpath=
! 761: compile_shlibpath=
! 762: finalize_shlibpath=
! 763: convenience=
! 764: old_convenience=
! 765: deplibs=
! 766: old_deplibs=
! 767: compiler_flags=
! 768: linker_flags=
! 769: dllsearchpath=
! 770: lib_search_path=`pwd`
! 771:
! 772: avoid_version=no
! 773: dlfiles=
! 774: dlprefiles=
! 775: dlself=no
! 776: export_dynamic=no
! 777: export_symbols=
! 778: export_symbols_regex=
! 779: generated=
! 780: libobjs=
! 781: ltlibs=
! 782: module=no
! 783: no_install=no
! 784: objs=
! 785: prefer_static_libs=no
! 786: preload=no
! 787: prev=
! 788: prevarg=
! 789: release=
! 790: rpath=
! 791: xrpath=
! 792: perm_rpath=
! 793: temp_rpath=
! 794: thread_safe=no
! 795: vinfo=
! 796:
! 797: # We need to know -static, to get the right output filenames.
! 798: for arg
! 799: do
! 800: case $arg in
! 801: -all-static | -static)
! 802: if test "X$arg" = "X-all-static"; then
! 803: if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
! 804: $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
! 805: fi
! 806: if test -n "$link_static_flag"; then
! 807: dlopen_self=$dlopen_self_static
! 808: fi
! 809: else
! 810: if test -z "$pic_flag" && test -n "$link_static_flag"; then
! 811: dlopen_self=$dlopen_self_static
! 812: fi
! 813: fi
! 814: build_libtool_libs=no
! 815: build_old_libs=yes
! 816: prefer_static_libs=yes
! 817: break
! 818: ;;
! 819: esac
! 820: done
! 821:
! 822: # See if our shared archives depend on static archives.
! 823: test -n "$old_archive_from_new_cmds" && build_old_libs=yes
! 824:
! 825: # Go through the arguments, transforming them on the way.
! 826: while test $# -gt 0; do
! 827: arg="$1"
! 828: shift
! 829: case $arg in
! 830: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
! 831: qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test
! 832: ;;
! 833: *) qarg=$arg ;;
! 834: esac
! 835: libtool_args="$libtool_args $qarg"
! 836:
! 837: # If the previous option needs an argument, assign it.
! 838: if test -n "$prev"; then
! 839: case $prev in
! 840: output)
! 841: compile_command="$compile_command @OUTPUT@"
! 842: finalize_command="$finalize_command @OUTPUT@"
! 843: ;;
! 844: esac
! 845:
! 846: case $prev in
! 847: dlfiles|dlprefiles)
! 848: if test "$preload" = no; then
! 849: # Add the symbol object into the linking commands.
! 850: compile_command="$compile_command @SYMFILE@"
! 851: finalize_command="$finalize_command @SYMFILE@"
! 852: preload=yes
! 853: fi
! 854: case $arg in
! 855: *.la | *.lo) ;; # We handle these cases below.
! 856: force)
! 857: if test "$dlself" = no; then
! 858: dlself=needless
! 859: export_dynamic=yes
! 860: fi
! 861: prev=
! 862: continue
! 863: ;;
! 864: self)
! 865: if test "$prev" = dlprefiles; then
! 866: dlself=yes
! 867: elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
! 868: dlself=yes
! 869: else
! 870: dlself=needless
! 871: export_dynamic=yes
! 872: fi
! 873: prev=
! 874: continue
! 875: ;;
! 876: *)
! 877: if test "$prev" = dlfiles; then
! 878: dlfiles="$dlfiles $arg"
! 879: else
! 880: dlprefiles="$dlprefiles $arg"
! 881: fi
! 882: prev=
! 883: continue
! 884: ;;
! 885: esac
! 886: ;;
! 887: expsyms)
! 888: export_symbols="$arg"
! 889: if test ! -f "$arg"; then
! 890: $echo "$modename: symbol file \`$arg' does not exist"
! 891: exit 1
! 892: fi
! 893: prev=
! 894: continue
! 895: ;;
! 896: expsyms_regex)
! 897: export_symbols_regex="$arg"
! 898: prev=
! 899: continue
! 900: ;;
! 901: release)
! 902: release="-$arg"
! 903: prev=
! 904: continue
! 905: ;;
! 906: rpath | xrpath)
! 907: # We need an absolute path.
! 908: case $arg in
! 909: [\\/]* | [A-Za-z]:[\\/]*) ;;
! 910: *)
! 911: $echo "$modename: only absolute run-paths are allowed" 1>&2
! 912: exit 1
! 913: ;;
! 914: esac
! 915: if test "$prev" = rpath; then
! 916: case "$rpath " in
! 917: *" $arg "*) ;;
! 918: *) rpath="$rpath $arg" ;;
! 919: esac
! 920: else
! 921: case "$xrpath " in
! 922: *" $arg "*) ;;
! 923: *) xrpath="$xrpath $arg" ;;
! 924: esac
! 925: fi
! 926: prev=
! 927: continue
! 928: ;;
! 929: xcompiler)
! 930: compiler_flags="$compiler_flags $qarg"
! 931: prev=
! 932: compile_command="$compile_command $qarg"
! 933: finalize_command="$finalize_command $qarg"
! 934: continue
! 935: ;;
! 936: xlinker)
! 937: linker_flags="$linker_flags $qarg"
! 938: compiler_flags="$compiler_flags $wl$qarg"
! 939: prev=
! 940: compile_command="$compile_command $wl$qarg"
! 941: finalize_command="$finalize_command $wl$qarg"
! 942: continue
! 943: ;;
! 944: *)
! 945: eval "$prev=\"\$arg\""
! 946: prev=
! 947: continue
! 948: ;;
! 949: esac
! 950: fi # test -n $prev
! 951:
! 952: prevarg="$arg"
! 953:
! 954: case $arg in
! 955: -all-static)
! 956: if test -n "$link_static_flag"; then
! 957: compile_command="$compile_command $link_static_flag"
! 958: finalize_command="$finalize_command $link_static_flag"
! 959: fi
! 960: continue
! 961: ;;
! 962:
! 963: -allow-undefined)
! 964: # FIXME: remove this flag sometime in the future.
! 965: $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
! 966: continue
! 967: ;;
! 968:
! 969: -avoid-version)
! 970: avoid_version=yes
! 971: continue
! 972: ;;
! 973:
! 974: -dlopen)
! 975: prev=dlfiles
! 976: continue
! 977: ;;
! 978:
! 979: -dlpreopen)
! 980: prev=dlprefiles
! 981: continue
! 982: ;;
! 983:
! 984: -export-dynamic)
! 985: export_dynamic=yes
! 986: continue
! 987: ;;
! 988:
! 989: -export-symbols | -export-symbols-regex)
! 990: if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
! 991: $echo "$modename: more than one -exported-symbols argument is not allowed"
! 992: exit 1
! 993: fi
! 994: if test "X$arg" = "X-export-symbols"; then
! 995: prev=expsyms
! 996: else
! 997: prev=expsyms_regex
! 998: fi
! 999: continue
! 1000: ;;
! 1001:
! 1002: # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
! 1003: # so, if we see these flags be careful not to treat them like -L
! 1004: -L[A-Z][A-Z]*:*)
! 1005: case $with_gcc/$host in
! 1006: no/*-*-irix* | no/*-*-nonstopux*)
! 1007: compile_command="$compile_command $arg"
! 1008: finalize_command="$finalize_command $arg"
! 1009: ;;
! 1010: esac
! 1011: continue
! 1012: ;;
! 1013:
! 1014: -L*)
! 1015: dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
! 1016: # We need an absolute path.
! 1017: case $dir in
! 1018: [\\/]* | [A-Za-z]:[\\/]*) ;;
! 1019: *)
! 1020: absdir=`cd "$dir" && pwd`
! 1021: if test -z "$absdir"; then
! 1022: $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
! 1023: exit 1
! 1024: fi
! 1025: dir="$absdir"
! 1026: ;;
! 1027: esac
! 1028: case "$deplibs " in
! 1029: *" -L$dir "*) ;;
! 1030: *)
! 1031: deplibs="$deplibs -L$dir"
! 1032: lib_search_path="$lib_search_path $dir"
! 1033: ;;
! 1034: esac
! 1035: case $host in
! 1036: *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
! 1037: case :$dllsearchpath: in
! 1038: *":$dir:"*) ;;
! 1039: *) dllsearchpath="$dllsearchpath:$dir";;
! 1040: esac
! 1041: ;;
! 1042: esac
! 1043: continue
! 1044: ;;
! 1045:
! 1046: -l*)
! 1047: if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
! 1048: case $host in
! 1049: *-*-cygwin* | *-*-pw32* | *-*-beos*)
! 1050: # These systems don't actually have a C or math library (as such)
! 1051: continue
! 1052: ;;
! 1053: *-*-mingw* | *-*-os2*)
! 1054: # These systems don't actually have a C library (as such)
! 1055: test "X$arg" = "X-lc" && continue
! 1056: ;;
! 1057: *-*-openbsd* | *-*-freebsd*)
! 1058: # Do not include libc due to us having libc/libc_r.
! 1059: test "X$arg" = "X-lc" && continue
! 1060: ;;
! 1061: esac
! 1062: elif test "X$arg" = "X-lc_r"; then
! 1063: case $host in
! 1064: *-*-openbsd* | *-*-freebsd*)
! 1065: # Do not include libc_r directly, use -pthread flag.
! 1066: continue
! 1067: ;;
! 1068: esac
! 1069: fi
! 1070: deplibs="$deplibs $arg"
! 1071: continue
! 1072: ;;
! 1073:
! 1074: -module)
! 1075: module=yes
! 1076: continue
! 1077: ;;
! 1078:
! 1079: -no-fast-install)
! 1080: fast_install=no
! 1081: continue
! 1082: ;;
! 1083:
! 1084: -no-install)
! 1085: case $host in
! 1086: *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
! 1087: # The PATH hackery in wrapper scripts is required on Windows
! 1088: # in order for the loader to find any dlls it needs.
! 1089: $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
! 1090: $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
! 1091: fast_install=no
! 1092: ;;
! 1093: *) no_install=yes ;;
! 1094: esac
! 1095: continue
! 1096: ;;
! 1097:
! 1098: -no-undefined)
! 1099: allow_undefined=no
! 1100: continue
! 1101: ;;
! 1102:
! 1103: -o) prev=output ;;
! 1104:
! 1105: -release)
! 1106: prev=release
! 1107: continue
! 1108: ;;
! 1109:
! 1110: -rpath)
! 1111: prev=rpath
! 1112: continue
! 1113: ;;
! 1114:
! 1115: -R)
! 1116: prev=xrpath
! 1117: continue
! 1118: ;;
! 1119:
! 1120: -R*)
! 1121: dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
! 1122: # We need an absolute path.
! 1123: case $dir in
! 1124: [\\/]* | [A-Za-z]:[\\/]*) ;;
! 1125: *)
! 1126: $echo "$modename: only absolute run-paths are allowed" 1>&2
! 1127: exit 1
! 1128: ;;
! 1129: esac
! 1130: case "$xrpath " in
! 1131: *" $dir "*) ;;
! 1132: *) xrpath="$xrpath $dir" ;;
! 1133: esac
! 1134: continue
! 1135: ;;
! 1136:
! 1137: -static)
! 1138: # The effects of -static are defined in a previous loop.
! 1139: # We used to do the same as -all-static on platforms that
! 1140: # didn't have a PIC flag, but the assumption that the effects
! 1141: # would be equivalent was wrong. It would break on at least
! 1142: # Digital Unix and AIX.
! 1143: continue
! 1144: ;;
! 1145:
! 1146: -thread-safe)
! 1147: thread_safe=yes
! 1148: continue
! 1149: ;;
! 1150:
! 1151: -version-info)
! 1152: prev=vinfo
! 1153: continue
! 1154: ;;
! 1155:
! 1156: -Wc,*)
! 1157: args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
! 1158: arg=
! 1159: save_ifs="$IFS"; IFS=','
! 1160: for flag in $args; do
! 1161: IFS="$save_ifs"
! 1162: case $flag in
! 1163: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
! 1164: flag="\"$flag\""
! 1165: ;;
! 1166: esac
! 1167: arg="$arg $wl$flag"
! 1168: compiler_flags="$compiler_flags $flag"
! 1169: done
! 1170: IFS="$save_ifs"
! 1171: arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
! 1172: ;;
! 1173:
! 1174: -Wl,*)
! 1175: args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
! 1176: arg=
! 1177: save_ifs="$IFS"; IFS=','
! 1178: for flag in $args; do
! 1179: IFS="$save_ifs"
! 1180: case $flag in
! 1181: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
! 1182: flag="\"$flag\""
! 1183: ;;
! 1184: esac
! 1185: arg="$arg $wl$flag"
! 1186: compiler_flags="$compiler_flags $wl$flag"
! 1187: linker_flags="$linker_flags $flag"
! 1188: done
! 1189: IFS="$save_ifs"
! 1190: arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
! 1191: ;;
! 1192:
! 1193: -Xcompiler)
! 1194: prev=xcompiler
! 1195: continue
! 1196: ;;
! 1197:
! 1198: -Xlinker)
! 1199: prev=xlinker
! 1200: continue
! 1201: ;;
! 1202:
! 1203: # Some other compiler flag.
! 1204: -* | +*)
! 1205: # Unknown arguments in both finalize_command and compile_command need
! 1206: # to be aesthetically quoted because they are evaled later.
! 1207: arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
! 1208: case $arg in
! 1209: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
! 1210: arg="\"$arg\""
! 1211: ;;
! 1212: esac
! 1213: ;;
! 1214:
! 1215: *.lo | *.$objext)
! 1216: # A library or standard object.
! 1217: if test "$prev" = dlfiles; then
! 1218: # This file was specified with -dlopen.
! 1219: if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
! 1220: dlfiles="$dlfiles $arg"
! 1221: prev=
! 1222: continue
! 1223: else
! 1224: # If libtool objects are unsupported, then we need to preload.
! 1225: prev=dlprefiles
! 1226: fi
! 1227: fi
! 1228:
! 1229: if test "$prev" = dlprefiles; then
! 1230: # Preload the old-style object.
! 1231: dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"`
! 1232: prev=
! 1233: else
! 1234: case $arg in
! 1235: *.lo) libobjs="$libobjs $arg" ;;
! 1236: *) objs="$objs $arg" ;;
! 1237: esac
! 1238: fi
! 1239: ;;
! 1240:
! 1241: *.$libext)
! 1242: # An archive.
! 1243: deplibs="$deplibs $arg"
! 1244: old_deplibs="$old_deplibs $arg"
! 1245: continue
! 1246: ;;
! 1247:
! 1248: *.la)
! 1249: # A libtool-controlled library.
! 1250:
! 1251: if test "$prev" = dlfiles; then
! 1252: # This library was specified with -dlopen.
! 1253: dlfiles="$dlfiles $arg"
! 1254: prev=
! 1255: elif test "$prev" = dlprefiles; then
! 1256: # The library was specified with -dlpreopen.
! 1257: dlprefiles="$dlprefiles $arg"
! 1258: prev=
! 1259: else
! 1260: deplibs="$deplibs $arg"
! 1261: fi
! 1262: continue
! 1263: ;;
! 1264:
! 1265: # Some other compiler argument.
! 1266: *)
! 1267: # Unknown arguments in both finalize_command and compile_command need
! 1268: # to be aesthetically quoted because they are evaled later.
! 1269: arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
! 1270: case $arg in
! 1271: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
! 1272: arg="\"$arg\""
! 1273: ;;
! 1274: esac
! 1275: ;;
! 1276: esac # arg
! 1277:
! 1278: # Now actually substitute the argument into the commands.
! 1279: if test -n "$arg"; then
! 1280: compile_command="$compile_command $arg"
! 1281: finalize_command="$finalize_command $arg"
! 1282: fi
! 1283: done # argument parsing loop
! 1284:
! 1285: if test -n "$prev"; then
! 1286: $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
! 1287: $echo "$help" 1>&2
! 1288: exit 1
! 1289: fi
! 1290:
! 1291: if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
! 1292: eval arg=\"$export_dynamic_flag_spec\"
! 1293: compile_command="$compile_command $arg"
! 1294: finalize_command="$finalize_command $arg"
! 1295: fi
! 1296:
! 1297: # calculate the name of the file, without its directory
! 1298: outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
! 1299: libobjs_save="$libobjs"
! 1300:
! 1301: if test -n "$shlibpath_var"; then
! 1302: # get the directories listed in $shlibpath_var
! 1303: eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
! 1304: else
! 1305: shlib_search_path=
! 1306: fi
! 1307: eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
! 1308: eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
! 1309:
! 1310: output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
! 1311: if test "X$output_objdir" = "X$output"; then
! 1312: output_objdir="$objdir"
! 1313: else
! 1314: output_objdir="$output_objdir/$objdir"
! 1315: fi
! 1316: # Create the object directory.
! 1317: if test ! -d $output_objdir; then
! 1318: $show "$mkdir $output_objdir"
! 1319: $run $mkdir $output_objdir
! 1320: status=$?
! 1321: if test $status -ne 0 && test ! -d $output_objdir; then
! 1322: exit $status
! 1323: fi
! 1324: fi
! 1325:
! 1326: # Determine the type of output
! 1327: case $output in
! 1328: "")
! 1329: $echo "$modename: you must specify an output file" 1>&2
! 1330: $echo "$help" 1>&2
! 1331: exit 1
! 1332: ;;
! 1333: *.$libext) linkmode=oldlib ;;
! 1334: *.lo | *.$objext) linkmode=obj ;;
! 1335: *.la) linkmode=lib ;;
! 1336: *) linkmode=prog ;; # Anything else should be a program.
! 1337: esac
! 1338:
! 1339: specialdeplibs=
! 1340: libs=
! 1341: # Find all interdependent deplibs by searching for libraries
! 1342: # that are linked more than once (e.g. -la -lb -la)
! 1343: for deplib in $deplibs; do
! 1344: if test "X$duplicate_deps" = "Xyes" ; then
! 1345: case "$libs " in
! 1346: *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! 1347: esac
! 1348: fi
! 1349: libs="$libs $deplib"
! 1350: done
! 1351: deplibs=
! 1352: newdependency_libs=
! 1353: newlib_search_path=
! 1354: need_relink=no # whether we're linking any uninstalled libtool libraries
! 1355: notinst_deplibs= # not-installed libtool libraries
! 1356: notinst_path= # paths that contain not-installed libtool libraries
! 1357: case $linkmode in
! 1358: lib)
! 1359: passes="conv link"
! 1360: for file in $dlfiles $dlprefiles; do
! 1361: case $file in
! 1362: *.la) ;;
! 1363: *)
! 1364: $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
! 1365: exit 1
! 1366: ;;
! 1367: esac
! 1368: done
! 1369: ;;
! 1370: prog)
! 1371: compile_deplibs=
! 1372: finalize_deplibs=
! 1373: alldeplibs=no
! 1374: newdlfiles=
! 1375: newdlprefiles=
! 1376: passes="conv scan dlopen dlpreopen link"
! 1377: ;;
! 1378: *) passes="conv"
! 1379: ;;
! 1380: esac
! 1381: for pass in $passes; do
! 1382: if test $linkmode = prog; then
! 1383: # Determine which files to process
! 1384: case $pass in
! 1385: dlopen)
! 1386: libs="$dlfiles"
! 1387: save_deplibs="$deplibs" # Collect dlpreopened libraries
! 1388: deplibs=
! 1389: ;;
! 1390: dlpreopen) libs="$dlprefiles" ;;
! 1391: link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
! 1392: esac
! 1393: fi
! 1394: for deplib in $libs; do
! 1395: lib=
! 1396: found=no
! 1397: case $deplib in
! 1398: -l*)
! 1399: if test $linkmode = oldlib && test $linkmode = obj; then
! 1400: $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
! 1401: continue
! 1402: fi
! 1403: if test $pass = conv; then
! 1404: deplibs="$deplib $deplibs"
! 1405: continue
! 1406: fi
! 1407: name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
! 1408: for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
! 1409: # Search the libtool library
! 1410: lib="$searchdir/lib${name}.la"
! 1411: if test -f "$lib"; then
! 1412: found=yes
! 1413: break
! 1414: fi
! 1415: done
! 1416: if test "$found" != yes; then
! 1417: # deplib doesn't seem to be a libtool library
! 1418: if test "$linkmode,$pass" = "prog,link"; then
! 1419: compile_deplibs="$deplib $compile_deplibs"
! 1420: finalize_deplibs="$deplib $finalize_deplibs"
! 1421: else
! 1422: deplibs="$deplib $deplibs"
! 1423: test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs"
! 1424: fi
! 1425: continue
! 1426: fi
! 1427: ;; # -l
! 1428: -L*)
! 1429: case $linkmode in
! 1430: lib)
! 1431: deplibs="$deplib $deplibs"
! 1432: test $pass = conv && continue
! 1433: newdependency_libs="$deplib $newdependency_libs"
! 1434: newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
! 1435: ;;
! 1436: prog)
! 1437: if test $pass = conv; then
! 1438: deplibs="$deplib $deplibs"
! 1439: continue
! 1440: fi
! 1441: if test $pass = scan; then
! 1442: deplibs="$deplib $deplibs"
! 1443: newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
! 1444: else
! 1445: compile_deplibs="$deplib $compile_deplibs"
! 1446: finalize_deplibs="$deplib $finalize_deplibs"
! 1447: fi
! 1448: ;;
! 1449: *)
! 1450: $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2
! 1451: ;;
! 1452: esac # linkmode
! 1453: continue
! 1454: ;; # -L
! 1455: -R*)
! 1456: if test $pass = link; then
! 1457: dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
! 1458: # Make sure the xrpath contains only unique directories.
! 1459: case "$xrpath " in
! 1460: *" $dir "*) ;;
! 1461: *) xrpath="$xrpath $dir" ;;
! 1462: esac
! 1463: fi
! 1464: deplibs="$deplib $deplibs"
! 1465: continue
! 1466: ;;
! 1467: *.la) lib="$deplib" ;;
! 1468: *.$libext)
! 1469: if test $pass = conv; then
! 1470: deplibs="$deplib $deplibs"
! 1471: continue
! 1472: fi
! 1473: case $linkmode in
! 1474: lib)
! 1475: if test "$deplibs_check_method" != pass_all; then
! 1476: echo
! 1477: echo "*** Warning: Trying to link with static lib archive $deplib."
! 1478: echo "*** I have the capability to make that library automatically link in when"
! 1479: echo "*** you link to this library. But I can only do this if you have a"
! 1480: echo "*** shared version of the library, which you do not appear to have"
! 1481: echo "*** because the file extensions .$libext of this argument makes me believe"
! 1482: echo "*** that it is just a static archive that I should not used here."
! 1483: else
! 1484: echo
! 1485: echo "*** Warning: Linking the shared library $output against the"
! 1486: echo "*** static library $deplib is not portable!"
! 1487: deplibs="$deplib $deplibs"
! 1488: fi
! 1489: continue
! 1490: ;;
! 1491: prog)
! 1492: if test $pass != link; then
! 1493: deplibs="$deplib $deplibs"
! 1494: else
! 1495: compile_deplibs="$deplib $compile_deplibs"
! 1496: finalize_deplibs="$deplib $finalize_deplibs"
! 1497: fi
! 1498: continue
! 1499: ;;
! 1500: esac # linkmode
! 1501: ;; # *.$libext
! 1502: *.lo | *.$objext)
! 1503: if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
! 1504: # If there is no dlopen support or we're linking statically,
! 1505: # we need to preload.
! 1506: newdlprefiles="$newdlprefiles $deplib"
! 1507: compile_deplibs="$deplib $compile_deplibs"
! 1508: finalize_deplibs="$deplib $finalize_deplibs"
! 1509: else
! 1510: newdlfiles="$newdlfiles $deplib"
! 1511: fi
! 1512: continue
! 1513: ;;
! 1514: %DEPLIBS%)
! 1515: alldeplibs=yes
! 1516: continue
! 1517: ;;
! 1518: esac # case $deplib
! 1519: if test $found = yes || test -f "$lib"; then :
! 1520: else
! 1521: $echo "$modename: cannot find the library \`$lib'" 1>&2
! 1522: exit 1
! 1523: fi
! 1524:
! 1525: # Check to see that this really is a libtool archive.
! 1526: if (${SED} -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
! 1527: else
! 1528: $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
! 1529: exit 1
! 1530: fi
! 1531:
! 1532: ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
! 1533: test "X$ladir" = "X$lib" && ladir="."
! 1534:
! 1535: dlname=
! 1536: dlopen=
! 1537: dlpreopen=
! 1538: libdir=
! 1539: library_names=
! 1540: old_library=
! 1541: # If the library was installed with an old release of libtool,
! 1542: # it will not redefine variable installed.
! 1543: installed=yes
! 1544:
! 1545: # Read the .la file
! 1546: case $lib in
! 1547: */* | *\\*) . $lib ;;
! 1548: *) . ./$lib ;;
! 1549: esac
! 1550:
! 1551: if test "$linkmode,$pass" = "lib,link" ||
! 1552: test "$linkmode,$pass" = "prog,scan" ||
! 1553: { test $linkmode = oldlib && test $linkmode = obj; }; then
! 1554: # Add dl[pre]opened files of deplib
! 1555: test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
! 1556: test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
! 1557: fi
! 1558:
! 1559: if test $pass = conv; then
! 1560: # Only check for convenience libraries
! 1561: deplibs="$lib $deplibs"
! 1562: if test -z "$libdir"; then
! 1563: if test -z "$old_library"; then
! 1564: $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
! 1565: exit 1
! 1566: fi
! 1567: # It is a libtool convenience library, so add in its objects.
! 1568: convenience="$convenience $ladir/$objdir/$old_library"
! 1569: old_convenience="$old_convenience $ladir/$objdir/$old_library"
! 1570: tmp_libs=
! 1571: for deplib in $dependency_libs; do
! 1572: deplibs="$deplib $deplibs"
! 1573: if test "X$duplicate_deps" = "Xyes" ; then
! 1574: case "$tmp_libs " in
! 1575: *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! 1576: esac
! 1577: fi
! 1578: tmp_libs="$tmp_libs $deplib"
! 1579: done
! 1580: elif test $linkmode != prog && test $linkmode != lib; then
! 1581: $echo "$modename: \`$lib' is not a convenience library" 1>&2
! 1582: exit 1
! 1583: fi
! 1584: continue
! 1585: fi # $pass = conv
! 1586:
! 1587: # Get the name of the library we link against.
! 1588: linklib=
! 1589: for l in $old_library $library_names; do
! 1590: linklib="$l"
! 1591: done
! 1592: if test -z "$linklib"; then
! 1593: $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
! 1594: exit 1
! 1595: fi
! 1596:
! 1597: # This library was specified with -dlopen.
! 1598: if test $pass = dlopen; then
! 1599: if test -z "$libdir"; then
! 1600: $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
! 1601: exit 1
! 1602: fi
! 1603: if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
! 1604: # If there is no dlname, no dlopen support or we're linking
! 1605: # statically, we need to preload.
! 1606: dlprefiles="$dlprefiles $lib"
! 1607: else
! 1608: newdlfiles="$newdlfiles $lib"
! 1609: fi
! 1610: continue
! 1611: fi # $pass = dlopen
! 1612:
! 1613: # We need an absolute path.
! 1614: case $ladir in
! 1615: [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
! 1616: *)
! 1617: abs_ladir=`cd "$ladir" && pwd`
! 1618: if test -z "$abs_ladir"; then
! 1619: $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
! 1620: $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
! 1621: abs_ladir="$ladir"
! 1622: fi
! 1623: ;;
! 1624: esac
! 1625: laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
! 1626:
! 1627: # Find the relevant object directory and library name.
! 1628: if test "X$installed" = Xyes; then
! 1629: if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
! 1630: $echo "$modename: warning: library \`$lib' was moved." 1>&2
! 1631: dir="$ladir"
! 1632: absdir="$abs_ladir"
! 1633: libdir="$abs_ladir"
! 1634: else
! 1635: dir="$libdir"
! 1636: absdir="$libdir"
! 1637: fi
! 1638: else
! 1639: dir="$ladir/$objdir"
! 1640: absdir="$abs_ladir/$objdir"
! 1641: # Remove this search path later
! 1642: notinst_path="$notinst_path $abs_ladir"
! 1643: fi # $installed = yes
! 1644: name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
! 1645:
! 1646: # This library was specified with -dlpreopen.
! 1647: if test $pass = dlpreopen; then
! 1648: if test -z "$libdir"; then
! 1649: $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
! 1650: exit 1
! 1651: fi
! 1652: # Prefer using a static library (so that no silly _DYNAMIC symbols
! 1653: # are required to link).
! 1654: if test -n "$old_library"; then
! 1655: newdlprefiles="$newdlprefiles $dir/$old_library"
! 1656: # Otherwise, use the dlname, so that lt_dlopen finds it.
! 1657: elif test -n "$dlname"; then
! 1658: newdlprefiles="$newdlprefiles $dir/$dlname"
! 1659: else
! 1660: newdlprefiles="$newdlprefiles $dir/$linklib"
! 1661: fi
! 1662: fi # $pass = dlpreopen
! 1663:
! 1664: if test -z "$libdir"; then
! 1665: # Link the convenience library
! 1666: if test $linkmode = lib; then
! 1667: deplibs="$dir/$old_library $deplibs"
! 1668: elif test "$linkmode,$pass" = "prog,link"; then
! 1669: compile_deplibs="$dir/$old_library $compile_deplibs"
! 1670: finalize_deplibs="$dir/$old_library $finalize_deplibs"
! 1671: else
! 1672: deplibs="$lib $deplibs"
! 1673: fi
! 1674: continue
! 1675: fi
! 1676:
! 1677: if test $linkmode = prog && test $pass != link; then
! 1678: newlib_search_path="$newlib_search_path $ladir"
! 1679: deplibs="$lib $deplibs"
! 1680:
! 1681: linkalldeplibs=no
! 1682: if test "$link_all_deplibs" != no || test -z "$library_names" ||
! 1683: test "$build_libtool_libs" = no; then
! 1684: linkalldeplibs=yes
! 1685: fi
! 1686:
! 1687: tmp_libs=
! 1688: for deplib in $dependency_libs; do
! 1689: case $deplib in
! 1690: -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
! 1691: esac
! 1692: # Need to link against all dependency_libs?
! 1693: if test $linkalldeplibs = yes; then
! 1694: deplibs="$deplib $deplibs"
! 1695: else
! 1696: # Need to hardcode shared library paths
! 1697: # or/and link against static libraries
! 1698: newdependency_libs="$deplib $newdependency_libs"
! 1699: fi
! 1700: if test "X$duplicate_deps" = "Xyes" ; then
! 1701: case "$tmp_libs " in
! 1702: *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! 1703: esac
! 1704: fi
! 1705: tmp_libs="$tmp_libs $deplib"
! 1706: done # for deplib
! 1707: continue
! 1708: fi # $linkmode = prog...
! 1709:
! 1710: link_static=no # Whether the deplib will be linked statically
! 1711: if test -n "$library_names" &&
! 1712: { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
! 1713: # Link against this shared library
! 1714:
! 1715: if test "$linkmode,$pass" = "prog,link" ||
! 1716: { test $linkmode = lib && test $hardcode_into_libs = yes; }; then
! 1717: # Hardcode the library path.
! 1718: # Skip directories that are in the system default run-time
! 1719: # search path.
! 1720: case " $sys_lib_dlsearch_path " in
! 1721: *" $absdir "*) ;;
! 1722: *)
! 1723: case "$compile_rpath " in
! 1724: *" $absdir "*) ;;
! 1725: *) compile_rpath="$compile_rpath $absdir"
! 1726: esac
! 1727: ;;
! 1728: esac
! 1729: case " $sys_lib_dlsearch_path " in
! 1730: *" $libdir "*) ;;
! 1731: *)
! 1732: case "$finalize_rpath " in
! 1733: *" $libdir "*) ;;
! 1734: *) finalize_rpath="$finalize_rpath $libdir"
! 1735: esac
! 1736: ;;
! 1737: esac
! 1738: if test $linkmode = prog; then
! 1739: # We need to hardcode the library path
! 1740: if test -n "$shlibpath_var"; then
! 1741: # Make sure the rpath contains only unique directories.
! 1742: case "$temp_rpath " in
! 1743: *" $dir "*) ;;
! 1744: *" $absdir "*) ;;
! 1745: *) temp_rpath="$temp_rpath $dir" ;;
! 1746: esac
! 1747: fi
! 1748: fi
! 1749: fi # $linkmode,$pass = prog,link...
! 1750:
! 1751: if test "$alldeplibs" = yes &&
! 1752: { test "$deplibs_check_method" = pass_all ||
! 1753: { test "$build_libtool_libs" = yes &&
! 1754: test -n "$library_names"; }; }; then
! 1755: # We only need to search for static libraries
! 1756: continue
! 1757: fi
! 1758:
! 1759: if test "$installed" = no; then
! 1760: notinst_deplibs="$notinst_deplibs $lib"
! 1761: need_relink=yes
! 1762: fi
! 1763:
! 1764: if test -n "$old_archive_from_expsyms_cmds"; then
! 1765: # figure out the soname
! 1766: set dummy $library_names
! 1767: realname="$2"
! 1768: shift; shift
! 1769: libname=`eval \\$echo \"$libname_spec\"`
! 1770: # use dlname if we got it. it's perfectly good, no?
! 1771: if test -n "$dlname"; then
! 1772: soname="$dlname"
! 1773: elif test -n "$soname_spec"; then
! 1774: # bleh windows
! 1775: case $host in
! 1776: *cygwin*)
! 1777: major=`expr $current - $age`
! 1778: versuffix="-$major"
! 1779: ;;
! 1780: esac
! 1781: eval soname=\"$soname_spec\"
! 1782: else
! 1783: soname="$realname"
! 1784: fi
! 1785:
! 1786: # Make a new name for the extract_expsyms_cmds to use
! 1787: soroot="$soname"
! 1788: soname=`echo $soroot | ${SED} -e 's/^.*\///'`
! 1789: newlib="libimp-`echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
! 1790:
! 1791: # If the library has no export list, then create one now
! 1792: if test -f "$output_objdir/$soname-def"; then :
! 1793: else
! 1794: $show "extracting exported symbol list from \`$soname'"
! 1795: save_ifs="$IFS"; IFS='~'
! 1796: eval cmds=\"$extract_expsyms_cmds\"
! 1797: for cmd in $cmds; do
! 1798: IFS="$save_ifs"
! 1799: $show "$cmd"
! 1800: $run eval "$cmd" || exit $?
! 1801: done
! 1802: IFS="$save_ifs"
! 1803: fi
! 1804:
! 1805: # Create $newlib
! 1806: if test -f "$output_objdir/$newlib"; then :; else
! 1807: $show "generating import library for \`$soname'"
! 1808: save_ifs="$IFS"; IFS='~'
! 1809: eval cmds=\"$old_archive_from_expsyms_cmds\"
! 1810: for cmd in $cmds; do
! 1811: IFS="$save_ifs"
! 1812: $show "$cmd"
! 1813: $run eval "$cmd" || exit $?
! 1814: done
! 1815: IFS="$save_ifs"
! 1816: fi
! 1817: # make sure the library variables are pointing to the new library
! 1818: dir=$output_objdir
! 1819: linklib=$newlib
! 1820: fi # test -n $old_archive_from_expsyms_cmds
! 1821:
! 1822: if test $linkmode = prog || test "$mode" != relink; then
! 1823: add_shlibpath=
! 1824: add_dir=
! 1825: add=
! 1826: lib_linked=yes
! 1827: case $hardcode_action in
! 1828: immediate | unsupported)
! 1829: if test "$hardcode_direct" = no; then
! 1830: add="$dir/$linklib"
! 1831: elif test "$hardcode_minus_L" = no; then
! 1832: case $host in
! 1833: *-*-sunos*) add_shlibpath="$dir" ;;
! 1834: esac
! 1835: add_dir="-L$dir"
! 1836: add="-l$name"
! 1837: elif test "$hardcode_shlibpath_var" = no; then
! 1838: add_shlibpath="$dir"
! 1839: add="-l$name"
! 1840: else
! 1841: lib_linked=no
! 1842: fi
! 1843: ;;
! 1844: relink)
! 1845: if test "$hardcode_direct" = yes; then
! 1846: add="$dir/$linklib"
! 1847: elif test "$hardcode_minus_L" = yes; then
! 1848: add_dir="-L$dir"
! 1849: add="-l$name"
! 1850: elif test "$hardcode_shlibpath_var" = yes; then
! 1851: add_shlibpath="$dir"
! 1852: add="-l$name"
! 1853: else
! 1854: lib_linked=no
! 1855: fi
! 1856: ;;
! 1857: *) lib_linked=no ;;
! 1858: esac
! 1859:
! 1860: if test "$lib_linked" != yes; then
! 1861: $echo "$modename: configuration error: unsupported hardcode properties"
! 1862: exit 1
! 1863: fi
! 1864:
! 1865: if test -n "$add_shlibpath"; then
! 1866: case :$compile_shlibpath: in
! 1867: *":$add_shlibpath:"*) ;;
! 1868: *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
! 1869: esac
! 1870: fi
! 1871: if test $linkmode = prog; then
! 1872: test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
! 1873: test -n "$add" && compile_deplibs="$add $compile_deplibs"
! 1874: else
! 1875: test -n "$add_dir" && deplibs="$add_dir $deplibs"
! 1876: test -n "$add" && deplibs="$add $deplibs"
! 1877: if test "$hardcode_direct" != yes && \
! 1878: test "$hardcode_minus_L" != yes && \
! 1879: test "$hardcode_shlibpath_var" = yes; then
! 1880: case :$finalize_shlibpath: in
! 1881: *":$libdir:"*) ;;
! 1882: *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
! 1883: esac
! 1884: fi
! 1885: fi
! 1886: fi
! 1887:
! 1888: if test $linkmode = prog || test "$mode" = relink; then
! 1889: add_shlibpath=
! 1890: add_dir=
! 1891: add=
! 1892: # Finalize command for both is simple: just hardcode it.
! 1893: if test "$hardcode_direct" = yes; then
! 1894: add="$libdir/$linklib"
! 1895: elif test "$hardcode_minus_L" = yes; then
! 1896: add_dir="-L$libdir"
! 1897: add="-l$name"
! 1898: elif test "$hardcode_shlibpath_var" = yes; then
! 1899: case :$finalize_shlibpath: in
! 1900: *":$libdir:"*) ;;
! 1901: *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
! 1902: esac
! 1903: add="-l$name"
! 1904: else
! 1905: # We cannot seem to hardcode it, guess we'll fake it.
! 1906: add_dir="-L$libdir"
! 1907: add="-l$name"
! 1908: fi
! 1909:
! 1910: if test $linkmode = prog; then
! 1911: test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
! 1912: test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
! 1913: else
! 1914: test -n "$add_dir" && deplibs="$add_dir $deplibs"
! 1915: test -n "$add" && deplibs="$add $deplibs"
! 1916: fi
! 1917: fi
! 1918: elif test $linkmode = prog; then
! 1919: if test "$alldeplibs" = yes &&
! 1920: { test "$deplibs_check_method" = pass_all ||
! 1921: { test "$build_libtool_libs" = yes &&
! 1922: test -n "$library_names"; }; }; then
! 1923: # We only need to search for static libraries
! 1924: continue
! 1925: fi
! 1926:
! 1927: # Try to link the static library
! 1928: # Here we assume that one of hardcode_direct or hardcode_minus_L
! 1929: # is not unsupported. This is valid on all known static and
! 1930: # shared platforms.
! 1931: if test "$hardcode_direct" != unsupported; then
! 1932: test -n "$old_library" && linklib="$old_library"
! 1933: compile_deplibs="$dir/$linklib $compile_deplibs"
! 1934: finalize_deplibs="$dir/$linklib $finalize_deplibs"
! 1935: else
! 1936: compile_deplibs="-l$name -L$dir $compile_deplibs"
! 1937: finalize_deplibs="-l$name -L$dir $finalize_deplibs"
! 1938: fi
! 1939: elif test "$build_libtool_libs" = yes; then
! 1940: # Not a shared library
! 1941: if test "$deplibs_check_method" != pass_all; then
! 1942: # We're trying link a shared library against a static one
! 1943: # but the system doesn't support it.
! 1944:
! 1945: # Just print a warning and add the library to dependency_libs so
! 1946: # that the program can be linked against the static library.
! 1947: echo
! 1948: echo "*** Warning: This system can not link to static lib archive $lib."
! 1949: echo "*** I have the capability to make that library automatically link in when"
! 1950: echo "*** you link to this library. But I can only do this if you have a"
! 1951: echo "*** shared version of the library, which you do not appear to have."
! 1952: if test "$module" = yes; then
! 1953: echo "*** But as you try to build a module library, libtool will still create "
! 1954: echo "*** a static module, that should work as long as the dlopening application"
! 1955: echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
! 1956: if test -z "$global_symbol_pipe"; then
! 1957: echo
! 1958: echo "*** However, this would only work if libtool was able to extract symbol"
! 1959: echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
! 1960: echo "*** not find such a program. So, this module is probably useless."
! 1961: echo "*** \`nm' from GNU binutils and a full rebuild may help."
! 1962: fi
! 1963: if test "$build_old_libs" = no; then
! 1964: build_libtool_libs=module
! 1965: build_old_libs=yes
! 1966: else
! 1967: build_libtool_libs=no
! 1968: fi
! 1969: fi
! 1970: else
! 1971: convenience="$convenience $dir/$old_library"
! 1972: old_convenience="$old_convenience $dir/$old_library"
! 1973: deplibs="$dir/$old_library $deplibs"
! 1974: link_static=yes
! 1975: fi
! 1976: fi # link shared/static library?
! 1977:
! 1978: if test $linkmode = lib; then
! 1979: if test -n "$dependency_libs" &&
! 1980: { test $hardcode_into_libs != yes || test $build_old_libs = yes ||
! 1981: test $link_static = yes; }; then
! 1982: # Extract -R from dependency_libs
! 1983: temp_deplibs=
! 1984: for libdir in $dependency_libs; do
! 1985: case $libdir in
! 1986: -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
! 1987: case " $xrpath " in
! 1988: *" $temp_xrpath "*) ;;
! 1989: *) xrpath="$xrpath $temp_xrpath";;
! 1990: esac;;
! 1991: *) temp_deplibs="$temp_deplibs $libdir";;
! 1992: esac
! 1993: done
! 1994: dependency_libs="$temp_deplibs"
! 1995: fi
! 1996:
! 1997: newlib_search_path="$newlib_search_path $absdir"
! 1998: # Link against this library
! 1999: test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
! 2000: # ... and its dependency_libs
! 2001: tmp_libs=
! 2002: for deplib in $dependency_libs; do
! 2003: newdependency_libs="$deplib $newdependency_libs"
! 2004: if test "X$duplicate_deps" = "Xyes" ; then
! 2005: case "$tmp_libs " in
! 2006: *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! 2007: esac
! 2008: fi
! 2009: tmp_libs="$tmp_libs $deplib"
! 2010: done
! 2011:
! 2012: if test $link_all_deplibs != no; then
! 2013: # Add the search paths of all dependency libraries
! 2014: for deplib in $dependency_libs; do
! 2015: case $deplib in
! 2016: -L*) path="$deplib" ;;
! 2017: *.la)
! 2018: dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
! 2019: test "X$dir" = "X$deplib" && dir="."
! 2020: # We need an absolute path.
! 2021: case $dir in
! 2022: [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
! 2023: *)
! 2024: absdir=`cd "$dir" && pwd`
! 2025: if test -z "$absdir"; then
! 2026: $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
! 2027: absdir="$dir"
! 2028: fi
! 2029: ;;
! 2030: esac
! 2031: if grep "^installed=no" $deplib > /dev/null; then
! 2032: path="-L$absdir/$objdir"
! 2033: else
! 2034: eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
! 2035: if test -z "$libdir"; then
! 2036: $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
! 2037: exit 1
! 2038: fi
! 2039: if test "$absdir" != "$libdir"; then
! 2040: $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
! 2041: fi
! 2042: path="-L$absdir"
! 2043: fi
! 2044: ;;
! 2045: *) continue ;;
! 2046: esac
! 2047: case " $deplibs " in
! 2048: *" $path "*) ;;
! 2049: *) deplibs="$deplibs $path" ;;
! 2050: esac
! 2051: done
! 2052: fi # link_all_deplibs != no
! 2053: fi # linkmode = lib
! 2054: done # for deplib in $libs
! 2055: if test $pass = dlpreopen; then
! 2056: # Link the dlpreopened libraries before other libraries
! 2057: for deplib in $save_deplibs; do
! 2058: deplibs="$deplib $deplibs"
! 2059: done
! 2060: fi
! 2061: if test $pass != dlopen; then
! 2062: test $pass != scan && dependency_libs="$newdependency_libs"
! 2063: if test $pass != conv; then
! 2064: # Make sure lib_search_path contains only unique directories.
! 2065: lib_search_path=
! 2066: for dir in $newlib_search_path; do
! 2067: case "$lib_search_path " in
! 2068: *" $dir "*) ;;
! 2069: *) lib_search_path="$lib_search_path $dir" ;;
! 2070: esac
! 2071: done
! 2072: newlib_search_path=
! 2073: fi
! 2074:
! 2075: if test "$linkmode,$pass" != "prog,link"; then
! 2076: vars="deplibs"
! 2077: else
! 2078: vars="compile_deplibs finalize_deplibs"
! 2079: fi
! 2080: for var in $vars dependency_libs; do
! 2081: # Add libraries to $var in reverse order
! 2082: eval tmp_libs=\"\$$var\"
! 2083: new_libs=
! 2084: for deplib in $tmp_libs; do
! 2085: case $deplib in
! 2086: -L*) new_libs="$deplib $new_libs" ;;
! 2087: *)
! 2088: case " $specialdeplibs " in
! 2089: *" $deplib "*) new_libs="$deplib $new_libs" ;;
! 2090: *)
! 2091: case " $new_libs " in
! 2092: *" $deplib "*) ;;
! 2093: *) new_libs="$deplib $new_libs" ;;
! 2094: esac
! 2095: ;;
! 2096: esac
! 2097: ;;
! 2098: esac
! 2099: done
! 2100: tmp_libs=
! 2101: for deplib in $new_libs; do
! 2102: case $deplib in
! 2103: -L*)
! 2104: case " $tmp_libs " in
! 2105: *" $deplib "*) ;;
! 2106: *) tmp_libs="$tmp_libs $deplib" ;;
! 2107: esac
! 2108: ;;
! 2109: *) tmp_libs="$tmp_libs $deplib" ;;
! 2110: esac
! 2111: done
! 2112: eval $var=\"$tmp_libs\"
! 2113: done # for var
! 2114: fi
! 2115: if test "$pass" = "conv" &&
! 2116: { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then
! 2117: libs="$deplibs" # reset libs
! 2118: deplibs=
! 2119: fi
! 2120: done # for pass
! 2121: if test $linkmode = prog; then
! 2122: dlfiles="$newdlfiles"
! 2123: dlprefiles="$newdlprefiles"
! 2124: fi
! 2125:
! 2126: case $linkmode in
! 2127: oldlib)
! 2128: if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
! 2129: $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
! 2130: fi
! 2131:
! 2132: if test -n "$rpath"; then
! 2133: $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2
! 2134: fi
! 2135:
! 2136: if test -n "$xrpath"; then
! 2137: $echo "$modename: warning: \`-R' is ignored for archives" 1>&2
! 2138: fi
! 2139:
! 2140: if test -n "$vinfo"; then
! 2141: $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2
! 2142: fi
! 2143:
! 2144: if test -n "$release"; then
! 2145: $echo "$modename: warning: \`-release' is ignored for archives" 1>&2
! 2146: fi
! 2147:
! 2148: if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
! 2149: $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2
! 2150: fi
! 2151:
! 2152: # Now set the variables for building old libraries.
! 2153: build_libtool_libs=no
! 2154: oldlibs="$output"
! 2155: objs="$objs$old_deplibs"
! 2156: ;;
! 2157:
! 2158: lib)
! 2159: # Make sure we only generate libraries of the form `libNAME.la'.
! 2160: case $outputname in
! 2161: lib*)
! 2162: name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
! 2163: eval libname=\"$libname_spec\"
! 2164: ;;
! 2165: *)
! 2166: if test "$module" = no; then
! 2167: $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
! 2168: $echo "$help" 1>&2
! 2169: exit 1
! 2170: fi
! 2171: if test "$need_lib_prefix" != no; then
! 2172: # Add the "lib" prefix for modules if required
! 2173: name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
! 2174: eval libname=\"$libname_spec\"
! 2175: else
! 2176: libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
! 2177: fi
! 2178: ;;
! 2179: esac
! 2180:
! 2181: if test -n "$objs"; then
! 2182: if test "$deplibs_check_method" != pass_all; then
! 2183: $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
! 2184: exit 1
! 2185: else
! 2186: echo
! 2187: echo "*** Warning: Linking the shared library $output against the non-libtool"
! 2188: echo "*** objects $objs is not portable!"
! 2189: libobjs="$libobjs $objs"
! 2190: fi
! 2191: fi
! 2192:
! 2193: if test "$dlself" != no; then
! 2194: $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2
! 2195: fi
! 2196:
! 2197: set dummy $rpath
! 2198: if test $# -gt 2; then
! 2199: $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
! 2200: fi
! 2201: install_libdir="$2"
! 2202:
! 2203: oldlibs=
! 2204: if test -z "$rpath"; then
! 2205: if test "$build_libtool_libs" = yes; then
! 2206: # Building a libtool convenience library.
! 2207: libext=al
! 2208: oldlibs="$output_objdir/$libname.$libext $oldlibs"
! 2209: build_libtool_libs=convenience
! 2210: build_old_libs=yes
! 2211: fi
! 2212:
! 2213: if test -n "$vinfo"; then
! 2214: $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2
! 2215: fi
! 2216:
! 2217: if test -n "$release"; then
! 2218: $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2
! 2219: fi
! 2220: else
! 2221:
! 2222: # Parse the version information argument.
! 2223: save_ifs="$IFS"; IFS=':'
! 2224: set dummy $vinfo 0 0 0
! 2225: IFS="$save_ifs"
! 2226:
! 2227: if test -n "$8"; then
! 2228: $echo "$modename: too many parameters to \`-version-info'" 1>&2
! 2229: $echo "$help" 1>&2
! 2230: exit 1
! 2231: fi
! 2232:
! 2233: current="$2"
! 2234: revision="$3"
! 2235: age="$4"
! 2236:
! 2237: # Check that each of the things are valid numbers.
! 2238: case $current in
! 2239: 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
! 2240: *)
! 2241: $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
! 2242: $echo "$modename: \`$vinfo' is not valid version information" 1>&2
! 2243: exit 1
! 2244: ;;
! 2245: esac
! 2246:
! 2247: case $revision in
! 2248: 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
! 2249: *)
! 2250: $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
! 2251: $echo "$modename: \`$vinfo' is not valid version information" 1>&2
! 2252: exit 1
! 2253: ;;
! 2254: esac
! 2255:
! 2256: case $age in
! 2257: 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
! 2258: *)
! 2259: $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
! 2260: $echo "$modename: \`$vinfo' is not valid version information" 1>&2
! 2261: exit 1
! 2262: ;;
! 2263: esac
! 2264:
! 2265: if test $age -gt $current; then
! 2266: $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
! 2267: $echo "$modename: \`$vinfo' is not valid version information" 1>&2
! 2268: exit 1
! 2269: fi
! 2270:
! 2271: # Calculate the version variables.
! 2272: major=
! 2273: versuffix=
! 2274: verstring=
! 2275: case $version_type in
! 2276: none) ;;
! 2277:
! 2278: darwin)
! 2279: # Like Linux, but with the current version available in
! 2280: # verstring for coding it into the library header
! 2281: major=.`expr $current - $age`
! 2282: versuffix="$major.$age.$revision"
! 2283: # Darwin ld doesn't like 0 for these options...
! 2284: minor_current=`expr $current + 1`
! 2285: verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
! 2286: ;;
! 2287:
! 2288: freebsd-aout)
! 2289: major=".$current"
! 2290: versuffix=".$current.$revision";
! 2291: ;;
! 2292:
! 2293: freebsd-elf)
! 2294: major=".$current"
! 2295: versuffix=".$current";
! 2296: ;;
! 2297:
! 2298: irix | nonstopux)
! 2299: major=`expr $current - $age + 1`
! 2300:
! 2301: case $version_type in
! 2302: nonstopux) verstring_prefix=nonstopux ;;
! 2303: *) verstring_prefix=sgi ;;
! 2304: esac
! 2305: verstring="$verstring_prefix$major.$revision"
! 2306:
! 2307: # Add in all the interfaces that we are compatible with.
! 2308: loop=$revision
! 2309: while test $loop != 0; do
! 2310: iface=`expr $revision - $loop`
! 2311: loop=`expr $loop - 1`
! 2312: verstring="$verstring_prefix$major.$iface:$verstring"
! 2313: done
! 2314:
! 2315: # Before this point, $major must not contain `.'.
! 2316: major=.$major
! 2317: versuffix="$major.$revision"
! 2318: ;;
! 2319:
! 2320: linux)
! 2321: major=.`expr $current - $age`
! 2322: versuffix="$major.$age.$revision"
! 2323: ;;
! 2324:
! 2325: osf)
! 2326: major=.`expr $current - $age`
! 2327: versuffix=".$current.$age.$revision"
! 2328: verstring="$current.$age.$revision"
! 2329:
! 2330: # Add in all the interfaces that we are compatible with.
! 2331: loop=$age
! 2332: while test $loop != 0; do
! 2333: iface=`expr $current - $loop`
! 2334: loop=`expr $loop - 1`
! 2335: verstring="$verstring:${iface}.0"
! 2336: done
! 2337:
! 2338: # Make executables depend on our current version.
! 2339: verstring="$verstring:${current}.0"
! 2340: ;;
! 2341:
! 2342: sunos)
! 2343: major=".$current"
! 2344: versuffix=".$current.$revision"
! 2345: ;;
! 2346:
! 2347: windows)
! 2348: # Use '-' rather than '.', since we only want one
! 2349: # extension on DOS 8.3 filesystems.
! 2350: major=`expr $current - $age`
! 2351: versuffix="-$major"
! 2352: ;;
! 2353:
! 2354: *)
! 2355: $echo "$modename: unknown library version type \`$version_type'" 1>&2
! 2356: echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
! 2357: exit 1
! 2358: ;;
! 2359: esac
! 2360:
! 2361: # Clear the version info if we defaulted, and they specified a release.
! 2362: if test -z "$vinfo" && test -n "$release"; then
! 2363: major=
! 2364: verstring="0.0"
! 2365: case $version_type in
! 2366: darwin)
! 2367: # we can't check for "0.0" in archive_cmds due to quoting
! 2368: # problems, so we reset it completely
! 2369: verstring=""
! 2370: ;;
! 2371: *)
! 2372: verstring="0.0"
! 2373: ;;
! 2374: esac
! 2375: if test "$need_version" = no; then
! 2376: versuffix=
! 2377: else
! 2378: versuffix=".0.0"
! 2379: fi
! 2380: fi
! 2381:
! 2382: # Remove version info from name if versioning should be avoided
! 2383: if test "$avoid_version" = yes && test "$need_version" = no; then
! 2384: major=
! 2385: versuffix=
! 2386: verstring=""
! 2387: fi
! 2388:
! 2389: # Check to see if the archive will have undefined symbols.
! 2390: if test "$allow_undefined" = yes; then
! 2391: if test "$allow_undefined_flag" = unsupported; then
! 2392: $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
! 2393: build_libtool_libs=no
! 2394: build_old_libs=yes
! 2395: fi
! 2396: else
! 2397: # Don't allow undefined symbols.
! 2398: allow_undefined_flag="$no_undefined_flag"
! 2399: fi
! 2400: fi
! 2401:
! 2402: if test "$mode" != relink; then
! 2403: # Remove our outputs.
! 2404: $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*"
! 2405: $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*
! 2406: fi
! 2407:
! 2408: # Now set the variables for building old libraries.
! 2409: if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
! 2410: oldlibs="$oldlibs $output_objdir/$libname.$libext"
! 2411:
! 2412: # Transform .lo files to .o files.
! 2413: oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
! 2414: fi
! 2415:
! 2416: # Eliminate all temporary directories.
! 2417: for path in $notinst_path; do
! 2418: lib_search_path=`echo "$lib_search_path " | ${SED} -e 's% $path % %g'`
! 2419: deplibs=`echo "$deplibs " | ${SED} -e 's% -L$path % %g'`
! 2420: dependency_libs=`echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'`
! 2421: done
! 2422:
! 2423: if test -n "$xrpath"; then
! 2424: # If the user specified any rpath flags, then add them.
! 2425: temp_xrpath=
! 2426: for libdir in $xrpath; do
! 2427: temp_xrpath="$temp_xrpath -R$libdir"
! 2428: case "$finalize_rpath " in
! 2429: *" $libdir "*) ;;
! 2430: *) finalize_rpath="$finalize_rpath $libdir" ;;
! 2431: esac
! 2432: done
! 2433: if test $hardcode_into_libs != yes || test $build_old_libs = yes; then
! 2434: dependency_libs="$temp_xrpath $dependency_libs"
! 2435: fi
! 2436: fi
! 2437:
! 2438: # Make sure dlfiles contains only unique files that won't be dlpreopened
! 2439: old_dlfiles="$dlfiles"
! 2440: dlfiles=
! 2441: for lib in $old_dlfiles; do
! 2442: case " $dlprefiles $dlfiles " in
! 2443: *" $lib "*) ;;
! 2444: *) dlfiles="$dlfiles $lib" ;;
! 2445: esac
! 2446: done
! 2447:
! 2448: # Make sure dlprefiles contains only unique files
! 2449: old_dlprefiles="$dlprefiles"
! 2450: dlprefiles=
! 2451: for lib in $old_dlprefiles; do
! 2452: case "$dlprefiles " in
! 2453: *" $lib "*) ;;
! 2454: *) dlprefiles="$dlprefiles $lib" ;;
! 2455: esac
! 2456: done
! 2457:
! 2458: if test "$build_libtool_libs" = yes; then
! 2459: if test -n "$rpath"; then
! 2460: case $host in
! 2461: *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
! 2462: # these systems don't actually have a c library (as such)!
! 2463: ;;
! 2464: *-*-rhapsody* | *-*-darwin1.[012])
! 2465: # Rhapsody C library is in the System framework
! 2466: deplibs="$deplibs -framework System"
! 2467: ;;
! 2468: *-*-netbsd*)
! 2469: # Don't link with libc until the a.out ld.so is fixed.
! 2470: ;;
! 2471: *-*-openbsd* | *-*-freebsd*)
! 2472: # Do not include libc due to us having libc/libc_r.
! 2473: ;;
! 2474: *)
! 2475: # Add libc to deplibs on all other systems if necessary.
! 2476: if test $build_libtool_need_lc = "yes"; then
! 2477: deplibs="$deplibs -lc"
! 2478: fi
! 2479: ;;
! 2480: esac
! 2481: fi
! 2482:
! 2483: # Transform deplibs into only deplibs that can be linked in shared.
! 2484: name_save=$name
! 2485: libname_save=$libname
! 2486: release_save=$release
! 2487: versuffix_save=$versuffix
! 2488: major_save=$major
! 2489: # I'm not sure if I'm treating the release correctly. I think
! 2490: # release should show up in the -l (ie -lgmp5) so we don't want to
! 2491: # add it in twice. Is that correct?
! 2492: release=""
! 2493: versuffix=""
! 2494: major=""
! 2495: newdeplibs=
! 2496: droppeddeps=no
! 2497: case $deplibs_check_method in
! 2498: pass_all)
! 2499: # Don't check for shared/static. Everything works.
! 2500: # This might be a little naive. We might want to check
! 2501: # whether the library exists or not. But this is on
! 2502: # osf3 & osf4 and I'm not really sure... Just
! 2503: # implementing what was already the behaviour.
! 2504: newdeplibs=$deplibs
! 2505: ;;
! 2506: test_compile)
! 2507: # This code stresses the "libraries are programs" paradigm to its
! 2508: # limits. Maybe even breaks it. We compile a program, linking it
! 2509: # against the deplibs as a proxy for the library. Then we can check
! 2510: # whether they linked in statically or dynamically with ldd.
! 2511: $rm conftest.c
! 2512: cat > conftest.c <<EOF
! 2513: int main() { return 0; }
! 2514: EOF
! 2515: $rm conftest
! 2516: $CC -o conftest conftest.c $deplibs
! 2517: if test $? -eq 0 ; then
! 2518: ldd_output=`ldd conftest`
! 2519: for i in $deplibs; do
! 2520: name="`expr $i : '-l\(.*\)'`"
! 2521: # If $name is empty we are operating on a -L argument.
! 2522: if test -n "$name" && test "$name" != "0"; then
! 2523: libname=`eval \\$echo \"$libname_spec\"`
! 2524: deplib_matches=`eval \\$echo \"$library_names_spec\"`
! 2525: set dummy $deplib_matches
! 2526: deplib_match=$2
! 2527: if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
! 2528: newdeplibs="$newdeplibs $i"
! 2529: else
! 2530: droppeddeps=yes
! 2531: echo
! 2532: echo "*** Warning: dynamic linker does not accept needed library $i."
! 2533: echo "*** I have the capability to make that library automatically link in when"
! 2534: echo "*** you link to this library. But I can only do this if you have a"
! 2535: echo "*** shared version of the library, which I believe you do not have"
! 2536: echo "*** because a test_compile did reveal that the linker did not use it for"
! 2537: echo "*** its dynamic dependency list that programs get resolved with at runtime."
! 2538: fi
! 2539: else
! 2540: newdeplibs="$newdeplibs $i"
! 2541: fi
! 2542: done
! 2543: else
! 2544: # Error occured in the first compile. Let's try to salvage
! 2545: # the situation: Compile a separate program for each library.
! 2546: for i in $deplibs; do
! 2547: name="`expr $i : '-l\(.*\)'`"
! 2548: # If $name is empty we are operating on a -L argument.
! 2549: if test -n "$name" && test "$name" != "0"; then
! 2550: $rm conftest
! 2551: $CC -o conftest conftest.c $i
! 2552: # Did it work?
! 2553: if test $? -eq 0 ; then
! 2554: ldd_output=`ldd conftest`
! 2555: libname=`eval \\$echo \"$libname_spec\"`
! 2556: deplib_matches=`eval \\$echo \"$library_names_spec\"`
! 2557: set dummy $deplib_matches
! 2558: deplib_match=$2
! 2559: if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
! 2560: newdeplibs="$newdeplibs $i"
! 2561: else
! 2562: droppeddeps=yes
! 2563: echo
! 2564: echo "*** Warning: dynamic linker does not accept needed library $i."
! 2565: echo "*** I have the capability to make that library automatically link in when"
! 2566: echo "*** you link to this library. But I can only do this if you have a"
! 2567: echo "*** shared version of the library, which you do not appear to have"
! 2568: echo "*** because a test_compile did reveal that the linker did not use this one"
! 2569: echo "*** as a dynamic dependency that programs can get resolved with at runtime."
! 2570: fi
! 2571: else
! 2572: droppeddeps=yes
! 2573: echo
! 2574: echo "*** Warning! Library $i is needed by this library but I was not able to"
! 2575: echo "*** make it link in! You will probably need to install it or some"
! 2576: echo "*** library that it depends on before this library will be fully"
! 2577: echo "*** functional. Installing it before continuing would be even better."
! 2578: fi
! 2579: else
! 2580: newdeplibs="$newdeplibs $i"
! 2581: fi
! 2582: done
! 2583: fi
! 2584: ;;
! 2585: file_magic*)
! 2586: set dummy $deplibs_check_method
! 2587: file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
! 2588: for a_deplib in $deplibs; do
! 2589: name="`expr $a_deplib : '-l\(.*\)'`"
! 2590: # If $name is empty we are operating on a -L argument.
! 2591: if test -n "$name" && test "$name" != "0"; then
! 2592: libname=`eval \\$echo \"$libname_spec\"`
! 2593: for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
! 2594: potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
! 2595: for potent_lib in $potential_libs; do
! 2596: # Follow soft links.
! 2597: if ls -lLd "$potent_lib" 2>/dev/null \
! 2598: | grep " -> " >/dev/null; then
! 2599: continue
! 2600: fi
! 2601: # The statement above tries to avoid entering an
! 2602: # endless loop below, in case of cyclic links.
! 2603: # We might still enter an endless loop, since a link
! 2604: # loop can be closed while we follow links,
! 2605: # but so what?
! 2606: potlib="$potent_lib"
! 2607: while test -h "$potlib" 2>/dev/null; do
! 2608: potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
! 2609: case $potliblink in
! 2610: [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
! 2611: *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
! 2612: esac
! 2613: done
! 2614: if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
! 2615: | ${SED} 10q \
! 2616: | egrep "$file_magic_regex" > /dev/null; then
! 2617: newdeplibs="$newdeplibs $a_deplib"
! 2618: a_deplib=""
! 2619: break 2
! 2620: fi
! 2621: done
! 2622: done
! 2623: if test -n "$a_deplib" ; then
! 2624: droppeddeps=yes
! 2625: echo
! 2626: echo "*** Warning: linker path does not have real file for library $a_deplib."
! 2627: echo "*** I have the capability to make that library automatically link in when"
! 2628: echo "*** you link to this library. But I can only do this if you have a"
! 2629: echo "*** shared version of the library, which you do not appear to have"
! 2630: echo "*** because I did check the linker path looking for a file starting"
! 2631: if test -z "$potlib" ; then
! 2632: echo "*** with $libname but no candidates were found. (...for file magic test)"
! 2633: else
! 2634: echo "*** with $libname and none of the candidates passed a file format test"
! 2635: echo "*** using a file magic. Last file checked: $potlib"
! 2636: fi
! 2637: fi
! 2638: else
! 2639: # Add a -L argument.
! 2640: newdeplibs="$newdeplibs $a_deplib"
! 2641: fi
! 2642: done # Gone through all deplibs.
! 2643: ;;
! 2644: match_pattern*)
! 2645: set dummy $deplibs_check_method
! 2646: match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
! 2647: for a_deplib in $deplibs; do
! 2648: name="`expr $a_deplib : '-l\(.*\)'`"
! 2649: # If $name is empty we are operating on a -L argument.
! 2650: if test -n "$name" && test "$name" != "0"; then
! 2651: libname=`eval \\$echo \"$libname_spec\"`
! 2652: for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
! 2653: potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
! 2654: for potent_lib in $potential_libs; do
! 2655: potlib="$potent_lib" # see symlink-check below in file_magic test
! 2656: if eval echo \"$potent_lib\" 2>/dev/null \
! 2657: | ${SED} 10q \
! 2658: | egrep "$match_pattern_regex" > /dev/null; then
! 2659: newdeplibs="$newdeplibs $a_deplib"
! 2660: a_deplib=""
! 2661: break 2
! 2662: fi
! 2663: done
! 2664: done
! 2665: if test -n "$a_deplib" ; then
! 2666: droppeddeps=yes
! 2667: echo
! 2668: echo "*** Warning: linker path does not have real file for library $a_deplib."
! 2669: echo "*** I have the capability to make that library automatically link in when"
! 2670: echo "*** you link to this library. But I can only do this if you have a"
! 2671: echo "*** shared version of the library, which you do not appear to have"
! 2672: echo "*** because I did check the linker path looking for a file starting"
! 2673: if test -z "$potlib" ; then
! 2674: echo "*** with $libname but no candidates were found. (...for regex pattern test)"
! 2675: else
! 2676: echo "*** with $libname and none of the candidates passed a file format test"
! 2677: echo "*** using a regex pattern. Last file checked: $potlib"
! 2678: fi
! 2679: fi
! 2680: else
! 2681: # Add a -L argument.
! 2682: newdeplibs="$newdeplibs $a_deplib"
! 2683: fi
! 2684: done # Gone through all deplibs.
! 2685: ;;
! 2686: none | unknown | *)
! 2687: newdeplibs=""
! 2688: if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \
! 2689: -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' |
! 2690: grep . >/dev/null; then
! 2691: echo
! 2692: if test "X$deplibs_check_method" = "Xnone"; then
! 2693: echo "*** Warning: inter-library dependencies are not supported in this platform."
! 2694: else
! 2695: echo "*** Warning: inter-library dependencies are not known to be supported."
! 2696: fi
! 2697: echo "*** All declared inter-library dependencies are being dropped."
! 2698: droppeddeps=yes
! 2699: fi
! 2700: ;;
! 2701: esac
! 2702: versuffix=$versuffix_save
! 2703: major=$major_save
! 2704: release=$release_save
! 2705: libname=$libname_save
! 2706: name=$name_save
! 2707:
! 2708: case $host in
! 2709: *-*-rhapsody* | *-*-darwin1.[012])
! 2710: # On Rhapsody replace the C library is the System framework
! 2711: newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
! 2712: ;;
! 2713: esac
! 2714:
! 2715: if test "$droppeddeps" = yes; then
! 2716: if test "$module" = yes; then
! 2717: echo
! 2718: echo "*** Warning: libtool could not satisfy all declared inter-library"
! 2719: echo "*** dependencies of module $libname. Therefore, libtool will create"
! 2720: echo "*** a static module, that should work as long as the dlopening"
! 2721: echo "*** application is linked with the -dlopen flag."
! 2722: if test -z "$global_symbol_pipe"; then
! 2723: echo
! 2724: echo "*** However, this would only work if libtool was able to extract symbol"
! 2725: echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
! 2726: echo "*** not find such a program. So, this module is probably useless."
! 2727: echo "*** \`nm' from GNU binutils and a full rebuild may help."
! 2728: fi
! 2729: if test "$build_old_libs" = no; then
! 2730: oldlibs="$output_objdir/$libname.$libext"
! 2731: build_libtool_libs=module
! 2732: build_old_libs=yes
! 2733: else
! 2734: build_libtool_libs=no
! 2735: fi
! 2736: else
! 2737: echo "*** The inter-library dependencies that have been dropped here will be"
! 2738: echo "*** automatically added whenever a program is linked with this library"
! 2739: echo "*** or is declared to -dlopen it."
! 2740:
! 2741: if test $allow_undefined = no; then
! 2742: echo
! 2743: echo "*** Since this library must not contain undefined symbols,"
! 2744: echo "*** because either the platform does not support them or"
! 2745: echo "*** it was explicitly requested with -no-undefined,"
! 2746: echo "*** libtool will only create a static version of it."
! 2747: if test "$build_old_libs" = no; then
! 2748: oldlibs="$output_objdir/$libname.$libext"
! 2749: build_libtool_libs=module
! 2750: build_old_libs=yes
! 2751: else
! 2752: build_libtool_libs=no
! 2753: fi
! 2754: fi
! 2755: fi
! 2756: fi
! 2757: # Done checking deplibs!
! 2758: deplibs=$newdeplibs
! 2759: fi
! 2760:
! 2761: # All the library-specific variables (install_libdir is set above).
! 2762: library_names=
! 2763: old_library=
! 2764: dlname=
! 2765:
! 2766: # Test again, we may have decided not to build it any more
! 2767: if test "$build_libtool_libs" = yes; then
! 2768: if test $hardcode_into_libs = yes; then
! 2769: # Hardcode the library paths
! 2770: hardcode_libdirs=
! 2771: dep_rpath=
! 2772: rpath="$finalize_rpath"
! 2773: test "$mode" != relink && rpath="$compile_rpath$rpath"
! 2774: for libdir in $rpath; do
! 2775: if test -n "$hardcode_libdir_flag_spec"; then
! 2776: if test -n "$hardcode_libdir_separator"; then
! 2777: if test -z "$hardcode_libdirs"; then
! 2778: hardcode_libdirs="$libdir"
! 2779: else
! 2780: # Just accumulate the unique libdirs.
! 2781: case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
! 2782: *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
! 2783: ;;
! 2784: *)
! 2785: hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
! 2786: ;;
! 2787: esac
! 2788: fi
! 2789: else
! 2790: eval flag=\"$hardcode_libdir_flag_spec\"
! 2791: dep_rpath="$dep_rpath $flag"
! 2792: fi
! 2793: elif test -n "$runpath_var"; then
! 2794: case "$perm_rpath " in
! 2795: *" $libdir "*) ;;
! 2796: *) perm_rpath="$perm_rpath $libdir" ;;
! 2797: esac
! 2798: fi
! 2799: done
! 2800: # Substitute the hardcoded libdirs into the rpath.
! 2801: if test -n "$hardcode_libdir_separator" &&
! 2802: test -n "$hardcode_libdirs"; then
! 2803: libdir="$hardcode_libdirs"
! 2804: eval dep_rpath=\"$hardcode_libdir_flag_spec\"
! 2805: fi
! 2806: if test -n "$runpath_var" && test -n "$perm_rpath"; then
! 2807: # We should set the runpath_var.
! 2808: rpath=
! 2809: for dir in $perm_rpath; do
! 2810: rpath="$rpath$dir:"
! 2811: done
! 2812: eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
! 2813: fi
! 2814: test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
! 2815: fi
! 2816:
! 2817: shlibpath="$finalize_shlibpath"
! 2818: test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
! 2819: if test -n "$shlibpath"; then
! 2820: eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
! 2821: fi
! 2822:
! 2823: # Get the real and link names of the library.
! 2824: eval library_names=\"$library_names_spec\"
! 2825: set dummy $library_names
! 2826: realname="$2"
! 2827: shift; shift
! 2828:
! 2829: if test -n "$soname_spec"; then
! 2830: eval soname=\"$soname_spec\"
! 2831: else
! 2832: soname="$realname"
! 2833: fi
! 2834: test -z "$dlname" && dlname=$soname
! 2835:
! 2836: lib="$output_objdir/$realname"
! 2837: for link
! 2838: do
! 2839: linknames="$linknames $link"
! 2840: done
! 2841:
! 2842: # Ensure that we have .o objects for linkers which dislike .lo
! 2843: # (e.g. aix) in case we are running --disable-static
! 2844: for obj in $libobjs; do
! 2845: xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
! 2846: if test "X$xdir" = "X$obj"; then
! 2847: xdir="."
! 2848: else
! 2849: xdir="$xdir"
! 2850: fi
! 2851: baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
! 2852: oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
! 2853: if test ! -f $xdir/$oldobj; then
! 2854: $show "(cd $xdir && ${LN_S} $baseobj $oldobj)"
! 2855: $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $?
! 2856: fi
! 2857: done
! 2858:
! 2859: # Use standard objects if they are pic
! 2860: test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
! 2861:
! 2862: # Prepare the list of exported symbols
! 2863: if test -z "$export_symbols"; then
! 2864: if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
! 2865: $show "generating symbol list for \`$libname.la'"
! 2866: export_symbols="$output_objdir/$libname.exp"
! 2867: $run $rm $export_symbols
! 2868: eval cmds=\"$export_symbols_cmds\"
! 2869: save_ifs="$IFS"; IFS='~'
! 2870: for cmd in $cmds; do
! 2871: IFS="$save_ifs"
! 2872: $show "$cmd"
! 2873: $run eval "$cmd" || exit $?
! 2874: done
! 2875: IFS="$save_ifs"
! 2876: if test -n "$export_symbols_regex"; then
! 2877: $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\""
! 2878: $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
! 2879: $show "$mv \"${export_symbols}T\" \"$export_symbols\""
! 2880: $run eval '$mv "${export_symbols}T" "$export_symbols"'
! 2881: fi
! 2882: fi
! 2883: fi
! 2884:
! 2885: if test -n "$export_symbols" && test -n "$include_expsyms"; then
! 2886: $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"'
! 2887: fi
! 2888:
! 2889: if test -n "$convenience"; then
! 2890: if test -n "$whole_archive_flag_spec"; then
! 2891: eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
! 2892: else
! 2893: gentop="$output_objdir/${outputname}x"
! 2894: $show "${rm}r $gentop"
! 2895: $run ${rm}r "$gentop"
! 2896: $show "mkdir $gentop"
! 2897: $run mkdir "$gentop"
! 2898: status=$?
! 2899: if test $status -ne 0 && test ! -d "$gentop"; then
! 2900: exit $status
! 2901: fi
! 2902: generated="$generated $gentop"
! 2903:
! 2904: for xlib in $convenience; do
! 2905: # Extract the objects.
! 2906: case $xlib in
! 2907: [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
! 2908: *) xabs=`pwd`"/$xlib" ;;
! 2909: esac
! 2910: xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
! 2911: xdir="$gentop/$xlib"
! 2912:
! 2913: $show "${rm}r $xdir"
! 2914: $run ${rm}r "$xdir"
! 2915: $show "mkdir $xdir"
! 2916: $run mkdir "$xdir"
! 2917: status=$?
! 2918: if test $status -ne 0 && test ! -d "$xdir"; then
! 2919: exit $status
! 2920: fi
! 2921: $show "(cd $xdir && $AR x $xabs)"
! 2922: $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
! 2923:
! 2924: libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`
! 2925: done
! 2926: fi
! 2927: fi
! 2928:
! 2929: if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
! 2930: eval flag=\"$thread_safe_flag_spec\"
! 2931: linker_flags="$linker_flags $flag"
! 2932: fi
! 2933:
! 2934: # Make a backup of the uninstalled library when relinking
! 2935: if test "$mode" = relink; then
! 2936: $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
! 2937: fi
! 2938:
! 2939: # Do each of the archive commands.
! 2940: if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
! 2941: eval cmds=\"$archive_expsym_cmds\"
! 2942: else
! 2943: save_deplibs="$deplibs"
! 2944: for conv in $convenience; do
! 2945: tmp_deplibs=
! 2946: for test_deplib in $deplibs; do
! 2947: if test "$test_deplib" != "$conv"; then
! 2948: tmp_deplibs="$tmp_deplibs $test_deplib"
! 2949: fi
! 2950: done
! 2951: deplibs="$tmp_deplibs"
! 2952: done
! 2953: eval cmds=\"$archive_cmds\"
! 2954: deplibs="$save_deplibs"
! 2955: fi
! 2956: save_ifs="$IFS"; IFS='~'
! 2957: for cmd in $cmds; do
! 2958: IFS="$save_ifs"
! 2959: $show "$cmd"
! 2960: $run eval "$cmd" || exit $?
! 2961: done
! 2962: IFS="$save_ifs"
! 2963:
! 2964: # Restore the uninstalled library and exit
! 2965: if test "$mode" = relink; then
! 2966: $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
! 2967: exit 0
! 2968: fi
! 2969:
! 2970: # Create links to the real library.
! 2971: for linkname in $linknames; do
! 2972: if test "$realname" != "$linkname"; then
! 2973: $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)"
! 2974: $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $?
! 2975: fi
! 2976: done
! 2977:
! 2978: # If -module or -export-dynamic was specified, set the dlname.
! 2979: if test "$module" = yes || test "$export_dynamic" = yes; then
! 2980: # On all known operating systems, these are identical.
! 2981: dlname="$soname"
! 2982: fi
! 2983: fi
! 2984: ;;
! 2985:
! 2986: obj)
! 2987: if test -n "$deplibs"; then
! 2988: $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
! 2989: fi
! 2990:
! 2991: if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
! 2992: $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2
! 2993: fi
! 2994:
! 2995: if test -n "$rpath"; then
! 2996: $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2
! 2997: fi
! 2998:
! 2999: if test -n "$xrpath"; then
! 3000: $echo "$modename: warning: \`-R' is ignored for objects" 1>&2
! 3001: fi
! 3002:
! 3003: if test -n "$vinfo"; then
! 3004: $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2
! 3005: fi
! 3006:
! 3007: if test -n "$release"; then
! 3008: $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
! 3009: fi
! 3010:
! 3011: case $output in
! 3012: *.lo)
! 3013: if test -n "$objs$old_deplibs"; then
! 3014: $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
! 3015: exit 1
! 3016: fi
! 3017: libobj="$output"
! 3018: obj=`$echo "X$output" | $Xsed -e "$lo2o"`
! 3019: ;;
! 3020: *)
! 3021: libobj=
! 3022: obj="$output"
! 3023: ;;
! 3024: esac
! 3025:
! 3026: # Delete the old objects.
! 3027: $run $rm $obj $libobj
! 3028:
! 3029: # Objects from convenience libraries. This assumes
! 3030: # single-version convenience libraries. Whenever we create
! 3031: # different ones for PIC/non-PIC, this we'll have to duplicate
! 3032: # the extraction.
! 3033: reload_conv_objs=
! 3034: gentop=
! 3035: # reload_cmds runs $LD directly, so let us get rid of
! 3036: # -Wl from whole_archive_flag_spec
! 3037: wl=
! 3038:
! 3039: if test -n "$convenience"; then
! 3040: if test -n "$whole_archive_flag_spec"; then
! 3041: eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
! 3042: else
! 3043: gentop="$output_objdir/${obj}x"
! 3044: $show "${rm}r $gentop"
! 3045: $run ${rm}r "$gentop"
! 3046: $show "mkdir $gentop"
! 3047: $run mkdir "$gentop"
! 3048: status=$?
! 3049: if test $status -ne 0 && test ! -d "$gentop"; then
! 3050: exit $status
! 3051: fi
! 3052: generated="$generated $gentop"
! 3053:
! 3054: for xlib in $convenience; do
! 3055: # Extract the objects.
! 3056: case $xlib in
! 3057: [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
! 3058: *) xabs=`pwd`"/$xlib" ;;
! 3059: esac
! 3060: xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
! 3061: xdir="$gentop/$xlib"
! 3062:
! 3063: $show "${rm}r $xdir"
! 3064: $run ${rm}r "$xdir"
! 3065: $show "mkdir $xdir"
! 3066: $run mkdir "$xdir"
! 3067: status=$?
! 3068: if test $status -ne 0 && test ! -d "$xdir"; then
! 3069: exit $status
! 3070: fi
! 3071: $show "(cd $xdir && $AR x $xabs)"
! 3072: $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
! 3073:
! 3074: reload_conv_objs="$reload_objs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`
! 3075: done
! 3076: fi
! 3077: fi
! 3078:
! 3079: # Create the old-style object.
! 3080: 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
! 3081:
! 3082: output="$obj"
! 3083: eval cmds=\"$reload_cmds\"
! 3084: save_ifs="$IFS"; IFS='~'
! 3085: for cmd in $cmds; do
! 3086: IFS="$save_ifs"
! 3087: $show "$cmd"
! 3088: $run eval "$cmd" || exit $?
! 3089: done
! 3090: IFS="$save_ifs"
! 3091:
! 3092: # Exit if we aren't doing a library object file.
! 3093: if test -z "$libobj"; then
! 3094: if test -n "$gentop"; then
! 3095: $show "${rm}r $gentop"
! 3096: $run ${rm}r $gentop
! 3097: fi
! 3098:
! 3099: exit 0
! 3100: fi
! 3101:
! 3102: if test "$build_libtool_libs" != yes; then
! 3103: if test -n "$gentop"; then
! 3104: $show "${rm}r $gentop"
! 3105: $run ${rm}r $gentop
! 3106: fi
! 3107:
! 3108: # Create an invalid libtool object if no PIC, so that we don't
! 3109: # accidentally link it into a program.
! 3110: $show "echo timestamp > $libobj"
! 3111: $run eval "echo timestamp > $libobj" || exit $?
! 3112: exit 0
! 3113: fi
! 3114:
! 3115: if test -n "$pic_flag" || test "$pic_mode" != default; then
! 3116: # Only do commands if we really have different PIC objects.
! 3117: reload_objs="$libobjs $reload_conv_objs"
! 3118: output="$libobj"
! 3119: eval cmds=\"$reload_cmds\"
! 3120: save_ifs="$IFS"; IFS='~'
! 3121: for cmd in $cmds; do
! 3122: IFS="$save_ifs"
! 3123: $show "$cmd"
! 3124: $run eval "$cmd" || exit $?
! 3125: done
! 3126: IFS="$save_ifs"
! 3127: else
! 3128: # Just create a symlink.
! 3129: $show $rm $libobj
! 3130: $run $rm $libobj
! 3131: xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
! 3132: if test "X$xdir" = "X$libobj"; then
! 3133: xdir="."
! 3134: else
! 3135: xdir="$xdir"
! 3136: fi
! 3137: baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
! 3138: oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
! 3139: $show "(cd $xdir && $LN_S $oldobj $baseobj)"
! 3140: $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $?
! 3141: fi
! 3142:
! 3143: if test -n "$gentop"; then
! 3144: $show "${rm}r $gentop"
! 3145: $run ${rm}r $gentop
! 3146: fi
! 3147:
! 3148: exit 0
! 3149: ;;
! 3150:
! 3151: prog)
! 3152: case $host in
! 3153: *cygwin*) output=`echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
! 3154: esac
! 3155: if test -n "$vinfo"; then
! 3156: $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
! 3157: fi
! 3158:
! 3159: if test -n "$release"; then
! 3160: $echo "$modename: warning: \`-release' is ignored for programs" 1>&2
! 3161: fi
! 3162:
! 3163: if test "$preload" = yes; then
! 3164: if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown &&
! 3165: test "$dlopen_self_static" = unknown; then
! 3166: $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
! 3167: fi
! 3168: fi
! 3169:
! 3170: case $host in
! 3171: *-*-rhapsody* | *-*-darwin1.[012])
! 3172: # On Rhapsody replace the C library is the System framework
! 3173: compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
! 3174: finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
! 3175: case $host in
! 3176: *darwin*)
! 3177: # Don't allow lazy linking, it breaks C++ global constructors
! 3178: compile_command="$compile_command ${wl}-bind_at_load"
! 3179: finalize_command="$finalize_command ${wl}-bind_at_load"
! 3180: ;;
! 3181: esac
! 3182: ;;
! 3183: esac
! 3184:
! 3185: compile_command="$compile_command $compile_deplibs"
! 3186: finalize_command="$finalize_command $finalize_deplibs"
! 3187:
! 3188: if test -n "$rpath$xrpath"; then
! 3189: # If the user specified any rpath flags, then add them.
! 3190: for libdir in $rpath $xrpath; do
! 3191: # This is the magic to use -rpath.
! 3192: case "$finalize_rpath " in
! 3193: *" $libdir "*) ;;
! 3194: *) finalize_rpath="$finalize_rpath $libdir" ;;
! 3195: esac
! 3196: done
! 3197: fi
! 3198:
! 3199: # Now hardcode the library paths
! 3200: rpath=
! 3201: hardcode_libdirs=
! 3202: for libdir in $compile_rpath $finalize_rpath; do
! 3203: if test -n "$hardcode_libdir_flag_spec"; then
! 3204: if test -n "$hardcode_libdir_separator"; then
! 3205: if test -z "$hardcode_libdirs"; then
! 3206: hardcode_libdirs="$libdir"
! 3207: else
! 3208: # Just accumulate the unique libdirs.
! 3209: case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
! 3210: *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
! 3211: ;;
! 3212: *)
! 3213: hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
! 3214: ;;
! 3215: esac
! 3216: fi
! 3217: else
! 3218: eval flag=\"$hardcode_libdir_flag_spec\"
! 3219: rpath="$rpath $flag"
! 3220: fi
! 3221: elif test -n "$runpath_var"; then
! 3222: case "$perm_rpath " in
! 3223: *" $libdir "*) ;;
! 3224: *) perm_rpath="$perm_rpath $libdir" ;;
! 3225: esac
! 3226: fi
! 3227: case $host in
! 3228: *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
! 3229: case :$dllsearchpath: in
! 3230: *":$libdir:"*) ;;
! 3231: *) dllsearchpath="$dllsearchpath:$libdir";;
! 3232: esac
! 3233: ;;
! 3234: esac
! 3235: done
! 3236: # Substitute the hardcoded libdirs into the rpath.
! 3237: if test -n "$hardcode_libdir_separator" &&
! 3238: test -n "$hardcode_libdirs"; then
! 3239: libdir="$hardcode_libdirs"
! 3240: eval rpath=\" $hardcode_libdir_flag_spec\"
! 3241: fi
! 3242: compile_rpath="$rpath"
! 3243:
! 3244: rpath=
! 3245: hardcode_libdirs=
! 3246: for libdir in $finalize_rpath; do
! 3247: if test -n "$hardcode_libdir_flag_spec"; then
! 3248: if test -n "$hardcode_libdir_separator"; then
! 3249: if test -z "$hardcode_libdirs"; then
! 3250: hardcode_libdirs="$libdir"
! 3251: else
! 3252: # Just accumulate the unique libdirs.
! 3253: case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
! 3254: *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
! 3255: ;;
! 3256: *)
! 3257: hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
! 3258: ;;
! 3259: esac
! 3260: fi
! 3261: else
! 3262: eval flag=\"$hardcode_libdir_flag_spec\"
! 3263: rpath="$rpath $flag"
! 3264: fi
! 3265: elif test -n "$runpath_var"; then
! 3266: case "$finalize_perm_rpath " in
! 3267: *" $libdir "*) ;;
! 3268: *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;;
! 3269: esac
! 3270: fi
! 3271: done
! 3272: # Substitute the hardcoded libdirs into the rpath.
! 3273: if test -n "$hardcode_libdir_separator" &&
! 3274: test -n "$hardcode_libdirs"; then
! 3275: libdir="$hardcode_libdirs"
! 3276: eval rpath=\" $hardcode_libdir_flag_spec\"
! 3277: fi
! 3278: finalize_rpath="$rpath"
! 3279:
! 3280: if test -n "$libobjs" && test "$build_old_libs" = yes; then
! 3281: # Transform all the library objects into standard objects.
! 3282: compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
! 3283: finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
! 3284: fi
! 3285:
! 3286: dlsyms=
! 3287: if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
! 3288: if test -n "$NM" && test -n "$global_symbol_pipe"; then
! 3289: dlsyms="${outputname}S.c"
! 3290: else
! 3291: $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
! 3292: fi
! 3293: fi
! 3294:
! 3295: if test -n "$dlsyms"; then
! 3296: case $dlsyms in
! 3297: "") ;;
! 3298: *.c)
! 3299: # Discover the nlist of each of the dlfiles.
! 3300: nlist="$output_objdir/${outputname}.nm"
! 3301:
! 3302: $show "$rm $nlist ${nlist}S ${nlist}T"
! 3303: $run $rm "$nlist" "${nlist}S" "${nlist}T"
! 3304:
! 3305: # Parse the name list into a source file.
! 3306: $show "creating $output_objdir/$dlsyms"
! 3307:
! 3308: test -z "$run" && $echo > "$output_objdir/$dlsyms" "\
! 3309: /* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */
! 3310: /* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */
! 3311:
! 3312: #ifdef __cplusplus
! 3313: extern \"C\" {
! 3314: #endif
! 3315:
! 3316: /* Prevent the only kind of declaration conflicts we can make. */
! 3317: #define lt_preloaded_symbols some_other_symbol
! 3318:
! 3319: /* External symbol declarations for the compiler. */\
! 3320: "
! 3321:
! 3322: if test "$dlself" = yes; then
! 3323: $show "generating symbol list for \`$output'"
! 3324:
! 3325: test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
! 3326:
! 3327: # Add our own program objects to the symbol list.
! 3328: progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
! 3329: for arg in $progfiles; do
! 3330: $show "extracting global C symbols from \`$arg'"
! 3331: $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
! 3332: done
! 3333:
! 3334: if test -n "$exclude_expsyms"; then
! 3335: $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
! 3336: $run eval '$mv "$nlist"T "$nlist"'
! 3337: fi
! 3338:
! 3339: if test -n "$export_symbols_regex"; then
! 3340: $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
! 3341: $run eval '$mv "$nlist"T "$nlist"'
! 3342: fi
! 3343:
! 3344: # Prepare the list of exported symbols
! 3345: if test -z "$export_symbols"; then
! 3346: export_symbols="$output_objdir/$output.exp"
! 3347: $run $rm $export_symbols
! 3348: $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
! 3349: else
! 3350: $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
! 3351: $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
! 3352: $run eval 'mv "$nlist"T "$nlist"'
! 3353: fi
! 3354: fi
! 3355:
! 3356: for arg in $dlprefiles; do
! 3357: $show "extracting global C symbols from \`$arg'"
! 3358: name=`echo "$arg" | ${SED} -e 's%^.*/%%'`
! 3359: $run eval 'echo ": $name " >> "$nlist"'
! 3360: $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
! 3361: done
! 3362:
! 3363: if test -z "$run"; then
! 3364: # Make sure we have at least an empty file.
! 3365: test -f "$nlist" || : > "$nlist"
! 3366:
! 3367: if test -n "$exclude_expsyms"; then
! 3368: egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
! 3369: $mv "$nlist"T "$nlist"
! 3370: fi
! 3371:
! 3372: # Try sorting and uniquifying the output.
! 3373: if grep -v "^: " < "$nlist" |
! 3374: if sort -k 3 </dev/null >/dev/null 2>&1; then
! 3375: sort -k 3
! 3376: else
! 3377: sort +2
! 3378: fi |
! 3379: uniq > "$nlist"S; then
! 3380: :
! 3381: else
! 3382: grep -v "^: " < "$nlist" > "$nlist"S
! 3383: fi
! 3384:
! 3385: if test -f "$nlist"S; then
! 3386: eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"'
! 3387: else
! 3388: echo '/* NONE */' >> "$output_objdir/$dlsyms"
! 3389: fi
! 3390:
! 3391: $echo >> "$output_objdir/$dlsyms" "\
! 3392:
! 3393: #undef lt_preloaded_symbols
! 3394:
! 3395: #if defined (__STDC__) && __STDC__
! 3396: # define lt_ptr void *
! 3397: #else
! 3398: # define lt_ptr char *
! 3399: # define const
! 3400: #endif
! 3401:
! 3402: /* The mapping between symbol names and symbols. */
! 3403: const struct {
! 3404: const char *name;
! 3405: lt_ptr address;
! 3406: }
! 3407: lt_preloaded_symbols[] =
! 3408: {\
! 3409: "
! 3410:
! 3411: eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms"
! 3412:
! 3413: $echo >> "$output_objdir/$dlsyms" "\
! 3414: {0, (lt_ptr) 0}
! 3415: };
! 3416:
! 3417: /* This works around a problem in FreeBSD linker */
! 3418: #ifdef FREEBSD_WORKAROUND
! 3419: static const void *lt_preloaded_setup() {
! 3420: return lt_preloaded_symbols;
! 3421: }
! 3422: #endif
! 3423:
! 3424: #ifdef __cplusplus
! 3425: }
! 3426: #endif\
! 3427: "
! 3428: fi
! 3429:
! 3430: pic_flag_for_symtable=
! 3431: case $host in
! 3432: # compiling the symbol table file with pic_flag works around
! 3433: # a FreeBSD bug that causes programs to crash when -lm is
! 3434: # linked before any other PIC object. But we must not use
! 3435: # pic_flag when linking with -static. The problem exists in
! 3436: # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
! 3437: *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
! 3438: case "$compile_command " in
! 3439: *" -static "*) ;;
! 3440: *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";;
! 3441: esac;;
! 3442: *-*-hpux*)
! 3443: case "$compile_command " in
! 3444: *" -static "*) ;;
! 3445: *) pic_flag_for_symtable=" $pic_flag -DPIC";;
! 3446: esac
! 3447: esac
! 3448:
! 3449: # Now compile the dynamic symbol file.
! 3450: $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
! 3451: $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
! 3452:
! 3453: # Clean up the generated files.
! 3454: $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T"
! 3455: $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T"
! 3456:
! 3457: # Transform the symbol file into the correct name.
! 3458: compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
! 3459: finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"`
! 3460: ;;
! 3461: *)
! 3462: $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
! 3463: exit 1
! 3464: ;;
! 3465: esac
! 3466: else
! 3467: # We keep going just in case the user didn't refer to
! 3468: # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
! 3469: # really was required.
! 3470:
! 3471: # Nullify the symbol file.
! 3472: compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"`
! 3473: finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
! 3474: fi
! 3475:
! 3476: if test $need_relink = no || test "$build_libtool_libs" != yes; then
! 3477: # Replace the output file specification.
! 3478: compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
! 3479: link_command="$compile_command$compile_rpath"
! 3480:
! 3481: # We have no uninstalled library dependencies, so finalize right now.
! 3482: $show "$link_command"
! 3483: $run eval "$link_command"
! 3484: status=$?
! 3485:
! 3486: # Delete the generated files.
! 3487: if test -n "$dlsyms"; then
! 3488: $show "$rm $output_objdir/${outputname}S.${objext}"
! 3489: $run $rm "$output_objdir/${outputname}S.${objext}"
! 3490: fi
! 3491:
! 3492: exit $status
! 3493: fi
! 3494:
! 3495: if test -n "$shlibpath_var"; then
! 3496: # We should set the shlibpath_var
! 3497: rpath=
! 3498: for dir in $temp_rpath; do
! 3499: case $dir in
! 3500: [\\/]* | [A-Za-z]:[\\/]*)
! 3501: # Absolute path.
! 3502: rpath="$rpath$dir:"
! 3503: ;;
! 3504: *)
! 3505: # Relative path: add a thisdir entry.
! 3506: rpath="$rpath\$thisdir/$dir:"
! 3507: ;;
! 3508: esac
! 3509: done
! 3510: temp_rpath="$rpath"
! 3511: fi
! 3512:
! 3513: if test -n "$compile_shlibpath$finalize_shlibpath"; then
! 3514: compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
! 3515: fi
! 3516: if test -n "$finalize_shlibpath"; then
! 3517: finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
! 3518: fi
! 3519:
! 3520: compile_var=
! 3521: finalize_var=
! 3522: if test -n "$runpath_var"; then
! 3523: if test -n "$perm_rpath"; then
! 3524: # We should set the runpath_var.
! 3525: rpath=
! 3526: for dir in $perm_rpath; do
! 3527: rpath="$rpath$dir:"
! 3528: done
! 3529: compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
! 3530: fi
! 3531: if test -n "$finalize_perm_rpath"; then
! 3532: # We should set the runpath_var.
! 3533: rpath=
! 3534: for dir in $finalize_perm_rpath; do
! 3535: rpath="$rpath$dir:"
! 3536: done
! 3537: finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
! 3538: fi
! 3539: fi
! 3540:
! 3541: if test "$no_install" = yes; then
! 3542: # We don't need to create a wrapper script.
! 3543: link_command="$compile_var$compile_command$compile_rpath"
! 3544: # Replace the output file specification.
! 3545: link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
! 3546: # Delete the old output file.
! 3547: $run $rm $output
! 3548: # Link the executable and exit
! 3549: $show "$link_command"
! 3550: $run eval "$link_command" || exit $?
! 3551: exit 0
! 3552: fi
! 3553:
! 3554: if test "$hardcode_action" = relink; then
! 3555: # Fast installation is not supported
! 3556: link_command="$compile_var$compile_command$compile_rpath"
! 3557: relink_command="$finalize_var$finalize_command$finalize_rpath"
! 3558:
! 3559: $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
! 3560: $echo "$modename: \`$output' will be relinked during installation" 1>&2
! 3561: else
! 3562: if test "$fast_install" != no; then
! 3563: link_command="$finalize_var$compile_command$finalize_rpath"
! 3564: if test "$fast_install" = yes; then
! 3565: relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
! 3566: else
! 3567: # fast_install is set to needless
! 3568: relink_command=
! 3569: fi
! 3570: else
! 3571: link_command="$compile_var$compile_command$compile_rpath"
! 3572: relink_command="$finalize_var$finalize_command$finalize_rpath"
! 3573: fi
! 3574: fi
! 3575:
! 3576: # Replace the output file specification.
! 3577: link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
! 3578:
! 3579: # Delete the old output files.
! 3580: $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
! 3581:
! 3582: $show "$link_command"
! 3583: $run eval "$link_command" || exit $?
! 3584:
! 3585: # Now create the wrapper script.
! 3586: $show "creating $output"
! 3587:
! 3588: # Quote the relink command for shipping.
! 3589: if test -n "$relink_command"; then
! 3590: # Preserve any variables that may affect compiler behavior
! 3591: for var in $variables_saved_for_relink; do
! 3592: if eval test -z \"\${$var+set}\"; then
! 3593: relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
! 3594: elif eval var_value=\$$var; test -z "$var_value"; then
! 3595: relink_command="$var=; export $var; $relink_command"
! 3596: else
! 3597: var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
! 3598: relink_command="$var=\"$var_value\"; export $var; $relink_command"
! 3599: fi
! 3600: done
! 3601: relink_command="(cd `pwd`; $relink_command)"
! 3602: relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
! 3603: fi
! 3604:
! 3605: # Quote $echo for shipping.
! 3606: if test "X$echo" = "X$SHELL $0 --fallback-echo"; then
! 3607: case $0 in
! 3608: [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";;
! 3609: *) qecho="$SHELL `pwd`/$0 --fallback-echo";;
! 3610: esac
! 3611: qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"`
! 3612: else
! 3613: qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"`
! 3614: fi
! 3615:
! 3616: # Only actually do things if our run command is non-null.
! 3617: if test -z "$run"; then
! 3618: # win32 will think the script is a binary if it has
! 3619: # a .exe suffix, so we strip it off here.
! 3620: case $output in
! 3621: *.exe) output=`echo $output|${SED} 's,.exe$,,'` ;;
! 3622: esac
! 3623: # test for cygwin because mv fails w/o .exe extensions
! 3624: case $host in
! 3625: *cygwin*) exeext=.exe ;;
! 3626: *) exeext= ;;
! 3627: esac
! 3628: $rm $output
! 3629: trap "$rm $output; exit 1" 1 2 15
! 3630:
! 3631: $echo > $output "\
! 3632: #! $SHELL
! 3633:
! 3634: # $output - temporary wrapper script for $objdir/$outputname
! 3635: # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
! 3636: #
! 3637: # The $output program cannot be directly executed until all the libtool
! 3638: # libraries that it depends on are installed.
! 3639: #
! 3640: # This wrapper script should never be moved out of the build directory.
! 3641: # If it is, it will not operate correctly.
! 3642:
! 3643: # Sed substitution that helps us do robust quoting. It backslashifies
! 3644: # metacharacters that are still active within double-quoted strings.
! 3645: Xsed="${SED}"' -e 1s/^X//'
! 3646: sed_quote_subst='$sed_quote_subst'
! 3647:
! 3648: # The HP-UX ksh and POSIX shell print the target directory to stdout
! 3649: # if CDPATH is set.
! 3650: if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi
! 3651:
! 3652: relink_command=\"$relink_command\"
! 3653:
! 3654: # This environment variable determines our operation mode.
! 3655: if test \"\$libtool_install_magic\" = \"$magic\"; then
! 3656: # install mode needs the following variable:
! 3657: notinst_deplibs='$notinst_deplibs'
! 3658: else
! 3659: # When we are sourced in execute mode, \$file and \$echo are already set.
! 3660: if test \"\$libtool_execute_magic\" != \"$magic\"; then
! 3661: echo=\"$qecho\"
! 3662: file=\"\$0\"
! 3663: # Make sure echo works.
! 3664: if test \"X\$1\" = X--no-reexec; then
! 3665: # Discard the --no-reexec flag, and continue.
! 3666: shift
! 3667: elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then
! 3668: # Yippee, \$echo works!
! 3669: :
! 3670: else
! 3671: # Restart under the correct shell, and then maybe \$echo will work.
! 3672: exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"}
! 3673: fi
! 3674: fi\
! 3675: "
! 3676: $echo >> $output "\
! 3677:
! 3678: # Find the directory that this script lives in.
! 3679: thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\`
! 3680: test \"x\$thisdir\" = \"x\$file\" && thisdir=.
! 3681:
! 3682: # Follow symbolic links until we get to the real thisdir.
! 3683: file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
! 3684: while test -n \"\$file\"; do
! 3685: destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
! 3686:
! 3687: # If there was a directory component, then change thisdir.
! 3688: if test \"x\$destdir\" != \"x\$file\"; then
! 3689: case \"\$destdir\" in
! 3690: [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
! 3691: *) thisdir=\"\$thisdir/\$destdir\" ;;
! 3692: esac
! 3693: fi
! 3694:
! 3695: file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
! 3696: file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
! 3697: done
! 3698:
! 3699: # Try to get the absolute directory name.
! 3700: absdir=\`cd \"\$thisdir\" && pwd\`
! 3701: test -n \"\$absdir\" && thisdir=\"\$absdir\"
! 3702: "
! 3703:
! 3704: if test "$fast_install" = yes; then
! 3705: echo >> $output "\
! 3706: program=lt-'$outputname'$exeext
! 3707: progdir=\"\$thisdir/$objdir\"
! 3708:
! 3709: if test ! -f \"\$progdir/\$program\" || \\
! 3710: { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
! 3711: test \"X\$file\" != \"X\$progdir/\$program\"; }; then
! 3712:
! 3713: file=\"\$\$-\$program\"
! 3714:
! 3715: if test ! -d \"\$progdir\"; then
! 3716: $mkdir \"\$progdir\"
! 3717: else
! 3718: $rm \"\$progdir/\$file\"
! 3719: fi"
! 3720:
! 3721: echo >> $output "\
! 3722:
! 3723: # relink executable if necessary
! 3724: if test -n \"\$relink_command\"; then
! 3725: if relink_command_output=\`eval \$relink_command 2>&1\`; then :
! 3726: else
! 3727: $echo \"\$relink_command_output\" >&2
! 3728: $rm \"\$progdir/\$file\"
! 3729: exit 1
! 3730: fi
! 3731: fi
! 3732:
! 3733: $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
! 3734: { $rm \"\$progdir/\$program\";
! 3735: $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; }
! 3736: $rm \"\$progdir/\$file\"
! 3737: fi"
! 3738: else
! 3739: echo >> $output "\
! 3740: program='$outputname'
! 3741: progdir=\"\$thisdir/$objdir\"
! 3742: "
! 3743: fi
! 3744:
! 3745: echo >> $output "\
! 3746:
! 3747: if test -f \"\$progdir/\$program\"; then"
! 3748:
! 3749: # Export our shlibpath_var if we have one.
! 3750: if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
! 3751: $echo >> $output "\
! 3752: # Add our own library path to $shlibpath_var
! 3753: $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
! 3754:
! 3755: # Some systems cannot cope with colon-terminated $shlibpath_var
! 3756: # The second colon is a workaround for a bug in BeOS R4 ${SED}
! 3757: $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
! 3758:
! 3759: export $shlibpath_var
! 3760: "
! 3761: fi
! 3762:
! 3763: # fixup the dll searchpath if we need to.
! 3764: if test -n "$dllsearchpath"; then
! 3765: $echo >> $output "\
! 3766: # Add the dll search path components to the executable PATH
! 3767: PATH=$dllsearchpath:\$PATH
! 3768: "
! 3769: fi
! 3770:
! 3771: $echo >> $output "\
! 3772: if test \"\$libtool_execute_magic\" != \"$magic\"; then
! 3773: # Run the actual program with our arguments.
! 3774: "
! 3775: case $host in
! 3776: # win32 systems need to use the prog path for dll
! 3777: # lookup to work
! 3778: *-*-cygwin* | *-*-pw32*)
! 3779: $echo >> $output "\
! 3780: exec \$progdir/\$program \${1+\"\$@\"}
! 3781: "
! 3782: ;;
! 3783:
! 3784: # Backslashes separate directories on plain windows
! 3785: *-*-mingw | *-*-os2*)
! 3786: $echo >> $output "\
! 3787: exec \$progdir\\\\\$program \${1+\"\$@\"}
! 3788: "
! 3789: ;;
! 3790:
! 3791: *)
! 3792: $echo >> $output "\
! 3793: # Export the path to the program.
! 3794: PATH=\"\$progdir:\$PATH\"
! 3795: export PATH
! 3796:
! 3797: exec \$program \${1+\"\$@\"}
! 3798: "
! 3799: ;;
! 3800: esac
! 3801: $echo >> $output "\
! 3802: \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\"
! 3803: exit 1
! 3804: fi
! 3805: else
! 3806: # The program doesn't exist.
! 3807: \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2
! 3808: \$echo \"This script is just a wrapper for \$program.\" 1>&2
! 3809: echo \"See the $PACKAGE documentation for more information.\" 1>&2
! 3810: exit 1
! 3811: fi
! 3812: fi\
! 3813: "
! 3814: chmod +x $output
! 3815: fi
! 3816: exit 0
! 3817: ;;
! 3818: esac
! 3819:
! 3820: # See if we need to build an old-fashioned archive.
! 3821: for oldlib in $oldlibs; do
! 3822:
! 3823: if test "$build_libtool_libs" = convenience; then
! 3824: oldobjs="$libobjs_save"
! 3825: addlibs="$convenience"
! 3826: build_libtool_libs=no
! 3827: else
! 3828: if test "$build_libtool_libs" = module; then
! 3829: oldobjs="$libobjs_save"
! 3830: build_libtool_libs=no
! 3831: else
! 3832: oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
! 3833: fi
! 3834: addlibs="$old_convenience"
! 3835: fi
! 3836:
! 3837: if test -n "$addlibs"; then
! 3838: gentop="$output_objdir/${outputname}x"
! 3839: $show "${rm}r $gentop"
! 3840: $run ${rm}r "$gentop"
! 3841: $show "mkdir $gentop"
! 3842: $run mkdir "$gentop"
! 3843: status=$?
! 3844: if test $status -ne 0 && test ! -d "$gentop"; then
! 3845: exit $status
! 3846: fi
! 3847: generated="$generated $gentop"
! 3848:
! 3849: # Add in members from convenience archives.
! 3850: for xlib in $addlibs; do
! 3851: # Extract the objects.
! 3852: case $xlib in
! 3853: [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
! 3854: *) xabs=`pwd`"/$xlib" ;;
! 3855: esac
! 3856: xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`
! 3857: xdir="$gentop/$xlib"
! 3858:
! 3859: $show "${rm}r $xdir"
! 3860: $run ${rm}r "$xdir"
! 3861: $show "mkdir $xdir"
! 3862: $run mkdir "$xdir"
! 3863: status=$?
! 3864: if test $status -ne 0 && test ! -d "$xdir"; then
! 3865: exit $status
! 3866: fi
! 3867: $show "(cd $xdir && $AR x $xabs)"
! 3868: $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?
! 3869:
! 3870: oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP`
! 3871: done
! 3872: fi
! 3873:
! 3874: # Do each command in the archive commands.
! 3875: if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
! 3876: eval cmds=\"$old_archive_from_new_cmds\"
! 3877: else
! 3878: # Ensure that we have .o objects in place in case we decided
! 3879: # not to build a shared library, and have fallen back to building
! 3880: # static libs even though --disable-static was passed!
! 3881: for oldobj in $oldobjs; do
! 3882: if test ! -f $oldobj; then
! 3883: xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'`
! 3884: if test "X$xdir" = "X$oldobj"; then
! 3885: xdir="."
! 3886: else
! 3887: xdir="$xdir"
! 3888: fi
! 3889: baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'`
! 3890: obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
! 3891: $show "(cd $xdir && ${LN_S} $obj $baseobj)"
! 3892: $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $?
! 3893: fi
! 3894: done
! 3895:
! 3896: eval cmds=\"$old_archive_cmds\"
! 3897: fi
! 3898: save_ifs="$IFS"; IFS='~'
! 3899: for cmd in $cmds; do
! 3900: IFS="$save_ifs"
! 3901: $show "$cmd"
! 3902: $run eval "$cmd" || exit $?
! 3903: done
! 3904: IFS="$save_ifs"
! 3905: done
! 3906:
! 3907: if test -n "$generated"; then
! 3908: $show "${rm}r$generated"
! 3909: $run ${rm}r$generated
! 3910: fi
! 3911:
! 3912: # Now create the libtool archive.
! 3913: case $output in
! 3914: *.la)
! 3915: old_library=
! 3916: test "$build_old_libs" = yes && old_library="$libname.$libext"
! 3917: $show "creating $output"
! 3918:
! 3919: # Preserve any variables that may affect compiler behavior
! 3920: for var in $variables_saved_for_relink; do
! 3921: if eval test -z \"\${$var+set}\"; then
! 3922: relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
! 3923: elif eval var_value=\$$var; test -z "$var_value"; then
! 3924: relink_command="$var=; export $var; $relink_command"
! 3925: else
! 3926: var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
! 3927: relink_command="$var=\"$var_value\"; export $var; $relink_command"
! 3928: fi
! 3929: done
! 3930: # Quote the link command for shipping.
! 3931: relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args)"
! 3932: relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
! 3933:
! 3934: # Only create the output if not a dry run.
! 3935: if test -z "$run"; then
! 3936: for installed in no yes; do
! 3937: if test "$installed" = yes; then
! 3938: if test -z "$install_libdir"; then
! 3939: break
! 3940: fi
! 3941: output="$output_objdir/$outputname"i
! 3942: # Replace all uninstalled libtool libraries with the installed ones
! 3943: newdependency_libs=
! 3944: for deplib in $dependency_libs; do
! 3945: case $deplib in
! 3946: *.la)
! 3947: name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
! 3948: eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
! 3949: if test -z "$libdir"; then
! 3950: $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
! 3951: exit 1
! 3952: fi
! 3953: newdependency_libs="$newdependency_libs $libdir/$name"
! 3954: ;;
! 3955: *) newdependency_libs="$newdependency_libs $deplib" ;;
! 3956: esac
! 3957: done
! 3958: dependency_libs="$newdependency_libs"
! 3959: newdlfiles=
! 3960: for lib in $dlfiles; do
! 3961: name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
! 3962: eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
! 3963: if test -z "$libdir"; then
! 3964: $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
! 3965: exit 1
! 3966: fi
! 3967: newdlfiles="$newdlfiles $libdir/$name"
! 3968: done
! 3969: dlfiles="$newdlfiles"
! 3970: newdlprefiles=
! 3971: for lib in $dlprefiles; do
! 3972: name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
! 3973: eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
! 3974: if test -z "$libdir"; then
! 3975: $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
! 3976: exit 1
! 3977: fi
! 3978: newdlprefiles="$newdlprefiles $libdir/$name"
! 3979: done
! 3980: dlprefiles="$newdlprefiles"
! 3981: fi
! 3982: $rm $output
! 3983: # place dlname in correct position for cygwin
! 3984: tdlname=$dlname
! 3985: case $host,$output,$installed,$module,$dlname in
! 3986: *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
! 3987: esac
! 3988: $echo > $output "\
! 3989: # $outputname - a libtool library file
! 3990: # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
! 3991: #
! 3992: # Please DO NOT delete this file!
! 3993: # It is necessary for linking the library.
! 3994:
! 3995: # The name that we can dlopen(3).
! 3996: dlname='$tdlname'
! 3997:
! 3998: # Names of this library.
! 3999: library_names='$library_names'
! 4000:
! 4001: # The name of the static archive.
! 4002: old_library='$old_library'
! 4003:
! 4004: # Libraries that this one depends upon.
! 4005: dependency_libs='$dependency_libs'
! 4006:
! 4007: # Version information for $libname.
! 4008: current=$current
! 4009: age=$age
! 4010: revision=$revision
! 4011:
! 4012: # Is this an already installed library?
! 4013: installed=$installed
! 4014:
! 4015: # Files to dlopen/dlpreopen
! 4016: dlopen='$dlfiles'
! 4017: dlpreopen='$dlprefiles'
! 4018:
! 4019: # Directory that this library needs to be installed in:
! 4020: libdir='$install_libdir'"
! 4021: if test "$installed" = no && test $need_relink = yes; then
! 4022: $echo >> $output "\
! 4023: relink_command=\"$relink_command\""
! 4024: fi
! 4025: done
! 4026: fi
! 4027:
! 4028: # Do a symbolic link so that the libtool archive can be found in
! 4029: # LD_LIBRARY_PATH before the program is installed.
! 4030: $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
! 4031: $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
! 4032: ;;
! 4033: esac
! 4034: exit 0
! 4035: ;;
! 4036:
! 4037: # libtool install mode
! 4038: install)
! 4039: modename="$modename: install"
! 4040:
! 4041: # There may be an optional sh(1) argument at the beginning of
! 4042: # install_prog (especially on Windows NT).
! 4043: if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
! 4044: # Allow the use of GNU shtool's install command.
! 4045: $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then
! 4046: # Aesthetically quote it.
! 4047: arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
! 4048: case $arg in
! 4049: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
! 4050: arg="\"$arg\""
! 4051: ;;
! 4052: esac
! 4053: install_prog="$arg "
! 4054: arg="$1"
! 4055: shift
! 4056: else
! 4057: install_prog=
! 4058: arg="$nonopt"
! 4059: fi
! 4060:
! 4061: # The real first argument should be the name of the installation program.
! 4062: # Aesthetically quote it.
! 4063: arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
! 4064: case $arg in
! 4065: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
! 4066: arg="\"$arg\""
! 4067: ;;
! 4068: esac
! 4069: install_prog="$install_prog$arg"
! 4070:
! 4071: # We need to accept at least all the BSD install flags.
! 4072: dest=
! 4073: files=
! 4074: opts=
! 4075: prev=
! 4076: install_type=
! 4077: isdir=no
! 4078: stripme=
! 4079: for arg
! 4080: do
! 4081: if test -n "$dest"; then
! 4082: files="$files $dest"
! 4083: dest="$arg"
! 4084: continue
! 4085: fi
! 4086:
! 4087: case $arg in
! 4088: -d) isdir=yes ;;
! 4089: -f) prev="-f" ;;
! 4090: -g) prev="-g" ;;
! 4091: -m) prev="-m" ;;
! 4092: -o) prev="-o" ;;
! 4093: -s)
! 4094: stripme=" -s"
! 4095: continue
! 4096: ;;
! 4097: -*) ;;
! 4098:
! 4099: *)
! 4100: # If the previous option needed an argument, then skip it.
! 4101: if test -n "$prev"; then
! 4102: prev=
! 4103: else
! 4104: dest="$arg"
! 4105: continue
! 4106: fi
! 4107: ;;
! 4108: esac
! 4109:
! 4110: # Aesthetically quote the argument.
! 4111: arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
! 4112: case $arg in
! 4113: *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*)
! 4114: arg="\"$arg\""
! 4115: ;;
! 4116: esac
! 4117: install_prog="$install_prog $arg"
! 4118: done
! 4119:
! 4120: if test -z "$install_prog"; then
! 4121: $echo "$modename: you must specify an install program" 1>&2
! 4122: $echo "$help" 1>&2
! 4123: exit 1
! 4124: fi
! 4125:
! 4126: if test -n "$prev"; then
! 4127: $echo "$modename: the \`$prev' option requires an argument" 1>&2
! 4128: $echo "$help" 1>&2
! 4129: exit 1
! 4130: fi
! 4131:
! 4132: if test -z "$files"; then
! 4133: if test -z "$dest"; then
! 4134: $echo "$modename: no file or destination specified" 1>&2
! 4135: else
! 4136: $echo "$modename: you must specify a destination" 1>&2
! 4137: fi
! 4138: $echo "$help" 1>&2
! 4139: exit 1
! 4140: fi
! 4141:
! 4142: # Strip any trailing slash from the destination.
! 4143: dest=`$echo "X$dest" | $Xsed -e 's%/$%%'`
! 4144:
! 4145: # Check to see that the destination is a directory.
! 4146: test -d "$dest" && isdir=yes
! 4147: if test "$isdir" = yes; then
! 4148: destdir="$dest"
! 4149: destname=
! 4150: else
! 4151: destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'`
! 4152: test "X$destdir" = "X$dest" && destdir=.
! 4153: destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'`
! 4154:
! 4155: # Not a directory, so check to see that there is only one file specified.
! 4156: set dummy $files
! 4157: if test $# -gt 2; then
! 4158: $echo "$modename: \`$dest' is not a directory" 1>&2
! 4159: $echo "$help" 1>&2
! 4160: exit 1
! 4161: fi
! 4162: fi
! 4163: case $destdir in
! 4164: [\\/]* | [A-Za-z]:[\\/]*) ;;
! 4165: *)
! 4166: for file in $files; do
! 4167: case $file in
! 4168: *.lo) ;;
! 4169: *)
! 4170: $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
! 4171: $echo "$help" 1>&2
! 4172: exit 1
! 4173: ;;
! 4174: esac
! 4175: done
! 4176: ;;
! 4177: esac
! 4178:
! 4179: # This variable tells wrapper scripts just to set variables rather
! 4180: # than running their programs.
! 4181: libtool_install_magic="$magic"
! 4182:
! 4183: staticlibs=
! 4184: future_libdirs=
! 4185: current_libdirs=
! 4186: for file in $files; do
! 4187:
! 4188: # Do each installation.
! 4189: case $file in
! 4190: *.$libext)
! 4191: # Do the static libraries later.
! 4192: staticlibs="$staticlibs $file"
! 4193: ;;
! 4194:
! 4195: *.la)
! 4196: # Check to see that this really is a libtool archive.
! 4197: if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
! 4198: else
! 4199: $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
! 4200: $echo "$help" 1>&2
! 4201: exit 1
! 4202: fi
! 4203:
! 4204: library_names=
! 4205: old_library=
! 4206: relink_command=
! 4207: # If there is no directory component, then add one.
! 4208: case $file in
! 4209: */* | *\\*) . $file ;;
! 4210: *) . ./$file ;;
! 4211: esac
! 4212:
! 4213: # Add the libdir to current_libdirs if it is the destination.
! 4214: if test "X$destdir" = "X$libdir"; then
! 4215: case "$current_libdirs " in
! 4216: *" $libdir "*) ;;
! 4217: *) current_libdirs="$current_libdirs $libdir" ;;
! 4218: esac
! 4219: else
! 4220: # Note the libdir as a future libdir.
! 4221: case "$future_libdirs " in
! 4222: *" $libdir "*) ;;
! 4223: *) future_libdirs="$future_libdirs $libdir" ;;
! 4224: esac
! 4225: fi
! 4226:
! 4227: dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/
! 4228: test "X$dir" = "X$file/" && dir=
! 4229: dir="$dir$objdir"
! 4230:
! 4231: if test -n "$relink_command"; then
! 4232: $echo "$modename: warning: relinking \`$file'" 1>&2
! 4233: $show "$relink_command"
! 4234: if $run eval "$relink_command"; then :
! 4235: else
! 4236: $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
! 4237: continue
! 4238: fi
! 4239: fi
! 4240:
! 4241: # See the names of the shared library.
! 4242: set dummy $library_names
! 4243: if test -n "$2"; then
! 4244: realname="$2"
! 4245: shift
! 4246: shift
! 4247:
! 4248: srcname="$realname"
! 4249: test -n "$relink_command" && srcname="$realname"T
! 4250:
! 4251: # Install the shared library and build the symlinks.
! 4252: $show "$install_prog $dir/$srcname $destdir/$realname"
! 4253: $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
! 4254: if test -n "$stripme" && test -n "$striplib"; then
! 4255: $show "$striplib $destdir/$realname"
! 4256: $run eval "$striplib $destdir/$realname" || exit $?
! 4257: fi
! 4258:
! 4259: if test $# -gt 0; then
! 4260: # Delete the old symlinks, and create new ones.
! 4261: for linkname
! 4262: do
! 4263: if test "$linkname" != "$realname"; then
! 4264: $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
! 4265: $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)"
! 4266: fi
! 4267: done
! 4268: fi
! 4269:
! 4270: # Do each command in the postinstall commands.
! 4271: lib="$destdir/$realname"
! 4272: eval cmds=\"$postinstall_cmds\"
! 4273: save_ifs="$IFS"; IFS='~'
! 4274: for cmd in $cmds; do
! 4275: IFS="$save_ifs"
! 4276: $show "$cmd"
! 4277: $run eval "$cmd" || exit $?
! 4278: done
! 4279: IFS="$save_ifs"
! 4280: fi
! 4281:
! 4282: # Install the pseudo-library for information purposes.
! 4283: name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
! 4284: instname="$dir/$name"i
! 4285: $show "$install_prog $instname $destdir/$name"
! 4286: $run eval "$install_prog $instname $destdir/$name" || exit $?
! 4287:
! 4288: # Maybe install the static library, too.
! 4289: test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
! 4290: ;;
! 4291:
! 4292: *.lo)
! 4293: # Install (i.e. copy) a libtool object.
! 4294:
! 4295: # Figure out destination file name, if it wasn't already specified.
! 4296: if test -n "$destname"; then
! 4297: destfile="$destdir/$destname"
! 4298: else
! 4299: destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
! 4300: destfile="$destdir/$destfile"
! 4301: fi
! 4302:
! 4303: # Deduce the name of the destination old-style object file.
! 4304: case $destfile in
! 4305: *.lo)
! 4306: staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
! 4307: ;;
! 4308: *.$objext)
! 4309: staticdest="$destfile"
! 4310: destfile=
! 4311: ;;
! 4312: *)
! 4313: $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
! 4314: $echo "$help" 1>&2
! 4315: exit 1
! 4316: ;;
! 4317: esac
! 4318:
! 4319: # Install the libtool object if requested.
! 4320: if test -n "$destfile"; then
! 4321: $show "$install_prog $file $destfile"
! 4322: $run eval "$install_prog $file $destfile" || exit $?
! 4323: fi
! 4324:
! 4325: # Install the old object if enabled.
! 4326: if test "$build_old_libs" = yes; then
! 4327: # Deduce the name of the old-style object file.
! 4328: staticobj=`$echo "X$file" | $Xsed -e "$lo2o"`
! 4329:
! 4330: $show "$install_prog $staticobj $staticdest"
! 4331: $run eval "$install_prog \$staticobj \$staticdest" || exit $?
! 4332: fi
! 4333: exit 0
! 4334: ;;
! 4335:
! 4336: *)
! 4337: # Figure out destination file name, if it wasn't already specified.
! 4338: if test -n "$destname"; then
! 4339: destfile="$destdir/$destname"
! 4340: else
! 4341: destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
! 4342: destfile="$destdir/$destfile"
! 4343: fi
! 4344:
! 4345: # Do a test to see if this is really a libtool program.
! 4346: case $host in
! 4347: *cygwin*|*mingw*)
! 4348: wrapper=`echo $file | ${SED} -e 's,.exe$,,'`
! 4349: ;;
! 4350: *)
! 4351: wrapper=$file
! 4352: ;;
! 4353: esac
! 4354: if (${SED} -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
! 4355: notinst_deplibs=
! 4356: relink_command=
! 4357:
! 4358: # If there is no directory component, then add one.
! 4359: case $file in
! 4360: */* | *\\*) . $wrapper ;;
! 4361: *) . ./$wrapper ;;
! 4362: esac
! 4363:
! 4364: # Check the variables that should have been set.
! 4365: if test -z "$notinst_deplibs"; then
! 4366: $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
! 4367: exit 1
! 4368: fi
! 4369:
! 4370: finalize=yes
! 4371: for lib in $notinst_deplibs; do
! 4372: # Check to see that each library is installed.
! 4373: libdir=
! 4374: if test -f "$lib"; then
! 4375: # If there is no directory component, then add one.
! 4376: case $lib in
! 4377: */* | *\\*) . $lib ;;
! 4378: *) . ./$lib ;;
! 4379: esac
! 4380: fi
! 4381: libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
! 4382: if test -n "$libdir" && test ! -f "$libfile"; then
! 4383: $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
! 4384: finalize=no
! 4385: fi
! 4386: done
! 4387:
! 4388: relink_command=
! 4389: # If there is no directory component, then add one.
! 4390: case $file in
! 4391: */* | *\\*) . $wrapper ;;
! 4392: *) . ./$wrapper ;;
! 4393: esac
! 4394:
! 4395: outputname=
! 4396: if test "$fast_install" = no && test -n "$relink_command"; then
! 4397: if test "$finalize" = yes && test -z "$run"; then
! 4398: tmpdir="/tmp"
! 4399: test -n "$TMPDIR" && tmpdir="$TMPDIR"
! 4400: tmpdir="$tmpdir/libtool-$$"
! 4401: if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
! 4402: else
! 4403: $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
! 4404: continue
! 4405: fi
! 4406: file=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
! 4407: outputname="$tmpdir/$file"
! 4408: # Replace the output file specification.
! 4409: relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
! 4410:
! 4411: $show "$relink_command"
! 4412: if $run eval "$relink_command"; then :
! 4413: else
! 4414: $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
! 4415: ${rm}r "$tmpdir"
! 4416: continue
! 4417: fi
! 4418: file="$outputname"
! 4419: else
! 4420: $echo "$modename: warning: cannot relink \`$file'" 1>&2
! 4421: fi
! 4422: else
! 4423: # Install the binary that we compiled earlier.
! 4424: file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"`
! 4425: fi
! 4426: fi
! 4427:
! 4428: # remove .exe since cygwin /usr/bin/install will append another
! 4429: # one anyways
! 4430: case $install_prog,$host in
! 4431: /usr/bin/install*,*cygwin*)
! 4432: case $file:$destfile in
! 4433: *.exe:*.exe)
! 4434: # this is ok
! 4435: ;;
! 4436: *.exe:*)
! 4437: destfile=$destfile.exe
! 4438: ;;
! 4439: *:*.exe)
! 4440: destfile=`echo $destfile | ${SED} -e 's,.exe$,,'`
! 4441: ;;
! 4442: esac
! 4443: ;;
! 4444: esac
! 4445: $show "$install_prog$stripme $file $destfile"
! 4446: $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
! 4447: test -n "$outputname" && ${rm}r "$tmpdir"
! 4448: ;;
! 4449: esac
! 4450: done
! 4451:
! 4452: for file in $staticlibs; do
! 4453: name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
! 4454:
! 4455: # Set up the ranlib parameters.
! 4456: oldlib="$destdir/$name"
! 4457:
! 4458: $show "$install_prog $file $oldlib"
! 4459: $run eval "$install_prog \$file \$oldlib" || exit $?
! 4460:
! 4461: if test -n "$stripme" && test -n "$striplib"; then
! 4462: $show "$old_striplib $oldlib"
! 4463: $run eval "$old_striplib $oldlib" || exit $?
! 4464: fi
! 4465:
! 4466: # Do each command in the postinstall commands.
! 4467: eval cmds=\"$old_postinstall_cmds\"
! 4468: save_ifs="$IFS"; IFS='~'
! 4469: for cmd in $cmds; do
! 4470: IFS="$save_ifs"
! 4471: $show "$cmd"
! 4472: $run eval "$cmd" || exit $?
! 4473: done
! 4474: IFS="$save_ifs"
! 4475: done
! 4476:
! 4477: if test -n "$future_libdirs"; then
! 4478: $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
! 4479: fi
! 4480:
! 4481: if test -n "$current_libdirs"; then
! 4482: # Maybe just do a dry run.
! 4483: test -n "$run" && current_libdirs=" -n$current_libdirs"
! 4484: exec_cmd='$SHELL $0 --finish$current_libdirs'
! 4485: else
! 4486: exit 0
! 4487: fi
! 4488: ;;
! 4489:
! 4490: # libtool finish mode
! 4491: finish)
! 4492: modename="$modename: finish"
! 4493: libdirs="$nonopt"
! 4494: admincmds=
! 4495:
! 4496: if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
! 4497: for dir
! 4498: do
! 4499: libdirs="$libdirs $dir"
! 4500: done
! 4501:
! 4502: for libdir in $libdirs; do
! 4503: if test -n "$finish_cmds"; then
! 4504: # Do each command in the finish commands.
! 4505: eval cmds=\"$finish_cmds\"
! 4506: save_ifs="$IFS"; IFS='~'
! 4507: for cmd in $cmds; do
! 4508: IFS="$save_ifs"
! 4509: $show "$cmd"
! 4510: $run eval "$cmd" || admincmds="$admincmds
! 4511: $cmd"
! 4512: done
! 4513: IFS="$save_ifs"
! 4514: fi
! 4515: if test -n "$finish_eval"; then
! 4516: # Do the single finish_eval.
! 4517: eval cmds=\"$finish_eval\"
! 4518: $run eval "$cmds" || admincmds="$admincmds
! 4519: $cmds"
! 4520: fi
! 4521: done
! 4522: fi
! 4523:
! 4524: # Exit here if they wanted silent mode.
! 4525: test "$show" = ":" && exit 0
! 4526:
! 4527: echo "----------------------------------------------------------------------"
! 4528: echo "Libraries have been installed in:"
! 4529: for libdir in $libdirs; do
! 4530: echo " $libdir"
! 4531: done
! 4532: echo
! 4533: echo "If you ever happen to want to link against installed libraries"
! 4534: echo "in a given directory, LIBDIR, you must either use libtool, and"
! 4535: echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
! 4536: echo "flag during linking and do at least one of the following:"
! 4537: if test -n "$shlibpath_var"; then
! 4538: echo " - add LIBDIR to the \`$shlibpath_var' environment variable"
! 4539: echo " during execution"
! 4540: fi
! 4541: if test -n "$runpath_var"; then
! 4542: echo " - add LIBDIR to the \`$runpath_var' environment variable"
! 4543: echo " during linking"
! 4544: fi
! 4545: if test -n "$hardcode_libdir_flag_spec"; then
! 4546: libdir=LIBDIR
! 4547: eval flag=\"$hardcode_libdir_flag_spec\"
! 4548:
! 4549: echo " - use the \`$flag' linker flag"
! 4550: fi
! 4551: if test -n "$admincmds"; then
! 4552: echo " - have your system administrator run these commands:$admincmds"
! 4553: fi
! 4554: if test -f /etc/ld.so.conf; then
! 4555: echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
! 4556: fi
! 4557: echo
! 4558: echo "See any operating system documentation about shared libraries for"
! 4559: echo "more information, such as the ld(1) and ld.so(8) manual pages."
! 4560: echo "----------------------------------------------------------------------"
! 4561: exit 0
! 4562: ;;
! 4563:
! 4564: # libtool execute mode
! 4565: execute)
! 4566: modename="$modename: execute"
! 4567:
! 4568: # The first argument is the command name.
! 4569: cmd="$nonopt"
! 4570: if test -z "$cmd"; then
! 4571: $echo "$modename: you must specify a COMMAND" 1>&2
! 4572: $echo "$help"
! 4573: exit 1
! 4574: fi
! 4575:
! 4576: # Handle -dlopen flags immediately.
! 4577: for file in $execute_dlfiles; do
! 4578: if test ! -f "$file"; then
! 4579: $echo "$modename: \`$file' is not a file" 1>&2
! 4580: $echo "$help" 1>&2
! 4581: exit 1
! 4582: fi
! 4583:
! 4584: dir=
! 4585: case $file in
! 4586: *.la)
! 4587: # Check to see that this really is a libtool archive.
! 4588: if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
! 4589: else
! 4590: $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
! 4591: $echo "$help" 1>&2
! 4592: exit 1
! 4593: fi
! 4594:
! 4595: # Read the libtool library.
! 4596: dlname=
! 4597: library_names=
! 4598:
! 4599: # If there is no directory component, then add one.
! 4600: case $file in
! 4601: */* | *\\*) . $file ;;
! 4602: *) . ./$file ;;
! 4603: esac
! 4604:
! 4605: # Skip this library if it cannot be dlopened.
! 4606: if test -z "$dlname"; then
! 4607: # Warn if it was a shared library.
! 4608: test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
! 4609: continue
! 4610: fi
! 4611:
! 4612: dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
! 4613: test "X$dir" = "X$file" && dir=.
! 4614:
! 4615: if test -f "$dir/$objdir/$dlname"; then
! 4616: dir="$dir/$objdir"
! 4617: else
! 4618: $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
! 4619: exit 1
! 4620: fi
! 4621: ;;
! 4622:
! 4623: *.lo)
! 4624: # Just add the directory containing the .lo file.
! 4625: dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
! 4626: test "X$dir" = "X$file" && dir=.
! 4627: ;;
! 4628:
! 4629: *)
! 4630: $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
! 4631: continue
! 4632: ;;
! 4633: esac
! 4634:
! 4635: # Get the absolute pathname.
! 4636: absdir=`cd "$dir" && pwd`
! 4637: test -n "$absdir" && dir="$absdir"
! 4638:
! 4639: # Now add the directory to shlibpath_var.
! 4640: if eval "test -z \"\$$shlibpath_var\""; then
! 4641: eval "$shlibpath_var=\"\$dir\""
! 4642: else
! 4643: eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
! 4644: fi
! 4645: done
! 4646:
! 4647: # This variable tells wrapper scripts just to set shlibpath_var
! 4648: # rather than running their programs.
! 4649: libtool_execute_magic="$magic"
! 4650:
! 4651: # Check if any of the arguments is a wrapper script.
! 4652: args=
! 4653: for file
! 4654: do
! 4655: case $file in
! 4656: -*) ;;
! 4657: *)
! 4658: # Do a test to see if this is really a libtool program.
! 4659: if (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
! 4660: # If there is no directory component, then add one.
! 4661: case $file in
! 4662: */* | *\\*) . $file ;;
! 4663: *) . ./$file ;;
! 4664: esac
! 4665:
! 4666: # Transform arg to wrapped name.
! 4667: file="$progdir/$program"
! 4668: fi
! 4669: ;;
! 4670: esac
! 4671: # Quote arguments (to preserve shell metacharacters).
! 4672: file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"`
! 4673: args="$args \"$file\""
! 4674: done
! 4675:
! 4676: if test -z "$run"; then
! 4677: if test -n "$shlibpath_var"; then
! 4678: # Export the shlibpath_var.
! 4679: eval "export $shlibpath_var"
! 4680: fi
! 4681:
! 4682: # Restore saved enviroment variables
! 4683: if test "${save_LC_ALL+set}" = set; then
! 4684: LC_ALL="$save_LC_ALL"; export LC_ALL
! 4685: fi
! 4686: if test "${save_LANG+set}" = set; then
! 4687: LANG="$save_LANG"; export LANG
! 4688: fi
! 4689:
! 4690: # Now prepare to actually exec the command.
! 4691: exec_cmd="\$cmd$args"
! 4692: else
! 4693: # Display what would be done.
! 4694: if test -n "$shlibpath_var"; then
! 4695: eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
! 4696: $echo "export $shlibpath_var"
! 4697: fi
! 4698: $echo "$cmd$args"
! 4699: exit 0
! 4700: fi
! 4701: ;;
! 4702:
! 4703: # libtool clean and uninstall mode
! 4704: clean | uninstall)
! 4705: modename="$modename: $mode"
! 4706: rm="$nonopt"
! 4707: files=
! 4708: rmforce=
! 4709: exit_status=0
! 4710:
! 4711: # This variable tells wrapper scripts just to set variables rather
! 4712: # than running their programs.
! 4713: libtool_install_magic="$magic"
! 4714:
! 4715: for arg
! 4716: do
! 4717: case $arg in
! 4718: -f) rm="$rm $arg"; rmforce=yes ;;
! 4719: -*) rm="$rm $arg" ;;
! 4720: *) files="$files $arg" ;;
! 4721: esac
! 4722: done
! 4723:
! 4724: if test -z "$rm"; then
! 4725: $echo "$modename: you must specify an RM program" 1>&2
! 4726: $echo "$help" 1>&2
! 4727: exit 1
! 4728: fi
! 4729:
! 4730: rmdirs=
! 4731:
! 4732: for file in $files; do
! 4733: dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
! 4734: if test "X$dir" = "X$file"; then
! 4735: dir=.
! 4736: objdir="$objdir"
! 4737: else
! 4738: objdir="$dir/$objdir"
! 4739: fi
! 4740: name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
! 4741: test $mode = uninstall && objdir="$dir"
! 4742:
! 4743: # Remember objdir for removal later, being careful to avoid duplicates
! 4744: if test $mode = clean; then
! 4745: case " $rmdirs " in
! 4746: *" $objdir "*) ;;
! 4747: *) rmdirs="$rmdirs $objdir" ;;
! 4748: esac
! 4749: fi
! 4750:
! 4751: # Don't error if the file doesn't exist and rm -f was used.
! 4752: if (test -L "$file") >/dev/null 2>&1 \
! 4753: || (test -h "$file") >/dev/null 2>&1 \
! 4754: || test -f "$file"; then
! 4755: :
! 4756: elif test -d "$file"; then
! 4757: exit_status=1
! 4758: continue
! 4759: elif test "$rmforce" = yes; then
! 4760: continue
! 4761: fi
! 4762:
! 4763: rmfiles="$file"
! 4764:
! 4765: case $name in
! 4766: *.la)
! 4767: # Possibly a libtool archive, so verify it.
! 4768: if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
! 4769: . $dir/$name
! 4770:
! 4771: # Delete the libtool libraries and symlinks.
! 4772: for n in $library_names; do
! 4773: rmfiles="$rmfiles $objdir/$n"
! 4774: done
! 4775: test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
! 4776: test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
! 4777:
! 4778: if test $mode = uninstall; then
! 4779: if test -n "$library_names"; then
! 4780: # Do each command in the postuninstall commands.
! 4781: eval cmds=\"$postuninstall_cmds\"
! 4782: save_ifs="$IFS"; IFS='~'
! 4783: for cmd in $cmds; do
! 4784: IFS="$save_ifs"
! 4785: $show "$cmd"
! 4786: $run eval "$cmd"
! 4787: if test $? != 0 && test "$rmforce" != yes; then
! 4788: exit_status=1
! 4789: fi
! 4790: done
! 4791: IFS="$save_ifs"
! 4792: fi
! 4793:
! 4794: if test -n "$old_library"; then
! 4795: # Do each command in the old_postuninstall commands.
! 4796: eval cmds=\"$old_postuninstall_cmds\"
! 4797: save_ifs="$IFS"; IFS='~'
! 4798: for cmd in $cmds; do
! 4799: IFS="$save_ifs"
! 4800: $show "$cmd"
! 4801: $run eval "$cmd"
! 4802: if test $? != 0 && test "$rmforce" != yes; then
! 4803: exit_status=1
! 4804: fi
! 4805: done
! 4806: IFS="$save_ifs"
! 4807: fi
! 4808: # FIXME: should reinstall the best remaining shared library.
! 4809: fi
! 4810: fi
! 4811: ;;
! 4812:
! 4813: *.lo)
! 4814: if test "$build_old_libs" = yes; then
! 4815: oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
! 4816: rmfiles="$rmfiles $dir/$oldobj"
! 4817: fi
! 4818: ;;
! 4819:
! 4820: *)
! 4821: # Do a test to see if this is a libtool program.
! 4822: if test $mode = clean &&
! 4823: (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
! 4824: relink_command=
! 4825: . $dir/$file
! 4826:
! 4827: rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
! 4828: if test "$fast_install" = yes && test -n "$relink_command"; then
! 4829: rmfiles="$rmfiles $objdir/lt-$name"
! 4830: fi
! 4831: fi
! 4832: ;;
! 4833: esac
! 4834: $show "$rm $rmfiles"
! 4835: $run $rm $rmfiles || exit_status=1
! 4836: done
! 4837:
! 4838: # Try to remove the ${objdir}s in the directories where we deleted files
! 4839: for dir in $rmdirs; do
! 4840: if test -d "$dir"; then
! 4841: $show "rmdir $dir"
! 4842: $run rmdir $dir >/dev/null 2>&1
! 4843: fi
! 4844: done
! 4845:
! 4846: exit $exit_status
! 4847: ;;
! 4848:
! 4849: "")
! 4850: $echo "$modename: you must specify a MODE" 1>&2
! 4851: $echo "$generic_help" 1>&2
! 4852: exit 1
! 4853: ;;
! 4854: esac
! 4855:
! 4856: if test -z "$exec_cmd"; then
! 4857: $echo "$modename: invalid operation mode \`$mode'" 1>&2
! 4858: $echo "$generic_help" 1>&2
! 4859: exit 1
! 4860: fi
! 4861: fi # test -z "$show_help"
! 4862:
! 4863: if test -n "$exec_cmd"; then
! 4864: eval exec $exec_cmd
! 4865: exit 1
! 4866: fi
! 4867:
! 4868: # We need to display help for each of the modes.
! 4869: case $mode in
! 4870: "") $echo \
! 4871: "Usage: $modename [OPTION]... [MODE-ARG]...
! 4872:
! 4873: Provide generalized library-building support services.
! 4874:
! 4875: --config show all configuration variables
! 4876: --debug enable verbose shell tracing
! 4877: -n, --dry-run display commands without modifying any files
! 4878: --features display basic configuration information and exit
! 4879: --finish same as \`--mode=finish'
! 4880: --help display this help message and exit
! 4881: --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS]
! 4882: --quiet same as \`--silent'
! 4883: --silent don't print informational messages
! 4884: --version print version information
! 4885:
! 4886: MODE must be one of the following:
! 4887:
! 4888: clean remove files from the build directory
! 4889: compile compile a source file into a libtool object
! 4890: execute automatically set library path, then run a program
! 4891: finish complete the installation of libtool libraries
! 4892: install install libraries or executables
! 4893: link create a library or an executable
! 4894: uninstall remove libraries from an installed directory
! 4895:
! 4896: MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
! 4897: a more detailed description of MODE."
! 4898: exit 0
! 4899: ;;
! 4900:
! 4901: clean)
! 4902: $echo \
! 4903: "Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
! 4904:
! 4905: Remove files from the build directory.
! 4906:
! 4907: RM is the name of the program to use to delete files associated with each FILE
! 4908: (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
! 4909: to RM.
! 4910:
! 4911: If FILE is a libtool library, object or program, all the files associated
! 4912: with it are deleted. Otherwise, only FILE itself is deleted using RM."
! 4913: ;;
! 4914:
! 4915: compile)
! 4916: $echo \
! 4917: "Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
! 4918:
! 4919: Compile a source file into a libtool library object.
! 4920:
! 4921: This mode accepts the following additional options:
! 4922:
! 4923: -o OUTPUT-FILE set the output file name to OUTPUT-FILE
! 4924: -prefer-pic try to building PIC objects only
! 4925: -prefer-non-pic try to building non-PIC objects only
! 4926: -static always build a \`.o' file suitable for static linking
! 4927:
! 4928: COMPILE-COMMAND is a command to be used in creating a \`standard' object file
! 4929: from the given SOURCEFILE.
! 4930:
! 4931: The output file name is determined by removing the directory component from
! 4932: SOURCEFILE, then substituting the C source code suffix \`.c' with the
! 4933: library object suffix, \`.lo'."
! 4934: ;;
! 4935:
! 4936: execute)
! 4937: $echo \
! 4938: "Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
! 4939:
! 4940: Automatically set library path, then run a program.
! 4941:
! 4942: This mode accepts the following additional options:
! 4943:
! 4944: -dlopen FILE add the directory containing FILE to the library path
! 4945:
! 4946: This mode sets the library path environment variable according to \`-dlopen'
! 4947: flags.
! 4948:
! 4949: If any of the ARGS are libtool executable wrappers, then they are translated
! 4950: into their corresponding uninstalled binary, and any of their required library
! 4951: directories are added to the library path.
! 4952:
! 4953: Then, COMMAND is executed, with ARGS as arguments."
! 4954: ;;
! 4955:
! 4956: finish)
! 4957: $echo \
! 4958: "Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
! 4959:
! 4960: Complete the installation of libtool libraries.
! 4961:
! 4962: Each LIBDIR is a directory that contains libtool libraries.
! 4963:
! 4964: The commands that this mode executes may require superuser privileges. Use
! 4965: the \`--dry-run' option if you just want to see what would be executed."
! 4966: ;;
! 4967:
! 4968: install)
! 4969: $echo \
! 4970: "Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
! 4971:
! 4972: Install executables or libraries.
! 4973:
! 4974: INSTALL-COMMAND is the installation command. The first component should be
! 4975: either the \`install' or \`cp' program.
! 4976:
! 4977: The rest of the components are interpreted as arguments to that command (only
! 4978: BSD-compatible install options are recognized)."
! 4979: ;;
! 4980:
! 4981: link)
! 4982: $echo \
! 4983: "Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
! 4984:
! 4985: Link object files or libraries together to form another library, or to
! 4986: create an executable program.
! 4987:
! 4988: LINK-COMMAND is a command using the C compiler that you would use to create
! 4989: a program from several object files.
! 4990:
! 4991: The following components of LINK-COMMAND are treated specially:
! 4992:
! 4993: -all-static do not do any dynamic linking at all
! 4994: -avoid-version do not add a version suffix if possible
! 4995: -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
! 4996: -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
! 4997: -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
! 4998: -export-symbols SYMFILE
! 4999: try to export only the symbols listed in SYMFILE
! 5000: -export-symbols-regex REGEX
! 5001: try to export only the symbols matching REGEX
! 5002: -LLIBDIR search LIBDIR for required installed libraries
! 5003: -lNAME OUTPUT-FILE requires the installed library libNAME
! 5004: -module build a library that can dlopened
! 5005: -no-fast-install disable the fast-install mode
! 5006: -no-install link a not-installable executable
! 5007: -no-undefined declare that a library does not refer to external symbols
! 5008: -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
! 5009: -release RELEASE specify package release information
! 5010: -rpath LIBDIR the created library will eventually be installed in LIBDIR
! 5011: -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
! 5012: -static do not do any dynamic linking of libtool libraries
! 5013: -version-info CURRENT[:REVISION[:AGE]]
! 5014: specify library version info [each variable defaults to 0]
! 5015:
! 5016: All other options (arguments beginning with \`-') are ignored.
! 5017:
! 5018: Every other argument is treated as a filename. Files ending in \`.la' are
! 5019: treated as uninstalled libtool libraries, other files are standard or library
! 5020: object files.
! 5021:
! 5022: If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
! 5023: only library objects (\`.lo' files) may be specified, and \`-rpath' is
! 5024: required, except when creating a convenience library.
! 5025:
! 5026: If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
! 5027: using \`ar' and \`ranlib', or on Windows using \`lib'.
! 5028:
! 5029: If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
! 5030: is created, otherwise an executable program is created."
! 5031: ;;
! 5032:
! 5033: uninstall)
! 5034: $echo \
! 5035: "Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
! 5036:
! 5037: Remove libraries from an installation directory.
! 5038:
! 5039: RM is the name of the program to use to delete files associated with each FILE
! 5040: (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
! 5041: to RM.
! 5042:
! 5043: If FILE is a libtool library, all the files associated with it are deleted.
! 5044: Otherwise, only FILE itself is deleted using RM."
! 5045: ;;
! 5046:
! 5047: *)
! 5048: $echo "$modename: invalid operation mode \`$mode'" 1>&2
! 5049: $echo "$help" 1>&2
! 5050: exit 1
! 5051: ;;
! 5052: esac
! 5053:
! 5054: echo
! 5055: $echo "Try \`$modename --help' for more information about other modes."
! 5056:
! 5057: exit 0
! 5058:
! 5059: # Local Variables:
! 5060: # mode:shell-script
! 5061: # sh-indentation:2
! 5062: # End:
E-mail: