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