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