1# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
2## Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004
3## Free Software Foundation, Inc.
4## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
5##
6## This program is free software; you can redistribute it and/or modify
7## it under the terms of the GNU General Public License as published by
8## the Free Software Foundation; either version 2 of the License, or
9## (at your option) any later version.
10##
11## This program is distributed in the hope that it will be useful, but
12## WITHOUT ANY WARRANTY; without even the implied warranty of
13## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14## General Public License for more details.
15##
16## You should have received a copy of the GNU General Public License
17## along with this program; if not, write to the Free Software
18## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19##
20## As a special exception to the GNU General Public License, if you
21## distribute this file as part of a program that contains a
22## configuration script generated by Autoconf, you may include it under
23## the same distribution terms that you use for the rest of that program.
24
25# serial 47 AC_PROG_LIBTOOL
26
27
28# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
29# -----------------------------------------------------------
30# If this macro is not defined by Autoconf, define it here.
31m4_ifdef([AC_PROVIDE_IFELSE],
32         [],
33         [m4_define([AC_PROVIDE_IFELSE],
34	         [m4_ifdef([AC_PROVIDE_$1],
35		           [$2], [$3])])])
36
37
38# AC_PROG_LIBTOOL
39# ---------------
40AC_DEFUN([AC_PROG_LIBTOOL],
41[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
42dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
43dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX.
44  AC_PROVIDE_IFELSE([AC_PROG_CXX],
45    [AC_LIBTOOL_CXX],
46    [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX
47  ])])
48dnl And a similar setup for Fortran 77 support
49  AC_PROVIDE_IFELSE([AC_PROG_F77],
50    [AC_LIBTOOL_F77],
51    [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77
52])])
53
54dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
55dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
56dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both.
57  AC_PROVIDE_IFELSE([AC_PROG_GCJ],
58    [AC_LIBTOOL_GCJ],
59    [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
60      [AC_LIBTOOL_GCJ],
61      [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],
62	[AC_LIBTOOL_GCJ],
63      [ifdef([AC_PROG_GCJ],
64	     [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])
65       ifdef([A][M_PROG_GCJ],
66	     [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])])
67       ifdef([LT_AC_PROG_GCJ],
68	     [define([LT_AC_PROG_GCJ],
69		defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])])
70])])# AC_PROG_LIBTOOL
71
72
73# _AC_PROG_LIBTOOL
74# ----------------
75AC_DEFUN([_AC_PROG_LIBTOOL],
76[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
77AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
78AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl
79AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
80
81# This can be used to rebuild libtool when needed
82LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
83
84# Always use our own libtool.
85LIBTOOL='$(SHELL) $(top_builddir)/libtool'
86AC_SUBST(LIBTOOL)dnl
87
88# Prevent multiple expansion
89define([AC_PROG_LIBTOOL], [])
90])# _AC_PROG_LIBTOOL
91
92
93# AC_LIBTOOL_SETUP
94# ----------------
95AC_DEFUN([AC_LIBTOOL_SETUP],
96[AC_PREREQ(2.50)dnl
97AC_REQUIRE([AC_ENABLE_SHARED])dnl
98AC_REQUIRE([AC_ENABLE_STATIC])dnl
99AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
100AC_REQUIRE([AC_CANONICAL_HOST])dnl
101AC_REQUIRE([AC_CANONICAL_BUILD])dnl
102AC_REQUIRE([AC_PROG_CC])dnl
103AC_REQUIRE([AC_PROG_LD])dnl
104AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
105AC_REQUIRE([AC_PROG_NM])dnl
106
107AC_REQUIRE([AC_PROG_LN_S])dnl
108AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
109# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
110AC_REQUIRE([AC_OBJEXT])dnl
111AC_REQUIRE([AC_EXEEXT])dnl
112dnl
113
114AC_LIBTOOL_SYS_MAX_CMD_LEN
115AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
116AC_LIBTOOL_OBJDIR
117
118AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
119_LT_AC_PROG_ECHO_BACKSLASH
120
121case $host_os in
122aix3*)
123  # AIX sometimes has problems with the GCC collect2 program.  For some
124  # reason, if we set the COLLECT_NAMES environment variable, the problems
125  # vanish in a puff of smoke.
126  if test "X${COLLECT_NAMES+set}" != Xset; then
127    COLLECT_NAMES=
128    export COLLECT_NAMES
129  fi
130  ;;
131esac
132
133# Sed substitution that helps us do robust quoting.  It backslashifies
134# metacharacters that are still active within double-quoted strings.
135Xsed='sed -e s/^X//'
136[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g']
137
138# Same as above, but do not quote variable references.
139[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g']
140
141# Sed substitution to delay expansion of an escaped shell variable in a
142# double_quote_subst'ed string.
143delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
144
145# Sed substitution to avoid accidental globbing in evaled expressions
146no_glob_subst='s/\*/\\\*/g'
147
148# Constants:
149rm="rm -f"
150
151# Global variables:
152default_ofile=libtool
153can_build_shared=yes
154
155# All known linkers require a `.a' archive for static linking (except M$VC,
156# which needs '.lib').
157libext=a
158ltmain="$ac_aux_dir/ltmain.sh"
159ofile="$default_ofile"
160with_gnu_ld="$lt_cv_prog_gnu_ld"
161
162AC_CHECK_TOOL(AR, ar, false)
163AC_CHECK_TOOL(RANLIB, ranlib, :)
164AC_CHECK_TOOL(STRIP, strip, :)
165
166old_CC="$CC"
167old_CFLAGS="$CFLAGS"
168
169# Set sane defaults for various variables
170test -z "$AR" && AR=ar
171test -z "$AR_FLAGS" && AR_FLAGS=cru
172test -z "$AS" && AS=as
173test -z "$CC" && CC=cc
174test -z "$LTCC" && LTCC=$CC
175test -z "$DLLTOOL" && DLLTOOL=dlltool
176test -z "$LD" && LD=ld
177test -z "$LN_S" && LN_S="ln -s"
178test -z "$MAGIC_CMD" && MAGIC_CMD=file
179test -z "$NM" && NM=nm
180test -z "$SED" && SED=sed
181test -z "$OBJDUMP" && OBJDUMP=objdump
182test -z "$RANLIB" && RANLIB=:
183test -z "$STRIP" && STRIP=:
184test -z "$ac_objext" && ac_objext=o
185
186# Determine commands to create old-style static archives.
187old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
188old_postinstall_cmds='chmod 644 $oldlib'
189old_postuninstall_cmds=
190
191if test -n "$RANLIB"; then
192  case $host_os in
193  openbsd*)
194    old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
195    ;;
196  *)
197    old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
198    ;;
199  esac
200  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
201fi
202
203cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
204
205# Only perform the check for file, if the check method requires it
206case $deplibs_check_method in
207file_magic*)
208  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
209    AC_PATH_MAGIC
210  fi
211  ;;
212esac
213
214AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
215AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
216enable_win32_dll=yes, enable_win32_dll=no)
217
218AC_ARG_ENABLE([libtool-lock],
219    [AC_HELP_STRING([--disable-libtool-lock],
220	[avoid locking (might break parallel builds)])])
221test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
222
223AC_ARG_WITH([pic],
224    [AC_HELP_STRING([--with-pic],
225	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
226    [pic_mode="$withval"],
227    [pic_mode=default])
228test -z "$pic_mode" && pic_mode=default
229
230# Use C for the default configuration in the libtool script
231tagname=
232AC_LIBTOOL_LANG_C_CONFIG
233_LT_AC_TAGCONFIG
234])# AC_LIBTOOL_SETUP
235
236
237# _LT_AC_SYS_COMPILER
238# -------------------
239AC_DEFUN([_LT_AC_SYS_COMPILER],
240[AC_REQUIRE([AC_PROG_CC])dnl
241
242# If no C compiler was specified, use CC.
243LTCC=${LTCC-"$CC"}
244
245# Allow CC to be a program name with arguments.
246compiler=$CC
247])# _LT_AC_SYS_COMPILER
248
249
250# _LT_AC_SYS_LIBPATH_AIX
251# ----------------------
252# Links a minimal program and checks the executable
253# for the system default hardcoded library path. In most cases,
254# this is /usr/lib:/lib, but when the MPI compilers are used
255# the location of the communication and MPI libs are included too.
256# If we don't find anything, use the default library path according
257# to the aix ld manual.
258AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX],
259[AC_LINK_IFELSE(AC_LANG_PROGRAM,[
260aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
261}'`
262# Check for a 64-bit object if we didn't find anything.
263if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
264}'`; fi],[])
265if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
266])# _LT_AC_SYS_LIBPATH_AIX
267
268
269# _LT_AC_SHELL_INIT(ARG)
270# ----------------------
271AC_DEFUN([_LT_AC_SHELL_INIT],
272[ifdef([AC_DIVERSION_NOTICE],
273	     [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
274	 [AC_DIVERT_PUSH(NOTICE)])
275$1
276AC_DIVERT_POP
277])# _LT_AC_SHELL_INIT
278
279
280# _LT_AC_PROG_ECHO_BACKSLASH
281# --------------------------
282# Add some code to the start of the generated configure script which
283# will find an echo command which doesn't interpret backslashes.
284AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
285[_LT_AC_SHELL_INIT([
286# Check that we are running under the correct shell.
287SHELL=${CONFIG_SHELL-/bin/sh}
288
289case X$ECHO in
290X*--fallback-echo)
291  # Remove one level of quotation (which was required for Make).
292  ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
293  ;;
294esac
295
296echo=${ECHO-echo}
297if test "X[$]1" = X--no-reexec; then
298  # Discard the --no-reexec flag, and continue.
299  shift
300elif test "X[$]1" = X--fallback-echo; then
301  # Avoid inline document here, it may be left over
302  :
303elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then
304  # Yippee, $echo works!
305  :
306else
307  # Restart under the correct shell.
308  exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
309fi
310
311if test "X[$]1" = X--fallback-echo; then
312  # used as fallback echo
313  shift
314  cat <<EOF
315[$]*
316EOF
317  exit 0
318fi
319
320# The HP-UX ksh and POSIX shell print the target directory to stdout
321# if CDPATH is set.
322(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
323
324if test -z "$ECHO"; then
325if test "X${echo_test_string+set}" != Xset; then
326# find a string as large as possible, as long as the shell can cope with it
327  for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
328    # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
329    if (echo_test_string="`eval $cmd`") 2>/dev/null &&
330       echo_test_string="`eval $cmd`" &&
331       (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
332    then
333      break
334    fi
335  done
336fi
337
338if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
339   echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
340   test "X$echo_testing_string" = "X$echo_test_string"; then
341  :
342else
343  # The Solaris, AIX, and Digital Unix default echo programs unquote
344  # backslashes.  This makes it impossible to quote backslashes using
345  #   echo "$something" | sed 's/\\/\\\\/g'
346  #
347  # So, first we look for a working echo in the user's PATH.
348
349  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
350  for dir in $PATH /usr/ucb; do
351    IFS="$lt_save_ifs"
352    if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
353       test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
354       echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
355       test "X$echo_testing_string" = "X$echo_test_string"; then
356      echo="$dir/echo"
357      break
358    fi
359  done
360  IFS="$lt_save_ifs"
361
362  if test "X$echo" = Xecho; then
363    # We didn't find a better echo, so look for alternatives.
364    if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
365       echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
366       test "X$echo_testing_string" = "X$echo_test_string"; then
367      # This shell has a builtin print -r that does the trick.
368      echo='print -r'
369    elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
370	 test "X$CONFIG_SHELL" != X/bin/ksh; then
371      # If we have ksh, try running configure again with it.
372      ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
373      export ORIGINAL_CONFIG_SHELL
374      CONFIG_SHELL=/bin/ksh
375      export CONFIG_SHELL
376      exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
377    else
378      # Try using printf.
379      echo='printf %s\n'
380      if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
381	 echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
382	 test "X$echo_testing_string" = "X$echo_test_string"; then
383	# Cool, printf works
384	:
385      elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
386	   test "X$echo_testing_string" = 'X\t' &&
387	   echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
388	   test "X$echo_testing_string" = "X$echo_test_string"; then
389	CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
390	export CONFIG_SHELL
391	SHELL="$CONFIG_SHELL"
392	export SHELL
393	echo="$CONFIG_SHELL [$]0 --fallback-echo"
394      elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
395	   test "X$echo_testing_string" = 'X\t' &&
396	   echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
397	   test "X$echo_testing_string" = "X$echo_test_string"; then
398	echo="$CONFIG_SHELL [$]0 --fallback-echo"
399      else
400	# maybe with a smaller string...
401	prev=:
402
403	for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
404	  if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
405	  then
406	    break
407	  fi
408	  prev="$cmd"
409	done
410
411	if test "$prev" != 'sed 50q "[$]0"'; then
412	  echo_test_string=`eval $prev`
413	  export echo_test_string
414	  exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
415	else
416	  # Oops.  We lost completely, so just stick with echo.
417	  echo=echo
418	fi
419      fi
420    fi
421  fi
422fi
423fi
424
425# Copy echo and quote the copy suitably for passing to libtool from
426# the Makefile, instead of quoting the original, which is used later.
427ECHO=$echo
428if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
429   ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
430fi
431
432AC_SUBST(ECHO)
433])])# _LT_AC_PROG_ECHO_BACKSLASH
434
435
436# _LT_AC_LOCK
437# -----------
438AC_DEFUN([_LT_AC_LOCK],
439[AC_ARG_ENABLE([libtool-lock],
440    [AC_HELP_STRING([--disable-libtool-lock],
441	[avoid locking (might break parallel builds)])])
442test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
443
444# Some flags need to be propagated to the compiler or linker for good
445# libtool support.
446case $host in
447ia64-*-hpux*)
448  # Find out which ABI we are using.
449  echo 'int i;' > conftest.$ac_ext
450  if AC_TRY_EVAL(ac_compile); then
451    case `/usr/bin/file conftest.$ac_objext` in
452    *ELF-32*)
453      HPUX_IA64_MODE="32"
454      ;;
455    *ELF-64*)
456      HPUX_IA64_MODE="64"
457      ;;
458    esac
459  fi
460  rm -rf conftest*
461  ;;
462*-*-irix6*)
463  # Find out which ABI we are using.
464  echo '[#]line __oline__ "configure"' > conftest.$ac_ext
465  if AC_TRY_EVAL(ac_compile); then
466   if test "$lt_cv_prog_gnu_ld" = yes; then
467    case `/usr/bin/file conftest.$ac_objext` in
468    *32-bit*)
469      LD="${LD-ld} -melf32bsmip"
470      ;;
471    *N32*)
472      LD="${LD-ld} -melf32bmipn32"
473      ;;
474    *64-bit*)
475      LD="${LD-ld} -melf64bmip"
476      ;;
477    esac
478   else
479    case `/usr/bin/file conftest.$ac_objext` in
480    *32-bit*)
481      LD="${LD-ld} -32"
482      ;;
483    *N32*)
484      LD="${LD-ld} -n32"
485      ;;
486    *64-bit*)
487      LD="${LD-ld} -64"
488      ;;
489    esac
490   fi
491  fi
492  rm -rf conftest*
493  ;;
494
495x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
496  # Find out which ABI we are using.
497  echo 'int i;' > conftest.$ac_ext
498  if AC_TRY_EVAL(ac_compile); then
499    case "`/usr/bin/file conftest.o`" in
500    *32-bit*)
501      case $host in
502        x86_64-*linux*)
503          LD="${LD-ld} -m elf_i386"
504          ;;
505        ppc64-*linux*|powerpc64-*linux*)
506          LD="${LD-ld} -m elf32ppclinux"
507          ;;
508        s390x-*linux*)
509          LD="${LD-ld} -m elf_s390"
510          ;;
511        sparc64-*linux*)
512          LD="${LD-ld} -m elf32_sparc"
513          ;;
514      esac
515      ;;
516    *64-bit*)
517      case $host in
518        x86_64-*linux*)
519          LD="${LD-ld} -m elf_x86_64"
520          ;;
521        ppc*-*linux*|powerpc*-*linux*)
522          LD="${LD-ld} -m elf64ppc"
523          ;;
524        s390*-*linux*)
525          LD="${LD-ld} -m elf64_s390"
526          ;;
527        sparc*-*linux*)
528          LD="${LD-ld} -m elf64_sparc"
529          ;;
530      esac
531      ;;
532    esac
533  fi
534  rm -rf conftest*
535  ;;
536
537*-*-sco3.2v5*)
538  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
539  SAVE_CFLAGS="$CFLAGS"
540  CFLAGS="$CFLAGS -belf"
541  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
542    [AC_LANG_PUSH(C)
543     AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
544     AC_LANG_POP])
545  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
546    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
547    CFLAGS="$SAVE_CFLAGS"
548  fi
549  ;;
550AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
551[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
552  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
553  AC_CHECK_TOOL(AS, as, false)
554  AC_CHECK_TOOL(OBJDUMP, objdump, false)
555  ;;
556  ])
557esac
558
559need_locks="$enable_libtool_lock"
560
561])# _LT_AC_LOCK
562
563
564# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
565#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
566# ----------------------------------------------------------------
567# Check whether the given compiler option works
568AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION],
569[AC_REQUIRE([LT_AC_PROG_SED])
570AC_CACHE_CHECK([$1], [$2],
571  [$2=no
572  ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
573   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
574   lt_compiler_flag="$3"
575   # Insert the option either (1) after the last *FLAGS variable, or
576   # (2) before a word containing "conftest.", or (3) at the end.
577   # Note that $ac_compile itself does not contain backslashes and begins
578   # with a dollar sign (not a hyphen), so the echo should work correctly.
579   # The option is referenced via a variable to avoid confusing sed.
580   lt_compile=`echo "$ac_compile" | $SED \
581   -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
582   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
583   -e 's:$: $lt_compiler_flag:'`
584   (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
585   (eval "$lt_compile" 2>conftest.err)
586   ac_status=$?
587   cat conftest.err >&AS_MESSAGE_LOG_FD
588   echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
589   if (exit $ac_status) && test -s "$ac_outfile"; then
590     # The compiler can only warn and ignore the option if not recognized
591     # So say no if there are warnings
592     if test ! -s conftest.err; then
593       $2=yes
594     fi
595   fi
596   $rm conftest*
597])
598
599if test x"[$]$2" = xyes; then
600    ifelse([$5], , :, [$5])
601else
602    ifelse([$6], , :, [$6])
603fi
604])# AC_LIBTOOL_COMPILER_OPTION
605
606
607# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
608#                          [ACTION-SUCCESS], [ACTION-FAILURE])
609# ------------------------------------------------------------
610# Check whether the given compiler option works
611AC_DEFUN([AC_LIBTOOL_LINKER_OPTION],
612[AC_CACHE_CHECK([$1], [$2],
613  [$2=no
614   save_LDFLAGS="$LDFLAGS"
615   LDFLAGS="$LDFLAGS $3"
616   printf "$lt_simple_link_test_code" > conftest.$ac_ext
617   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
618     # The compiler can only warn and ignore the option if not recognized
619     # So say no if there are warnings
620     if test -s conftest.err; then
621       # Append any errors to the config.log.
622       cat conftest.err 1>&AS_MESSAGE_LOG_FD
623     else
624       $2=yes
625     fi
626   fi
627   $rm conftest*
628   LDFLAGS="$save_LDFLAGS"
629])
630
631if test x"[$]$2" = xyes; then
632    ifelse([$4], , :, [$4])
633else
634    ifelse([$5], , :, [$5])
635fi
636])# AC_LIBTOOL_LINKER_OPTION
637
638
639# AC_LIBTOOL_SYS_MAX_CMD_LEN
640# --------------------------
641AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN],
642[# find the maximum length of command line arguments
643AC_MSG_CHECKING([the maximum length of command line arguments])
644AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
645  i=0
646  teststring="ABCD"
647
648  case $build_os in
649  msdosdjgpp*)
650    # On DJGPP, this test can blow up pretty badly due to problems in libc
651    # (any single argument exceeding 2000 bytes causes a buffer overrun
652    # during glob expansion).  Even if it were fixed, the result of this
653    # check would be larger than it should be.
654    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
655    ;;
656
657  gnu*)
658    # Under GNU Hurd, this test is not required because there is
659    # no limit to the length of command line arguments.
660    # Libtool will interpret -1 as no limit whatsoever
661    lt_cv_sys_max_cmd_len=-1;
662    ;;
663
664  cygwin* | mingw*)
665    # On Win9x/ME, this test blows up -- it succeeds, but takes
666    # about 5 minutes as the teststring grows exponentially.
667    # Worse, since 9x/ME are not pre-emptively multitasking,
668    # you end up with a "frozen" computer, even though with patience
669    # the test eventually succeeds (with a max line length of 256k).
670    # Instead, let's just punt: use the minimum linelength reported by
671    # all of the supported platforms: 8192 (on NT/2K/XP).
672    lt_cv_sys_max_cmd_len=8192;
673    ;;
674
675  amigaos*)
676    # On AmigaOS with pdksh, this test takes hours, literally.
677    # So we just punt and use a minimum line length of 8192.
678    lt_cv_sys_max_cmd_len=8192;
679    ;;
680
681  netbsd* | freebsd* | openbsd* | darwin* )
682    # This has been around since 386BSD, at least.  Likely further.
683    if test -x /sbin/sysctl; then
684      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
685    elif test -x /usr/sbin/sysctl; then
686      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
687    else
688      lt_cv_sys_max_cmd_len=65536 # usable default for *BSD
689    fi
690    # And add a safety zone
691    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
692    ;;
693
694 *)
695    # If test is not a shell built-in, we'll probably end up computing a
696    # maximum length that is only half of the actual maximum length, but
697    # we can't tell.
698    SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
699    while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \
700	       = "XX$teststring") >/dev/null 2>&1 &&
701	    new_result=`expr "X$teststring" : ".*" 2>&1` &&
702	    lt_cv_sys_max_cmd_len=$new_result &&
703	    test $i != 17 # 1/2 MB should be enough
704    do
705      i=`expr $i + 1`
706      teststring=$teststring$teststring
707    done
708    teststring=
709    # Add a significant safety factor because C++ compilers can tack on massive
710    # amounts of additional arguments before passing them to the linker.
711    # It appears as though 1/2 is a usable value.
712    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
713    ;;
714  esac
715])
716if test -n $lt_cv_sys_max_cmd_len ; then
717  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
718else
719  AC_MSG_RESULT(none)
720fi
721])# AC_LIBTOOL_SYS_MAX_CMD_LEN
722
723
724# _LT_AC_CHECK_DLFCN
725# --------------------
726AC_DEFUN([_LT_AC_CHECK_DLFCN],
727[AC_CHECK_HEADERS(dlfcn.h)dnl
728])# _LT_AC_CHECK_DLFCN
729
730
731# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
732#                           ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
733# ------------------------------------------------------------------
734AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
735[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
736if test "$cross_compiling" = yes; then :
737  [$4]
738else
739  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
740  lt_status=$lt_dlunknown
741  cat > conftest.$ac_ext <<EOF
742[#line __oline__ "configure"
743#include "confdefs.h"
744
745#if HAVE_DLFCN_H
746#include <dlfcn.h>
747#endif
748
749#include <stdio.h>
750
751#ifdef RTLD_GLOBAL
752#  define LT_DLGLOBAL		RTLD_GLOBAL
753#else
754#  ifdef DL_GLOBAL
755#    define LT_DLGLOBAL		DL_GLOBAL
756#  else
757#    define LT_DLGLOBAL		0
758#  endif
759#endif
760
761/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
762   find out it does not work in some platform. */
763#ifndef LT_DLLAZY_OR_NOW
764#  ifdef RTLD_LAZY
765#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
766#  else
767#    ifdef DL_LAZY
768#      define LT_DLLAZY_OR_NOW		DL_LAZY
769#    else
770#      ifdef RTLD_NOW
771#        define LT_DLLAZY_OR_NOW	RTLD_NOW
772#      else
773#        ifdef DL_NOW
774#          define LT_DLLAZY_OR_NOW	DL_NOW
775#        else
776#          define LT_DLLAZY_OR_NOW	0
777#        endif
778#      endif
779#    endif
780#  endif
781#endif
782
783#ifdef __cplusplus
784extern "C" void exit (int);
785#endif
786
787void fnord() { int i=42;}
788int main ()
789{
790  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
791  int status = $lt_dlunknown;
792
793  if (self)
794    {
795      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
796      else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
797      /* dlclose (self); */
798    }
799
800    exit (status);
801}]
802EOF
803  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
804    (./conftest; exit; ) 2>/dev/null
805    lt_status=$?
806    case x$lt_status in
807      x$lt_dlno_uscore) $1 ;;
808      x$lt_dlneed_uscore) $2 ;;
809      x$lt_unknown|x*) $3 ;;
810    esac
811  else :
812    # compilation failed
813    $3
814  fi
815fi
816rm -fr conftest*
817])# _LT_AC_TRY_DLOPEN_SELF
818
819
820# AC_LIBTOOL_DLOPEN_SELF
821# -------------------
822AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
823[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
824if test "x$enable_dlopen" != xyes; then
825  enable_dlopen=unknown
826  enable_dlopen_self=unknown
827  enable_dlopen_self_static=unknown
828else
829  lt_cv_dlopen=no
830  lt_cv_dlopen_libs=
831
832  case $host_os in
833  beos*)
834    lt_cv_dlopen="load_add_on"
835    lt_cv_dlopen_libs=
836    lt_cv_dlopen_self=yes
837    ;;
838
839  mingw* | pw32*)
840    lt_cv_dlopen="LoadLibrary"
841    lt_cv_dlopen_libs=
842   ;;
843
844  cygwin*)
845    lt_cv_dlopen="dlopen"
846    lt_cv_dlopen_libs=
847   ;;
848
849  darwin*)
850  # if libdl is installed we need to link against it
851    AC_CHECK_LIB([dl], [dlopen],
852		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
853    lt_cv_dlopen="dyld"
854    lt_cv_dlopen_libs=
855    lt_cv_dlopen_self=yes
856    ])
857   ;;
858
859  *)
860    AC_CHECK_FUNC([shl_load],
861	  [lt_cv_dlopen="shl_load"],
862      [AC_CHECK_LIB([dld], [shl_load],
863	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
864	[AC_CHECK_FUNC([dlopen],
865	      [lt_cv_dlopen="dlopen"],
866	  [AC_CHECK_LIB([dl], [dlopen],
867		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
868	    [AC_CHECK_LIB([svld], [dlopen],
869		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
870	      [AC_CHECK_LIB([dld], [dld_link],
871		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
872	      ])
873	    ])
874	  ])
875	])
876      ])
877    ;;
878  esac
879
880  if test "x$lt_cv_dlopen" != xno; then
881    enable_dlopen=yes
882  else
883    enable_dlopen=no
884  fi
885
886  case $lt_cv_dlopen in
887  dlopen)
888    save_CPPFLAGS="$CPPFLAGS"
889    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
890
891    save_LDFLAGS="$LDFLAGS"
892    eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
893
894    save_LIBS="$LIBS"
895    LIBS="$lt_cv_dlopen_libs $LIBS"
896
897    AC_CACHE_CHECK([whether a program can dlopen itself],
898	  lt_cv_dlopen_self, [dnl
899	  _LT_AC_TRY_DLOPEN_SELF(
900	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
901	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
902    ])
903
904    if test "x$lt_cv_dlopen_self" = xyes; then
905      LDFLAGS="$LDFLAGS $link_static_flag"
906      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
907    	  lt_cv_dlopen_self_static, [dnl
908	  _LT_AC_TRY_DLOPEN_SELF(
909	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
910	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
911      ])
912    fi
913
914    CPPFLAGS="$save_CPPFLAGS"
915    LDFLAGS="$save_LDFLAGS"
916    LIBS="$save_LIBS"
917    ;;
918  esac
919
920  case $lt_cv_dlopen_self in
921  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
922  *) enable_dlopen_self=unknown ;;
923  esac
924
925  case $lt_cv_dlopen_self_static in
926  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
927  *) enable_dlopen_self_static=unknown ;;
928  esac
929fi
930])# AC_LIBTOOL_DLOPEN_SELF
931
932
933# AC_LIBTOOL_PROG_CC_C_O([TAGNAME])
934# ---------------------------------
935# Check to see if options -c and -o are simultaneously supported by compiler
936AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O],
937[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
938AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
939  [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
940  [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
941   $rm -r conftest 2>/dev/null
942   mkdir conftest
943   cd conftest
944   mkdir out
945   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
946
947   lt_compiler_flag="-o out/conftest2.$ac_objext"
948   # Insert the option either (1) after the last *FLAGS variable, or
949   # (2) before a word containing "conftest.", or (3) at the end.
950   # Note that $ac_compile itself does not contain backslashes and begins
951   # with a dollar sign (not a hyphen), so the echo should work correctly.
952   lt_compile=`echo "$ac_compile" | $SED \
953   -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
954   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
955   -e 's:$: $lt_compiler_flag:'`
956   (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
957   (eval "$lt_compile" 2>out/conftest.err)
958   ac_status=$?
959   cat out/conftest.err >&AS_MESSAGE_LOG_FD
960   echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
961   if (exit $ac_status) && test -s out/conftest2.$ac_objext
962   then
963     # The compiler can only warn and ignore the option if not recognized
964     # So say no if there are warnings
965     if test ! -s out/conftest.err; then
966       _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
967     fi
968   fi
969   chmod u+w .
970   $rm conftest*
971   # SGI C++ compiler will create directory out/ii_files/ for
972   # template instantiation
973   test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files
974   $rm out/* && rmdir out
975   cd ..
976   rmdir conftest
977   $rm conftest*
978])
979])# AC_LIBTOOL_PROG_CC_C_O
980
981
982# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME])
983# -----------------------------------------
984# Check to see if we can do hard links to lock some files if needed
985AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS],
986[AC_REQUIRE([_LT_AC_LOCK])dnl
987
988hard_links="nottested"
989if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
990  # do not overwrite the value of need_locks provided by the user
991  AC_MSG_CHECKING([if we can lock with hard links])
992  hard_links=yes
993  $rm conftest*
994  ln conftest.a conftest.b 2>/dev/null && hard_links=no
995  touch conftest.a
996  ln conftest.a conftest.b 2>&5 || hard_links=no
997  ln conftest.a conftest.b 2>/dev/null && hard_links=no
998  AC_MSG_RESULT([$hard_links])
999  if test "$hard_links" = no; then
1000    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
1001    need_locks=warn
1002  fi
1003else
1004  need_locks=no
1005fi
1006])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS
1007
1008
1009# AC_LIBTOOL_OBJDIR
1010# -----------------
1011AC_DEFUN([AC_LIBTOOL_OBJDIR],
1012[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
1013[rm -f .libs 2>/dev/null
1014mkdir .libs 2>/dev/null
1015if test -d .libs; then
1016  lt_cv_objdir=.libs
1017else
1018  # MS-DOS does not allow filenames that begin with a dot.
1019  lt_cv_objdir=_libs
1020fi
1021rmdir .libs 2>/dev/null])
1022objdir=$lt_cv_objdir
1023])# AC_LIBTOOL_OBJDIR
1024
1025
1026# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME])
1027# ----------------------------------------------
1028# Check hardcoding attributes.
1029AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH],
1030[AC_MSG_CHECKING([how to hardcode library paths into programs])
1031_LT_AC_TAGVAR(hardcode_action, $1)=
1032if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \
1033   test -n "$_LT_AC_TAGVAR(runpath_var, $1)" || \
1034   test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
1035
1036  # We can hardcode non-existant directories.
1037  if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no &&
1038     # If the only mechanism to avoid hardcoding is shlibpath_var, we
1039     # have to relink, otherwise we might link with an installed library
1040     # when we should be linking with a yet-to-be-installed one
1041     ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
1042     test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then
1043    # Linking always hardcodes the temporary library directory.
1044    _LT_AC_TAGVAR(hardcode_action, $1)=relink
1045  else
1046    # We can link without hardcoding, and we can hardcode nonexisting dirs.
1047    _LT_AC_TAGVAR(hardcode_action, $1)=immediate
1048  fi
1049else
1050  # We cannot hardcode anything, or else we can only hardcode existing
1051  # directories.
1052  _LT_AC_TAGVAR(hardcode_action, $1)=unsupported
1053fi
1054AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)])
1055
1056if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then
1057  # Fast installation is not supported
1058  enable_fast_install=no
1059elif test "$shlibpath_overrides_runpath" = yes ||
1060     test "$enable_shared" = no; then
1061  # Fast installation is not necessary
1062  enable_fast_install=needless
1063fi
1064])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH
1065
1066
1067# AC_LIBTOOL_SYS_LIB_STRIP
1068# ------------------------
1069AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP],
1070[striplib=
1071old_striplib=
1072AC_MSG_CHECKING([whether stripping libraries is possible])
1073if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
1074  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
1075  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
1076  AC_MSG_RESULT([yes])
1077else
1078# FIXME - insert some real tests, host_os isn't really good enough
1079  case $host_os in
1080   darwin*)
1081       if test -n "$STRIP" ; then
1082         striplib="$STRIP -x"
1083         AC_MSG_RESULT([yes])
1084       else
1085  AC_MSG_RESULT([no])
1086fi
1087       ;;
1088   *)
1089  AC_MSG_RESULT([no])
1090    ;;
1091  esac
1092fi
1093])# AC_LIBTOOL_SYS_LIB_STRIP
1094
1095
1096# AC_LIBTOOL_SYS_DYNAMIC_LINKER
1097# -----------------------------
1098# PORTME Fill in your ld.so characteristics
1099AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER],
1100[AC_MSG_CHECKING([dynamic linker characteristics])
1101library_names_spec=
1102libname_spec='lib$name'
1103soname_spec=
1104shrext_cmds=".so"
1105postinstall_cmds=
1106postuninstall_cmds=
1107finish_cmds=
1108finish_eval=
1109shlibpath_var=
1110shlibpath_overrides_runpath=unknown
1111version_type=none
1112dynamic_linker="$host_os ld.so"
1113sys_lib_dlsearch_path_spec="/lib /usr/lib"
1114if test "$GCC" = yes; then
1115  sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
1116  if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then
1117    # if the path contains ";" then we assume it to be the separator
1118    # otherwise default to the standard path separator (i.e. ":") - it is
1119    # assumed that no part of a normal pathname contains ";" but that should
1120    # okay in the real world where ";" in dirpaths is itself problematic.
1121    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
1122  else
1123    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
1124  fi
1125else
1126  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
1127fi
1128need_lib_prefix=unknown
1129hardcode_into_libs=no
1130
1131# when you set need_version to no, make sure it does not cause -set_version
1132# flags to be left without arguments
1133need_version=unknown
1134
1135case $host_os in
1136aix3*)
1137  version_type=linux
1138  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
1139  shlibpath_var=LIBPATH
1140
1141  # AIX 3 has no versioning support, so we append a major version to the name.
1142  soname_spec='${libname}${release}${shared_ext}$major'
1143  ;;
1144
1145aix4* | aix5*)
1146  version_type=linux
1147  need_lib_prefix=no
1148  need_version=no
1149  hardcode_into_libs=yes
1150  if test "$host_cpu" = ia64; then
1151    # AIX 5 supports IA64
1152    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
1153    shlibpath_var=LD_LIBRARY_PATH
1154  else
1155    # With GCC up to 2.95.x, collect2 would create an import file
1156    # for dependence libraries.  The import file would start with
1157    # the line `#! .'.  This would cause the generated library to
1158    # depend on `.', always an invalid library.  This was fixed in
1159    # development snapshots of GCC prior to 3.0.
1160    case $host_os in
1161      aix4 | aix4.[[01]] | aix4.[[01]].*)
1162      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
1163	   echo ' yes '
1164	   echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
1165	:
1166      else
1167	can_build_shared=no
1168      fi
1169      ;;
1170    esac
1171    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
1172    # soname into executable. Probably we can add versioning support to
1173    # collect2, so additional links can be useful in future.
1174    if test "$aix_use_runtimelinking" = yes; then
1175      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
1176      # instead of lib<name>.a to let people know that these are not
1177      # typical AIX shared libraries.
1178      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1179    else
1180      # We preserve .a as extension for shared libraries through AIX4.2
1181      # and later when we are not doing run time linking.
1182      library_names_spec='${libname}${release}.a $libname.a'
1183      soname_spec='${libname}${release}${shared_ext}$major'
1184    fi
1185    shlibpath_var=LIBPATH
1186  fi
1187  ;;
1188
1189amigaos*)
1190  library_names_spec='$libname.ixlibrary $libname.a'
1191  # Create ${libname}_ixlibrary.a entries in /sys/libs.
1192  finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
1193  ;;
1194
1195beos*)
1196  library_names_spec='${libname}${shared_ext}'
1197  dynamic_linker="$host_os ld.so"
1198  shlibpath_var=LIBRARY_PATH
1199  ;;
1200
1201bsdi[[45]]*)
1202  version_type=linux
1203  need_version=no
1204  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1205  soname_spec='${libname}${release}${shared_ext}$major'
1206  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
1207  shlibpath_var=LD_LIBRARY_PATH
1208  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
1209  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
1210  # the default ld.so.conf also contains /usr/contrib/lib and
1211  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
1212  # libtool to hard-code these into programs
1213  ;;
1214
1215cygwin* | mingw* | pw32*)
1216  version_type=windows
1217  shrext_cmds=".dll"
1218  need_version=no
1219  need_lib_prefix=no
1220
1221  case $GCC,$host_os in
1222  yes,cygwin* | yes,mingw* | yes,pw32*)
1223    library_names_spec='$libname.dll.a'
1224    # DLL is installed to $(libdir)/../bin by postinstall_cmds
1225    postinstall_cmds='base_file=`basename \${file}`~
1226      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
1227      dldir=$destdir/`dirname \$dlpath`~
1228      test -d \$dldir || mkdir -p \$dldir~
1229      $install_prog $dir/$dlname \$dldir/$dlname'
1230    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
1231      dlpath=$dir/\$dldll~
1232       $rm \$dlpath'
1233    shlibpath_overrides_runpath=yes
1234
1235    case $host_os in
1236    cygwin*)
1237      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
1238      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
1239      sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
1240      ;;
1241    mingw*)
1242      # MinGW DLLs use traditional 'lib' prefix
1243      soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
1244      sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
1245      if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then
1246        # It is most probably a Windows format PATH printed by
1247        # mingw gcc, but we are running on Cygwin. Gcc prints its search
1248        # path with ; separators, and with drive letters. We can handle the
1249        # drive letters (cygwin fileutils understands them), so leave them,
1250        # especially as we might pass files found there to a mingw objdump,
1251        # which wouldn't understand a cygwinified path. Ahh.
1252        sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
1253      else
1254        sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
1255      fi
1256      ;;
1257    pw32*)
1258      # pw32 DLLs use 'pw' prefix rather than 'lib'
1259      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
1260      ;;
1261    esac
1262    ;;
1263
1264  *)
1265    library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
1266    ;;
1267  esac
1268  dynamic_linker='Win32 ld.exe'
1269  # FIXME: first we should search . and the directory the executable is in
1270  shlibpath_var=PATH
1271  ;;
1272
1273darwin* | rhapsody*)
1274  dynamic_linker="$host_os dyld"
1275  version_type=darwin
1276  need_lib_prefix=no
1277  need_version=no
1278  library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
1279  soname_spec='${libname}${release}${major}$shared_ext'
1280  shlibpath_overrides_runpath=yes
1281  shlibpath_var=DYLD_LIBRARY_PATH
1282  shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)'
1283  # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
1284  if test "$GCC" = yes; then
1285    sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
1286  else
1287    sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
1288  fi
1289  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
1290  ;;
1291
1292dgux*)
1293  version_type=linux
1294  need_lib_prefix=no
1295  need_version=no
1296  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
1297  soname_spec='${libname}${release}${shared_ext}$major'
1298  shlibpath_var=LD_LIBRARY_PATH
1299  ;;
1300
1301freebsd1*)
1302  dynamic_linker=no
1303  ;;
1304
1305kfreebsd*-gnu)
1306  version_type=linux
1307  need_lib_prefix=no
1308  need_version=no
1309  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
1310  soname_spec='${libname}${release}${shared_ext}$major'
1311  shlibpath_var=LD_LIBRARY_PATH
1312  shlibpath_overrides_runpath=no
1313  hardcode_into_libs=yes
1314  dynamic_linker='GNU ld.so'
1315  ;;
1316
1317freebsd*)
1318  objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
1319  version_type=freebsd-$objformat
1320  case $version_type in
1321    freebsd-elf*)
1322      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
1323      need_version=no
1324      need_lib_prefix=no
1325      ;;
1326    freebsd-*)
1327      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
1328      need_version=yes
1329      ;;
1330  esac
1331  shlibpath_var=LD_LIBRARY_PATH
1332  case $host_os in
1333  freebsd2*)
1334    shlibpath_overrides_runpath=yes
1335    ;;
1336  freebsd3.[01]* | freebsdelf3.[01]*)
1337    shlibpath_overrides_runpath=yes
1338    hardcode_into_libs=yes
1339    ;;
1340  *) # from 3.2 on
1341    shlibpath_overrides_runpath=no
1342    hardcode_into_libs=yes
1343    ;;
1344  esac
1345  ;;
1346
1347gnu*)
1348  version_type=linux
1349  need_lib_prefix=no
1350  need_version=no
1351  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
1352  soname_spec='${libname}${release}${shared_ext}$major'
1353  shlibpath_var=LD_LIBRARY_PATH
1354  hardcode_into_libs=yes
1355  ;;
1356
1357hpux9* | hpux10* | hpux11*)
1358  # Give a soname corresponding to the major version so that dld.sl refuses to
1359  # link against other versions.
1360  version_type=sunos
1361  need_lib_prefix=no
1362  need_version=no
1363  case "$host_cpu" in
1364  ia64*)
1365    shrext_cmds='.so'
1366    hardcode_into_libs=yes
1367    dynamic_linker="$host_os dld.so"
1368    shlibpath_var=LD_LIBRARY_PATH
1369    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
1370    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1371    soname_spec='${libname}${release}${shared_ext}$major'
1372    if test "X$HPUX_IA64_MODE" = X32; then
1373      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
1374    else
1375      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
1376    fi
1377    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
1378    ;;
1379   hppa*64*)
1380     shrext_cmds='.sl'
1381     hardcode_into_libs=yes
1382     dynamic_linker="$host_os dld.sl"
1383     shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
1384     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
1385     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1386     soname_spec='${libname}${release}${shared_ext}$major'
1387     sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
1388     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
1389     ;;
1390   *)
1391    shrext_cmds='.sl'
1392    dynamic_linker="$host_os dld.sl"
1393    shlibpath_var=SHLIB_PATH
1394    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
1395    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1396    soname_spec='${libname}${release}${shared_ext}$major'
1397    ;;
1398  esac
1399  # HP-UX runs *really* slowly unless shared libraries are mode 555.
1400  postinstall_cmds='chmod 555 $lib'
1401  ;;
1402
1403irix5* | irix6* | nonstopux*)
1404  case $host_os in
1405    nonstopux*) version_type=nonstopux ;;
1406    *)
1407	if test "$lt_cv_prog_gnu_ld" = yes; then
1408		version_type=linux
1409	else
1410		version_type=irix
1411	fi ;;
1412  esac
1413  need_lib_prefix=no
1414  need_version=no
1415  soname_spec='${libname}${release}${shared_ext}$major'
1416  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
1417  case $host_os in
1418  irix5* | nonstopux*)
1419    libsuff= shlibsuff=
1420    ;;
1421  *)
1422    case $LD in # libtool.m4 will add one of these switches to LD
1423    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
1424      libsuff= shlibsuff= libmagic=32-bit;;
1425    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
1426      libsuff=32 shlibsuff=N32 libmagic=N32;;
1427    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
1428      libsuff=64 shlibsuff=64 libmagic=64-bit;;
1429    *) libsuff= shlibsuff= libmagic=never-match;;
1430    esac
1431    ;;
1432  esac
1433  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
1434  shlibpath_overrides_runpath=no
1435  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
1436  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
1437  hardcode_into_libs=yes
1438  ;;
1439
1440# No shared lib support for Linux oldld, aout, or coff.
1441linux*oldld* | linux*aout* | linux*coff*)
1442  dynamic_linker=no
1443  ;;
1444
1445# This must be Linux ELF.
1446linux*)
1447  version_type=linux
1448  need_lib_prefix=no
1449  need_version=no
1450  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1451  soname_spec='${libname}${release}${shared_ext}$major'
1452  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
1453  shlibpath_var=LD_LIBRARY_PATH
1454  shlibpath_overrides_runpath=no
1455  # This implies no fast_install, which is unacceptable.
1456  # Some rework will be needed to allow for fast_install
1457  # before this can be enabled.
1458  hardcode_into_libs=yes
1459
1460  # Append ld.so.conf contents to the search path
1461  if test -f /etc/ld.so.conf; then
1462    lt_ld_extra=`$SED -e 's/[:,\t]/ /g;s/=[^=]*$//;s/=[^= ]* / /g' /etc/ld.so.conf | tr '\n' ' '`
1463    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
1464  fi
1465
1466  # We used to test for /lib/ld.so.1 and disable shared libraries on
1467  # powerpc, because MkLinux only supported shared libraries with the
1468  # GNU dynamic linker.  Since this was broken with cross compilers,
1469  # most powerpc-linux boxes support dynamic linking these days and
1470  # people can always --disable-shared, the test was removed, and we
1471  # assume the GNU/Linux dynamic linker is in use.
1472  dynamic_linker='GNU/Linux ld.so'
1473  ;;
1474
1475knetbsd*-gnu)
1476  version_type=linux
1477  need_lib_prefix=no
1478  need_version=no
1479  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
1480  soname_spec='${libname}${release}${shared_ext}$major'
1481  shlibpath_var=LD_LIBRARY_PATH
1482  shlibpath_overrides_runpath=no
1483  hardcode_into_libs=yes
1484  dynamic_linker='GNU ld.so'
1485  ;;
1486
1487netbsd*)
1488  version_type=sunos
1489  need_lib_prefix=no
1490  need_version=no
1491  if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
1492    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
1493    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
1494    dynamic_linker='NetBSD (a.out) ld.so'
1495  else
1496    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
1497    soname_spec='${libname}${release}${shared_ext}$major'
1498    dynamic_linker='NetBSD ld.elf_so'
1499  fi
1500  shlibpath_var=LD_LIBRARY_PATH
1501  shlibpath_overrides_runpath=yes
1502  hardcode_into_libs=yes
1503  ;;
1504
1505newsos6)
1506  version_type=linux
1507  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1508  shlibpath_var=LD_LIBRARY_PATH
1509  shlibpath_overrides_runpath=yes
1510  ;;
1511
1512nto-qnx*)
1513  version_type=linux
1514  need_lib_prefix=no
1515  need_version=no
1516  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1517  soname_spec='${libname}${release}${shared_ext}$major'
1518  shlibpath_var=LD_LIBRARY_PATH
1519  shlibpath_overrides_runpath=yes
1520  ;;
1521
1522openbsd*)
1523  version_type=sunos
1524  need_lib_prefix=no
1525  need_version=no
1526  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
1527  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
1528  shlibpath_var=LD_LIBRARY_PATH
1529  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
1530    case $host_os in
1531      openbsd2.[[89]] | openbsd2.[[89]].*)
1532	shlibpath_overrides_runpath=no
1533	;;
1534      *)
1535	shlibpath_overrides_runpath=yes
1536	;;
1537      esac
1538  else
1539    shlibpath_overrides_runpath=yes
1540  fi
1541  ;;
1542
1543os2*)
1544  libname_spec='$name'
1545  shrext_cmds=".dll"
1546  need_lib_prefix=no
1547  library_names_spec='$libname${shared_ext} $libname.a'
1548  dynamic_linker='OS/2 ld.exe'
1549  shlibpath_var=LIBPATH
1550  ;;
1551
1552osf3* | osf4* | osf5*)
1553  version_type=osf
1554  need_lib_prefix=no
1555  need_version=no
1556  soname_spec='${libname}${release}${shared_ext}$major'
1557  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1558  shlibpath_var=LD_LIBRARY_PATH
1559  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
1560  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
1561  ;;
1562
1563sco3.2v5*)
1564  version_type=osf
1565  soname_spec='${libname}${release}${shared_ext}$major'
1566  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1567  shlibpath_var=LD_LIBRARY_PATH
1568  ;;
1569
1570solaris*)
1571  version_type=linux
1572  need_lib_prefix=no
1573  need_version=no
1574  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1575  soname_spec='${libname}${release}${shared_ext}$major'
1576  shlibpath_var=LD_LIBRARY_PATH
1577  shlibpath_overrides_runpath=yes
1578  hardcode_into_libs=yes
1579  # ldd complains unless libraries are executable
1580  postinstall_cmds='chmod +x $lib'
1581  ;;
1582
1583sunos4*)
1584  version_type=sunos
1585  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
1586  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
1587  shlibpath_var=LD_LIBRARY_PATH
1588  shlibpath_overrides_runpath=yes
1589  if test "$with_gnu_ld" = yes; then
1590    need_lib_prefix=no
1591  fi
1592  need_version=yes
1593  ;;
1594
1595sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
1596  version_type=linux
1597  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1598  soname_spec='${libname}${release}${shared_ext}$major'
1599  shlibpath_var=LD_LIBRARY_PATH
1600  case $host_vendor in
1601    sni)
1602      shlibpath_overrides_runpath=no
1603      need_lib_prefix=no
1604      export_dynamic_flag_spec='${wl}-Blargedynsym'
1605      runpath_var=LD_RUN_PATH
1606      ;;
1607    siemens)
1608      need_lib_prefix=no
1609      ;;
1610    motorola)
1611      need_lib_prefix=no
1612      need_version=no
1613      shlibpath_overrides_runpath=no
1614      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
1615      ;;
1616  esac
1617  ;;
1618
1619sysv4*MP*)
1620  if test -d /usr/nec ;then
1621    version_type=linux
1622    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
1623    soname_spec='$libname${shared_ext}.$major'
1624    shlibpath_var=LD_LIBRARY_PATH
1625  fi
1626  ;;
1627
1628uts4*)
1629  version_type=linux
1630  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1631  soname_spec='${libname}${release}${shared_ext}$major'
1632  shlibpath_var=LD_LIBRARY_PATH
1633  ;;
1634
1635*)
1636  dynamic_linker=no
1637  ;;
1638esac
1639AC_MSG_RESULT([$dynamic_linker])
1640test "$dynamic_linker" = no && can_build_shared=no
1641])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
1642
1643
1644# _LT_AC_TAGCONFIG
1645# ----------------
1646AC_DEFUN([_LT_AC_TAGCONFIG],
1647[AC_ARG_WITH([tags],
1648    [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@],
1649        [include additional configurations @<:@automatic@:>@])],
1650    [tagnames="$withval"])
1651
1652if test -f "$ltmain" && test -n "$tagnames"; then
1653  if test ! -f "${ofile}"; then
1654    AC_MSG_WARN([output file `$ofile' does not exist])
1655  fi
1656
1657  if test -z "$LTCC"; then
1658    eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
1659    if test -z "$LTCC"; then
1660      AC_MSG_WARN([output file `$ofile' does not look like a libtool script])
1661    else
1662      AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
1663    fi
1664  fi
1665
1666  # Extract list of available tagged configurations in $ofile.
1667  # Note that this assumes the entire list is on one line.
1668  available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
1669
1670  lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1671  for tagname in $tagnames; do
1672    IFS="$lt_save_ifs"
1673    # Check whether tagname contains only valid characters
1674    case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in
1675    "") ;;
1676    *)  AC_MSG_ERROR([invalid tag name: $tagname])
1677	;;
1678    esac
1679
1680    if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null
1681    then
1682      AC_MSG_ERROR([tag name \"$tagname\" already exists])
1683    fi
1684
1685    # Update the list of available tags.
1686    if test -n "$tagname"; then
1687      echo appending configuration tag \"$tagname\" to $ofile
1688
1689      case $tagname in
1690      CXX)
1691	if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
1692	    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
1693	    (test "X$CXX" != "Xg++"))) ; then
1694	  AC_LIBTOOL_LANG_CXX_CONFIG
1695	else
1696	  tagname=""
1697	fi
1698	;;
1699
1700      F77)
1701	if test -n "$F77" && test "X$F77" != "Xno"; then
1702	  AC_LIBTOOL_LANG_F77_CONFIG
1703	else
1704	  tagname=""
1705	fi
1706	;;
1707
1708      GCJ)
1709	if test -n "$GCJ" && test "X$GCJ" != "Xno"; then
1710	  AC_LIBTOOL_LANG_GCJ_CONFIG
1711	else
1712	  tagname=""
1713	fi
1714	;;
1715
1716      RC)
1717	AC_LIBTOOL_LANG_RC_CONFIG
1718	;;
1719
1720      *)
1721	AC_MSG_ERROR([Unsupported tag name: $tagname])
1722	;;
1723      esac
1724
1725      # Append the new tag name to the list of available tags.
1726      if test -n "$tagname" ; then
1727      available_tags="$available_tags $tagname"
1728    fi
1729    fi
1730  done
1731  IFS="$lt_save_ifs"
1732
1733  # Now substitute the updated list of available tags.
1734  if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
1735    mv "${ofile}T" "$ofile"
1736    chmod +x "$ofile"
1737  else
1738    rm -f "${ofile}T"
1739    AC_MSG_ERROR([unable to update list of available tagged configurations.])
1740  fi
1741fi
1742])# _LT_AC_TAGCONFIG
1743
1744
1745# AC_LIBTOOL_DLOPEN
1746# -----------------
1747# enable checks for dlopen support
1748AC_DEFUN([AC_LIBTOOL_DLOPEN],
1749 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])
1750])# AC_LIBTOOL_DLOPEN
1751
1752
1753# AC_LIBTOOL_WIN32_DLL
1754# --------------------
1755# declare package support for building win32 dll's
1756AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
1757[AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
1758])# AC_LIBTOOL_WIN32_DLL
1759
1760
1761# AC_ENABLE_SHARED([DEFAULT])
1762# ---------------------------
1763# implement the --enable-shared flag
1764# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1765AC_DEFUN([AC_ENABLE_SHARED],
1766[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
1767AC_ARG_ENABLE([shared],
1768    [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
1769	[build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])],
1770    [p=${PACKAGE-default}
1771    case $enableval in
1772    yes) enable_shared=yes ;;
1773    no) enable_shared=no ;;
1774    *)
1775      enable_shared=no
1776      # Look at the argument we got.  We use all the common list separators.
1777      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1778      for pkg in $enableval; do
1779	IFS="$lt_save_ifs"
1780	if test "X$pkg" = "X$p"; then
1781	  enable_shared=yes
1782	fi
1783      done
1784      IFS="$lt_save_ifs"
1785      ;;
1786    esac],
1787    [enable_shared=]AC_ENABLE_SHARED_DEFAULT)
1788])# AC_ENABLE_SHARED
1789
1790
1791# AC_DISABLE_SHARED
1792# -----------------
1793#- set the default shared flag to --disable-shared
1794AC_DEFUN([AC_DISABLE_SHARED],
1795[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1796AC_ENABLE_SHARED(no)
1797])# AC_DISABLE_SHARED
1798
1799
1800# AC_ENABLE_STATIC([DEFAULT])
1801# ---------------------------
1802# implement the --enable-static flag
1803# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1804AC_DEFUN([AC_ENABLE_STATIC],
1805[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
1806AC_ARG_ENABLE([static],
1807    [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@],
1808	[build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])],
1809    [p=${PACKAGE-default}
1810    case $enableval in
1811    yes) enable_static=yes ;;
1812    no) enable_static=no ;;
1813    *)
1814     enable_static=no
1815      # Look at the argument we got.  We use all the common list separators.
1816      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1817      for pkg in $enableval; do
1818	IFS="$lt_save_ifs"
1819	if test "X$pkg" = "X$p"; then
1820	  enable_static=yes
1821	fi
1822      done
1823      IFS="$lt_save_ifs"
1824      ;;
1825    esac],
1826    [enable_static=]AC_ENABLE_STATIC_DEFAULT)
1827])# AC_ENABLE_STATIC
1828
1829
1830# AC_DISABLE_STATIC
1831# -----------------
1832# set the default static flag to --disable-static
1833AC_DEFUN([AC_DISABLE_STATIC],
1834[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1835AC_ENABLE_STATIC(no)
1836])# AC_DISABLE_STATIC
1837
1838
1839# AC_ENABLE_FAST_INSTALL([DEFAULT])
1840# ---------------------------------
1841# implement the --enable-fast-install flag
1842# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1843AC_DEFUN([AC_ENABLE_FAST_INSTALL],
1844[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
1845AC_ARG_ENABLE([fast-install],
1846    [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
1847    [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
1848    [p=${PACKAGE-default}
1849    case $enableval in
1850    yes) enable_fast_install=yes ;;
1851    no) enable_fast_install=no ;;
1852    *)
1853      enable_fast_install=no
1854      # Look at the argument we got.  We use all the common list separators.
1855      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1856      for pkg in $enableval; do
1857	IFS="$lt_save_ifs"
1858	if test "X$pkg" = "X$p"; then
1859	  enable_fast_install=yes
1860	fi
1861      done
1862      IFS="$lt_save_ifs"
1863      ;;
1864    esac],
1865    [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT)
1866])# AC_ENABLE_FAST_INSTALL
1867
1868
1869# AC_DISABLE_FAST_INSTALL
1870# -----------------------
1871# set the default to --disable-fast-install
1872AC_DEFUN([AC_DISABLE_FAST_INSTALL],
1873[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1874AC_ENABLE_FAST_INSTALL(no)
1875])# AC_DISABLE_FAST_INSTALL
1876
1877
1878# AC_LIBTOOL_PICMODE([MODE])
1879# --------------------------
1880# implement the --with-pic flag
1881# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
1882AC_DEFUN([AC_LIBTOOL_PICMODE],
1883[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1884pic_mode=ifelse($#,1,$1,default)
1885])# AC_LIBTOOL_PICMODE
1886
1887
1888# AC_PROG_EGREP
1889# -------------
1890# This is predefined starting with Autoconf 2.54, so this conditional
1891# definition can be removed once we require Autoconf 2.54 or later.
1892m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP],
1893[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep],
1894   [if echo a | (grep -E '(a|b)') >/dev/null 2>&1
1895    then ac_cv_prog_egrep='grep -E'
1896    else ac_cv_prog_egrep='egrep'
1897    fi])
1898 EGREP=$ac_cv_prog_egrep
1899 AC_SUBST([EGREP])
1900])])
1901
1902
1903# AC_PATH_TOOL_PREFIX
1904# -------------------
1905# find a file program which can recognise shared library
1906AC_DEFUN([AC_PATH_TOOL_PREFIX],
1907[AC_REQUIRE([AC_PROG_EGREP])dnl
1908AC_MSG_CHECKING([for $1])
1909AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
1910[case $MAGIC_CMD in
1911[[\\/*] |  ?:[\\/]*])
1912  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
1913  ;;
1914*)
1915  lt_save_MAGIC_CMD="$MAGIC_CMD"
1916  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
1917dnl $ac_dummy forces splitting on constant user-supplied paths.
1918dnl POSIX.2 word splitting is done only on the output of word expansions,
1919dnl not every word.  This closes a longstanding sh security hole.
1920  ac_dummy="ifelse([$2], , $PATH, [$2])"
1921  for ac_dir in $ac_dummy; do
1922    IFS="$lt_save_ifs"
1923    test -z "$ac_dir" && ac_dir=.
1924    if test -f $ac_dir/$1; then
1925      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
1926      if test -n "$file_magic_test_file"; then
1927	case $deplibs_check_method in
1928	"file_magic "*)
1929	  file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
1930	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
1931	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
1932	    $EGREP "$file_magic_regex" > /dev/null; then
1933	    :
1934	  else
1935	    cat <<EOF 1>&2
1936
1937*** Warning: the command libtool uses to detect shared libraries,
1938*** $file_magic_cmd, produces output that libtool cannot recognize.
1939*** The result is that libtool may fail to recognize shared libraries
1940*** as such.  This will affect the creation of libtool libraries that
1941*** depend on shared libraries, but programs linked with such libtool
1942*** libraries will work regardless of this problem.  Nevertheless, you
1943*** may want to report the problem to your system manager and/or to
1944*** bug-libtool@gnu.org
1945
1946EOF
1947	  fi ;;
1948	esac
1949      fi
1950      break
1951    fi
1952  done
1953  IFS="$lt_save_ifs"
1954  MAGIC_CMD="$lt_save_MAGIC_CMD"
1955  ;;
1956esac])
1957MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
1958if test -n "$MAGIC_CMD"; then
1959  AC_MSG_RESULT($MAGIC_CMD)
1960else
1961  AC_MSG_RESULT(no)
1962fi
1963])# AC_PATH_TOOL_PREFIX
1964
1965
1966# AC_PATH_MAGIC
1967# -------------
1968# find a file program which can recognise a shared library
1969AC_DEFUN([AC_PATH_MAGIC],
1970[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
1971if test -z "$lt_cv_path_MAGIC_CMD"; then
1972  if test -n "$ac_tool_prefix"; then
1973    AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
1974  else
1975    MAGIC_CMD=:
1976  fi
1977fi
1978])# AC_PATH_MAGIC
1979
1980
1981# AC_PROG_LD
1982# ----------
1983# find the pathname to the GNU or non-GNU linker
1984AC_DEFUN([AC_PROG_LD],
1985[AC_ARG_WITH([gnu-ld],
1986    [AC_HELP_STRING([--with-gnu-ld],
1987	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
1988    [test "$withval" = no || with_gnu_ld=yes],
1989    [with_gnu_ld=no])
1990AC_REQUIRE([LT_AC_PROG_SED])dnl
1991AC_REQUIRE([AC_PROG_CC])dnl
1992AC_REQUIRE([AC_CANONICAL_HOST])dnl
1993AC_REQUIRE([AC_CANONICAL_BUILD])dnl
1994ac_prog=ld
1995if test "$GCC" = yes; then
1996  # Check if gcc -print-prog-name=ld gives a path.
1997  AC_MSG_CHECKING([for ld used by $CC])
1998  case $host in
1999  *-*-mingw*)
2000    # gcc leaves a trailing carriage return which upsets mingw
2001    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2002  *)
2003    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2004  esac
2005  case $ac_prog in
2006    # Accept absolute paths.
2007    [[\\/]]* | ?:[[\\/]]*)
2008      re_direlt='/[[^/]][[^/]]*/\.\./'
2009      # Canonicalize the pathname of ld
2010      ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'`
2011      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
2012	ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"`
2013      done
2014      test -z "$LD" && LD="$ac_prog"
2015      ;;
2016  "")
2017    # If it fails, then pretend we aren't using GCC.
2018    ac_prog=ld
2019    ;;
2020  *)
2021    # If it is relative, then search for the first ld in PATH.
2022    with_gnu_ld=unknown
2023    ;;
2024  esac
2025elif test "$with_gnu_ld" = yes; then
2026  AC_MSG_CHECKING([for GNU ld])
2027else
2028  AC_MSG_CHECKING([for non-GNU ld])
2029fi
2030AC_CACHE_VAL(lt_cv_path_LD,
2031[if test -z "$LD"; then
2032  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2033  for ac_dir in $PATH; do
2034    IFS="$lt_save_ifs"
2035    test -z "$ac_dir" && ac_dir=.
2036    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
2037      lt_cv_path_LD="$ac_dir/$ac_prog"
2038      # Check to see if the program is GNU ld.  I'd rather use --version,
2039      # but apparently some GNU ld's only accept -v.
2040      # Break only if it was the GNU/non-GNU ld that we prefer.
2041      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
2042      *GNU* | *'with BFD'*)
2043	test "$with_gnu_ld" != no && break
2044	;;
2045      *)
2046	test "$with_gnu_ld" != yes && break
2047	;;
2048      esac
2049    fi
2050  done
2051  IFS="$lt_save_ifs"
2052else
2053  lt_cv_path_LD="$LD" # Let the user override the test with a path.
2054fi])
2055LD="$lt_cv_path_LD"
2056if test -n "$LD"; then
2057  AC_MSG_RESULT($LD)
2058else
2059  AC_MSG_RESULT(no)
2060fi
2061test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
2062AC_PROG_LD_GNU
2063])# AC_PROG_LD
2064
2065
2066# AC_PROG_LD_GNU
2067# --------------
2068AC_DEFUN([AC_PROG_LD_GNU],
2069[AC_REQUIRE([AC_PROG_EGREP])dnl
2070AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
2071[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
2072case `$LD -v 2>&1 </dev/null` in
2073*GNU* | *'with BFD'*)
2074  lt_cv_prog_gnu_ld=yes
2075  ;;
2076*)
2077  lt_cv_prog_gnu_ld=no
2078  ;;
2079esac])
2080with_gnu_ld=$lt_cv_prog_gnu_ld
2081])# AC_PROG_LD_GNU
2082
2083
2084# AC_PROG_LD_RELOAD_FLAG
2085# ----------------------
2086# find reload flag for linker
2087#   -- PORTME Some linkers may need a different reload flag.
2088AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
2089[AC_CACHE_CHECK([for $LD option to reload object files],
2090  lt_cv_ld_reload_flag,
2091  [lt_cv_ld_reload_flag='-r'])
2092reload_flag=$lt_cv_ld_reload_flag
2093case $reload_flag in
2094"" | " "*) ;;
2095*) reload_flag=" $reload_flag" ;;
2096esac
2097reload_cmds='$LD$reload_flag -o $output$reload_objs'
2098case $host_os in
2099  darwin*)
2100    if test "$GCC" = yes; then
2101      reload_cmds='$CC -nostdlib ${wl}-r -o $output$reload_objs'
2102    else
2103      reload_cmds='$LD$reload_flag -o $output$reload_objs'
2104    fi
2105    ;;
2106esac
2107])# AC_PROG_LD_RELOAD_FLAG
2108
2109
2110# AC_DEPLIBS_CHECK_METHOD
2111# -----------------------
2112# how to check for library dependencies
2113#  -- PORTME fill in with the dynamic library characteristics
2114AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
2115[AC_CACHE_CHECK([how to recognise dependent libraries],
2116lt_cv_deplibs_check_method,
2117[lt_cv_file_magic_cmd='$MAGIC_CMD'
2118lt_cv_file_magic_test_file=
2119lt_cv_deplibs_check_method='unknown'
2120# Need to set the preceding variable on all platforms that support
2121# interlibrary dependencies.
2122# 'none' -- dependencies not supported.
2123# `unknown' -- same as none, but documents that we really don't know.
2124# 'pass_all' -- all dependencies passed with no checks.
2125# 'test_compile' -- check by making test program.
2126# 'file_magic [[regex]]' -- check by looking for files in library path
2127# which responds to the $file_magic_cmd with a given extended regex.
2128# If you have `file' or equivalent on your system and you're not sure
2129# whether `pass_all' will *always* work, you probably want this one.
2130
2131case $host_os in
2132aix4* | aix5*)
2133  lt_cv_deplibs_check_method=pass_all
2134  ;;
2135
2136beos*)
2137  lt_cv_deplibs_check_method=pass_all
2138  ;;
2139
2140bsdi[[45]]*)
2141  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
2142  lt_cv_file_magic_cmd='/usr/bin/file -L'
2143  lt_cv_file_magic_test_file=/shlib/libc.so
2144  ;;
2145
2146cygwin*)
2147  # func_win32_libid is a shell function defined in ltmain.sh
2148  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
2149  lt_cv_file_magic_cmd='func_win32_libid'
2150  ;;
2151
2152mingw* | pw32*)
2153  # Base MSYS/MinGW do not provide the 'file' command needed by
2154  # func_win32_libid shell function, so use a weaker test based on 'objdump'.
2155  lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
2156  lt_cv_file_magic_cmd='$OBJDUMP -f'
2157  ;;
2158
2159darwin* | rhapsody*)
2160  lt_cv_deplibs_check_method=pass_all
2161  ;;
2162
2163freebsd* | kfreebsd*-gnu)
2164  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
2165    case $host_cpu in
2166    i*86 )
2167      # Not sure whether the presence of OpenBSD here was a mistake.
2168      # Let's accept both of them until this is cleared up.
2169      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
2170      lt_cv_file_magic_cmd=/usr/bin/file
2171      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
2172      ;;
2173    esac
2174  else
2175    lt_cv_deplibs_check_method=pass_all
2176  fi
2177  ;;
2178
2179gnu*)
2180  lt_cv_deplibs_check_method=pass_all
2181  ;;
2182
2183hpux10.20* | hpux11*)
2184  lt_cv_file_magic_cmd=/usr/bin/file
2185  case "$host_cpu" in
2186  ia64*)
2187    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
2188    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
2189    ;;
2190  hppa*64*)
2191    [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
2192    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
2193    ;;
2194  *)
2195    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
2196    lt_cv_file_magic_test_file=/usr/lib/libc.sl
2197    ;;
2198  esac
2199  ;;
2200
2201irix5* | irix6* | nonstopux*)
2202  case $LD in
2203  *-32|*"-32 ") libmagic=32-bit;;
2204  *-n32|*"-n32 ") libmagic=N32;;
2205  *-64|*"-64 ") libmagic=64-bit;;
2206  *) libmagic=never-match;;
2207  esac
2208  lt_cv_deplibs_check_method=pass_all
2209  ;;
2210
2211# This must be Linux ELF.
2212linux*)
2213  lt_cv_deplibs_check_method=pass_all
2214  ;;
2215
2216netbsd*)
2217  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
2218    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
2219  else
2220    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
2221  fi
2222  ;;
2223
2224newos6*)
2225  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
2226  lt_cv_file_magic_cmd=/usr/bin/file
2227  lt_cv_file_magic_test_file=/usr/lib/libnls.so
2228  ;;
2229
2230nto-qnx*)
2231  lt_cv_deplibs_check_method=unknown
2232  ;;
2233
2234openbsd*)
2235  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2236    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
2237  else
2238    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
2239  fi
2240  ;;
2241
2242osf3* | osf4* | osf5*)
2243  lt_cv_deplibs_check_method=pass_all
2244  ;;
2245
2246sco3.2v5*)
2247  lt_cv_deplibs_check_method=pass_all
2248  ;;
2249
2250solaris*)
2251  lt_cv_deplibs_check_method=pass_all
2252  ;;
2253
2254sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
2255  case $host_vendor in
2256  motorola)
2257    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
2258    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
2259    ;;
2260  ncr)
2261    lt_cv_deplibs_check_method=pass_all
2262    ;;
2263  sequent)
2264    lt_cv_file_magic_cmd='/bin/file'
2265    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
2266    ;;
2267  sni)
2268    lt_cv_file_magic_cmd='/bin/file'
2269    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
2270    lt_cv_file_magic_test_file=/lib/libc.so
2271    ;;
2272  siemens)
2273    lt_cv_deplibs_check_method=pass_all
2274    ;;
2275  esac
2276  ;;
2277
2278sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*)
2279  lt_cv_deplibs_check_method=pass_all
2280  ;;
2281esac
2282])
2283file_magic_cmd=$lt_cv_file_magic_cmd
2284deplibs_check_method=$lt_cv_deplibs_check_method
2285test -z "$deplibs_check_method" && deplibs_check_method=unknown
2286])# AC_DEPLIBS_CHECK_METHOD
2287
2288
2289# AC_PROG_NM
2290# ----------
2291# find the pathname to a BSD-compatible name lister
2292AC_DEFUN([AC_PROG_NM],
2293[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM,
2294[if test -n "$NM"; then
2295  # Let the user override the test.
2296  lt_cv_path_NM="$NM"
2297else
2298  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2299  for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
2300    IFS="$lt_save_ifs"
2301    test -z "$ac_dir" && ac_dir=.
2302    tmp_nm="$ac_dir/${ac_tool_prefix}nm"
2303    if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
2304      # Check to see if the nm accepts a BSD-compat flag.
2305      # Adding the `sed 1q' prevents false positives on HP-UX, which says:
2306      #   nm: unknown option "B" ignored
2307      # Tru64's nm complains that /dev/null is an invalid object file
2308      case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
2309      */dev/null* | *'Invalid file or object type'*)
2310	lt_cv_path_NM="$tmp_nm -B"
2311	break
2312        ;;
2313      *)
2314	case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
2315	*/dev/null*)
2316	  lt_cv_path_NM="$tmp_nm -p"
2317	  break
2318	  ;;
2319	*)
2320	  lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
2321	  continue # so that we can try to find one that supports BSD flags
2322	  ;;
2323	esac
2324      esac
2325    fi
2326  done
2327  IFS="$lt_save_ifs"
2328  test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
2329fi])
2330NM="$lt_cv_path_NM"
2331])# AC_PROG_NM
2332
2333
2334# AC_CHECK_LIBM
2335# -------------
2336# check for math library
2337AC_DEFUN([AC_CHECK_LIBM],
2338[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2339LIBM=
2340case $host in
2341*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
2342  # These system don't have libm, or don't need it
2343  ;;
2344*-ncr-sysv4.3*)
2345  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
2346  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
2347  ;;
2348*)
2349  AC_CHECK_LIB(m, cos, LIBM="-lm")
2350  ;;
2351esac
2352])# AC_CHECK_LIBM
2353
2354
2355# AC_LIBLTDL_CONVENIENCE([DIRECTORY])
2356# -----------------------------------
2357# sets LIBLTDL to the link flags for the libltdl convenience library and
2358# LTDLINCL to the include flags for the libltdl header and adds
2359# --enable-ltdl-convenience to the configure arguments.  Note that LIBLTDL
2360# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If
2361# DIRECTORY is not provided, it is assumed to be `libltdl'.  LIBLTDL will
2362# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with
2363# '${top_srcdir}/' (note the single quotes!).  If your package is not
2364# flat and you're not using automake, define top_builddir and
2365# top_srcdir appropriately in the Makefiles.
2366AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
2367[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2368  case $enable_ltdl_convenience in
2369  no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
2370  "") enable_ltdl_convenience=yes
2371      ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
2372  esac
2373  LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
2374  LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
2375  # For backwards non-gettext consistent compatibility...
2376  INCLTDL="$LTDLINCL"
2377])# AC_LIBLTDL_CONVENIENCE
2378
2379
2380# AC_LIBLTDL_INSTALLABLE([DIRECTORY])
2381# -----------------------------------
2382# sets LIBLTDL to the link flags for the libltdl installable library and
2383# LTDLINCL to the include flags for the libltdl header and adds
2384# --enable-ltdl-install to the configure arguments.  Note that LIBLTDL
2385# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If
2386# DIRECTORY is not provided and an installed libltdl is not found, it is
2387# assumed to be `libltdl'.  LIBLTDL will be prefixed with '${top_builddir}/'
2388# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single
2389# quotes!).  If your package is not flat and you're not using automake,
2390# define top_builddir and top_srcdir appropriately in the Makefiles.
2391# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
2392AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
2393[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2394  AC_CHECK_LIB(ltdl, lt_dlinit,
2395  [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
2396  [if test x"$enable_ltdl_install" = xno; then
2397     AC_MSG_WARN([libltdl not installed, but installation disabled])
2398   else
2399     enable_ltdl_install=yes
2400   fi
2401  ])
2402  if test x"$enable_ltdl_install" = x"yes"; then
2403    ac_configure_args="$ac_configure_args --enable-ltdl-install"
2404    LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
2405    LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
2406  else
2407    ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
2408    LIBLTDL="-lltdl"
2409    LTDLINCL=
2410  fi
2411  # For backwards non-gettext consistent compatibility...
2412  INCLTDL="$LTDLINCL"
2413])# AC_LIBLTDL_INSTALLABLE
2414
2415
2416# AC_LIBTOOL_CXX
2417# --------------
2418# enable support for C++ libraries
2419AC_DEFUN([AC_LIBTOOL_CXX],
2420[AC_REQUIRE([_LT_AC_LANG_CXX])
2421])# AC_LIBTOOL_CXX
2422
2423
2424# _LT_AC_LANG_CXX
2425# ---------------
2426AC_DEFUN([_LT_AC_LANG_CXX],
2427[AC_REQUIRE([AC_PROG_CXX])
2428AC_REQUIRE([_LT_AC_PROG_CXXCPP])
2429_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX])
2430])# _LT_AC_LANG_CXX
2431
2432# _LT_AC_PROG_CXXCPP
2433# ---------------
2434AC_DEFUN([_LT_AC_PROG_CXXCPP],
2435[
2436AC_REQUIRE([AC_PROG_CXX])
2437if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
2438    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
2439    (test "X$CXX" != "Xg++"))) ; then
2440  AC_PROG_CXXCPP
2441fi
2442])# _LT_AC_PROG_CXXCPP
2443
2444# AC_LIBTOOL_F77
2445# --------------
2446# enable support for Fortran 77 libraries
2447AC_DEFUN([AC_LIBTOOL_F77],
2448[AC_REQUIRE([_LT_AC_LANG_F77])
2449])# AC_LIBTOOL_F77
2450
2451
2452# _LT_AC_LANG_F77
2453# ---------------
2454AC_DEFUN([_LT_AC_LANG_F77],
2455[AC_REQUIRE([AC_PROG_F77])
2456_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77])
2457])# _LT_AC_LANG_F77
2458
2459
2460# AC_LIBTOOL_GCJ
2461# --------------
2462# enable support for GCJ libraries
2463AC_DEFUN([AC_LIBTOOL_GCJ],
2464[AC_REQUIRE([_LT_AC_LANG_GCJ])
2465])# AC_LIBTOOL_GCJ
2466
2467
2468# _LT_AC_LANG_GCJ
2469# ---------------
2470AC_DEFUN([_LT_AC_LANG_GCJ],
2471[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
2472  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
2473    [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
2474      [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
2475	 [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
2476	   [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
2477_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ])
2478])# _LT_AC_LANG_GCJ
2479
2480
2481# AC_LIBTOOL_RC
2482# --------------
2483# enable support for Windows resource files
2484AC_DEFUN([AC_LIBTOOL_RC],
2485[AC_REQUIRE([LT_AC_PROG_RC])
2486_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC])
2487])# AC_LIBTOOL_RC
2488
2489
2490# AC_LIBTOOL_LANG_C_CONFIG
2491# ------------------------
2492# Ensure that the configuration vars for the C compiler are
2493# suitably defined.  Those variables are subsequently used by
2494# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
2495AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG])
2496AC_DEFUN([_LT_AC_LANG_C_CONFIG],
2497[lt_save_CC="$CC"
2498AC_LANG_PUSH(C)
2499
2500# Source file extension for C test sources.
2501ac_ext=c
2502
2503# Object file extension for compiled C test sources.
2504objext=o
2505_LT_AC_TAGVAR(objext, $1)=$objext
2506
2507# Code to be used in simple compile tests
2508lt_simple_compile_test_code="int some_variable = 0;\n"
2509
2510# Code to be used in simple link tests
2511lt_simple_link_test_code='int main(){return(0);}\n'
2512
2513_LT_AC_SYS_COMPILER
2514
2515#
2516# Check for any special shared library compilation flags.
2517#
2518_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)=
2519if test "$GCC" = no; then
2520  case $host_os in
2521  sco3.2v5*)
2522    _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf'
2523    ;;
2524  esac
2525fi
2526if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then
2527  AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries])
2528  if echo "$old_CC $old_CFLAGS " | grep "[[ 	]]$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[ 	]]" >/dev/null; then :
2529  else
2530    AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure])
2531    _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no
2532  fi
2533fi
2534
2535
2536#
2537# Check to make sure the static flag actually works.
2538#
2539AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works],
2540  _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
2541  $_LT_AC_TAGVAR(lt_prog_compiler_static, $1),
2542  [],
2543  [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
2544
2545
2546## CAVEAT EMPTOR:
2547## There is no encapsulation within the following macros, do not change
2548## the running order or otherwise move them around unless you know exactly
2549## what you are doing...
2550AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
2551AC_LIBTOOL_PROG_COMPILER_PIC($1)
2552AC_LIBTOOL_PROG_CC_C_O($1)
2553AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
2554AC_LIBTOOL_PROG_LD_SHLIBS($1)
2555AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
2556AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
2557AC_LIBTOOL_SYS_LIB_STRIP
2558AC_LIBTOOL_DLOPEN_SELF($1)
2559
2560# Report which librarie types wil actually be built
2561AC_MSG_CHECKING([if libtool supports shared libraries])
2562AC_MSG_RESULT([$can_build_shared])
2563
2564AC_MSG_CHECKING([whether to build shared libraries])
2565test "$can_build_shared" = "no" && enable_shared=no
2566
2567# On AIX, shared libraries and static libraries use the same namespace, and
2568# are all built from PIC.
2569case "$host_os" in
2570aix3*)
2571  test "$enable_shared" = yes && enable_static=no
2572  if test -n "$RANLIB"; then
2573    archive_cmds="$archive_cmds~\$RANLIB \$lib"
2574    postinstall_cmds='$RANLIB $lib'
2575  fi
2576  ;;
2577
2578aix4* | aix5*)
2579  if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
2580    test "$enable_shared" = yes && enable_static=no
2581  fi
2582    ;;
2583esac
2584AC_MSG_RESULT([$enable_shared])
2585
2586AC_MSG_CHECKING([whether to build static libraries])
2587# Make sure either enable_shared or enable_static is yes.
2588test "$enable_shared" = yes || enable_static=yes
2589AC_MSG_RESULT([$enable_static])
2590
2591AC_LIBTOOL_CONFIG($1)
2592
2593AC_LANG_POP
2594CC="$lt_save_CC"
2595])# AC_LIBTOOL_LANG_C_CONFIG
2596
2597
2598# AC_LIBTOOL_LANG_CXX_CONFIG
2599# --------------------------
2600# Ensure that the configuration vars for the C compiler are
2601# suitably defined.  Those variables are subsequently used by
2602# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
2603AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)])
2604AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
2605[AC_LANG_PUSH(C++)
2606AC_REQUIRE([AC_PROG_CXX])
2607AC_REQUIRE([_LT_AC_PROG_CXXCPP])
2608
2609_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
2610_LT_AC_TAGVAR(allow_undefined_flag, $1)=
2611_LT_AC_TAGVAR(always_export_symbols, $1)=no
2612_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
2613_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
2614_LT_AC_TAGVAR(hardcode_direct, $1)=no
2615_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
2616_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
2617_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
2618_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
2619_LT_AC_TAGVAR(hardcode_automatic, $1)=no
2620_LT_AC_TAGVAR(module_cmds, $1)=
2621_LT_AC_TAGVAR(module_expsym_cmds, $1)=
2622_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
2623_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
2624_LT_AC_TAGVAR(no_undefined_flag, $1)=
2625_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
2626_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
2627
2628# Dependencies to place before and after the object being linked:
2629_LT_AC_TAGVAR(predep_objects, $1)=
2630_LT_AC_TAGVAR(postdep_objects, $1)=
2631_LT_AC_TAGVAR(predeps, $1)=
2632_LT_AC_TAGVAR(postdeps, $1)=
2633_LT_AC_TAGVAR(compiler_lib_search_path, $1)=
2634
2635# Source file extension for C++ test sources.
2636ac_ext=cc
2637
2638# Object file extension for compiled C++ test sources.
2639objext=o
2640_LT_AC_TAGVAR(objext, $1)=$objext
2641
2642# Code to be used in simple compile tests
2643lt_simple_compile_test_code="int some_variable = 0;\n"
2644
2645# Code to be used in simple link tests
2646lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n'
2647
2648# ltmain only uses $CC for tagged configurations so make sure $CC is set.
2649_LT_AC_SYS_COMPILER
2650
2651# Allow CC to be a program name with arguments.
2652lt_save_CC=$CC
2653lt_save_LD=$LD
2654lt_save_GCC=$GCC
2655GCC=$GXX
2656lt_save_with_gnu_ld=$with_gnu_ld
2657lt_save_path_LD=$lt_cv_path_LD
2658if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
2659  lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
2660else
2661  unset lt_cv_prog_gnu_ld
2662fi
2663if test -n "${lt_cv_path_LDCXX+set}"; then
2664  lt_cv_path_LD=$lt_cv_path_LDCXX
2665else
2666  unset lt_cv_path_LD
2667fi
2668test -z "${LDCXX+set}" || LD=$LDCXX
2669CC=${CXX-"c++"}
2670compiler=$CC
2671_LT_AC_TAGVAR(compiler, $1)=$CC
2672cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
2673
2674# We don't want -fno-exception wen compiling C++ code, so set the
2675# no_builtin_flag separately
2676if test "$GXX" = yes; then
2677  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
2678else
2679  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
2680fi
2681
2682if test "$GXX" = yes; then
2683  # Set up default GNU C++ configuration
2684
2685  AC_PROG_LD
2686
2687  # Check if GNU C++ uses GNU ld as the underlying linker, since the
2688  # archiving commands below assume that GNU ld is being used.
2689  if test "$with_gnu_ld" = yes; then
2690    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
2691    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
2692
2693    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
2694    _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
2695
2696    # If archive_cmds runs LD, not CC, wlarc should be empty
2697    # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
2698    #     investigate it a little bit more. (MM)
2699    wlarc='${wl}'
2700
2701    # ancient GNU ld didn't support --whole-archive et. al.
2702    if eval "`$CC -print-prog-name=ld` --help 2>&1" | \
2703	grep 'no-whole-archive' > /dev/null; then
2704      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
2705    else
2706      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
2707    fi
2708  else
2709    with_gnu_ld=no
2710    wlarc=
2711
2712    # A generic and very simple default shared library creation
2713    # command for GNU C++ for the case where it uses the native
2714    # linker, instead of GNU ld.  If possible, this setting should
2715    # overridden to take advantage of the native linker features on
2716    # the platform it is being used on.
2717    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
2718  fi
2719
2720  # Commands to make compiler produce verbose output that lists
2721  # what "hidden" libraries, object files and flags are used when
2722  # linking a shared library.
2723  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
2724
2725else
2726  GXX=no
2727  with_gnu_ld=no
2728  wlarc=
2729fi
2730
2731# PORTME: fill in a description of your system's C++ link characteristics
2732AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
2733_LT_AC_TAGVAR(ld_shlibs, $1)=yes
2734case $host_os in
2735  aix3*)
2736    # FIXME: insert proper C++ library support
2737    _LT_AC_TAGVAR(ld_shlibs, $1)=no
2738    ;;
2739  aix4* | aix5*)
2740    if test "$host_cpu" = ia64; then
2741      # On IA64, the linker does run time linking by default, so we don't
2742      # have to do anything special.
2743      aix_use_runtimelinking=no
2744      exp_sym_flag='-Bexport'
2745      no_entry_flag=""
2746    else
2747      aix_use_runtimelinking=no
2748
2749      # Test if we are trying to use run time linking or normal
2750      # AIX style linking. If -brtl is somewhere in LDFLAGS, we
2751      # need to do runtime linking.
2752      case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
2753	for ld_flag in $LDFLAGS; do
2754	  case $ld_flag in
2755	  *-brtl*)
2756	    aix_use_runtimelinking=yes
2757	    break
2758	    ;;
2759	  esac
2760	done
2761      esac
2762
2763      exp_sym_flag='-bexport'
2764      no_entry_flag='-bnoentry'
2765    fi
2766
2767    # When large executables or shared objects are built, AIX ld can
2768    # have problems creating the table of contents.  If linking a library
2769    # or program results in "error TOC overflow" add -mminimal-toc to
2770    # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
2771    # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
2772
2773    _LT_AC_TAGVAR(archive_cmds, $1)=''
2774    _LT_AC_TAGVAR(hardcode_direct, $1)=yes
2775    _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
2776    _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
2777
2778    if test "$GXX" = yes; then
2779      case $host_os in aix4.[012]|aix4.[012].*)
2780      # We only want to do this on AIX 4.2 and lower, the check
2781      # below for broken collect2 doesn't work under 4.3+
2782	collect2name=`${CC} -print-prog-name=collect2`
2783	if test -f "$collect2name" && \
2784	   strings "$collect2name" | grep resolve_lib_name >/dev/null
2785	then
2786	  # We have reworked collect2
2787	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes
2788	else
2789	  # We have old collect2
2790	  _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
2791	  # It fails to find uninstalled libraries when the uninstalled
2792	  # path is not listed in the libpath.  Setting hardcode_minus_L
2793	  # to unsupported forces relinking
2794	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
2795	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2796	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
2797	fi
2798      esac
2799      shared_flag='-shared'
2800    else
2801      # not using gcc
2802      if test "$host_cpu" = ia64; then
2803	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
2804	# chokes on -Wl,-G. The following line is correct:
2805	shared_flag='-G'
2806      else
2807	if test "$aix_use_runtimelinking" = yes; then
2808	  shared_flag='${wl}-G'
2809	else
2810	  shared_flag='${wl}-bM:SRE'
2811	fi
2812      fi
2813    fi
2814
2815    # It seems that -bexpall does not export symbols beginning with
2816    # underscore (_), so it is better to generate a list of symbols to export.
2817    _LT_AC_TAGVAR(always_export_symbols, $1)=yes
2818    if test "$aix_use_runtimelinking" = yes; then
2819      # Warning - without using the other runtime loading flags (-brtl),
2820      # -berok will link without error, but may produce a broken library.
2821      _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
2822      # Determine the default libpath from the value encoded in an empty executable.
2823      _LT_AC_SYS_LIBPATH_AIX
2824      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
2825
2826      _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
2827     else
2828      if test "$host_cpu" = ia64; then
2829	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
2830	_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
2831	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
2832      else
2833	# Determine the default libpath from the value encoded in an empty executable.
2834	_LT_AC_SYS_LIBPATH_AIX
2835	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
2836	# Warning - without using the other run time loading flags,
2837	# -berok will link without error, but may produce a broken library.
2838	_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
2839	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
2840	# -bexpall does not export symbols beginning with underscore (_)
2841	_LT_AC_TAGVAR(always_export_symbols, $1)=yes
2842	# Exported symbols can be pulled into shared objects from archives
2843	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
2844	_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
2845	# This is similar to how AIX traditionally builds it's shared libraries.
2846	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
2847      fi
2848    fi
2849    ;;
2850  chorus*)
2851    case $cc_basename in
2852      *)
2853	# FIXME: insert proper C++ library support
2854	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2855	;;
2856    esac
2857    ;;
2858
2859
2860  cygwin* | mingw* | pw32*)
2861    # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
2862    # as there is no search path for DLLs.
2863    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2864    _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
2865    _LT_AC_TAGVAR(always_export_symbols, $1)=no
2866    _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
2867
2868    if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
2869      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
2870      # If the export-symbols file already is a .def file (1st line
2871      # is EXPORTS), use it as is; otherwise, prepend...
2872      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
2873	cp $export_symbols $output_objdir/$soname.def;
2874      else
2875	echo EXPORTS > $output_objdir/$soname.def;
2876	cat $export_symbols >> $output_objdir/$soname.def;
2877      fi~
2878      $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
2879    else
2880      _LT_AC_TAGVAR(ld_shlibs, $1)=no
2881    fi
2882  ;;
2883      darwin* | rhapsody*)
2884        case "$host_os" in
2885        rhapsody* | darwin1.[[012]])
2886         _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
2887         ;;
2888       *) # Darwin 1.3 on
2889         if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
2890           _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
2891         else
2892           case ${MACOSX_DEPLOYMENT_TARGET} in
2893             10.[[012]])
2894               _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
2895               ;;
2896             10.*)
2897               _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
2898               ;;
2899           esac
2900         fi
2901         ;;
2902        esac
2903      _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
2904      _LT_AC_TAGVAR(hardcode_direct, $1)=no
2905      _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
2906      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
2907      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
2908      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
2909
2910    if test "$GXX" = yes ; then
2911      lt_int_apple_cc_single_mod=no
2912      output_verbose_link_cmd='echo'
2913      if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
2914       lt_int_apple_cc_single_mod=yes
2915      fi
2916      if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
2917       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
2918      else
2919          _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
2920        fi
2921        _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
2922        # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
2923          if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
2924            _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
2925          else
2926            _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
2927          fi
2928            _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
2929      else
2930      case "$cc_basename" in
2931        xlc*)
2932         output_verbose_link_cmd='echo'
2933          _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
2934          _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
2935          # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
2936          _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
2937          _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
2938          ;;
2939       *)
2940         _LT_AC_TAGVAR(ld_shlibs, $1)=no
2941          ;;
2942      esac
2943      fi
2944        ;;
2945
2946  dgux*)
2947    case $cc_basename in
2948      ec++)
2949	# FIXME: insert proper C++ library support
2950	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2951	;;
2952      ghcx)
2953	# Green Hills C++ Compiler
2954	# FIXME: insert proper C++ library support
2955	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2956	;;
2957      *)
2958	# FIXME: insert proper C++ library support
2959	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2960	;;
2961    esac
2962    ;;
2963  freebsd[12]*)
2964    # C++ shared libraries reported to be fairly broken before switch to ELF
2965    _LT_AC_TAGVAR(ld_shlibs, $1)=no
2966    ;;
2967  freebsd-elf*)
2968    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
2969    ;;
2970  freebsd* | kfreebsd*-gnu)
2971    # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
2972    # conventions
2973    _LT_AC_TAGVAR(ld_shlibs, $1)=yes
2974    ;;
2975  gnu*)
2976    ;;
2977  hpux9*)
2978    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
2979    _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2980    _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
2981    _LT_AC_TAGVAR(hardcode_direct, $1)=yes
2982    _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
2983				# but as the default
2984				# location of the library.
2985
2986    case $cc_basename in
2987    CC)
2988      # FIXME: insert proper C++ library support
2989      _LT_AC_TAGVAR(ld_shlibs, $1)=no
2990      ;;
2991    aCC)
2992      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
2993      # Commands to make compiler produce verbose output that lists
2994      # what "hidden" libraries, object files and flags are used when
2995      # linking a shared library.
2996      #
2997      # There doesn't appear to be a way to prevent this compiler from
2998      # explicitly linking system object files so we need to strip them
2999      # from the output so that they don't get included in the library
3000      # dependencies.
3001      output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "[-]L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3002      ;;
3003    *)
3004      if test "$GXX" = yes; then
3005        _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
3006      else
3007        # FIXME: insert proper C++ library support
3008        _LT_AC_TAGVAR(ld_shlibs, $1)=no
3009      fi
3010      ;;
3011    esac
3012    ;;
3013  hpux10*|hpux11*)
3014    if test $with_gnu_ld = no; then
3015      case "$host_cpu" in
3016      hppa*64*)
3017	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3018	_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
3019	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3020        ;;
3021      ia64*)
3022	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
3023        ;;
3024      *)
3025	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3026	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3027	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3028        ;;
3029      esac
3030    fi
3031    case "$host_cpu" in
3032    hppa*64*)
3033      _LT_AC_TAGVAR(hardcode_direct, $1)=no
3034      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3035      ;;
3036    ia64*)
3037      _LT_AC_TAGVAR(hardcode_direct, $1)=no
3038      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3039      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3040					      # but as the default
3041					      # location of the library.
3042      ;;
3043    *)
3044      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3045      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3046					      # but as the default
3047					      # location of the library.
3048      ;;
3049    esac
3050
3051    case $cc_basename in
3052      CC)
3053	# FIXME: insert proper C++ library support
3054	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3055	;;
3056      aCC)
3057	case "$host_cpu" in
3058	hppa*64*|ia64*)
3059	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
3060	  ;;
3061	*)
3062	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3063	  ;;
3064	esac
3065	# Commands to make compiler produce verbose output that lists
3066	# what "hidden" libraries, object files and flags are used when
3067	# linking a shared library.
3068	#
3069	# There doesn't appear to be a way to prevent this compiler from
3070	# explicitly linking system object files so we need to strip them
3071	# from the output so that they don't get included in the library
3072	# dependencies.
3073	output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3074	;;
3075      *)
3076	if test "$GXX" = yes; then
3077	  if test $with_gnu_ld = no; then
3078	    case "$host_cpu" in
3079	    ia64*|hppa*64*)
3080	      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
3081	      ;;
3082	    *)
3083	      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3084	      ;;
3085	    esac
3086	  fi
3087	else
3088	  # FIXME: insert proper C++ library support
3089	  _LT_AC_TAGVAR(ld_shlibs, $1)=no
3090	fi
3091	;;
3092    esac
3093    ;;
3094  irix5* | irix6*)
3095    case $cc_basename in
3096      CC)
3097	# SGI C++
3098	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
3099
3100	# Archives containing C++ object files must be created using
3101	# "CC -ar", where "CC" is the IRIX C++ compiler.  This is
3102	# necessary to make sure instantiated templates are included
3103	# in the archive.
3104	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
3105	;;
3106      *)
3107	if test "$GXX" = yes; then
3108	  if test "$with_gnu_ld" = no; then
3109	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
3110	  else
3111	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib'
3112	  fi
3113	fi
3114	_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3115	;;
3116    esac
3117    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3118    _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3119    ;;
3120  linux*)
3121    case $cc_basename in
3122      KCC)
3123	# Kuck and Associates, Inc. (KAI) C++ Compiler
3124
3125	# KCC will only create a shared library if the output file
3126	# ends with ".so" (or ".sl" for HP-UX), so rename the library
3127	# to its proper name (with version) after linking.
3128	_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
3129	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
3130	# Commands to make compiler produce verbose output that lists
3131	# what "hidden" libraries, object files and flags are used when
3132	# linking a shared library.
3133	#
3134	# There doesn't appear to be a way to prevent this compiler from
3135	# explicitly linking system object files so we need to strip them
3136	# from the output so that they don't get included in the library
3137	# dependencies.
3138	output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3139
3140	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir'
3141	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3142
3143	# Archives containing C++ object files must be created using
3144	# "CC -Bstatic", where "CC" is the KAI C++ compiler.
3145	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
3146	;;
3147      icpc)
3148	# Intel C++
3149	with_gnu_ld=yes
3150	# version 8.0 and above of icpc choke on multiply defined symbols
3151	# if we add $predep_objects and $postdep_objects, however 7.1 and
3152	# earlier do not add the objects themselves.
3153	case `$CC -V 2>&1` in
3154	*"Version 7."*)
3155  	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3156  	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
3157	  ;;
3158	*)  # Version 8.0 or newer
3159  	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
3160  	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
3161	  ;;
3162	esac
3163	_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3164	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3165	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3166	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
3167	;;
3168      cxx)
3169	# Compaq C++
3170	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3171	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
3172
3173	runpath_var=LD_RUN_PATH
3174	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
3175	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3176
3177	# Commands to make compiler produce verbose output that lists
3178	# what "hidden" libraries, object files and flags are used when
3179	# linking a shared library.
3180	#
3181	# There doesn't appear to be a way to prevent this compiler from
3182	# explicitly linking system object files so we need to strip them
3183	# from the output so that they don't get included in the library
3184	# dependencies.
3185	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3186	;;
3187    esac
3188    ;;
3189  lynxos*)
3190    # FIXME: insert proper C++ library support
3191    _LT_AC_TAGVAR(ld_shlibs, $1)=no
3192    ;;
3193  m88k*)
3194    # FIXME: insert proper C++ library support
3195    _LT_AC_TAGVAR(ld_shlibs, $1)=no
3196    ;;
3197  mvs*)
3198    case $cc_basename in
3199      cxx)
3200	# FIXME: insert proper C++ library support
3201	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3202	;;
3203      *)
3204	# FIXME: insert proper C++ library support
3205	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3206	;;
3207    esac
3208    ;;
3209  netbsd*)
3210    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
3211      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
3212      wlarc=
3213      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
3214      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3215      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3216    fi
3217    # Workaround some broken pre-1.5 toolchains
3218    output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
3219    ;;
3220  openbsd2*)
3221    # C++ shared libraries are fairly broken
3222    _LT_AC_TAGVAR(ld_shlibs, $1)=no
3223    ;;
3224  openbsd*)
3225    _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3226    _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3227    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
3228    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3229    if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3230      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
3231      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3232      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
3233    fi
3234    output_verbose_link_cmd='echo'
3235    ;;
3236  osf3*)
3237    case $cc_basename in
3238      KCC)
3239	# Kuck and Associates, Inc. (KAI) C++ Compiler
3240
3241	# KCC will only create a shared library if the output file
3242	# ends with ".so" (or ".sl" for HP-UX), so rename the library
3243	# to its proper name (with version) after linking.
3244	_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
3245
3246	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3247	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3248
3249	# Archives containing C++ object files must be created using
3250	# "CC -Bstatic", where "CC" is the KAI C++ compiler.
3251	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
3252
3253	;;
3254      RCC)
3255	# Rational C++ 2.4.1
3256	# FIXME: insert proper C++ library support
3257	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3258	;;
3259      cxx)
3260	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
3261	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
3262
3263	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3264	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3265
3266	# Commands to make compiler produce verbose output that lists
3267	# what "hidden" libraries, object files and flags are used when
3268	# linking a shared library.
3269	#
3270	# There doesn't appear to be a way to prevent this compiler from
3271	# explicitly linking system object files so we need to strip them
3272	# from the output so that they don't get included in the library
3273	# dependencies.
3274	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3275	;;
3276      *)
3277	if test "$GXX" = yes && test "$with_gnu_ld" = no; then
3278	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
3279	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
3280
3281	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3282	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3283
3284	  # Commands to make compiler produce verbose output that lists
3285	  # what "hidden" libraries, object files and flags are used when
3286	  # linking a shared library.
3287	  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
3288
3289	else
3290	  # FIXME: insert proper C++ library support
3291	  _LT_AC_TAGVAR(ld_shlibs, $1)=no
3292	fi
3293	;;
3294    esac
3295    ;;
3296  osf4* | osf5*)
3297    case $cc_basename in
3298      KCC)
3299	# Kuck and Associates, Inc. (KAI) C++ Compiler
3300
3301	# KCC will only create a shared library if the output file
3302	# ends with ".so" (or ".sl" for HP-UX), so rename the library
3303	# to its proper name (with version) after linking.
3304	_LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
3305
3306	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3307	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3308
3309	# Archives containing C++ object files must be created using
3310	# the KAI C++ compiler.
3311	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs'
3312	;;
3313      RCC)
3314	# Rational C++ 2.4.1
3315	# FIXME: insert proper C++ library support
3316	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3317	;;
3318      cxx)
3319	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
3320	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
3321	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
3322	  echo "-hidden">> $lib.exp~
3323	  $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp  `test -n "$verstring" && echo -set_version	$verstring` -update_registry $objdir/so_locations -o $lib~
3324	  $rm $lib.exp'
3325
3326	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
3327	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3328
3329	# Commands to make compiler produce verbose output that lists
3330	# what "hidden" libraries, object files and flags are used when
3331	# linking a shared library.
3332	#
3333	# There doesn't appear to be a way to prevent this compiler from
3334	# explicitly linking system object files so we need to strip them
3335	# from the output so that they don't get included in the library
3336	# dependencies.
3337	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3338	;;
3339      *)
3340	if test "$GXX" = yes && test "$with_gnu_ld" = no; then
3341	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
3342	 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
3343
3344	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3345	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3346
3347	  # Commands to make compiler produce verbose output that lists
3348	  # what "hidden" libraries, object files and flags are used when
3349	  # linking a shared library.
3350	  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
3351
3352	else
3353	  # FIXME: insert proper C++ library support
3354	  _LT_AC_TAGVAR(ld_shlibs, $1)=no
3355	fi
3356	;;
3357    esac
3358    ;;
3359  psos*)
3360    # FIXME: insert proper C++ library support
3361    _LT_AC_TAGVAR(ld_shlibs, $1)=no
3362    ;;
3363  sco*)
3364    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3365    case $cc_basename in
3366      CC)
3367	# FIXME: insert proper C++ library support
3368	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3369	;;
3370      *)
3371	# FIXME: insert proper C++ library support
3372	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3373	;;
3374    esac
3375    ;;
3376  sunos4*)
3377    case $cc_basename in
3378      CC)
3379	# Sun C++ 4.x
3380	# FIXME: insert proper C++ library support
3381	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3382	;;
3383      lcc)
3384	# Lucid
3385	# FIXME: insert proper C++ library support
3386	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3387	;;
3388      *)
3389	# FIXME: insert proper C++ library support
3390	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3391	;;
3392    esac
3393    ;;
3394  solaris*)
3395    case $cc_basename in
3396      CC)
3397	# Sun C++ 4.2, 5.x and Centerline C++
3398	_LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
3399	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3400	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
3401	$CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
3402
3403	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
3404	_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3405	case $host_os in
3406	  solaris2.[0-5] | solaris2.[0-5].*) ;;
3407	  *)
3408	    # The C++ compiler is used as linker so we must use $wl
3409	    # flag to pass the commands to the underlying system
3410	    # linker.
3411	    # Supported since Solaris 2.6 (maybe 2.5.1?)
3412	    _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
3413	    ;;
3414	esac
3415	_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3416
3417	# Commands to make compiler produce verbose output that lists
3418	# what "hidden" libraries, object files and flags are used when
3419	# linking a shared library.
3420	#
3421	# There doesn't appear to be a way to prevent this compiler from
3422	# explicitly linking system object files so we need to strip them
3423	# from the output so that they don't get included in the library
3424	# dependencies.
3425	output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3426
3427	# Archives containing C++ object files must be created using
3428	# "CC -xar", where "CC" is the Sun C++ compiler.  This is
3429	# necessary to make sure instantiated templates are included
3430	# in the archive.
3431	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
3432	;;
3433      gcx)
3434	# Green Hills C++ Compiler
3435	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
3436
3437	# The C++ compiler must be used to create the archive.
3438	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
3439	;;
3440      *)
3441	# GNU C++ compiler with Solaris linker
3442	if test "$GXX" = yes && test "$with_gnu_ld" = no; then
3443	  _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
3444	  if $CC --version | grep -v '^2\.7' > /dev/null; then
3445	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
3446	    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
3447		$CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
3448
3449	    # Commands to make compiler produce verbose output that lists
3450	    # what "hidden" libraries, object files and flags are used when
3451	    # linking a shared library.
3452	    output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
3453	  else
3454	    # g++ 2.7 appears to require `-G' NOT `-shared' on this
3455	    # platform.
3456	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
3457	    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
3458		$CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
3459
3460	    # Commands to make compiler produce verbose output that lists
3461	    # what "hidden" libraries, object files and flags are used when
3462	    # linking a shared library.
3463	    output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
3464	  fi
3465
3466	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
3467	fi
3468	;;
3469    esac
3470    ;;
3471  sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
3472    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3473    ;;
3474  tandem*)
3475    case $cc_basename in
3476      NCC)
3477	# NonStop-UX NCC 3.20
3478	# FIXME: insert proper C++ library support
3479	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3480	;;
3481      *)
3482	# FIXME: insert proper C++ library support
3483	_LT_AC_TAGVAR(ld_shlibs, $1)=no
3484	;;
3485    esac
3486    ;;
3487  vxworks*)
3488    # FIXME: insert proper C++ library support
3489    _LT_AC_TAGVAR(ld_shlibs, $1)=no
3490    ;;
3491  *)
3492    # FIXME: insert proper C++ library support
3493    _LT_AC_TAGVAR(ld_shlibs, $1)=no
3494    ;;
3495esac
3496AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
3497test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
3498
3499_LT_AC_TAGVAR(GCC, $1)="$GXX"
3500_LT_AC_TAGVAR(LD, $1)="$LD"
3501
3502## CAVEAT EMPTOR:
3503## There is no encapsulation within the following macros, do not change
3504## the running order or otherwise move them around unless you know exactly
3505## what you are doing...
3506AC_LIBTOOL_POSTDEP_PREDEP($1)
3507AC_LIBTOOL_PROG_COMPILER_PIC($1)
3508AC_LIBTOOL_PROG_CC_C_O($1)
3509AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
3510AC_LIBTOOL_PROG_LD_SHLIBS($1)
3511AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
3512AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
3513AC_LIBTOOL_SYS_LIB_STRIP
3514AC_LIBTOOL_DLOPEN_SELF($1)
3515
3516AC_LIBTOOL_CONFIG($1)
3517
3518AC_LANG_POP
3519CC=$lt_save_CC
3520LDCXX=$LD
3521LD=$lt_save_LD
3522GCC=$lt_save_GCC
3523with_gnu_ldcxx=$with_gnu_ld
3524with_gnu_ld=$lt_save_with_gnu_ld
3525lt_cv_path_LDCXX=$lt_cv_path_LD
3526lt_cv_path_LD=$lt_save_path_LD
3527lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
3528lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
3529])# AC_LIBTOOL_LANG_CXX_CONFIG
3530
3531# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME])
3532# ------------------------
3533# Figure out "hidden" library dependencies from verbose
3534# compiler output when linking a shared library.
3535# Parse the compiler output and extract the necessary
3536# objects, libraries and library flags.
3537AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[
3538dnl we can't use the lt_simple_compile_test_code here,
3539dnl because it contains code intended for an executable,
3540dnl not a library.  It's possible we should let each
3541dnl tag define a new lt_????_link_test_code variable,
3542dnl but it's only used here...
3543ifelse([$1],[],[cat > conftest.$ac_ext <<EOF
3544int a;
3545void foo (void) { a = 0; }
3546EOF
3547],[$1],[CXX],[cat > conftest.$ac_ext <<EOF
3548class Foo
3549{
3550public:
3551  Foo (void) { a = 0; }
3552private:
3553  int a;
3554};
3555EOF
3556],[$1],[F77],[cat > conftest.$ac_ext <<EOF
3557      subroutine foo
3558      implicit none
3559      integer*4 a
3560      a=0
3561      return
3562      end
3563EOF
3564],[$1],[GCJ],[cat > conftest.$ac_ext <<EOF
3565public class foo {
3566  private int a;
3567  public void bar (void) {
3568    a = 0;
3569  }
3570};
3571EOF
3572])
3573dnl Parse the compiler output and extract the necessary
3574dnl objects, libraries and library flags.
3575if AC_TRY_EVAL(ac_compile); then
3576  # Parse the compiler output and extract the necessary
3577  # objects, libraries and library flags.
3578
3579  # Sentinel used to keep track of whether or not we are before
3580  # the conftest object file.
3581  pre_test_object_deps_done=no
3582
3583  # The `*' in the case matches for architectures that use `case' in
3584  # $output_verbose_cmd can trigger glob expansion during the loop
3585  # eval without this substitution.
3586  output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
3587
3588  for p in `eval $output_verbose_link_cmd`; do
3589    case $p in
3590
3591    -L* | -R* | -l*)
3592       # Some compilers place space between "-{L,R}" and the path.
3593       # Remove the space.
3594       if test $p = "-L" \
3595	  || test $p = "-R"; then
3596	 prev=$p
3597	 continue
3598       else
3599	 prev=
3600       fi
3601
3602       if test "$pre_test_object_deps_done" = no; then
3603	 case $p in
3604	 -L* | -R*)
3605	   # Internal compiler library paths should come after those
3606	   # provided the user.  The postdeps already come after the
3607	   # user supplied libs so there is no need to process them.
3608	   if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
3609	     _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
3610	   else
3611	     _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
3612	   fi
3613	   ;;
3614	 # The "-l" case would never come before the object being
3615	 # linked, so don't bother handling this case.
3616	 esac
3617       else
3618	 if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then
3619	   _LT_AC_TAGVAR(postdeps, $1)="${prev}${p}"
3620	 else
3621	   _LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}"
3622	 fi
3623       fi
3624       ;;
3625
3626    *.$objext)
3627       # This assumes that the test object file only shows up
3628       # once in the compiler output.
3629       if test "$p" = "conftest.$objext"; then
3630	 pre_test_object_deps_done=yes
3631	 continue
3632       fi
3633
3634       if test "$pre_test_object_deps_done" = no; then
3635	 if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then
3636	   _LT_AC_TAGVAR(predep_objects, $1)="$p"
3637	 else
3638	   _LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p"
3639	 fi
3640       else
3641	 if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then
3642	   _LT_AC_TAGVAR(postdep_objects, $1)="$p"
3643	 else
3644	   _LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p"
3645	 fi
3646       fi
3647       ;;
3648
3649    *) ;; # Ignore the rest.
3650
3651    esac
3652  done
3653
3654  # Clean up.
3655  rm -f a.out a.exe
3656else
3657  echo "libtool.m4: error: problem compiling $1 test program"
3658fi
3659
3660$rm -f confest.$objext
3661
3662case " $_LT_AC_TAGVAR(postdeps, $1) " in
3663*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
3664esac
3665])# AC_LIBTOOL_POSTDEP_PREDEP
3666
3667# AC_LIBTOOL_LANG_F77_CONFIG
3668# ------------------------
3669# Ensure that the configuration vars for the C compiler are
3670# suitably defined.  Those variables are subsequently used by
3671# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3672AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)])
3673AC_DEFUN([_LT_AC_LANG_F77_CONFIG],
3674[AC_REQUIRE([AC_PROG_F77])
3675AC_LANG_PUSH(Fortran 77)
3676
3677_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3678_LT_AC_TAGVAR(allow_undefined_flag, $1)=
3679_LT_AC_TAGVAR(always_export_symbols, $1)=no
3680_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
3681_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
3682_LT_AC_TAGVAR(hardcode_direct, $1)=no
3683_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
3684_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
3685_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
3686_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
3687_LT_AC_TAGVAR(hardcode_automatic, $1)=no
3688_LT_AC_TAGVAR(module_cmds, $1)=
3689_LT_AC_TAGVAR(module_expsym_cmds, $1)=
3690_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
3691_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
3692_LT_AC_TAGVAR(no_undefined_flag, $1)=
3693_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
3694_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
3695
3696# Source file extension for f77 test sources.
3697ac_ext=f
3698
3699# Object file extension for compiled f77 test sources.
3700objext=o
3701_LT_AC_TAGVAR(objext, $1)=$objext
3702
3703# Code to be used in simple compile tests
3704lt_simple_compile_test_code="      subroutine t\n      return\n      end\n"
3705
3706# Code to be used in simple link tests
3707lt_simple_link_test_code="      program t\n      end\n"
3708
3709# ltmain only uses $CC for tagged configurations so make sure $CC is set.
3710_LT_AC_SYS_COMPILER
3711
3712# Allow CC to be a program name with arguments.
3713lt_save_CC="$CC"
3714CC=${F77-"f77"}
3715compiler=$CC
3716_LT_AC_TAGVAR(compiler, $1)=$CC
3717cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
3718
3719AC_MSG_CHECKING([if libtool supports shared libraries])
3720AC_MSG_RESULT([$can_build_shared])
3721
3722AC_MSG_CHECKING([whether to build shared libraries])
3723test "$can_build_shared" = "no" && enable_shared=no
3724
3725# On AIX, shared libraries and static libraries use the same namespace, and
3726# are all built from PIC.
3727case "$host_os" in
3728aix3*)
3729  test "$enable_shared" = yes && enable_static=no
3730  if test -n "$RANLIB"; then
3731    archive_cmds="$archive_cmds~\$RANLIB \$lib"
3732    postinstall_cmds='$RANLIB $lib'
3733  fi
3734  ;;
3735aix4* | aix5*)
3736  test "$enable_shared" = yes && enable_static=no
3737  ;;
3738esac
3739AC_MSG_RESULT([$enable_shared])
3740
3741AC_MSG_CHECKING([whether to build static libraries])
3742# Make sure either enable_shared or enable_static is yes.
3743test "$enable_shared" = yes || enable_static=yes
3744AC_MSG_RESULT([$enable_static])
3745
3746test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
3747
3748_LT_AC_TAGVAR(GCC, $1)="$G77"
3749_LT_AC_TAGVAR(LD, $1)="$LD"
3750
3751AC_LIBTOOL_PROG_COMPILER_PIC($1)
3752AC_LIBTOOL_PROG_CC_C_O($1)
3753AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
3754AC_LIBTOOL_PROG_LD_SHLIBS($1)
3755AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
3756AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
3757AC_LIBTOOL_SYS_LIB_STRIP
3758
3759
3760AC_LIBTOOL_CONFIG($1)
3761
3762AC_LANG_POP
3763CC="$lt_save_CC"
3764])# AC_LIBTOOL_LANG_F77_CONFIG
3765
3766
3767# AC_LIBTOOL_LANG_GCJ_CONFIG
3768# --------------------------
3769# Ensure that the configuration vars for the C compiler are
3770# suitably defined.  Those variables are subsequently used by
3771# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3772AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)])
3773AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG],
3774[AC_LANG_SAVE
3775
3776# Source file extension for Java test sources.
3777ac_ext=java
3778
3779# Object file extension for compiled Java test sources.
3780objext=o
3781_LT_AC_TAGVAR(objext, $1)=$objext
3782
3783# Code to be used in simple compile tests
3784lt_simple_compile_test_code="class foo {}\n"
3785
3786# Code to be used in simple link tests
3787lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }\n'
3788
3789# ltmain only uses $CC for tagged configurations so make sure $CC is set.
3790_LT_AC_SYS_COMPILER
3791
3792# Allow CC to be a program name with arguments.
3793lt_save_CC="$CC"
3794CC=${GCJ-"gcj"}
3795compiler=$CC
3796_LT_AC_TAGVAR(compiler, $1)=$CC
3797
3798# GCJ did not exist at the time GCC didn't implicitly link libc in.
3799_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3800
3801## CAVEAT EMPTOR:
3802## There is no encapsulation within the following macros, do not change
3803## the running order or otherwise move them around unless you know exactly
3804## what you are doing...
3805AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
3806AC_LIBTOOL_PROG_COMPILER_PIC($1)
3807AC_LIBTOOL_PROG_CC_C_O($1)
3808AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
3809AC_LIBTOOL_PROG_LD_SHLIBS($1)
3810AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
3811AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
3812AC_LIBTOOL_SYS_LIB_STRIP
3813AC_LIBTOOL_DLOPEN_SELF($1)
3814
3815AC_LIBTOOL_CONFIG($1)
3816
3817AC_LANG_RESTORE
3818CC="$lt_save_CC"
3819])# AC_LIBTOOL_LANG_GCJ_CONFIG
3820
3821
3822# AC_LIBTOOL_LANG_RC_CONFIG
3823# --------------------------
3824# Ensure that the configuration vars for the Windows resource compiler are
3825# suitably defined.  Those variables are subsequently used by
3826# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3827AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)])
3828AC_DEFUN([_LT_AC_LANG_RC_CONFIG],
3829[AC_LANG_SAVE
3830
3831# Source file extension for RC test sources.
3832ac_ext=rc
3833
3834# Object file extension for compiled RC test sources.
3835objext=o
3836_LT_AC_TAGVAR(objext, $1)=$objext
3837
3838# Code to be used in simple compile tests
3839lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n'
3840
3841# Code to be used in simple link tests
3842lt_simple_link_test_code="$lt_simple_compile_test_code"
3843
3844# ltmain only uses $CC for tagged configurations so make sure $CC is set.
3845_LT_AC_SYS_COMPILER
3846
3847# Allow CC to be a program name with arguments.
3848lt_save_CC="$CC"
3849CC=${RC-"windres"}
3850compiler=$CC
3851_LT_AC_TAGVAR(compiler, $1)=$CC
3852_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
3853
3854AC_LIBTOOL_CONFIG($1)
3855
3856AC_LANG_RESTORE
3857CC="$lt_save_CC"
3858])# AC_LIBTOOL_LANG_RC_CONFIG
3859
3860
3861# AC_LIBTOOL_CONFIG([TAGNAME])
3862# ----------------------------
3863# If TAGNAME is not passed, then create an initial libtool script
3864# with a default configuration from the untagged config vars.  Otherwise
3865# add code to config.status for appending the configuration named by
3866# TAGNAME from the matching tagged config vars.
3867AC_DEFUN([AC_LIBTOOL_CONFIG],
3868[# The else clause should only fire when bootstrapping the
3869# libtool distribution, otherwise you forgot to ship ltmain.sh
3870# with your package, and you will get complaints that there are
3871# no rules to generate ltmain.sh.
3872if test -f "$ltmain"; then
3873  # See if we are running on zsh, and set the options which allow our commands through
3874  # without removal of \ escapes.
3875  if test -n "${ZSH_VERSION+set}" ; then
3876    setopt NO_GLOB_SUBST
3877  fi
3878  # Now quote all the things that may contain metacharacters while being
3879  # careful not to overquote the AC_SUBSTed values.  We take copies of the
3880  # variables and quote the copies for generation of the libtool script.
3881  for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \
3882    SED SHELL STRIP \
3883    libname_spec library_names_spec soname_spec extract_expsyms_cmds \
3884    old_striplib striplib file_magic_cmd finish_cmds finish_eval \
3885    deplibs_check_method reload_flag reload_cmds need_locks \
3886    lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \
3887    lt_cv_sys_global_symbol_to_c_name_address \
3888    sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
3889    old_postinstall_cmds old_postuninstall_cmds \
3890    _LT_AC_TAGVAR(compiler, $1) \
3891    _LT_AC_TAGVAR(CC, $1) \
3892    _LT_AC_TAGVAR(LD, $1) \
3893    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \
3894    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \
3895    _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \
3896    _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \
3897    _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \
3898    _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \
3899    _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \
3900    _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \
3901    _LT_AC_TAGVAR(old_archive_cmds, $1) \
3902    _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \
3903    _LT_AC_TAGVAR(predep_objects, $1) \
3904    _LT_AC_TAGVAR(postdep_objects, $1) \
3905    _LT_AC_TAGVAR(predeps, $1) \
3906    _LT_AC_TAGVAR(postdeps, $1) \
3907    _LT_AC_TAGVAR(compiler_lib_search_path, $1) \
3908    _LT_AC_TAGVAR(archive_cmds, $1) \
3909    _LT_AC_TAGVAR(archive_expsym_cmds, $1) \
3910    _LT_AC_TAGVAR(postinstall_cmds, $1) \
3911    _LT_AC_TAGVAR(postuninstall_cmds, $1) \
3912    _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \
3913    _LT_AC_TAGVAR(allow_undefined_flag, $1) \
3914    _LT_AC_TAGVAR(no_undefined_flag, $1) \
3915    _LT_AC_TAGVAR(export_symbols_cmds, $1) \
3916    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \
3917    _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \
3918    _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \
3919    _LT_AC_TAGVAR(hardcode_automatic, $1) \
3920    _LT_AC_TAGVAR(module_cmds, $1) \
3921    _LT_AC_TAGVAR(module_expsym_cmds, $1) \
3922    _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \
3923    _LT_AC_TAGVAR(exclude_expsyms, $1) \
3924    _LT_AC_TAGVAR(include_expsyms, $1); do
3925
3926    case $var in
3927    _LT_AC_TAGVAR(old_archive_cmds, $1) | \
3928    _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \
3929    _LT_AC_TAGVAR(archive_cmds, $1) | \
3930    _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \
3931    _LT_AC_TAGVAR(module_cmds, $1) | \
3932    _LT_AC_TAGVAR(module_expsym_cmds, $1) | \
3933    _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \
3934    _LT_AC_TAGVAR(export_symbols_cmds, $1) | \
3935    extract_expsyms_cmds | reload_cmds | finish_cmds | \
3936    postinstall_cmds | postuninstall_cmds | \
3937    old_postinstall_cmds | old_postuninstall_cmds | \
3938    sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
3939      # Double-quote double-evaled strings.
3940      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
3941      ;;
3942    *)
3943      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
3944      ;;
3945    esac
3946  done
3947
3948  case $lt_echo in
3949  *'\[$]0 --fallback-echo"')
3950    lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'`
3951    ;;
3952  esac
3953
3954ifelse([$1], [],
3955  [cfgfile="${ofile}T"
3956  trap "$rm \"$cfgfile\"; exit 1" 1 2 15
3957  $rm -f "$cfgfile"
3958  AC_MSG_NOTICE([creating $ofile])],
3959  [cfgfile="$ofile"])
3960
3961  cat <<__EOF__ >> "$cfgfile"
3962ifelse([$1], [],
3963[#! $SHELL
3964
3965# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
3966# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
3967# NOTE: Changes made to this file will be lost: look at ltmain.sh.
3968#
3969# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
3970# Free Software Foundation, Inc.
3971#
3972# This file is part of GNU Libtool:
3973# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
3974#
3975# This program is free software; you can redistribute it and/or modify
3976# it under the terms of the GNU General Public License as published by
3977# the Free Software Foundation; either version 2 of the License, or
3978# (at your option) any later version.
3979#
3980# This program is distributed in the hope that it will be useful, but
3981# WITHOUT ANY WARRANTY; without even the implied warranty of
3982# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
3983# General Public License for more details.
3984#
3985# You should have received a copy of the GNU General Public License
3986# along with this program; if not, write to the Free Software
3987# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
3988#
3989# As a special exception to the GNU General Public License, if you
3990# distribute this file as part of a program that contains a
3991# configuration script generated by Autoconf, you may include it under
3992# the same distribution terms that you use for the rest of that program.
3993
3994# A sed program that does not truncate output.
3995SED=$lt_SED
3996
3997# Sed that helps us avoid accidentally triggering echo(1) options like -n.
3998Xsed="$SED -e s/^X//"
3999
4000# The HP-UX ksh and POSIX shell print the target directory to stdout
4001# if CDPATH is set.
4002(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
4003
4004# The names of the tagged configurations supported by this script.
4005available_tags=
4006
4007# ### BEGIN LIBTOOL CONFIG],
4008[# ### BEGIN LIBTOOL TAG CONFIG: $tagname])
4009
4010# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
4011
4012# Shell to use when invoking shell scripts.
4013SHELL=$lt_SHELL
4014
4015# Whether or not to build shared libraries.
4016build_libtool_libs=$enable_shared
4017
4018# Whether or not to build static libraries.
4019build_old_libs=$enable_static
4020
4021# Whether or not to add -lc for building shared libraries.
4022build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)
4023
4024# Whether or not to disallow shared libs when runtime libs are static
4025allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)
4026
4027# Whether or not to optimize for fast installation.
4028fast_install=$enable_fast_install
4029
4030# The host system.
4031host_alias=$host_alias
4032host=$host
4033
4034# An echo program that does not interpret backslashes.
4035echo=$lt_echo
4036
4037# The archiver.
4038AR=$lt_AR
4039AR_FLAGS=$lt_AR_FLAGS
4040
4041# A C compiler.
4042LTCC=$lt_LTCC
4043
4044# A language-specific compiler.
4045CC=$lt_[]_LT_AC_TAGVAR(compiler, $1)
4046
4047# Is the compiler the GNU C compiler?
4048with_gcc=$_LT_AC_TAGVAR(GCC, $1)
4049
4050# An ERE matcher.
4051EGREP=$lt_EGREP
4052
4053# The linker used to build libraries.
4054LD=$lt_[]_LT_AC_TAGVAR(LD, $1)
4055
4056# Whether we need hard or soft links.
4057LN_S=$lt_LN_S
4058
4059# A BSD-compatible nm program.
4060NM=$lt_NM
4061
4062# A symbol stripping program
4063STRIP=$lt_STRIP
4064
4065# Used to examine libraries when file_magic_cmd begins "file"
4066MAGIC_CMD=$MAGIC_CMD
4067
4068# Used on cygwin: DLL creation program.
4069DLLTOOL="$DLLTOOL"
4070
4071# Used on cygwin: object dumper.
4072OBJDUMP="$OBJDUMP"
4073
4074# Used on cygwin: assembler.
4075AS="$AS"
4076
4077# The name of the directory that contains temporary libtool files.
4078objdir=$objdir
4079
4080# How to create reloadable object files.
4081reload_flag=$lt_reload_flag
4082reload_cmds=$lt_reload_cmds
4083
4084# How to pass a linker flag through the compiler.
4085wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
4086
4087# Object file suffix (normally "o").
4088objext="$ac_objext"
4089
4090# Old archive suffix (normally "a").
4091libext="$libext"
4092
4093# Shared library suffix (normally ".so").
4094shrext_cmds='$shrext_cmds'
4095
4096# Executable file suffix (normally "").
4097exeext="$exeext"
4098
4099# Additional compiler flags for building library objects.
4100pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
4101pic_mode=$pic_mode
4102
4103# What is the maximum length of a command?
4104max_cmd_len=$lt_cv_sys_max_cmd_len
4105
4106# Does compiler simultaneously support -c and -o options?
4107compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)
4108
4109# Must we lock files when doing compilation ?
4110need_locks=$lt_need_locks
4111
4112# Do we need the lib prefix for modules?
4113need_lib_prefix=$need_lib_prefix
4114
4115# Do we need a version for libraries?
4116need_version=$need_version
4117
4118# Whether dlopen is supported.
4119dlopen_support=$enable_dlopen
4120
4121# Whether dlopen of programs is supported.
4122dlopen_self=$enable_dlopen_self
4123
4124# Whether dlopen of statically linked programs is supported.
4125dlopen_self_static=$enable_dlopen_self_static
4126
4127# Compiler flag to prevent dynamic linking.
4128link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1)
4129
4130# Compiler flag to turn off builtin functions.
4131no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)
4132
4133# Compiler flag to allow reflexive dlopens.
4134export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)
4135
4136# Compiler flag to generate shared objects directly from archives.
4137whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1)
4138
4139# Compiler flag to generate thread-safe objects.
4140thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1)
4141
4142# Library versioning type.
4143version_type=$version_type
4144
4145# Format of library name prefix.
4146libname_spec=$lt_libname_spec
4147
4148# List of archive names.  First name is the real one, the rest are links.
4149# The last name is the one that the linker finds with -lNAME.
4150library_names_spec=$lt_library_names_spec
4151
4152# The coded name of the library, if different from the real name.
4153soname_spec=$lt_soname_spec
4154
4155# Commands used to build and install an old-style archive.
4156RANLIB=$lt_RANLIB
4157old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1)
4158old_postinstall_cmds=$lt_old_postinstall_cmds
4159old_postuninstall_cmds=$lt_old_postuninstall_cmds
4160
4161# Create an old-style archive from a shared archive.
4162old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1)
4163
4164# Create a temporary old-style archive to link instead of a shared archive.
4165old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)
4166
4167# Commands used to build and install a shared archive.
4168archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1)
4169archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1)
4170postinstall_cmds=$lt_postinstall_cmds
4171postuninstall_cmds=$lt_postuninstall_cmds
4172
4173# Commands used to build a loadable module (assumed same as above if empty)
4174module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1)
4175module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1)
4176
4177# Commands to strip libraries.
4178old_striplib=$lt_old_striplib
4179striplib=$lt_striplib
4180
4181# Dependencies to place before the objects being linked to create a
4182# shared library.
4183predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
4184
4185# Dependencies to place after the objects being linked to create a
4186# shared library.
4187postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
4188
4189# Dependencies to place before the objects being linked to create a
4190# shared library.
4191predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
4192
4193# Dependencies to place after the objects being linked to create a
4194# shared library.
4195postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1)
4196
4197# The library search path used internally by the compiler when linking
4198# a shared library.
4199compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
4200
4201# Method to check whether dependent libraries are shared objects.
4202deplibs_check_method=$lt_deplibs_check_method
4203
4204# Command to use when deplibs_check_method == file_magic.
4205file_magic_cmd=$lt_file_magic_cmd
4206
4207# Flag that allows shared libraries with undefined symbols to be built.
4208allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1)
4209
4210# Flag that forces no undefined symbols.
4211no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1)
4212
4213# Commands used to finish a libtool library installation in a directory.
4214finish_cmds=$lt_finish_cmds
4215
4216# Same as above, but a single script fragment to be evaled but not shown.
4217finish_eval=$lt_finish_eval
4218
4219# Take the output of nm and produce a listing of raw symbols and C names.
4220global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
4221
4222# Transform the output of nm in a proper C declaration
4223global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
4224
4225# Transform the output of nm in a C name address pair
4226global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
4227
4228# This is the shared library runtime path variable.
4229runpath_var=$runpath_var
4230
4231# This is the shared library path variable.
4232shlibpath_var=$shlibpath_var
4233
4234# Is shlibpath searched before the hard-coded library search path?
4235shlibpath_overrides_runpath=$shlibpath_overrides_runpath
4236
4237# How to hardcode a shared library path into an executable.
4238hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1)
4239
4240# Whether we should hardcode library paths into libraries.
4241hardcode_into_libs=$hardcode_into_libs
4242
4243# Flag to hardcode \$libdir into a binary during linking.
4244# This must work even if \$libdir does not exist.
4245hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)
4246
4247# If ld is used when linking, flag to hardcode \$libdir into
4248# a binary during linking. This must work even if \$libdir does
4249# not exist.
4250hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)
4251
4252# Whether we need a single -rpath flag with a separated argument.
4253hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1)
4254
4255# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the
4256# resulting binary.
4257hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1)
4258
4259# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
4260# resulting binary.
4261hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1)
4262
4263# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
4264# the resulting binary.
4265hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)
4266
4267# Set to yes if building a shared library automatically hardcodes DIR into the library
4268# and all subsequent libraries and executables linked against it.
4269hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1)
4270
4271# Variables whose values should be saved in libtool wrapper scripts and
4272# restored at relink time.
4273variables_saved_for_relink="$variables_saved_for_relink"
4274
4275# Whether libtool must link a program against all its dependency libraries.
4276link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
4277
4278# Compile-time system search path for libraries
4279sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
4280
4281# Run-time system search path for libraries
4282sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
4283
4284# Fix the shell variable \$srcfile for the compiler.
4285fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)"
4286
4287# Set to yes if exported symbols are required.
4288always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1)
4289
4290# The commands to list exported symbols.
4291export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1)
4292
4293# The commands to extract the exported symbol list from a shared archive.
4294extract_expsyms_cmds=$lt_extract_expsyms_cmds
4295
4296# Symbols that should not be listed in the preloaded symbols.
4297exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1)
4298
4299# Symbols that must always be exported.
4300include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1)
4301
4302ifelse([$1],[],
4303[# ### END LIBTOOL CONFIG],
4304[# ### END LIBTOOL TAG CONFIG: $tagname])
4305
4306__EOF__
4307
4308ifelse([$1],[], [
4309  case $host_os in
4310  aix3*)
4311    cat <<\EOF >> "$cfgfile"
4312
4313# AIX sometimes has problems with the GCC collect2 program.  For some
4314# reason, if we set the COLLECT_NAMES environment variable, the problems
4315# vanish in a puff of smoke.
4316if test "X${COLLECT_NAMES+set}" != Xset; then
4317  COLLECT_NAMES=
4318  export COLLECT_NAMES
4319fi
4320EOF
4321    ;;
4322  esac
4323
4324  # We use sed instead of cat because bash on DJGPP gets confused if
4325  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
4326  # text mode, it properly converts lines to CR/LF.  This bash problem
4327  # is reportedly fixed, but why not run on old versions too?
4328  sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1)
4329
4330  mv -f "$cfgfile" "$ofile" || \
4331    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
4332  chmod +x "$ofile"
4333])
4334else
4335  # If there is no Makefile yet, we rely on a make rule to execute
4336  # `config.status --recheck' to rerun these tests and create the
4337  # libtool script then.
4338  ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'`
4339  if test -f "$ltmain_in"; then
4340    test -f Makefile && make "$ltmain"
4341  fi
4342fi
4343])# AC_LIBTOOL_CONFIG
4344
4345
4346# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME])
4347# -------------------------------------------
4348AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI],
4349[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
4350
4351_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
4352
4353if test "$GCC" = yes; then
4354  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
4355
4356  AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
4357    lt_cv_prog_compiler_rtti_exceptions,
4358    [-fno-rtti -fno-exceptions], [],
4359    [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
4360fi
4361])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI
4362
4363
4364# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
4365# ---------------------------------
4366AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
4367[AC_REQUIRE([AC_CANONICAL_HOST])
4368AC_REQUIRE([AC_PROG_NM])
4369AC_REQUIRE([AC_OBJEXT])
4370# Check for command to grab the raw symbol name followed by C symbol from nm.
4371AC_MSG_CHECKING([command to parse $NM output from $compiler object])
4372AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
4373[
4374# These are sane defaults that work on at least a few old systems.
4375# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
4376
4377# Character class describing NM global symbol codes.
4378symcode='[[BCDEGRST]]'
4379
4380# Regexp to match symbols that can be accessed directly from C.
4381sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
4382
4383# Transform the above into a raw symbol and a C symbol.
4384symxfrm='\1 \2\3 \3'
4385
4386# Transform an extracted symbol line into a proper C declaration
4387lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'"
4388
4389# Transform an extracted symbol line into symbol name and symbol address
4390lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
4391
4392# Define system-specific variables.
4393case $host_os in
4394aix*)
4395  symcode='[[BCDT]]'
4396  ;;
4397cygwin* | mingw* | pw32*)
4398  symcode='[[ABCDGISTW]]'
4399  ;;
4400hpux*) # Its linker distinguishes data from code symbols
4401  if test "$host_cpu" = ia64; then
4402    symcode='[[ABCDEGRST]]'
4403  fi
4404  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
4405  lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
4406  ;;
4407linux*)
4408  if test "$host_cpu" = ia64; then
4409    symcode='[[ABCDGIRSTW]]'
4410    lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
4411    lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
4412  fi
4413  ;;
4414irix* | nonstopux*)
4415  symcode='[[BCDEGRST]]'
4416  ;;
4417osf*)
4418  symcode='[[BCDEGQRST]]'
4419  ;;
4420solaris* | sysv5*)
4421  symcode='[[BDRT]]'
4422  ;;
4423sysv4)
4424  symcode='[[DFNSTU]]'
4425  ;;
4426esac
4427
4428# Handle CRLF in mingw tool chain
4429opt_cr=
4430case $build_os in
4431mingw*)
4432  opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
4433  ;;
4434esac
4435
4436# If we're using GNU nm, then use its standard symbol codes.
4437case `$NM -V 2>&1` in
4438*GNU* | *'with BFD'*)
4439  symcode='[[ABCDGIRSTW]]' ;;
4440esac
4441
4442# Try without a prefix undercore, then with it.
4443for ac_symprfx in "" "_"; do
4444
4445  # Write the raw and C identifiers.
4446  lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ 	]]\($symcode$symcode*\)[[ 	]][[ 	]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
4447
4448  # Check to see that the pipe works correctly.
4449  pipe_works=no
4450
4451  rm -f conftest*
4452  cat > conftest.$ac_ext <<EOF
4453#ifdef __cplusplus
4454extern "C" {
4455#endif
4456char nm_test_var;
4457void nm_test_func(){}
4458#ifdef __cplusplus
4459}
4460#endif
4461int main(){nm_test_var='a';nm_test_func();return(0);}
4462EOF
4463
4464  if AC_TRY_EVAL(ac_compile); then
4465    # Now try to grab the symbols.
4466    nlist=conftest.nm
4467    if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
4468      # Try sorting and uniquifying the output.
4469      if sort "$nlist" | uniq > "$nlist"T; then
4470	mv -f "$nlist"T "$nlist"
4471      else
4472	rm -f "$nlist"T
4473      fi
4474
4475      # Make sure that we snagged all the symbols we need.
4476      if grep ' nm_test_var$' "$nlist" >/dev/null; then
4477	if grep ' nm_test_func$' "$nlist" >/dev/null; then
4478	  cat <<EOF > conftest.$ac_ext
4479#ifdef __cplusplus
4480extern "C" {
4481#endif
4482
4483EOF
4484	  # Now generate the symbol file.
4485	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext'
4486
4487	  cat <<EOF >> conftest.$ac_ext
4488#if defined (__STDC__) && __STDC__
4489# define lt_ptr_t void *
4490#else
4491# define lt_ptr_t char *
4492# define const
4493#endif
4494
4495/* The mapping between symbol names and symbols. */
4496const struct {
4497  const char *name;
4498  lt_ptr_t address;
4499}
4500lt_preloaded_symbols[[]] =
4501{
4502EOF
4503	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext
4504	  cat <<\EOF >> conftest.$ac_ext
4505  {0, (lt_ptr_t) 0}
4506};
4507
4508#ifdef __cplusplus
4509}
4510#endif
4511EOF
4512	  # Now try linking the two files.
4513	  mv conftest.$ac_objext conftstm.$ac_objext
4514	  lt_save_LIBS="$LIBS"
4515	  lt_save_CFLAGS="$CFLAGS"
4516	  LIBS="conftstm.$ac_objext"
4517	  CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4518	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
4519	    pipe_works=yes
4520	  fi
4521	  LIBS="$lt_save_LIBS"
4522	  CFLAGS="$lt_save_CFLAGS"
4523	else
4524	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4525	fi
4526      else
4527	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4528      fi
4529    else
4530      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4531    fi
4532  else
4533    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4534    cat conftest.$ac_ext >&5
4535  fi
4536  rm -f conftest* conftst*
4537
4538  # Do not use the global_symbol_pipe unless it works.
4539  if test "$pipe_works" = yes; then
4540    break
4541  else
4542    lt_cv_sys_global_symbol_pipe=
4543  fi
4544done
4545])
4546if test -z "$lt_cv_sys_global_symbol_pipe"; then
4547  lt_cv_sys_global_symbol_to_cdecl=
4548fi
4549if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4550  AC_MSG_RESULT(failed)
4551else
4552  AC_MSG_RESULT(ok)
4553fi
4554]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
4555
4556
4557# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME])
4558# ---------------------------------------
4559AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC],
4560[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)=
4561_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
4562_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=
4563
4564AC_MSG_CHECKING([for $compiler option to produce PIC])
4565 ifelse([$1],[CXX],[
4566  # C++ specific cases for pic, static, wl, etc.
4567  if test "$GXX" = yes; then
4568    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4569    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
4570
4571    case $host_os in
4572    aix*)
4573      # All AIX code is PIC.
4574      if test "$host_cpu" = ia64; then
4575	# AIX 5 now supports IA64 processor
4576	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4577      fi
4578      ;;
4579    amigaos*)
4580      # FIXME: we need at least 68020 code to build shared libraries, but
4581      # adding the `-m68020' flag to GCC prevents building anything better,
4582      # like `-m68040'.
4583      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4584      ;;
4585    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4586      # PIC is the default for these OSes.
4587      ;;
4588    mingw* | os2* | pw32*)
4589      # This hack is so that the source file can tell whether it is being
4590      # built for inclusion in a dll (and should export symbols for example).
4591      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
4592      ;;
4593    darwin* | rhapsody*)
4594      # PIC is the default on this platform
4595      # Common symbols not allowed in MH_DYLIB files
4596      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4597      ;;
4598    *djgpp*)
4599      # DJGPP does not support shared libraries at all
4600      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
4601      ;;
4602    sysv4*MP*)
4603      if test -d /usr/nec; then
4604	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4605      fi
4606      ;;
4607    hpux*)
4608      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4609      # not for PA HP-UX.
4610      case "$host_cpu" in
4611      hppa*64*|ia64*)
4612	;;
4613      *)
4614	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4615	;;
4616      esac
4617      ;;
4618    *)
4619      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4620      ;;
4621    esac
4622  else
4623    case $host_os in
4624      aix4* | aix5*)
4625	# All AIX code is PIC.
4626	if test "$host_cpu" = ia64; then
4627	  # AIX 5 now supports IA64 processor
4628	  _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4629	else
4630	  _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4631	fi
4632	;;
4633      chorus*)
4634	case $cc_basename in
4635	cxch68)
4636	  # Green Hills C++ Compiler
4637	  # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
4638	  ;;
4639	esac
4640	;;
4641       darwin*)
4642         # PIC is the default on this platform
4643         # Common symbols not allowed in MH_DYLIB files
4644         case "$cc_basename" in
4645           xlc*)
4646           _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon'
4647           _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4648           ;;
4649         esac
4650       ;;
4651      dgux*)
4652	case $cc_basename in
4653	  ec++)
4654	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4655	    ;;
4656	  ghcx)
4657	    # Green Hills C++ Compiler
4658	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4659	    ;;
4660	  *)
4661	    ;;
4662	esac
4663	;;
4664      freebsd* | kfreebsd*-gnu)
4665	# FreeBSD uses GNU C++
4666	;;
4667      hpux9* | hpux10* | hpux11*)
4668	case $cc_basename in
4669	  CC)
4670	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4671	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
4672	    if test "$host_cpu" != ia64; then
4673	      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4674	    fi
4675	    ;;
4676	  aCC)
4677	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4678	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
4679	    case "$host_cpu" in
4680	    hppa*64*|ia64*)
4681	      # +Z the default
4682	      ;;
4683	    *)
4684	      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4685	      ;;
4686	    esac
4687	    ;;
4688	  *)
4689	    ;;
4690	esac
4691	;;
4692      irix5* | irix6* | nonstopux*)
4693	case $cc_basename in
4694	  CC)
4695	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4696	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4697	    # CC pic flag -KPIC is the default.
4698	    ;;
4699	  *)
4700	    ;;
4701	esac
4702	;;
4703      linux*)
4704	case $cc_basename in
4705	  KCC)
4706	    # KAI C++ Compiler
4707	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4708	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4709	    ;;
4710	  icpc)
4711	    # Intel C++
4712	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4713	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4714	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
4715	    ;;
4716	  cxx)
4717	    # Compaq C++
4718	    # Make sure the PIC flag is empty.  It appears that all Alpha
4719	    # Linux and Compaq Tru64 Unix objects are PIC.
4720	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
4721	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4722	    ;;
4723	  *)
4724	    ;;
4725	esac
4726	;;
4727      lynxos*)
4728	;;
4729      m88k*)
4730	;;
4731      mvs*)
4732	case $cc_basename in
4733	  cxx)
4734	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4735	    ;;
4736	  *)
4737	    ;;
4738	esac
4739	;;
4740      netbsd*)
4741	;;
4742      osf3* | osf4* | osf5*)
4743	case $cc_basename in
4744	  KCC)
4745	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4746	    ;;
4747	  RCC)
4748	    # Rational C++ 2.4.1
4749	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4750	    ;;
4751	  cxx)
4752	    # Digital/Compaq C++
4753	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4754	    # Make sure the PIC flag is empty.  It appears that all Alpha
4755	    # Linux and Compaq Tru64 Unix objects are PIC.
4756	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
4757	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4758	    ;;
4759	  *)
4760	    ;;
4761	esac
4762	;;
4763      psos*)
4764	;;
4765      sco*)
4766	case $cc_basename in
4767	  CC)
4768	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4769	    ;;
4770	  *)
4771	    ;;
4772	esac
4773	;;
4774      solaris*)
4775	case $cc_basename in
4776	  CC)
4777	    # Sun C++ 4.2, 5.x and Centerline C++
4778	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4779	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4780	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4781	    ;;
4782	  gcx)
4783	    # Green Hills C++ Compiler
4784	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4785	    ;;
4786	  *)
4787	    ;;
4788	esac
4789	;;
4790      sunos4*)
4791	case $cc_basename in
4792	  CC)
4793	    # Sun C++ 4.x
4794	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4795	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4796	    ;;
4797	  lcc)
4798	    # Lucid
4799	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4800	    ;;
4801	  *)
4802	    ;;
4803	esac
4804	;;
4805      tandem*)
4806	case $cc_basename in
4807	  NCC)
4808	    # NonStop-UX NCC 3.20
4809	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4810	    ;;
4811	  *)
4812	    ;;
4813	esac
4814	;;
4815      unixware*)
4816	;;
4817      vxworks*)
4818	;;
4819      *)
4820	_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4821	;;
4822    esac
4823  fi
4824],
4825[
4826  if test "$GCC" = yes; then
4827    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4828    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
4829
4830    case $host_os in
4831      aix*)
4832      # All AIX code is PIC.
4833      if test "$host_cpu" = ia64; then
4834	# AIX 5 now supports IA64 processor
4835	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4836      fi
4837      ;;
4838
4839    amigaos*)
4840      # FIXME: we need at least 68020 code to build shared libraries, but
4841      # adding the `-m68020' flag to GCC prevents building anything better,
4842      # like `-m68040'.
4843      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4844      ;;
4845
4846    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4847      # PIC is the default for these OSes.
4848      ;;
4849
4850    mingw* | pw32* | os2*)
4851      # This hack is so that the source file can tell whether it is being
4852      # built for inclusion in a dll (and should export symbols for example).
4853      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
4854      ;;
4855
4856    darwin* | rhapsody*)
4857      # PIC is the default on this platform
4858      # Common symbols not allowed in MH_DYLIB files
4859      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4860      ;;
4861
4862    msdosdjgpp*)
4863      # Just because we use GCC doesn't mean we suddenly get shared libraries
4864      # on systems that don't support them.
4865      _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4866      enable_shared=no
4867      ;;
4868
4869    sysv4*MP*)
4870      if test -d /usr/nec; then
4871	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4872      fi
4873      ;;
4874
4875    hpux*)
4876      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4877      # not for PA HP-UX.
4878      case "$host_cpu" in
4879      hppa*64*|ia64*)
4880	# +Z the default
4881	;;
4882      *)
4883	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4884	;;
4885      esac
4886      ;;
4887
4888    *)
4889      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4890      ;;
4891    esac
4892  else
4893    # PORTME Check for flag to pass linker flags through the system compiler.
4894    case $host_os in
4895    aix*)
4896      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4897      if test "$host_cpu" = ia64; then
4898	# AIX 5 now supports IA64 processor
4899	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4900      else
4901	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4902      fi
4903      ;;
4904      darwin*)
4905        # PIC is the default on this platform
4906        # Common symbols not allowed in MH_DYLIB files
4907       case "$cc_basename" in
4908         xlc*)
4909         _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon'
4910         _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4911         ;;
4912       esac
4913       ;;
4914
4915    mingw* | pw32* | os2*)
4916      # This hack is so that the source file can tell whether it is being
4917      # built for inclusion in a dll (and should export symbols for example).
4918      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
4919      ;;
4920
4921    hpux9* | hpux10* | hpux11*)
4922      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4923      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4924      # not for PA HP-UX.
4925      case "$host_cpu" in
4926      hppa*64*|ia64*)
4927	# +Z the default
4928	;;
4929      *)
4930	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4931	;;
4932      esac
4933      # Is there a better lt_prog_compiler_static that works with the bundled CC?
4934      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4935      ;;
4936
4937    irix5* | irix6* | nonstopux*)
4938      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4939      # PIC (with -KPIC) is the default.
4940      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4941      ;;
4942
4943    newsos6)
4944      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4945      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4946      ;;
4947
4948    linux*)
4949      case $CC in
4950      icc* | ecc*)
4951	_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4952	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4953	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
4954        ;;
4955      ccc*)
4956        _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4957        # All Alpha code is PIC.
4958        _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4959        ;;
4960      esac
4961      ;;
4962
4963    osf3* | osf4* | osf5*)
4964      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4965      # All OSF/1 code is PIC.
4966      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4967      ;;
4968
4969    sco3.2v5*)
4970      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic'
4971      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn'
4972      ;;
4973
4974    solaris*)
4975      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4976      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4977      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4978      ;;
4979
4980    sunos4*)
4981      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4982      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4983      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4984      ;;
4985
4986    sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
4987      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4988      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4989      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4990      ;;
4991
4992    sysv4*MP*)
4993      if test -d /usr/nec ;then
4994	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4995	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4996      fi
4997      ;;
4998
4999    uts4*)
5000      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5001      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5002      ;;
5003
5004    *)
5005      _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5006      ;;
5007    esac
5008  fi
5009])
5010AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)])
5011
5012#
5013# Check to make sure the PIC flag actually works.
5014#
5015if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then
5016  AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works],
5017    _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1),
5018    [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [],
5019    [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in
5020     "" | " "*) ;;
5021     *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;;
5022     esac],
5023    [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5024     _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
5025fi
5026case "$host_os" in
5027  # For platforms which do not support PIC, -DPIC is meaningless:
5028  *djgpp*)
5029    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5030    ;;
5031  *)
5032    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])"
5033    ;;
5034esac
5035])
5036
5037
5038# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME])
5039# ------------------------------------
5040# See if the linker supports building shared libraries.
5041AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS],
5042[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5043ifelse([$1],[CXX],[
5044  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5045  case $host_os in
5046  aix4* | aix5*)
5047    # If we're using GNU nm, then we don't want the "-C" option.
5048    # -C means demangle to AIX nm, but means don't demangle with GNU nm
5049    if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
5050      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
5051    else
5052      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
5053    fi
5054    ;;
5055  pw32*)
5056    _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
5057  ;;
5058  cygwin* | mingw*)
5059    _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
5060  ;;
5061  *)
5062    _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5063  ;;
5064  esac
5065],[
5066  runpath_var=
5067  _LT_AC_TAGVAR(allow_undefined_flag, $1)=
5068  _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5069  _LT_AC_TAGVAR(archive_cmds, $1)=
5070  _LT_AC_TAGVAR(archive_expsym_cmds, $1)=
5071  _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)=
5072  _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)=
5073  _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
5074  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
5075  _LT_AC_TAGVAR(thread_safe_flag_spec, $1)=
5076  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
5077  _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
5078  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
5079  _LT_AC_TAGVAR(hardcode_direct, $1)=no
5080  _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
5081  _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5082  _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
5083  _LT_AC_TAGVAR(hardcode_automatic, $1)=no
5084  _LT_AC_TAGVAR(module_cmds, $1)=
5085  _LT_AC_TAGVAR(module_expsym_cmds, $1)=
5086  _LT_AC_TAGVAR(always_export_symbols, $1)=no
5087  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5088  # include_expsyms should be a list of space-separated symbols to be *always*
5089  # included in the symbol list
5090  _LT_AC_TAGVAR(include_expsyms, $1)=
5091  # exclude_expsyms can be an extended regexp of symbols to exclude
5092  # it will be wrapped by ` (' and `)$', so one must not match beginning or
5093  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
5094  # as well as any symbol that contains `d'.
5095  _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_"
5096  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
5097  # platforms (ab)use it in PIC code, but their linkers get confused if
5098  # the symbol is explicitly referenced.  Since portable code cannot
5099  # rely on this symbol name, it's probably fine to never include it in
5100  # preloaded symbol tables.
5101  extract_expsyms_cmds=
5102
5103  case $host_os in
5104  cygwin* | mingw* | pw32*)
5105    # FIXME: the MSVC++ port hasn't been tested in a loooong time
5106    # When not using gcc, we currently assume that we are using
5107    # Microsoft Visual C++.
5108    if test "$GCC" != yes; then
5109      with_gnu_ld=no
5110    fi
5111    ;;
5112  openbsd*)
5113    with_gnu_ld=no
5114    ;;
5115  esac
5116
5117  _LT_AC_TAGVAR(ld_shlibs, $1)=yes
5118  if test "$with_gnu_ld" = yes; then
5119    # If archive_cmds runs LD, not CC, wlarc should be empty
5120    wlarc='${wl}'
5121
5122    # See if GNU ld supports shared libraries.
5123    case $host_os in
5124    aix3* | aix4* | aix5*)
5125      # On AIX/PPC, the GNU linker is very broken
5126      if test "$host_cpu" != ia64; then
5127	_LT_AC_TAGVAR(ld_shlibs, $1)=no
5128	cat <<EOF 1>&2
5129
5130*** Warning: the GNU linker, at least up to release 2.9.1, is reported
5131*** to be unable to reliably create shared libraries on AIX.
5132*** Therefore, libtool is disabling shared libraries support.  If you
5133*** really care for shared libraries, you may want to modify your PATH
5134*** so that a non-GNU linker is found, and then restart.
5135
5136EOF
5137      fi
5138      ;;
5139
5140    amigaos*)
5141      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
5142      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5143      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5144
5145      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
5146      # that the semantics of dynamic libraries on AmigaOS, at least up
5147      # to version 4, is to share data among multiple programs linked
5148      # with the same dynamic library.  Since this doesn't match the
5149      # behavior of shared libraries on other platforms, we can't use
5150      # them.
5151      _LT_AC_TAGVAR(ld_shlibs, $1)=no
5152      ;;
5153
5154    beos*)
5155      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
5156	_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
5157	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5158	# support --undefined.  This deserves some investigation.  FIXME
5159	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5160      else
5161	_LT_AC_TAGVAR(ld_shlibs, $1)=no
5162      fi
5163      ;;
5164
5165    cygwin* | mingw* | pw32*)
5166      # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5167      # as there is no search path for DLLs.
5168      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5169      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
5170      _LT_AC_TAGVAR(always_export_symbols, $1)=no
5171      _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5172      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
5173
5174      if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
5175        _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
5176	# If the export-symbols file already is a .def file (1st line
5177	# is EXPORTS), use it as is; otherwise, prepend...
5178	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5179	  cp $export_symbols $output_objdir/$soname.def;
5180	else
5181	  echo EXPORTS > $output_objdir/$soname.def;
5182	  cat $export_symbols >> $output_objdir/$soname.def;
5183	fi~
5184	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000  ${wl}--out-implib,$lib'
5185      else
5186	ld_shlibs=no
5187      fi
5188      ;;
5189
5190    netbsd*)
5191      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
5192	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5193	wlarc=
5194      else
5195	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5196	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5197      fi
5198      ;;
5199
5200    solaris* | sysv5*)
5201      if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
5202	_LT_AC_TAGVAR(ld_shlibs, $1)=no
5203	cat <<EOF 1>&2
5204
5205*** Warning: The releases 2.8.* of the GNU linker cannot reliably
5206*** create shared libraries on Solaris systems.  Therefore, libtool
5207*** is disabling shared libraries support.  We urge you to upgrade GNU
5208*** binutils to release 2.9.1 or newer.  Another option is to modify
5209*** your PATH or compiler configuration so that the native linker is
5210*** used, and then restart.
5211
5212EOF
5213      elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
5214	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5215	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5216      else
5217	_LT_AC_TAGVAR(ld_shlibs, $1)=no
5218      fi
5219      ;;
5220
5221    sunos4*)
5222      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5223      wlarc=
5224      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5225      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5226      ;;
5227
5228  linux*)
5229    if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
5230        tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5231	_LT_AC_TAGVAR(archive_cmds, $1)="$tmp_archive_cmds"
5232      supports_anon_versioning=no
5233      case `$LD -v 2>/dev/null` in
5234        *\ [01].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5235        *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5236        *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5237        *\ 2.11.*) ;; # other 2.11 versions
5238        *) supports_anon_versioning=yes ;;
5239      esac
5240      if test $supports_anon_versioning = yes; then
5241        _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~
5242cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5243$echo "local: *; };" >> $output_objdir/$libname.ver~
5244        $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
5245      else
5246        _LT_AC_TAGVAR(archive_expsym_cmds, $1)="$tmp_archive_cmds"
5247      fi
5248    else
5249      _LT_AC_TAGVAR(ld_shlibs, $1)=no
5250    fi
5251    ;;
5252
5253    *)
5254      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
5255	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5256	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5257      else
5258	_LT_AC_TAGVAR(ld_shlibs, $1)=no
5259      fi
5260      ;;
5261    esac
5262
5263    if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = yes; then
5264      runpath_var=LD_RUN_PATH
5265      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
5266      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5267      # ancient GNU ld didn't support --whole-archive et. al.
5268      if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then
5269 	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5270      else
5271  	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
5272      fi
5273    fi
5274  else
5275    # PORTME fill in a description of your system's linker (not GNU ld)
5276    case $host_os in
5277    aix3*)
5278      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
5279      _LT_AC_TAGVAR(always_export_symbols, $1)=yes
5280      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
5281      # Note: this linker hardcodes the directories in LIBPATH if there
5282      # are no directories specified by -L.
5283      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5284      if test "$GCC" = yes && test -z "$link_static_flag"; then
5285	# Neither direct hardcoding nor static linking is supported with a
5286	# broken collect2.
5287	_LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
5288      fi
5289      ;;
5290
5291    aix4* | aix5*)
5292      if test "$host_cpu" = ia64; then
5293	# On IA64, the linker does run time linking by default, so we don't
5294	# have to do anything special.
5295	aix_use_runtimelinking=no
5296	exp_sym_flag='-Bexport'
5297	no_entry_flag=""
5298      else
5299	# If we're using GNU nm, then we don't want the "-C" option.
5300	# -C means demangle to AIX nm, but means don't demangle with GNU nm
5301	if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
5302	  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
5303	else
5304	  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
5305	fi
5306	aix_use_runtimelinking=no
5307
5308	# Test if we are trying to use run time linking or normal
5309	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
5310	# need to do runtime linking.
5311	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
5312	  for ld_flag in $LDFLAGS; do
5313  	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
5314  	    aix_use_runtimelinking=yes
5315  	    break
5316  	  fi
5317	  done
5318	esac
5319
5320	exp_sym_flag='-bexport'
5321	no_entry_flag='-bnoentry'
5322      fi
5323
5324      # When large executables or shared objects are built, AIX ld can
5325      # have problems creating the table of contents.  If linking a library
5326      # or program results in "error TOC overflow" add -mminimal-toc to
5327      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
5328      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5329
5330      _LT_AC_TAGVAR(archive_cmds, $1)=''
5331      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5332      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
5333      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
5334
5335      if test "$GCC" = yes; then
5336	case $host_os in aix4.[012]|aix4.[012].*)
5337	# We only want to do this on AIX 4.2 and lower, the check
5338	# below for broken collect2 doesn't work under 4.3+
5339	  collect2name=`${CC} -print-prog-name=collect2`
5340	  if test -f "$collect2name" && \
5341  	   strings "$collect2name" | grep resolve_lib_name >/dev/null
5342	  then
5343  	  # We have reworked collect2
5344  	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5345	  else
5346  	  # We have old collect2
5347  	  _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
5348  	  # It fails to find uninstalled libraries when the uninstalled
5349  	  # path is not listed in the libpath.  Setting hardcode_minus_L
5350  	  # to unsupported forces relinking
5351  	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5352  	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5353  	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
5354	  fi
5355	esac
5356	shared_flag='-shared'
5357      else
5358	# not using gcc
5359	if test "$host_cpu" = ia64; then
5360  	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5361  	# chokes on -Wl,-G. The following line is correct:
5362	  shared_flag='-G'
5363	else
5364  	if test "$aix_use_runtimelinking" = yes; then
5365	    shared_flag='${wl}-G'
5366	  else
5367	    shared_flag='${wl}-bM:SRE'
5368  	fi
5369	fi
5370      fi
5371
5372      # It seems that -bexpall does not export symbols beginning with
5373      # underscore (_), so it is better to generate a list of symbols to export.
5374      _LT_AC_TAGVAR(always_export_symbols, $1)=yes
5375      if test "$aix_use_runtimelinking" = yes; then
5376	# Warning - without using the other runtime loading flags (-brtl),
5377	# -berok will link without error, but may produce a broken library.
5378	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
5379       # Determine the default libpath from the value encoded in an empty executable.
5380       _LT_AC_SYS_LIBPATH_AIX
5381       _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5382	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
5383       else
5384	if test "$host_cpu" = ia64; then
5385	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5386	  _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5387	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
5388	else
5389	 # Determine the default libpath from the value encoded in an empty executable.
5390	 _LT_AC_SYS_LIBPATH_AIX
5391	 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5392	  # Warning - without using the other run time loading flags,
5393	  # -berok will link without error, but may produce a broken library.
5394	  _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5395	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
5396	  # -bexpall does not export symbols beginning with underscore (_)
5397	  _LT_AC_TAGVAR(always_export_symbols, $1)=yes
5398	  # Exported symbols can be pulled into shared objects from archives
5399	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
5400	  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
5401	  # This is similar to how AIX traditionally builds it's shared libraries.
5402	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
5403	fi
5404      fi
5405      ;;
5406
5407    amigaos*)
5408      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
5409      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5410      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5411      # see comment about different semantics on the GNU ld section
5412      _LT_AC_TAGVAR(ld_shlibs, $1)=no
5413      ;;
5414
5415    bsdi[[45]]*)
5416      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5417      ;;
5418
5419    cygwin* | mingw* | pw32*)
5420      # When not using gcc, we currently assume that we are using
5421      # Microsoft Visual C++.
5422      # hardcode_libdir_flag_spec is actually meaningless, as there is
5423      # no search path for DLLs.
5424      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5425      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
5426      # Tell ltmain to make .lib files, not .a files.
5427      libext=lib
5428      # Tell ltmain to make .dll files, not .so files.
5429      shrext_cmds=".dll"
5430      # FIXME: Setting linknames here is a bad hack.
5431      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames='
5432      # The linker will automatically build a .lib file if we build a DLL.
5433      _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true'
5434      # FIXME: Should let the user specify the lib program.
5435      _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs'
5436      fix_srcfile_path='`cygpath -w "$srcfile"`'
5437      _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5438      ;;
5439
5440    darwin* | rhapsody*)
5441      case "$host_os" in
5442        rhapsody* | darwin1.[[012]])
5443         _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
5444         ;;
5445       *) # Darwin 1.3 on
5446         if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
5447           _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
5448         else
5449           case ${MACOSX_DEPLOYMENT_TARGET} in
5450             10.[[012]])
5451               _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
5452               ;;
5453             10.*)
5454               _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
5455               ;;
5456           esac
5457         fi
5458         ;;
5459      esac
5460      _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
5461      _LT_AC_TAGVAR(hardcode_direct, $1)=no
5462      _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
5463      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5464      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
5465      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
5466    if test "$GCC" = yes ; then
5467    	output_verbose_link_cmd='echo'
5468        _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
5469      _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
5470      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
5471      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
5472      _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
5473    else
5474      case "$cc_basename" in
5475        xlc*)
5476         output_verbose_link_cmd='echo'
5477         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
5478         _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
5479          # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
5480         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
5481          _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
5482          ;;
5483       *)
5484         _LT_AC_TAGVAR(ld_shlibs, $1)=no
5485          ;;
5486      esac
5487    fi
5488      ;;
5489
5490    dgux*)
5491      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5492      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5493      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5494      ;;
5495
5496    freebsd1*)
5497      _LT_AC_TAGVAR(ld_shlibs, $1)=no
5498      ;;
5499
5500    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5501    # support.  Future versions do this automatically, but an explicit c++rt0.o
5502    # does not break anything, and helps significantly (at the cost of a little
5503    # extra space).
5504    freebsd2.2*)
5505      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5506      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5507      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5508      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5509      ;;
5510
5511    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5512    freebsd2*)
5513      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5514      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5515      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5516      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5517      ;;
5518
5519    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5520    freebsd* | kfreebsd*-gnu)
5521      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
5522      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5523      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5524      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5525      ;;
5526
5527    hpux9*)
5528      if test "$GCC" = yes; then
5529	_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5530      else
5531	_LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5532      fi
5533      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5534      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
5535      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5536
5537      # hardcode_minus_L: Not really in the search PATH,
5538      # but as the default location of the library.
5539      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5540      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5541      ;;
5542
5543    hpux10* | hpux11*)
5544      if test "$GCC" = yes -a "$with_gnu_ld" = no; then
5545	case "$host_cpu" in
5546	hppa*64*|ia64*)
5547	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5548	  ;;
5549	*)
5550	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5551	  ;;
5552	esac
5553      else
5554	case "$host_cpu" in
5555	hppa*64*|ia64*)
5556	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
5557	  ;;
5558	*)
5559	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5560	  ;;
5561	esac
5562      fi
5563      if test "$with_gnu_ld" = no; then
5564	case "$host_cpu" in
5565	hppa*64*)
5566	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5567	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
5568	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
5569	  _LT_AC_TAGVAR(hardcode_direct, $1)=no
5570	  _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5571	  ;;
5572	ia64*)
5573	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5574	  _LT_AC_TAGVAR(hardcode_direct, $1)=no
5575	  _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5576
5577	  # hardcode_minus_L: Not really in the search PATH,
5578	  # but as the default location of the library.
5579	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5580	  ;;
5581	*)
5582	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5583	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
5584	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5585	  _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5586
5587	  # hardcode_minus_L: Not really in the search PATH,
5588	  # but as the default location of the library.
5589	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5590	  ;;
5591	esac
5592      fi
5593      ;;
5594
5595    irix5* | irix6* | nonstopux*)
5596      if test "$GCC" = yes; then
5597	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5598      else
5599	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
5600	_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
5601      fi
5602      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5603      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
5604      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
5605      ;;
5606
5607    netbsd*)
5608      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
5609	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
5610      else
5611	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
5612      fi
5613      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5614      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5615      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5616      ;;
5617
5618    newsos6)
5619      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5620      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5621      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5622      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
5623      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5624      ;;
5625
5626    openbsd*)
5627      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5628      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5629      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
5630	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5631	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
5632	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5633	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5634      else
5635       case $host_os in
5636	 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
5637	   _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5638	   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5639	   ;;
5640	 *)
5641	   _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5642	   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5643	   ;;
5644       esac
5645      fi
5646      ;;
5647
5648    os2*)
5649      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5650      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5651      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
5652      _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
5653      _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
5654      ;;
5655
5656    osf3*)
5657      if test "$GCC" = yes; then
5658	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
5659	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5660      else
5661	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5662	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
5663      fi
5664      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5665      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
5666      ;;
5667
5668    osf4* | osf5*)	# as osf3* with the addition of -msym flag
5669      if test "$GCC" = yes; then
5670	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
5671	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5672	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5673      else
5674	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5675	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
5676	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
5677	$LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
5678
5679	# Both c and cxx compiler support -rpath directly
5680	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5681      fi
5682      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
5683      ;;
5684
5685    sco3.2v5*)
5686      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5687      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5688      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
5689      runpath_var=LD_RUN_PATH
5690      hardcode_runpath_var=yes
5691      ;;
5692
5693    solaris*)
5694      _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
5695      if test "$GCC" = yes; then
5696	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5697	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
5698	  $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp'
5699      else
5700	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5701	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
5702  	$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
5703      fi
5704      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5705      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5706      case $host_os in
5707      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5708      *) # Supported since Solaris 2.6 (maybe 2.5.1?)
5709	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;;
5710      esac
5711      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
5712      ;;
5713
5714    sunos4*)
5715      if test "x$host_vendor" = xsequent; then
5716	# Use $CC to link under sequent, because it throws in some extra .o
5717	# files that make .init and .fini sections work.
5718	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5719      else
5720	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5721      fi
5722      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5723      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5724      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
5725      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5726      ;;
5727
5728    sysv4)
5729      case $host_vendor in
5730	sni)
5731	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5732	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5733	;;
5734	siemens)
5735	  ## LD is ld it makes a PLAMLIB
5736	  ## CC just makes a GrossModule.
5737	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5738	  _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5739	  _LT_AC_TAGVAR(hardcode_direct, $1)=no
5740        ;;
5741	motorola)
5742	  _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5743	  _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5744	;;
5745      esac
5746      runpath_var='LD_RUN_PATH'
5747      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5748      ;;
5749
5750    sysv4.3*)
5751      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5752      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5753      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5754      ;;
5755
5756    sysv4*MP*)
5757      if test -d /usr/nec; then
5758	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5759	_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5760	runpath_var=LD_RUN_PATH
5761	hardcode_runpath_var=yes
5762	_LT_AC_TAGVAR(ld_shlibs, $1)=yes
5763      fi
5764      ;;
5765
5766    sysv4.2uw2*)
5767      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5768      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5769      _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
5770      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5771      hardcode_runpath_var=yes
5772      runpath_var=LD_RUN_PATH
5773      ;;
5774
5775   sysv5OpenUNIX8* | sysv5UnixWare7* |  sysv5uw[[78]]* | unixware7*)
5776      _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
5777      if test "$GCC" = yes; then
5778	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5779      else
5780	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5781      fi
5782      runpath_var='LD_RUN_PATH'
5783      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5784      ;;
5785
5786    sysv5*)
5787      _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
5788      # $CC -shared without GNU ld will not create a library from C++
5789      # object files and a static libstdc++, better avoid it by now
5790      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5791      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
5792  		$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
5793      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
5794      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5795      runpath_var='LD_RUN_PATH'
5796      ;;
5797
5798    uts4*)
5799      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5800      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5801      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5802      ;;
5803
5804    *)
5805      _LT_AC_TAGVAR(ld_shlibs, $1)=no
5806      ;;
5807    esac
5808  fi
5809])
5810AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
5811test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
5812
5813variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
5814if test "$GCC" = yes; then
5815  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
5816fi
5817
5818#
5819# Do we need to explicitly link libc?
5820#
5821case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in
5822x|xyes)
5823  # Assume -lc should be added
5824  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
5825
5826  if test "$enable_shared" = yes && test "$GCC" = yes; then
5827    case $_LT_AC_TAGVAR(archive_cmds, $1) in
5828    *'~'*)
5829      # FIXME: we may have to deal with multi-command sequences.
5830      ;;
5831    '$CC '*)
5832      # Test whether the compiler implicitly links with -lc since on some
5833      # systems, -lgcc has to come before -lc. If gcc already passes -lc
5834      # to ld, don't add -lc before -lgcc.
5835      AC_MSG_CHECKING([whether -lc should be explicitly linked in])
5836      $rm conftest*
5837      printf "$lt_simple_compile_test_code" > conftest.$ac_ext
5838
5839      if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5840        soname=conftest
5841        lib=conftest
5842        libobjs=conftest.$ac_objext
5843        deplibs=
5844        wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
5845        compiler_flags=-v
5846        linker_flags=-v
5847        verstring=
5848        output_objdir=.
5849        libname=conftest
5850        lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1)
5851        _LT_AC_TAGVAR(allow_undefined_flag, $1)=
5852        if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
5853        then
5854	  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
5855        else
5856	  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
5857        fi
5858        _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5859      else
5860        cat conftest.err 1>&5
5861      fi
5862      $rm conftest*
5863      AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)])
5864      ;;
5865    esac
5866  fi
5867  ;;
5868esac
5869])# AC_LIBTOOL_PROG_LD_SHLIBS
5870
5871
5872# _LT_AC_FILE_LTDLL_C
5873# -------------------
5874# Be careful that the start marker always follows a newline.
5875AC_DEFUN([_LT_AC_FILE_LTDLL_C], [
5876# /* ltdll.c starts here */
5877# #define WIN32_LEAN_AND_MEAN
5878# #include <windows.h>
5879# #undef WIN32_LEAN_AND_MEAN
5880# #include <stdio.h>
5881#
5882# #ifndef __CYGWIN__
5883# #  ifdef __CYGWIN32__
5884# #    define __CYGWIN__ __CYGWIN32__
5885# #  endif
5886# #endif
5887#
5888# #ifdef __cplusplus
5889# extern "C" {
5890# #endif
5891# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
5892# #ifdef __cplusplus
5893# }
5894# #endif
5895#
5896# #ifdef __CYGWIN__
5897# #include <cygwin/cygwin_dll.h>
5898# DECLARE_CYGWIN_DLL( DllMain );
5899# #endif
5900# HINSTANCE __hDllInstance_base;
5901#
5902# BOOL APIENTRY
5903# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
5904# {
5905#   __hDllInstance_base = hInst;
5906#   return TRUE;
5907# }
5908# /* ltdll.c ends here */
5909])# _LT_AC_FILE_LTDLL_C
5910
5911
5912# _LT_AC_TAGVAR(VARNAME, [TAGNAME])
5913# ---------------------------------
5914AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])])
5915
5916
5917# old names
5918AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL])
5919AC_DEFUN([AM_ENABLE_SHARED],  [AC_ENABLE_SHARED($@)])
5920AC_DEFUN([AM_ENABLE_STATIC],  [AC_ENABLE_STATIC($@)])
5921AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
5922AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
5923AC_DEFUN([AM_PROG_LD],        [AC_PROG_LD])
5924AC_DEFUN([AM_PROG_NM],        [AC_PROG_NM])
5925
5926# This is just to silence aclocal about the macro not being used
5927ifelse([AC_DISABLE_FAST_INSTALL])
5928
5929AC_DEFUN([LT_AC_PROG_GCJ],
5930[AC_CHECK_TOOL(GCJ, gcj, no)
5931  test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
5932  AC_SUBST(GCJFLAGS)
5933])
5934
5935AC_DEFUN([LT_AC_PROG_RC],
5936[AC_CHECK_TOOL(RC, windres, no)
5937])
5938
5939############################################################
5940# NOTE: This macro has been submitted for inclusion into   #
5941#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
5942#  a released version of Autoconf we should remove this    #
5943#  macro and use it instead.                               #
5944############################################################
5945# LT_AC_PROG_SED
5946# --------------
5947# Check for a fully-functional sed program, that truncates
5948# as few characters as possible.  Prefer GNU sed if found.
5949AC_DEFUN([LT_AC_PROG_SED],
5950[AC_MSG_CHECKING([for a sed that does not truncate output])
5951AC_CACHE_VAL(lt_cv_path_SED,
5952[# Loop through the user's path and test for sed and gsed.
5953# Then use that list of sed's as ones to test for truncation.
5954as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5955for as_dir in $PATH
5956do
5957  IFS=$as_save_IFS
5958  test -z "$as_dir" && as_dir=.
5959  for lt_ac_prog in sed gsed; do
5960    for ac_exec_ext in '' $ac_executable_extensions; do
5961      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
5962        lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
5963      fi
5964    done
5965  done
5966done
5967lt_ac_max=0
5968lt_ac_count=0
5969# Add /usr/xpg4/bin/sed as it is typically found on Solaris
5970# along with /bin/sed that truncates output.
5971for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
5972  test ! -f $lt_ac_sed && break
5973  cat /dev/null > conftest.in
5974  lt_ac_count=0
5975  echo $ECHO_N "0123456789$ECHO_C" >conftest.in
5976  # Check for GNU sed and select it if it is found.
5977  if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
5978    lt_cv_path_SED=$lt_ac_sed
5979    break
5980  fi
5981  while true; do
5982    cat conftest.in conftest.in >conftest.tmp
5983    mv conftest.tmp conftest.in
5984    cp conftest.in conftest.nl
5985    echo >>conftest.nl
5986    $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
5987    cmp -s conftest.out conftest.nl || break
5988    # 10000 chars as input seems more than enough
5989    test $lt_ac_count -gt 10 && break
5990    lt_ac_count=`expr $lt_ac_count + 1`
5991    if test $lt_ac_count -gt $lt_ac_max; then
5992      lt_ac_max=$lt_ac_count
5993      lt_cv_path_SED=$lt_ac_sed
5994    fi
5995  done
5996done
5997])
5998SED=$lt_cv_path_SED
5999AC_MSG_RESULT([$SED])
6000])
6001