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