1 # aclocal.m4 generated automatically by aclocal 1.5
3 # Copyright 1996, 1997, 1998, 1999, 2000, 2001
4 # Free Software Foundation, Inc.
5 # This file is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
16 dnl Copyright 1996 by the Massachusetts Institute of Technology.
18 dnl Permission to use, copy, modify, and distribute this
19 dnl software and its documentation for any purpose and without
20 dnl fee is hereby granted, provided that the above copyright
21 dnl notice appear in all copies and that both that copyright
22 dnl notice and this permission notice appear in supporting
23 dnl documentation, and that the name of M.I.T. not be used in
24 dnl advertising or publicity pertaining to distribution of the
25 dnl software without specific, written prior permission.
26 dnl M.I.T. makes no representations about the suitability of
27 dnl this software for any purpose. It is provided "as is"
28 dnl without express or implied warranty.
30 dnl This file provides local macros for packages which use specific
31 dnl external libraries. The public macros are:
33 dnl ATHENA_RESOLV_CHECK
34 dnl Checks to see if the resolver library is present and
35 dnl provides "res_send" or "__res_send" (the latter is used
37 dnl ATHENA_UTIL_COM_ERR
38 dnl Generates error if com_err not found.
40 dnl Generates error if ss not found.
42 dnl Sets REGEX_LIBS if rx library used; ensures POSIX
45 dnl Sets MOTIF_LIBS and defines HAVE_MOTIF if Motif used.
46 dnl ATHENA_MOTIF_REQUIRED
47 dnl Generates error if Motif not found.
49 dnl Sets AFS_LIBS and defines HAVE_AFS if AFS used. Pass
50 dnl in an argument giving the desired AFS libraries;
51 dnl AFS_LIBS will be set to that value if AFS is found.
52 dnl AFS_DIR will be set to the prefix given.
53 dnl ATHENA_AFS_REQUIRED
54 dnl Generates error if AFS libraries not found. AFS_DIR
55 dnl will be set to the prefix given.
57 dnl Sets KRB4_LIBS and defines HAVE_KRB4 if krb4 used.
58 dnl ATHENA_KRB4_REQUIRED
59 dnl Generates error if krb4 not found. Sets KRB4_LIBS
60 dnl otherwise. (Special behavior because krb4 libraries
61 dnl may be different if using krb4 compatibility libraries
64 dnl Sets KRB5_LIBS and defines HAVE_KRB5 if krb5 used.
65 dnl ATHENA_KRB5_REQUIRED
66 dnl Generates error if krb5 not found.
68 dnl Sets HESIOD_LIBS and defines HAVE_HESIOD if Hesiod
70 dnl ATHENA_HESIOD_REQUIRED
71 dnl Generates error if Hesiod not found.
73 dnl Sets ARES_LIBS and defines HAVE_ARES if libares
75 dnl ATHENA_ARES_REQUIRED
76 dnl Generates error if libares not found.
78 dnl Sets ZEPHYR_LIBS and defines HAVE_ZEPHYR if zephyr
80 dnl ATHENA_ZEPHYR_REQUIRED
81 dnl Generates error if zephyr not found.
83 dnl All of the macros may extend CPPFLAGS and LDFLAGS to let the
84 dnl compiler find the requested libraries. Put ATHENA_UTIL_COM_ERR
85 dnl and ATHENA_UTIL_SS before ATHENA_AFS or ATHENA_AFS_REQUIRED; there
86 dnl is a com_err library in the AFS libraries which requires -lutil.
88 dnl ----- resolv -----
90 AC_DEFUN(ATHENA_RESOLV_CHECK,
92 AC_CHECK_FUNC(res_send, :,
93 AC_CHECK_LIB(resolv, res_send, r=true,
94 AC_CHECK_LIB(resolv, __res_send, r=true)))
96 AC_DEFINE(HAVE_LIB_RESOLV)
100 dnl ----- com_err -----
102 AC_DEFUN(ATHENA_UTIL_COM_ERR,
103 [AC_ARG_WITH(com_err,
104 [ --with-com_err=PREFIX Specify location of com_err],
105 [com_err="$withval"], [com_err=yes])
106 if test "$com_err" != no; then
107 if test "$com_err" != yes; then
108 if test -f $com_err/include/krb5/com_right.h; then
109 CPPFLAGS="$CPPFLAGS -I$com_err/include/krb5"
111 CPPFLAGS="$CPPFLAGS -I$com_err/include"
113 LDFLAGS="$LDFLAGS -L$com_err/lib"
115 if test -f /usr/include/krb5/com_right.h; then
116 CPPFLAGS="$CPPFLAGS -I/usr/include/krb5"
119 AC_CHECK_LIB(com_err, com_err, :,
120 [AC_MSG_ERROR(com_err library not found)])
122 AC_MSG_ERROR(This package requires com_err.)
127 AC_DEFUN(ATHENA_UTIL_SS,
129 [ --with-ss=PREFIX Specify location of ss (requires com_err)],
130 [ss="$withval"], [ss=yes])
131 if test "$ss" = no; then
132 AC_MSG_ERROR(This package requires ss.)
134 if test "$ss" != yes; then
135 CPPFLAGS="$CPPFLAGS -I$ss/include"
136 if test -f $ss/include/krb5/sl.h; then
137 CPPFLAGS="$CPPFLAGS -I$ss/include/krb5"
139 LDFLAGS="$LDFLAGS -L$ss/lib"
141 if test -f /usr/include/krb5/sl.h; then
142 CPPFLAGS="$CPPFLAGS -I/usr/include/krb5"
145 AC_CHECK_HEADERS(ss/ss.h krb5/ss.h)
147 AC_CHECK_LIB(ss, ss_perror, [SS_LIBS="-lss"],
148 [unset ac_cv_lib_ss_ss_perror
149 S="-ledit -lroken -ltermcap -lcom_err -lcrypt"
150 AC_CHECK_LIB(ss, ss_perror,
152 [AC_MSG_ERROR(ss library not found)],
157 dnl ----- Regular expressions -----
159 AC_DEFUN(ATHENA_REGEXP,
161 [ --with-regex=PREFIX Use installed regex library],
162 [regex="$withval"], [regex=no])
163 if test "$regex" != no; then
164 if test "$regex" != yes; then
165 CPPFLAGS="$CPPFLAGS -I$regex/include"
166 LDFLAGS="$LDFLAGS -L$regex/lib"
168 AC_CHECK_LIB(regex, regcomp, REGEX_LIBS=-lregex,
169 [AC_MSG_ERROR(regex library not found)])
171 AC_CHECK_FUNC(regcomp, :,
172 [AC_MSG_ERROR(can't find POSIX regexp support)])
174 AC_SUBST(REGEX_LIBS)])
176 dnl ----- Motif -----
178 AC_DEFUN(ATHENA_MOTIF_CHECK,
179 [if test "$motif" != yes; then
180 CPPFLAGS="$CPPFLAGS -I$motif/include"
181 LDFLAGS="$LDFLAGS -L$motif/lib"
183 AC_CHECK_LIB(Xm, XmStringFree, :, [AC_MSG_ERROR(Motif library not found)])])
185 AC_DEFUN(ATHENA_MOTIF,
187 [ --with-motif=PREFIX Use Motif],
188 [motif="$withval"], [motif=no])
189 if test "$motif" != no; then
192 AC_DEFINE(HAVE_MOTIF)
194 AC_SUBST(MOTIF_LIBS)])
196 AC_DEFUN(ATHENA_MOTIF_REQUIRED,
198 [ --with-motif=PREFIX Specify location of Motif],
199 [motif="$withval"], [motif=yes])
200 if test "$motif" != no; then
203 AC_MSG_ERROR(This package requires Motif.)
208 AC_DEFUN(ATHENA_AFS_CHECK,
209 [AC_CHECK_FUNC(insque, :, AC_CHECK_LIB(compat, insque))
210 AC_CHECK_FUNC(gethostbyname, :, AC_CHECK_LIB(nsl, gethostbyname))
211 AC_CHECK_FUNC(socket, :, AC_CHECK_LIB(socket, socket))
212 if test "$afs" != yes; then
213 CPPFLAGS="$CPPFLAGS -I$afs/include"
214 LDFLAGS="$LDFLAGS -L$afs/lib -L$afs/lib/afs"
216 AC_CHECK_LIB(sys, pioctl, :, [AC_MSG_ERROR(AFS libraries not found)],
221 dnl Specify desired AFS libraries as a parameter.
224 [ --with-afs=PREFIX Use AFS libraries],
225 [afs="$withval"], [afs=no])
226 if test "$afs" != no; then
233 AC_DEFUN(ATHENA_AFS_REQUIRED,
235 [ --with-afs=PREFIX Specify location of AFS libraries],
236 [afs="$withval"], [afs=/usr/afsws])
237 if test "$afs" != no; then
240 AC_MSG_ERROR(This package requires AFS libraries.)
243 dnl ----- Kerberos 4 -----
245 AC_DEFUN(ATHENA_KRB4_CHECK,
246 [AC_CHECK_FUNC(gethostbyname, :, AC_CHECK_LIB(nsl, gethostbyname))
247 AC_CHECK_FUNC(socket, :, AC_CHECK_LIB(socket, socket))
248 AC_CHECK_LIB(gen, compile)
249 AC_REQUIRE([ATHENA_RESOLV_CHECK])
250 if test "$krb4" != yes; then
251 CPPFLAGS="$CPPFLAGS -I$krb4/include"
252 if test -d "$krb4/include/kerberosIV"; then
253 CPPFLAGS="$CPPFLAGS -I$krb4/include/kerberosIV"
255 LDFLAGS="$LDFLAGS -L$krb4/lib"
257 if test -d "/usr/include/kerberosIV"; then
258 CPPFLAGS="$CPPFLAGS -I/usr/include/kerberosIV"
261 AC_CHECK_LIB(krb4, krb_rd_req,
262 [KRB4_LIBS="-lkrb4 -ldes425 -lkrb5 -lk5crypto -lcom_err"],
263 [AC_CHECK_LIB(krb, krb_rd_req,
264 [KRB4_LIBS="-lkrb -ldes -lroken -lcom_err"],
265 [AC_MSG_ERROR(Kerberos 4 libraries not found)],
266 -ldes -lroken -lcom_err)],
267 -ldes425 -lkrb5 -lk5crypto -lcom_err)])
269 AC_DEFUN(ATHENA_KRB4,
271 [ --with-krb4=PREFIX Use Kerberos 4],
272 [krb4="$withval"], [krb4=no])
273 if test "$krb4" != no; then
277 AC_SUBST(KRB4_LIBS)])
279 AC_DEFUN(ATHENA_KRB4_REQUIRED,
281 [ --with-krb4=PREFIX Specify location of Kerberos 4],
282 [krb4="$withval"], [krb4=yes])
283 if test "$krb4" != no; then
287 AC_MSG_ERROR(This package requires Kerberos 4.)
290 dnl ----- Kerberos 5 -----
292 AC_DEFUN(ATHENA_KRB5_CHECK,
293 [AC_SEARCH_LIBS(gethostbyname, nsl)
294 AC_SEARCH_LIBS(socket, socket)
295 AC_CHECK_LIB(gen, compile)
296 AC_REQUIRE([ATHENA_RESOLV_CHECK])
297 if test "$krb5" != yes; then
298 CPPFLAGS="$CPPFLAGS -I$krb5/include"
299 LDFLAGS="$LDFLAGS -L$krb5/lib"
301 AC_CHECK_LIB(krb5, krb5_init_context, :,
302 [AC_MSG_ERROR(Kerberos 5 libraries not found)],
303 -lk5crypto -lcom_err)])
305 AC_DEFUN(ATHENA_KRB5,
307 [ --with-krb5=PREFIX Use Kerberos 5],
308 [krb5="$withval"], [krb5=no])
309 if test "$krb5" != no; then
311 KRB5_LIBS="-lkrb5 -lk5crypto -lcom_err"
314 AC_SUBST(KRB5_LIBS)])
316 AC_DEFUN(ATHENA_KRB5_REQUIRED,
318 [ --with-krb5=PREFIX Specify location of Kerberos 5],
319 [krb5="$withval"], [krb5=yes])
320 if test "$krb5" != no; then
323 AC_MSG_ERROR(This package requires Kerberos 5.)
326 dnl ----- Hesiod -----
328 AC_DEFUN(ATHENA_HESIOD_CHECK,
329 [AC_REQUIRE([ATHENA_RESOLV_CHECK])
330 if test "$hesiod" != yes; then
331 CPPFLAGS="$CPPFLAGS -I$hesiod/include"
332 LDFLAGS="$LDFLAGS -L$hesiod/lib"
334 AC_CHECK_FUNC(hes_resolve, :,
335 AC_CHECK_LIB(hesiod, hes_resolve, HESIOD_LIBS="-lhesiod",
336 [AC_MSG_ERROR(Hesiod library not found)]))])
338 AC_DEFUN(ATHENA_HESIOD,
340 [ --with-hesiod=PREFIX Use Hesiod],
341 [hesiod="$withval"], [hesiod=no])
342 if test "$hesiod" != no; then
344 AC_DEFINE(HAVE_HESIOD)
346 AC_SUBST(HESIOD_LIBS)])
348 AC_DEFUN(ATHENA_HESIOD_REQUIRED,
350 [ --with-hesiod=PREFIX Specify location of Hesiod],
351 [hesiod="$withval"], [hesiod=yes])
352 if test "$hesiod" != no; then
355 AC_MSG_ERROR(This package requires Hesiod.)
358 dnl ----- libares -----
360 AC_DEFUN(ATHENA_ARES_CHECK,
361 [AC_REQUIRE([ATHENA_RESOLV_CHECK])
362 if test "$ares" != yes; then
363 CPPFLAGS="$CPPFLAGS -I$ares/include"
364 LDFLAGS="$LDFLAGS -L$ares/lib"
366 AC_CHECK_LIB(ares, ares_init, :, [AC_MSG_ERROR(libares not found)])])
368 AC_DEFUN(ATHENA_ARES,
370 [ --with-ares=PREFIX Use libares],
371 [ares="$withval"], [ares=no])
372 if test "$ares" != no; then
377 AC_SUBST(ARES_LIBS)])
379 AC_DEFUN(ATHENA_ARES_REQUIRED,
381 [ --with-ares=PREFIX Specify location of libares],
382 [ares="$withval"], [ares=yes])
383 if test "$ares" != no; then
386 AC_MSG_ERROR(This package requires libares.)
388 dnl ----- zephyr -----
390 AC_DEFUN(ATHENA_ZEPHYR_CHECK,
391 [if test "$zephyr" != yes; then
392 CPPFLAGS="$CPPFLAGS -I$zephyr/include"
393 LDFLAGS="$LDFLAGS -L$zephyr/lib"
395 AC_CHECK_LIB(zephyr, ZFreeNotice, :, [AC_MSG_ERROR(zephyr not found)])])
397 AC_DEFUN(ATHENA_ZEPHYR,
399 [ --with-zephyr=PREFIX Use zephyr],
400 [zephyr="$withval"], [zephyr=no])
401 if test "$zephyr" != no; then
403 ZEPHYR_LIBS="-lzephyr"
404 AC_DEFINE(HAVE_ZEPHYR)
406 AC_SUBST(ZEPHYR_LIBS)])
408 AC_DEFUN(ATHENA_ZEPHYR_REQUIRED,
410 [ --with-zephyr=PREFIX Specify location of zephyr],
411 [zephyr="$withval"], [zephyr=yes])
412 if test "$zephyr" != no; then
415 AC_MSG_ERROR(This package requires zephyr.)
418 # libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
420 # serial 46 AC_PROG_LIBTOOL
422 AC_DEFUN([AC_PROG_LIBTOOL],
423 [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
425 # This can be used to rebuild libtool when needed
426 LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
428 # Always use our own libtool.
429 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
432 # Prevent multiple expansion
433 define([AC_PROG_LIBTOOL], [])
436 AC_DEFUN([AC_LIBTOOL_SETUP],
438 AC_REQUIRE([AC_ENABLE_SHARED])dnl
439 AC_REQUIRE([AC_ENABLE_STATIC])dnl
440 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
441 AC_REQUIRE([AC_CANONICAL_HOST])dnl
442 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
443 AC_REQUIRE([AC_PROG_CC])dnl
444 AC_REQUIRE([AC_PROG_LD])dnl
445 AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
446 AC_REQUIRE([AC_PROG_NM])dnl
447 AC_REQUIRE([LT_AC_PROG_SED])dnl
449 AC_REQUIRE([AC_PROG_LN_S])dnl
450 AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
451 AC_REQUIRE([AC_OBJEXT])dnl
452 AC_REQUIRE([AC_EXEEXT])dnl
455 _LT_AC_PROG_ECHO_BACKSLASH
456 # Only perform the check for file, if the check method requires it
457 case $deplibs_check_method in
459 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
465 AC_CHECK_TOOL(RANLIB, ranlib, :)
466 AC_CHECK_TOOL(STRIP, strip, :)
468 ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
469 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
470 enable_win32_dll=yes, enable_win32_dll=no)
472 AC_ARG_ENABLE(libtool-lock,
473 [ --disable-libtool-lock avoid locking (might break parallel builds)])
474 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
476 # Some flags need to be propagated to the compiler or linker for good
480 # Find out which ABI we are using.
481 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
482 if AC_TRY_EVAL(ac_compile); then
483 case `/usr/bin/file conftest.$ac_objext` in
499 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
500 SAVE_CFLAGS="$CFLAGS"
501 CFLAGS="$CFLAGS -belf"
502 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
505 AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
507 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
508 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
509 CFLAGS="$SAVE_CFLAGS"
513 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
514 [*-*-cygwin* | *-*-mingw* | *-*-pw32*)
515 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
516 AC_CHECK_TOOL(AS, as, false)
517 AC_CHECK_TOOL(OBJDUMP, objdump, false)
519 # recent cygwin and mingw systems supply a stub DllMain which the user
520 # can override, but on older systems we have to supply one
521 AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
523 [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
525 [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
528 *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
529 # old mingw systems require "-dll" to link a DLL, while more recent ones
531 SAVE_CFLAGS="$CFLAGS"
532 CFLAGS="$CFLAGS -mdll"
533 AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
534 [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
535 CFLAGS="$SAVE_CFLAGS" ;;
536 *-*-cygwin* | *-*-pw32*)
537 # cygwin systems need to pass --dll to the linker, and not link
538 # crt.o which will require a WinMain@16 definition.
539 lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
549 # AC_LIBTOOL_HEADER_ASSERT
550 # ------------------------
551 AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT],
552 [AC_CACHE_CHECK([whether $CC supports assert without backlinking],
553 [lt_cv_func_assert_works],
556 if test "$GCC" = yes && test "$with_gnu_ld" != yes; then
557 case `$CC --version 2>/dev/null` in
558 [[12]].*) lt_cv_func_assert_works=no ;;
559 *) lt_cv_func_assert_works=yes ;;
565 if test "x$lt_cv_func_assert_works" = xyes; then
566 AC_CHECK_HEADERS(assert.h)
568 ])# AC_LIBTOOL_HEADER_ASSERT
571 # --------------------
572 AC_DEFUN([_LT_AC_CHECK_DLFCN],
573 [AC_CHECK_HEADERS(dlfcn.h)
574 ])# _LT_AC_CHECK_DLFCN
576 # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
577 # ---------------------------------
578 AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
579 [AC_REQUIRE([AC_CANONICAL_HOST])
580 AC_REQUIRE([AC_PROG_NM])
581 AC_REQUIRE([AC_OBJEXT])
582 # Check for command to grab the raw symbol name followed by C symbol from nm.
583 AC_MSG_CHECKING([command to parse $NM output])
584 AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl
586 # These are sane defaults that work on at least a few old systems.
587 # [They come from Ultrix. What could be older than Ultrix?!! ;)]
589 # Character class describing NM global symbol codes.
590 symcode='[[BCDEGRST]]'
592 # Regexp to match symbols that can be accessed directly from C.
593 sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
595 # Transform the above into a raw symbol and a C symbol.
598 # Transform an extracted symbol line into a proper C declaration
599 lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
601 # Transform an extracted symbol line into symbol name and symbol address
602 lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
604 # Define system-specific variables.
609 cygwin* | mingw* | pw32*)
610 symcode='[[ABCDGISTW]]'
612 hpux*) # Its linker distinguishes data from code symbols
613 lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
614 lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
617 symcode='[[BCDEGRST]]'
627 # Handle CRLF in mingw tool chain
631 opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
635 # If we're using GNU nm, then use its standard symbol codes.
636 if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
637 symcode='[[ABCDGISTW]]'
640 # Try without a prefix undercore, then with it.
641 for ac_symprfx in "" "_"; do
643 # Write the raw and C identifiers.
644 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
646 # Check to see that the pipe works correctly.
649 cat > conftest.$ac_ext <<EOF
654 void nm_test_func(){}
658 int main(){nm_test_var='a';nm_test_func();return(0);}
661 if AC_TRY_EVAL(ac_compile); then
662 # Now try to grab the symbols.
664 if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
665 # Try sorting and uniquifying the output.
666 if sort "$nlist" | uniq > "$nlist"T; then
667 mv -f "$nlist"T "$nlist"
672 # Make sure that we snagged all the symbols we need.
673 if egrep ' nm_test_var$' "$nlist" >/dev/null; then
674 if egrep ' nm_test_func$' "$nlist" >/dev/null; then
675 cat <<EOF > conftest.$ac_ext
681 # Now generate the symbol file.
682 eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
684 cat <<EOF >> conftest.$ac_ext
685 #if defined (__STDC__) && __STDC__
686 # define lt_ptr void *
688 # define lt_ptr char *
692 /* The mapping between symbol names and symbols. */
697 lt_preloaded_symbols[[]] =
700 sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
701 cat <<\EOF >> conftest.$ac_ext
709 # Now try linking the two files.
710 mv conftest.$ac_objext conftstm.$ac_objext
712 save_CFLAGS="$CFLAGS"
713 LIBS="conftstm.$ac_objext"
714 CFLAGS="$CFLAGS$no_builtin_flag"
715 if AC_TRY_EVAL(ac_link) && test -s conftest; then
719 CFLAGS="$save_CFLAGS"
721 echo "cannot find nm_test_func in $nlist" >&AC_FD_CC
724 echo "cannot find nm_test_var in $nlist" >&AC_FD_CC
727 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC
730 echo "$progname: failed program was:" >&AC_FD_CC
731 cat conftest.$ac_ext >&5
733 rm -f conftest* conftst*
735 # Do not use the global_symbol_pipe unless it works.
736 if test "$pipe_works" = yes; then
739 lt_cv_sys_global_symbol_pipe=
743 global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
744 if test -z "$lt_cv_sys_global_symbol_pipe"; then
745 global_symbol_to_cdecl=
746 global_symbol_to_c_name_address=
748 global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
749 global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
751 if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
753 AC_MSG_RESULT(failed)
757 ]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
759 # _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
760 # ---------------------------------
761 AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
762 [# Find the correct PATH separator. Usually this is `:', but
763 # DJGPP uses `;' like DOS.
764 if test "X${PATH_SEPARATOR+set}" != Xset; then
765 UNAME=${UNAME-`uname 2>/dev/null`}
767 *-DOS) lt_cv_sys_path_separator=';' ;;
768 *) lt_cv_sys_path_separator=':' ;;
770 PATH_SEPARATOR=$lt_cv_sys_path_separator
772 ])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
774 # _LT_AC_PROG_ECHO_BACKSLASH
775 # --------------------------
776 # Add some code to the start of the generated configure script which
777 # will find an echo command which doesn't interpret backslashes.
778 AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
779 [ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
780 [AC_DIVERT_PUSH(NOTICE)])
781 _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
783 # Check that we are running under the correct shell.
784 SHELL=${CONFIG_SHELL-/bin/sh}
788 # Remove one level of quotation (which was required for Make).
789 ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
794 if test "X[$]1" = X--no-reexec; then
795 # Discard the --no-reexec flag, and continue.
797 elif test "X[$]1" = X--fallback-echo; then
798 # Avoid inline document here, it may be left over
800 elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
801 # Yippee, $echo works!
804 # Restart under the correct shell.
805 exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
808 if test "X[$]1" = X--fallback-echo; then
809 # used as fallback echo
817 # The HP-UX ksh and POSIX shell print the target directory to stdout
819 if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
821 if test -z "$ECHO"; then
822 if test "X${echo_test_string+set}" != Xset; then
823 # find a string as large as possible, as long as the shell can cope with it
824 for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
825 # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
826 if (echo_test_string="`eval $cmd`") 2>/dev/null &&
827 echo_test_string="`eval $cmd`" &&
828 (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
835 if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
836 echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
837 test "X$echo_testing_string" = "X$echo_test_string"; then
840 # The Solaris, AIX, and Digital Unix default echo programs unquote
841 # backslashes. This makes it impossible to quote backslashes using
842 # echo "$something" | sed 's/\\/\\\\/g'
844 # So, first we look for a working echo in the user's PATH.
846 IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
847 for dir in $PATH /usr/ucb; do
848 if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
849 test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
850 echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
851 test "X$echo_testing_string" = "X$echo_test_string"; then
858 if test "X$echo" = Xecho; then
859 # We didn't find a better echo, so look for alternatives.
860 if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
861 echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
862 test "X$echo_testing_string" = "X$echo_test_string"; then
863 # This shell has a builtin print -r that does the trick.
865 elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
866 test "X$CONFIG_SHELL" != X/bin/ksh; then
867 # If we have ksh, try running configure again with it.
868 ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
869 export ORIGINAL_CONFIG_SHELL
870 CONFIG_SHELL=/bin/ksh
872 exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
876 if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
877 echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
878 test "X$echo_testing_string" = "X$echo_test_string"; then
881 elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
882 test "X$echo_testing_string" = 'X\t' &&
883 echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
884 test "X$echo_testing_string" = "X$echo_test_string"; then
885 CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
887 SHELL="$CONFIG_SHELL"
889 echo="$CONFIG_SHELL [$]0 --fallback-echo"
890 elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
891 test "X$echo_testing_string" = 'X\t' &&
892 echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
893 test "X$echo_testing_string" = "X$echo_test_string"; then
894 echo="$CONFIG_SHELL [$]0 --fallback-echo"
896 # maybe with a smaller string...
899 for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
900 if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
907 if test "$prev" != 'sed 50q "[$]0"'; then
908 echo_test_string=`eval $prev`
909 export echo_test_string
910 exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
912 # Oops. We lost completely, so just stick with echo.
921 # Copy echo and quote the copy suitably for passing to libtool from
922 # the Makefile, instead of quoting the original, which is used later.
924 if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
925 ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
930 ])# _LT_AC_PROG_ECHO_BACKSLASH
932 # _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
933 # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
934 # ------------------------------------------------------------------
935 AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
936 [if test "$cross_compiling" = yes; then :
939 AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
940 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
941 lt_status=$lt_dlunknown
942 cat > conftest.$ac_ext <<EOF
943 [#line __oline__ "configure"
944 #include "confdefs.h"
953 # define LT_DLGLOBAL RTLD_GLOBAL
956 # define LT_DLGLOBAL DL_GLOBAL
958 # define LT_DLGLOBAL 0
962 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
963 find out it does not work in some platform. */
964 #ifndef LT_DLLAZY_OR_NOW
966 # define LT_DLLAZY_OR_NOW RTLD_LAZY
969 # define LT_DLLAZY_OR_NOW DL_LAZY
972 # define LT_DLLAZY_OR_NOW RTLD_NOW
975 # define LT_DLLAZY_OR_NOW DL_NOW
977 # define LT_DLLAZY_OR_NOW 0
985 extern "C" void exit (int);
988 void fnord() { int i=42;}
991 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
992 int status = $lt_dlunknown;
996 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
997 else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
998 /* dlclose (self); */
1004 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1005 (./conftest; exit; ) 2>/dev/null
1008 x$lt_dlno_uscore) $1 ;;
1009 x$lt_dlneed_uscore) $2 ;;
1010 x$lt_unknown|x*) $3 ;;
1013 # compilation failed
1018 ])# _LT_AC_TRY_DLOPEN_SELF
1020 # AC_LIBTOOL_DLOPEN_SELF
1021 # -------------------
1022 AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
1023 [if test "x$enable_dlopen" != xyes; then
1024 enable_dlopen=unknown
1025 enable_dlopen_self=unknown
1026 enable_dlopen_self_static=unknown
1033 lt_cv_dlopen="load_add_on"
1035 lt_cv_dlopen_self=yes
1038 cygwin* | mingw* | pw32*)
1039 lt_cv_dlopen="LoadLibrary"
1044 AC_CHECK_FUNC([shl_load],
1045 [lt_cv_dlopen="shl_load"],
1046 [AC_CHECK_LIB([dld], [shl_load],
1047 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
1048 [AC_CHECK_FUNC([dlopen],
1049 [lt_cv_dlopen="dlopen"],
1050 [AC_CHECK_LIB([dl], [dlopen],
1051 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1052 [AC_CHECK_LIB([svld], [dlopen],
1053 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1054 [AC_CHECK_LIB([dld], [dld_link],
1055 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
1064 if test "x$lt_cv_dlopen" != xno; then
1070 case $lt_cv_dlopen in
1072 save_CPPFLAGS="$CPPFLAGS"
1073 AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
1074 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1076 save_LDFLAGS="$LDFLAGS"
1077 eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1080 LIBS="$lt_cv_dlopen_libs $LIBS"
1082 AC_CACHE_CHECK([whether a program can dlopen itself],
1083 lt_cv_dlopen_self, [dnl
1084 _LT_AC_TRY_DLOPEN_SELF(
1085 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1086 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1089 if test "x$lt_cv_dlopen_self" = xyes; then
1090 LDFLAGS="$LDFLAGS $link_static_flag"
1091 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1092 lt_cv_dlopen_self_static, [dnl
1093 _LT_AC_TRY_DLOPEN_SELF(
1094 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1095 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1099 CPPFLAGS="$save_CPPFLAGS"
1100 LDFLAGS="$save_LDFLAGS"
1105 case $lt_cv_dlopen_self in
1106 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1107 *) enable_dlopen_self=unknown ;;
1110 case $lt_cv_dlopen_self_static in
1111 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1112 *) enable_dlopen_self_static=unknown ;;
1115 ])# AC_LIBTOOL_DLOPEN_SELF
1117 AC_DEFUN([_LT_AC_LTCONFIG_HACK],
1118 [AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
1119 # Sed substitution that helps us do robust quoting. It backslashifies
1120 # metacharacters that are still active within double-quoted strings.
1121 Xsed='sed -e s/^X//'
1122 sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g'
1124 # Same as above, but do not quote variable references.
1125 double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g'
1127 # Sed substitution to delay expansion of an escaped shell variable in a
1128 # double_quote_subst'ed string.
1129 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
1135 default_ofile=libtool
1136 can_build_shared=yes
1138 # All known linkers require a `.a' archive for static linking (except M$VC,
1139 # which needs '.lib').
1141 ltmain="$ac_aux_dir/ltmain.sh"
1142 ofile="$default_ofile"
1143 with_gnu_ld="$lt_cv_prog_gnu_ld"
1144 need_locks="$enable_libtool_lock"
1147 old_CFLAGS="$CFLAGS"
1149 # Set sane defaults for various variables
1150 test -z "$AR" && AR=ar
1151 test -z "$AR_FLAGS" && AR_FLAGS=cru
1152 test -z "$AS" && AS=as
1153 test -z "$CC" && CC=cc
1154 test -z "$DLLTOOL" && DLLTOOL=dlltool
1155 test -z "$LD" && LD=ld
1156 test -z "$LN_S" && LN_S="ln -s"
1157 test -z "$MAGIC_CMD" && MAGIC_CMD=file
1158 test -z "$NM" && NM=nm
1159 test -z "$OBJDUMP" && OBJDUMP=objdump
1160 test -z "$RANLIB" && RANLIB=:
1161 test -z "$STRIP" && STRIP=:
1162 test -z "$ac_objext" && ac_objext=o
1164 if test x"$host" != x"$build"; then
1165 ac_tool_prefix=${host_alias}-
1170 # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
1173 linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
1178 # AIX sometimes has problems with the GCC collect2 program. For some
1179 # reason, if we set the COLLECT_NAMES environment variable, the problems
1180 # vanish in a puff of smoke.
1181 if test "X${COLLECT_NAMES+set}" != Xset; then
1183 export COLLECT_NAMES
1188 # Determine commands to create old-style static archives.
1189 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
1190 old_postinstall_cmds='chmod 644 $oldlib'
1191 old_postuninstall_cmds=
1193 if test -n "$RANLIB"; then
1196 old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
1199 old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
1202 old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1205 # Allow CC to be a program name with arguments.
1209 AC_MSG_CHECKING([for objdir])
1210 rm -f .libs 2>/dev/null
1211 mkdir .libs 2>/dev/null
1212 if test -d .libs; then
1215 # MS-DOS does not allow filenames that begin with a dot.
1218 rmdir .libs 2>/dev/null
1219 AC_MSG_RESULT($objdir)
1223 [ --with-pic try to use only PIC/non-PIC objects [default=use both]],
1224 pic_mode="$withval", pic_mode=default)
1225 test -z "$pic_mode" && pic_mode=default
1227 # We assume here that the value for lt_cv_prog_cc_pic will not be cached
1228 # in isolation, and that seeing it set (from the cache) indicates that
1229 # the associated values are set (in the cache) correctly too.
1230 AC_MSG_CHECKING([for $compiler option to produce PIC])
1231 AC_CACHE_VAL(lt_cv_prog_cc_pic,
1232 [ lt_cv_prog_cc_pic=
1233 lt_cv_prog_cc_shlib=
1235 lt_cv_prog_cc_static=
1236 lt_cv_prog_cc_no_builtin=
1237 lt_cv_prog_cc_can_build_shared=$can_build_shared
1239 if test "$GCC" = yes; then
1240 lt_cv_prog_cc_wl='-Wl,'
1241 lt_cv_prog_cc_static='-static'
1245 # Below there is a dirty hack to force normal static linking with -ldl
1246 # The problem is because libdl dynamically linked with both libc and
1247 # libC (AIX C++ library), which obviously doesn't included in libraries
1248 # list by gcc. This cause undefined symbols with -static flags.
1249 # This hack allows C programs to be linked with "-static -ldl", but
1250 # not sure about C++ programs.
1251 lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
1254 # FIXME: we need at least 68020 code to build shared libraries, but
1255 # adding the `-m68020' flag to GCC prevents building anything better,
1257 lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
1259 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
1260 # PIC is the default for these OSes.
1262 darwin* | rhapsody*)
1263 # PIC is the default on this platform
1264 # Common symbols not allowed in MH_DYLIB files
1265 lt_cv_prog_cc_pic='-fno-common'
1267 cygwin* | mingw* | pw32* | os2*)
1268 # This hack is so that the source file can tell whether it is being
1269 # built for inclusion in a dll (and should export symbols for example).
1270 lt_cv_prog_cc_pic='-DDLL_EXPORT'
1273 if test -d /usr/nec; then
1274 lt_cv_prog_cc_pic=-Kconform_pic
1278 lt_cv_prog_cc_pic='-fPIC'
1282 # PORTME Check for PIC flags for the system compiler.
1284 aix3* | aix4* | aix5*)
1285 lt_cv_prog_cc_wl='-Wl,'
1286 # All AIX code is PIC.
1287 if test "$host_cpu" = ia64; then
1288 # AIX 5 now supports IA64 processor
1289 lt_cv_prog_cc_static='-Bstatic'
1291 lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
1295 hpux9* | hpux10* | hpux11*)
1296 # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
1297 lt_cv_prog_cc_wl='-Wl,'
1298 lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
1299 lt_cv_prog_cc_pic='+Z'
1302 irix5* | irix6* | nonstopux*)
1303 lt_cv_prog_cc_wl='-Wl,'
1304 lt_cv_prog_cc_static='-non_shared'
1305 # PIC (with -KPIC) is the default.
1308 cygwin* | mingw* | pw32* | os2*)
1309 # This hack is so that the source file can tell whether it is being
1310 # built for inclusion in a dll (and should export symbols for example).
1311 lt_cv_prog_cc_pic='-DDLL_EXPORT'
1315 lt_cv_prog_cc_pic='-KPIC'
1316 lt_cv_prog_cc_static='-Bstatic'
1319 osf3* | osf4* | osf5*)
1320 # All OSF/1 code is PIC.
1321 lt_cv_prog_cc_wl='-Wl,'
1322 lt_cv_prog_cc_static='-non_shared'
1326 lt_cv_prog_cc_pic='-Kpic'
1327 lt_cv_prog_cc_static='-dn'
1328 lt_cv_prog_cc_shlib='-belf'
1332 lt_cv_prog_cc_pic='-KPIC'
1333 lt_cv_prog_cc_static='-Bstatic'
1334 lt_cv_prog_cc_wl='-Wl,'
1338 lt_cv_prog_cc_pic='-PIC'
1339 lt_cv_prog_cc_static='-Bstatic'
1340 lt_cv_prog_cc_wl='-Qoption ld '
1343 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
1344 lt_cv_prog_cc_pic='-KPIC'
1345 lt_cv_prog_cc_static='-Bstatic'
1346 lt_cv_prog_cc_wl='-Wl,'
1350 lt_cv_prog_cc_pic='-pic'
1351 lt_cv_prog_cc_static='-Bstatic'
1355 if test -d /usr/nec ;then
1356 lt_cv_prog_cc_pic='-Kconform_pic'
1357 lt_cv_prog_cc_static='-Bstatic'
1362 lt_cv_prog_cc_can_build_shared=no
1367 if test -z "$lt_cv_prog_cc_pic"; then
1368 AC_MSG_RESULT([none])
1370 AC_MSG_RESULT([$lt_cv_prog_cc_pic])
1372 # Check to make sure the pic_flag actually works.
1373 AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works])
1374 AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl
1375 save_CFLAGS="$CFLAGS"
1376 CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
1377 AC_TRY_COMPILE([], [], [dnl
1379 hpux9* | hpux10* | hpux11*)
1380 # On HP-UX, both CC and GCC only warn that PIC is supported... then
1381 # they create non-PIC objects. So, if there were any warnings, we
1382 # assume that PIC is not supported.
1383 if test -s conftest.err; then
1384 lt_cv_prog_cc_pic_works=no
1386 lt_cv_prog_cc_pic_works=yes
1390 lt_cv_prog_cc_pic_works=yes
1394 lt_cv_prog_cc_pic_works=no
1396 CFLAGS="$save_CFLAGS"
1399 if test "X$lt_cv_prog_cc_pic_works" = Xno; then
1401 lt_cv_prog_cc_can_build_shared=no
1403 lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
1406 AC_MSG_RESULT([$lt_cv_prog_cc_pic_works])
1409 # Check for any special shared library compilation flags.
1410 if test -n "$lt_cv_prog_cc_shlib"; then
1411 AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries])
1412 if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then :
1414 AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure])
1415 lt_cv_prog_cc_can_build_shared=no
1419 AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works])
1420 AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl
1421 lt_cv_prog_cc_static_works=no
1422 save_LDFLAGS="$LDFLAGS"
1423 LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
1424 AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes])
1425 LDFLAGS="$save_LDFLAGS"
1428 # Belt *and* braces to stop my trousers falling down:
1429 test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
1430 AC_MSG_RESULT([$lt_cv_prog_cc_static_works])
1432 pic_flag="$lt_cv_prog_cc_pic"
1433 special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
1434 wl="$lt_cv_prog_cc_wl"
1435 link_static_flag="$lt_cv_prog_cc_static"
1436 no_builtin_flag="$lt_cv_prog_cc_no_builtin"
1437 can_build_shared="$lt_cv_prog_cc_can_build_shared"
1440 # Check to see if options -o and -c are simultaneously supported by compiler
1441 AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext])
1442 AC_CACHE_VAL([lt_cv_compiler_c_o], [
1443 $rm -r conftest 2>/dev/null
1446 echo "int some_variable = 0;" > conftest.$ac_ext
1448 # According to Tom Tromey, Ian Lance Taylor reported there are C compilers
1449 # that will create temporary files in the current directory regardless of
1450 # the output directory. Thus, making CWD read-only will cause this test
1451 # to fail, enabling locking or at least warning the user not to do parallel
1454 save_CFLAGS="$CFLAGS"
1455 CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
1457 if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
1458 # The compiler can only warn and ignore the option if not recognized
1459 # So say no if there are warnings
1460 if test -s out/conftest.err; then
1461 lt_cv_compiler_c_o=no
1463 lt_cv_compiler_c_o=yes
1466 # Append any errors to the config.log.
1467 cat out/conftest.err 1>&AC_FD_CC
1468 lt_cv_compiler_c_o=no
1470 CFLAGS="$save_CFLAGS"
1476 $rm -r conftest 2>/dev/null
1478 compiler_c_o=$lt_cv_compiler_c_o
1479 AC_MSG_RESULT([$compiler_c_o])
1481 if test x"$compiler_c_o" = x"yes"; then
1482 # Check to see if we can write to a .lo
1483 AC_MSG_CHECKING([if $compiler supports -c -o file.lo])
1484 AC_CACHE_VAL([lt_cv_compiler_o_lo], [
1485 lt_cv_compiler_o_lo=no
1486 save_CFLAGS="$CFLAGS"
1487 CFLAGS="$CFLAGS -c -o conftest.lo"
1488 save_objext="$ac_objext"
1490 AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
1491 # The compiler can only warn and ignore the option if not recognized
1492 # So say no if there are warnings
1493 if test -s conftest.err; then
1494 lt_cv_compiler_o_lo=no
1496 lt_cv_compiler_o_lo=yes
1499 ac_objext="$save_objext"
1500 CFLAGS="$save_CFLAGS"
1502 compiler_o_lo=$lt_cv_compiler_o_lo
1503 AC_MSG_RESULT([$compiler_o_lo])
1508 # Check to see if we can do hard links to lock some files if needed
1509 hard_links="nottested"
1510 if test "$compiler_c_o" = no && test "$need_locks" != no; then
1511 # do not overwrite the value of need_locks provided by the user
1512 AC_MSG_CHECKING([if we can lock with hard links])
1515 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1517 ln conftest.a conftest.b 2>&5 || hard_links=no
1518 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1519 AC_MSG_RESULT([$hard_links])
1520 if test "$hard_links" = no; then
1521 AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe])
1528 if test "$GCC" = yes; then
1529 # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
1530 AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions])
1531 echo "int some_variable = 0;" > conftest.$ac_ext
1532 save_CFLAGS="$CFLAGS"
1533 CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
1534 compiler_rtti_exceptions=no
1535 AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
1536 # The compiler can only warn and ignore the option if not recognized
1537 # So say no if there are warnings
1538 if test -s conftest.err; then
1539 compiler_rtti_exceptions=no
1541 compiler_rtti_exceptions=yes
1544 CFLAGS="$save_CFLAGS"
1545 AC_MSG_RESULT([$compiler_rtti_exceptions])
1547 if test "$compiler_rtti_exceptions" = "yes"; then
1548 no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
1550 no_builtin_flag=' -fno-builtin'
1554 # See if the linker supports building shared libraries.
1555 AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries])
1557 allow_undefined_flag=
1559 need_lib_prefix=unknown
1560 need_version=unknown
1561 # when you set need_version to no, make sure it does not cause -set_version
1562 # flags to be left without arguments
1564 archive_expsym_cmds=
1565 old_archive_from_new_cmds=
1566 old_archive_from_expsyms_cmds=
1567 export_dynamic_flag_spec=
1568 whole_archive_flag_spec=
1569 thread_safe_flag_spec=
1570 hardcode_into_libs=no
1571 hardcode_libdir_flag_spec=
1572 hardcode_libdir_separator=
1575 hardcode_shlibpath_var=unsupported
1577 link_all_deplibs=unknown
1578 always_export_symbols=no
1579 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
1580 # include_expsyms should be a list of space-separated symbols to be *always*
1581 # included in the symbol list
1583 # exclude_expsyms can be an egrep regular expression of symbols to exclude
1584 # it will be wrapped by ` (' and `)$', so one must not match beginning or
1585 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
1586 # as well as any symbol that contains `d'.
1587 exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
1588 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
1589 # platforms (ab)use it in PIC code, but their linkers get confused if
1590 # the symbol is explicitly referenced. Since portable code cannot
1591 # rely on this symbol name, it's probably fine to never include it in
1592 # preloaded symbol tables.
1593 extract_expsyms_cmds=
1596 cygwin* | mingw* | pw32*)
1597 # FIXME: the MSVC++ port hasn't been tested in a loooong time
1598 # When not using gcc, we currently assume that we are using
1599 # Microsoft Visual C++.
1600 if test "$GCC" != yes; then
1610 if test "$with_gnu_ld" = yes; then
1611 # If archive_cmds runs LD, not CC, wlarc should be empty
1614 # See if GNU ld supports shared libraries.
1616 aix3* | aix4* | aix5*)
1617 # On AIX, the GNU linker is very broken
1618 # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
1622 *** Warning: the GNU linker, at least up to release 2.9.1, is reported
1623 *** to be unable to reliably create shared libraries on AIX.
1624 *** Therefore, libtool is disabling shared libraries support. If you
1625 *** really care for shared libraries, you may want to modify your PATH
1626 *** so that a non-GNU linker is found, and then restart.
1632 archive_cmds='$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)'
1633 hardcode_libdir_flag_spec='-L$libdir'
1634 hardcode_minus_L=yes
1636 # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
1637 # that the semantics of dynamic libraries on AmigaOS, at least up
1638 # to version 4, is to share data among multiple programs linked
1639 # with the same dynamic library. Since this doesn't match the
1640 # behavior of shared libraries on other platforms, we can use
1646 if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1647 allow_undefined_flag=unsupported
1648 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
1649 # support --undefined. This deserves some investigation. FIXME
1650 archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
1656 cygwin* | mingw* | pw32*)
1657 # hardcode_libdir_flag_spec is actually meaningless, as there is
1658 # no search path for DLLs.
1659 hardcode_libdir_flag_spec='-L$libdir'
1660 allow_undefined_flag=unsupported
1661 always_export_symbols=yes
1663 extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
1664 sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
1665 test -f $output_objdir/impgen.exe || (cd $output_objdir && \
1666 if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
1667 else $CC -o impgen impgen.c ; fi)~
1668 $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
1670 old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
1672 # cygwin and mingw dlls have different entry points and sets of symbols
1674 # FIXME: what about values for MSVC?
1675 dll_entry=__cygwin_dll_entry@12
1676 dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
1680 dll_entry=_DllMainCRTStartup@12
1681 dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
1685 # mingw and cygwin differ, and it's simplest to just exclude the union
1686 # of the two symbol sets.
1687 dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
1689 # recent cygwin and mingw systems supply a stub DllMain which the user
1690 # can override, but on older systems we have to supply one (in ltdll.c)
1691 if test "x$lt_cv_need_dllmain" = "xyes"; then
1692 ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
1693 ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
1694 test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
1700 # Extract the symbol export list from an `--export-all' def file,
1701 # then regenerate the def file from the symbol export list, so that
1702 # the compiled dll only exports the symbol export list.
1703 # Be careful not to strip the DATA tag left be newer dlltools.
1704 export_symbols_cmds="$ltdll_cmds"'
1705 $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
1706 sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
1708 # If the export-symbols file already is a .def file (1st line
1709 # is EXPORTS), use it as is.
1710 # If DATA tags from a recent dlltool are present, honour them!
1711 archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
1712 cp $export_symbols $output_objdir/$soname-def;
1714 echo EXPORTS > $output_objdir/$soname-def;
1716 cat $export_symbols | while read symbol; do
1719 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
1720 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
1721 *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
1723 _lt_hint=`expr 1 + \$_lt_hint`;
1727 $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
1728 $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
1729 $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
1730 $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
1731 $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
1735 if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
1736 archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
1739 archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
1740 archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
1745 if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
1749 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
1750 *** create shared libraries on Solaris systems. Therefore, libtool
1751 *** is disabling shared libraries support. We urge you to upgrade GNU
1752 *** binutils to release 2.9.1 or newer. Another option is to modify
1753 *** your PATH or compiler configuration so that the native linker is
1754 *** used, and then restart.
1757 elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1758 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
1759 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
1766 archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
1769 hardcode_shlibpath_var=no
1773 if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1774 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
1775 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
1782 if test "$ld_shlibs" = yes; then
1783 runpath_var=LD_RUN_PATH
1784 hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
1785 export_dynamic_flag_spec='${wl}--export-dynamic'
1787 cygwin* | mingw* | pw32*)
1788 # dlltool doesn't understand --whole-archive et. al.
1789 whole_archive_flag_spec=
1792 # ancient GNU ld didn't support --whole-archive et. al.
1793 if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
1794 whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
1796 whole_archive_flag_spec=
1802 # PORTME fill in a description of your system's linker (not GNU ld)
1805 allow_undefined_flag=unsupported
1806 always_export_symbols=yes
1807 archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
1808 # Note: this linker hardcodes the directories in LIBPATH if there
1809 # are no directories specified by -L.
1810 hardcode_minus_L=yes
1811 if test "$GCC" = yes && test -z "$link_static_flag"; then
1812 # Neither direct hardcoding nor static linking is supported with a
1814 hardcode_direct=unsupported
1819 if test "$host_cpu" = ia64; then
1820 # On IA64, the linker does run time linking by default, so we don't
1821 # have to do anything special.
1822 aix_use_runtimelinking=no
1823 exp_sym_flag='-Bexport'
1826 aix_use_runtimelinking=no
1828 # Test if we are trying to use run time linking or normal
1829 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
1830 # need to do runtime linking.
1831 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
1832 for ld_flag in $LDFLAGS; do
1833 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
1834 aix_use_runtimelinking=yes
1840 exp_sym_flag='-bexport'
1841 no_entry_flag='-bnoentry'
1844 # When large executables or shared objects are built, AIX ld can
1845 # have problems creating the table of contents. If linking a library
1846 # or program results in "error TOC overflow" add -mminimal-toc to
1847 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
1848 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
1852 hardcode_libdir_separator=':'
1853 if test "$GCC" = yes; then
1854 case $host_os in aix4.[[012]]|aix4.[[012]].*)
1855 collect2name=`${CC} -print-prog-name=collect2`
1856 if test -f "$collect2name" && \
1857 strings "$collect2name" | grep resolve_lib_name >/dev/null
1859 # We have reworked collect2
1862 # We have old collect2
1863 hardcode_direct=unsupported
1864 # It fails to find uninstalled libraries when the uninstalled
1865 # path is not listed in the libpath. Setting hardcode_minus_L
1866 # to unsupported forces relinking
1867 hardcode_minus_L=yes
1868 hardcode_libdir_flag_spec='-L$libdir'
1869 hardcode_libdir_separator=
1873 shared_flag='-shared'
1876 if test "$host_cpu" = ia64; then
1877 shared_flag='${wl}-G'
1879 if test "$aix_use_runtimelinking" = yes; then
1880 shared_flag='${wl}-G'
1882 shared_flag='${wl}-bM:SRE'
1887 # It seems that -bexpall can do strange things, so it is better to
1888 # generate a list of symbols to export.
1889 always_export_symbols=yes
1890 if test "$aix_use_runtimelinking" = yes; then
1891 # Warning - without using the other runtime loading flags (-brtl),
1892 # -berok will link without error, but may produce a broken library.
1893 allow_undefined_flag='-berok'
1894 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
1895 archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
1897 if test "$host_cpu" = ia64; then
1898 hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
1899 allow_undefined_flag="-z nodefs"
1900 archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
1902 hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
1903 # Warning - without using the other run time loading flags,
1904 # -berok will link without error, but may produce a broken library.
1905 allow_undefined_flag='${wl}-berok'
1906 # This is a bit strange, but is similar to how AIX traditionally builds
1907 # it's shared libraries.
1908 archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
1914 archive_cmds='$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)'
1915 hardcode_libdir_flag_spec='-L$libdir'
1916 hardcode_minus_L=yes
1917 # see comment about different semantics on the GNU ld section
1921 cygwin* | mingw* | pw32*)
1922 # When not using gcc, we currently assume that we are using
1923 # Microsoft Visual C++.
1924 # hardcode_libdir_flag_spec is actually meaningless, as there is
1925 # no search path for DLLs.
1926 hardcode_libdir_flag_spec=' '
1927 allow_undefined_flag=unsupported
1928 # Tell ltmain to make .lib files, not .a files.
1930 # FIXME: Setting linknames here is a bad hack.
1931 archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
1932 # The linker will automatically build a .lib file if we build a DLL.
1933 old_archive_from_new_cmds='true'
1934 # FIXME: Should let the user specify the lib program.
1935 old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
1936 fix_srcfile_path='`cygpath -w "$srcfile"`'
1939 darwin* | rhapsody*)
1941 rhapsody* | darwin1.[[012]])
1942 allow_undefined_flag='-undefined suppress'
1945 allow_undefined_flag='-flat_namespace -undefined suppress'
1948 # FIXME: Relying on posixy $() will cause problems for
1949 # cross-compilation, but unfortunately the echo tests do not
1950 # yet detect zsh echo's removal of \ escapes. Also zsh mangles
1951 # `"' quotes if we put them in here... so don't!
1952 archive_cmds='$nonopt $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
1953 # We need to add '_' to the symbols in $export_symbols first
1954 #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
1956 hardcode_shlibpath_var=no
1957 whole_archive_flag_spec='-all_load $convenience'
1964 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
1965 # support. Future versions do this automatically, but an explicit c++rt0.o
1966 # does not break anything, and helps significantly (at the cost of a little
1969 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
1970 hardcode_libdir_flag_spec='-R$libdir'
1972 hardcode_shlibpath_var=no
1975 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
1977 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
1979 hardcode_minus_L=yes
1980 hardcode_shlibpath_var=no
1983 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
1985 archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
1986 hardcode_libdir_flag_spec='-R$libdir'
1988 hardcode_shlibpath_var=no
1991 hpux9* | hpux10* | hpux11*)
1993 hpux9*) archive_cmds='$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' ;;
1994 *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
1996 hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
1997 hardcode_libdir_separator=:
1999 hardcode_minus_L=yes # Not in the search PATH, but as the default
2000 # location of the library.
2001 export_dynamic_flag_spec='${wl}-E'
2004 irix5* | irix6* | nonstopux*)
2005 if test "$GCC" = yes; then
2006 archive_cmds='$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'
2008 archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
2010 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2011 hardcode_libdir_separator=:
2012 link_all_deplibs=yes
2016 if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
2017 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
2019 archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
2021 hardcode_libdir_flag_spec='-R$libdir'
2023 hardcode_shlibpath_var=no
2027 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2029 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2030 hardcode_libdir_separator=:
2031 hardcode_shlibpath_var=no
2036 hardcode_shlibpath_var=no
2037 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2038 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
2039 hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
2040 export_dynamic_flag_spec='${wl}-E'
2043 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
2044 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
2045 hardcode_libdir_flag_spec='-R$libdir'
2048 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
2049 hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
2056 hardcode_libdir_flag_spec='-L$libdir'
2057 hardcode_minus_L=yes
2058 allow_undefined_flag=unsupported
2059 archive_cmds='$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'
2060 old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
2064 if test "$GCC" = yes; then
2065 allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
2066 archive_cmds='$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'
2068 allow_undefined_flag=' -expect_unresolved \*'
2069 archive_cmds='$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'
2071 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2072 hardcode_libdir_separator=:
2075 osf4* | osf5*) # as osf3* with the addition of -msym flag
2076 if test "$GCC" = yes; then
2077 allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
2078 archive_cmds='$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'
2079 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2081 allow_undefined_flag=' -expect_unresolved \*'
2082 archive_cmds='$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'
2083 archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
2084 $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
2086 #Both c and cxx compiler support -rpath directly
2087 hardcode_libdir_flag_spec='-rpath $libdir'
2089 hardcode_libdir_separator=:
2093 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2094 hardcode_shlibpath_var=no
2095 runpath_var=LD_RUN_PATH
2096 hardcode_runpath_var=yes
2097 export_dynamic_flag_spec='${wl}-Bexport'
2101 # gcc --version < 3.0 without binutils cannot create self contained
2102 # shared libraries reliably, requiring libgcc.a to resolve some of
2103 # the object symbols generated in some cases. Libraries that use
2104 # assert need libgcc.a to resolve __eprintf, for example. Linking
2105 # a copy of libgcc.a into every shared library to guarantee resolving
2106 # such symbols causes other problems: According to Tim Van Holder
2107 # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
2108 # (to the application) exception stack for one thing.
2109 no_undefined_flag=' -z defs'
2110 if test "$GCC" = yes; then
2111 case `$CC --version 2>/dev/null` in
2115 *** Warning: Releases of GCC earlier than version 3.0 cannot reliably
2116 *** create self contained shared libraries on Solaris systems, without
2117 *** introducing a dependency on libgcc.a. Therefore, libtool is disabling
2118 *** -no-undefined support, which will at least allow you to build shared
2119 *** libraries. However, you may find that when you link such libraries
2120 *** into an application without using GCC, you have to manually add
2121 *** \`gcc --print-libgcc-file-name\` to the link command. We urge you to
2122 *** upgrade to a newer version of GCC. Another option is to rebuild your
2123 *** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
2130 # $CC -shared without GNU ld will not create a library from C++
2131 # object files and a static libstdc++, better avoid it by now
2132 archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
2133 archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2134 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
2135 hardcode_libdir_flag_spec='-R$libdir'
2136 hardcode_shlibpath_var=no
2138 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
2139 *) # Supported since Solaris 2.6 (maybe 2.5.1?)
2140 whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
2142 link_all_deplibs=yes
2146 if test "x$host_vendor" = xsequent; then
2147 # Use $CC to link under sequent, because it throws in some extra .o
2148 # files that make .init and .fini sections work.
2149 archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
2151 archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
2153 hardcode_libdir_flag_spec='-L$libdir'
2155 hardcode_minus_L=yes
2156 hardcode_shlibpath_var=no
2160 case $host_vendor in
2162 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2163 hardcode_direct=yes # is this really true???
2166 ## LD is ld it makes a PLAMLIB
2167 ## CC just makes a GrossModule.
2168 archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
2169 reload_cmds='$CC -r -o $output$reload_objs'
2173 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2174 hardcode_direct=no #Motorola manual says yes, but my tests say they lie
2177 runpath_var='LD_RUN_PATH'
2178 hardcode_shlibpath_var=no
2182 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2183 hardcode_shlibpath_var=no
2184 export_dynamic_flag_spec='-Bexport'
2188 no_undefined_flag=' -z text'
2189 # $CC -shared without GNU ld will not create a library from C++
2190 # object files and a static libstdc++, better avoid it by now
2191 archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
2192 archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2193 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
2194 hardcode_libdir_flag_spec=
2195 hardcode_shlibpath_var=no
2196 runpath_var='LD_RUN_PATH'
2200 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2201 hardcode_libdir_flag_spec='-L$libdir'
2202 hardcode_shlibpath_var=no
2206 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2207 hardcode_libdir_flag_spec='-L$libdir'
2208 hardcode_shlibpath_var=no
2212 if test -d /usr/nec; then
2213 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2214 hardcode_shlibpath_var=no
2215 runpath_var=LD_RUN_PATH
2216 hardcode_runpath_var=yes
2222 archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
2225 hardcode_shlibpath_var=no
2226 hardcode_runpath_var=yes
2227 runpath_var=LD_RUN_PATH
2230 sysv5uw7* | unixware7*)
2231 no_undefined_flag='${wl}-z ${wl}text'
2232 if test "$GCC" = yes; then
2233 archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
2235 archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
2237 runpath_var='LD_RUN_PATH'
2238 hardcode_shlibpath_var=no
2246 AC_MSG_RESULT([$ld_shlibs])
2247 test "$ld_shlibs" = no && can_build_shared=no
2249 # Check hardcoding attributes.
2250 AC_MSG_CHECKING([how to hardcode library paths into programs])
2252 if test -n "$hardcode_libdir_flag_spec" || \
2253 test -n "$runpath_var"; then
2255 # We can hardcode non-existant directories.
2256 if test "$hardcode_direct" != no &&
2257 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2258 # have to relink, otherwise we might link with an installed library
2259 # when we should be linking with a yet-to-be-installed one
2260 ## test "$hardcode_shlibpath_var" != no &&
2261 test "$hardcode_minus_L" != no; then
2262 # Linking always hardcodes the temporary library directory.
2263 hardcode_action=relink
2265 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2266 hardcode_action=immediate
2269 # We cannot hardcode anything, or else we can only hardcode existing
2271 hardcode_action=unsupported
2273 AC_MSG_RESULT([$hardcode_action])
2277 AC_MSG_CHECKING([whether stripping libraries is possible])
2278 if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
2279 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2280 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2281 AC_MSG_RESULT([yes])
2286 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2287 test -z "$deplibs_check_method" && deplibs_check_method=unknown
2289 # PORTME Fill in your ld.so characteristics
2290 AC_MSG_CHECKING([dynamic linker characteristics])
2292 libname_spec='lib$name'
2299 shlibpath_overrides_runpath=unknown
2301 dynamic_linker="$host_os ld.so"
2302 sys_lib_dlsearch_path_spec="/lib /usr/lib"
2303 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2308 library_names_spec='${libname}${release}.so$versuffix $libname.a'
2309 shlibpath_var=LIBPATH
2311 # AIX has no versioning support, so we append a major version to the name.
2312 soname_spec='${libname}${release}.so$major'
2317 if test "$host_cpu" = ia64; then
2318 # AIX 5 supports IA64
2319 library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
2320 shlibpath_var=LD_LIBRARY_PATH
2322 # With GCC up to 2.95.x, collect2 would create an import file
2323 # for dependence libraries. The import file would start with
2324 # the line `#! .'. This would cause the generated library to
2325 # depend on `.', always an invalid library. This was fixed in
2326 # development snapshots of GCC prior to 3.0.
2328 aix4 | aix4.[[01]] | aix4.[[01]].*)
2329 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2331 echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
2338 # AIX (on Power*) has no versioning support, so currently we can
2339 # not hardcode correct soname into executable. Probably we can
2340 # add versioning support to collect2, so additional links can
2341 # be useful in future.
2342 if test "$aix_use_runtimelinking" = yes; then
2343 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2344 # instead of lib<name>.a to let people know that these are not
2345 # typical AIX shared libraries.
2346 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2348 # We preserve .a as extension for shared libraries through AIX4.2
2349 # and later when we are not doing run time linking.
2350 library_names_spec='${libname}${release}.a $libname.a'
2351 soname_spec='${libname}${release}.so$major'
2353 shlibpath_var=LIBPATH
2358 library_names_spec='$libname.ixlibrary $libname.a'
2359 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2360 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'
2364 library_names_spec='${libname}.so'
2365 dynamic_linker="$host_os ld.so"
2366 shlibpath_var=LIBRARY_PATH
2372 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2373 soname_spec='${libname}${release}.so$major'
2374 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2375 shlibpath_var=LD_LIBRARY_PATH
2376 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2377 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2378 export_dynamic_flag_spec=-rdynamic
2379 # the default ld.so.conf also contains /usr/contrib/lib and
2380 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2381 # libtool to hard-code these into programs
2384 cygwin* | mingw* | pw32*)
2385 version_type=windows
2388 case $GCC,$host_os in
2390 library_names_spec='$libname.dll.a'
2391 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
2392 postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
2393 dldir=$destdir/`dirname \$dlpath`~
2394 test -d \$dldir || mkdir -p \$dldir~
2395 $install_prog .libs/$dlname \$dldir/$dlname'
2396 postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
2397 dlpath=$dir/\$dldll~
2401 library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
2402 sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
2405 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
2408 library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
2411 dynamic_linker='Win32 ld.exe'
2412 # FIXME: first we should search . and the directory the executable is in
2416 darwin* | rhapsody*)
2417 dynamic_linker="$host_os dyld"
2421 # FIXME: Relying on posixy $() will cause problems for
2422 # cross-compilation, but unfortunately the echo tests do not
2423 # yet detect zsh echo's removal of \ escapes.
2424 library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
2425 soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
2426 shlibpath_overrides_runpath=yes
2427 shlibpath_var=DYLD_LIBRARY_PATH
2435 objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
2436 version_type=freebsd-$objformat
2437 case $version_type in
2439 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
2444 library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
2448 shlibpath_var=LD_LIBRARY_PATH
2451 shlibpath_overrides_runpath=yes
2454 shlibpath_overrides_runpath=no
2455 hardcode_into_libs=yes
2464 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
2465 soname_spec='${libname}${release}.so$major'
2466 shlibpath_var=LD_LIBRARY_PATH
2467 hardcode_into_libs=yes
2470 hpux9* | hpux10* | hpux11*)
2471 # Give a soname corresponding to the major version so that dld.sl refuses to
2472 # link against other versions.
2473 dynamic_linker="$host_os dld.sl"
2477 shlibpath_var=SHLIB_PATH
2478 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2479 library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
2480 soname_spec='${libname}${release}.sl$major'
2481 # HP-UX runs *really* slowly unless shared libraries are mode 555.
2482 postinstall_cmds='chmod 555 $lib'
2485 irix5* | irix6* | nonstopux*)
2487 nonstopux*) version_type=nonstopux ;;
2488 *) version_type=irix ;;
2492 soname_spec='${libname}${release}.so$major'
2493 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
2495 irix5* | nonstopux*)
2499 case $LD in # libtool.m4 will add one of these switches to LD
2500 *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
2501 *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
2502 *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
2503 *) libsuff= shlibsuff= libmagic=never-match;;
2507 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2508 shlibpath_overrides_runpath=no
2509 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2510 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2513 # No shared lib support for Linux oldld, aout, or coff.
2514 linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
2518 # This must be Linux ELF.
2523 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2524 soname_spec='${libname}${release}.so$major'
2525 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2526 shlibpath_var=LD_LIBRARY_PATH
2527 shlibpath_overrides_runpath=no
2528 # This implies no fast_install, which is unacceptable.
2529 # Some rework will be needed to allow for fast_install
2530 # before this can be enabled.
2531 hardcode_into_libs=yes
2533 # We used to test for /lib/ld.so.1 and disable shared libraries on
2534 # powerpc, because MkLinux only supported shared libraries with the
2535 # GNU dynamic linker. Since this was broken with cross compilers,
2536 # most powerpc-linux boxes support dynamic linking these days and
2537 # people can always --disable-shared, the test was removed, and we
2538 # assume the GNU/Linux dynamic linker is in use.
2539 dynamic_linker='GNU/Linux ld.so'
2546 if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
2547 library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
2548 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2549 dynamic_linker='NetBSD (a.out) ld.so'
2551 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
2552 soname_spec='${libname}${release}.so$major'
2553 dynamic_linker='NetBSD ld.elf_so'
2555 shlibpath_var=LD_LIBRARY_PATH
2556 shlibpath_overrides_runpath=yes
2557 hardcode_into_libs=yes
2562 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2563 shlibpath_var=LD_LIBRARY_PATH
2564 shlibpath_overrides_runpath=yes
2571 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2573 openbsd2.[[89]] | openbsd2.[[89]].*)
2574 shlibpath_overrides_runpath=no
2577 shlibpath_overrides_runpath=yes
2581 shlibpath_overrides_runpath=yes
2583 library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
2584 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2585 shlibpath_var=LD_LIBRARY_PATH
2589 libname_spec='$name'
2591 library_names_spec='$libname.dll $libname.a'
2592 dynamic_linker='OS/2 ld.exe'
2593 shlibpath_var=LIBPATH
2596 osf3* | osf4* | osf5*)
2599 soname_spec='${libname}${release}.so'
2600 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
2601 shlibpath_var=LD_LIBRARY_PATH
2602 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2603 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2608 soname_spec='${libname}${release}.so$major'
2609 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2610 shlibpath_var=LD_LIBRARY_PATH
2617 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2618 soname_spec='${libname}${release}.so$major'
2619 shlibpath_var=LD_LIBRARY_PATH
2620 shlibpath_overrides_runpath=yes
2621 hardcode_into_libs=yes
2622 # ldd complains unless libraries are executable
2623 postinstall_cmds='chmod +x $lib'
2628 library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
2629 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2630 shlibpath_var=LD_LIBRARY_PATH
2631 shlibpath_overrides_runpath=yes
2632 if test "$with_gnu_ld" = yes; then
2638 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
2640 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2641 soname_spec='${libname}${release}.so$major'
2642 shlibpath_var=LD_LIBRARY_PATH
2643 case $host_vendor in
2645 shlibpath_overrides_runpath=no
2647 export_dynamic_flag_spec='${wl}-Blargedynsym'
2648 runpath_var=LD_RUN_PATH
2656 shlibpath_overrides_runpath=no
2657 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2664 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2665 soname_spec='${libname}${release}.so$major'
2666 shlibpath_var=LD_LIBRARY_PATH
2673 library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2674 soname_spec='${libname}${release}.so$major'
2675 shlibpath_var=LD_LIBRARY_PATH
2679 if test -d /usr/nec ;then
2681 library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
2682 soname_spec='$libname.so.$major'
2683 shlibpath_var=LD_LIBRARY_PATH
2691 AC_MSG_RESULT([$dynamic_linker])
2692 test "$dynamic_linker" = no && can_build_shared=no
2694 # Report the final consequences.
2695 AC_MSG_CHECKING([if libtool supports shared libraries])
2696 AC_MSG_RESULT([$can_build_shared])
2698 AC_MSG_CHECKING([whether to build shared libraries])
2699 test "$can_build_shared" = "no" && enable_shared=no
2701 # On AIX, shared libraries and static libraries use the same namespace, and
2702 # are all built from PIC.
2705 test "$enable_shared" = yes && enable_static=no
2706 if test -n "$RANLIB"; then
2707 archive_cmds="$archive_cmds~\$RANLIB \$lib"
2708 postinstall_cmds='$RANLIB $lib'
2713 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
2714 test "$enable_shared" = yes && enable_static=no
2718 AC_MSG_RESULT([$enable_shared])
2720 AC_MSG_CHECKING([whether to build static libraries])
2721 # Make sure either enable_shared or enable_static is yes.
2722 test "$enable_shared" = yes || enable_static=yes
2723 AC_MSG_RESULT([$enable_static])
2725 if test "$hardcode_action" = relink; then
2726 # Fast installation is not supported
2727 enable_fast_install=no
2728 elif test "$shlibpath_overrides_runpath" = yes ||
2729 test "$enable_shared" = no; then
2730 # Fast installation is not necessary
2731 enable_fast_install=needless
2734 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2735 if test "$GCC" = yes; then
2736 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2739 AC_LIBTOOL_DLOPEN_SELF
2741 if test "$enable_shared" = yes && test "$GCC" = yes; then
2742 case $archive_cmds in
2744 # FIXME: we may have to deal with multi-command sequences.
2747 # Test whether the compiler implicitly links with -lc since on some
2748 # systems, -lgcc has to come before -lc. If gcc already passes -lc
2749 # to ld, don't add -lc before -lgcc.
2750 AC_MSG_CHECKING([whether -lc should be explicitly linked in])
2751 AC_CACHE_VAL([lt_cv_archive_cmds_need_lc],
2753 echo 'static int dummy;' > conftest.$ac_ext
2755 if AC_TRY_EVAL(ac_compile); then
2758 libobjs=conftest.$ac_objext
2760 wl=$lt_cv_prog_cc_wl
2766 save_allow_undefined_flag=$allow_undefined_flag
2767 allow_undefined_flag=
2768 if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
2770 lt_cv_archive_cmds_need_lc=no
2772 lt_cv_archive_cmds_need_lc=yes
2774 allow_undefined_flag=$save_allow_undefined_flag
2776 cat conftest.err 1>&5
2778 AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc])
2782 need_lc=${lt_cv_archive_cmds_need_lc-yes}
2784 # The second clause should only fire when bootstrapping the
2785 # libtool distribution, otherwise you forgot to ship ltmain.sh
2786 # with your package, and you will get complaints that there are
2787 # no rules to generate ltmain.sh.
2788 if test -f "$ltmain"; then
2791 # If there is no Makefile yet, we rely on a make rule to execute
2792 # `config.status --recheck' to rerun these tests and create the
2793 # libtool script then.
2794 test -f Makefile && make "$ltmain"
2797 if test -f "$ltmain"; then
2798 trap "$rm \"${ofile}T\"; exit 1" 1 2 15
2801 echo creating $ofile
2803 # Now quote all the things that may contain metacharacters while being
2804 # careful not to overquote the AC_SUBSTed values. We take copies of the
2805 # variables and quote the copies for generation of the libtool script.
2806 for var in echo old_CC old_CFLAGS SED \
2807 AR AR_FLAGS CC LD LN_S NM SHELL \
2808 reload_flag reload_cmds wl \
2809 pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
2810 thread_safe_flag_spec whole_archive_flag_spec libname_spec \
2811 library_names_spec soname_spec \
2812 RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
2813 old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
2814 postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
2815 old_striplib striplib file_magic_cmd export_symbols_cmds \
2816 deplibs_check_method allow_undefined_flag no_undefined_flag \
2817 finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
2818 global_symbol_to_c_name_address \
2819 hardcode_libdir_flag_spec hardcode_libdir_separator \
2820 sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
2821 compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
2824 reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
2825 old_postinstall_cmds | old_postuninstall_cmds | \
2826 export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
2827 extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
2828 postinstall_cmds | postuninstall_cmds | \
2829 finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
2830 # Double-quote double-evaled strings.
2831 eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
2834 eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
2839 cat <<__EOF__ > "${ofile}T"
2842 # `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
2843 # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
2844 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
2846 # Copyright (C) 1996-2000 Free Software Foundation, Inc.
2847 # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
2849 # This program is free software; you can redistribute it and/or modify
2850 # it under the terms of the GNU General Public License as published by
2851 # the Free Software Foundation; either version 2 of the License, or
2852 # (at your option) any later version.
2854 # This program is distributed in the hope that it will be useful, but
2855 # WITHOUT ANY WARRANTY; without even the implied warranty of
2856 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
2857 # General Public License for more details.
2859 # You should have received a copy of the GNU General Public License
2860 # along with this program; if not, write to the Free Software
2861 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
2863 # As a special exception to the GNU General Public License, if you
2864 # distribute this file as part of a program that contains a
2865 # configuration script generated by Autoconf, you may include it under
2866 # the same distribution terms that you use for the rest of that program.
2868 # A sed that does not truncate output.
2871 # Sed that helps us avoid accidentally triggering echo(1) options like -n.
2872 Xsed="${SED} -e s/^X//"
2874 # The HP-UX ksh and POSIX shell print the target directory to stdout
2876 if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
2878 # ### BEGIN LIBTOOL CONFIG
2880 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
2882 # Shell to use when invoking shell scripts.
2885 # Whether or not to build shared libraries.
2886 build_libtool_libs=$enable_shared
2888 # Whether or not to build static libraries.
2889 build_old_libs=$enable_static
2891 # Whether or not to add -lc for building shared libraries.
2892 build_libtool_need_lc=$need_lc
2894 # Whether or not to optimize for fast installation.
2895 fast_install=$enable_fast_install
2898 host_alias=$host_alias
2901 # An echo program that does not interpret backslashes.
2906 AR_FLAGS=$lt_AR_FLAGS
2908 # The default C compiler.
2911 # Is the compiler the GNU C compiler?
2914 # The linker used to build libraries.
2917 # Whether we need hard or soft links.
2920 # A BSD-compatible nm program.
2923 # A symbol stripping program
2926 # Used to examine libraries when file_magic_cmd begins "file"
2927 MAGIC_CMD=$MAGIC_CMD
2929 # Used on cygwin: DLL creation program.
2932 # Used on cygwin: object dumper.
2935 # Used on cygwin: assembler.
2938 # The name of the directory that contains temporary libtool files.
2941 # How to create reloadable object files.
2942 reload_flag=$lt_reload_flag
2943 reload_cmds=$lt_reload_cmds
2945 # How to pass a linker flag through the compiler.
2948 # Object file suffix (normally "o").
2951 # Old archive suffix (normally "a").
2954 # Executable file suffix (normally "").
2957 # Additional compiler flags for building library objects.
2958 pic_flag=$lt_pic_flag
2961 # Does compiler simultaneously support -c and -o options?
2962 compiler_c_o=$lt_compiler_c_o
2964 # Can we write directly to a .lo ?
2965 compiler_o_lo=$lt_compiler_o_lo
2967 # Must we lock files when doing compilation ?
2968 need_locks=$lt_need_locks
2970 # Do we need the lib prefix for modules?
2971 need_lib_prefix=$need_lib_prefix
2973 # Do we need a version for libraries?
2974 need_version=$need_version
2976 # Whether dlopen is supported.
2977 dlopen_support=$enable_dlopen
2979 # Whether dlopen of programs is supported.
2980 dlopen_self=$enable_dlopen_self
2982 # Whether dlopen of statically linked programs is supported.
2983 dlopen_self_static=$enable_dlopen_self_static
2985 # Compiler flag to prevent dynamic linking.
2986 link_static_flag=$lt_link_static_flag
2988 # Compiler flag to turn off builtin functions.
2989 no_builtin_flag=$lt_no_builtin_flag
2991 # Compiler flag to allow reflexive dlopens.
2992 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
2994 # Compiler flag to generate shared objects directly from archives.
2995 whole_archive_flag_spec=$lt_whole_archive_flag_spec
2997 # Compiler flag to generate thread-safe objects.
2998 thread_safe_flag_spec=$lt_thread_safe_flag_spec
3000 # Library versioning type.
3001 version_type=$version_type
3003 # Format of library name prefix.
3004 libname_spec=$lt_libname_spec
3006 # List of archive names. First name is the real one, the rest are links.
3007 # The last name is the one that the linker finds with -lNAME.
3008 library_names_spec=$lt_library_names_spec
3010 # The coded name of the library, if different from the real name.
3011 soname_spec=$lt_soname_spec
3013 # Commands used to build and install an old-style archive.
3015 old_archive_cmds=$lt_old_archive_cmds
3016 old_postinstall_cmds=$lt_old_postinstall_cmds
3017 old_postuninstall_cmds=$lt_old_postuninstall_cmds
3019 # Create an old-style archive from a shared archive.
3020 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
3022 # Create a temporary old-style archive to link instead of a shared archive.
3023 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
3025 # Commands used to build and install a shared archive.
3026 archive_cmds=$lt_archive_cmds
3027 archive_expsym_cmds=$lt_archive_expsym_cmds
3028 postinstall_cmds=$lt_postinstall_cmds
3029 postuninstall_cmds=$lt_postuninstall_cmds
3031 # Commands to strip libraries.
3032 old_striplib=$lt_old_striplib
3033 striplib=$lt_striplib
3035 # Method to check whether dependent libraries are shared objects.
3036 deplibs_check_method=$lt_deplibs_check_method
3038 # Command to use when deplibs_check_method == file_magic.
3039 file_magic_cmd=$lt_file_magic_cmd
3041 # Flag that allows shared libraries with undefined symbols to be built.
3042 allow_undefined_flag=$lt_allow_undefined_flag
3044 # Flag that forces no undefined symbols.
3045 no_undefined_flag=$lt_no_undefined_flag
3047 # Commands used to finish a libtool library installation in a directory.
3048 finish_cmds=$lt_finish_cmds
3050 # Same as above, but a single script fragment to be evaled but not shown.
3051 finish_eval=$lt_finish_eval
3053 # Take the output of nm and produce a listing of raw symbols and C names.
3054 global_symbol_pipe=$lt_global_symbol_pipe
3056 # Transform the output of nm in a proper C declaration
3057 global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
3059 # Transform the output of nm in a C name address pair
3060 global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
3062 # This is the shared library runtime path variable.
3063 runpath_var=$runpath_var
3065 # This is the shared library path variable.
3066 shlibpath_var=$shlibpath_var
3068 # Is shlibpath searched before the hard-coded library search path?
3069 shlibpath_overrides_runpath=$shlibpath_overrides_runpath
3071 # How to hardcode a shared library path into an executable.
3072 hardcode_action=$hardcode_action
3074 # Whether we should hardcode library paths into libraries.
3075 hardcode_into_libs=$hardcode_into_libs
3077 # Flag to hardcode \$libdir into a binary during linking.
3078 # This must work even if \$libdir does not exist.
3079 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
3081 # Whether we need a single -rpath flag with a separated argument.
3082 hardcode_libdir_separator=$lt_hardcode_libdir_separator
3084 # Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
3086 hardcode_direct=$hardcode_direct
3088 # Set to yes if using the -LDIR flag during linking hardcodes DIR into the
3090 hardcode_minus_L=$hardcode_minus_L
3092 # Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
3093 # the resulting binary.
3094 hardcode_shlibpath_var=$hardcode_shlibpath_var
3096 # Variables whose values should be saved in libtool wrapper scripts and
3097 # restored at relink time.
3098 variables_saved_for_relink="$variables_saved_for_relink"
3100 # Whether libtool must link a program against all its dependency libraries.
3101 link_all_deplibs=$link_all_deplibs
3103 # Compile-time system search path for libraries
3104 sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
3106 # Run-time system search path for libraries
3107 sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
3109 # Fix the shell variable \$srcfile for the compiler.
3110 fix_srcfile_path="$fix_srcfile_path"
3112 # Set to yes if exported symbols are required.
3113 always_export_symbols=$always_export_symbols
3115 # The commands to list exported symbols.
3116 export_symbols_cmds=$lt_export_symbols_cmds
3118 # The commands to extract the exported symbol list from a shared archive.
3119 extract_expsyms_cmds=$lt_extract_expsyms_cmds
3121 # Symbols that should not be listed in the preloaded symbols.
3122 exclude_expsyms=$lt_exclude_expsyms
3124 # Symbols that must always be exported.
3125 include_expsyms=$lt_include_expsyms
3127 # ### END LIBTOOL CONFIG
3133 cat <<\EOF >> "${ofile}T"
3135 # AIX sometimes has problems with the GCC collect2 program. For some
3136 # reason, if we set the COLLECT_NAMES environment variable, the problems
3137 # vanish in a puff of smoke.
3138 if test "X${COLLECT_NAMES+set}" != Xset; then
3140 export COLLECT_NAMES
3147 cygwin* | mingw* | pw32* | os2*)
3148 cat <<'EOF' >> "${ofile}T"
3149 # This is a source program that is used to create dlls on Windows
3150 # Don't remove nor modify the starting and closing comments
3151 # /* ltdll.c starts here */
3152 # #define WIN32_LEAN_AND_MEAN
3153 # #include <windows.h>
3154 # #undef WIN32_LEAN_AND_MEAN
3155 # #include <stdio.h>
3157 # #ifndef __CYGWIN__
3158 # # ifdef __CYGWIN32__
3159 # # define __CYGWIN__ __CYGWIN32__
3163 # #ifdef __cplusplus
3166 # BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
3167 # #ifdef __cplusplus
3172 # #include <cygwin/cygwin_dll.h>
3173 # DECLARE_CYGWIN_DLL( DllMain );
3175 # HINSTANCE __hDllInstance_base;
3178 # DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
3180 # __hDllInstance_base = hInst;
3183 # /* ltdll.c ends here */
3184 # This is a source program that is used to create import libraries
3185 # on Windows for dlls which lack them. Don't remove nor modify the
3186 # starting and closing comments
3187 # /* impgen.c starts here */
3188 # /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
3190 # This file is part of GNU libtool.
3192 # This program is free software; you can redistribute it and/or modify
3193 # it under the terms of the GNU General Public License as published by
3194 # the Free Software Foundation; either version 2 of the License, or
3195 # (at your option) any later version.
3197 # This program is distributed in the hope that it will be useful,
3198 # but WITHOUT ANY WARRANTY; without even the implied warranty of
3199 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3200 # GNU General Public License for more details.
3202 # You should have received a copy of the GNU General Public License
3203 # along with this program; if not, write to the Free Software
3204 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
3207 # #include <stdio.h> /* for printf() */
3208 # #include <unistd.h> /* for open(), lseek(), read() */
3209 # #include <fcntl.h> /* for O_RDONLY, O_BINARY */
3210 # #include <string.h> /* for strdup() */
3212 # /* O_BINARY isn't required (or even defined sometimes) under Unix */
3214 # #define O_BINARY 0
3217 # static unsigned int
3218 # pe_get16 (fd, offset)
3222 # unsigned char b[2];
3223 # lseek (fd, offset, SEEK_SET);
3225 # return b[0] + (b[1]<<8);
3228 # static unsigned int
3229 # pe_get32 (fd, offset)
3233 # unsigned char b[4];
3234 # lseek (fd, offset, SEEK_SET);
3236 # return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
3239 # static unsigned int
3243 # unsigned char *b = ptr;
3244 # return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
3253 # unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
3254 # unsigned long export_rva, export_size, nsections, secptr, expptr;
3255 # unsigned long name_rvas, nexp;
3256 # unsigned char *expdata, *erva;
3257 # char *filename, *dll_name;
3259 # filename = argv[1];
3261 # dll = open(filename, O_RDONLY|O_BINARY);
3265 # dll_name = filename;
3267 # for (i=0; filename[i]; i++)
3268 # if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
3269 # dll_name = filename + i +1;
3271 # pe_header_offset = pe_get32 (dll, 0x3c);
3272 # opthdr_ofs = pe_header_offset + 4 + 20;
3273 # num_entries = pe_get32 (dll, opthdr_ofs + 92);
3275 # if (num_entries < 1) /* no exports */
3278 # export_rva = pe_get32 (dll, opthdr_ofs + 96);
3279 # export_size = pe_get32 (dll, opthdr_ofs + 100);
3280 # nsections = pe_get16 (dll, pe_header_offset + 4 +2);
3281 # secptr = (pe_header_offset + 4 + 20 +
3282 # pe_get16 (dll, pe_header_offset + 4 + 16));
3285 # for (i = 0; i < nsections; i++)
3288 # unsigned long secptr1 = secptr + 40 * i;
3289 # unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
3290 # unsigned long vsize = pe_get32 (dll, secptr1 + 16);
3291 # unsigned long fptr = pe_get32 (dll, secptr1 + 20);
3292 # lseek(dll, secptr1, SEEK_SET);
3293 # read(dll, sname, 8);
3294 # if (vaddr <= export_rva && vaddr+vsize > export_rva)
3296 # expptr = fptr + (export_rva - vaddr);
3297 # if (export_rva + export_size > vaddr + vsize)
3298 # export_size = vsize - (export_rva - vaddr);
3303 # expdata = (unsigned char*)malloc(export_size);
3304 # lseek (dll, expptr, SEEK_SET);
3305 # read (dll, expdata, export_size);
3306 # erva = expdata - export_rva;
3308 # nexp = pe_as32 (expdata+24);
3309 # name_rvas = pe_as32 (expdata+32);
3311 # printf ("EXPORTS\n");
3312 # for (i = 0; i<nexp; i++)
3314 # unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
3315 # printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
3320 # /* impgen.c ends here */
3326 # We use sed instead of cat because bash on DJGPP gets confused if
3327 # if finds mixed CR/LF and LF-only lines. Since sed operates in
3328 # text mode, it properly converts lines to CR/LF. This bash problem
3329 # is reportedly fixed, but why not run on old versions too?
3330 sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
3332 mv -f "${ofile}T" "$ofile" || \
3333 (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
3337 ])# _LT_AC_LTCONFIG_HACK
3339 # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
3340 AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
3342 # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
3343 AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
3345 # AC_ENABLE_SHARED - implement the --enable-shared flag
3346 # Usage: AC_ENABLE_SHARED[(DEFAULT)]
3347 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
3349 AC_DEFUN([AC_ENABLE_SHARED],
3350 [define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
3351 AC_ARG_ENABLE(shared,
3352 changequote(<<, >>)dnl
3353 << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
3354 changequote([, ])dnl
3355 [p=${PACKAGE-default}
3357 yes) enable_shared=yes ;;
3358 no) enable_shared=no ;;
3361 # Look at the argument we got. We use all the common list separators.
3362 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3363 for pkg in $enableval; do
3364 if test "X$pkg" = "X$p"; then
3371 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
3374 # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
3375 AC_DEFUN([AC_DISABLE_SHARED],
3376 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3377 AC_ENABLE_SHARED(no)])
3379 # AC_ENABLE_STATIC - implement the --enable-static flag
3380 # Usage: AC_ENABLE_STATIC[(DEFAULT)]
3381 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
3383 AC_DEFUN([AC_ENABLE_STATIC],
3384 [define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
3385 AC_ARG_ENABLE(static,
3386 changequote(<<, >>)dnl
3387 << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
3388 changequote([, ])dnl
3389 [p=${PACKAGE-default}
3391 yes) enable_static=yes ;;
3392 no) enable_static=no ;;
3395 # Look at the argument we got. We use all the common list separators.
3396 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3397 for pkg in $enableval; do
3398 if test "X$pkg" = "X$p"; then
3405 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
3408 # AC_DISABLE_STATIC - set the default static flag to --disable-static
3409 AC_DEFUN([AC_DISABLE_STATIC],
3410 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3411 AC_ENABLE_STATIC(no)])
3414 # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
3415 # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
3416 # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
3418 AC_DEFUN([AC_ENABLE_FAST_INSTALL],
3419 [define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
3420 AC_ARG_ENABLE(fast-install,
3421 changequote(<<, >>)dnl
3422 << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
3423 changequote([, ])dnl
3424 [p=${PACKAGE-default}
3426 yes) enable_fast_install=yes ;;
3427 no) enable_fast_install=no ;;
3429 enable_fast_install=no
3430 # Look at the argument we got. We use all the common list separators.
3431 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3432 for pkg in $enableval; do
3433 if test "X$pkg" = "X$p"; then
3434 enable_fast_install=yes
3440 enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
3443 # AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
3444 AC_DEFUN([AC_DISABLE_FAST_INSTALL],
3445 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3446 AC_ENABLE_FAST_INSTALL(no)])
3448 # AC_LIBTOOL_PICMODE - implement the --with-pic flag
3449 # Usage: AC_LIBTOOL_PICMODE[(MODE)]
3450 # Where MODE is either `yes' or `no'. If omitted, it defaults to
3452 AC_DEFUN([AC_LIBTOOL_PICMODE],
3453 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3454 pic_mode=ifelse($#,1,$1,default)])
3457 # AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
3458 AC_DEFUN([AC_PATH_TOOL_PREFIX],
3459 [AC_MSG_CHECKING([for $1])
3460 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3463 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
3466 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
3469 ac_save_MAGIC_CMD="$MAGIC_CMD"
3470 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
3471 dnl $ac_dummy forces splitting on constant user-supplied paths.
3472 dnl POSIX.2 word splitting is done only on the output of word expansions,
3473 dnl not every word. This closes a longstanding sh security hole.
3474 ac_dummy="ifelse([$2], , $PATH, [$2])"
3475 for ac_dir in $ac_dummy; do
3476 test -z "$ac_dir" && ac_dir=.
3477 if test -f $ac_dir/$1; then
3478 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
3479 if test -n "$file_magic_test_file"; then
3480 case $deplibs_check_method in
3482 file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
3483 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
3484 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3485 egrep "$file_magic_regex" > /dev/null; then
3490 *** Warning: the command libtool uses to detect shared libraries,
3491 *** $file_magic_cmd, produces output that libtool cannot recognize.
3492 *** The result is that libtool may fail to recognize shared libraries
3493 *** as such. This will affect the creation of libtool libraries that
3494 *** depend on shared libraries, but programs linked with such libtool
3495 *** libraries will work regardless of this problem. Nevertheless, you
3496 *** may want to report the problem to your system manager and/or to
3497 *** bug-libtool@gnu.org
3507 MAGIC_CMD="$ac_save_MAGIC_CMD"
3510 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
3511 if test -n "$MAGIC_CMD"; then
3512 AC_MSG_RESULT($MAGIC_CMD)
3519 # AC_PATH_MAGIC - find a file program which can recognise a shared library
3520 AC_DEFUN([AC_PATH_MAGIC],
3521 [AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
3522 AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
3523 if test -z "$lt_cv_path_MAGIC_CMD"; then
3524 if test -n "$ac_tool_prefix"; then
3525 AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
3533 # AC_PROG_LD - find the path to the GNU or non-GNU linker
3534 AC_DEFUN([AC_PROG_LD],
3535 [AC_ARG_WITH(gnu-ld,
3536 [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
3537 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
3538 AC_REQUIRE([AC_PROG_CC])dnl
3539 AC_REQUIRE([AC_CANONICAL_HOST])dnl
3540 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3541 AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
3543 if test "$GCC" = yes; then
3544 # Check if gcc -print-prog-name=ld gives a path.
3545 AC_MSG_CHECKING([for ld used by GCC])
3548 # gcc leaves a trailing carriage return which upsets mingw
3549 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3551 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3554 # Accept absolute paths.
3555 [[\\/]]* | [[A-Za-z]]:[[\\/]]*)
3556 re_direlt='/[[^/]][[^/]]*/\.\./'
3557 # Canonicalize the path of ld
3558 ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
3559 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
3560 ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
3562 test -z "$LD" && LD="$ac_prog"
3565 # If it fails, then pretend we aren't using GCC.
3569 # If it is relative, then search for the first ld in PATH.
3573 elif test "$with_gnu_ld" = yes; then
3574 AC_MSG_CHECKING([for GNU ld])
3576 AC_MSG_CHECKING([for non-GNU ld])
3578 AC_CACHE_VAL(lt_cv_path_LD,
3579 [if test -z "$LD"; then
3580 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3581 for ac_dir in $PATH; do
3582 test -z "$ac_dir" && ac_dir=.
3583 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3584 lt_cv_path_LD="$ac_dir/$ac_prog"
3585 # Check to see if the program is GNU ld. I'd rather use --version,
3586 # but apparently some GNU ld's only accept -v.
3587 # Break only if it was the GNU/non-GNU ld that we prefer.
3588 if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
3589 test "$with_gnu_ld" != no && break
3591 test "$with_gnu_ld" != yes && break
3597 lt_cv_path_LD="$LD" # Let the user override the test with a path.
3600 if test -n "$LD"; then
3605 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3610 AC_DEFUN([AC_PROG_LD_GNU],
3611 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3612 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
3613 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
3614 lt_cv_prog_gnu_ld=yes
3616 lt_cv_prog_gnu_ld=no
3618 with_gnu_ld=$lt_cv_prog_gnu_ld
3621 # AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
3622 # -- PORTME Some linkers may need a different reload flag.
3623 AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
3624 [AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
3625 [lt_cv_ld_reload_flag='-r'])
3626 reload_flag=$lt_cv_ld_reload_flag
3627 test -n "$reload_flag" && reload_flag=" $reload_flag"
3630 # AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
3631 # -- PORTME fill in with the dynamic library characteristics
3632 AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
3633 [AC_CACHE_CHECK([how to recognise dependant libraries],
3634 lt_cv_deplibs_check_method,
3635 [lt_cv_file_magic_cmd='$MAGIC_CMD'
3636 lt_cv_file_magic_test_file=
3637 lt_cv_deplibs_check_method='unknown'
3638 # Need to set the preceding variable on all platforms that support
3639 # interlibrary dependencies.
3640 # 'none' -- dependencies not supported.
3641 # `unknown' -- same as none, but documents that we really don't know.
3642 # 'pass_all' -- all dependencies passed with no checks.
3643 # 'test_compile' -- check by making test program.
3644 # 'file_magic [[regex]]' -- check by looking for files in library path
3645 # which responds to the $file_magic_cmd with a given egrep regex.
3646 # If you have `file' or equivalent on your system and you're not sure
3647 # whether `pass_all' will *always* work, you probably want this one.
3651 lt_cv_deplibs_check_method=pass_all
3655 lt_cv_deplibs_check_method=pass_all
3659 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3660 lt_cv_file_magic_cmd='/usr/bin/file -L'
3661 lt_cv_file_magic_test_file=/shlib/libc.so
3664 cygwin* | mingw* | pw32*)
3665 lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
3666 lt_cv_file_magic_cmd='$OBJDUMP -f'
3669 darwin* | rhapsody*)
3670 lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
3671 lt_cv_file_magic_cmd='/usr/bin/file -L'
3673 rhapsody* | darwin1.[[012]])
3674 lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
3677 lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
3683 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
3686 # Not sure whether the presence of OpenBSD here was a mistake.
3687 # Let's accept both of them until this is cleared up.
3688 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
3689 lt_cv_file_magic_cmd=/usr/bin/file
3690 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3694 lt_cv_deplibs_check_method=pass_all
3699 lt_cv_deplibs_check_method=pass_all
3703 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
3704 lt_cv_file_magic_cmd=/usr/bin/file
3705 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3708 irix5* | irix6* | nonstopux*)
3710 irix5* | nonstopux*)
3711 # this will be overridden with pass_all, but let us keep it just in case
3712 lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
3716 *-32|*"-32 ") libmagic=32-bit;;
3717 *-n32|*"-n32 ") libmagic=N32;;
3718 *-64|*"-64 ") libmagic=64-bit;;
3719 *) libmagic=never-match;;
3721 # this will be overridden with pass_all, but let us keep it just in case
3722 lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
3725 lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
3726 lt_cv_deplibs_check_method=pass_all
3729 # This must be Linux ELF.
3732 alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*)
3733 lt_cv_deplibs_check_method=pass_all ;;
3735 # glibc up to 2.1.1 does not perform some relocations on ARM
3736 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
3738 lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
3742 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
3743 lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
3745 lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
3750 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3751 lt_cv_file_magic_cmd=/usr/bin/file
3752 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3756 lt_cv_file_magic_cmd=/usr/bin/file
3757 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3758 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3759 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
3761 lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
3765 osf3* | osf4* | osf5*)
3766 # this will be overridden with pass_all, but let us keep it just in case
3767 lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
3768 lt_cv_file_magic_test_file=/shlib/libc.so
3769 lt_cv_deplibs_check_method=pass_all
3773 lt_cv_deplibs_check_method=pass_all
3777 lt_cv_deplibs_check_method=pass_all
3778 lt_cv_file_magic_test_file=/lib/libc.so
3781 sysv5uw[[78]]* | sysv4*uw2*)
3782 lt_cv_deplibs_check_method=pass_all
3785 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
3786 case $host_vendor in
3788 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]]'
3789 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3792 lt_cv_deplibs_check_method=pass_all
3795 lt_cv_file_magic_cmd='/bin/file'
3796 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3799 lt_cv_file_magic_cmd='/bin/file'
3800 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3801 lt_cv_file_magic_test_file=/lib/libc.so
3804 lt_cv_deplibs_check_method=pass_all
3810 file_magic_cmd=$lt_cv_file_magic_cmd
3811 deplibs_check_method=$lt_cv_deplibs_check_method
3815 # AC_PROG_NM - find the path to a BSD-compatible name lister
3816 AC_DEFUN([AC_PROG_NM],
3817 [AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
3818 AC_MSG_CHECKING([for BSD-compatible nm])
3819 AC_CACHE_VAL(lt_cv_path_NM,
3820 [if test -n "$NM"; then
3821 # Let the user override the test.
3824 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3825 for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
3826 test -z "$ac_dir" && ac_dir=.
3827 tmp_nm=$ac_dir/${ac_tool_prefix}nm
3828 if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
3829 # Check to see if the nm accepts a BSD-compat flag.
3830 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3831 # nm: unknown option "B" ignored
3832 # Tru64's nm complains that /dev/null is an invalid object file
3833 if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
3834 lt_cv_path_NM="$tmp_nm -B"
3836 elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
3837 lt_cv_path_NM="$tmp_nm -p"
3840 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3841 continue # so that we can try to find one that supports BSD flags
3846 test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
3849 AC_MSG_RESULT([$NM])
3852 # AC_CHECK_LIBM - check for math library
3853 AC_DEFUN([AC_CHECK_LIBM],
3854 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3857 *-*-beos* | *-*-cygwin* | *-*-pw32*)
3858 # These system don't have libm
3861 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3862 AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
3865 AC_CHECK_LIB(m, main, LIBM="-lm")
3870 # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
3871 # the libltdl convenience library and LTDLINCL to the include flags for
3872 # the libltdl header and adds --enable-ltdl-convenience to the
3873 # configure arguments. Note that LIBLTDL and LTDLINCL are not
3874 # AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
3875 # provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
3876 # with '${top_builddir}/' and LTDLINCL will be prefixed with
3877 # '${top_srcdir}/' (note the single quotes!). If your package is not
3878 # flat and you're not using automake, define top_builddir and
3879 # top_srcdir appropriately in the Makefiles.
3880 AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
3881 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3882 case $enable_ltdl_convenience in
3883 no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
3884 "") enable_ltdl_convenience=yes
3885 ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
3887 LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
3888 LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
3889 # For backwards non-gettext consistent compatibility...
3893 # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
3894 # the libltdl installable library and LTDLINCL to the include flags for
3895 # the libltdl header and adds --enable-ltdl-install to the configure
3896 # arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
3897 # AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
3898 # libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
3899 # be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
3900 # with '${top_srcdir}/' (note the single quotes!). If your package is
3901 # not flat and you're not using automake, define top_builddir and
3902 # top_srcdir appropriately in the Makefiles.
3903 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
3904 AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
3905 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3906 AC_CHECK_LIB(ltdl, main,
3907 [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
3908 [if test x"$enable_ltdl_install" = xno; then
3909 AC_MSG_WARN([libltdl not installed, but installation disabled])
3911 enable_ltdl_install=yes
3914 if test x"$enable_ltdl_install" = x"yes"; then
3915 ac_configure_args="$ac_configure_args --enable-ltdl-install"
3916 LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
3917 LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
3919 ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
3923 # For backwards non-gettext consistent compatibility...
3928 AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
3929 AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
3930 AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
3931 AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
3932 AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
3933 AC_DEFUN([AM_PROG_LD], [AC_PROG_LD])
3934 AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
3936 # This is just to silence aclocal about the macro not being used
3937 ifelse([AC_DISABLE_FAST_INSTALL])
3939 # NOTE: This macro has been submitted for inclusion into #
3940 # GNU Autoconf as AC_PROG_SED. When it is available in #
3941 # a released version of Autoconf we should remove this #
3942 # macro and use it instead. #
3945 # Check for a fully-functional sed program, that truncates
3946 # as few characters as possible. Prefer GNU sed if found.
3947 AC_DEFUN([LT_AC_PROG_SED],
3948 [AC_MSG_CHECKING([for a sed that does not truncate output])
3949 AC_CACHE_VAL(lt_cv_path_SED,
3950 [# Loop through the user's path and test for sed and gsed.
3951 # Then use that list of sed's as ones to test for truncation.
3952 as_executable_p="test -f"
3953 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3957 test -z "$as_dir" && as_dir=.
3958 for ac_prog in sed gsed; do
3959 for ac_exec_ext in '' $ac_executable_extensions; do
3960 if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
3961 _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
3967 # Create a temporary directory, and hook for its removal unless debugging.
3970 trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
3971 trap '{ (exit 1); exit 1; }' 1 2 13 15
3974 # Create a (secure) tmp directory for tmp files.
3977 tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
3978 test -n "$tmp" && test -d "$tmp"
3981 tmp=$TMPDIR/sed$$-$RANDOM
3982 (umask 077 && mkdir $tmp)
3985 echo "$me: cannot create a temporary directory in $TMPDIR" >&2
3986 { (exit 1); exit 1; }
3990 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
3991 # along with /bin/sed that truncates output.
3992 for _sed in $_sed_list /usr/xpg4/bin/sed; do
3993 test ! -f ${_sed} && break
3994 cat /dev/null > "$tmp/sed.in"
3996 echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
3997 # Check for GNU sed and select it if it is found.
3998 if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
3999 lt_cv_path_SED=${_sed}
4003 cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
4004 mv "$tmp/sed.tmp" "$tmp/sed.in"
4005 cp "$tmp/sed.in" "$tmp/sed.nl"
4006 echo >>"$tmp/sed.nl"
4007 ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
4008 cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
4009 # 40000 chars as input seems more than enough
4010 test $_count -gt 10 && break
4011 _count=`expr $_count + 1`
4012 if test $_count -gt $_max; then
4014 lt_cv_path_SED=$_sed
4020 if test "X$SED" != "X"; then
4025 AC_MSG_RESULT([$SED])