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