we mustn't cut the string if we don't find a boundary.
[citadel] / libcitadel / conftools / libtool.m4
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.
9
10 # serial 48 AC_PROG_LIBTOOL
11
12
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])])])
21
22
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 ])])
38
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
56
57
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
65
66 # This can be used to rebuild libtool when needed
67 LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
68
69 # Always use our own libtool.
70 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
71 AC_SUBST(LIBTOOL)dnl
72
73 # Prevent multiple expansion
74 define([AC_PROG_LIBTOOL], [])
75 ])# _AC_PROG_LIBTOOL
76
77
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
91
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
98
99 AC_LIBTOOL_SYS_MAX_CMD_LEN
100 AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
101 AC_LIBTOOL_OBJDIR
102
103 AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
104 _LT_AC_PROG_ECHO_BACKSLASH
105
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
117
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']
122
123 # Same as above, but do not quote variable references.
124 [double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g']
125
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'
129
130 # Sed substitution to avoid accidental globbing in evaled expressions
131 no_glob_subst='s/\*/\\\*/g'
132
133 # Constants:
134 rm="rm -f"
135
136 # Global variables:
137 default_ofile=libtool
138 can_build_shared=yes
139
140 # All known linkers require a `.a' archive for static linking (except MSVC,
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"
146
147 AC_CHECK_TOOL(AR, ar, false)
148 AC_CHECK_TOOL(RANLIB, ranlib, :)
149 AC_CHECK_TOOL(STRIP, strip, :)
150
151 old_CC="$CC"
152 old_CFLAGS="$CFLAGS"
153
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 "$LTCFLAGS" && LTCFLAGS=$CFLAGS
161 test -z "$DLLTOOL" && DLLTOOL=dlltool
162 test -z "$LD" && LD=ld
163 test -z "$LN_S" && LN_S="ln -s"
164 test -z "$MAGIC_CMD" && MAGIC_CMD=file
165 test -z "$NM" && NM=nm
166 test -z "$SED" && SED=sed
167 test -z "$OBJDUMP" && OBJDUMP=objdump
168 test -z "$RANLIB" && RANLIB=:
169 test -z "$STRIP" && STRIP=:
170 test -z "$ac_objext" && ac_objext=o
171
172 # Determine commands to create old-style static archives.
173 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
174 old_postinstall_cmds='chmod 644 $oldlib'
175 old_postuninstall_cmds=
176
177 if test -n "$RANLIB"; then
178   case $host_os in
179   openbsd*)
180     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
181     ;;
182   *)
183     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
184     ;;
185   esac
186   old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
187 fi
188
189 _LT_CC_BASENAME([$compiler])
190
191 # Only perform the check for file, if the check method requires it
192 case $deplibs_check_method in
193 file_magic*)
194   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
195     AC_PATH_MAGIC
196   fi
197   ;;
198 esac
199
200 AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
201 AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
202 enable_win32_dll=yes, enable_win32_dll=no)
203
204 AC_ARG_ENABLE([libtool-lock],
205     [AC_HELP_STRING([--disable-libtool-lock],
206         [avoid locking (might break parallel builds)])])
207 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
208
209 AC_ARG_WITH([pic],
210     [AC_HELP_STRING([--with-pic],
211         [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
212     [pic_mode="$withval"],
213     [pic_mode=default])
214 test -z "$pic_mode" && pic_mode=default
215
216 # Use C for the default configuration in the libtool script
217 tagname=
218 AC_LIBTOOL_LANG_C_CONFIG
219 _LT_AC_TAGCONFIG
220 ])# AC_LIBTOOL_SETUP
221
222
223 # _LT_AC_SYS_COMPILER
224 # -------------------
225 AC_DEFUN([_LT_AC_SYS_COMPILER],
226 [AC_REQUIRE([AC_PROG_CC])dnl
227
228 # If no C compiler was specified, use CC.
229 LTCC=${LTCC-"$CC"}
230
231 # If no C compiler flags were specified, use CFLAGS.
232 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
233
234 # Allow CC to be a program name with arguments.
235 compiler=$CC
236 ])# _LT_AC_SYS_COMPILER
237
238
239 # _LT_CC_BASENAME(CC)
240 # -------------------
241 # Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
242 AC_DEFUN([_LT_CC_BASENAME],
243 [for cc_temp in $1""; do
244   case $cc_temp in
245     compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
246     distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
247     \-*) ;;
248     *) break;;
249   esac
250 done
251 cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
252 ])
253
254
255 # _LT_COMPILER_BOILERPLATE
256 # ------------------------
257 # Check for compiler boilerplate output or warnings with
258 # the simple compiler test code.
259 AC_DEFUN([_LT_COMPILER_BOILERPLATE],
260 [ac_outfile=conftest.$ac_objext
261 printf "$lt_simple_compile_test_code" >conftest.$ac_ext
262 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
263 _lt_compiler_boilerplate=`cat conftest.err`
264 $rm conftest*
265 ])# _LT_COMPILER_BOILERPLATE
266
267
268 # _LT_LINKER_BOILERPLATE
269 # ----------------------
270 # Check for linker boilerplate output or warnings with
271 # the simple link test code.
272 AC_DEFUN([_LT_LINKER_BOILERPLATE],
273 [ac_outfile=conftest.$ac_objext
274 printf "$lt_simple_link_test_code" >conftest.$ac_ext
275 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
276 _lt_linker_boilerplate=`cat conftest.err`
277 $rm conftest*
278 ])# _LT_LINKER_BOILERPLATE
279
280
281 # _LT_AC_SYS_LIBPATH_AIX
282 # ----------------------
283 # Links a minimal program and checks the executable
284 # for the system default hardcoded library path. In most cases,
285 # this is /usr/lib:/lib, but when the MPI compilers are used
286 # the location of the communication and MPI libs are included too.
287 # If we don't find anything, use the default library path according
288 # to the aix ld manual.
289 AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX],
290 [AC_LINK_IFELSE(AC_LANG_PROGRAM,[
291 aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
292 }'`
293 # Check for a 64-bit object if we didn't find anything.
294 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; }
295 }'`; fi],[])
296 if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
297 ])# _LT_AC_SYS_LIBPATH_AIX
298
299
300 # _LT_AC_SHELL_INIT(ARG)
301 # ----------------------
302 AC_DEFUN([_LT_AC_SHELL_INIT],
303 [ifdef([AC_DIVERSION_NOTICE],
304              [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
305          [AC_DIVERT_PUSH(NOTICE)])
306 $1
307 AC_DIVERT_POP
308 ])# _LT_AC_SHELL_INIT
309
310
311 # _LT_AC_PROG_ECHO_BACKSLASH
312 # --------------------------
313 # Add some code to the start of the generated configure script which
314 # will find an echo command which doesn't interpret backslashes.
315 AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
316 [_LT_AC_SHELL_INIT([
317 # Check that we are running under the correct shell.
318 SHELL=${CONFIG_SHELL-/bin/sh}
319
320 case X$ECHO in
321 X*--fallback-echo)
322   # Remove one level of quotation (which was required for Make).
323   ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
324   ;;
325 esac
326
327 echo=${ECHO-echo}
328 if test "X[$]1" = X--no-reexec; then
329   # Discard the --no-reexec flag, and continue.
330   shift
331 elif test "X[$]1" = X--fallback-echo; then
332   # Avoid inline document here, it may be left over
333   :
334 elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then
335   # Yippee, $echo works!
336   :
337 else
338   # Restart under the correct shell.
339   exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
340 fi
341
342 if test "X[$]1" = X--fallback-echo; then
343   # used as fallback echo
344   shift
345   cat <<EOF
346 [$]*
347 EOF
348   exit 0
349 fi
350
351 # The HP-UX ksh and POSIX shell print the target directory to stdout
352 # if CDPATH is set.
353 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
354
355 if test -z "$ECHO"; then
356 if test "X${echo_test_string+set}" != Xset; then
357 # find a string as large as possible, as long as the shell can cope with it
358   for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
359     # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
360     if (echo_test_string=`eval $cmd`) 2>/dev/null &&
361        echo_test_string=`eval $cmd` &&
362        (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
363     then
364       break
365     fi
366   done
367 fi
368
369 if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
370    echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
371    test "X$echo_testing_string" = "X$echo_test_string"; then
372   :
373 else
374   # The Solaris, AIX, and Digital Unix default echo programs unquote
375   # backslashes.  This makes it impossible to quote backslashes using
376   #   echo "$something" | sed 's/\\/\\\\/g'
377   #
378   # So, first we look for a working echo in the user's PATH.
379
380   lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
381   for dir in $PATH /usr/ucb; do
382     IFS="$lt_save_ifs"
383     if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
384        test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
385        echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
386        test "X$echo_testing_string" = "X$echo_test_string"; then
387       echo="$dir/echo"
388       break
389     fi
390   done
391   IFS="$lt_save_ifs"
392
393   if test "X$echo" = Xecho; then
394     # We didn't find a better echo, so look for alternatives.
395     if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
396        echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
397        test "X$echo_testing_string" = "X$echo_test_string"; then
398       # This shell has a builtin print -r that does the trick.
399       echo='print -r'
400     elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
401          test "X$CONFIG_SHELL" != X/bin/ksh; then
402       # If we have ksh, try running configure again with it.
403       ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
404       export ORIGINAL_CONFIG_SHELL
405       CONFIG_SHELL=/bin/ksh
406       export CONFIG_SHELL
407       exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
408     else
409       # Try using printf.
410       echo='printf %s\n'
411       if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
412          echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
413          test "X$echo_testing_string" = "X$echo_test_string"; then
414         # Cool, printf works
415         :
416       elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
417            test "X$echo_testing_string" = 'X\t' &&
418            echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
419            test "X$echo_testing_string" = "X$echo_test_string"; then
420         CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
421         export CONFIG_SHELL
422         SHELL="$CONFIG_SHELL"
423         export SHELL
424         echo="$CONFIG_SHELL [$]0 --fallback-echo"
425       elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
426            test "X$echo_testing_string" = 'X\t' &&
427            echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
428            test "X$echo_testing_string" = "X$echo_test_string"; then
429         echo="$CONFIG_SHELL [$]0 --fallback-echo"
430       else
431         # maybe with a smaller string...
432         prev=:
433
434         for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
435           if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
436           then
437             break
438           fi
439           prev="$cmd"
440         done
441
442         if test "$prev" != 'sed 50q "[$]0"'; then
443           echo_test_string=`eval $prev`
444           export echo_test_string
445           exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
446         else
447           # Oops.  We lost completely, so just stick with echo.
448           echo=echo
449         fi
450       fi
451     fi
452   fi
453 fi
454 fi
455
456 # Copy echo and quote the copy suitably for passing to libtool from
457 # the Makefile, instead of quoting the original, which is used later.
458 ECHO=$echo
459 if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
460    ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
461 fi
462
463 AC_SUBST(ECHO)
464 ])])# _LT_AC_PROG_ECHO_BACKSLASH
465
466
467 # _LT_AC_LOCK
468 # -----------
469 AC_DEFUN([_LT_AC_LOCK],
470 [AC_ARG_ENABLE([libtool-lock],
471     [AC_HELP_STRING([--disable-libtool-lock],
472         [avoid locking (might break parallel builds)])])
473 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
474
475 # Some flags need to be propagated to the compiler or linker for good
476 # libtool support.
477 case $host in
478 ia64-*-hpux*)
479   # Find out which ABI we are using.
480   echo 'int i;' > conftest.$ac_ext
481   if AC_TRY_EVAL(ac_compile); then
482     case `/usr/bin/file conftest.$ac_objext` in
483     *ELF-32*)
484       HPUX_IA64_MODE="32"
485       ;;
486     *ELF-64*)
487       HPUX_IA64_MODE="64"
488       ;;
489     esac
490   fi
491   rm -rf conftest*
492   ;;
493 *-*-irix6*)
494   # Find out which ABI we are using.
495   echo '[#]line __oline__ "configure"' > conftest.$ac_ext
496   if AC_TRY_EVAL(ac_compile); then
497    if test "$lt_cv_prog_gnu_ld" = yes; then
498     case `/usr/bin/file conftest.$ac_objext` in
499     *32-bit*)
500       LD="${LD-ld} -melf32bsmip"
501       ;;
502     *N32*)
503       LD="${LD-ld} -melf32bmipn32"
504       ;;
505     *64-bit*)
506       LD="${LD-ld} -melf64bmip"
507       ;;
508     esac
509    else
510     case `/usr/bin/file conftest.$ac_objext` in
511     *32-bit*)
512       LD="${LD-ld} -32"
513       ;;
514     *N32*)
515       LD="${LD-ld} -n32"
516       ;;
517     *64-bit*)
518       LD="${LD-ld} -64"
519       ;;
520     esac
521    fi
522   fi
523   rm -rf conftest*
524   ;;
525
526 x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
527   # Find out which ABI we are using.
528   echo 'int i;' > conftest.$ac_ext
529   if AC_TRY_EVAL(ac_compile); then
530     case `/usr/bin/file conftest.o` in
531     *32-bit*)
532       case $host in
533         x86_64-*linux*)
534           LD="${LD-ld} -m elf_i386"
535           ;;
536         ppc64-*linux*|powerpc64-*linux*)
537           LD="${LD-ld} -m elf32ppclinux"
538           ;;
539         s390x-*linux*)
540           LD="${LD-ld} -m elf_s390"
541           ;;
542         sparc64-*linux*)
543           LD="${LD-ld} -m elf32_sparc"
544           ;;
545       esac
546       ;;
547     *64-bit*)
548       case $host in
549         x86_64-*linux*)
550           LD="${LD-ld} -m elf_x86_64"
551           ;;
552         ppc*-*linux*|powerpc*-*linux*)
553           LD="${LD-ld} -m elf64ppc"
554           ;;
555         s390*-*linux*)
556           LD="${LD-ld} -m elf64_s390"
557           ;;
558         sparc*-*linux*)
559           LD="${LD-ld} -m elf64_sparc"
560           ;;
561       esac
562       ;;
563     esac
564   fi
565   rm -rf conftest*
566   ;;
567
568 *-*-sco3.2v5*)
569   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
570   SAVE_CFLAGS="$CFLAGS"
571   CFLAGS="$CFLAGS -belf"
572   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
573     [AC_LANG_PUSH(C)
574      AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
575      AC_LANG_POP])
576   if test x"$lt_cv_cc_needs_belf" != x"yes"; then
577     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
578     CFLAGS="$SAVE_CFLAGS"
579   fi
580   ;;
581 sparc*-*solaris*)
582   # Find out which ABI we are using.
583   echo 'int i;' > conftest.$ac_ext
584   if AC_TRY_EVAL(ac_compile); then
585     case `/usr/bin/file conftest.o` in
586     *64-bit*)
587       case $lt_cv_prog_gnu_ld in
588       yes*) LD="${LD-ld} -m elf64_sparc" ;;
589       *)    LD="${LD-ld} -64" ;;
590       esac
591       ;;
592     esac
593   fi
594   rm -rf conftest*
595   ;;
596
597 AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
598 [*-*-cygwin* | *-*-mingw* | *-*-pw32*)
599   AC_CHECK_TOOL(DLLTOOL, dlltool, false)
600   AC_CHECK_TOOL(AS, as, false)
601   AC_CHECK_TOOL(OBJDUMP, objdump, false)
602   ;;
603   ])
604 esac
605
606 need_locks="$enable_libtool_lock"
607
608 ])# _LT_AC_LOCK
609
610
611 # AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
612 #               [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
613 # ----------------------------------------------------------------
614 # Check whether the given compiler option works
615 AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION],
616 [AC_REQUIRE([LT_AC_PROG_SED])
617 AC_CACHE_CHECK([$1], [$2],
618   [$2=no
619   ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
620    printf "$lt_simple_compile_test_code" > conftest.$ac_ext
621    lt_compiler_flag="$3"
622    # Insert the option either (1) after the last *FLAGS variable, or
623    # (2) before a word containing "conftest.", or (3) at the end.
624    # Note that $ac_compile itself does not contain backslashes and begins
625    # with a dollar sign (not a hyphen), so the echo should work correctly.
626    # The option is referenced via a variable to avoid confusing sed.
627    lt_compile=`echo "$ac_compile" | $SED \
628    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
629    -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
630    -e 's:$: $lt_compiler_flag:'`
631    (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
632    (eval "$lt_compile" 2>conftest.err)
633    ac_status=$?
634    cat conftest.err >&AS_MESSAGE_LOG_FD
635    echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
636    if (exit $ac_status) && test -s "$ac_outfile"; then
637      # The compiler can only warn and ignore the option if not recognized
638      # So say no if there are warnings other than the usual output.
639      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
640      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
641      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
642        $2=yes
643      fi
644    fi
645    $rm conftest*
646 ])
647
648 if test x"[$]$2" = xyes; then
649     ifelse([$5], , :, [$5])
650 else
651     ifelse([$6], , :, [$6])
652 fi
653 ])# AC_LIBTOOL_COMPILER_OPTION
654
655
656 # AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
657 #                          [ACTION-SUCCESS], [ACTION-FAILURE])
658 # ------------------------------------------------------------
659 # Check whether the given compiler option works
660 AC_DEFUN([AC_LIBTOOL_LINKER_OPTION],
661 [AC_CACHE_CHECK([$1], [$2],
662   [$2=no
663    save_LDFLAGS="$LDFLAGS"
664    LDFLAGS="$LDFLAGS $3"
665    printf "$lt_simple_link_test_code" > conftest.$ac_ext
666    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
667      # The linker can only warn and ignore the option if not recognized
668      # So say no if there are warnings
669      if test -s conftest.err; then
670        # Append any errors to the config.log.
671        cat conftest.err 1>&AS_MESSAGE_LOG_FD
672        $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
673        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
674        if diff conftest.exp conftest.er2 >/dev/null; then
675          $2=yes
676        fi
677      else
678        $2=yes
679      fi
680    fi
681    $rm conftest*
682    LDFLAGS="$save_LDFLAGS"
683 ])
684
685 if test x"[$]$2" = xyes; then
686     ifelse([$4], , :, [$4])
687 else
688     ifelse([$5], , :, [$5])
689 fi
690 ])# AC_LIBTOOL_LINKER_OPTION
691
692
693 # AC_LIBTOOL_SYS_MAX_CMD_LEN
694 # --------------------------
695 AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN],
696 [# find the maximum length of command line arguments
697 AC_MSG_CHECKING([the maximum length of command line arguments])
698 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
699   i=0
700   teststring="ABCD"
701
702   case $build_os in
703   msdosdjgpp*)
704     # On DJGPP, this test can blow up pretty badly due to problems in libc
705     # (any single argument exceeding 2000 bytes causes a buffer overrun
706     # during glob expansion).  Even if it were fixed, the result of this
707     # check would be larger than it should be.
708     lt_cv_sys_max_cmd_len=12288;    # 12K is about right
709     ;;
710
711   gnu*)
712     # Under GNU Hurd, this test is not required because there is
713     # no limit to the length of command line arguments.
714     # Libtool will interpret -1 as no limit whatsoever
715     lt_cv_sys_max_cmd_len=-1;
716     ;;
717
718   cygwin* | mingw*)
719     # On Win9x/ME, this test blows up -- it succeeds, but takes
720     # about 5 minutes as the teststring grows exponentially.
721     # Worse, since 9x/ME are not pre-emptively multitasking,
722     # you end up with a "frozen" computer, even though with patience
723     # the test eventually succeeds (with a max line length of 256k).
724     # Instead, let's just punt: use the minimum linelength reported by
725     # all of the supported platforms: 8192 (on NT/2K/XP).
726     lt_cv_sys_max_cmd_len=8192;
727     ;;
728
729   amigaos*)
730     # On AmigaOS with pdksh, this test takes hours, literally.
731     # So we just punt and use a minimum line length of 8192.
732     lt_cv_sys_max_cmd_len=8192;
733     ;;
734
735   netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
736     # This has been around since 386BSD, at least.  Likely further.
737     if test -x /sbin/sysctl; then
738       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
739     elif test -x /usr/sbin/sysctl; then
740       lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
741     else
742       lt_cv_sys_max_cmd_len=65536       # usable default for all BSDs
743     fi
744     # And add a safety zone
745     lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
746     lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
747     ;;
748
749   interix*)
750     # We know the value 262144 and hardcode it with a safety zone (like BSD)
751     lt_cv_sys_max_cmd_len=196608
752     ;;
753
754   osf*)
755     # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
756     # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
757     # nice to cause kernel panics so lets avoid the loop below.
758     # First set a reasonable default.
759     lt_cv_sys_max_cmd_len=16384
760     #
761     if test -x /sbin/sysconfig; then
762       case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
763         *1*) lt_cv_sys_max_cmd_len=-1 ;;
764       esac
765     fi
766     ;;
767   sco3.2v5*)
768     lt_cv_sys_max_cmd_len=102400
769     ;;
770   sysv5* | sco5v6* | sysv4.2uw2*)
771     kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
772     if test -n "$kargmax"; then
773       lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[        ]]//'`
774     else
775       lt_cv_sys_max_cmd_len=32768
776     fi
777     ;;
778   *)
779     # If test is not a shell built-in, we'll probably end up computing a
780     # maximum length that is only half of the actual maximum length, but
781     # we can't tell.
782     SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
783     while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \
784                = "XX$teststring") >/dev/null 2>&1 &&
785             new_result=`expr "X$teststring" : ".*" 2>&1` &&
786             lt_cv_sys_max_cmd_len=$new_result &&
787             test $i != 17 # 1/2 MB should be enough
788     do
789       i=`expr $i + 1`
790       teststring=$teststring$teststring
791     done
792     teststring=
793     # Add a significant safety factor because C++ compilers can tack on massive
794     # amounts of additional arguments before passing them to the linker.
795     # It appears as though 1/2 is a usable value.
796     lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
797     ;;
798   esac
799 ])
800 if test -n $lt_cv_sys_max_cmd_len ; then
801   AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
802 else
803   AC_MSG_RESULT(none)
804 fi
805 ])# AC_LIBTOOL_SYS_MAX_CMD_LEN
806
807
808 # _LT_AC_CHECK_DLFCN
809 # ------------------
810 AC_DEFUN([_LT_AC_CHECK_DLFCN],
811 [AC_CHECK_HEADERS(dlfcn.h)dnl
812 ])# _LT_AC_CHECK_DLFCN
813
814
815 # _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
816 #                           ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
817 # ---------------------------------------------------------------------
818 AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
819 [AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
820 if test "$cross_compiling" = yes; then :
821   [$4]
822 else
823   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
824   lt_status=$lt_dlunknown
825   cat > conftest.$ac_ext <<EOF
826 [#line __oline__ "configure"
827 #include "confdefs.h"
828
829 #if HAVE_DLFCN_H
830 #include <dlfcn.h>
831 #endif
832
833 #include <stdio.h>
834
835 #ifdef RTLD_GLOBAL
836 #  define LT_DLGLOBAL           RTLD_GLOBAL
837 #else
838 #  ifdef DL_GLOBAL
839 #    define LT_DLGLOBAL         DL_GLOBAL
840 #  else
841 #    define LT_DLGLOBAL         0
842 #  endif
843 #endif
844
845 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
846    find out it does not work in some platform. */
847 #ifndef LT_DLLAZY_OR_NOW
848 #  ifdef RTLD_LAZY
849 #    define LT_DLLAZY_OR_NOW            RTLD_LAZY
850 #  else
851 #    ifdef DL_LAZY
852 #      define LT_DLLAZY_OR_NOW          DL_LAZY
853 #    else
854 #      ifdef RTLD_NOW
855 #        define LT_DLLAZY_OR_NOW        RTLD_NOW
856 #      else
857 #        ifdef DL_NOW
858 #          define LT_DLLAZY_OR_NOW      DL_NOW
859 #        else
860 #          define LT_DLLAZY_OR_NOW      0
861 #        endif
862 #      endif
863 #    endif
864 #  endif
865 #endif
866
867 #ifdef __cplusplus
868 extern "C" void exit (int);
869 #endif
870
871 void fnord() { int i=42;}
872 int main ()
873 {
874   void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
875   int status = $lt_dlunknown;
876
877   if (self)
878     {
879       if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
880       else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
881       /* dlclose (self); */
882     }
883   else
884     puts (dlerror ());
885
886     exit (status);
887 }]
888 EOF
889   if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
890     (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
891     lt_status=$?
892     case x$lt_status in
893       x$lt_dlno_uscore) $1 ;;
894       x$lt_dlneed_uscore) $2 ;;
895       x$lt_dlunknown|x*) $3 ;;
896     esac
897   else :
898     # compilation failed
899     $3
900   fi
901 fi
902 rm -fr conftest*
903 ])# _LT_AC_TRY_DLOPEN_SELF
904
905
906 # AC_LIBTOOL_DLOPEN_SELF
907 # ----------------------
908 AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
909 [AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
910 if test "x$enable_dlopen" != xyes; then
911   enable_dlopen=unknown
912   enable_dlopen_self=unknown
913   enable_dlopen_self_static=unknown
914 else
915   lt_cv_dlopen=no
916   lt_cv_dlopen_libs=
917
918   case $host_os in
919   beos*)
920     lt_cv_dlopen="load_add_on"
921     lt_cv_dlopen_libs=
922     lt_cv_dlopen_self=yes
923     ;;
924
925   mingw* | pw32*)
926     lt_cv_dlopen="LoadLibrary"
927     lt_cv_dlopen_libs=
928    ;;
929
930   cygwin*)
931     lt_cv_dlopen="dlopen"
932     lt_cv_dlopen_libs=
933    ;;
934
935   darwin*)
936   # if libdl is installed we need to link against it
937     AC_CHECK_LIB([dl], [dlopen],
938                 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
939     lt_cv_dlopen="dyld"
940     lt_cv_dlopen_libs=
941     lt_cv_dlopen_self=yes
942     ])
943    ;;
944
945   *)
946     AC_CHECK_FUNC([shl_load],
947           [lt_cv_dlopen="shl_load"],
948       [AC_CHECK_LIB([dld], [shl_load],
949             [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
950         [AC_CHECK_FUNC([dlopen],
951               [lt_cv_dlopen="dlopen"],
952           [AC_CHECK_LIB([dl], [dlopen],
953                 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
954             [AC_CHECK_LIB([svld], [dlopen],
955                   [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
956               [AC_CHECK_LIB([dld], [dld_link],
957                     [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
958               ])
959             ])
960           ])
961         ])
962       ])
963     ;;
964   esac
965
966   if test "x$lt_cv_dlopen" != xno; then
967     enable_dlopen=yes
968   else
969     enable_dlopen=no
970   fi
971
972   case $lt_cv_dlopen in
973   dlopen)
974     save_CPPFLAGS="$CPPFLAGS"
975     test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
976
977     save_LDFLAGS="$LDFLAGS"
978     wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
979
980     save_LIBS="$LIBS"
981     LIBS="$lt_cv_dlopen_libs $LIBS"
982
983     AC_CACHE_CHECK([whether a program can dlopen itself],
984           lt_cv_dlopen_self, [dnl
985           _LT_AC_TRY_DLOPEN_SELF(
986             lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
987             lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
988     ])
989
990     if test "x$lt_cv_dlopen_self" = xyes; then
991       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
992       AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
993           lt_cv_dlopen_self_static, [dnl
994           _LT_AC_TRY_DLOPEN_SELF(
995             lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
996             lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
997       ])
998     fi
999
1000     CPPFLAGS="$save_CPPFLAGS"
1001     LDFLAGS="$save_LDFLAGS"
1002     LIBS="$save_LIBS"
1003     ;;
1004   esac
1005
1006   case $lt_cv_dlopen_self in
1007   yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1008   *) enable_dlopen_self=unknown ;;
1009   esac
1010
1011   case $lt_cv_dlopen_self_static in
1012   yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1013   *) enable_dlopen_self_static=unknown ;;
1014   esac
1015 fi
1016 ])# AC_LIBTOOL_DLOPEN_SELF
1017
1018
1019 # AC_LIBTOOL_PROG_CC_C_O([TAGNAME])
1020 # ---------------------------------
1021 # Check to see if options -c and -o are simultaneously supported by compiler
1022 AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O],
1023 [AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
1024 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1025   [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1026   [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1027    $rm -r conftest 2>/dev/null
1028    mkdir conftest
1029    cd conftest
1030    mkdir out
1031    printf "$lt_simple_compile_test_code" > conftest.$ac_ext
1032
1033    lt_compiler_flag="-o out/conftest2.$ac_objext"
1034    # Insert the option either (1) after the last *FLAGS variable, or
1035    # (2) before a word containing "conftest.", or (3) at the end.
1036    # Note that $ac_compile itself does not contain backslashes and begins
1037    # with a dollar sign (not a hyphen), so the echo should work correctly.
1038    lt_compile=`echo "$ac_compile" | $SED \
1039    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1040    -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1041    -e 's:$: $lt_compiler_flag:'`
1042    (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1043    (eval "$lt_compile" 2>out/conftest.err)
1044    ac_status=$?
1045    cat out/conftest.err >&AS_MESSAGE_LOG_FD
1046    echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1047    if (exit $ac_status) && test -s out/conftest2.$ac_objext
1048    then
1049      # The compiler can only warn and ignore the option if not recognized
1050      # So say no if there are warnings
1051      $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
1052      $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1053      if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
1054        _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
1055      fi
1056    fi
1057    chmod u+w . 2>&AS_MESSAGE_LOG_FD
1058    $rm conftest*
1059    # SGI C++ compiler will create directory out/ii_files/ for
1060    # template instantiation
1061    test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files
1062    $rm out/* && rmdir out
1063    cd ..
1064    rmdir conftest
1065    $rm conftest*
1066 ])
1067 ])# AC_LIBTOOL_PROG_CC_C_O
1068
1069
1070 # AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME])
1071 # -----------------------------------------
1072 # Check to see if we can do hard links to lock some files if needed
1073 AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS],
1074 [AC_REQUIRE([_LT_AC_LOCK])dnl
1075
1076 hard_links="nottested"
1077 if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
1078   # do not overwrite the value of need_locks provided by the user
1079   AC_MSG_CHECKING([if we can lock with hard links])
1080   hard_links=yes
1081   $rm conftest*
1082   ln conftest.a conftest.b 2>/dev/null && hard_links=no
1083   touch conftest.a
1084   ln conftest.a conftest.b 2>&5 || hard_links=no
1085   ln conftest.a conftest.b 2>/dev/null && hard_links=no
1086   AC_MSG_RESULT([$hard_links])
1087   if test "$hard_links" = no; then
1088     AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
1089     need_locks=warn
1090   fi
1091 else
1092   need_locks=no
1093 fi
1094 ])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS
1095
1096
1097 # AC_LIBTOOL_OBJDIR
1098 # -----------------
1099 AC_DEFUN([AC_LIBTOOL_OBJDIR],
1100 [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
1101 [rm -f .libs 2>/dev/null
1102 mkdir .libs 2>/dev/null
1103 if test -d .libs; then
1104   lt_cv_objdir=.libs
1105 else
1106   # MS-DOS does not allow filenames that begin with a dot.
1107   lt_cv_objdir=_libs
1108 fi
1109 rmdir .libs 2>/dev/null])
1110 objdir=$lt_cv_objdir
1111 ])# AC_LIBTOOL_OBJDIR
1112
1113
1114 # AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME])
1115 # ----------------------------------------------
1116 # Check hardcoding attributes.
1117 AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH],
1118 [AC_MSG_CHECKING([how to hardcode library paths into programs])
1119 _LT_AC_TAGVAR(hardcode_action, $1)=
1120 if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \
1121    test -n "$_LT_AC_TAGVAR(runpath_var, $1)" || \
1122    test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
1123
1124   # We can hardcode non-existant directories.
1125   if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no &&
1126      # If the only mechanism to avoid hardcoding is shlibpath_var, we
1127      # have to relink, otherwise we might link with an installed library
1128      # when we should be linking with a yet-to-be-installed one
1129      ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
1130      test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then
1131     # Linking always hardcodes the temporary library directory.
1132     _LT_AC_TAGVAR(hardcode_action, $1)=relink
1133   else
1134     # We can link without hardcoding, and we can hardcode nonexisting dirs.
1135     _LT_AC_TAGVAR(hardcode_action, $1)=immediate
1136   fi
1137 else
1138   # We cannot hardcode anything, or else we can only hardcode existing
1139   # directories.
1140   _LT_AC_TAGVAR(hardcode_action, $1)=unsupported
1141 fi
1142 AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)])
1143
1144 if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then
1145   # Fast installation is not supported
1146   enable_fast_install=no
1147 elif test "$shlibpath_overrides_runpath" = yes ||
1148      test "$enable_shared" = no; then
1149   # Fast installation is not necessary
1150   enable_fast_install=needless
1151 fi
1152 ])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH
1153
1154
1155 # AC_LIBTOOL_SYS_LIB_STRIP
1156 # ------------------------
1157 AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP],
1158 [striplib=
1159 old_striplib=
1160 AC_MSG_CHECKING([whether stripping libraries is possible])
1161 if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
1162   test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
1163   test -z "$striplib" && striplib="$STRIP --strip-unneeded"
1164   AC_MSG_RESULT([yes])
1165 else
1166 # FIXME - insert some real tests, host_os isn't really good enough
1167   case $host_os in
1168    darwin*)
1169        if test -n "$STRIP" ; then
1170          striplib="$STRIP -x"
1171          AC_MSG_RESULT([yes])
1172        else
1173   AC_MSG_RESULT([no])
1174 fi
1175        ;;
1176    *)
1177   AC_MSG_RESULT([no])
1178     ;;
1179   esac
1180 fi
1181 ])# AC_LIBTOOL_SYS_LIB_STRIP
1182
1183
1184 # AC_LIBTOOL_SYS_DYNAMIC_LINKER
1185 # -----------------------------
1186 # PORTME Fill in your ld.so characteristics
1187 AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER],
1188 [AC_MSG_CHECKING([dynamic linker characteristics])
1189 library_names_spec=
1190 libname_spec='lib$name'
1191 soname_spec=
1192 shrext_cmds=".so"
1193 postinstall_cmds=
1194 postuninstall_cmds=
1195 finish_cmds=
1196 finish_eval=
1197 shlibpath_var=
1198 shlibpath_overrides_runpath=unknown
1199 version_type=none
1200 dynamic_linker="$host_os ld.so"
1201 sys_lib_dlsearch_path_spec="/lib /usr/lib"
1202 if test "$GCC" = yes; then
1203   sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
1204   if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then
1205     # if the path contains ";" then we assume it to be the separator
1206     # otherwise default to the standard path separator (i.e. ":") - it is
1207     # assumed that no part of a normal pathname contains ";" but that should
1208     # okay in the real world where ";" in dirpaths is itself problematic.
1209     sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
1210   else
1211     sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
1212   fi
1213 else
1214   sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
1215 fi
1216 need_lib_prefix=unknown
1217 hardcode_into_libs=no
1218
1219 # when you set need_version to no, make sure it does not cause -set_version
1220 # flags to be left without arguments
1221 need_version=unknown
1222
1223 case $host_os in
1224 aix3*)
1225   version_type=linux
1226   library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
1227   shlibpath_var=LIBPATH
1228
1229   # AIX 3 has no versioning support, so we append a major version to the name.
1230   soname_spec='${libname}${release}${shared_ext}$major'
1231   ;;
1232
1233 aix4* | aix5*)
1234   version_type=linux
1235   need_lib_prefix=no
1236   need_version=no
1237   hardcode_into_libs=yes
1238   if test "$host_cpu" = ia64; then
1239     # AIX 5 supports IA64
1240     library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
1241     shlibpath_var=LD_LIBRARY_PATH
1242   else
1243     # With GCC up to 2.95.x, collect2 would create an import file
1244     # for dependence libraries.  The import file would start with
1245     # the line `#! .'.  This would cause the generated library to
1246     # depend on `.', always an invalid library.  This was fixed in
1247     # development snapshots of GCC prior to 3.0.
1248     case $host_os in
1249       aix4 | aix4.[[01]] | aix4.[[01]].*)
1250       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
1251            echo ' yes '
1252            echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
1253         :
1254       else
1255         can_build_shared=no
1256       fi
1257       ;;
1258     esac
1259     # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
1260     # soname into executable. Probably we can add versioning support to
1261     # collect2, so additional links can be useful in future.
1262     if test "$aix_use_runtimelinking" = yes; then
1263       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
1264       # instead of lib<name>.a to let people know that these are not
1265       # typical AIX shared libraries.
1266       library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1267     else
1268       # We preserve .a as extension for shared libraries through AIX4.2
1269       # and later when we are not doing run time linking.
1270       library_names_spec='${libname}${release}.a $libname.a'
1271       soname_spec='${libname}${release}${shared_ext}$major'
1272     fi
1273     shlibpath_var=LIBPATH
1274   fi
1275   ;;
1276
1277 amigaos*)
1278   library_names_spec='$libname.ixlibrary $libname.a'
1279   # Create ${libname}_ixlibrary.a entries in /sys/libs.
1280   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'
1281   ;;
1282
1283 beos*)
1284   library_names_spec='${libname}${shared_ext}'
1285   dynamic_linker="$host_os ld.so"
1286   shlibpath_var=LIBRARY_PATH
1287   ;;
1288
1289 bsdi[[45]]*)
1290   version_type=linux
1291   need_version=no
1292   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1293   soname_spec='${libname}${release}${shared_ext}$major'
1294   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
1295   shlibpath_var=LD_LIBRARY_PATH
1296   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
1297   sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
1298   # the default ld.so.conf also contains /usr/contrib/lib and
1299   # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
1300   # libtool to hard-code these into programs
1301   ;;
1302
1303 cygwin* | mingw* | pw32*)
1304   version_type=windows
1305   shrext_cmds=".dll"
1306   need_version=no
1307   need_lib_prefix=no
1308
1309   case $GCC,$host_os in
1310   yes,cygwin* | yes,mingw* | yes,pw32*)
1311     library_names_spec='$libname.dll.a'
1312     # DLL is installed to $(libdir)/../bin by postinstall_cmds
1313     postinstall_cmds='base_file=`basename \${file}`~
1314       dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
1315       dldir=$destdir/`dirname \$dlpath`~
1316       test -d \$dldir || mkdir -p \$dldir~
1317       $install_prog $dir/$dlname \$dldir/$dlname~
1318       chmod a+x \$dldir/$dlname'
1319     postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
1320       dlpath=$dir/\$dldll~
1321        $rm \$dlpath'
1322     shlibpath_overrides_runpath=yes
1323
1324     case $host_os in
1325     cygwin*)
1326       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
1327       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
1328       sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
1329       ;;
1330     mingw*)
1331       # MinGW DLLs use traditional 'lib' prefix
1332       soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
1333       sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
1334       if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then
1335         # It is most probably a Windows format PATH printed by
1336         # mingw gcc, but we are running on Cygwin. Gcc prints its search
1337         # path with ; separators, and with drive letters. We can handle the
1338         # drive letters (cygwin fileutils understands them), so leave them,
1339         # especially as we might pass files found there to a mingw objdump,
1340         # which wouldn't understand a cygwinified path. Ahh.
1341         sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
1342       else
1343         sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
1344       fi
1345       ;;
1346     pw32*)
1347       # pw32 DLLs use 'pw' prefix rather than 'lib'
1348       library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
1349       ;;
1350     esac
1351     ;;
1352
1353   *)
1354     library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
1355     ;;
1356   esac
1357   dynamic_linker='Win32 ld.exe'
1358   # FIXME: first we should search . and the directory the executable is in
1359   shlibpath_var=PATH
1360   ;;
1361
1362 darwin* | rhapsody*)
1363   dynamic_linker="$host_os dyld"
1364   version_type=darwin
1365   need_lib_prefix=no
1366   need_version=no
1367   library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
1368   soname_spec='${libname}${release}${major}$shared_ext'
1369   shlibpath_overrides_runpath=yes
1370   shlibpath_var=DYLD_LIBRARY_PATH
1371   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
1372   # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
1373   if test "$GCC" = yes; then
1374     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"`
1375   else
1376     sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
1377   fi
1378   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
1379   ;;
1380
1381 dgux*)
1382   version_type=linux
1383   need_lib_prefix=no
1384   need_version=no
1385   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
1386   soname_spec='${libname}${release}${shared_ext}$major'
1387   shlibpath_var=LD_LIBRARY_PATH
1388   ;;
1389
1390 freebsd1*)
1391   dynamic_linker=no
1392   ;;
1393
1394 kfreebsd*-gnu)
1395   version_type=linux
1396   need_lib_prefix=no
1397   need_version=no
1398   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
1399   soname_spec='${libname}${release}${shared_ext}$major'
1400   shlibpath_var=LD_LIBRARY_PATH
1401   shlibpath_overrides_runpath=no
1402   hardcode_into_libs=yes
1403   dynamic_linker='GNU ld.so'
1404   ;;
1405
1406 freebsd* | dragonfly*)
1407   # DragonFly does not have aout.  When/if they implement a new
1408   # versioning mechanism, adjust this.
1409   if test -x /usr/bin/objformat; then
1410     objformat=`/usr/bin/objformat`
1411   else
1412     case $host_os in
1413     freebsd[[123]]*) objformat=aout ;;
1414     *) objformat=elf ;;
1415     esac
1416   fi
1417   version_type=freebsd-$objformat
1418   case $version_type in
1419     freebsd-elf*)
1420       library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
1421       need_version=no
1422       need_lib_prefix=no
1423       ;;
1424     freebsd-*)
1425       library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
1426       need_version=yes
1427       ;;
1428   esac
1429   shlibpath_var=LD_LIBRARY_PATH
1430   case $host_os in
1431   freebsd2*)
1432     shlibpath_overrides_runpath=yes
1433     ;;
1434   freebsd3.[[01]]* | freebsdelf3.[[01]]*)
1435     shlibpath_overrides_runpath=yes
1436     hardcode_into_libs=yes
1437     ;;
1438   freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
1439   freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
1440     shlibpath_overrides_runpath=no
1441     hardcode_into_libs=yes
1442     ;;
1443   freebsd*) # from 4.6 on
1444     shlibpath_overrides_runpath=yes
1445     hardcode_into_libs=yes
1446     ;;
1447   esac
1448   ;;
1449
1450 gnu*)
1451   version_type=linux
1452   need_lib_prefix=no
1453   need_version=no
1454   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
1455   soname_spec='${libname}${release}${shared_ext}$major'
1456   shlibpath_var=LD_LIBRARY_PATH
1457   hardcode_into_libs=yes
1458   ;;
1459
1460 hpux9* | hpux10* | hpux11*)
1461   # Give a soname corresponding to the major version so that dld.sl refuses to
1462   # link against other versions.
1463   version_type=sunos
1464   need_lib_prefix=no
1465   need_version=no
1466   case $host_cpu in
1467   ia64*)
1468     shrext_cmds='.so'
1469     hardcode_into_libs=yes
1470     dynamic_linker="$host_os dld.so"
1471     shlibpath_var=LD_LIBRARY_PATH
1472     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
1473     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1474     soname_spec='${libname}${release}${shared_ext}$major'
1475     if test "X$HPUX_IA64_MODE" = X32; then
1476       sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
1477     else
1478       sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
1479     fi
1480     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
1481     ;;
1482    hppa*64*)
1483      shrext_cmds='.sl'
1484      hardcode_into_libs=yes
1485      dynamic_linker="$host_os dld.sl"
1486      shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
1487      shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
1488      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1489      soname_spec='${libname}${release}${shared_ext}$major'
1490      sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
1491      sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
1492      ;;
1493    *)
1494     shrext_cmds='.sl'
1495     dynamic_linker="$host_os dld.sl"
1496     shlibpath_var=SHLIB_PATH
1497     shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
1498     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1499     soname_spec='${libname}${release}${shared_ext}$major'
1500     ;;
1501   esac
1502   # HP-UX runs *really* slowly unless shared libraries are mode 555.
1503   postinstall_cmds='chmod 555 $lib'
1504   ;;
1505
1506 interix3*)
1507   version_type=linux
1508   need_lib_prefix=no
1509   need_version=no
1510   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
1511   soname_spec='${libname}${release}${shared_ext}$major'
1512   dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
1513   shlibpath_var=LD_LIBRARY_PATH
1514   shlibpath_overrides_runpath=no
1515   hardcode_into_libs=yes
1516   ;;
1517
1518 irix5* | irix6* | nonstopux*)
1519   case $host_os in
1520     nonstopux*) version_type=nonstopux ;;
1521     *)
1522         if test "$lt_cv_prog_gnu_ld" = yes; then
1523                 version_type=linux
1524         else
1525                 version_type=irix
1526         fi ;;
1527   esac
1528   need_lib_prefix=no
1529   need_version=no
1530   soname_spec='${libname}${release}${shared_ext}$major'
1531   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
1532   case $host_os in
1533   irix5* | nonstopux*)
1534     libsuff= shlibsuff=
1535     ;;
1536   *)
1537     case $LD in # libtool.m4 will add one of these switches to LD
1538     *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
1539       libsuff= shlibsuff= libmagic=32-bit;;
1540     *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
1541       libsuff=32 shlibsuff=N32 libmagic=N32;;
1542     *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
1543       libsuff=64 shlibsuff=64 libmagic=64-bit;;
1544     *) libsuff= shlibsuff= libmagic=never-match;;
1545     esac
1546     ;;
1547   esac
1548   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
1549   shlibpath_overrides_runpath=no
1550   sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
1551   sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
1552   hardcode_into_libs=yes
1553   ;;
1554
1555 # No shared lib support for Linux oldld, aout, or coff.
1556 linux*oldld* | linux*aout* | linux*coff*)
1557   dynamic_linker=no
1558   ;;
1559
1560 # This must be Linux ELF.
1561 linux*)
1562   version_type=linux
1563   need_lib_prefix=no
1564   need_version=no
1565   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1566   soname_spec='${libname}${release}${shared_ext}$major'
1567   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
1568   shlibpath_var=LD_LIBRARY_PATH
1569   shlibpath_overrides_runpath=no
1570   # This implies no fast_install, which is unacceptable.
1571   # Some rework will be needed to allow for fast_install
1572   # before this can be enabled.
1573   hardcode_into_libs=yes
1574
1575   # Append ld.so.conf contents to the search path
1576   if test -f /etc/ld.so.conf; then
1577     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:,    ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
1578     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
1579   fi
1580
1581   # We used to test for /lib/ld.so.1 and disable shared libraries on
1582   # powerpc, because MkLinux only supported shared libraries with the
1583   # GNU dynamic linker.  Since this was broken with cross compilers,
1584   # most powerpc-linux boxes support dynamic linking these days and
1585   # people can always --disable-shared, the test was removed, and we
1586   # assume the GNU/Linux dynamic linker is in use.
1587   dynamic_linker='GNU/Linux ld.so'
1588   ;;
1589
1590 knetbsd*-gnu)
1591   version_type=linux
1592   need_lib_prefix=no
1593   need_version=no
1594   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
1595   soname_spec='${libname}${release}${shared_ext}$major'
1596   shlibpath_var=LD_LIBRARY_PATH
1597   shlibpath_overrides_runpath=no
1598   hardcode_into_libs=yes
1599   dynamic_linker='GNU ld.so'
1600   ;;
1601
1602 netbsd*)
1603   version_type=sunos
1604   need_lib_prefix=no
1605   need_version=no
1606   if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
1607     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
1608     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
1609     dynamic_linker='NetBSD (a.out) ld.so'
1610   else
1611     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
1612     soname_spec='${libname}${release}${shared_ext}$major'
1613     dynamic_linker='NetBSD ld.elf_so'
1614   fi
1615   shlibpath_var=LD_LIBRARY_PATH
1616   shlibpath_overrides_runpath=yes
1617   hardcode_into_libs=yes
1618   ;;
1619
1620 newsos6)
1621   version_type=linux
1622   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1623   shlibpath_var=LD_LIBRARY_PATH
1624   shlibpath_overrides_runpath=yes
1625   ;;
1626
1627 nto-qnx*)
1628   version_type=linux
1629   need_lib_prefix=no
1630   need_version=no
1631   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1632   soname_spec='${libname}${release}${shared_ext}$major'
1633   shlibpath_var=LD_LIBRARY_PATH
1634   shlibpath_overrides_runpath=yes
1635   ;;
1636
1637 openbsd*)
1638   version_type=sunos
1639   sys_lib_dlsearch_path_spec="/usr/lib"
1640   need_lib_prefix=no
1641   # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
1642   case $host_os in
1643     openbsd3.3 | openbsd3.3.*) need_version=yes ;;
1644     *)                         need_version=no  ;;
1645   esac
1646   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
1647   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
1648   shlibpath_var=LD_LIBRARY_PATH
1649   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
1650     case $host_os in
1651       openbsd2.[[89]] | openbsd2.[[89]].*)
1652         shlibpath_overrides_runpath=no
1653         ;;
1654       *)
1655         shlibpath_overrides_runpath=yes
1656         ;;
1657       esac
1658   else
1659     shlibpath_overrides_runpath=yes
1660   fi
1661   ;;
1662
1663 os2*)
1664   libname_spec='$name'
1665   shrext_cmds=".dll"
1666   need_lib_prefix=no
1667   library_names_spec='$libname${shared_ext} $libname.a'
1668   dynamic_linker='OS/2 ld.exe'
1669   shlibpath_var=LIBPATH
1670   ;;
1671
1672 osf3* | osf4* | osf5*)
1673   version_type=osf
1674   need_lib_prefix=no
1675   need_version=no
1676   soname_spec='${libname}${release}${shared_ext}$major'
1677   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1678   shlibpath_var=LD_LIBRARY_PATH
1679   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
1680   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
1681   ;;
1682
1683 solaris*)
1684   version_type=linux
1685   need_lib_prefix=no
1686   need_version=no
1687   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1688   soname_spec='${libname}${release}${shared_ext}$major'
1689   shlibpath_var=LD_LIBRARY_PATH
1690   shlibpath_overrides_runpath=yes
1691   hardcode_into_libs=yes
1692   # ldd complains unless libraries are executable
1693   postinstall_cmds='chmod +x $lib'
1694   ;;
1695
1696 sunos4*)
1697   version_type=sunos
1698   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
1699   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
1700   shlibpath_var=LD_LIBRARY_PATH
1701   shlibpath_overrides_runpath=yes
1702   if test "$with_gnu_ld" = yes; then
1703     need_lib_prefix=no
1704   fi
1705   need_version=yes
1706   ;;
1707
1708 sysv4 | sysv4.3*)
1709   version_type=linux
1710   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1711   soname_spec='${libname}${release}${shared_ext}$major'
1712   shlibpath_var=LD_LIBRARY_PATH
1713   case $host_vendor in
1714     sni)
1715       shlibpath_overrides_runpath=no
1716       need_lib_prefix=no
1717       export_dynamic_flag_spec='${wl}-Blargedynsym'
1718       runpath_var=LD_RUN_PATH
1719       ;;
1720     siemens)
1721       need_lib_prefix=no
1722       ;;
1723     motorola)
1724       need_lib_prefix=no
1725       need_version=no
1726       shlibpath_overrides_runpath=no
1727       sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
1728       ;;
1729   esac
1730   ;;
1731
1732 sysv4*MP*)
1733   if test -d /usr/nec ;then
1734     version_type=linux
1735     library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
1736     soname_spec='$libname${shared_ext}.$major'
1737     shlibpath_var=LD_LIBRARY_PATH
1738   fi
1739   ;;
1740
1741 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
1742   version_type=freebsd-elf
1743   need_lib_prefix=no
1744   need_version=no
1745   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
1746   soname_spec='${libname}${release}${shared_ext}$major'
1747   shlibpath_var=LD_LIBRARY_PATH
1748   hardcode_into_libs=yes
1749   if test "$with_gnu_ld" = yes; then
1750     sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
1751     shlibpath_overrides_runpath=no
1752   else
1753     sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
1754     shlibpath_overrides_runpath=yes
1755     case $host_os in
1756       sco3.2v5*)
1757         sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
1758         ;;
1759     esac
1760   fi
1761   sys_lib_dlsearch_path_spec='/usr/lib'
1762   ;;
1763
1764 uts4*)
1765   version_type=linux
1766   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1767   soname_spec='${libname}${release}${shared_ext}$major'
1768   shlibpath_var=LD_LIBRARY_PATH
1769   ;;
1770
1771 *)
1772   dynamic_linker=no
1773   ;;
1774 esac
1775 AC_MSG_RESULT([$dynamic_linker])
1776 test "$dynamic_linker" = no && can_build_shared=no
1777
1778 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
1779 if test "$GCC" = yes; then
1780   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
1781 fi
1782 ])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
1783
1784
1785 # _LT_AC_TAGCONFIG
1786 # ----------------
1787 AC_DEFUN([_LT_AC_TAGCONFIG],
1788 [AC_ARG_WITH([tags],
1789     [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@],
1790         [include additional configurations @<:@automatic@:>@])],
1791     [tagnames="$withval"])
1792
1793 if test -f "$ltmain" && test -n "$tagnames"; then
1794   if test ! -f "${ofile}"; then
1795     AC_MSG_WARN([output file `$ofile' does not exist])
1796   fi
1797
1798   if test -z "$LTCC"; then
1799     eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
1800     if test -z "$LTCC"; then
1801       AC_MSG_WARN([output file `$ofile' does not look like a libtool script])
1802     else
1803       AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
1804     fi
1805   fi
1806   if test -z "$LTCFLAGS"; then
1807     eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`"
1808   fi
1809
1810   # Extract list of available tagged configurations in $ofile.
1811   # Note that this assumes the entire list is on one line.
1812   available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
1813
1814   lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1815   for tagname in $tagnames; do
1816     IFS="$lt_save_ifs"
1817     # Check whether tagname contains only valid characters
1818     case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in
1819     "") ;;
1820     *)  AC_MSG_ERROR([invalid tag name: $tagname])
1821         ;;
1822     esac
1823
1824     if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null
1825     then
1826       AC_MSG_ERROR([tag name \"$tagname\" already exists])
1827     fi
1828
1829     # Update the list of available tags.
1830     if test -n "$tagname"; then
1831       echo appending configuration tag \"$tagname\" to $ofile
1832
1833       case $tagname in
1834       CXX)
1835         if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
1836             ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
1837             (test "X$CXX" != "Xg++"))) ; then
1838           AC_LIBTOOL_LANG_CXX_CONFIG
1839         else
1840           tagname=""
1841         fi
1842         ;;
1843
1844       F77)
1845         if test -n "$F77" && test "X$F77" != "Xno"; then
1846           AC_LIBTOOL_LANG_F77_CONFIG
1847         else
1848           tagname=""
1849         fi
1850         ;;
1851
1852       GCJ)
1853         if test -n "$GCJ" && test "X$GCJ" != "Xno"; then
1854           AC_LIBTOOL_LANG_GCJ_CONFIG
1855         else
1856           tagname=""
1857         fi
1858         ;;
1859
1860       RC)
1861         AC_LIBTOOL_LANG_RC_CONFIG
1862         ;;
1863
1864       *)
1865         AC_MSG_ERROR([Unsupported tag name: $tagname])
1866         ;;
1867       esac
1868
1869       # Append the new tag name to the list of available tags.
1870       if test -n "$tagname" ; then
1871       available_tags="$available_tags $tagname"
1872     fi
1873     fi
1874   done
1875   IFS="$lt_save_ifs"
1876
1877   # Now substitute the updated list of available tags.
1878   if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
1879     mv "${ofile}T" "$ofile"
1880     chmod +x "$ofile"
1881   else
1882     rm -f "${ofile}T"
1883     AC_MSG_ERROR([unable to update list of available tagged configurations.])
1884   fi
1885 fi
1886 ])# _LT_AC_TAGCONFIG
1887
1888
1889 # AC_LIBTOOL_DLOPEN
1890 # -----------------
1891 # enable checks for dlopen support
1892 AC_DEFUN([AC_LIBTOOL_DLOPEN],
1893  [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])
1894 ])# AC_LIBTOOL_DLOPEN
1895
1896
1897 # AC_LIBTOOL_WIN32_DLL
1898 # --------------------
1899 # declare package support for building win32 DLLs
1900 AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
1901 [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
1902 ])# AC_LIBTOOL_WIN32_DLL
1903
1904
1905 # AC_ENABLE_SHARED([DEFAULT])
1906 # ---------------------------
1907 # implement the --enable-shared flag
1908 # DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1909 AC_DEFUN([AC_ENABLE_SHARED],
1910 [define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
1911 AC_ARG_ENABLE([shared],
1912     [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
1913         [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])],
1914     [p=${PACKAGE-default}
1915     case $enableval in
1916     yes) enable_shared=yes ;;
1917     no) enable_shared=no ;;
1918     *)
1919       enable_shared=no
1920       # Look at the argument we got.  We use all the common list separators.
1921       lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1922       for pkg in $enableval; do
1923         IFS="$lt_save_ifs"
1924         if test "X$pkg" = "X$p"; then
1925           enable_shared=yes
1926         fi
1927       done
1928       IFS="$lt_save_ifs"
1929       ;;
1930     esac],
1931     [enable_shared=]AC_ENABLE_SHARED_DEFAULT)
1932 ])# AC_ENABLE_SHARED
1933
1934
1935 # AC_DISABLE_SHARED
1936 # -----------------
1937 # set the default shared flag to --disable-shared
1938 AC_DEFUN([AC_DISABLE_SHARED],
1939 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1940 AC_ENABLE_SHARED(no)
1941 ])# AC_DISABLE_SHARED
1942
1943
1944 # AC_ENABLE_STATIC([DEFAULT])
1945 # ---------------------------
1946 # implement the --enable-static flag
1947 # DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1948 AC_DEFUN([AC_ENABLE_STATIC],
1949 [define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
1950 AC_ARG_ENABLE([static],
1951     [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@],
1952         [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])],
1953     [p=${PACKAGE-default}
1954     case $enableval in
1955     yes) enable_static=yes ;;
1956     no) enable_static=no ;;
1957     *)
1958      enable_static=no
1959       # Look at the argument we got.  We use all the common list separators.
1960       lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1961       for pkg in $enableval; do
1962         IFS="$lt_save_ifs"
1963         if test "X$pkg" = "X$p"; then
1964           enable_static=yes
1965         fi
1966       done
1967       IFS="$lt_save_ifs"
1968       ;;
1969     esac],
1970     [enable_static=]AC_ENABLE_STATIC_DEFAULT)
1971 ])# AC_ENABLE_STATIC
1972
1973
1974 # AC_DISABLE_STATIC
1975 # -----------------
1976 # set the default static flag to --disable-static
1977 AC_DEFUN([AC_DISABLE_STATIC],
1978 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1979 AC_ENABLE_STATIC(no)
1980 ])# AC_DISABLE_STATIC
1981
1982
1983 # AC_ENABLE_FAST_INSTALL([DEFAULT])
1984 # ---------------------------------
1985 # implement the --enable-fast-install flag
1986 # DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1987 AC_DEFUN([AC_ENABLE_FAST_INSTALL],
1988 [define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
1989 AC_ARG_ENABLE([fast-install],
1990     [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
1991     [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
1992     [p=${PACKAGE-default}
1993     case $enableval in
1994     yes) enable_fast_install=yes ;;
1995     no) enable_fast_install=no ;;
1996     *)
1997       enable_fast_install=no
1998       # Look at the argument we got.  We use all the common list separators.
1999       lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2000       for pkg in $enableval; do
2001         IFS="$lt_save_ifs"
2002         if test "X$pkg" = "X$p"; then
2003           enable_fast_install=yes
2004         fi
2005       done
2006       IFS="$lt_save_ifs"
2007       ;;
2008     esac],
2009     [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT)
2010 ])# AC_ENABLE_FAST_INSTALL
2011
2012
2013 # AC_DISABLE_FAST_INSTALL
2014 # -----------------------
2015 # set the default to --disable-fast-install
2016 AC_DEFUN([AC_DISABLE_FAST_INSTALL],
2017 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2018 AC_ENABLE_FAST_INSTALL(no)
2019 ])# AC_DISABLE_FAST_INSTALL
2020
2021
2022 # AC_LIBTOOL_PICMODE([MODE])
2023 # --------------------------
2024 # implement the --with-pic flag
2025 # MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
2026 AC_DEFUN([AC_LIBTOOL_PICMODE],
2027 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2028 pic_mode=ifelse($#,1,$1,default)
2029 ])# AC_LIBTOOL_PICMODE
2030
2031
2032 # AC_PROG_EGREP
2033 # -------------
2034 # This is predefined starting with Autoconf 2.54, so this conditional
2035 # definition can be removed once we require Autoconf 2.54 or later.
2036 m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP],
2037 [AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep],
2038    [if echo a | (grep -E '(a|b)') >/dev/null 2>&1
2039     then ac_cv_prog_egrep='grep -E'
2040     else ac_cv_prog_egrep='egrep'
2041     fi])
2042  EGREP=$ac_cv_prog_egrep
2043  AC_SUBST([EGREP])
2044 ])])
2045
2046
2047 # AC_PATH_TOOL_PREFIX
2048 # -------------------
2049 # find a file program which can recognise shared library
2050 AC_DEFUN([AC_PATH_TOOL_PREFIX],
2051 [AC_REQUIRE([AC_PROG_EGREP])dnl
2052 AC_MSG_CHECKING([for $1])
2053 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2054 [case $MAGIC_CMD in
2055 [[\\/*] |  ?:[\\/]*])
2056   lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2057   ;;
2058 *)
2059   lt_save_MAGIC_CMD="$MAGIC_CMD"
2060   lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2061 dnl $ac_dummy forces splitting on constant user-supplied paths.
2062 dnl POSIX.2 word splitting is done only on the output of word expansions,
2063 dnl not every word.  This closes a longstanding sh security hole.
2064   ac_dummy="ifelse([$2], , $PATH, [$2])"
2065   for ac_dir in $ac_dummy; do
2066     IFS="$lt_save_ifs"
2067     test -z "$ac_dir" && ac_dir=.
2068     if test -f $ac_dir/$1; then
2069       lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2070       if test -n "$file_magic_test_file"; then
2071         case $deplibs_check_method in
2072         "file_magic "*)
2073           file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2074           MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2075           if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2076             $EGREP "$file_magic_regex" > /dev/null; then
2077             :
2078           else
2079             cat <<EOF 1>&2
2080
2081 *** Warning: the command libtool uses to detect shared libraries,
2082 *** $file_magic_cmd, produces output that libtool cannot recognize.
2083 *** The result is that libtool may fail to recognize shared libraries
2084 *** as such.  This will affect the creation of libtool libraries that
2085 *** depend on shared libraries, but programs linked with such libtool
2086 *** libraries will work regardless of this problem.  Nevertheless, you
2087 *** may want to report the problem to your system manager and/or to
2088 *** bug-libtool@gnu.org
2089
2090 EOF
2091           fi ;;
2092         esac
2093       fi
2094       break
2095     fi
2096   done
2097   IFS="$lt_save_ifs"
2098   MAGIC_CMD="$lt_save_MAGIC_CMD"
2099   ;;
2100 esac])
2101 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2102 if test -n "$MAGIC_CMD"; then
2103   AC_MSG_RESULT($MAGIC_CMD)
2104 else
2105   AC_MSG_RESULT(no)
2106 fi
2107 ])# AC_PATH_TOOL_PREFIX
2108
2109
2110 # AC_PATH_MAGIC
2111 # -------------
2112 # find a file program which can recognise a shared library
2113 AC_DEFUN([AC_PATH_MAGIC],
2114 [AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
2115 if test -z "$lt_cv_path_MAGIC_CMD"; then
2116   if test -n "$ac_tool_prefix"; then
2117     AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
2118   else
2119     MAGIC_CMD=:
2120   fi
2121 fi
2122 ])# AC_PATH_MAGIC
2123
2124
2125 # AC_PROG_LD
2126 # ----------
2127 # find the pathname to the GNU or non-GNU linker
2128 AC_DEFUN([AC_PROG_LD],
2129 [AC_ARG_WITH([gnu-ld],
2130     [AC_HELP_STRING([--with-gnu-ld],
2131         [assume the C compiler uses GNU ld @<:@default=no@:>@])],
2132     [test "$withval" = no || with_gnu_ld=yes],
2133     [with_gnu_ld=no])
2134 AC_REQUIRE([LT_AC_PROG_SED])dnl
2135 AC_REQUIRE([AC_PROG_CC])dnl
2136 AC_REQUIRE([AC_CANONICAL_HOST])dnl
2137 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
2138 ac_prog=ld
2139 if test "$GCC" = yes; then
2140   # Check if gcc -print-prog-name=ld gives a path.
2141   AC_MSG_CHECKING([for ld used by $CC])
2142   case $host in
2143   *-*-mingw*)
2144     # gcc leaves a trailing carriage return which upsets mingw
2145     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2146   *)
2147     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2148   esac
2149   case $ac_prog in
2150     # Accept absolute paths.
2151     [[\\/]]* | ?:[[\\/]]*)
2152       re_direlt='/[[^/]][[^/]]*/\.\./'
2153       # Canonicalize the pathname of ld
2154       ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'`
2155       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
2156         ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"`
2157       done
2158       test -z "$LD" && LD="$ac_prog"
2159       ;;
2160   "")
2161     # If it fails, then pretend we aren't using GCC.
2162     ac_prog=ld
2163     ;;
2164   *)
2165     # If it is relative, then search for the first ld in PATH.
2166     with_gnu_ld=unknown
2167     ;;
2168   esac
2169 elif test "$with_gnu_ld" = yes; then
2170   AC_MSG_CHECKING([for GNU ld])
2171 else
2172   AC_MSG_CHECKING([for non-GNU ld])
2173 fi
2174 AC_CACHE_VAL(lt_cv_path_LD,
2175 [if test -z "$LD"; then
2176   lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2177   for ac_dir in $PATH; do
2178     IFS="$lt_save_ifs"
2179     test -z "$ac_dir" && ac_dir=.
2180     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
2181       lt_cv_path_LD="$ac_dir/$ac_prog"
2182       # Check to see if the program is GNU ld.  I'd rather use --version,
2183       # but apparently some variants of GNU ld only accept -v.
2184       # Break only if it was the GNU/non-GNU ld that we prefer.
2185       case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
2186       *GNU* | *'with BFD'*)
2187         test "$with_gnu_ld" != no && break
2188         ;;
2189       *)
2190         test "$with_gnu_ld" != yes && break
2191         ;;
2192       esac
2193     fi
2194   done
2195   IFS="$lt_save_ifs"
2196 else
2197   lt_cv_path_LD="$LD" # Let the user override the test with a path.
2198 fi])
2199 LD="$lt_cv_path_LD"
2200 if test -n "$LD"; then
2201   AC_MSG_RESULT($LD)
2202 else
2203   AC_MSG_RESULT(no)
2204 fi
2205 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
2206 AC_PROG_LD_GNU
2207 ])# AC_PROG_LD
2208
2209
2210 # AC_PROG_LD_GNU
2211 # --------------
2212 AC_DEFUN([AC_PROG_LD_GNU],
2213 [AC_REQUIRE([AC_PROG_EGREP])dnl
2214 AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
2215 [# I'd rather use --version here, but apparently some GNU lds only accept -v.
2216 case `$LD -v 2>&1 </dev/null` in
2217 *GNU* | *'with BFD'*)
2218   lt_cv_prog_gnu_ld=yes
2219   ;;
2220 *)
2221   lt_cv_prog_gnu_ld=no
2222   ;;
2223 esac])
2224 with_gnu_ld=$lt_cv_prog_gnu_ld
2225 ])# AC_PROG_LD_GNU
2226
2227
2228 # AC_PROG_LD_RELOAD_FLAG
2229 # ----------------------
2230 # find reload flag for linker
2231 #   -- PORTME Some linkers may need a different reload flag.
2232 AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
2233 [AC_CACHE_CHECK([for $LD option to reload object files],
2234   lt_cv_ld_reload_flag,
2235   [lt_cv_ld_reload_flag='-r'])
2236 reload_flag=$lt_cv_ld_reload_flag
2237 case $reload_flag in
2238 "" | " "*) ;;
2239 *) reload_flag=" $reload_flag" ;;
2240 esac
2241 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2242 case $host_os in
2243   darwin*)
2244     if test "$GCC" = yes; then
2245       reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
2246     else
2247       reload_cmds='$LD$reload_flag -o $output$reload_objs'
2248     fi
2249     ;;
2250 esac
2251 ])# AC_PROG_LD_RELOAD_FLAG
2252
2253
2254 # AC_DEPLIBS_CHECK_METHOD
2255 # -----------------------
2256 # how to check for library dependencies
2257 #  -- PORTME fill in with the dynamic library characteristics
2258 AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
2259 [AC_CACHE_CHECK([how to recognise dependent libraries],
2260 lt_cv_deplibs_check_method,
2261 [lt_cv_file_magic_cmd='$MAGIC_CMD'
2262 lt_cv_file_magic_test_file=
2263 lt_cv_deplibs_check_method='unknown'
2264 # Need to set the preceding variable on all platforms that support
2265 # interlibrary dependencies.
2266 # 'none' -- dependencies not supported.
2267 # `unknown' -- same as none, but documents that we really don't know.
2268 # 'pass_all' -- all dependencies passed with no checks.
2269 # 'test_compile' -- check by making test program.
2270 # 'file_magic [[regex]]' -- check by looking for files in library path
2271 # which responds to the $file_magic_cmd with a given extended regex.
2272 # If you have `file' or equivalent on your system and you're not sure
2273 # whether `pass_all' will *always* work, you probably want this one.
2274
2275 case $host_os in
2276 aix4* | aix5*)
2277   lt_cv_deplibs_check_method=pass_all
2278   ;;
2279
2280 beos*)
2281   lt_cv_deplibs_check_method=pass_all
2282   ;;
2283
2284 bsdi[[45]]*)
2285   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
2286   lt_cv_file_magic_cmd='/usr/bin/file -L'
2287   lt_cv_file_magic_test_file=/shlib/libc.so
2288   ;;
2289
2290 cygwin*)
2291   # func_win32_libid is a shell function defined in ltmain.sh
2292   lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
2293   lt_cv_file_magic_cmd='func_win32_libid'
2294   ;;
2295
2296 mingw* | pw32*)
2297   # Base MSYS/MinGW do not provide the 'file' command needed by
2298   # func_win32_libid shell function, so use a weaker test based on 'objdump'.
2299   lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
2300   lt_cv_file_magic_cmd='$OBJDUMP -f'
2301   ;;
2302
2303 darwin* | rhapsody*)
2304   lt_cv_deplibs_check_method=pass_all
2305   ;;
2306
2307 freebsd* | kfreebsd*-gnu | dragonfly*)
2308   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
2309     case $host_cpu in
2310     i*86 )
2311       # Not sure whether the presence of OpenBSD here was a mistake.
2312       # Let's accept both of them until this is cleared up.
2313       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
2314       lt_cv_file_magic_cmd=/usr/bin/file
2315       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
2316       ;;
2317     esac
2318   else
2319     lt_cv_deplibs_check_method=pass_all
2320   fi
2321   ;;
2322
2323 gnu*)
2324   lt_cv_deplibs_check_method=pass_all
2325   ;;
2326
2327 hpux10.20* | hpux11*)
2328   lt_cv_file_magic_cmd=/usr/bin/file
2329   case $host_cpu in
2330   ia64*)
2331     lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
2332     lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
2333     ;;
2334   hppa*64*)
2335     [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]']
2336     lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
2337     ;;
2338   *)
2339     lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
2340     lt_cv_file_magic_test_file=/usr/lib/libc.sl
2341     ;;
2342   esac
2343   ;;
2344
2345 interix3*)
2346   # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
2347   lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
2348   ;;
2349
2350 irix5* | irix6* | nonstopux*)
2351   case $LD in
2352   *-32|*"-32 ") libmagic=32-bit;;
2353   *-n32|*"-n32 ") libmagic=N32;;
2354   *-64|*"-64 ") libmagic=64-bit;;
2355   *) libmagic=never-match;;
2356   esac
2357   lt_cv_deplibs_check_method=pass_all
2358   ;;
2359
2360 # This must be Linux ELF.
2361 linux*)
2362   lt_cv_deplibs_check_method=pass_all
2363   ;;
2364
2365 netbsd*)
2366   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
2367     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
2368   else
2369     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
2370   fi
2371   ;;
2372
2373 newos6*)
2374   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
2375   lt_cv_file_magic_cmd=/usr/bin/file
2376   lt_cv_file_magic_test_file=/usr/lib/libnls.so
2377   ;;
2378
2379 nto-qnx*)
2380   lt_cv_deplibs_check_method=unknown
2381   ;;
2382
2383 openbsd*)
2384   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2385     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
2386   else
2387     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
2388   fi
2389   ;;
2390
2391 osf3* | osf4* | osf5*)
2392   lt_cv_deplibs_check_method=pass_all
2393   ;;
2394
2395 solaris*)
2396   lt_cv_deplibs_check_method=pass_all
2397   ;;
2398
2399 sysv4 | sysv4.3*)
2400   case $host_vendor in
2401   motorola)
2402     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]]'
2403     lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
2404     ;;
2405   ncr)
2406     lt_cv_deplibs_check_method=pass_all
2407     ;;
2408   sequent)
2409     lt_cv_file_magic_cmd='/bin/file'
2410     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
2411     ;;
2412   sni)
2413     lt_cv_file_magic_cmd='/bin/file'
2414     lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
2415     lt_cv_file_magic_test_file=/lib/libc.so
2416     ;;
2417   siemens)
2418     lt_cv_deplibs_check_method=pass_all
2419     ;;
2420   pc)
2421     lt_cv_deplibs_check_method=pass_all
2422     ;;
2423   esac
2424   ;;
2425
2426 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2427   lt_cv_deplibs_check_method=pass_all
2428   ;;
2429 esac
2430 ])
2431 file_magic_cmd=$lt_cv_file_magic_cmd
2432 deplibs_check_method=$lt_cv_deplibs_check_method
2433 test -z "$deplibs_check_method" && deplibs_check_method=unknown
2434 ])# AC_DEPLIBS_CHECK_METHOD
2435
2436
2437 # AC_PROG_NM
2438 # ----------
2439 # find the pathname to a BSD-compatible name lister
2440 AC_DEFUN([AC_PROG_NM],
2441 [AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM,
2442 [if test -n "$NM"; then
2443   # Let the user override the test.
2444   lt_cv_path_NM="$NM"
2445 else
2446   lt_nm_to_check="${ac_tool_prefix}nm"
2447   if test -n "$ac_tool_prefix" && test "$build" = "$host"; then 
2448     lt_nm_to_check="$lt_nm_to_check nm"
2449   fi
2450   for lt_tmp_nm in $lt_nm_to_check; do
2451     lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2452     for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
2453       IFS="$lt_save_ifs"
2454       test -z "$ac_dir" && ac_dir=.
2455       tmp_nm="$ac_dir/$lt_tmp_nm"
2456       if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
2457         # Check to see if the nm accepts a BSD-compat flag.
2458         # Adding the `sed 1q' prevents false positives on HP-UX, which says:
2459         #   nm: unknown option "B" ignored
2460         # Tru64's nm complains that /dev/null is an invalid object file
2461         case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
2462         */dev/null* | *'Invalid file or object type'*)
2463           lt_cv_path_NM="$tmp_nm -B"
2464           break
2465           ;;
2466         *)
2467           case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
2468           */dev/null*)
2469             lt_cv_path_NM="$tmp_nm -p"
2470             break
2471             ;;
2472           *)
2473             lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
2474             continue # so that we can try to find one that supports BSD flags
2475             ;;
2476           esac
2477           ;;
2478         esac
2479       fi
2480     done
2481     IFS="$lt_save_ifs"
2482   done
2483   test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
2484 fi])
2485 NM="$lt_cv_path_NM"
2486 ])# AC_PROG_NM
2487
2488
2489 # AC_CHECK_LIBM
2490 # -------------
2491 # check for math library
2492 AC_DEFUN([AC_CHECK_LIBM],
2493 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
2494 LIBM=
2495 case $host in
2496 *-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
2497   # These system don't have libm, or don't need it
2498   ;;
2499 *-ncr-sysv4.3*)
2500   AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
2501   AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
2502   ;;
2503 *)
2504   AC_CHECK_LIB(m, cos, LIBM="-lm")
2505   ;;
2506 esac
2507 ])# AC_CHECK_LIBM
2508
2509
2510 # AC_LIBLTDL_CONVENIENCE([DIRECTORY])
2511 # -----------------------------------
2512 # sets LIBLTDL to the link flags for the libltdl convenience library and
2513 # LTDLINCL to the include flags for the libltdl header and adds
2514 # --enable-ltdl-convenience to the configure arguments.  Note that
2515 # AC_CONFIG_SUBDIRS is not called here.  If DIRECTORY is not provided,
2516 # it is assumed to be `libltdl'.  LIBLTDL will be prefixed with
2517 # '${top_builddir}/' and LTDLINCL will be prefixed with '${top_srcdir}/'
2518 # (note the single quotes!).  If your package is not flat and you're not
2519 # using automake, define top_builddir and top_srcdir appropriately in
2520 # the Makefiles.
2521 AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
2522 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2523   case $enable_ltdl_convenience in
2524   no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
2525   "") enable_ltdl_convenience=yes
2526       ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
2527   esac
2528   LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
2529   LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
2530   # For backwards non-gettext consistent compatibility...
2531   INCLTDL="$LTDLINCL"
2532 ])# AC_LIBLTDL_CONVENIENCE
2533
2534
2535 # AC_LIBLTDL_INSTALLABLE([DIRECTORY])
2536 # -----------------------------------
2537 # sets LIBLTDL to the link flags for the libltdl installable library and
2538 # LTDLINCL to the include flags for the libltdl header and adds
2539 # --enable-ltdl-install to the configure arguments.  Note that
2540 # AC_CONFIG_SUBDIRS is not called here.  If DIRECTORY is not provided,
2541 # and an installed libltdl is not found, it is assumed to be `libltdl'.
2542 # LIBLTDL will be prefixed with '${top_builddir}/'# and LTDLINCL with
2543 # '${top_srcdir}/' (note the single quotes!).  If your package is not
2544 # flat and you're not using automake, define top_builddir and top_srcdir
2545 # appropriately in the Makefiles.
2546 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
2547 AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
2548 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2549   AC_CHECK_LIB(ltdl, lt_dlinit,
2550   [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
2551   [if test x"$enable_ltdl_install" = xno; then
2552      AC_MSG_WARN([libltdl not installed, but installation disabled])
2553    else
2554      enable_ltdl_install=yes
2555    fi
2556   ])
2557   if test x"$enable_ltdl_install" = x"yes"; then
2558     ac_configure_args="$ac_configure_args --enable-ltdl-install"
2559     LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
2560     LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
2561   else
2562     ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
2563     LIBLTDL="-lltdl"
2564     LTDLINCL=
2565   fi
2566   # For backwards non-gettext consistent compatibility...
2567   INCLTDL="$LTDLINCL"
2568 ])# AC_LIBLTDL_INSTALLABLE
2569
2570
2571 # AC_LIBTOOL_CXX
2572 # --------------
2573 # enable support for C++ libraries
2574 AC_DEFUN([AC_LIBTOOL_CXX],
2575 [AC_REQUIRE([_LT_AC_LANG_CXX])
2576 ])# AC_LIBTOOL_CXX
2577
2578
2579 # _LT_AC_LANG_CXX
2580 # ---------------
2581 AC_DEFUN([_LT_AC_LANG_CXX],
2582 [AC_REQUIRE([AC_PROG_CXX])
2583 AC_REQUIRE([_LT_AC_PROG_CXXCPP])
2584 _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX])
2585 ])# _LT_AC_LANG_CXX
2586
2587 # _LT_AC_PROG_CXXCPP
2588 # ------------------
2589 AC_DEFUN([_LT_AC_PROG_CXXCPP],
2590 [
2591 AC_REQUIRE([AC_PROG_CXX])
2592 if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
2593     ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
2594     (test "X$CXX" != "Xg++"))) ; then
2595   AC_PROG_CXXCPP
2596 fi
2597 ])# _LT_AC_PROG_CXXCPP
2598
2599 # AC_LIBTOOL_F77
2600 # --------------
2601 # enable support for Fortran 77 libraries
2602 AC_DEFUN([AC_LIBTOOL_F77],
2603 [AC_REQUIRE([_LT_AC_LANG_F77])
2604 ])# AC_LIBTOOL_F77
2605
2606
2607 # _LT_AC_LANG_F77
2608 # ---------------
2609 AC_DEFUN([_LT_AC_LANG_F77],
2610 [AC_REQUIRE([AC_PROG_F77])
2611 _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77])
2612 ])# _LT_AC_LANG_F77
2613
2614
2615 # AC_LIBTOOL_GCJ
2616 # --------------
2617 # enable support for GCJ libraries
2618 AC_DEFUN([AC_LIBTOOL_GCJ],
2619 [AC_REQUIRE([_LT_AC_LANG_GCJ])
2620 ])# AC_LIBTOOL_GCJ
2621
2622
2623 # _LT_AC_LANG_GCJ
2624 # ---------------
2625 AC_DEFUN([_LT_AC_LANG_GCJ],
2626 [AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
2627   [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
2628     [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
2629       [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
2630          [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
2631            [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
2632 _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ])
2633 ])# _LT_AC_LANG_GCJ
2634
2635
2636 # AC_LIBTOOL_RC
2637 # -------------
2638 # enable support for Windows resource files
2639 AC_DEFUN([AC_LIBTOOL_RC],
2640 [AC_REQUIRE([LT_AC_PROG_RC])
2641 _LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC])
2642 ])# AC_LIBTOOL_RC
2643
2644
2645 # AC_LIBTOOL_LANG_C_CONFIG
2646 # ------------------------
2647 # Ensure that the configuration vars for the C compiler are
2648 # suitably defined.  Those variables are subsequently used by
2649 # AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
2650 AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG])
2651 AC_DEFUN([_LT_AC_LANG_C_CONFIG],
2652 [lt_save_CC="$CC"
2653 AC_LANG_PUSH(C)
2654
2655 # Source file extension for C test sources.
2656 ac_ext=c
2657
2658 # Object file extension for compiled C test sources.
2659 objext=o
2660 _LT_AC_TAGVAR(objext, $1)=$objext
2661
2662 # Code to be used in simple compile tests
2663 lt_simple_compile_test_code="int some_variable = 0;\n"
2664
2665 # Code to be used in simple link tests
2666 lt_simple_link_test_code='int main(){return(0);}\n'
2667
2668 _LT_AC_SYS_COMPILER
2669
2670 # save warnings/boilerplate of simple test code
2671 _LT_COMPILER_BOILERPLATE
2672 _LT_LINKER_BOILERPLATE
2673
2674 ## CAVEAT EMPTOR:
2675 ## There is no encapsulation within the following macros, do not change
2676 ## the running order or otherwise move them around unless you know exactly
2677 ## what you are doing...
2678 AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
2679 AC_LIBTOOL_PROG_COMPILER_PIC($1)
2680 AC_LIBTOOL_PROG_CC_C_O($1)
2681 AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
2682 AC_LIBTOOL_PROG_LD_SHLIBS($1)
2683 AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
2684 AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
2685 AC_LIBTOOL_SYS_LIB_STRIP
2686 AC_LIBTOOL_DLOPEN_SELF
2687
2688 # Report which library types will actually be built
2689 AC_MSG_CHECKING([if libtool supports shared libraries])
2690 AC_MSG_RESULT([$can_build_shared])
2691
2692 AC_MSG_CHECKING([whether to build shared libraries])
2693 test "$can_build_shared" = "no" && enable_shared=no
2694
2695 # On AIX, shared libraries and static libraries use the same namespace, and
2696 # are all built from PIC.
2697 case $host_os in
2698 aix3*)
2699   test "$enable_shared" = yes && enable_static=no
2700   if test -n "$RANLIB"; then
2701     archive_cmds="$archive_cmds~\$RANLIB \$lib"
2702     postinstall_cmds='$RANLIB $lib'
2703   fi
2704   ;;
2705
2706 aix4* | aix5*)
2707   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
2708     test "$enable_shared" = yes && enable_static=no
2709   fi
2710     ;;
2711 esac
2712 AC_MSG_RESULT([$enable_shared])
2713
2714 AC_MSG_CHECKING([whether to build static libraries])
2715 # Make sure either enable_shared or enable_static is yes.
2716 test "$enable_shared" = yes || enable_static=yes
2717 AC_MSG_RESULT([$enable_static])
2718
2719 AC_LIBTOOL_CONFIG($1)
2720
2721 AC_LANG_POP
2722 CC="$lt_save_CC"
2723 ])# AC_LIBTOOL_LANG_C_CONFIG
2724
2725
2726 # AC_LIBTOOL_LANG_CXX_CONFIG
2727 # --------------------------
2728 # Ensure that the configuration vars for the C compiler are
2729 # suitably defined.  Those variables are subsequently used by
2730 # AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
2731 AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)])
2732 AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
2733 [AC_LANG_PUSH(C++)
2734 AC_REQUIRE([AC_PROG_CXX])
2735 AC_REQUIRE([_LT_AC_PROG_CXXCPP])
2736
2737 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
2738 _LT_AC_TAGVAR(allow_undefined_flag, $1)=
2739 _LT_AC_TAGVAR(always_export_symbols, $1)=no
2740 _LT_AC_TAGVAR(archive_expsym_cmds, $1)=
2741 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
2742 _LT_AC_TAGVAR(hardcode_direct, $1)=no
2743 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
2744 _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
2745 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
2746 _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
2747 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
2748 _LT_AC_TAGVAR(hardcode_automatic, $1)=no
2749 _LT_AC_TAGVAR(module_cmds, $1)=
2750 _LT_AC_TAGVAR(module_expsym_cmds, $1)=
2751 _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
2752 _LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
2753 _LT_AC_TAGVAR(no_undefined_flag, $1)=
2754 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
2755 _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
2756
2757 # Dependencies to place before and after the object being linked:
2758 _LT_AC_TAGVAR(predep_objects, $1)=
2759 _LT_AC_TAGVAR(postdep_objects, $1)=
2760 _LT_AC_TAGVAR(predeps, $1)=
2761 _LT_AC_TAGVAR(postdeps, $1)=
2762 _LT_AC_TAGVAR(compiler_lib_search_path, $1)=
2763
2764 # Source file extension for C++ test sources.
2765 ac_ext=cpp
2766
2767 # Object file extension for compiled C++ test sources.
2768 objext=o
2769 _LT_AC_TAGVAR(objext, $1)=$objext
2770
2771 # Code to be used in simple compile tests
2772 lt_simple_compile_test_code="int some_variable = 0;\n"
2773
2774 # Code to be used in simple link tests
2775 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }\n'
2776
2777 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
2778 _LT_AC_SYS_COMPILER
2779
2780 # save warnings/boilerplate of simple test code
2781 _LT_COMPILER_BOILERPLATE
2782 _LT_LINKER_BOILERPLATE
2783
2784 # Allow CC to be a program name with arguments.
2785 lt_save_CC=$CC
2786 lt_save_LD=$LD
2787 lt_save_GCC=$GCC
2788 GCC=$GXX
2789 lt_save_with_gnu_ld=$with_gnu_ld
2790 lt_save_path_LD=$lt_cv_path_LD
2791 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
2792   lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
2793 else
2794   $as_unset lt_cv_prog_gnu_ld
2795 fi
2796 if test -n "${lt_cv_path_LDCXX+set}"; then
2797   lt_cv_path_LD=$lt_cv_path_LDCXX
2798 else
2799   $as_unset lt_cv_path_LD
2800 fi
2801 test -z "${LDCXX+set}" || LD=$LDCXX
2802 CC=${CXX-"c++"}
2803 compiler=$CC
2804 _LT_AC_TAGVAR(compiler, $1)=$CC
2805 _LT_CC_BASENAME([$compiler])
2806
2807 # We don't want -fno-exception wen compiling C++ code, so set the
2808 # no_builtin_flag separately
2809 if test "$GXX" = yes; then
2810   _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
2811 else
2812   _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
2813 fi
2814
2815 if test "$GXX" = yes; then
2816   # Set up default GNU C++ configuration
2817
2818   AC_PROG_LD
2819
2820   # Check if GNU C++ uses GNU ld as the underlying linker, since the
2821   # archiving commands below assume that GNU ld is being used.
2822   if test "$with_gnu_ld" = yes; then
2823     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
2824     _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'
2825
2826     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
2827     _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
2828
2829     # If archive_cmds runs LD, not CC, wlarc should be empty
2830     # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
2831     #     investigate it a little bit more. (MM)
2832     wlarc='${wl}'
2833
2834     # ancient GNU ld didn't support --whole-archive et. al.
2835     if eval "`$CC -print-prog-name=ld` --help 2>&1" | \
2836         grep 'no-whole-archive' > /dev/null; then
2837       _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
2838     else
2839       _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
2840     fi
2841   else
2842     with_gnu_ld=no
2843     wlarc=
2844
2845     # A generic and very simple default shared library creation
2846     # command for GNU C++ for the case where it uses the native
2847     # linker, instead of GNU ld.  If possible, this setting should
2848     # overridden to take advantage of the native linker features on
2849     # the platform it is being used on.
2850     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
2851   fi
2852
2853   # Commands to make compiler produce verbose output that lists
2854   # what "hidden" libraries, object files and flags are used when
2855   # linking a shared library.
2856   output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
2857
2858 else
2859   GXX=no
2860   with_gnu_ld=no
2861   wlarc=
2862 fi
2863
2864 # PORTME: fill in a description of your system's C++ link characteristics
2865 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
2866 _LT_AC_TAGVAR(ld_shlibs, $1)=yes
2867 case $host_os in
2868   aix3*)
2869     # FIXME: insert proper C++ library support
2870     _LT_AC_TAGVAR(ld_shlibs, $1)=no
2871     ;;
2872   aix4* | aix5*)
2873     if test "$host_cpu" = ia64; then
2874       # On IA64, the linker does run time linking by default, so we don't
2875       # have to do anything special.
2876       aix_use_runtimelinking=no
2877       exp_sym_flag='-Bexport'
2878       no_entry_flag=""
2879     else
2880       aix_use_runtimelinking=no
2881
2882       # Test if we are trying to use run time linking or normal
2883       # AIX style linking. If -brtl is somewhere in LDFLAGS, we
2884       # need to do runtime linking.
2885       case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
2886         for ld_flag in $LDFLAGS; do
2887           case $ld_flag in
2888           *-brtl*)
2889             aix_use_runtimelinking=yes
2890             break
2891             ;;
2892           esac
2893         done
2894         ;;
2895       esac
2896
2897       exp_sym_flag='-bexport'
2898       no_entry_flag='-bnoentry'
2899     fi
2900
2901     # When large executables or shared objects are built, AIX ld can
2902     # have problems creating the table of contents.  If linking a library
2903     # or program results in "error TOC overflow" add -mminimal-toc to
2904     # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
2905     # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
2906
2907     _LT_AC_TAGVAR(archive_cmds, $1)=''
2908     _LT_AC_TAGVAR(hardcode_direct, $1)=yes
2909     _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
2910     _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
2911
2912     if test "$GXX" = yes; then
2913       case $host_os in aix4.[[012]]|aix4.[[012]].*)
2914       # We only want to do this on AIX 4.2 and lower, the check
2915       # below for broken collect2 doesn't work under 4.3+
2916         collect2name=`${CC} -print-prog-name=collect2`
2917         if test -f "$collect2name" && \
2918            strings "$collect2name" | grep resolve_lib_name >/dev/null
2919         then
2920           # We have reworked collect2
2921           _LT_AC_TAGVAR(hardcode_direct, $1)=yes
2922         else
2923           # We have old collect2
2924           _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
2925           # It fails to find uninstalled libraries when the uninstalled
2926           # path is not listed in the libpath.  Setting hardcode_minus_L
2927           # to unsupported forces relinking
2928           _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
2929           _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2930           _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
2931         fi
2932         ;;
2933       esac
2934       shared_flag='-shared'
2935       if test "$aix_use_runtimelinking" = yes; then
2936         shared_flag="$shared_flag "'${wl}-G'
2937       fi
2938     else
2939       # not using gcc
2940       if test "$host_cpu" = ia64; then
2941         # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
2942         # chokes on -Wl,-G. The following line is correct:
2943         shared_flag='-G'
2944       else
2945         if test "$aix_use_runtimelinking" = yes; then
2946           shared_flag='${wl}-G'
2947         else
2948           shared_flag='${wl}-bM:SRE'
2949         fi
2950       fi
2951     fi
2952
2953     # It seems that -bexpall does not export symbols beginning with
2954     # underscore (_), so it is better to generate a list of symbols to export.
2955     _LT_AC_TAGVAR(always_export_symbols, $1)=yes
2956     if test "$aix_use_runtimelinking" = yes; then
2957       # Warning - without using the other runtime loading flags (-brtl),
2958       # -berok will link without error, but may produce a broken library.
2959       _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
2960       # Determine the default libpath from the value encoded in an empty executable.
2961       _LT_AC_SYS_LIBPATH_AIX
2962       _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
2963
2964       _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
2965      else
2966       if test "$host_cpu" = ia64; then
2967         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
2968         _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
2969         _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
2970       else
2971         # Determine the default libpath from the value encoded in an empty executable.
2972         _LT_AC_SYS_LIBPATH_AIX
2973         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
2974         # Warning - without using the other run time loading flags,
2975         # -berok will link without error, but may produce a broken library.
2976         _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
2977         _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
2978         # Exported symbols can be pulled into shared objects from archives
2979         _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
2980         _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
2981         # This is similar to how AIX traditionally builds its shared libraries.
2982         _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
2983       fi
2984     fi
2985     ;;
2986
2987   beos*)
2988     if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
2989       _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
2990       # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
2991       # support --undefined.  This deserves some investigation.  FIXME
2992       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
2993     else
2994       _LT_AC_TAGVAR(ld_shlibs, $1)=no
2995     fi
2996     ;;
2997
2998   chorus*)
2999     case $cc_basename in
3000       *)
3001         # FIXME: insert proper C++ library support
3002         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3003         ;;
3004     esac
3005     ;;
3006
3007   cygwin* | mingw* | pw32*)
3008     # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
3009     # as there is no search path for DLLs.
3010     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
3011     _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
3012     _LT_AC_TAGVAR(always_export_symbols, $1)=no
3013     _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
3014
3015     if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
3016       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
3017       # If the export-symbols file already is a .def file (1st line
3018       # is EXPORTS), use it as is; otherwise, prepend...
3019       _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
3020         cp $export_symbols $output_objdir/$soname.def;
3021       else
3022         echo EXPORTS > $output_objdir/$soname.def;
3023         cat $export_symbols >> $output_objdir/$soname.def;
3024       fi~
3025       $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
3026     else
3027       _LT_AC_TAGVAR(ld_shlibs, $1)=no
3028     fi
3029   ;;
3030       darwin* | rhapsody*)
3031         case $host_os in
3032         rhapsody* | darwin1.[[012]])
3033          _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
3034          ;;
3035        *) # Darwin 1.3 on
3036          if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
3037            _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
3038          else
3039            case ${MACOSX_DEPLOYMENT_TARGET} in
3040              10.[[012]])
3041                _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
3042                ;;
3043              10.*)
3044                _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
3045                ;;
3046            esac
3047          fi
3048          ;;
3049         esac
3050       _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3051       _LT_AC_TAGVAR(hardcode_direct, $1)=no
3052       _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
3053       _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
3054       _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
3055       _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3056
3057     if test "$GXX" = yes ; then
3058       lt_int_apple_cc_single_mod=no
3059       output_verbose_link_cmd='echo'
3060       if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
3061        lt_int_apple_cc_single_mod=yes
3062       fi
3063       if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
3064        _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
3065       else
3066           _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'
3067         fi
3068         _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
3069         # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
3070           if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
3071             _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}'
3072           else
3073             _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}'
3074           fi
3075             _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}'
3076       else
3077       case $cc_basename in
3078         xlc*)
3079          output_verbose_link_cmd='echo'
3080           _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'
3081           _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
3082           # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
3083           _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}'
3084           _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}'
3085           ;;
3086        *)
3087          _LT_AC_TAGVAR(ld_shlibs, $1)=no
3088           ;;
3089       esac
3090       fi
3091         ;;
3092
3093   dgux*)
3094     case $cc_basename in
3095       ec++*)
3096         # FIXME: insert proper C++ library support
3097         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3098         ;;
3099       ghcx*)
3100         # Green Hills C++ Compiler
3101         # FIXME: insert proper C++ library support
3102         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3103         ;;
3104       *)
3105         # FIXME: insert proper C++ library support
3106         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3107         ;;
3108     esac
3109     ;;
3110   freebsd[[12]]*)
3111     # C++ shared libraries reported to be fairly broken before switch to ELF
3112     _LT_AC_TAGVAR(ld_shlibs, $1)=no
3113     ;;
3114   freebsd-elf*)
3115     _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3116     ;;
3117   freebsd* | kfreebsd*-gnu | dragonfly*)
3118     # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
3119     # conventions
3120     _LT_AC_TAGVAR(ld_shlibs, $1)=yes
3121     ;;
3122   gnu*)
3123     ;;
3124   hpux9*)
3125     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3126     _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3127     _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3128     _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3129     _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3130                                 # but as the default
3131                                 # location of the library.
3132
3133     case $cc_basename in
3134     CC*)
3135       # FIXME: insert proper C++ library support
3136       _LT_AC_TAGVAR(ld_shlibs, $1)=no
3137       ;;
3138     aCC*)
3139       _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'
3140       # Commands to make compiler produce verbose output that lists
3141       # what "hidden" libraries, object files and flags are used when
3142       # linking a shared library.
3143       #
3144       # There doesn't appear to be a way to prevent this compiler from
3145       # explicitly linking system object files so we need to strip them
3146       # from the output so that they don't get included in the library
3147       # dependencies.
3148       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'
3149       ;;
3150     *)
3151       if test "$GXX" = yes; then
3152         _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'
3153       else
3154         # FIXME: insert proper C++ library support
3155         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3156       fi
3157       ;;
3158     esac
3159     ;;
3160   hpux10*|hpux11*)
3161     if test $with_gnu_ld = no; then
3162       _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3163       _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3164
3165       case $host_cpu in
3166       hppa*64*|ia64*)
3167         _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
3168         ;;
3169       *)
3170         _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3171         ;;
3172       esac
3173     fi
3174     case $host_cpu in
3175     hppa*64*|ia64*)
3176       _LT_AC_TAGVAR(hardcode_direct, $1)=no
3177       _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3178       ;;
3179     *)
3180       _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3181       _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3182                                               # but as the default
3183                                               # location of the library.
3184       ;;
3185     esac
3186
3187     case $cc_basename in
3188       CC*)
3189         # FIXME: insert proper C++ library support
3190         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3191         ;;
3192       aCC*)
3193         case $host_cpu in
3194         hppa*64*)
3195           _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3196           ;;
3197         ia64*)
3198           _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3199           ;;
3200         *)
3201           _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'
3202           ;;
3203         esac
3204         # Commands to make compiler produce verbose output that lists
3205         # what "hidden" libraries, object files and flags are used when
3206         # linking a shared library.
3207         #
3208         # There doesn't appear to be a way to prevent this compiler from
3209         # explicitly linking system object files so we need to strip them
3210         # from the output so that they don't get included in the library
3211         # dependencies.
3212         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'
3213         ;;
3214       *)
3215         if test "$GXX" = yes; then
3216           if test $with_gnu_ld = no; then
3217             case $host_cpu in
3218             hppa*64*)
3219               _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3220               ;;
3221             ia64*)
3222               _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3223               ;;
3224             *)
3225               _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'
3226               ;;
3227             esac
3228           fi
3229         else
3230           # FIXME: insert proper C++ library support
3231           _LT_AC_TAGVAR(ld_shlibs, $1)=no
3232         fi
3233         ;;
3234     esac
3235     ;;
3236   interix3*)
3237     _LT_AC_TAGVAR(hardcode_direct, $1)=no
3238     _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3239     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3240     _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3241     # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
3242     # Instead, shared libraries are loaded at an image base (0x10000000 by
3243     # default) and relocated if they conflict, which is a slow very memory
3244     # consuming and fragmenting process.  To avoid this, we pick a random,
3245     # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
3246     # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
3247     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
3248     _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
3249     ;;
3250   irix5* | irix6*)
3251     case $cc_basename in
3252       CC*)
3253         # SGI C++
3254         _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'
3255
3256         # Archives containing C++ object files must be created using
3257         # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
3258         # necessary to make sure instantiated templates are included
3259         # in the archive.
3260         _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
3261         ;;
3262       *)
3263         if test "$GXX" = yes; then
3264           if test "$with_gnu_ld" = no; then
3265             _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'
3266           else
3267             _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'
3268           fi
3269         fi
3270         _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3271         ;;
3272     esac
3273     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3274     _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3275     ;;
3276   linux*)
3277     case $cc_basename in
3278       KCC*)
3279         # Kuck and Associates, Inc. (KAI) C++ Compiler
3280
3281         # KCC will only create a shared library if the output file
3282         # ends with ".so" (or ".sl" for HP-UX), so rename the library
3283         # to its proper name (with version) after linking.
3284         _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'
3285         _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'
3286         # Commands to make compiler produce verbose output that lists
3287         # what "hidden" libraries, object files and flags are used when
3288         # linking a shared library.
3289         #
3290         # There doesn't appear to be a way to prevent this compiler from
3291         # explicitly linking system object files so we need to strip them
3292         # from the output so that they don't get included in the library
3293         # dependencies.
3294         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'
3295
3296         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir'
3297         _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3298
3299         # Archives containing C++ object files must be created using
3300         # "CC -Bstatic", where "CC" is the KAI C++ compiler.
3301         _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
3302         ;;
3303       icpc*)
3304         # Intel C++
3305         with_gnu_ld=yes
3306         # version 8.0 and above of icpc choke on multiply defined symbols
3307         # if we add $predep_objects and $postdep_objects, however 7.1 and
3308         # earlier do not add the objects themselves.
3309         case `$CC -V 2>&1` in
3310         *"Version 7."*)
3311           _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3312           _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'
3313           ;;
3314         *)  # Version 8.0 or newer
3315           tmp_idyn=
3316           case $host_cpu in
3317             ia64*) tmp_idyn=' -i_dynamic';;
3318           esac
3319           _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
3320           _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'
3321           ;;
3322         esac
3323         _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3324         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3325         _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3326         _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
3327         ;;
3328       pgCC*)
3329         # Portland Group C++ compiler
3330         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
3331         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
3332
3333         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
3334         _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3335         _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
3336         ;;
3337       cxx*)
3338         # Compaq C++
3339         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3340         _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'
3341
3342         runpath_var=LD_RUN_PATH
3343         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
3344         _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3345
3346         # Commands to make compiler produce verbose output that lists
3347         # what "hidden" libraries, object files and flags are used when
3348         # linking a shared library.
3349         #
3350         # There doesn't appear to be a way to prevent this compiler from
3351         # explicitly linking system object files so we need to strip them
3352         # from the output so that they don't get included in the library
3353         # dependencies.
3354         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'
3355         ;;
3356     esac
3357     ;;
3358   lynxos*)
3359     # FIXME: insert proper C++ library support
3360     _LT_AC_TAGVAR(ld_shlibs, $1)=no
3361     ;;
3362   m88k*)
3363     # FIXME: insert proper C++ library support
3364     _LT_AC_TAGVAR(ld_shlibs, $1)=no
3365     ;;
3366   mvs*)
3367     case $cc_basename in
3368       cxx*)
3369         # FIXME: insert proper C++ library support
3370         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3371         ;;
3372       *)
3373         # FIXME: insert proper C++ library support
3374         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3375         ;;
3376     esac
3377     ;;
3378   netbsd*)
3379     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
3380       _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
3381       wlarc=
3382       _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
3383       _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3384       _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3385     fi
3386     # Workaround some broken pre-1.5 toolchains
3387     output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
3388     ;;
3389   openbsd2*)
3390     # C++ shared libraries are fairly broken
3391     _LT_AC_TAGVAR(ld_shlibs, $1)=no
3392     ;;
3393   openbsd*)
3394     _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3395     _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3396     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
3397     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3398     if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3399       _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'
3400       _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3401       _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
3402     fi
3403     output_verbose_link_cmd='echo'
3404     ;;
3405   osf3*)
3406     case $cc_basename in
3407       KCC*)
3408         # Kuck and Associates, Inc. (KAI) C++ Compiler
3409
3410         # KCC will only create a shared library if the output file
3411         # ends with ".so" (or ".sl" for HP-UX), so rename the library
3412         # to its proper name (with version) after linking.
3413         _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'
3414
3415         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3416         _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3417
3418         # Archives containing C++ object files must be created using
3419         # "CC -Bstatic", where "CC" is the KAI C++ compiler.
3420         _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
3421
3422         ;;
3423       RCC*)
3424         # Rational C++ 2.4.1
3425         # FIXME: insert proper C++ library support
3426         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3427         ;;
3428       cxx*)
3429         _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
3430         _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'
3431
3432         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3433         _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3434
3435         # Commands to make compiler produce verbose output that lists
3436         # what "hidden" libraries, object files and flags are used when
3437         # linking a shared library.
3438         #
3439         # There doesn't appear to be a way to prevent this compiler from
3440         # explicitly linking system object files so we need to strip them
3441         # from the output so that they don't get included in the library
3442         # dependencies.
3443         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'
3444         ;;
3445       *)
3446         if test "$GXX" = yes && test "$with_gnu_ld" = no; then
3447           _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
3448           _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'
3449
3450           _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3451           _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3452
3453           # Commands to make compiler produce verbose output that lists
3454           # what "hidden" libraries, object files and flags are used when
3455           # linking a shared library.
3456           output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
3457
3458         else
3459           # FIXME: insert proper C++ library support
3460           _LT_AC_TAGVAR(ld_shlibs, $1)=no
3461         fi
3462         ;;
3463     esac
3464     ;;
3465   osf4* | osf5*)
3466     case $cc_basename in
3467       KCC*)
3468         # Kuck and Associates, Inc. (KAI) C++ Compiler
3469
3470         # KCC will only create a shared library if the output file
3471         # ends with ".so" (or ".sl" for HP-UX), so rename the library
3472         # to its proper name (with version) after linking.
3473         _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'
3474
3475         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3476         _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3477
3478         # Archives containing C++ object files must be created using
3479         # the KAI C++ compiler.
3480         _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs'
3481         ;;
3482       RCC*)
3483         # Rational C++ 2.4.1
3484         # FIXME: insert proper C++ library support
3485         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3486         ;;
3487       cxx*)
3488         _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
3489         _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'
3490         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
3491           echo "-hidden">> $lib.exp~
3492           $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~
3493           $rm $lib.exp'
3494
3495         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
3496         _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3497
3498         # Commands to make compiler produce verbose output that lists
3499         # what "hidden" libraries, object files and flags are used when
3500         # linking a shared library.
3501         #
3502         # There doesn't appear to be a way to prevent this compiler from
3503         # explicitly linking system object files so we need to strip them
3504         # from the output so that they don't get included in the library
3505         # dependencies.
3506         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'
3507         ;;
3508       *)
3509         if test "$GXX" = yes && test "$with_gnu_ld" = no; then
3510           _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
3511          _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'
3512
3513           _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3514           _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3515
3516           # Commands to make compiler produce verbose output that lists
3517           # what "hidden" libraries, object files and flags are used when
3518           # linking a shared library.
3519           output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
3520
3521         else
3522           # FIXME: insert proper C++ library support
3523           _LT_AC_TAGVAR(ld_shlibs, $1)=no
3524         fi
3525         ;;
3526     esac
3527     ;;
3528   psos*)
3529     # FIXME: insert proper C++ library support
3530     _LT_AC_TAGVAR(ld_shlibs, $1)=no
3531     ;;
3532   sunos4*)
3533     case $cc_basename in
3534       CC*)
3535         # Sun C++ 4.x
3536         # FIXME: insert proper C++ library support
3537         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3538         ;;
3539       lcc*)
3540         # Lucid
3541         # FIXME: insert proper C++ library support
3542         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3543         ;;
3544       *)
3545         # FIXME: insert proper C++ library support
3546         _LT_AC_TAGVAR(ld_shlibs, $1)=no
3547         ;;
3548     esac
3549     ;;
3550   solaris*)
3551     case $cc_basename in
3552       CC*)
3553         # Sun C++ 4.2, 5.x and Centerline C++
3554         _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes
3555         _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
3556         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3557         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
3558         $CC -G${allow_undefined_flag}  ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
3559
3560         _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
3561         _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3562         case $host_os in
3563           solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
3564           *)
3565             # The C++ compiler is used as linker so we must use $wl
3566             # flag to pass the commands to the underlying system
3567             # linker. We must also pass each convience library through
3568             # to the system linker between allextract/defaultextract.
3569             # The C++ compiler will combine linker options so we
3570             # cannot just pass the convience library names through
3571             # without $wl.
3572             # Supported since Solaris 2.6 (maybe 2.5.1?)
3573             _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'
3574             ;;
3575         esac
3576         _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3577
3578         output_verbose_link_cmd='echo'
3579
3580         # Archives containing C++ object files must be created using
3581         # "CC -xar", where "CC" is the Sun C++ compiler.  This is
3582         # necessary to make sure instantiated templates are included
3583         # in the archive.
3584         _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
3585         ;;
3586       gcx*)
3587         # Green Hills C++ Compiler
3588         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
3589
3590         # The C++ compiler must be used to create the archive.
3591         _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
3592         ;;
3593       *)
3594         # GNU C++ compiler with Solaris linker
3595         if test "$GXX" = yes && test "$with_gnu_ld" = no; then
3596           _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
3597           if $CC --version | grep -v '^2\.7' > /dev/null; then
3598             _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
3599             _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
3600                 $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
3601
3602             # Commands to make compiler produce verbose output that lists
3603             # what "hidden" libraries, object files and flags are used when
3604             # linking a shared library.
3605             output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
3606           else
3607             # g++ 2.7 appears to require `-G' NOT `-shared' on this
3608             # platform.
3609             _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
3610             _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
3611                 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
3612
3613             # Commands to make compiler produce verbose output that lists
3614             # what "hidden" libraries, object files and flags are used when
3615             # linking a shared library.
3616             output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
3617           fi
3618
3619           _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
3620         fi
3621         ;;
3622     esac
3623     ;;
3624   sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
3625     _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
3626     _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3627     _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3628     runpath_var='LD_RUN_PATH'
3629
3630     case $cc_basename in
3631       CC*)
3632         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
3633         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
3634         ;;
3635       *)
3636         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
3637         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
3638         ;;
3639     esac
3640     ;;
3641   sysv5* | sco3.2v5* | sco5v6*)
3642     # Note: We can NOT use -z defs as we might desire, because we do not
3643     # link with -lc, and that would cause any symbols used from libc to
3644     # always be unresolved, which means just about no library would
3645     # ever link correctly.  If we're not using GNU ld we use -z text
3646     # though, which does catch some bad symbols but isn't as heavy-handed
3647     # as -z defs.
3648     # For security reasons, it is highly recommended that you always
3649     # use absolute paths for naming shared libraries, and exclude the
3650     # DT_RUNPATH tag from executables and libraries.  But doing so
3651     # requires that you compile everything twice, which is a pain.
3652     # So that behaviour is only enabled if SCOABSPATH is set to a
3653     # non-empty value in the environment.  Most likely only useful for
3654     # creating official distributions of packages.
3655     # This is a hack until libtool officially supports absolute path
3656     # names for shared libraries.
3657     _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
3658     _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
3659     _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3660     _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3661     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
3662     _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
3663     _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3664     _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
3665     runpath_var='LD_RUN_PATH'
3666
3667     case $cc_basename in
3668       CC*)
3669         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
3670         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
3671         ;;
3672       *)
3673         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
3674         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
3675         ;;
3676     esac
3677     ;;
3678   tandem*)
3679     case $cc_basename in