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