aclocal.m4
上传用户:wxp200602
上传日期:2007-10-30
资源大小:4028k
文件大小:124k
源码类别:

SNMP编程

开发平台:

Unix_Linux

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