ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid-7.2/libltdl/acinclude.m4
Revision: 912
Committed: Wed Nov 7 22:47:44 2007 UTC (16 years, 4 months ago) by michael
File size: 249045 byte(s)
Log Message:
- Implemented libtool-ltdl. Only shared modules are supported currently
- Several build fixes and cleanups. ircd now builds and runs without any problems
- Added back all files to SVN that are needed to built the daemon
  I really don't want to force other people that want to test the snapshots
  or svn versions to install yyacc, lex, automake, autoconf and libtool...
  No problem having required files in svn
- Removed some automake maintainer stuff which is kinda useless for us

File Contents

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