]> sjero.net Git - wget/blob - aclocal.m4
[svn] Updated config.sub and config.guess from Autoconf 2.57.
[wget] / aclocal.m4
1 AC_DEFUN(AM_C_PROTOTYPES,
2 [AC_REQUIRE([AM_PROG_CC_STDC])
3 AC_BEFORE([$0], [AC_C_INLINE])
4 AC_MSG_CHECKING([for function prototypes])
5 if test "$am_cv_prog_cc_stdc" != no; then
6   AC_MSG_RESULT(yes)
7   AC_DEFINE(PROTOTYPES)
8   U= ANSI2KNR=
9 else
10   AC_MSG_RESULT(no)
11   U=_ ANSI2KNR=./ansi2knr
12   # Ensure some checks needed by ansi2knr itself.
13   AC_HEADER_STDC
14   AC_CHECK_HEADERS(string.h)
15 fi
16 AC_SUBST(U)dnl
17 AC_SUBST(ANSI2KNR)dnl
18 ])
19
20
21 # serial 1
22
23 # @defmac AC_PROG_CC_STDC
24 # @maindex PROG_CC_STDC
25 # @ovindex CC
26 # If the C compiler in not in ANSI C mode by default, try to add an option
27 # to output variable @code{CC} to make it so.  This macro tries various
28 # options that select ANSI C on some system or another.  It considers the
29 # compiler to be in ANSI C mode if it defines @code{__STDC__} to 1 and
30 # handles function prototypes correctly.
31 #
32 # If you use this macro, you should check after calling it whether the C
33 # compiler has been set to accept ANSI C; if not, the shell variable
34 # @code{am_cv_prog_cc_stdc} is set to @samp{no}.  If you wrote your source
35 # code in ANSI C, you can make an un-ANSIfied copy of it by using the
36 # program @code{ansi2knr}, which comes with Ghostscript.
37 # @end defmac
38
39 AC_DEFUN(AM_PROG_CC_STDC,
40 [AC_REQUIRE([AC_PROG_CC])
41 AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C])
42 AC_CACHE_VAL(am_cv_prog_cc_stdc,
43 [am_cv_prog_cc_stdc=no
44 ac_save_CC="$CC"
45 # Don't try gcc -ansi; that turns off useful extensions and
46 # breaks some systems' header files.
47 # AIX                   -qlanglvl=ansi
48 # Ultrix and OSF/1      -std1
49 # HP-UX                 -Aa -D_HPUX_SOURCE
50 for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE"
51 do
52   CC="$ac_save_CC $ac_arg"
53   AC_TRY_COMPILE(
54 [#if !defined(__STDC__)
55 choke me
56 #endif
57 /* DYNIX/ptx V4.1.3 can't compile sys/stat.h with -Xc -D__EXTENSIONS__. */
58 #ifdef _SEQUENT_
59 # include <sys/types.h>
60 # include <sys/stat.h>
61 #endif
62 ], [
63 int test (int i, double x);
64 struct s1 {int (*f) (int a);};
65 struct s2 {int (*f) (double a);};],
66 [am_cv_prog_cc_stdc="$ac_arg"; break])
67 done
68 CC="$ac_save_CC"
69 ])
70 AC_MSG_RESULT($am_cv_prog_cc_stdc)
71 case "x$am_cv_prog_cc_stdc" in
72   x|xno) ;;
73   *) CC="$CC $am_cv_prog_cc_stdc" ;;
74 esac
75 ])
76
77 AC_DEFUN(WGET_STRUCT_UTIMBUF,
78 [AC_MSG_CHECKING([for struct utimbuf])
79 if test x"$ac_cv_header_utime_h" = xyes; then
80   AC_EGREP_CPP([struct[         ]+utimbuf],
81     [#include <utime.h>],
82     [AC_DEFINE(HAVE_STRUCT_UTIMBUF)
83       AC_MSG_RESULT(yes)],
84     AC_MSG_RESULT(no))
85 else
86   AC_MSG_RESULT(no)
87 fi])
88
89
90 dnl ************************************************************
91 dnl START OF IPv6 AUTOCONFIGURATION SUPPORT MACROS
92 dnl ************************************************************
93
94 AC_DEFUN([TYPE_STRUCT_SOCKADDR_IN6],[
95   ds6_have_sockaddr_in6=
96   AC_CHECK_TYPES([struct sockaddr_in6],[
97     ds6_have_sockaddr_in6=yes
98   ],[
99     ds6_have_sockaddr_in6=no
100   ],[
101 #include <sys/types.h>
102 #include <sys/socket.h>
103 #include <netinet/in.h>
104   ])
105
106   if test "X$ds6_have_sockaddr_in6" = "Xyes"; then :
107     $1
108   else :
109     $2
110   fi
111 ])
112
113
114 AC_DEFUN([MEMBER_SIN6_SCOPE_ID],[
115   AC_REQUIRE([TYPE_STRUCT_SOCKADDR_IN6])
116   
117   ds6_member_sin6_scope_id=
118   if test "X$ds6_have_sockaddr_in6" = "Xyes"; then
119     AC_CHECK_MEMBER([struct sockaddr_in6.sin6_scope_id],[
120       ds6_member_sin6_scope_id=yes
121     ],[
122       ds6_member_sin6_scope_id=no
123     ],[
124 #include <sys/types.h>
125 #include <sys/socket.h>
126 #include <netinet/in.h>
127     ])
128   fi
129
130   if test "X$ds6_member_sin6_scope_id" = "Xyes"; then
131     AC_DEFINE([HAVE_SOCKADDR_IN6_SCOPE_ID], 1,
132       [Define if struct sockaddr_in6 has the sin6_scope_id member])
133     $1
134   else :
135     $2
136   fi
137 ])
138
139
140 AC_DEFUN([PROTO_INET6],[
141   AC_CACHE_CHECK([for INET6 protocol support], [ds6_cv_proto_inet6],[
142     AC_TRY_CPP([
143 #include <sys/types.h>
144 #include <sys/socket.h>
145
146 #ifndef PF_INET6
147 #error Missing PF_INET6
148 #endif
149 #ifndef AF_INET6
150 #error Mlssing AF_INET6
151 #endif
152     ],[
153       ds6_cv_proto_inet6=yes
154     ],[
155       ds6_cv_proto_inet6=no
156     ])
157   ])
158
159   if test "X$ds6_cv_proto_inet6" = "Xyes"; then :
160     $1
161   else :
162     $2
163   fi
164 ])
165
166
167 AC_DEFUN([GETADDRINFO_AI_ADDRCONFIG],[
168   AC_CACHE_CHECK([if getaddrinfo supports AI_ADDRCONFIG],
169     [ds6_cv_gai_ai_addrconfig],[
170     AC_TRY_CPP([
171 #include <netdb.h>
172
173 #ifndef AI_ADDRCONFIG
174 #error Missing AI_ADDRCONFIG
175 #endif
176     ],[
177       ds6_cv_gai_ai_addrconfig=yes
178     ],[
179       ds6_cv_gai_ai_addrconfig=no
180     ])
181   ])
182
183   if test "X$ds6_cv_gai_ai_addrconfig" = "Xyes"; then :
184     $1
185   else :
186     $2
187   fi
188 ])
189
190
191 AC_DEFUN([GETADDRINFO_AI_ALL],[
192   AC_CACHE_CHECK([if getaddrinfo supports AI_ALL],[ds6_cv_gai_ai_all],[
193     AC_TRY_CPP([
194 #include <netdb.h>
195
196 #ifndef AI_ALL
197 #error Missing AI_ALL
198 #endif
199     ],[
200       ds6_cv_gai_ai_all=yes
201     ],[
202       ds6_cv_gai_ai_all=no
203     ])
204   ])
205
206   if test "X$ds6_cv_gai_ai_all" = "Xyes"; then :
207     $1
208   else :
209     $2
210   fi
211 ])
212
213
214 AC_DEFUN([GETADDRINFO_AI_V4MAPPED],[
215   AC_CACHE_CHECK([if getaddrinfo supports AI_V4MAPPED],[ds6_cv_gai_ai_v4mapped],[
216     AC_TRY_CPP([
217 #include <netdb.h>
218
219 #ifndef AI_V4MAPPED
220 #error Missing AI_V4MAPPED
221 #endif
222     ],[
223       ds6_cv_gai_ai_v4mapped=yes
224     ],[
225       ds6_cv_gai_ai_v4mapped=no
226     ])
227   ])
228
229   if test "X$ds6_cv_gai_ai_v4mapped" = "Xyes"; then :
230     $1
231   else :
232     $2
233   fi
234 ])
235
236 dnl ************************************************************
237 dnl END OF IPv6 AUTOCONFIGURATION SUPPORT MACROS
238 dnl ************************************************************
239 \f
240 # This code originates from Ulrich Drepper's AM_WITH_NLS.
241
242 AC_DEFUN(WGET_WITH_NLS,
243   [AC_MSG_CHECKING([whether NLS is requested])
244     dnl Default is enabled NLS
245     AC_ARG_ENABLE(nls,
246       [  --disable-nls           do not use Native Language Support],
247       HAVE_NLS=$enableval, HAVE_NLS=yes)
248     AC_MSG_RESULT($HAVE_NLS)
249
250     dnl If something goes wrong, we may still decide not to use NLS.
251     dnl For this reason, defer AC_SUBST'ing HAVE_NLS until the very
252     dnl last moment.
253
254     if test x"$HAVE_NLS" = xyes; then
255       AC_MSG_RESULT([language catalogs: $ALL_LINGUAS])
256       AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
257         [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], msgfmt)
258       AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
259           [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
260       AC_SUBST(MSGFMT)
261       AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
262       CATOBJEXT=.gmo
263       INSTOBJEXT=.mo
264       DATADIRNAME=share
265
266       dnl Test whether we really found GNU xgettext.
267       if test "$XGETTEXT" != ":"; then
268         dnl If it is no GNU xgettext we define it as : so that the
269         dnl Makefiles still can work.
270         if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
271           : ;
272         else
273           AC_MSG_RESULT(
274             [found xgettext programs is not GNU xgettext; ignore it])
275           XGETTEXT=":"
276         fi
277       fi
278
279       AC_CHECK_HEADERS(locale.h libintl.h)
280
281       AC_CHECK_FUNCS(gettext, [], [
282         AC_CHECK_LIB(intl, gettext, [
283           dnl gettext is in libintl; announce the fact manually.
284           LIBS="-lintl $LIBS"
285           AC_DEFINE(HAVE_GETTEXT)
286         ], [
287           AC_MSG_RESULT(
288             [gettext not found; disabling NLS])
289           HAVE_NLS=no
290         ])
291       ])
292
293       dnl These rules are solely for the distribution goal.  While doing this
294       dnl we only have to keep exactly one list of the available catalogs
295       dnl in configure.in.
296       for lang in $ALL_LINGUAS; do
297         GMOFILES="$GMOFILES $lang.gmo"
298         POFILES="$POFILES $lang.po"
299       done
300       dnl Construct list of names of catalog files to be constructed.
301       for lang in $ALL_LINGUAS; do
302         CATALOGS="$CATALOGS ${lang}${CATOBJEXT}"
303       done
304
305       dnl Make all variables we use known to autoconf.
306       AC_SUBST(CATALOGS)
307       AC_SUBST(CATOBJEXT)
308       AC_SUBST(DATADIRNAME)
309       AC_SUBST(GMOFILES)
310       AC_SUBST(INSTOBJEXT)
311       AC_SUBST(INTLLIBS)
312       AC_SUBST(POFILES)
313     fi
314     AC_SUBST(HAVE_NLS)
315     dnl Some independently maintained files, such as po/Makefile.in,
316     dnl use `USE_NLS', so support it.
317     USE_NLS=$HAVE_NLS
318     AC_SUBST(USE_NLS)
319     if test "x$HAVE_NLS" = xyes; then
320       AC_DEFINE(HAVE_NLS)
321     fi
322   ])
323
324 dnl Generate list of files to be processed by xgettext which will
325 dnl be included in po/Makefile.
326 dnl
327 dnl This is not strictly an Autoconf macro, because it is run from
328 dnl within `config.status' rather than from within configure.  This
329 dnl is why special rules must be applied for it.
330 AC_DEFUN(WGET_PROCESS_PO,
331   [
332    dnl I wonder what the following several lines do...
333    if test "x$srcdir" != "x."; then
334      if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
335        posrcprefix="$srcdir/"
336      else
337        posrcprefix="../$srcdir/"
338      fi
339    else
340      posrcprefix="../"
341    fi
342    rm -f po/POTFILES
343    dnl Use `echo' rather than AC_MSG_RESULT, because this is run from
344    dnl `config.status'.
345    echo "generating po/POTFILES from $srcdir/po/POTFILES.in"
346    sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\,"  \
347        -e "\$s/\(.*\) \\\\/\1/" \
348         < $srcdir/po/POTFILES.in > po/POTFILES
349    echo "creating po/Makefile"
350    sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
351   ])
352
353 # Search path for a program which passes the given test.
354 # Ulrich Drepper <drepper@cygnus.com>, 1996.
355 #
356 # This file may be copied and used freely without restrictions.  It
357 # can be used in projects which are not available under the GNU Public
358 # License but which still want to provide support for the GNU gettext
359 # functionality.  Please note that the actual code is *not* freely
360 # available.
361
362 # serial 1
363
364 dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
365 dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
366 AC_DEFUN(AM_PATH_PROG_WITH_TEST,
367 [# Extract the first word of "$2", so it can be a program name with args.
368 set dummy $2; ac_word=[$]2
369 AC_MSG_CHECKING([for $ac_word])
370 AC_CACHE_VAL(ac_cv_path_$1,
371 [case "[$]$1" in
372   /*)
373   ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
374   ;;
375   *)
376   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
377   for ac_dir in ifelse([$5], , $PATH, [$5]); do
378     test -z "$ac_dir" && ac_dir=.
379     if test -f $ac_dir/$ac_word; then
380       if [$3]; then
381         ac_cv_path_$1="$ac_dir/$ac_word"
382         break
383       fi
384     fi
385   done
386   IFS="$ac_save_ifs"
387 dnl If no 4th arg is given, leave the cache variable unset,
388 dnl so AC_PATH_PROGS will keep looking.
389 ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
390 ])dnl
391   ;;
392 esac])dnl
393 $1="$ac_cv_path_$1"
394 if test -n "[$]$1"; then
395   AC_MSG_RESULT([$]$1)
396 else
397   AC_MSG_RESULT(no)
398 fi
399 AC_SUBST($1)dnl
400 ])
401
402
403 # We embed libtool.m4 from libtool distribution.
404
405 # -- embedded libtool.m4 begins here --
406
407 # libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
408 ## Copyright 1996, 1997, 1998, 1999, 2000, 2001
409 ## Free Software Foundation, Inc.
410 ## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
411 ##
412 ## This program is free software; you can redistribute it and/or modify
413 ## it under the terms of the GNU General Public License as published by
414 ## the Free Software Foundation; either version 2 of the License, or
415 ## (at your option) any later version.
416 ##
417 ## This program is distributed in the hope that it will be useful, but
418 ## WITHOUT ANY WARRANTY; without even the implied warranty of
419 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
420 ## General Public License for more details.
421 ##
422 ## You should have received a copy of the GNU General Public License
423 ## along with this program; if not, write to the Free Software
424 ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
425 ##
426 ## As a special exception to the GNU General Public License, if you
427 ## distribute this file as part of a program that contains a
428 ## configuration script generated by Autoconf, you may include it under
429 ## the same distribution terms that you use for the rest of that program.
430
431 # serial 46 AC_PROG_LIBTOOL
432
433 AC_DEFUN([AC_PROG_LIBTOOL],
434 [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
435
436 # This can be used to rebuild libtool when needed
437 LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
438
439 # Always use our own libtool.
440 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
441 AC_SUBST(LIBTOOL)dnl
442
443 # Prevent multiple expansion
444 define([AC_PROG_LIBTOOL], [])
445 ])
446
447 AC_DEFUN([AC_LIBTOOL_SETUP],
448 [AC_PREREQ(2.13)dnl
449 AC_REQUIRE([AC_ENABLE_SHARED])dnl
450 AC_REQUIRE([AC_ENABLE_STATIC])dnl
451 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
452 AC_REQUIRE([AC_CANONICAL_HOST])dnl
453 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
454 AC_REQUIRE([AC_PROG_CC])dnl
455 AC_REQUIRE([AC_PROG_LD])dnl
456 AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
457 AC_REQUIRE([AC_PROG_NM])dnl
458 AC_REQUIRE([AC_PROG_LN_S])dnl
459 AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
460 AC_REQUIRE([AC_OBJEXT])dnl
461 AC_REQUIRE([AC_EXEEXT])dnl
462 dnl
463
464 _LT_AC_PROG_ECHO_BACKSLASH
465 # Only perform the check for file, if the check method requires it
466 case $deplibs_check_method in
467 file_magic*)
468   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
469     AC_PATH_MAGIC
470   fi
471   ;;
472 esac
473
474 AC_CHECK_TOOL(RANLIB, ranlib, :)
475 AC_CHECK_TOOL(STRIP, strip, :)
476
477 ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
478 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
479 enable_win32_dll=yes, enable_win32_dll=no)
480
481 AC_ARG_ENABLE(libtool-lock,
482   [  --disable-libtool-lock  avoid locking (might break parallel builds)])
483 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
484
485 # Some flags need to be propagated to the compiler or linker for good
486 # libtool support.
487 case $host in
488 *-*-irix6*)
489   # Find out which ABI we are using.
490   echo '[#]line __oline__ "configure"' > conftest.$ac_ext
491   if AC_TRY_EVAL(ac_compile); then
492     case `/usr/bin/file conftest.$ac_objext` in
493     *32-bit*)
494       LD="${LD-ld} -32"
495       ;;
496     *N32*)
497       LD="${LD-ld} -n32"
498       ;;
499     *64-bit*)
500       LD="${LD-ld} -64"
501       ;;
502     esac
503   fi
504   rm -rf conftest*
505   ;;
506
507 *-*-sco3.2v5*)
508   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
509   SAVE_CFLAGS="$CFLAGS"
510   CFLAGS="$CFLAGS -belf"
511   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
512     [AC_LANG_SAVE
513      AC_LANG_C
514      AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
515      AC_LANG_RESTORE])
516   if test x"$lt_cv_cc_needs_belf" != x"yes"; then
517     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
518     CFLAGS="$SAVE_CFLAGS"
519   fi
520   ;;
521
522 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
523 [*-*-cygwin* | *-*-mingw* | *-*-pw32*)
524   AC_CHECK_TOOL(DLLTOOL, dlltool, false)
525   AC_CHECK_TOOL(AS, as, false)
526   AC_CHECK_TOOL(OBJDUMP, objdump, false)
527
528   # recent cygwin and mingw systems supply a stub DllMain which the user
529   # can override, but on older systems we have to supply one
530   AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
531     [AC_TRY_LINK([],
532       [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
533       DllMain (0, 0, 0);],
534       [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
535
536   case $host/$CC in
537   *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
538     # old mingw systems require "-dll" to link a DLL, while more recent ones
539     # require "-mdll"
540     SAVE_CFLAGS="$CFLAGS"
541     CFLAGS="$CFLAGS -mdll"
542     AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
543       [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
544     CFLAGS="$SAVE_CFLAGS" ;;
545   *-*-cygwin* | *-*-pw32*)
546     # cygwin systems need to pass --dll to the linker, and not link
547     # crt.o which will require a WinMain@16 definition.
548     lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
549   esac
550   ;;
551   ])
552 esac
553
554 _LT_AC_LTCONFIG_HACK
555
556 ])
557
558 # AC_LIBTOOL_HEADER_ASSERT
559 # ------------------------
560 AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT],
561 [AC_CACHE_CHECK([whether $CC supports assert without backlinking],
562     [lt_cv_func_assert_works],
563     [case $host in
564     *-*-solaris*)
565       if test "$GCC" = yes && test "$with_gnu_ld" != yes; then
566         case `$CC --version 2>/dev/null` in
567         [[12]].*) lt_cv_func_assert_works=no ;;
568         *)        lt_cv_func_assert_works=yes ;;
569         esac
570       fi
571       ;;
572     esac])
573
574 if test "x$lt_cv_func_assert_works" = xyes; then
575   AC_CHECK_HEADERS(assert.h)
576 fi
577 ])# AC_LIBTOOL_HEADER_ASSERT
578
579 # _LT_AC_CHECK_DLFCN
580 # --------------------
581 AC_DEFUN([_LT_AC_CHECK_DLFCN],
582 [AC_CHECK_HEADERS(dlfcn.h)
583 ])# _LT_AC_CHECK_DLFCN
584
585 # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
586 # ---------------------------------
587 AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
588 [AC_REQUIRE([AC_CANONICAL_HOST])
589 AC_REQUIRE([AC_PROG_NM])
590 AC_REQUIRE([AC_OBJEXT])
591 # Check for command to grab the raw symbol name followed by C symbol from nm.
592 AC_MSG_CHECKING([command to parse $NM output])
593 AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl
594
595 # These are sane defaults that work on at least a few old systems.
596 # [They come from Ultrix.  What could be older than Ultrix?!! ;)]
597
598 # Character class describing NM global symbol codes.
599 symcode='[[BCDEGRST]]'
600
601 # Regexp to match symbols that can be accessed directly from C.
602 sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
603
604 # Transform the above into a raw symbol and a C symbol.
605 symxfrm='\1 \2\3 \3'
606
607 # Transform an extracted symbol line into a proper C declaration
608 lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
609
610 # Transform an extracted symbol line into symbol name and symbol address
611 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'"
612
613 # Define system-specific variables.
614 case $host_os in
615 aix*)
616   symcode='[[BCDT]]'
617   ;;
618 cygwin* | mingw* | pw32*)
619   symcode='[[ABCDGISTW]]'
620   ;;
621 hpux*) # Its linker distinguishes data from code symbols
622   lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
623   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'"
624   ;;
625 irix*)
626   symcode='[[BCDEGRST]]'
627   ;;
628 solaris* | sysv5*)
629   symcode='[[BDT]]'
630   ;;
631 sysv4)
632   symcode='[[DFNSTU]]'
633   ;;
634 esac
635
636 # Handle CRLF in mingw tool chain
637 opt_cr=
638 case $host_os in
639 mingw*)
640   opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
641   ;;
642 esac
643
644 # If we're using GNU nm, then use its standard symbol codes.
645 if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
646   symcode='[[ABCDGISTW]]'
647 fi
648
649 # Try without a prefix undercore, then with it.
650 for ac_symprfx in "" "_"; do
651
652   # Write the raw and C identifiers.
653 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[        ]]\($symcode$symcode*\)[[       ]][[    ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
654
655   # Check to see that the pipe works correctly.
656   pipe_works=no
657   rm -f conftest*
658   cat > conftest.$ac_ext <<EOF
659 #ifdef __cplusplus
660 extern "C" {
661 #endif
662 char nm_test_var;
663 void nm_test_func(){}
664 #ifdef __cplusplus
665 }
666 #endif
667 int main(){nm_test_var='a';nm_test_func();return(0);}
668 EOF
669
670   if AC_TRY_EVAL(ac_compile); then
671     # Now try to grab the symbols.
672     nlist=conftest.nm
673     if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
674       # Try sorting and uniquifying the output.
675       if sort "$nlist" | uniq > "$nlist"T; then
676         mv -f "$nlist"T "$nlist"
677       else
678         rm -f "$nlist"T
679       fi
680
681       # Make sure that we snagged all the symbols we need.
682       if egrep ' nm_test_var$' "$nlist" >/dev/null; then
683         if egrep ' nm_test_func$' "$nlist" >/dev/null; then
684           cat <<EOF > conftest.$ac_ext
685 #ifdef __cplusplus
686 extern "C" {
687 #endif
688
689 EOF
690           # Now generate the symbol file.
691           eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
692
693           cat <<EOF >> conftest.$ac_ext
694 #if defined (__STDC__) && __STDC__
695 # define lt_ptr void *
696 #else
697 # define lt_ptr char *
698 # define const
699 #endif
700
701 /* The mapping between symbol names and symbols. */
702 const struct {
703   const char *name;
704   lt_ptr address;
705 }
706 lt_preloaded_symbols[[]] =
707 {
708 EOF
709           sed "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
710           cat <<\EOF >> conftest.$ac_ext
711   {0, (lt_ptr) 0}
712 };
713
714 #ifdef __cplusplus
715 }
716 #endif
717 EOF
718           # Now try linking the two files.
719           mv conftest.$ac_objext conftstm.$ac_objext
720           save_LIBS="$LIBS"
721           save_CFLAGS="$CFLAGS"
722           LIBS="conftstm.$ac_objext"
723           CFLAGS="$CFLAGS$no_builtin_flag"
724           if AC_TRY_EVAL(ac_link) && test -s conftest; then
725             pipe_works=yes
726           fi
727           LIBS="$save_LIBS"
728           CFLAGS="$save_CFLAGS"
729         else
730           echo "cannot find nm_test_func in $nlist" >&AC_FD_CC
731         fi
732       else
733         echo "cannot find nm_test_var in $nlist" >&AC_FD_CC
734       fi
735     else
736       echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC
737     fi
738   else
739     echo "$progname: failed program was:" >&AC_FD_CC
740     cat conftest.$ac_ext >&5
741   fi
742   rm -f conftest* conftst*
743
744   # Do not use the global_symbol_pipe unless it works.
745   if test "$pipe_works" = yes; then
746     break
747   else
748     lt_cv_sys_global_symbol_pipe=
749   fi
750 done
751 ])
752 global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
753 if test -z "$lt_cv_sys_global_symbol_pipe"; then
754   global_symbol_to_cdecl=
755   global_symbol_to_c_name_address=
756 else
757   global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
758   global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
759 fi
760 if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
761 then
762   AC_MSG_RESULT(failed)
763 else
764   AC_MSG_RESULT(ok)
765 fi
766 ]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
767
768 # _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
769 # ---------------------------------
770 AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
771 [# Find the correct PATH separator.  Usually this is `:', but
772 # DJGPP uses `;' like DOS.
773 if test "X${PATH_SEPARATOR+set}" != Xset; then
774   UNAME=${UNAME-`uname 2>/dev/null`}
775   case X$UNAME in
776     *-DOS) lt_cv_sys_path_separator=';' ;;
777     *)     lt_cv_sys_path_separator=':' ;;
778   esac
779   PATH_SEPARATOR=$lt_cv_sys_path_separator
780 fi
781 ])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
782
783 # _LT_AC_PROG_ECHO_BACKSLASH
784 # --------------------------
785 # Add some code to the start of the generated configure script which
786 # will find an echo command which doesn't interpret backslashes.
787 AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
788 [ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
789                               [AC_DIVERT_PUSH(NOTICE)])
790 _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
791
792 # Check that we are running under the correct shell.
793 SHELL=${CONFIG_SHELL-/bin/sh}
794
795 case X$ECHO in
796 X*--fallback-echo)
797   # Remove one level of quotation (which was required for Make).
798   ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
799   ;;
800 esac
801
802 echo=${ECHO-echo}
803 if test "X[$]1" = X--no-reexec; then
804   # Discard the --no-reexec flag, and continue.
805   shift
806 elif test "X[$]1" = X--fallback-echo; then
807   # Avoid inline document here, it may be left over
808   :
809 elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
810   # Yippee, $echo works!
811   :
812 else
813   # Restart under the correct shell.
814   exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
815 fi
816
817 if test "X[$]1" = X--fallback-echo; then
818   # used as fallback echo
819   shift
820   cat <<EOF
821 $*
822 EOF
823   exit 0
824 fi
825
826 # The HP-UX ksh and POSIX shell print the target directory to stdout
827 # if CDPATH is set.
828 if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
829
830 if test -z "$ECHO"; then
831 if test "X${echo_test_string+set}" != Xset; then
832 # find a string as large as possible, as long as the shell can cope with it
833   for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
834     # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
835     if (echo_test_string="`eval $cmd`") 2>/dev/null &&
836        echo_test_string="`eval $cmd`" &&
837        (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
838     then
839       break
840     fi
841   done
842 fi
843
844 if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
845    echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
846    test "X$echo_testing_string" = "X$echo_test_string"; then
847   :
848 else
849   # The Solaris, AIX, and Digital Unix default echo programs unquote
850   # backslashes.  This makes it impossible to quote backslashes using
851   #   echo "$something" | sed 's/\\/\\\\/g'
852   #
853   # So, first we look for a working echo in the user's PATH.
854
855   IFS="${IFS=   }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
856   for dir in $PATH /usr/ucb; do
857     if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
858        test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
859        echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
860        test "X$echo_testing_string" = "X$echo_test_string"; then
861       echo="$dir/echo"
862       break
863     fi
864   done
865   IFS="$save_ifs"
866
867   if test "X$echo" = Xecho; then
868     # We didn't find a better echo, so look for alternatives.
869     if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
870        echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
871        test "X$echo_testing_string" = "X$echo_test_string"; then
872       # This shell has a builtin print -r that does the trick.
873       echo='print -r'
874     elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
875          test "X$CONFIG_SHELL" != X/bin/ksh; then
876       # If we have ksh, try running configure again with it.
877       ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
878       export ORIGINAL_CONFIG_SHELL
879       CONFIG_SHELL=/bin/ksh
880       export CONFIG_SHELL
881       exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
882     else
883       # Try using printf.
884       echo='printf %s\n'
885       if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
886          echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
887          test "X$echo_testing_string" = "X$echo_test_string"; then
888         # Cool, printf works
889         :
890       elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
891            test "X$echo_testing_string" = 'X\t' &&
892            echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
893            test "X$echo_testing_string" = "X$echo_test_string"; then
894         CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
895         export CONFIG_SHELL
896         SHELL="$CONFIG_SHELL"
897         export SHELL
898         echo="$CONFIG_SHELL [$]0 --fallback-echo"
899       elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
900            test "X$echo_testing_string" = 'X\t' &&
901            echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
902            test "X$echo_testing_string" = "X$echo_test_string"; then
903         echo="$CONFIG_SHELL [$]0 --fallback-echo"
904       else
905         # maybe with a smaller string...
906         prev=:
907
908         for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
909           if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
910           then
911             break
912           fi
913           prev="$cmd"
914         done
915
916         if test "$prev" != 'sed 50q "[$]0"'; then
917           echo_test_string=`eval $prev`
918           export echo_test_string
919           exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
920         else
921           # Oops.  We lost completely, so just stick with echo.
922           echo=echo
923         fi
924       fi
925     fi
926   fi
927 fi
928 fi
929
930 # Copy echo and quote the copy suitably for passing to libtool from
931 # the Makefile, instead of quoting the original, which is used later.
932 ECHO=$echo
933 if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
934    ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
935 fi
936
937 AC_SUBST(ECHO)
938 AC_DIVERT_POP
939 ])# _LT_AC_PROG_ECHO_BACKSLASH
940
941 # _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
942 #                           ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
943 # ------------------------------------------------------------------
944 AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
945 [if test "$cross_compiling" = yes; then :
946   [$4]
947 else
948   AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
949   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
950   lt_status=$lt_dlunknown
951   cat > conftest.$ac_ext <<EOF
952 [#line __oline__ "configure"
953 #include "confdefs.h"
954
955 #if HAVE_DLFCN_H
956 #include <dlfcn.h>
957 #endif
958
959 #include <stdio.h>
960
961 #ifdef RTLD_GLOBAL
962 #  define LT_DLGLOBAL           RTLD_GLOBAL
963 #else
964 #  ifdef DL_GLOBAL
965 #    define LT_DLGLOBAL         DL_GLOBAL
966 #  else
967 #    define LT_DLGLOBAL         0
968 #  endif
969 #endif
970
971 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
972    find out it does not work in some platform. */
973 #ifndef LT_DLLAZY_OR_NOW
974 #  ifdef RTLD_LAZY
975 #    define LT_DLLAZY_OR_NOW            RTLD_LAZY
976 #  else
977 #    ifdef DL_LAZY
978 #      define LT_DLLAZY_OR_NOW          DL_LAZY
979 #    else
980 #      ifdef RTLD_NOW
981 #        define LT_DLLAZY_OR_NOW        RTLD_NOW
982 #      else
983 #        ifdef DL_NOW
984 #          define LT_DLLAZY_OR_NOW      DL_NOW
985 #        else
986 #          define LT_DLLAZY_OR_NOW      0
987 #        endif
988 #      endif
989 #    endif
990 #  endif
991 #endif
992
993 #ifdef __cplusplus
994 extern "C" void exit (int);
995 #endif
996
997 void fnord() { int i=42;}
998 int main ()
999 {
1000   void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1001   int status = $lt_dlunknown;
1002
1003   if (self)
1004     {
1005       if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
1006       else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1007       /* dlclose (self); */
1008     }
1009
1010     exit (status);
1011 }]
1012 EOF
1013   if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1014     (./conftest; exit; ) 2>/dev/null
1015     lt_status=$?
1016     case x$lt_status in
1017       x$lt_dlno_uscore) $1 ;;
1018       x$lt_dlneed_uscore) $2 ;;
1019       x$lt_unknown|x*) $3 ;;
1020     esac
1021   else :
1022     # compilation failed
1023     $3
1024   fi
1025 fi
1026 rm -fr conftest*
1027 ])# _LT_AC_TRY_DLOPEN_SELF
1028
1029 # AC_LIBTOOL_DLOPEN_SELF
1030 # -------------------
1031 AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
1032 [if test "x$enable_dlopen" != xyes; then
1033   enable_dlopen=unknown
1034   enable_dlopen_self=unknown
1035   enable_dlopen_self_static=unknown
1036 else
1037   lt_cv_dlopen=no
1038   lt_cv_dlopen_libs=
1039
1040   case $host_os in
1041   beos*)
1042     lt_cv_dlopen="load_add_on"
1043     lt_cv_dlopen_libs=
1044     lt_cv_dlopen_self=yes
1045     ;;
1046
1047   cygwin* | mingw* | pw32*)
1048     lt_cv_dlopen="LoadLibrary"
1049     lt_cv_dlopen_libs=
1050    ;;
1051
1052   *)
1053     AC_CHECK_FUNC([shl_load],
1054           [lt_cv_dlopen="shl_load"],
1055       [AC_CHECK_LIB([dld], [shl_load],
1056             [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
1057         [AC_CHECK_FUNC([dlopen],
1058               [lt_cv_dlopen="dlopen"],
1059           [AC_CHECK_LIB([dl], [dlopen],
1060                 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1061             [AC_CHECK_LIB([svld], [dlopen],
1062                   [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1063               [AC_CHECK_LIB([dld], [dld_link],
1064                     [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
1065               ])
1066             ])
1067           ])
1068         ])
1069       ])
1070     ;;
1071   esac
1072
1073   if test "x$lt_cv_dlopen" != xno; then
1074     enable_dlopen=yes
1075   else
1076     enable_dlopen=no
1077   fi
1078
1079   case $lt_cv_dlopen in
1080   dlopen)
1081     save_CPPFLAGS="$CPPFLAGS"
1082     AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
1083     test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1084
1085     save_LDFLAGS="$LDFLAGS"
1086     eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1087
1088     save_LIBS="$LIBS"
1089     LIBS="$lt_cv_dlopen_libs $LIBS"
1090
1091     AC_CACHE_CHECK([whether a program can dlopen itself],
1092           lt_cv_dlopen_self, [dnl
1093           _LT_AC_TRY_DLOPEN_SELF(
1094             lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1095             lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1096     ])
1097
1098     if test "x$lt_cv_dlopen_self" = xyes; then
1099       LDFLAGS="$LDFLAGS $link_static_flag"
1100       AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1101           lt_cv_dlopen_self_static, [dnl
1102           _LT_AC_TRY_DLOPEN_SELF(
1103             lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1104             lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
1105       ])
1106     fi
1107
1108     CPPFLAGS="$save_CPPFLAGS"
1109     LDFLAGS="$save_LDFLAGS"
1110     LIBS="$save_LIBS"
1111     ;;
1112   esac
1113
1114   case $lt_cv_dlopen_self in
1115   yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1116   *) enable_dlopen_self=unknown ;;
1117   esac
1118
1119   case $lt_cv_dlopen_self_static in
1120   yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1121   *) enable_dlopen_self_static=unknown ;;
1122   esac
1123 fi
1124 ])# AC_LIBTOOL_DLOPEN_SELF
1125
1126 AC_DEFUN([_LT_AC_LTCONFIG_HACK],
1127 [AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
1128 # Sed substitution that helps us do robust quoting.  It backslashifies
1129 # metacharacters that are still active within double-quoted strings.
1130 Xsed='sed -e s/^X//'
1131 sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g'
1132
1133 # Same as above, but do not quote variable references.
1134 double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g'
1135
1136 # Sed substitution to delay expansion of an escaped shell variable in a
1137 # double_quote_subst'ed string.
1138 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
1139
1140 # Constants:
1141 rm="rm -f"
1142
1143 # Global variables:
1144 default_ofile=libtool
1145 can_build_shared=yes
1146
1147 # All known linkers require a `.a' archive for static linking (except M$VC,
1148 # which needs '.lib').
1149 libext=a
1150 ltmain="$ac_aux_dir/ltmain.sh"
1151 ofile="$default_ofile"
1152 with_gnu_ld="$lt_cv_prog_gnu_ld"
1153 need_locks="$enable_libtool_lock"
1154
1155 old_CC="$CC"
1156 old_CFLAGS="$CFLAGS"
1157
1158 # Set sane defaults for various variables
1159 test -z "$AR" && AR=ar
1160 test -z "$AR_FLAGS" && AR_FLAGS=cru
1161 test -z "$AS" && AS=as
1162 test -z "$CC" && CC=cc
1163 test -z "$DLLTOOL" && DLLTOOL=dlltool
1164 test -z "$LD" && LD=ld
1165 test -z "$LN_S" && LN_S="ln -s"
1166 test -z "$MAGIC_CMD" && MAGIC_CMD=file
1167 test -z "$NM" && NM=nm
1168 test -z "$OBJDUMP" && OBJDUMP=objdump
1169 test -z "$RANLIB" && RANLIB=:
1170 test -z "$STRIP" && STRIP=:
1171 test -z "$ac_objext" && ac_objext=o
1172
1173 if test x"$host" != x"$build"; then
1174   ac_tool_prefix=${host_alias}-
1175 else
1176   ac_tool_prefix=
1177 fi
1178
1179 # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
1180 case $host_os in
1181 linux-gnu*) ;;
1182 linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
1183 esac
1184
1185 case $host_os in
1186 aix3*)
1187   # AIX sometimes has problems with the GCC collect2 program.  For some
1188   # reason, if we set the COLLECT_NAMES environment variable, the problems
1189   # vanish in a puff of smoke.
1190   if test "X${COLLECT_NAMES+set}" != Xset; then
1191     COLLECT_NAMES=
1192     export COLLECT_NAMES
1193   fi
1194   ;;
1195 esac
1196
1197 # Determine commands to create old-style static archives.
1198 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
1199 old_postinstall_cmds='chmod 644 $oldlib'
1200 old_postuninstall_cmds=
1201
1202 if test -n "$RANLIB"; then
1203   case $host_os in
1204   openbsd*)
1205     old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
1206     ;;
1207   *)
1208     old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
1209     ;;
1210   esac
1211   old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1212 fi
1213
1214 # Allow CC to be a program name with arguments.
1215 set dummy $CC
1216 compiler="[$]2"
1217
1218 ## FIXME: this should be a separate macro
1219 ##
1220 AC_MSG_CHECKING([for objdir])
1221 rm -f .libs 2>/dev/null
1222 mkdir .libs 2>/dev/null
1223 if test -d .libs; then
1224   objdir=.libs
1225 else
1226   # MS-DOS does not allow filenames that begin with a dot.
1227   objdir=_libs
1228 fi
1229 rmdir .libs 2>/dev/null
1230 AC_MSG_RESULT($objdir)
1231 ##
1232 ## END FIXME
1233
1234
1235 ## FIXME: this should be a separate macro
1236 ##
1237 AC_ARG_WITH(pic,
1238 [  --with-pic              try to use only PIC/non-PIC objects [default=use both]],
1239 pic_mode="$withval", pic_mode=default)
1240 test -z "$pic_mode" && pic_mode=default
1241
1242 # We assume here that the value for lt_cv_prog_cc_pic will not be cached
1243 # in isolation, and that seeing it set (from the cache) indicates that
1244 # the associated values are set (in the cache) correctly too.
1245 AC_MSG_CHECKING([for $compiler option to produce PIC])
1246 AC_CACHE_VAL(lt_cv_prog_cc_pic,
1247 [ lt_cv_prog_cc_pic=
1248   lt_cv_prog_cc_shlib=
1249   lt_cv_prog_cc_wl=
1250   lt_cv_prog_cc_static=
1251   lt_cv_prog_cc_no_builtin=
1252   lt_cv_prog_cc_can_build_shared=$can_build_shared
1253
1254   if test "$GCC" = yes; then
1255     lt_cv_prog_cc_wl='-Wl,'
1256     lt_cv_prog_cc_static='-static'
1257
1258     case $host_os in
1259     aix*)
1260       # Below there is a dirty hack to force normal static linking with -ldl
1261       # The problem is because libdl dynamically linked with both libc and
1262       # libC (AIX C++ library), which obviously doesn't included in libraries
1263       # list by gcc. This cause undefined symbols with -static flags.
1264       # This hack allows C programs to be linked with "-static -ldl", but
1265       # not sure about C++ programs.
1266       lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
1267       ;;
1268     amigaos*)
1269       # FIXME: we need at least 68020 code to build shared libraries, but
1270       # adding the `-m68020' flag to GCC prevents building anything better,
1271       # like `-m68040'.
1272       lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
1273       ;;
1274     beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
1275       # PIC is the default for these OSes.
1276       ;;
1277     darwin* | rhapsody*)
1278       # PIC is the default on this platform
1279       # Common symbols not allowed in MH_DYLIB files
1280       lt_cv_prog_cc_pic='-fno-common'
1281       ;;
1282     cygwin* | mingw* | pw32* | os2*)
1283       # This hack is so that the source file can tell whether it is being
1284       # built for inclusion in a dll (and should export symbols for example).
1285       lt_cv_prog_cc_pic='-DDLL_EXPORT'
1286       ;;
1287     sysv4*MP*)
1288       if test -d /usr/nec; then
1289          lt_cv_prog_cc_pic=-Kconform_pic
1290       fi
1291       ;;
1292     *)
1293       lt_cv_prog_cc_pic='-fPIC'
1294       ;;
1295     esac
1296   else
1297     # PORTME Check for PIC flags for the system compiler.
1298     case $host_os in
1299     aix3* | aix4* | aix5*)
1300       lt_cv_prog_cc_wl='-Wl,'
1301       # All AIX code is PIC.
1302       if test "$host_cpu" = ia64; then
1303         # AIX 5 now supports IA64 processor
1304         lt_cv_prog_cc_static='-Bstatic'
1305       else
1306         lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
1307       fi
1308       ;;
1309
1310     hpux9* | hpux10* | hpux11*)
1311       # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
1312       lt_cv_prog_cc_wl='-Wl,'
1313       lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
1314       lt_cv_prog_cc_pic='+Z'
1315       ;;
1316
1317     irix5* | irix6*)
1318       lt_cv_prog_cc_wl='-Wl,'
1319       lt_cv_prog_cc_static='-non_shared'
1320       # PIC (with -KPIC) is the default.
1321       ;;
1322
1323     cygwin* | mingw* | pw32* | os2*)
1324       # This hack is so that the source file can tell whether it is being
1325       # built for inclusion in a dll (and should export symbols for example).
1326       lt_cv_prog_cc_pic='-DDLL_EXPORT'
1327       ;;
1328
1329     newsos6)
1330       lt_cv_prog_cc_pic='-KPIC'
1331       lt_cv_prog_cc_static='-Bstatic'
1332       ;;
1333
1334     osf3* | osf4* | osf5*)
1335       # All OSF/1 code is PIC.
1336       lt_cv_prog_cc_wl='-Wl,'
1337       lt_cv_prog_cc_static='-non_shared'
1338       ;;
1339
1340     sco3.2v5*)
1341       lt_cv_prog_cc_pic='-Kpic'
1342       lt_cv_prog_cc_static='-dn'
1343       lt_cv_prog_cc_shlib='-belf'
1344       ;;
1345
1346     solaris*)
1347       lt_cv_prog_cc_pic='-KPIC'
1348       lt_cv_prog_cc_static='-Bstatic'
1349       lt_cv_prog_cc_wl='-Wl,'
1350       ;;
1351
1352     sunos4*)
1353       lt_cv_prog_cc_pic='-PIC'
1354       lt_cv_prog_cc_static='-Bstatic'
1355       lt_cv_prog_cc_wl='-Qoption ld '
1356       ;;
1357
1358     sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
1359       lt_cv_prog_cc_pic='-KPIC'
1360       lt_cv_prog_cc_static='-Bstatic'
1361       if test "x$host_vendor" = xsni; then
1362         lt_cv_prog_cc_wl='-LD'
1363       else
1364         lt_cv_prog_cc_wl='-Wl,'
1365       fi
1366       ;;
1367
1368     uts4*)
1369       lt_cv_prog_cc_pic='-pic'
1370       lt_cv_prog_cc_static='-Bstatic'
1371       ;;
1372
1373     sysv4*MP*)
1374       if test -d /usr/nec ;then
1375         lt_cv_prog_cc_pic='-Kconform_pic'
1376         lt_cv_prog_cc_static='-Bstatic'
1377       fi
1378       ;;
1379
1380     *)
1381       lt_cv_prog_cc_can_build_shared=no
1382       ;;
1383     esac
1384   fi
1385 ])
1386 if test -z "$lt_cv_prog_cc_pic"; then
1387   AC_MSG_RESULT([none])
1388 else
1389   AC_MSG_RESULT([$lt_cv_prog_cc_pic])
1390
1391   # Check to make sure the pic_flag actually works.
1392   AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works])
1393   AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl
1394     save_CFLAGS="$CFLAGS"
1395     CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
1396     AC_TRY_COMPILE([], [], [dnl
1397       case $host_os in
1398       hpux9* | hpux10* | hpux11*)
1399         # On HP-UX, both CC and GCC only warn that PIC is supported... then
1400         # they create non-PIC objects.  So, if there were any warnings, we
1401         # assume that PIC is not supported.
1402         if test -s conftest.err; then
1403           lt_cv_prog_cc_pic_works=no
1404         else
1405           lt_cv_prog_cc_pic_works=yes
1406         fi
1407         ;;
1408       *)
1409         lt_cv_prog_cc_pic_works=yes
1410         ;;
1411       esac
1412     ], [dnl
1413       lt_cv_prog_cc_pic_works=no
1414     ])
1415     CFLAGS="$save_CFLAGS"
1416   ])
1417
1418   if test "X$lt_cv_prog_cc_pic_works" = Xno; then
1419     lt_cv_prog_cc_pic=
1420     lt_cv_prog_cc_can_build_shared=no
1421   else
1422     lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
1423   fi
1424
1425   AC_MSG_RESULT([$lt_cv_prog_cc_pic_works])
1426 fi
1427 ##
1428 ## END FIXME
1429
1430 # Check for any special shared library compilation flags.
1431 if test -n "$lt_cv_prog_cc_shlib"; then
1432   AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries])
1433   if echo "$old_CC $old_CFLAGS " | egrep -e "[[         ]]$lt_cv_prog_cc_shlib[[        ]]" >/dev/null; then :
1434   else
1435    AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure])
1436     lt_cv_prog_cc_can_build_shared=no
1437   fi
1438 fi
1439
1440 ## FIXME: this should be a separate macro
1441 ##
1442 AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works])
1443 AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl
1444   lt_cv_prog_cc_static_works=no
1445   save_LDFLAGS="$LDFLAGS"
1446   LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
1447   AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes])
1448   LDFLAGS="$save_LDFLAGS"
1449 ])
1450
1451 # Belt *and* braces to stop my trousers falling down:
1452 test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
1453 AC_MSG_RESULT([$lt_cv_prog_cc_static_works])
1454
1455 pic_flag="$lt_cv_prog_cc_pic"
1456 special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
1457 wl="$lt_cv_prog_cc_wl"
1458 link_static_flag="$lt_cv_prog_cc_static"
1459 no_builtin_flag="$lt_cv_prog_cc_no_builtin"
1460 can_build_shared="$lt_cv_prog_cc_can_build_shared"
1461 ##
1462 ## END FIXME
1463
1464
1465 ## FIXME: this should be a separate macro
1466 ##
1467 # Check to see if options -o and -c are simultaneously supported by compiler
1468 AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext])
1469 AC_CACHE_VAL([lt_cv_compiler_c_o], [
1470 $rm -r conftest 2>/dev/null
1471 mkdir conftest
1472 cd conftest
1473 echo "int some_variable = 0;" > conftest.$ac_ext
1474 mkdir out
1475 # According to Tom Tromey, Ian Lance Taylor reported there are C compilers
1476 # that will create temporary files in the current directory regardless of
1477 # the output directory.  Thus, making CWD read-only will cause this test
1478 # to fail, enabling locking or at least warning the user not to do parallel
1479 # builds.
1480 chmod -w .
1481 save_CFLAGS="$CFLAGS"
1482 CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
1483 compiler_c_o=no
1484 if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
1485   # The compiler can only warn and ignore the option if not recognized
1486   # So say no if there are warnings
1487   if test -s out/conftest.err; then
1488     lt_cv_compiler_c_o=no
1489   else
1490     lt_cv_compiler_c_o=yes
1491   fi
1492 else
1493   # Append any errors to the config.log.
1494   cat out/conftest.err 1>&AC_FD_CC
1495   lt_cv_compiler_c_o=no
1496 fi
1497 CFLAGS="$save_CFLAGS"
1498 chmod u+w .
1499 $rm conftest* out/*
1500 rmdir out
1501 cd ..
1502 rmdir conftest
1503 $rm -r conftest 2>/dev/null
1504 ])
1505 compiler_c_o=$lt_cv_compiler_c_o
1506 AC_MSG_RESULT([$compiler_c_o])
1507
1508 if test x"$compiler_c_o" = x"yes"; then
1509   # Check to see if we can write to a .lo
1510   AC_MSG_CHECKING([if $compiler supports -c -o file.lo])
1511   AC_CACHE_VAL([lt_cv_compiler_o_lo], [
1512   lt_cv_compiler_o_lo=no
1513   save_CFLAGS="$CFLAGS"
1514   CFLAGS="$CFLAGS -c -o conftest.lo"
1515   save_objext="$ac_objext"
1516   ac_objext=lo
1517   AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
1518     # The compiler can only warn and ignore the option if not recognized
1519     # So say no if there are warnings
1520     if test -s conftest.err; then
1521       lt_cv_compiler_o_lo=no
1522     else
1523       lt_cv_compiler_o_lo=yes
1524     fi
1525   ])
1526   ac_objext="$save_objext"
1527   CFLAGS="$save_CFLAGS"
1528   ])
1529   compiler_o_lo=$lt_cv_compiler_o_lo
1530   AC_MSG_RESULT([$compiler_o_lo])
1531 else
1532   compiler_o_lo=no
1533 fi
1534 ##
1535 ## END FIXME
1536
1537 ## FIXME: this should be a separate macro
1538 ##
1539 # Check to see if we can do hard links to lock some files if needed
1540 hard_links="nottested"
1541 if test "$compiler_c_o" = no && test "$need_locks" != no; then
1542   # do not overwrite the value of need_locks provided by the user
1543   AC_MSG_CHECKING([if we can lock with hard links])
1544   hard_links=yes
1545   $rm conftest*
1546   ln conftest.a conftest.b 2>/dev/null && hard_links=no
1547   touch conftest.a
1548   ln conftest.a conftest.b 2>&5 || hard_links=no
1549   ln conftest.a conftest.b 2>/dev/null && hard_links=no
1550   AC_MSG_RESULT([$hard_links])
1551   if test "$hard_links" = no; then
1552     AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe])
1553     need_locks=warn
1554   fi
1555 else
1556   need_locks=no
1557 fi
1558 ##
1559 ## END FIXME
1560
1561 ## FIXME: this should be a separate macro
1562 ##
1563 if test "$GCC" = yes; then
1564   # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
1565   AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions])
1566   echo "int some_variable = 0;" > conftest.$ac_ext
1567   save_CFLAGS="$CFLAGS"
1568   CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
1569   compiler_rtti_exceptions=no
1570   AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
1571     # The compiler can only warn and ignore the option if not recognized
1572     # So say no if there are warnings
1573     if test -s conftest.err; then
1574       compiler_rtti_exceptions=no
1575     else
1576       compiler_rtti_exceptions=yes
1577     fi
1578   ])
1579   CFLAGS="$save_CFLAGS"
1580   AC_MSG_RESULT([$compiler_rtti_exceptions])
1581
1582   if test "$compiler_rtti_exceptions" = "yes"; then
1583     no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
1584   else
1585     no_builtin_flag=' -fno-builtin'
1586   fi
1587 fi
1588 ##
1589 ## END FIXME
1590
1591 ## FIXME: this should be a separate macro
1592 ##
1593 # See if the linker supports building shared libraries.
1594 AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries])
1595
1596 allow_undefined_flag=
1597 no_undefined_flag=
1598 need_lib_prefix=unknown
1599 need_version=unknown
1600 # when you set need_version to no, make sure it does not cause -set_version
1601 # flags to be left without arguments
1602 archive_cmds=
1603 archive_expsym_cmds=
1604 old_archive_from_new_cmds=
1605 old_archive_from_expsyms_cmds=
1606 export_dynamic_flag_spec=
1607 whole_archive_flag_spec=
1608 thread_safe_flag_spec=
1609 hardcode_into_libs=no
1610 hardcode_libdir_flag_spec=
1611 hardcode_libdir_separator=
1612 hardcode_direct=no
1613 hardcode_minus_L=no
1614 hardcode_shlibpath_var=unsupported
1615 runpath_var=
1616 link_all_deplibs=unknown
1617 always_export_symbols=no
1618 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
1619 # include_expsyms should be a list of space-separated symbols to be *always*
1620 # included in the symbol list
1621 include_expsyms=
1622 # exclude_expsyms can be an egrep regular expression of symbols to exclude
1623 # it will be wrapped by ` (' and `)$', so one must not match beginning or
1624 # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
1625 # as well as any symbol that contains `d'.
1626 exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
1627 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
1628 # platforms (ab)use it in PIC code, but their linkers get confused if
1629 # the symbol is explicitly referenced.  Since portable code cannot
1630 # rely on this symbol name, it's probably fine to never include it in
1631 # preloaded symbol tables.
1632 extract_expsyms_cmds=
1633
1634 case $host_os in
1635 cygwin* | mingw* | pw32*)
1636   # FIXME: the MSVC++ port hasn't been tested in a loooong time
1637   # When not using gcc, we currently assume that we are using
1638   # Microsoft Visual C++.
1639   if test "$GCC" != yes; then
1640     with_gnu_ld=no
1641   fi
1642   ;;
1643 openbsd*)
1644   with_gnu_ld=no
1645   ;;
1646 esac
1647
1648 ld_shlibs=yes
1649 if test "$with_gnu_ld" = yes; then
1650   # If archive_cmds runs LD, not CC, wlarc should be empty
1651   wlarc='${wl}'
1652
1653   # See if GNU ld supports shared libraries.
1654   case $host_os in
1655   aix3* | aix4* | aix5*)
1656     # On AIX, the GNU linker is very broken
1657     # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
1658     ld_shlibs=no
1659     cat <<EOF 1>&2
1660
1661 *** Warning: the GNU linker, at least up to release 2.9.1, is reported
1662 *** to be unable to reliably create shared libraries on AIX.
1663 *** Therefore, libtool is disabling shared libraries support.  If you
1664 *** really care for shared libraries, you may want to modify your PATH
1665 *** so that a non-GNU linker is found, and then restart.
1666
1667 EOF
1668     ;;
1669
1670   amigaos*)
1671     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)'
1672     hardcode_libdir_flag_spec='-L$libdir'
1673     hardcode_minus_L=yes
1674
1675     # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
1676     # that the semantics of dynamic libraries on AmigaOS, at least up
1677     # to version 4, is to share data among multiple programs linked
1678     # with the same dynamic library.  Since this doesn't match the
1679     # behavior of shared libraries on other platforms, we can use
1680     # them.
1681     ld_shlibs=no
1682     ;;
1683
1684   beos*)
1685     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1686       allow_undefined_flag=unsupported
1687       # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
1688       # support --undefined.  This deserves some investigation.  FIXME
1689       archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
1690     else
1691       ld_shlibs=no
1692     fi
1693     ;;
1694
1695   cygwin* | mingw* | pw32*)
1696     # hardcode_libdir_flag_spec is actually meaningless, as there is
1697     # no search path for DLLs.
1698     hardcode_libdir_flag_spec='-L$libdir'
1699     allow_undefined_flag=unsupported
1700     always_export_symbols=yes
1701
1702     extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
1703       sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
1704       test -f $output_objdir/impgen.exe || (cd $output_objdir && \
1705       if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
1706       else $CC -o impgen impgen.c ; fi)~
1707       $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
1708
1709     old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
1710
1711     # cygwin and mingw dlls have different entry points and sets of symbols
1712     # to exclude.
1713     # FIXME: what about values for MSVC?
1714     dll_entry=__cygwin_dll_entry@12
1715     dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
1716     case $host_os in
1717     mingw*)
1718       # mingw values
1719       dll_entry=_DllMainCRTStartup@12
1720       dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
1721       ;;
1722     esac
1723
1724     # mingw and cygwin differ, and it's simplest to just exclude the union
1725     # of the two symbol sets.
1726     dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
1727
1728     # recent cygwin and mingw systems supply a stub DllMain which the user
1729     # can override, but on older systems we have to supply one (in ltdll.c)
1730     if test "x$lt_cv_need_dllmain" = "xyes"; then
1731       ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
1732       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~
1733         test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
1734     else
1735       ltdll_obj=
1736       ltdll_cmds=
1737     fi
1738
1739     # Extract the symbol export list from an `--export-all' def file,
1740     # then regenerate the def file from the symbol export list, so that
1741     # the compiled dll only exports the symbol export list.
1742     # Be careful not to strip the DATA tag left be newer dlltools.
1743     export_symbols_cmds="$ltdll_cmds"'
1744       $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
1745       sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
1746
1747     # If the export-symbols file already is a .def file (1st line
1748     # is EXPORTS), use it as is.
1749     # If DATA tags from a recent dlltool are present, honour them!
1750     archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
1751         cp $export_symbols $output_objdir/$soname-def;
1752       else
1753         echo EXPORTS > $output_objdir/$soname-def;
1754         _lt_hint=1;
1755         cat $export_symbols | while read symbol; do
1756          set dummy \$symbol;
1757          case \[$]# in
1758            2) echo "   \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
1759            *) echo "     \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
1760          esac;
1761          _lt_hint=`expr 1 + \$_lt_hint`;
1762         done;
1763       fi~
1764       '"$ltdll_cmds"'
1765       $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~
1766       $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~
1767       $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~
1768       $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~
1769       $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
1770     ;;
1771
1772   netbsd*)
1773     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
1774       archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
1775       wlarc=
1776     else
1777       archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
1778       archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
1779     fi
1780     ;;
1781
1782   solaris* | sysv5*)
1783     if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
1784       ld_shlibs=no
1785       cat <<EOF 1>&2
1786
1787 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
1788 *** create shared libraries on Solaris systems.  Therefore, libtool
1789 *** is disabling shared libraries support.  We urge you to upgrade GNU
1790 *** binutils to release 2.9.1 or newer.  Another option is to modify
1791 *** your PATH or compiler configuration so that the native linker is
1792 *** used, and then restart.
1793
1794 EOF
1795     elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1796       archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
1797       archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
1798     else
1799       ld_shlibs=no
1800     fi
1801     ;;
1802
1803   sunos4*)
1804     archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
1805     wlarc=
1806     hardcode_direct=yes
1807     hardcode_shlibpath_var=no
1808     ;;
1809
1810   *)
1811     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1812       archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
1813       archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
1814     else
1815       ld_shlibs=no
1816     fi
1817     ;;
1818   esac
1819
1820   if test "$ld_shlibs" = yes; then
1821     runpath_var=LD_RUN_PATH
1822     hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
1823     export_dynamic_flag_spec='${wl}--export-dynamic'
1824     case $host_os in
1825     cygwin* | mingw* | pw32*)
1826       # dlltool doesn't understand --whole-archive et. al.
1827       whole_archive_flag_spec=
1828       ;;
1829     *)
1830       # ancient GNU ld didn't support --whole-archive et. al.
1831       if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
1832         whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
1833       else
1834         whole_archive_flag_spec=
1835       fi
1836       ;;
1837     esac
1838   fi
1839 else
1840   # PORTME fill in a description of your system's linker (not GNU ld)
1841   case $host_os in
1842   aix3*)
1843     allow_undefined_flag=unsupported
1844     always_export_symbols=yes
1845     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'
1846     # Note: this linker hardcodes the directories in LIBPATH if there
1847     # are no directories specified by -L.
1848     hardcode_minus_L=yes
1849     if test "$GCC" = yes && test -z "$link_static_flag"; then
1850       # Neither direct hardcoding nor static linking is supported with a
1851       # broken collect2.
1852       hardcode_direct=unsupported
1853     fi
1854     ;;
1855
1856   aix4* | aix5*)
1857     if test "$host_cpu" = ia64; then
1858       # On IA64, the linker does run time linking by default, so we don't
1859       # have to do anything special.
1860       aix_use_runtimelinking=no
1861       exp_sym_flag='-Bexport'
1862       no_entry_flag=""
1863     else
1864       aix_use_runtimelinking=no
1865
1866       # Test if we are trying to use run time linking or normal
1867       # AIX style linking. If -brtl is somewhere in LDFLAGS, we
1868       # need to do runtime linking.
1869       case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
1870         for ld_flag in $LDFLAGS; do
1871           if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
1872             aix_use_runtimelinking=yes
1873             break
1874           fi
1875         done
1876       esac
1877
1878       exp_sym_flag='-bexport'
1879       no_entry_flag='-bnoentry'
1880     fi
1881
1882     # When large executables or shared objects are built, AIX ld can
1883     # have problems creating the table of contents.  If linking a library
1884     # or program results in "error TOC overflow" add -mminimal-toc to
1885     # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
1886     # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
1887
1888     hardcode_direct=yes
1889     archive_cmds=''
1890     hardcode_libdir_separator=':'
1891     if test "$GCC" = yes; then
1892       case $host_os in aix4.[[012]]|aix4.[[012]].*)
1893         collect2name=`${CC} -print-prog-name=collect2`
1894         if test -f "$collect2name" && \
1895           strings "$collect2name" | grep resolve_lib_name >/dev/null
1896         then
1897           # We have reworked collect2
1898           hardcode_direct=yes
1899         else
1900           # We have old collect2
1901           hardcode_direct=unsupported
1902           # It fails to find uninstalled libraries when the uninstalled
1903           # path is not listed in the libpath.  Setting hardcode_minus_L
1904           # to unsupported forces relinking
1905           hardcode_minus_L=yes
1906           hardcode_libdir_flag_spec='-L$libdir'
1907           hardcode_libdir_separator=
1908         fi
1909       esac
1910
1911       shared_flag='-shared'
1912     else
1913       # not using gcc
1914       if test "$host_cpu" = ia64; then
1915         shared_flag='${wl}-G'
1916       else
1917         if test "$aix_use_runtimelinking" = yes; then
1918           shared_flag='${wl}-G'
1919         else
1920           shared_flag='${wl}-bM:SRE'
1921         fi
1922       fi
1923     fi
1924
1925     # It seems that -bexpall can do strange things, so it is better to
1926     # generate a list of symbols to export.
1927     always_export_symbols=yes
1928     if test "$aix_use_runtimelinking" = yes; then
1929       # Warning - without using the other runtime loading flags (-brtl),
1930       # -berok will link without error, but may produce a broken library.
1931       allow_undefined_flag='-berok'
1932       hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
1933       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"
1934     else
1935       if test "$host_cpu" = ia64; then
1936         hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
1937         allow_undefined_flag="-z nodefs"
1938         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"
1939       else
1940         hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
1941         # Warning - without using the other run time loading flags,
1942         # -berok will link without error, but may produce a broken library.
1943         allow_undefined_flag='${wl}-berok'
1944         # This is a bit strange, but is similar to how AIX traditionally builds
1945         # it's shared libraries.
1946         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'
1947       fi
1948     fi
1949     ;;
1950
1951   amigaos*)
1952     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)'
1953     hardcode_libdir_flag_spec='-L$libdir'
1954     hardcode_minus_L=yes
1955     # see comment about different semantics on the GNU ld section
1956     ld_shlibs=no
1957     ;;
1958
1959   cygwin* | mingw* | pw32*)
1960     # When not using gcc, we currently assume that we are using
1961     # Microsoft Visual C++.
1962     # hardcode_libdir_flag_spec is actually meaningless, as there is
1963     # no search path for DLLs.
1964     hardcode_libdir_flag_spec=' '
1965     allow_undefined_flag=unsupported
1966     # Tell ltmain to make .lib files, not .a files.
1967     libext=lib
1968     # FIXME: Setting linknames here is a bad hack.
1969     archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
1970     # The linker will automatically build a .lib file if we build a DLL.
1971     old_archive_from_new_cmds='true'
1972     # FIXME: Should let the user specify the lib program.
1973     old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
1974     fix_srcfile_path='`cygpath -w "$srcfile"`'
1975     ;;
1976
1977   darwin* | rhapsody*)
1978     case "$host_os" in
1979     rhapsody* | darwin1.[[012]])
1980       allow_undefined_flag='-undefined suppress'
1981       ;;
1982     *) # Darwin 1.3 on
1983       allow_undefined_flag='-flat_namespace -undefined suppress'
1984       ;;
1985     esac
1986     # FIXME: Relying on posixy $() will cause problems for
1987     #        cross-compilation, but unfortunately the echo tests do not
1988     #        yet detect zsh echo's removal of \ escapes.
1989     archive_cmds='$nonopt $(test "x$module" = xyes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
1990     # We need to add '_' to the symbols in $export_symbols first
1991     #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
1992     hardcode_direct=yes
1993     hardcode_shlibpath_var=no
1994     whole_archive_flag_spec='-all_load $convenience'
1995     ;;
1996
1997   freebsd1*)
1998     ld_shlibs=no
1999     ;;
2000
2001   # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
2002   # support.  Future versions do this automatically, but an explicit c++rt0.o
2003   # does not break anything, and helps significantly (at the cost of a little
2004   # extra space).
2005   freebsd2.2*)
2006     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
2007     hardcode_libdir_flag_spec='-R$libdir'
2008     hardcode_direct=yes
2009     hardcode_shlibpath_var=no
2010     ;;
2011
2012   # Unfortunately, older versions of FreeBSD 2 do not have this feature.
2013   freebsd2*)
2014     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
2015     hardcode_direct=yes
2016     hardcode_minus_L=yes
2017     hardcode_shlibpath_var=no
2018     ;;
2019
2020   # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
2021   freebsd*)
2022     archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
2023     hardcode_libdir_flag_spec='-R$libdir'
2024     hardcode_direct=yes
2025     hardcode_shlibpath_var=no
2026     ;;
2027
2028   hpux9* | hpux10* | hpux11*)
2029     case $host_os in
2030     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' ;;
2031     *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
2032     esac
2033     hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
2034     hardcode_libdir_separator=:
2035     hardcode_direct=yes
2036     hardcode_minus_L=yes # Not in the search PATH, but as the default
2037                          # location of the library.
2038     export_dynamic_flag_spec='${wl}-E'
2039     ;;
2040
2041   irix5* | irix6*)
2042     if test "$GCC" = yes; then
2043       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'
2044     else
2045       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'
2046     fi
2047     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2048     hardcode_libdir_separator=:
2049     link_all_deplibs=yes
2050     ;;
2051
2052   netbsd*)
2053     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
2054       archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
2055     else
2056       archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
2057     fi
2058     hardcode_libdir_flag_spec='-R$libdir'
2059     hardcode_direct=yes
2060     hardcode_shlibpath_var=no
2061     ;;
2062
2063   newsos6)
2064     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2065     hardcode_direct=yes
2066     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2067     hardcode_libdir_separator=:
2068     hardcode_shlibpath_var=no
2069     ;;
2070
2071   openbsd*)
2072     hardcode_direct=yes
2073     hardcode_shlibpath_var=no
2074     if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2075       archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
2076       hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
2077       export_dynamic_flag_spec='${wl}-E'
2078     else
2079       case "$host_os" in
2080       openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
2081         archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
2082         hardcode_libdir_flag_spec='-R$libdir'
2083         ;;
2084       *)
2085         archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
2086         hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
2087         ;;
2088       esac
2089     fi
2090     ;;
2091
2092   os2*)
2093     hardcode_libdir_flag_spec='-L$libdir'
2094     hardcode_minus_L=yes
2095     allow_undefined_flag=unsupported
2096     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'
2097     old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
2098     ;;
2099
2100   osf3*)
2101     if test "$GCC" = yes; then
2102       allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
2103       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'
2104     else
2105       allow_undefined_flag=' -expect_unresolved \*'
2106       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'
2107     fi
2108     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2109     hardcode_libdir_separator=:
2110     ;;
2111
2112   osf4* | osf5*)        # as osf3* with the addition of -msym flag
2113     if test "$GCC" = yes; then
2114       allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
2115       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'
2116       hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
2117     else
2118       allow_undefined_flag=' -expect_unresolved \*'
2119       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'
2120       archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
2121       $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'
2122
2123       #Both c and cxx compiler support -rpath directly
2124       hardcode_libdir_flag_spec='-rpath $libdir'
2125     fi
2126     hardcode_libdir_separator=:
2127     ;;
2128
2129   sco3.2v5*)
2130     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2131     hardcode_shlibpath_var=no
2132     runpath_var=LD_RUN_PATH
2133     hardcode_runpath_var=yes
2134     export_dynamic_flag_spec='${wl}-Bexport'
2135     ;;
2136
2137   solaris*)
2138     # gcc --version < 3.0 without binutils cannot create self contained
2139     # shared libraries reliably, requiring libgcc.a to resolve some of
2140     # the object symbols generated in some cases.  Libraries that use
2141     # assert need libgcc.a to resolve __eprintf, for example.  Linking
2142     # a copy of libgcc.a into every shared library to guarantee resolving
2143     # such symbols causes other problems:  According to Tim Van Holder
2144     # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
2145     # (to the application) exception stack for one thing.
2146     no_undefined_flag=' -z defs'
2147     if test "$GCC" = yes; then
2148       case `$CC --version 2>/dev/null` in
2149       [[12]].*)
2150         cat <<EOF 1>&2
2151
2152 *** Warning: Releases of GCC earlier than version 3.0 cannot reliably
2153 *** create self contained shared libraries on Solaris systems, without
2154 *** introducing a dependency on libgcc.a.  Therefore, libtool is disabling
2155 *** -no-undefined support, which will at least allow you to build shared
2156 *** libraries.  However, you may find that when you link such libraries
2157 *** into an application without using GCC, you have to manually add
2158 *** \`gcc --print-libgcc-file-name\` to the link command.  We urge you to
2159 *** upgrade to a newer version of GCC.  Another option is to rebuild your
2160 *** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
2161
2162 EOF
2163         no_undefined_flag=
2164         ;;
2165       esac
2166     fi
2167     # $CC -shared without GNU ld will not create a library from C++
2168     # object files and a static libstdc++, better avoid it by now
2169     archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
2170     archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2171                 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
2172     hardcode_libdir_flag_spec='-R$libdir'
2173     hardcode_shlibpath_var=no
2174     case $host_os in
2175     solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
2176     *) # Supported since Solaris 2.6 (maybe 2.5.1?)
2177       whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
2178     esac
2179     link_all_deplibs=yes
2180     ;;
2181
2182   sunos4*)
2183     if test "x$host_vendor" = xsequent; then
2184       # Use $CC to link under sequent, because it throws in some extra .o
2185       # files that make .init and .fini sections work.
2186       archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
2187     else
2188       archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
2189     fi
2190     hardcode_libdir_flag_spec='-L$libdir'
2191     hardcode_direct=yes
2192     hardcode_minus_L=yes
2193     hardcode_shlibpath_var=no
2194     ;;
2195
2196   sysv4)
2197     if test "x$host_vendor" = xsno; then
2198       archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
2199       hardcode_direct=yes # is this really true???
2200     else
2201       archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2202       hardcode_direct=no #Motorola manual says yes, but my tests say they lie
2203     fi
2204     runpath_var='LD_RUN_PATH'
2205     hardcode_shlibpath_var=no
2206     ;;
2207
2208   sysv4.3*)
2209     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2210     hardcode_shlibpath_var=no
2211     export_dynamic_flag_spec='-Bexport'
2212     ;;
2213
2214   sysv5*)
2215     no_undefined_flag=' -z text'
2216     # $CC -shared without GNU ld will not create a library from C++
2217     # object files and a static libstdc++, better avoid it by now
2218     archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
2219     archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2220                 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
2221     hardcode_libdir_flag_spec=
2222     hardcode_shlibpath_var=no
2223     runpath_var='LD_RUN_PATH'
2224     ;;
2225
2226   uts4*)
2227     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2228     hardcode_libdir_flag_spec='-L$libdir'
2229     hardcode_shlibpath_var=no
2230     ;;
2231
2232   dgux*)
2233     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2234     hardcode_libdir_flag_spec='-L$libdir'
2235     hardcode_shlibpath_var=no
2236     ;;
2237
2238   sysv4*MP*)
2239     if test -d /usr/nec; then
2240       archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
2241       hardcode_shlibpath_var=no
2242       runpath_var=LD_RUN_PATH
2243       hardcode_runpath_var=yes
2244       ld_shlibs=yes
2245     fi
2246     ;;
2247
2248   sysv4.2uw2*)
2249     archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
2250     hardcode_direct=yes
2251     hardcode_minus_L=no
2252     hardcode_shlibpath_var=no
2253     hardcode_runpath_var=yes
2254     runpath_var=LD_RUN_PATH
2255     ;;
2256
2257   sysv5uw7* | unixware7*)
2258     no_undefined_flag='${wl}-z ${wl}text'
2259     if test "$GCC" = yes; then
2260       archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
2261     else
2262       archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
2263     fi
2264     runpath_var='LD_RUN_PATH'
2265     hardcode_shlibpath_var=no
2266     ;;
2267
2268   *)
2269     ld_shlibs=no
2270     ;;
2271   esac
2272 fi
2273 AC_MSG_RESULT([$ld_shlibs])
2274 test "$ld_shlibs" = no && can_build_shared=no
2275 ##
2276 ## END FIXME
2277
2278 ## FIXME: this should be a separate macro
2279 ##
2280 # Check hardcoding attributes.
2281 AC_MSG_CHECKING([how to hardcode library paths into programs])
2282 hardcode_action=
2283 if test -n "$hardcode_libdir_flag_spec" || \
2284    test -n "$runpath_var"; then
2285
2286   # We can hardcode non-existant directories.
2287   if test "$hardcode_direct" != no &&
2288      # If the only mechanism to avoid hardcoding is shlibpath_var, we
2289      # have to relink, otherwise we might link with an installed library
2290      # when we should be linking with a yet-to-be-installed one
2291      ## test "$hardcode_shlibpath_var" != no &&
2292      test "$hardcode_minus_L" != no; then
2293     # Linking always hardcodes the temporary library directory.
2294     hardcode_action=relink
2295   else
2296     # We can link without hardcoding, and we can hardcode nonexisting dirs.
2297     hardcode_action=immediate
2298   fi
2299 else
2300   # We cannot hardcode anything, or else we can only hardcode existing
2301   # directories.
2302   hardcode_action=unsupported
2303 fi
2304 AC_MSG_RESULT([$hardcode_action])
2305 ##
2306 ## END FIXME
2307
2308 ## FIXME: this should be a separate macro
2309 ##
2310 striplib=
2311 old_striplib=
2312 AC_MSG_CHECKING([whether stripping libraries is possible])
2313 if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
2314   test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2315   test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2316   AC_MSG_RESULT([yes])
2317 else
2318   AC_MSG_RESULT([no])
2319 fi
2320 ##
2321 ## END FIXME
2322
2323 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2324 test -z "$deplibs_check_method" && deplibs_check_method=unknown
2325
2326 ## FIXME: this should be a separate macro
2327 ##
2328 # PORTME Fill in your ld.so characteristics
2329 AC_MSG_CHECKING([dynamic linker characteristics])
2330 library_names_spec=
2331 libname_spec='lib$name'
2332 soname_spec=
2333 postinstall_cmds=
2334 postuninstall_cmds=
2335 finish_cmds=
2336 finish_eval=
2337 shlibpath_var=
2338 shlibpath_overrides_runpath=unknown
2339 version_type=none
2340 dynamic_linker="$host_os ld.so"
2341 sys_lib_dlsearch_path_spec="/lib /usr/lib"
2342 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2343
2344 case $host_os in
2345 aix3*)
2346   version_type=linux
2347   library_names_spec='${libname}${release}.so$versuffix $libname.a'
2348   shlibpath_var=LIBPATH
2349
2350   # AIX has no versioning support, so we append a major version to the name.
2351   soname_spec='${libname}${release}.so$major'
2352   ;;
2353
2354 aix4* | aix5*)
2355   version_type=linux
2356   if test "$host_cpu" = ia64; then
2357     # AIX 5 supports IA64
2358     library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
2359     shlibpath_var=LD_LIBRARY_PATH
2360   else
2361     # With GCC up to 2.95.x, collect2 would create an import file
2362     # for dependence libraries.  The import file would start with
2363     # the line `#! .'.  This would cause the generated library to
2364     # depend on `.', always an invalid library.  This was fixed in
2365     # development snapshots of GCC prior to 3.0.
2366     case $host_os in
2367       aix4 | aix4.[[01]] | aix4.[[01]].*)
2368         if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2369              echo ' yes '
2370              echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
2371           :
2372         else
2373           can_build_shared=no
2374         fi
2375         ;;
2376     esac
2377     # AIX (on Power*) has no versioning support, so currently we can
2378     # not hardcode correct soname into executable. Probably we can
2379     # add versioning support to collect2, so additional links can
2380     # be useful in future.
2381     if test "$aix_use_runtimelinking" = yes; then
2382       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2383       # instead of lib<name>.a to let people know that these are not
2384       # typical AIX shared libraries.
2385       library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2386     else
2387       # We preserve .a as extension for shared libraries through AIX4.2
2388       # and later when we are not doing run time linking.
2389       library_names_spec='${libname}${release}.a $libname.a'
2390       soname_spec='${libname}${release}.so$major'
2391     fi
2392     shlibpath_var=LIBPATH
2393   fi
2394   ;;
2395
2396 amigaos*)
2397   library_names_spec='$libname.ixlibrary $libname.a'
2398   # Create ${libname}_ixlibrary.a entries in /sys/libs.
2399   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'
2400   ;;
2401
2402 beos*)
2403   library_names_spec='${libname}.so'
2404   dynamic_linker="$host_os ld.so"
2405   shlibpath_var=LIBRARY_PATH
2406   ;;
2407
2408 bsdi4*)
2409   version_type=linux
2410   need_version=no
2411   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2412   soname_spec='${libname}${release}.so$major'
2413   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2414   shlibpath_var=LD_LIBRARY_PATH
2415   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2416   sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2417   export_dynamic_flag_spec=-rdynamic
2418   # the default ld.so.conf also contains /usr/contrib/lib and
2419   # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2420   # libtool to hard-code these into programs
2421   ;;
2422
2423 cygwin* | mingw* | pw32*)
2424   version_type=windows
2425   need_version=no
2426   need_lib_prefix=no
2427   case $GCC,$host_os in
2428   yes,cygwin*)
2429     library_names_spec='$libname.dll.a'
2430     soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
2431     postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
2432       dldir=$destdir/`dirname \$dlpath`~
2433       test -d \$dldir || mkdir -p \$dldir~
2434       $install_prog .libs/$dlname \$dldir/$dlname'
2435     postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
2436       dlpath=$dir/\$dldll~
2437        $rm \$dlpath'
2438     ;;
2439   yes,mingw*)
2440     library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
2441     sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
2442     ;;
2443   yes,pw32*)
2444     library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
2445     ;;
2446   *)
2447     library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
2448     ;;
2449   esac
2450   dynamic_linker='Win32 ld.exe'
2451   # FIXME: first we should search . and the directory the executable is in
2452   shlibpath_var=PATH
2453   ;;
2454
2455 darwin* | rhapsody*)
2456   dynamic_linker="$host_os dyld"
2457   version_type=darwin
2458   need_lib_prefix=no
2459   need_version=no
2460   # FIXME: Relying on posixy $() will cause problems for
2461   #        cross-compilation, but unfortunately the echo tests do not
2462   #        yet detect zsh echo's removal of \ escapes.
2463   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)'
2464   soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
2465   shlibpath_overrides_runpath=yes
2466   shlibpath_var=DYLD_LIBRARY_PATH
2467   ;;
2468
2469 freebsd1*)
2470   dynamic_linker=no
2471   ;;
2472
2473 freebsd*)
2474   objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
2475   version_type=freebsd-$objformat
2476   case $version_type in
2477     freebsd-elf*)
2478       library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
2479       need_version=no
2480       need_lib_prefix=no
2481       ;;
2482     freebsd-*)
2483       library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
2484       need_version=yes
2485       ;;
2486   esac
2487   shlibpath_var=LD_LIBRARY_PATH
2488   case $host_os in
2489   freebsd2*)
2490     shlibpath_overrides_runpath=yes
2491     ;;
2492   *)
2493     shlibpath_overrides_runpath=no
2494     hardcode_into_libs=yes
2495     ;;
2496   esac
2497   ;;
2498
2499 gnu*)
2500   version_type=linux
2501   need_lib_prefix=no
2502   need_version=no
2503   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
2504   soname_spec='${libname}${release}.so$major'
2505   shlibpath_var=LD_LIBRARY_PATH
2506   hardcode_into_libs=yes
2507   ;;
2508
2509 hpux9* | hpux10* | hpux11*)
2510   # Give a soname corresponding to the major version so that dld.sl refuses to
2511   # link against other versions.
2512   dynamic_linker="$host_os dld.sl"
2513   version_type=sunos
2514   need_lib_prefix=no
2515   need_version=no
2516   shlibpath_var=SHLIB_PATH
2517   shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2518   library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
2519   soname_spec='${libname}${release}.sl$major'
2520   # HP-UX runs *really* slowly unless shared libraries are mode 555.
2521   postinstall_cmds='chmod 555 $lib'
2522   ;;
2523
2524 irix5* | irix6*)
2525   version_type=irix
2526   need_lib_prefix=no
2527   need_version=no
2528   soname_spec='${libname}${release}.so$major'
2529   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
2530   case $host_os in
2531   irix5*)
2532     libsuff= shlibsuff=
2533     ;;
2534   *)
2535     case $LD in # libtool.m4 will add one of these switches to LD
2536     *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
2537     *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
2538     *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
2539     *) libsuff= shlibsuff= libmagic=never-match;;
2540     esac
2541     ;;
2542   esac
2543   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2544   shlibpath_overrides_runpath=no
2545   sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2546   sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2547   ;;
2548
2549 # No shared lib support for Linux oldld, aout, or coff.
2550 linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
2551   dynamic_linker=no
2552   ;;
2553
2554 # This must be Linux ELF.
2555 linux-gnu*)
2556   version_type=linux
2557   need_lib_prefix=no
2558   need_version=no
2559   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2560   soname_spec='${libname}${release}.so$major'
2561   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2562   shlibpath_var=LD_LIBRARY_PATH
2563   shlibpath_overrides_runpath=no
2564   # This implies no fast_install, which is unacceptable.
2565   # Some rework will be needed to allow for fast_install
2566   # before this can be enabled.
2567   hardcode_into_libs=yes
2568
2569   # We used to test for /lib/ld.so.1 and disable shared libraries on
2570   # powerpc, because MkLinux only supported shared libraries with the
2571   # GNU dynamic linker.  Since this was broken with cross compilers,
2572   # most powerpc-linux boxes support dynamic linking these days and
2573   # people can always --disable-shared, the test was removed, and we
2574   # assume the GNU/Linux dynamic linker is in use.
2575   dynamic_linker='GNU/Linux ld.so'
2576   ;;
2577
2578 netbsd*)
2579   version_type=sunos
2580   need_lib_prefix=no
2581   need_version=no
2582   if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
2583     library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
2584     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2585     dynamic_linker='NetBSD (a.out) ld.so'
2586   else
2587     library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
2588     soname_spec='${libname}${release}.so$major'
2589     dynamic_linker='NetBSD ld.elf_so'
2590   fi
2591   shlibpath_var=LD_LIBRARY_PATH
2592   shlibpath_overrides_runpath=yes
2593   hardcode_into_libs=yes
2594   ;;
2595
2596 newsos6)
2597   version_type=linux
2598   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2599   shlibpath_var=LD_LIBRARY_PATH
2600   shlibpath_overrides_runpath=yes
2601   ;;
2602
2603 openbsd*)
2604   version_type=sunos
2605   need_lib_prefix=no
2606   need_version=no
2607   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2608     case "$host_os" in
2609     openbsd2.[[89]] | openbsd2.[[89]].*)
2610       shlibpath_overrides_runpath=no
2611       ;;
2612     *)
2613       shlibpath_overrides_runpath=yes
2614       ;;
2615     esac
2616   else
2617     shlibpath_overrides_runpath=yes
2618   fi
2619   library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
2620   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2621   shlibpath_var=LD_LIBRARY_PATH
2622   ;;
2623
2624 os2*)
2625   libname_spec='$name'
2626   need_lib_prefix=no
2627   library_names_spec='$libname.dll $libname.a'
2628   dynamic_linker='OS/2 ld.exe'
2629   shlibpath_var=LIBPATH
2630   ;;
2631
2632 osf3* | osf4* | osf5*)
2633   version_type=osf
2634   need_version=no
2635   soname_spec='${libname}${release}.so'
2636   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
2637   shlibpath_var=LD_LIBRARY_PATH
2638   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2639   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2640   ;;
2641
2642 sco3.2v5*)
2643   version_type=osf
2644   soname_spec='${libname}${release}.so$major'
2645   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2646   shlibpath_var=LD_LIBRARY_PATH
2647   ;;
2648
2649 solaris*)
2650   version_type=linux
2651   need_lib_prefix=no
2652   need_version=no
2653   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2654   soname_spec='${libname}${release}.so$major'
2655   shlibpath_var=LD_LIBRARY_PATH
2656   shlibpath_overrides_runpath=yes
2657   hardcode_into_libs=yes
2658   # ldd complains unless libraries are executable
2659   postinstall_cmds='chmod +x $lib'
2660   ;;
2661
2662 sunos4*)
2663   version_type=sunos
2664   library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
2665   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2666   shlibpath_var=LD_LIBRARY_PATH
2667   shlibpath_overrides_runpath=yes
2668   if test "$with_gnu_ld" = yes; then
2669     need_lib_prefix=no
2670   fi
2671   need_version=yes
2672   ;;
2673
2674 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
2675   version_type=linux
2676   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2677   soname_spec='${libname}${release}.so$major'
2678   shlibpath_var=LD_LIBRARY_PATH
2679   case $host_vendor in
2680     sni)
2681       shlibpath_overrides_runpath=no
2682       ;;
2683     motorola)
2684       need_lib_prefix=no
2685       need_version=no
2686       shlibpath_overrides_runpath=no
2687       sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2688       ;;
2689   esac
2690   ;;
2691
2692 uts4*)
2693   version_type=linux
2694   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2695   soname_spec='${libname}${release}.so$major'
2696   shlibpath_var=LD_LIBRARY_PATH
2697   ;;
2698
2699 dgux*)
2700   version_type=linux
2701   need_lib_prefix=no
2702   need_version=no
2703   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
2704   soname_spec='${libname}${release}.so$major'
2705   shlibpath_var=LD_LIBRARY_PATH
2706   ;;
2707
2708 sysv4*MP*)
2709   if test -d /usr/nec ;then
2710     version_type=linux
2711     library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
2712     soname_spec='$libname.so.$major'
2713     shlibpath_var=LD_LIBRARY_PATH
2714   fi
2715   ;;
2716
2717 *)
2718   dynamic_linker=no
2719   ;;
2720 esac
2721 AC_MSG_RESULT([$dynamic_linker])
2722 test "$dynamic_linker" = no && can_build_shared=no
2723 ##
2724 ## END FIXME
2725
2726 ## FIXME: this should be a separate macro
2727 ##
2728 # Report the final consequences.
2729 AC_MSG_CHECKING([if libtool supports shared libraries])
2730 AC_MSG_RESULT([$can_build_shared])
2731 ##
2732 ## END FIXME
2733
2734 ## FIXME: this should be a separate macro
2735 ##
2736 AC_MSG_CHECKING([whether to build shared libraries])
2737 test "$can_build_shared" = "no" && enable_shared=no
2738
2739 # On AIX, shared libraries and static libraries use the same namespace, and
2740 # are all built from PIC.
2741 case "$host_os" in
2742 aix3*)
2743   test "$enable_shared" = yes && enable_static=no
2744   if test -n "$RANLIB"; then
2745     archive_cmds="$archive_cmds~\$RANLIB \$lib"
2746     postinstall_cmds='$RANLIB $lib'
2747   fi
2748   ;;
2749
2750 aix4*)
2751   if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
2752     test "$enable_shared" = yes && enable_static=no
2753   fi
2754   ;;
2755 esac
2756 AC_MSG_RESULT([$enable_shared])
2757 ##
2758 ## END FIXME
2759
2760 ## FIXME: this should be a separate macro
2761 ##
2762 AC_MSG_CHECKING([whether to build static libraries])
2763 # Make sure either enable_shared or enable_static is yes.
2764 test "$enable_shared" = yes || enable_static=yes
2765 AC_MSG_RESULT([$enable_static])
2766 ##
2767 ## END FIXME
2768
2769 if test "$hardcode_action" = relink; then
2770   # Fast installation is not supported
2771   enable_fast_install=no
2772 elif test "$shlibpath_overrides_runpath" = yes ||
2773      test "$enable_shared" = no; then
2774   # Fast installation is not necessary
2775   enable_fast_install=needless
2776 fi
2777
2778 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2779 if test "$GCC" = yes; then
2780   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2781 fi
2782
2783 AC_LIBTOOL_DLOPEN_SELF
2784
2785 ## FIXME: this should be a separate macro
2786 ##
2787 if test "$enable_shared" = yes && test "$GCC" = yes; then
2788   case $archive_cmds in
2789   *'~'*)
2790     # FIXME: we may have to deal with multi-command sequences.
2791     ;;
2792   '$CC '*)
2793     # Test whether the compiler implicitly links with -lc since on some
2794     # systems, -lgcc has to come before -lc. If gcc already passes -lc
2795     # to ld, don't add -lc before -lgcc.
2796     AC_MSG_CHECKING([whether -lc should be explicitly linked in])
2797     AC_CACHE_VAL([lt_cv_archive_cmds_need_lc],
2798     [$rm conftest*
2799     echo 'static int dummy;' > conftest.$ac_ext
2800
2801     if AC_TRY_EVAL(ac_compile); then
2802       soname=conftest
2803       lib=conftest
2804       libobjs=conftest.$ac_objext
2805       deplibs=
2806       wl=$lt_cv_prog_cc_wl
2807       compiler_flags=-v
2808       linker_flags=-v
2809       verstring=
2810       output_objdir=.
2811       libname=conftest
2812       save_allow_undefined_flag=$allow_undefined_flag
2813       allow_undefined_flag=
2814       if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
2815       then
2816         lt_cv_archive_cmds_need_lc=no
2817       else
2818         lt_cv_archive_cmds_need_lc=yes
2819       fi
2820       allow_undefined_flag=$save_allow_undefined_flag
2821     else
2822       cat conftest.err 1>&5
2823     fi])
2824     AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc])
2825     ;;
2826   esac
2827 fi
2828 need_lc=${lt_cv_archive_cmds_need_lc-yes}
2829 ##
2830 ## END FIXME
2831
2832 ## FIXME: this should be a separate macro
2833 ##
2834 # The second clause should only fire when bootstrapping the
2835 # libtool distribution, otherwise you forgot to ship ltmain.sh
2836 # with your package, and you will get complaints that there are
2837 # no rules to generate ltmain.sh.
2838 if test -f "$ltmain"; then
2839   :
2840 else
2841   # If there is no Makefile yet, we rely on a make rule to execute
2842   # `config.status --recheck' to rerun these tests and create the
2843   # libtool script then.
2844   test -f Makefile && make "$ltmain"
2845 fi
2846
2847 if test -f "$ltmain"; then
2848   trap "$rm \"${ofile}T\"; exit 1" 1 2 15
2849   $rm -f "${ofile}T"
2850
2851   echo creating $ofile
2852
2853   # Now quote all the things that may contain metacharacters while being
2854   # careful not to overquote the AC_SUBSTed values.  We take copies of the
2855   # variables and quote the copies for generation of the libtool script.
2856   for var in echo old_CC old_CFLAGS \
2857     AR AR_FLAGS CC LD LN_S NM SHELL \
2858     reload_flag reload_cmds wl \
2859     pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
2860     thread_safe_flag_spec whole_archive_flag_spec libname_spec \
2861     library_names_spec soname_spec \
2862     RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
2863     old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
2864     postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
2865     old_striplib striplib file_magic_cmd export_symbols_cmds \
2866     deplibs_check_method allow_undefined_flag no_undefined_flag \
2867     finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
2868     global_symbol_to_c_name_address \
2869     hardcode_libdir_flag_spec hardcode_libdir_separator  \
2870     sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
2871     compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
2872
2873     case $var in
2874     reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
2875     old_postinstall_cmds | old_postuninstall_cmds | \
2876     export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
2877     extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
2878     postinstall_cmds | postuninstall_cmds | \
2879     finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
2880       # Double-quote double-evaled strings.
2881       eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
2882       ;;
2883     *)
2884       eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
2885       ;;
2886     esac
2887   done
2888
2889   cat <<__EOF__ > "${ofile}T"
2890 #! $SHELL
2891
2892 # `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
2893 # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
2894 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
2895 #
2896 # Copyright (C) 1996-2000 Free Software Foundation, Inc.
2897 # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
2898 #
2899 # This program is free software; you can redistribute it and/or modify
2900 # it under the terms of the GNU General Public License as published by
2901 # the Free Software Foundation; either version 2 of the License, or
2902 # (at your option) any later version.
2903 #
2904 # This program is distributed in the hope that it will be useful, but
2905 # WITHOUT ANY WARRANTY; without even the implied warranty of
2906 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
2907 # General Public License for more details.
2908 #
2909 # You should have received a copy of the GNU General Public License
2910 # along with this program; if not, write to the Free Software
2911 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
2912 #
2913 # As a special exception to the GNU General Public License, if you
2914 # distribute this file as part of a program that contains a
2915 # configuration script generated by Autoconf, you may include it under
2916 # the same distribution terms that you use for the rest of that program.
2917
2918 # Sed that helps us avoid accidentally triggering echo(1) options like -n.
2919 Xsed="sed -e s/^X//"
2920
2921 # The HP-UX ksh and POSIX shell print the target directory to stdout
2922 # if CDPATH is set.
2923 if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
2924
2925 # ### BEGIN LIBTOOL CONFIG
2926
2927 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
2928
2929 # Shell to use when invoking shell scripts.
2930 SHELL=$lt_SHELL
2931
2932 # Whether or not to build shared libraries.
2933 build_libtool_libs=$enable_shared
2934
2935 # Whether or not to build static libraries.
2936 build_old_libs=$enable_static
2937
2938 # Whether or not to add -lc for building shared libraries.
2939 build_libtool_need_lc=$need_lc
2940
2941 # Whether or not to optimize for fast installation.
2942 fast_install=$enable_fast_install
2943
2944 # The host system.
2945 host_alias=$host_alias
2946 host=$host
2947
2948 # An echo program that does not interpret backslashes.
2949 echo=$lt_echo
2950
2951 # The archiver.
2952 AR=$lt_AR
2953 AR_FLAGS=$lt_AR_FLAGS
2954
2955 # The default C compiler.
2956 CC=$lt_CC
2957
2958 # Is the compiler the GNU C compiler?
2959 with_gcc=$GCC
2960
2961 # The linker used to build libraries.
2962 LD=$lt_LD
2963
2964 # Whether we need hard or soft links.
2965 LN_S=$lt_LN_S
2966
2967 # A BSD-compatible nm program.
2968 NM=$lt_NM
2969
2970 # A symbol stripping program
2971 STRIP=$STRIP
2972
2973 # Used to examine libraries when file_magic_cmd begins "file"
2974 MAGIC_CMD=$MAGIC_CMD
2975
2976 # Used on cygwin: DLL creation program.
2977 DLLTOOL="$DLLTOOL"
2978
2979 # Used on cygwin: object dumper.
2980 OBJDUMP="$OBJDUMP"
2981
2982 # Used on cygwin: assembler.
2983 AS="$AS"
2984
2985 # The name of the directory that contains temporary libtool files.
2986 objdir=$objdir
2987
2988 # How to create reloadable object files.
2989 reload_flag=$lt_reload_flag
2990 reload_cmds=$lt_reload_cmds
2991
2992 # How to pass a linker flag through the compiler.
2993 wl=$lt_wl
2994
2995 # Object file suffix (normally "o").
2996 objext="$ac_objext"
2997
2998 # Old archive suffix (normally "a").
2999 libext="$libext"
3000
3001 # Executable file suffix (normally "").
3002 exeext="$exeext"
3003
3004 # Additional compiler flags for building library objects.
3005 pic_flag=$lt_pic_flag
3006 pic_mode=$pic_mode
3007
3008 # Does compiler simultaneously support -c and -o options?
3009 compiler_c_o=$lt_compiler_c_o
3010
3011 # Can we write directly to a .lo ?
3012 compiler_o_lo=$lt_compiler_o_lo
3013
3014 # Must we lock files when doing compilation ?
3015 need_locks=$lt_need_locks
3016
3017 # Do we need the lib prefix for modules?
3018 need_lib_prefix=$need_lib_prefix
3019
3020 # Do we need a version for libraries?
3021 need_version=$need_version
3022
3023 # Whether dlopen is supported.
3024 dlopen_support=$enable_dlopen
3025
3026 # Whether dlopen of programs is supported.
3027 dlopen_self=$enable_dlopen_self
3028
3029 # Whether dlopen of statically linked programs is supported.
3030 dlopen_self_static=$enable_dlopen_self_static
3031
3032 # Compiler flag to prevent dynamic linking.
3033 link_static_flag=$lt_link_static_flag
3034
3035 # Compiler flag to turn off builtin functions.
3036 no_builtin_flag=$lt_no_builtin_flag
3037
3038 # Compiler flag to allow reflexive dlopens.
3039 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
3040
3041 # Compiler flag to generate shared objects directly from archives.
3042 whole_archive_flag_spec=$lt_whole_archive_flag_spec
3043
3044 # Compiler flag to generate thread-safe objects.
3045 thread_safe_flag_spec=$lt_thread_safe_flag_spec
3046
3047 # Library versioning type.
3048 version_type=$version_type
3049
3050 # Format of library name prefix.
3051 libname_spec=$lt_libname_spec
3052
3053 # List of archive names.  First name is the real one, the rest are links.
3054 # The last name is the one that the linker finds with -lNAME.
3055 library_names_spec=$lt_library_names_spec
3056
3057 # The coded name of the library, if different from the real name.
3058 soname_spec=$lt_soname_spec
3059
3060 # Commands used to build and install an old-style archive.
3061 RANLIB=$lt_RANLIB
3062 old_archive_cmds=$lt_old_archive_cmds
3063 old_postinstall_cmds=$lt_old_postinstall_cmds
3064 old_postuninstall_cmds=$lt_old_postuninstall_cmds
3065
3066 # Create an old-style archive from a shared archive.
3067 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
3068
3069 # Create a temporary old-style archive to link instead of a shared archive.
3070 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
3071
3072 # Commands used to build and install a shared archive.
3073 archive_cmds=$lt_archive_cmds
3074 archive_expsym_cmds=$lt_archive_expsym_cmds
3075 postinstall_cmds=$lt_postinstall_cmds
3076 postuninstall_cmds=$lt_postuninstall_cmds
3077
3078 # Commands to strip libraries.
3079 old_striplib=$lt_old_striplib
3080 striplib=$lt_striplib
3081
3082 # Method to check whether dependent libraries are shared objects.
3083 deplibs_check_method=$lt_deplibs_check_method
3084
3085 # Command to use when deplibs_check_method == file_magic.
3086 file_magic_cmd=$lt_file_magic_cmd
3087
3088 # Flag that allows shared libraries with undefined symbols to be built.
3089 allow_undefined_flag=$lt_allow_undefined_flag
3090
3091 # Flag that forces no undefined symbols.
3092 no_undefined_flag=$lt_no_undefined_flag
3093
3094 # Commands used to finish a libtool library installation in a directory.
3095 finish_cmds=$lt_finish_cmds
3096
3097 # Same as above, but a single script fragment to be evaled but not shown.
3098 finish_eval=$lt_finish_eval
3099
3100 # Take the output of nm and produce a listing of raw symbols and C names.
3101 global_symbol_pipe=$lt_global_symbol_pipe
3102
3103 # Transform the output of nm in a proper C declaration
3104 global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
3105
3106 # Transform the output of nm in a C name address pair
3107 global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
3108
3109 # This is the shared library runtime path variable.
3110 runpath_var=$runpath_var
3111
3112 # This is the shared library path variable.
3113 shlibpath_var=$shlibpath_var
3114
3115 # Is shlibpath searched before the hard-coded library search path?
3116 shlibpath_overrides_runpath=$shlibpath_overrides_runpath
3117
3118 # How to hardcode a shared library path into an executable.
3119 hardcode_action=$hardcode_action
3120
3121 # Whether we should hardcode library paths into libraries.
3122 hardcode_into_libs=$hardcode_into_libs
3123
3124 # Flag to hardcode \$libdir into a binary during linking.
3125 # This must work even if \$libdir does not exist.
3126 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
3127
3128 # Whether we need a single -rpath flag with a separated argument.
3129 hardcode_libdir_separator=$lt_hardcode_libdir_separator
3130
3131 # Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
3132 # resulting binary.
3133 hardcode_direct=$hardcode_direct
3134
3135 # Set to yes if using the -LDIR flag during linking hardcodes DIR into the
3136 # resulting binary.
3137 hardcode_minus_L=$hardcode_minus_L
3138
3139 # Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
3140 # the resulting binary.
3141 hardcode_shlibpath_var=$hardcode_shlibpath_var
3142
3143 # Variables whose values should be saved in libtool wrapper scripts and
3144 # restored at relink time.
3145 variables_saved_for_relink="$variables_saved_for_relink"
3146
3147 # Whether libtool must link a program against all its dependency libraries.
3148 link_all_deplibs=$link_all_deplibs
3149
3150 # Compile-time system search path for libraries
3151 sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
3152
3153 # Run-time system search path for libraries
3154 sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
3155
3156 # Fix the shell variable \$srcfile for the compiler.
3157 fix_srcfile_path="$fix_srcfile_path"
3158
3159 # Set to yes if exported symbols are required.
3160 always_export_symbols=$always_export_symbols
3161
3162 # The commands to list exported symbols.
3163 export_symbols_cmds=$lt_export_symbols_cmds
3164
3165 # The commands to extract the exported symbol list from a shared archive.
3166 extract_expsyms_cmds=$lt_extract_expsyms_cmds
3167
3168 # Symbols that should not be listed in the preloaded symbols.
3169 exclude_expsyms=$lt_exclude_expsyms
3170
3171 # Symbols that must always be exported.
3172 include_expsyms=$lt_include_expsyms
3173
3174 # ### END LIBTOOL CONFIG
3175
3176 __EOF__
3177
3178   case $host_os in
3179   aix3*)
3180     cat <<\EOF >> "${ofile}T"
3181
3182 # AIX sometimes has problems with the GCC collect2 program.  For some
3183 # reason, if we set the COLLECT_NAMES environment variable, the problems
3184 # vanish in a puff of smoke.
3185 if test "X${COLLECT_NAMES+set}" != Xset; then
3186   COLLECT_NAMES=
3187   export COLLECT_NAMES
3188 fi
3189 EOF
3190     ;;
3191   esac
3192
3193   case $host_os in
3194   cygwin* | mingw* | pw32* | os2*)
3195     cat <<'EOF' >> "${ofile}T"
3196       # This is a source program that is used to create dlls on Windows
3197       # Don't remove nor modify the starting and closing comments
3198 # /* ltdll.c starts here */
3199 # #define WIN32_LEAN_AND_MEAN
3200 # #include <windows.h>
3201 # #undef WIN32_LEAN_AND_MEAN
3202 # #include <stdio.h>
3203 #
3204 # #ifndef __CYGWIN__
3205 # #  ifdef __CYGWIN32__
3206 # #    define __CYGWIN__ __CYGWIN32__
3207 # #  endif
3208 # #endif
3209 #
3210 # #ifdef __cplusplus
3211 # extern "C" {
3212 # #endif
3213 # BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
3214 # #ifdef __cplusplus
3215 # }
3216 # #endif
3217 #
3218 # #ifdef __CYGWIN__
3219 # #include <cygwin/cygwin_dll.h>
3220 # DECLARE_CYGWIN_DLL( DllMain );
3221 # #endif
3222 # HINSTANCE __hDllInstance_base;
3223 #
3224 # BOOL APIENTRY
3225 # DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
3226 # {
3227 #   __hDllInstance_base = hInst;
3228 #   return TRUE;
3229 # }
3230 # /* ltdll.c ends here */
3231         # This is a source program that is used to create import libraries
3232         # on Windows for dlls which lack them. Don't remove nor modify the
3233         # starting and closing comments
3234 # /* impgen.c starts here */
3235 # /*   Copyright (C) 1999-2000 Free Software Foundation, Inc.
3236 #
3237 #  This file is part of GNU libtool.
3238 #
3239 #  This program is free software; you can redistribute it and/or modify
3240 #  it under the terms of the GNU General Public License as published by
3241 #  the Free Software Foundation; either version 2 of the License, or
3242 #  (at your option) any later version.
3243 #
3244 #  This program is distributed in the hope that it will be useful,
3245 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
3246 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3247 #  GNU General Public License for more details.
3248 #
3249 #  You should have received a copy of the GNU General Public License
3250 #  along with this program; if not, write to the Free Software
3251 #  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
3252 #  */
3253 #
3254 # #include <stdio.h>            /* for printf() */
3255 # #include <unistd.h>           /* for open(), lseek(), read() */
3256 # #include <fcntl.h>            /* for O_RDONLY, O_BINARY */
3257 # #include <string.h>           /* for strdup() */
3258 #
3259 # /* O_BINARY isn't required (or even defined sometimes) under Unix */
3260 # #ifndef O_BINARY
3261 # #define O_BINARY 0
3262 # #endif
3263 #
3264 # static unsigned int
3265 # pe_get16 (fd, offset)
3266 #      int fd;
3267 #      int offset;
3268 # {
3269 #   unsigned char b[2];
3270 #   lseek (fd, offset, SEEK_SET);
3271 #   read (fd, b, 2);
3272 #   return b[0] + (b[1]<<8);
3273 # }
3274 #
3275 # static unsigned int
3276 # pe_get32 (fd, offset)
3277 #     int fd;
3278 #     int offset;
3279 # {
3280 #   unsigned char b[4];
3281 #   lseek (fd, offset, SEEK_SET);
3282 #   read (fd, b, 4);
3283 #   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
3284 # }
3285 #
3286 # static unsigned int
3287 # pe_as32 (ptr)
3288 #      void *ptr;
3289 # {
3290 #   unsigned char *b = ptr;
3291 #   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
3292 # }
3293 #
3294 # int
3295 # main (argc, argv)
3296 #     int argc;
3297 #     char *argv[];
3298 # {
3299 #     int dll;
3300 #     unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
3301 #     unsigned long export_rva, export_size, nsections, secptr, expptr;
3302 #     unsigned long name_rvas, nexp;
3303 #     unsigned char *expdata, *erva;
3304 #     char *filename, *dll_name;
3305 #
3306 #     filename = argv[1];
3307 #
3308 #     dll = open(filename, O_RDONLY|O_BINARY);
3309 #     if (dll < 1)
3310 #       return 1;
3311 #
3312 #     dll_name = filename;
3313 #
3314 #     for (i=0; filename[i]; i++)
3315 #       if (filename[i] == '/' || filename[i] == '\\'  || filename[i] == ':')
3316 #           dll_name = filename + i +1;
3317 #
3318 #     pe_header_offset = pe_get32 (dll, 0x3c);
3319 #     opthdr_ofs = pe_header_offset + 4 + 20;
3320 #     num_entries = pe_get32 (dll, opthdr_ofs + 92);
3321 #
3322 #     if (num_entries < 1) /* no exports */
3323 #       return 1;
3324 #
3325 #     export_rva = pe_get32 (dll, opthdr_ofs + 96);
3326 #     export_size = pe_get32 (dll, opthdr_ofs + 100);
3327 #     nsections = pe_get16 (dll, pe_header_offset + 4 +2);
3328 #     secptr = (pe_header_offset + 4 + 20 +
3329 #             pe_get16 (dll, pe_header_offset + 4 + 16));
3330 #
3331 #     expptr = 0;
3332 #     for (i = 0; i < nsections; i++)
3333 #     {
3334 #       char sname[8];
3335 #       unsigned long secptr1 = secptr + 40 * i;
3336 #       unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
3337 #       unsigned long vsize = pe_get32 (dll, secptr1 + 16);
3338 #       unsigned long fptr = pe_get32 (dll, secptr1 + 20);
3339 #       lseek(dll, secptr1, SEEK_SET);
3340 #       read(dll, sname, 8);
3341 #       if (vaddr <= export_rva && vaddr+vsize > export_rva)
3342 #       {
3343 #           expptr = fptr + (export_rva - vaddr);
3344 #           if (export_rva + export_size > vaddr + vsize)
3345 #               export_size = vsize - (export_rva - vaddr);
3346 #           break;
3347 #       }
3348 #     }
3349 #
3350 #     expdata = (unsigned char*)malloc(export_size);
3351 #     lseek (dll, expptr, SEEK_SET);
3352 #     read (dll, expdata, export_size);
3353 #     erva = expdata - export_rva;
3354 #
3355 #     nexp = pe_as32 (expdata+24);
3356 #     name_rvas = pe_as32 (expdata+32);
3357 #
3358 #     printf ("EXPORTS\n");
3359 #     for (i = 0; i<nexp; i++)
3360 #     {
3361 #       unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
3362 #       printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
3363 #     }
3364 #
3365 #     return 0;
3366 # }
3367 # /* impgen.c ends here */
3368
3369 EOF
3370     ;;
3371   esac
3372
3373   # We use sed instead of cat because bash on DJGPP gets confused if
3374   # if finds mixed CR/LF and LF-only lines.  Since sed operates in
3375   # text mode, it properly converts lines to CR/LF.  This bash problem
3376   # is reportedly fixed, but why not run on old versions too?
3377   sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
3378
3379   mv -f "${ofile}T" "$ofile" || \
3380     (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
3381   chmod +x "$ofile"
3382 fi
3383 ##
3384 ## END FIXME
3385
3386 ])# _LT_AC_LTCONFIG_HACK
3387
3388 # AC_LIBTOOL_DLOPEN - enable checks for dlopen support
3389 AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
3390
3391 # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
3392 AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
3393
3394 # AC_ENABLE_SHARED - implement the --enable-shared flag
3395 # Usage: AC_ENABLE_SHARED[(DEFAULT)]
3396 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
3397 #   `yes'.
3398 AC_DEFUN([AC_ENABLE_SHARED],
3399 [define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
3400 AC_ARG_ENABLE(shared,
3401 changequote(<<, >>)dnl
3402 <<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
3403 changequote([, ])dnl
3404 [p=${PACKAGE-default}
3405 case $enableval in
3406 yes) enable_shared=yes ;;
3407 no) enable_shared=no ;;
3408 *)
3409   enable_shared=no
3410   # Look at the argument we got.  We use all the common list separators.
3411   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3412   for pkg in $enableval; do
3413     if test "X$pkg" = "X$p"; then
3414       enable_shared=yes
3415     fi
3416   done
3417   IFS="$ac_save_ifs"
3418   ;;
3419 esac],
3420 enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
3421 ])
3422
3423 # AC_DISABLE_SHARED - set the default shared flag to --disable-shared
3424 AC_DEFUN([AC_DISABLE_SHARED],
3425 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3426 AC_ENABLE_SHARED(no)])
3427
3428 # AC_ENABLE_STATIC - implement the --enable-static flag
3429 # Usage: AC_ENABLE_STATIC[(DEFAULT)]
3430 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
3431 #   `yes'.
3432 AC_DEFUN([AC_ENABLE_STATIC],
3433 [define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
3434 AC_ARG_ENABLE(static,
3435 changequote(<<, >>)dnl
3436 <<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
3437 changequote([, ])dnl
3438 [p=${PACKAGE-default}
3439 case $enableval in
3440 yes) enable_static=yes ;;
3441 no) enable_static=no ;;
3442 *)
3443   enable_static=no
3444   # Look at the argument we got.  We use all the common list separators.
3445   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3446   for pkg in $enableval; do
3447     if test "X$pkg" = "X$p"; then
3448       enable_static=yes
3449     fi
3450   done
3451   IFS="$ac_save_ifs"
3452   ;;
3453 esac],
3454 enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
3455 ])
3456
3457 # AC_DISABLE_STATIC - set the default static flag to --disable-static
3458 AC_DEFUN([AC_DISABLE_STATIC],
3459 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3460 AC_ENABLE_STATIC(no)])
3461
3462
3463 # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
3464 # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
3465 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
3466 #   `yes'.
3467 AC_DEFUN([AC_ENABLE_FAST_INSTALL],
3468 [define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
3469 AC_ARG_ENABLE(fast-install,
3470 changequote(<<, >>)dnl
3471 <<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
3472 changequote([, ])dnl
3473 [p=${PACKAGE-default}
3474 case $enableval in
3475 yes) enable_fast_install=yes ;;
3476 no) enable_fast_install=no ;;
3477 *)
3478   enable_fast_install=no
3479   # Look at the argument we got.  We use all the common list separators.
3480   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
3481   for pkg in $enableval; do
3482     if test "X$pkg" = "X$p"; then
3483       enable_fast_install=yes
3484     fi
3485   done
3486   IFS="$ac_save_ifs"
3487   ;;
3488 esac],
3489 enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
3490 ])
3491
3492 # AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
3493 AC_DEFUN([AC_DISABLE_FAST_INSTALL],
3494 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3495 AC_ENABLE_FAST_INSTALL(no)])
3496
3497 # AC_LIBTOOL_PICMODE - implement the --with-pic flag
3498 # Usage: AC_LIBTOOL_PICMODE[(MODE)]
3499 #   Where MODE is either `yes' or `no'.  If omitted, it defaults to
3500 #   `both'.
3501 AC_DEFUN([AC_LIBTOOL_PICMODE],
3502 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3503 pic_mode=ifelse($#,1,$1,default)])
3504
3505
3506 # AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
3507 AC_DEFUN([AC_PATH_TOOL_PREFIX],
3508 [AC_MSG_CHECKING([for $1])
3509 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3510 [case $MAGIC_CMD in
3511   /*)
3512   lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
3513   ;;
3514   ?:/*)
3515   lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
3516   ;;
3517   *)
3518   ac_save_MAGIC_CMD="$MAGIC_CMD"
3519   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS=":"
3520 dnl $ac_dummy forces splitting on constant user-supplied paths.
3521 dnl POSIX.2 word splitting is done only on the output of word expansions,
3522 dnl not every word.  This closes a longstanding sh security hole.
3523   ac_dummy="ifelse([$2], , $PATH, [$2])"
3524   for ac_dir in $ac_dummy; do
3525     test -z "$ac_dir" && ac_dir=.
3526     if test -f $ac_dir/$1; then
3527       lt_cv_path_MAGIC_CMD="$ac_dir/$1"
3528       if test -n "$file_magic_test_file"; then
3529         case $deplibs_check_method in
3530         "file_magic "*)
3531           file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
3532           MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
3533           if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3534             egrep "$file_magic_regex" > /dev/null; then
3535             :
3536           else
3537             cat <<EOF 1>&2
3538
3539 *** Warning: the command libtool uses to detect shared libraries,
3540 *** $file_magic_cmd, produces output that libtool cannot recognize.
3541 *** The result is that libtool may fail to recognize shared libraries
3542 *** as such.  This will affect the creation of libtool libraries that
3543 *** depend on shared libraries, but programs linked with such libtool
3544 *** libraries will work regardless of this problem.  Nevertheless, you
3545 *** may want to report the problem to your system manager and/or to
3546 *** bug-libtool@gnu.org
3547
3548 EOF
3549           fi ;;
3550         esac
3551       fi
3552       break
3553     fi
3554   done
3555   IFS="$ac_save_ifs"
3556   MAGIC_CMD="$ac_save_MAGIC_CMD"
3557   ;;
3558 esac])
3559 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
3560 if test -n "$MAGIC_CMD"; then
3561   AC_MSG_RESULT($MAGIC_CMD)
3562 else
3563   AC_MSG_RESULT(no)
3564 fi
3565 ])
3566
3567
3568 # AC_PATH_MAGIC - find a file program which can recognise a shared library
3569 AC_DEFUN([AC_PATH_MAGIC],
3570 [AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
3571 AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
3572 if test -z "$lt_cv_path_MAGIC_CMD"; then
3573   if test -n "$ac_tool_prefix"; then
3574     AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
3575   else
3576     MAGIC_CMD=:
3577   fi
3578 fi
3579 ])
3580
3581
3582 # AC_PROG_LD - find the path to the GNU or non-GNU linker
3583 AC_DEFUN([AC_PROG_LD],
3584 [AC_ARG_WITH(gnu-ld,
3585 [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
3586 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
3587 AC_REQUIRE([AC_PROG_CC])dnl
3588 AC_REQUIRE([AC_CANONICAL_HOST])dnl
3589 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3590 AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
3591 ac_prog=ld
3592 if test "$GCC" = yes; then
3593   # Check if gcc -print-prog-name=ld gives a path.
3594   AC_MSG_CHECKING([for ld used by GCC])
3595   case $host in
3596   *-*-mingw*)
3597     # gcc leaves a trailing carriage return which upsets mingw
3598     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3599   *)
3600     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3601   esac
3602   case $ac_prog in
3603     # Accept absolute paths.
3604     [[\\/]]* | [[A-Za-z]]:[[\\/]]*)
3605       re_direlt='/[[^/]][[^/]]*/\.\./'
3606       # Canonicalize the path of ld
3607       ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
3608       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
3609         ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
3610       done
3611       test -z "$LD" && LD="$ac_prog"
3612       ;;
3613   "")
3614     # If it fails, then pretend we aren't using GCC.
3615     ac_prog=ld
3616     ;;
3617   *)
3618     # If it is relative, then search for the first ld in PATH.
3619     with_gnu_ld=unknown
3620     ;;
3621   esac
3622 elif test "$with_gnu_ld" = yes; then
3623   AC_MSG_CHECKING([for GNU ld])
3624 else
3625   AC_MSG_CHECKING([for non-GNU ld])
3626 fi
3627 AC_CACHE_VAL(lt_cv_path_LD,
3628 [if test -z "$LD"; then
3629   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3630   for ac_dir in $PATH; do
3631     test -z "$ac_dir" && ac_dir=.
3632     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3633       lt_cv_path_LD="$ac_dir/$ac_prog"
3634       # Check to see if the program is GNU ld.  I'd rather use --version,
3635       # but apparently some GNU ld's only accept -v.
3636       # Break only if it was the GNU/non-GNU ld that we prefer.
3637       if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
3638         test "$with_gnu_ld" != no && break
3639       else
3640         test "$with_gnu_ld" != yes && break
3641       fi
3642     fi
3643   done
3644   IFS="$ac_save_ifs"
3645 else
3646   lt_cv_path_LD="$LD" # Let the user override the test with a path.
3647 fi])
3648 LD="$lt_cv_path_LD"
3649 if test -n "$LD"; then
3650   AC_MSG_RESULT($LD)
3651 else
3652   AC_MSG_RESULT(no)
3653 fi
3654 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3655 AC_PROG_LD_GNU
3656 ])
3657
3658 # AC_PROG_LD_GNU -
3659 AC_DEFUN([AC_PROG_LD_GNU],
3660 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3661 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
3662 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
3663   lt_cv_prog_gnu_ld=yes
3664 else
3665   lt_cv_prog_gnu_ld=no
3666 fi])
3667 with_gnu_ld=$lt_cv_prog_gnu_ld
3668 ])
3669
3670 # AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
3671 #   -- PORTME Some linkers may need a different reload flag.
3672 AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
3673 [AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
3674 [lt_cv_ld_reload_flag='-r'])
3675 reload_flag=$lt_cv_ld_reload_flag
3676 test -n "$reload_flag" && reload_flag=" $reload_flag"
3677 ])
3678
3679 # AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
3680 #  -- PORTME fill in with the dynamic library characteristics
3681 AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
3682 [AC_CACHE_CHECK([how to recognise dependant libraries],
3683 lt_cv_deplibs_check_method,
3684 [lt_cv_file_magic_cmd='$MAGIC_CMD'
3685 lt_cv_file_magic_test_file=
3686 lt_cv_deplibs_check_method='unknown'
3687 # Need to set the preceding variable on all platforms that support
3688 # interlibrary dependencies.
3689 # 'none' -- dependencies not supported.
3690 # `unknown' -- same as none, but documents that we really don't know.
3691 # 'pass_all' -- all dependencies passed with no checks.
3692 # 'test_compile' -- check by making test program.
3693 # 'file_magic [[regex]]' -- check by looking for files in library path
3694 # which responds to the $file_magic_cmd with a given egrep regex.
3695 # If you have `file' or equivalent on your system and you're not sure
3696 # whether `pass_all' will *always* work, you probably want this one.
3697
3698 case $host_os in
3699 aix4* | aix5*)
3700   lt_cv_deplibs_check_method=pass_all
3701   ;;
3702
3703 beos*)
3704   lt_cv_deplibs_check_method=pass_all
3705   ;;
3706
3707 bsdi4*)
3708   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3709   lt_cv_file_magic_cmd='/usr/bin/file -L'
3710   lt_cv_file_magic_test_file=/shlib/libc.so
3711   ;;
3712
3713 cygwin* | mingw* | pw32*)
3714   lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
3715   lt_cv_file_magic_cmd='$OBJDUMP -f'
3716   ;;
3717
3718 darwin* | rhapsody*)
3719   lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
3720   lt_cv_file_magic_cmd='/usr/bin/file -L'
3721   case "$host_os" in
3722   rhapsody* | darwin1.[[012]])
3723     lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
3724     ;;
3725   *) # Darwin 1.3 on
3726     lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
3727     ;;
3728   esac
3729   ;;
3730
3731 freebsd*)
3732   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
3733     case $host_cpu in
3734     i*86 )
3735       # Not sure whether the presence of OpenBSD here was a mistake.
3736       # Let's accept both of them until this is cleared up.
3737       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
3738       lt_cv_file_magic_cmd=/usr/bin/file
3739       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3740       ;;
3741     esac
3742   else
3743     lt_cv_deplibs_check_method=pass_all
3744   fi
3745   ;;
3746
3747 gnu*)
3748   lt_cv_deplibs_check_method=pass_all
3749   ;;
3750
3751 hpux10.20*|hpux11*)
3752   lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
3753   lt_cv_file_magic_cmd=/usr/bin/file
3754   lt_cv_file_magic_test_file=/usr/lib/libc.sl
3755   ;;
3756
3757 irix5* | irix6*)
3758   case $host_os in
3759   irix5*)
3760     # this will be overridden with pass_all, but let us keep it just in case
3761     lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
3762     ;;
3763   *)
3764     case $LD in
3765     *-32|*"-32 ") libmagic=32-bit;;
3766     *-n32|*"-n32 ") libmagic=N32;;
3767     *-64|*"-64 ") libmagic=64-bit;;
3768     *) libmagic=never-match;;
3769     esac
3770     # this will be overridden with pass_all, but let us keep it just in case
3771     lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
3772     ;;
3773   esac
3774   lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
3775   lt_cv_deplibs_check_method=pass_all
3776   ;;
3777
3778 # This must be Linux ELF.
3779 linux-gnu*)
3780   case $host_cpu in
3781   alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
3782     lt_cv_deplibs_check_method=pass_all ;;
3783   *)
3784     # glibc up to 2.1.1 does not perform some relocations on ARM
3785     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
3786   esac
3787   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
3788   ;;
3789
3790 netbsd*)
3791   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
3792     lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
3793   else
3794     lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
3795   fi
3796   ;;
3797
3798 newos6*)
3799   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3800   lt_cv_file_magic_cmd=/usr/bin/file
3801   lt_cv_file_magic_test_file=/usr/lib/libnls.so
3802   ;;
3803
3804 openbsd*)
3805   lt_cv_file_magic_cmd=/usr/bin/file
3806   lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3807   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3808     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
3809   else
3810     lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
3811   fi
3812   ;;
3813
3814 osf3* | osf4* | osf5*)
3815   # this will be overridden with pass_all, but let us keep it just in case
3816   lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
3817   lt_cv_file_magic_test_file=/shlib/libc.so
3818   lt_cv_deplibs_check_method=pass_all
3819   ;;
3820
3821 sco3.2v5*)
3822   lt_cv_deplibs_check_method=pass_all
3823   ;;
3824
3825 solaris*)
3826   lt_cv_deplibs_check_method=pass_all
3827   lt_cv_file_magic_test_file=/lib/libc.so
3828   ;;
3829
3830 sysv5uw[[78]]* | sysv4*uw2*)
3831   lt_cv_deplibs_check_method=pass_all
3832   ;;
3833
3834 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
3835   case $host_vendor in
3836   motorola)
3837     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]]'
3838     lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3839     ;;
3840   ncr)
3841     lt_cv_deplibs_check_method=pass_all
3842     ;;
3843   sequent)
3844     lt_cv_file_magic_cmd='/bin/file'
3845     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3846     ;;
3847   sni)
3848     lt_cv_file_magic_cmd='/bin/file'
3849     lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3850     lt_cv_file_magic_test_file=/lib/libc.so
3851     ;;
3852   esac
3853   ;;
3854 esac
3855 ])
3856 file_magic_cmd=$lt_cv_file_magic_cmd
3857 deplibs_check_method=$lt_cv_deplibs_check_method
3858 ])
3859
3860
3861 # AC_PROG_NM - find the path to a BSD-compatible name lister
3862 AC_DEFUN([AC_PROG_NM],
3863 [AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
3864 AC_MSG_CHECKING([for BSD-compatible nm])
3865 AC_CACHE_VAL(lt_cv_path_NM,
3866 [if test -n "$NM"; then
3867   # Let the user override the test.
3868   lt_cv_path_NM="$NM"
3869 else
3870   IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3871   for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
3872     test -z "$ac_dir" && ac_dir=.
3873     tmp_nm=$ac_dir/${ac_tool_prefix}nm
3874     if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
3875       # Check to see if the nm accepts a BSD-compat flag.
3876       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3877       #   nm: unknown option "B" ignored
3878       # Tru64's nm complains that /dev/null is an invalid object file
3879       if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
3880         lt_cv_path_NM="$tmp_nm -B"
3881         break
3882       elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
3883         lt_cv_path_NM="$tmp_nm -p"
3884         break
3885       else
3886         lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3887         continue # so that we can try to find one that supports BSD flags
3888       fi
3889     fi
3890   done
3891   IFS="$ac_save_ifs"
3892   test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
3893 fi])
3894 NM="$lt_cv_path_NM"
3895 AC_MSG_RESULT([$NM])
3896 ])
3897
3898 # AC_CHECK_LIBM - check for math library
3899 AC_DEFUN([AC_CHECK_LIBM],
3900 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3901 LIBM=
3902 case $host in
3903 *-*-beos* | *-*-cygwin* | *-*-pw32*)
3904   # These system don't have libm
3905   ;;
3906 *-ncr-sysv4.3*)
3907   AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3908   AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
3909   ;;
3910 *)
3911   AC_CHECK_LIB(m, main, LIBM="-lm")
3912   ;;
3913 esac
3914 ])
3915
3916 # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
3917 # the libltdl convenience library and INCLTDL to the include flags for
3918 # the libltdl header and adds --enable-ltdl-convenience to the
3919 # configure arguments.  Note that LIBLTDL and INCLTDL are not
3920 # AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If DIR is not
3921 # provided, it is assumed to be `libltdl'.  LIBLTDL will be prefixed
3922 # with '${top_builddir}/' and INCLTDL will be prefixed with
3923 # '${top_srcdir}/' (note the single quotes!).  If your package is not
3924 # flat and you're not using automake, define top_builddir and
3925 # top_srcdir appropriately in the Makefiles.
3926 AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
3927 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3928   case $enable_ltdl_convenience in
3929   no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
3930   "") enable_ltdl_convenience=yes
3931       ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
3932   esac
3933   LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
3934   INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
3935 ])
3936
3937 # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
3938 # the libltdl installable library and INCLTDL to the include flags for
3939 # the libltdl header and adds --enable-ltdl-install to the configure
3940 # arguments.  Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
3941 # AC_CONFIG_SUBDIRS called.  If DIR is not provided and an installed
3942 # libltdl is not found, it is assumed to be `libltdl'.  LIBLTDL will
3943 # be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
3944 # with '${top_srcdir}/' (note the single quotes!).  If your package is
3945 # not flat and you're not using automake, define top_builddir and
3946 # top_srcdir appropriately in the Makefiles.
3947 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
3948 AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
3949 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3950   AC_CHECK_LIB(ltdl, main,
3951   [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
3952   [if test x"$enable_ltdl_install" = xno; then
3953      AC_MSG_WARN([libltdl not installed, but installation disabled])
3954    else
3955      enable_ltdl_install=yes
3956    fi
3957   ])
3958   if test x"$enable_ltdl_install" = x"yes"; then
3959     ac_configure_args="$ac_configure_args --enable-ltdl-install"
3960     LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
3961     INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
3962   else
3963     ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
3964     LIBLTDL="-lltdl"
3965     INCLTDL=
3966   fi
3967 ])
3968
3969 # old names
3970 AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL])
3971 AC_DEFUN([AM_ENABLE_SHARED],  [AC_ENABLE_SHARED($@)])
3972 AC_DEFUN([AM_ENABLE_STATIC],  [AC_ENABLE_STATIC($@)])
3973 AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
3974 AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
3975 AC_DEFUN([AM_PROG_LD],        [AC_PROG_LD])
3976 AC_DEFUN([AM_PROG_NM],        [AC_PROG_NM])
3977
3978 # This is just to silence aclocal about the macro not being used
3979 ifelse([AC_DISABLE_FAST_INSTALL])
3980
3981 # -- embedded libtool.m4 ends here --