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