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