Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
  2. #
  3. #   Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
  4. #   Written by Gordon Matzigkeit, 1996
  5. #
  6. # This file is free software; the Free Software Foundation gives
  7. # unlimited permission to copy and/or distribute it, with or without
  8. # modifications, as long as this notice is preserved.
  9.  
  10. m4_define([_LT_COPYING], [dnl
  11. # Copyright (C) 2014 Free Software Foundation, Inc.
  12. # This is free software; see the source for copying conditions.  There is NO
  13. # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  14.  
  15. # GNU Libtool is free software; you can redistribute it and/or modify
  16. # it under the terms of the GNU General Public License as published by
  17. # the Free Software Foundation; either version 2 of of the License, or
  18. # (at your option) any later version.
  19. #
  20. # As a special exception to the GNU General Public License, if you
  21. # distribute this file as part of a program or library that is built
  22. # using GNU Libtool, you may include this file under the  same
  23. # distribution terms that you use for the rest of that program.
  24. #
  25. # GNU Libtool is distributed in the hope that it will be useful, but
  26. # WITHOUT ANY WARRANTY; without even the implied warranty of
  27. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  28. # GNU General Public License for more details.
  29. #
  30. # You should have received a copy of the GNU General Public License
  31. # along with this program.  If not, see <http://www.gnu.org/licenses/>.
  32. ])
  33.  
  34. # serial 58 LT_INIT
  35.  
  36.  
  37. # LT_PREREQ(VERSION)
  38. # ------------------
  39. # Complain and exit if this libtool version is less that VERSION.
  40. m4_defun([LT_PREREQ],
  41. [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
  42.        [m4_default([$3],
  43.                    [m4_fatal([Libtool version $1 or higher is required],
  44.                              63)])],
  45.        [$2])])
  46.  
  47.  
  48. # _LT_CHECK_BUILDDIR
  49. # ------------------
  50. # Complain if the absolute build directory name contains unusual characters
  51. m4_defun([_LT_CHECK_BUILDDIR],
  52. [case `pwd` in
  53.   *\ * | *\     *)
  54.     AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
  55. esac
  56. ])
  57.  
  58.  
  59. # LT_INIT([OPTIONS])
  60. # ------------------
  61. AC_DEFUN([LT_INIT],
  62. [AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
  63. AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
  64. AC_BEFORE([$0], [LT_LANG])dnl
  65. AC_BEFORE([$0], [LT_OUTPUT])dnl
  66. AC_BEFORE([$0], [LTDL_INIT])dnl
  67. m4_require([_LT_CHECK_BUILDDIR])dnl
  68.  
  69. dnl Autoconf doesn't catch unexpanded LT_ macros by default:
  70. m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
  71. m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
  72. dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
  73. dnl unless we require an AC_DEFUNed macro:
  74. AC_REQUIRE([LTOPTIONS_VERSION])dnl
  75. AC_REQUIRE([LTSUGAR_VERSION])dnl
  76. AC_REQUIRE([LTVERSION_VERSION])dnl
  77. AC_REQUIRE([LTOBSOLETE_VERSION])dnl
  78. m4_require([_LT_PROG_LTMAIN])dnl
  79.  
  80. _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
  81.  
  82. dnl Parse OPTIONS
  83. _LT_SET_OPTIONS([$0], [$1])
  84.  
  85. # This can be used to rebuild libtool when needed
  86. LIBTOOL_DEPS=$ltmain
  87.  
  88. # Always use our own libtool.
  89. LIBTOOL='$(SHELL) $(top_builddir)/libtool'
  90. AC_SUBST(LIBTOOL)dnl
  91.  
  92. _LT_SETUP
  93.  
  94. # Only expand once:
  95. m4_define([LT_INIT])
  96. ])# LT_INIT
  97.  
  98. # Old names:
  99. AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
  100. AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
  101. dnl aclocal-1.4 backwards compatibility:
  102. dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
  103. dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
  104.  
  105.  
  106. # _LT_PREPARE_CC_BASENAME
  107. # -----------------------
  108. m4_defun([_LT_PREPARE_CC_BASENAME], [
  109. # Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
  110. func_cc_basename ()
  111. {
  112.     for cc_temp in @S|@*""; do
  113.       case $cc_temp in
  114.         compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
  115.         distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
  116.         \-*) ;;
  117.         *) break;;
  118.       esac
  119.     done
  120.     func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
  121. }
  122. ])# _LT_PREPARE_CC_BASENAME
  123.  
  124.  
  125. # _LT_CC_BASENAME(CC)
  126. # -------------------
  127. # It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
  128. # but that macro is also expanded into generated libtool script, which
  129. # arranges for $SED and $ECHO to be set by different means.
  130. m4_defun([_LT_CC_BASENAME],
  131. [m4_require([_LT_PREPARE_CC_BASENAME])dnl
  132. AC_REQUIRE([_LT_DECL_SED])dnl
  133. AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
  134. func_cc_basename $1
  135. cc_basename=$func_cc_basename_result
  136. ])
  137.  
  138.  
  139. # _LT_FILEUTILS_DEFAULTS
  140. # ----------------------
  141. # It is okay to use these file commands and assume they have been set
  142. # sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
  143. m4_defun([_LT_FILEUTILS_DEFAULTS],
  144. [: ${CP="cp -f"}
  145. : ${MV="mv -f"}
  146. : ${RM="rm -f"}
  147. ])# _LT_FILEUTILS_DEFAULTS
  148.  
  149.  
  150. # _LT_SETUP
  151. # ---------
  152. m4_defun([_LT_SETUP],
  153. [AC_REQUIRE([AC_CANONICAL_HOST])dnl
  154. AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  155. AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
  156. AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
  157.  
  158. _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
  159. dnl
  160. _LT_DECL([], [host_alias], [0], [The host system])dnl
  161. _LT_DECL([], [host], [0])dnl
  162. _LT_DECL([], [host_os], [0])dnl
  163. dnl
  164. _LT_DECL([], [build_alias], [0], [The build system])dnl
  165. _LT_DECL([], [build], [0])dnl
  166. _LT_DECL([], [build_os], [0])dnl
  167. dnl
  168. AC_REQUIRE([AC_PROG_CC])dnl
  169. AC_REQUIRE([LT_PATH_LD])dnl
  170. AC_REQUIRE([LT_PATH_NM])dnl
  171. dnl
  172. AC_REQUIRE([AC_PROG_LN_S])dnl
  173. test -z "$LN_S" && LN_S="ln -s"
  174. _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
  175. dnl
  176. AC_REQUIRE([LT_CMD_MAX_LEN])dnl
  177. _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
  178. _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
  179. dnl
  180. m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  181. m4_require([_LT_CHECK_SHELL_FEATURES])dnl
  182. m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
  183. m4_require([_LT_CMD_RELOAD])dnl
  184. m4_require([_LT_CHECK_MAGIC_METHOD])dnl
  185. m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
  186. m4_require([_LT_CMD_OLD_ARCHIVE])dnl
  187. m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
  188. m4_require([_LT_WITH_SYSROOT])dnl
  189. m4_require([_LT_CMD_TRUNCATE])dnl
  190.  
  191. _LT_CONFIG_LIBTOOL_INIT([
  192. # See if we are running on zsh, and set the options that allow our
  193. # commands through without removal of \ escapes INIT.
  194. if test -n "\${ZSH_VERSION+set}"; then
  195.    setopt NO_GLOB_SUBST
  196. fi
  197. ])
  198. if test -n "${ZSH_VERSION+set}"; then
  199.    setopt NO_GLOB_SUBST
  200. fi
  201.  
  202. _LT_CHECK_OBJDIR
  203.  
  204. m4_require([_LT_TAG_COMPILER])dnl
  205.  
  206. case $host_os in
  207. aix3*)
  208.   # AIX sometimes has problems with the GCC collect2 program.  For some
  209.   # reason, if we set the COLLECT_NAMES environment variable, the problems
  210.   # vanish in a puff of smoke.
  211.   if test set != "${COLLECT_NAMES+set}"; then
  212.     COLLECT_NAMES=
  213.     export COLLECT_NAMES
  214.   fi
  215.   ;;
  216. esac
  217.  
  218. # Global variables:
  219. ofile=libtool
  220. can_build_shared=yes
  221.  
  222. # All known linkers require a '.a' archive for static linking (except MSVC,
  223. # which needs '.lib').
  224. libext=a
  225.  
  226. with_gnu_ld=$lt_cv_prog_gnu_ld
  227.  
  228. old_CC=$CC
  229. old_CFLAGS=$CFLAGS
  230.  
  231. # Set sane defaults for various variables
  232. test -z "$CC" && CC=cc
  233. test -z "$LTCC" && LTCC=$CC
  234. test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
  235. test -z "$LD" && LD=ld
  236. test -z "$ac_objext" && ac_objext=o
  237.  
  238. _LT_CC_BASENAME([$compiler])
  239.  
  240. # Only perform the check for file, if the check method requires it
  241. test -z "$MAGIC_CMD" && MAGIC_CMD=file
  242. case $deplibs_check_method in
  243. file_magic*)
  244.   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
  245.     _LT_PATH_MAGIC
  246.   fi
  247.   ;;
  248. esac
  249.  
  250. # Use C for the default configuration in the libtool script
  251. LT_SUPPORTED_TAG([CC])
  252. _LT_LANG_C_CONFIG
  253. _LT_LANG_DEFAULT_CONFIG
  254. _LT_CONFIG_COMMANDS
  255. ])# _LT_SETUP
  256.  
  257.  
  258. # _LT_PREPARE_SED_QUOTE_VARS
  259. # --------------------------
  260. # Define a few sed substitution that help us do robust quoting.
  261. m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
  262. [# Backslashify metacharacters that are still active within
  263. # double-quoted strings.
  264. sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
  265.  
  266. # Same as above, but do not quote variable references.
  267. double_quote_subst='s/\([["`\\]]\)/\\\1/g'
  268.  
  269. # Sed substitution to delay expansion of an escaped shell variable in a
  270. # double_quote_subst'ed string.
  271. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
  272.  
  273. # Sed substitution to delay expansion of an escaped single quote.
  274. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
  275.  
  276. # Sed substitution to avoid accidental globbing in evaled expressions
  277. no_glob_subst='s/\*/\\\*/g'
  278. ])
  279.  
  280. # _LT_PROG_LTMAIN
  281. # ---------------
  282. # Note that this code is called both from 'configure', and 'config.status'
  283. # now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
  284. # 'config.status' has no value for ac_aux_dir unless we are using Automake,
  285. # so we pass a copy along to make sure it has a sensible value anyway.
  286. m4_defun([_LT_PROG_LTMAIN],
  287. [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
  288. _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
  289. ltmain=$ac_aux_dir/ltmain.sh
  290. ])# _LT_PROG_LTMAIN
  291.  
  292.  
  293. ## ------------------------------------- ##
  294. ## Accumulate code for creating libtool. ##
  295. ## ------------------------------------- ##
  296.  
  297. # So that we can recreate a full libtool script including additional
  298. # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
  299. # in macros and then make a single call at the end using the 'libtool'
  300. # label.
  301.  
  302.  
  303. # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
  304. # ----------------------------------------
  305. # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
  306. m4_define([_LT_CONFIG_LIBTOOL_INIT],
  307. [m4_ifval([$1],
  308.           [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
  309.                      [$1
  310. ])])])
  311.  
  312. # Initialize.
  313. m4_define([_LT_OUTPUT_LIBTOOL_INIT])
  314.  
  315.  
  316. # _LT_CONFIG_LIBTOOL([COMMANDS])
  317. # ------------------------------
  318. # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
  319. m4_define([_LT_CONFIG_LIBTOOL],
  320. [m4_ifval([$1],
  321.           [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
  322.                      [$1
  323. ])])])
  324.  
  325. # Initialize.
  326. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
  327.  
  328.  
  329. # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
  330. # -----------------------------------------------------
  331. m4_defun([_LT_CONFIG_SAVE_COMMANDS],
  332. [_LT_CONFIG_LIBTOOL([$1])
  333. _LT_CONFIG_LIBTOOL_INIT([$2])
  334. ])
  335.  
  336.  
  337. # _LT_FORMAT_COMMENT([COMMENT])
  338. # -----------------------------
  339. # Add leading comment marks to the start of each line, and a trailing
  340. # full-stop to the whole comment if one is not present already.
  341. m4_define([_LT_FORMAT_COMMENT],
  342. [m4_ifval([$1], [
  343. m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
  344.               [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
  345. )])
  346.  
  347.  
  348.  
  349. ## ------------------------ ##
  350. ## FIXME: Eliminate VARNAME ##
  351. ## ------------------------ ##
  352.  
  353.  
  354. # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
  355. # -------------------------------------------------------------------
  356. # CONFIGNAME is the name given to the value in the libtool script.
  357. # VARNAME is the (base) name used in the configure script.
  358. # VALUE may be 0, 1 or 2 for a computed quote escaped value based on
  359. # VARNAME.  Any other value will be used directly.
  360. m4_define([_LT_DECL],
  361. [lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
  362.     [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
  363.         [m4_ifval([$1], [$1], [$2])])
  364.     lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
  365.     m4_ifval([$4],
  366.         [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
  367.     lt_dict_add_subkey([lt_decl_dict], [$2],
  368.         [tagged?], [m4_ifval([$5], [yes], [no])])])
  369. ])
  370.  
  371.  
  372. # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
  373. # --------------------------------------------------------
  374. m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
  375.  
  376.  
  377. # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
  378. # ------------------------------------------------
  379. m4_define([lt_decl_tag_varnames],
  380. [_lt_decl_filter([tagged?], [yes], $@)])
  381.  
  382.  
  383. # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
  384. # ---------------------------------------------------------
  385. m4_define([_lt_decl_filter],
  386. [m4_case([$#],
  387.   [0], [m4_fatal([$0: too few arguments: $#])],
  388.   [1], [m4_fatal([$0: too few arguments: $#: $1])],
  389.   [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
  390.   [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
  391.   [lt_dict_filter([lt_decl_dict], $@)])[]dnl
  392. ])
  393.  
  394.  
  395. # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
  396. # --------------------------------------------------
  397. m4_define([lt_decl_quote_varnames],
  398. [_lt_decl_filter([value], [1], $@)])
  399.  
  400.  
  401. # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
  402. # ---------------------------------------------------
  403. m4_define([lt_decl_dquote_varnames],
  404. [_lt_decl_filter([value], [2], $@)])
  405.  
  406.  
  407. # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
  408. # ---------------------------------------------------
  409. m4_define([lt_decl_varnames_tagged],
  410. [m4_assert([$# <= 2])dnl
  411. _$0(m4_quote(m4_default([$1], [[, ]])),
  412.     m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
  413.     m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
  414. m4_define([_lt_decl_varnames_tagged],
  415. [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
  416.  
  417.  
  418. # lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
  419. # ------------------------------------------------
  420. m4_define([lt_decl_all_varnames],
  421. [_$0(m4_quote(m4_default([$1], [[, ]])),
  422.      m4_if([$2], [],
  423.            m4_quote(lt_decl_varnames),
  424.         m4_quote(m4_shift($@))))[]dnl
  425. ])
  426. m4_define([_lt_decl_all_varnames],
  427. [lt_join($@, lt_decl_varnames_tagged([$1],
  428.                         lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
  429. ])
  430.  
  431.  
  432. # _LT_CONFIG_STATUS_DECLARE([VARNAME])
  433. # ------------------------------------
  434. # Quote a variable value, and forward it to 'config.status' so that its
  435. # declaration there will have the same value as in 'configure'.  VARNAME
  436. # must have a single quote delimited value for this to work.
  437. m4_define([_LT_CONFIG_STATUS_DECLARE],
  438. [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
  439.  
  440.  
  441. # _LT_CONFIG_STATUS_DECLARATIONS
  442. # ------------------------------
  443. # We delimit libtool config variables with single quotes, so when
  444. # we write them to config.status, we have to be sure to quote all
  445. # embedded single quotes properly.  In configure, this macro expands
  446. # each variable declared with _LT_DECL (and _LT_TAGDECL) into:
  447. #
  448. #    <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
  449. m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
  450. [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
  451.     [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
  452.  
  453.  
  454. # _LT_LIBTOOL_TAGS
  455. # ----------------
  456. # Output comment and list of tags supported by the script
  457. m4_defun([_LT_LIBTOOL_TAGS],
  458. [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
  459. available_tags='_LT_TAGS'dnl
  460. ])
  461.  
  462.  
  463. # _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
  464. # -----------------------------------
  465. # Extract the dictionary values for VARNAME (optionally with TAG) and
  466. # expand to a commented shell variable setting:
  467. #
  468. #    # Some comment about what VAR is for.
  469. #    visible_name=$lt_internal_name
  470. m4_define([_LT_LIBTOOL_DECLARE],
  471. [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
  472.                                            [description])))[]dnl
  473. m4_pushdef([_libtool_name],
  474.     m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
  475. m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
  476.     [0], [_libtool_name=[$]$1],
  477.     [1], [_libtool_name=$lt_[]$1],
  478.     [2], [_libtool_name=$lt_[]$1],
  479.     [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
  480. m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
  481. ])
  482.  
  483.  
  484. # _LT_LIBTOOL_CONFIG_VARS
  485. # -----------------------
  486. # Produce commented declarations of non-tagged libtool config variables
  487. # suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
  488. # script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
  489. # section) are produced by _LT_LIBTOOL_TAG_VARS.
  490. m4_defun([_LT_LIBTOOL_CONFIG_VARS],
  491. [m4_foreach([_lt_var],
  492.     m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
  493.     [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
  494.  
  495.  
  496. # _LT_LIBTOOL_TAG_VARS(TAG)
  497. # -------------------------
  498. m4_define([_LT_LIBTOOL_TAG_VARS],
  499. [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
  500.     [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
  501.  
  502.  
  503. # _LT_TAGVAR(VARNAME, [TAGNAME])
  504. # ------------------------------
  505. m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
  506.  
  507.  
  508. # _LT_CONFIG_COMMANDS
  509. # -------------------
  510. # Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
  511. # variables for single and double quote escaping we saved from calls
  512. # to _LT_DECL, we can put quote escaped variables declarations
  513. # into 'config.status', and then the shell code to quote escape them in
  514. # for loops in 'config.status'.  Finally, any additional code accumulated
  515. # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
  516. m4_defun([_LT_CONFIG_COMMANDS],
  517. [AC_PROVIDE_IFELSE([LT_OUTPUT],
  518.         dnl If the libtool generation code has been placed in $CONFIG_LT,
  519.         dnl instead of duplicating it all over again into config.status,
  520.         dnl then we will have config.status run $CONFIG_LT later, so it
  521.         dnl needs to know what name is stored there:
  522.         [AC_CONFIG_COMMANDS([libtool],
  523.             [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
  524.     dnl If the libtool generation code is destined for config.status,
  525.     dnl expand the accumulated commands and init code now:
  526.     [AC_CONFIG_COMMANDS([libtool],
  527.         [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
  528. ])#_LT_CONFIG_COMMANDS
  529.  
  530.  
  531. # Initialize.
  532. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
  533. [
  534.  
  535. # The HP-UX ksh and POSIX shell print the target directory to stdout
  536. # if CDPATH is set.
  537. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
  538.  
  539. sed_quote_subst='$sed_quote_subst'
  540. double_quote_subst='$double_quote_subst'
  541. delay_variable_subst='$delay_variable_subst'
  542. _LT_CONFIG_STATUS_DECLARATIONS
  543. LTCC='$LTCC'
  544. LTCFLAGS='$LTCFLAGS'
  545. compiler='$compiler_DEFAULT'
  546.  
  547. # A function that is used when there is no print builtin or printf.
  548. func_fallback_echo ()
  549. {
  550.   eval 'cat <<_LTECHO_EOF
  551. \$[]1
  552. _LTECHO_EOF'
  553. }
  554.  
  555. # Quote evaled strings.
  556. for var in lt_decl_all_varnames([[ \
  557. ]], lt_decl_quote_varnames); do
  558.     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
  559.     *[[\\\\\\\`\\"\\\$]]*)
  560.       eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
  561.       ;;
  562.     *)
  563.       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
  564.       ;;
  565.     esac
  566. done
  567.  
  568. # Double-quote double-evaled strings.
  569. for var in lt_decl_all_varnames([[ \
  570. ]], lt_decl_dquote_varnames); do
  571.     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
  572.     *[[\\\\\\\`\\"\\\$]]*)
  573.       eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
  574.       ;;
  575.     *)
  576.       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
  577.       ;;
  578.     esac
  579. done
  580.  
  581. _LT_OUTPUT_LIBTOOL_INIT
  582. ])
  583.  
  584. # _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
  585. # ------------------------------------
  586. # Generate a child script FILE with all initialization necessary to
  587. # reuse the environment learned by the parent script, and make the
  588. # file executable.  If COMMENT is supplied, it is inserted after the
  589. # '#!' sequence but before initialization text begins.  After this
  590. # macro, additional text can be appended to FILE to form the body of
  591. # the child script.  The macro ends with non-zero status if the
  592. # file could not be fully written (such as if the disk is full).
  593. m4_ifdef([AS_INIT_GENERATED],
  594. [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
  595. [m4_defun([_LT_GENERATED_FILE_INIT],
  596. [m4_require([AS_PREPARE])]dnl
  597. [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
  598. [lt_write_fail=0
  599. cat >$1 <<_ASEOF || lt_write_fail=1
  600. #! $SHELL
  601. # Generated by $as_me.
  602. $2
  603. SHELL=\${CONFIG_SHELL-$SHELL}
  604. export SHELL
  605. _ASEOF
  606. cat >>$1 <<\_ASEOF || lt_write_fail=1
  607. AS_SHELL_SANITIZE
  608. _AS_PREPARE
  609. exec AS_MESSAGE_FD>&1
  610. _ASEOF
  611. test 0 = "$lt_write_fail" && chmod +x $1[]dnl
  612. m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
  613.  
  614. # LT_OUTPUT
  615. # ---------
  616. # This macro allows early generation of the libtool script (before
  617. # AC_OUTPUT is called), incase it is used in configure for compilation
  618. # tests.
  619. AC_DEFUN([LT_OUTPUT],
  620. [: ${CONFIG_LT=./config.lt}
  621. AC_MSG_NOTICE([creating $CONFIG_LT])
  622. _LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
  623. [# Run this file to recreate a libtool stub with the current configuration.])
  624.  
  625. cat >>"$CONFIG_LT" <<\_LTEOF
  626. lt_cl_silent=false
  627. exec AS_MESSAGE_LOG_FD>>config.log
  628. {
  629.   echo
  630.   AS_BOX([Running $as_me.])
  631. } >&AS_MESSAGE_LOG_FD
  632.  
  633. lt_cl_help="\
  634. '$as_me' creates a local libtool stub from the current configuration,
  635. for use in further configure time tests before the real libtool is
  636. generated.
  637.  
  638. Usage: $[0] [[OPTIONS]]
  639.  
  640.   -h, --help      print this help, then exit
  641.   -V, --version   print version number, then exit
  642.   -q, --quiet     do not print progress messages
  643.   -d, --debug     don't remove temporary files
  644.  
  645. Report bugs to <bug-libtool@gnu.org>."
  646.  
  647. lt_cl_version="\
  648. m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
  649. m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
  650. configured by $[0], generated by m4_PACKAGE_STRING.
  651.  
  652. Copyright (C) 2011 Free Software Foundation, Inc.
  653. This config.lt script is free software; the Free Software Foundation
  654. gives unlimited permision to copy, distribute and modify it."
  655.  
  656. while test 0 != $[#]
  657. do
  658.   case $[1] in
  659.     --version | --v* | -V )
  660.       echo "$lt_cl_version"; exit 0 ;;
  661.     --help | --h* | -h )
  662.       echo "$lt_cl_help"; exit 0 ;;
  663.     --debug | --d* | -d )
  664.       debug=: ;;
  665.     --quiet | --q* | --silent | --s* | -q )
  666.       lt_cl_silent=: ;;
  667.  
  668.     -*) AC_MSG_ERROR([unrecognized option: $[1]
  669. Try '$[0] --help' for more information.]) ;;
  670.  
  671.     *) AC_MSG_ERROR([unrecognized argument: $[1]
  672. Try '$[0] --help' for more information.]) ;;
  673.   esac
  674.   shift
  675. done
  676.  
  677. if $lt_cl_silent; then
  678.   exec AS_MESSAGE_FD>/dev/null
  679. fi
  680. _LTEOF
  681.  
  682. cat >>"$CONFIG_LT" <<_LTEOF
  683. _LT_OUTPUT_LIBTOOL_COMMANDS_INIT
  684. _LTEOF
  685.  
  686. cat >>"$CONFIG_LT" <<\_LTEOF
  687. AC_MSG_NOTICE([creating $ofile])
  688. _LT_OUTPUT_LIBTOOL_COMMANDS
  689. AS_EXIT(0)
  690. _LTEOF
  691. chmod +x "$CONFIG_LT"
  692.  
  693. # configure is writing to config.log, but config.lt does its own redirection,
  694. # appending to config.log, which fails on DOS, as config.log is still kept
  695. # open by configure.  Here we exec the FD to /dev/null, effectively closing
  696. # config.log, so it can be properly (re)opened and appended to by config.lt.
  697. lt_cl_success=:
  698. test yes = "$silent" &&
  699.   lt_config_lt_args="$lt_config_lt_args --quiet"
  700. exec AS_MESSAGE_LOG_FD>/dev/null
  701. $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
  702. exec AS_MESSAGE_LOG_FD>>config.log
  703. $lt_cl_success || AS_EXIT(1)
  704. ])# LT_OUTPUT
  705.  
  706.  
  707. # _LT_CONFIG(TAG)
  708. # ---------------
  709. # If TAG is the built-in tag, create an initial libtool script with a
  710. # default configuration from the untagged config vars.  Otherwise add code
  711. # to config.status for appending the configuration named by TAG from the
  712. # matching tagged config vars.
  713. m4_defun([_LT_CONFIG],
  714. [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  715. _LT_CONFIG_SAVE_COMMANDS([
  716.   m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
  717.   m4_if(_LT_TAG, [C], [
  718.     # See if we are running on zsh, and set the options that allow our
  719.     # commands through without removal of \ escapes.
  720.     if test -n "${ZSH_VERSION+set}"; then
  721.       setopt NO_GLOB_SUBST
  722.     fi
  723.  
  724.     cfgfile=${ofile}T
  725.     trap "$RM \"$cfgfile\"; exit 1" 1 2 15
  726.     $RM "$cfgfile"
  727.  
  728.     cat <<_LT_EOF >> "$cfgfile"
  729. #! $SHELL
  730. # Generated automatically by $as_me ($PACKAGE) $VERSION
  731. # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
  732. # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  733.  
  734. # Provide generalized library-building support services.
  735. # Written by Gordon Matzigkeit, 1996
  736.  
  737. _LT_COPYING
  738. _LT_LIBTOOL_TAGS
  739.  
  740. # Configured defaults for sys_lib_dlsearch_path munging.
  741. : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
  742.  
  743. # ### BEGIN LIBTOOL CONFIG
  744. _LT_LIBTOOL_CONFIG_VARS
  745. _LT_LIBTOOL_TAG_VARS
  746. # ### END LIBTOOL CONFIG
  747.  
  748. _LT_EOF
  749.  
  750.     cat <<'_LT_EOF' >> "$cfgfile"
  751.  
  752. # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
  753.  
  754. _LT_PREPARE_MUNGE_PATH_LIST
  755. _LT_PREPARE_CC_BASENAME
  756.  
  757. # ### END FUNCTIONS SHARED WITH CONFIGURE
  758.  
  759. _LT_EOF
  760.  
  761.   case $host_os in
  762.   aix3*)
  763.     cat <<\_LT_EOF >> "$cfgfile"
  764. # AIX sometimes has problems with the GCC collect2 program.  For some
  765. # reason, if we set the COLLECT_NAMES environment variable, the problems
  766. # vanish in a puff of smoke.
  767. if test set != "${COLLECT_NAMES+set}"; then
  768.   COLLECT_NAMES=
  769.   export COLLECT_NAMES
  770. fi
  771. _LT_EOF
  772.     ;;
  773.   esac
  774.  
  775.   _LT_PROG_LTMAIN
  776.  
  777.   # We use sed instead of cat because bash on DJGPP gets confused if
  778.   # if finds mixed CR/LF and LF-only lines.  Since sed operates in
  779.   # text mode, it properly converts lines to CR/LF.  This bash problem
  780.   # is reportedly fixed, but why not run on old versions too?
  781.   sed '$q' "$ltmain" >> "$cfgfile" \
  782.      || (rm -f "$cfgfile"; exit 1)
  783.  
  784.    mv -f "$cfgfile" "$ofile" ||
  785.     (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
  786.   chmod +x "$ofile"
  787. ],
  788. [cat <<_LT_EOF >> "$ofile"
  789.  
  790. dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
  791. dnl in a comment (ie after a #).
  792. # ### BEGIN LIBTOOL TAG CONFIG: $1
  793. _LT_LIBTOOL_TAG_VARS(_LT_TAG)
  794. # ### END LIBTOOL TAG CONFIG: $1
  795. _LT_EOF
  796. ])dnl /m4_if
  797. ],
  798. [m4_if([$1], [], [
  799.     PACKAGE='$PACKAGE'
  800.     VERSION='$VERSION'
  801.     RM='$RM'
  802.     ofile='$ofile'], [])
  803. ])dnl /_LT_CONFIG_SAVE_COMMANDS
  804. ])# _LT_CONFIG
  805.  
  806.  
  807. # LT_SUPPORTED_TAG(TAG)
  808. # ---------------------
  809. # Trace this macro to discover what tags are supported by the libtool
  810. # --tag option, using:
  811. #    autoconf --trace 'LT_SUPPORTED_TAG:$1'
  812. AC_DEFUN([LT_SUPPORTED_TAG], [])
  813.  
  814.  
  815. # C support is built-in for now
  816. m4_define([_LT_LANG_C_enabled], [])
  817. m4_define([_LT_TAGS], [])
  818.  
  819.  
  820. # LT_LANG(LANG)
  821. # -------------
  822. # Enable libtool support for the given language if not already enabled.
  823. AC_DEFUN([LT_LANG],
  824. [AC_BEFORE([$0], [LT_OUTPUT])dnl
  825. m4_case([$1],
  826.   [C],                  [_LT_LANG(C)],
  827.   [C++],                [_LT_LANG(CXX)],
  828.   [Go],                 [_LT_LANG(GO)],
  829.   [Java],               [_LT_LANG(GCJ)],
  830.   [Fortran 77],         [_LT_LANG(F77)],
  831.   [Fortran],            [_LT_LANG(FC)],
  832.   [Windows Resource],   [_LT_LANG(RC)],
  833.   [m4_ifdef([_LT_LANG_]$1[_CONFIG],
  834.     [_LT_LANG($1)],
  835.     [m4_fatal([$0: unsupported language: "$1"])])])dnl
  836. ])# LT_LANG
  837.  
  838.  
  839. # _LT_LANG(LANGNAME)
  840. # ------------------
  841. m4_defun([_LT_LANG],
  842. [m4_ifdef([_LT_LANG_]$1[_enabled], [],
  843.   [LT_SUPPORTED_TAG([$1])dnl
  844.   m4_append([_LT_TAGS], [$1 ])dnl
  845.   m4_define([_LT_LANG_]$1[_enabled], [])dnl
  846.   _LT_LANG_$1_CONFIG($1)])dnl
  847. ])# _LT_LANG
  848.  
  849.  
  850. m4_ifndef([AC_PROG_GO], [
  851. ############################################################
  852. # NOTE: This macro has been submitted for inclusion into   #
  853. #  GNU Autoconf as AC_PROG_GO.  When it is available in    #
  854. #  a released version of Autoconf we should remove this    #
  855. #  macro and use it instead.                               #
  856. ############################################################
  857. m4_defun([AC_PROG_GO],
  858. [AC_LANG_PUSH(Go)dnl
  859. AC_ARG_VAR([GOC],     [Go compiler command])dnl
  860. AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
  861. _AC_ARG_VAR_LDFLAGS()dnl
  862. AC_CHECK_TOOL(GOC, gccgo)
  863. if test -z "$GOC"; then
  864.   if test -n "$ac_tool_prefix"; then
  865.     AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
  866.   fi
  867. fi
  868. if test -z "$GOC"; then
  869.   AC_CHECK_PROG(GOC, gccgo, gccgo, false)
  870. fi
  871. ])#m4_defun
  872. ])#m4_ifndef
  873.  
  874.  
  875. # _LT_LANG_DEFAULT_CONFIG
  876. # -----------------------
  877. m4_defun([_LT_LANG_DEFAULT_CONFIG],
  878. [AC_PROVIDE_IFELSE([AC_PROG_CXX],
  879.   [LT_LANG(CXX)],
  880.   [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
  881.  
  882. AC_PROVIDE_IFELSE([AC_PROG_F77],
  883.   [LT_LANG(F77)],
  884.   [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
  885.  
  886. AC_PROVIDE_IFELSE([AC_PROG_FC],
  887.   [LT_LANG(FC)],
  888.   [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
  889.  
  890. dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
  891. dnl pulling things in needlessly.
  892. AC_PROVIDE_IFELSE([AC_PROG_GCJ],
  893.   [LT_LANG(GCJ)],
  894.   [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
  895.     [LT_LANG(GCJ)],
  896.     [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
  897.       [LT_LANG(GCJ)],
  898.       [m4_ifdef([AC_PROG_GCJ],
  899.         [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
  900.        m4_ifdef([A][M_PROG_GCJ],
  901.         [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
  902.        m4_ifdef([LT_PROG_GCJ],
  903.         [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
  904.  
  905. AC_PROVIDE_IFELSE([AC_PROG_GO],
  906.   [LT_LANG(GO)],
  907.   [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
  908.  
  909. AC_PROVIDE_IFELSE([LT_PROG_RC],
  910.   [LT_LANG(RC)],
  911.   [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
  912. ])# _LT_LANG_DEFAULT_CONFIG
  913.  
  914. # Obsolete macros:
  915. AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
  916. AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
  917. AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
  918. AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
  919. AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
  920. dnl aclocal-1.4 backwards compatibility:
  921. dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
  922. dnl AC_DEFUN([AC_LIBTOOL_F77], [])
  923. dnl AC_DEFUN([AC_LIBTOOL_FC], [])
  924. dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
  925. dnl AC_DEFUN([AC_LIBTOOL_RC], [])
  926.  
  927.  
  928. # _LT_TAG_COMPILER
  929. # ----------------
  930. m4_defun([_LT_TAG_COMPILER],
  931. [AC_REQUIRE([AC_PROG_CC])dnl
  932.  
  933. _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
  934. _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
  935. _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
  936. _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
  937.  
  938. # If no C compiler was specified, use CC.
  939. LTCC=${LTCC-"$CC"}
  940.  
  941. # If no C compiler flags were specified, use CFLAGS.
  942. LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
  943.  
  944. # Allow CC to be a program name with arguments.
  945. compiler=$CC
  946. ])# _LT_TAG_COMPILER
  947.  
  948.  
  949. # _LT_COMPILER_BOILERPLATE
  950. # ------------------------
  951. # Check for compiler boilerplate output or warnings with
  952. # the simple compiler test code.
  953. m4_defun([_LT_COMPILER_BOILERPLATE],
  954. [m4_require([_LT_DECL_SED])dnl
  955. ac_outfile=conftest.$ac_objext
  956. echo "$lt_simple_compile_test_code" >conftest.$ac_ext
  957. eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
  958. _lt_compiler_boilerplate=`cat conftest.err`
  959. $RM conftest*
  960. ])# _LT_COMPILER_BOILERPLATE
  961.  
  962.  
  963. # _LT_LINKER_BOILERPLATE
  964. # ----------------------
  965. # Check for linker boilerplate output or warnings with
  966. # the simple link test code.
  967. m4_defun([_LT_LINKER_BOILERPLATE],
  968. [m4_require([_LT_DECL_SED])dnl
  969. ac_outfile=conftest.$ac_objext
  970. echo "$lt_simple_link_test_code" >conftest.$ac_ext
  971. eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
  972. _lt_linker_boilerplate=`cat conftest.err`
  973. $RM -r conftest*
  974. ])# _LT_LINKER_BOILERPLATE
  975.  
  976. # _LT_REQUIRED_DARWIN_CHECKS
  977. # -------------------------
  978. m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
  979.   case $host_os in
  980.     rhapsody* | darwin*)
  981.     AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
  982.     AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
  983.     AC_CHECK_TOOL([LIPO], [lipo], [:])
  984.     AC_CHECK_TOOL([OTOOL], [otool], [:])
  985.     AC_CHECK_TOOL([OTOOL64], [otool64], [:])
  986.     _LT_DECL([], [DSYMUTIL], [1],
  987.       [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
  988.     _LT_DECL([], [NMEDIT], [1],
  989.       [Tool to change global to local symbols on Mac OS X])
  990.     _LT_DECL([], [LIPO], [1],
  991.       [Tool to manipulate fat objects and archives on Mac OS X])
  992.     _LT_DECL([], [OTOOL], [1],
  993.       [ldd/readelf like tool for Mach-O binaries on Mac OS X])
  994.     _LT_DECL([], [OTOOL64], [1],
  995.       [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
  996.  
  997.     AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
  998.       [lt_cv_apple_cc_single_mod=no
  999.       if test -z "$LT_MULTI_MODULE"; then
  1000.         # By default we will add the -single_module flag. You can override
  1001.         # by either setting the environment variable LT_MULTI_MODULE
  1002.         # non-empty at configure time, or by adding -multi_module to the
  1003.         # link flags.
  1004.         rm -rf libconftest.dylib*
  1005.         echo "int foo(void){return 1;}" > conftest.c
  1006.         echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
  1007. -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
  1008.         $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
  1009.           -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
  1010.         _lt_result=$?
  1011.         # If there is a non-empty error log, and "single_module"
  1012.         # appears in it, assume the flag caused a linker warning
  1013.         if test -s conftest.err && $GREP single_module conftest.err; then
  1014.           cat conftest.err >&AS_MESSAGE_LOG_FD
  1015.         # Otherwise, if the output was created with a 0 exit code from
  1016.         # the compiler, it worked.
  1017.         elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
  1018.           lt_cv_apple_cc_single_mod=yes
  1019.         else
  1020.           cat conftest.err >&AS_MESSAGE_LOG_FD
  1021.         fi
  1022.         rm -rf libconftest.dylib*
  1023.         rm -f conftest.*
  1024.       fi])
  1025.  
  1026.     AC_CACHE_CHECK([for -exported_symbols_list linker flag],
  1027.       [lt_cv_ld_exported_symbols_list],
  1028.       [lt_cv_ld_exported_symbols_list=no
  1029.       save_LDFLAGS=$LDFLAGS
  1030.       echo "_main" > conftest.sym
  1031.       LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
  1032.       AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
  1033.         [lt_cv_ld_exported_symbols_list=yes],
  1034.         [lt_cv_ld_exported_symbols_list=no])
  1035.         LDFLAGS=$save_LDFLAGS
  1036.     ])
  1037.  
  1038.     AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
  1039.       [lt_cv_ld_force_load=no
  1040.       cat > conftest.c << _LT_EOF
  1041. int forced_loaded() { return 2;}
  1042. _LT_EOF
  1043.       echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
  1044.       $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
  1045.       echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
  1046.       $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
  1047.       echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
  1048.       $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
  1049.       cat > conftest.c << _LT_EOF
  1050. int main() { return 0;}
  1051. _LT_EOF
  1052.       echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
  1053.       $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
  1054.       _lt_result=$?
  1055.       if test -s conftest.err && $GREP force_load conftest.err; then
  1056.         cat conftest.err >&AS_MESSAGE_LOG_FD
  1057.       elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
  1058.         lt_cv_ld_force_load=yes
  1059.       else
  1060.         cat conftest.err >&AS_MESSAGE_LOG_FD
  1061.       fi
  1062.         rm -f conftest.err libconftest.a conftest conftest.c
  1063.         rm -rf conftest.dSYM
  1064.     ])
  1065.     case $host_os in
  1066.     rhapsody* | darwin1.[[012]])
  1067.       _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
  1068.     darwin1.*)
  1069.       _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
  1070.     darwin*) # darwin 5.x on
  1071.       # if running on 10.5 or later, the deployment target defaults
  1072.       # to the OS version, if on x86, and 10.4, the deployment
  1073.       # target defaults to 10.4. Don't you love it?
  1074.       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
  1075.         10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
  1076.           _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
  1077.         10.[[012]][[,.]]*)
  1078.           _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
  1079.         10.*)
  1080.           _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
  1081.       esac
  1082.     ;;
  1083.   esac
  1084.     if test yes = "$lt_cv_apple_cc_single_mod"; then
  1085.       _lt_dar_single_mod='$single_module'
  1086.     fi
  1087.     if test yes = "$lt_cv_ld_exported_symbols_list"; then
  1088.       _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
  1089.     else
  1090.       _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
  1091.     fi
  1092.     if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
  1093.       _lt_dsymutil='~$DSYMUTIL $lib || :'
  1094.     else
  1095.       _lt_dsymutil=
  1096.     fi
  1097.     ;;
  1098.   esac
  1099. ])
  1100.  
  1101.  
  1102. # _LT_DARWIN_LINKER_FEATURES([TAG])
  1103. # ---------------------------------
  1104. # Checks for linker and compiler features on darwin
  1105. m4_defun([_LT_DARWIN_LINKER_FEATURES],
  1106. [
  1107.   m4_require([_LT_REQUIRED_DARWIN_CHECKS])
  1108.   _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  1109.   _LT_TAGVAR(hardcode_direct, $1)=no
  1110.   _LT_TAGVAR(hardcode_automatic, $1)=yes
  1111.   _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
  1112.   if test yes = "$lt_cv_ld_force_load"; then
  1113.     _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
  1114.     m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
  1115.                   [FC],  [_LT_TAGVAR(compiler_needs_object, $1)=yes])
  1116.   else
  1117.     _LT_TAGVAR(whole_archive_flag_spec, $1)=''
  1118.   fi
  1119.   _LT_TAGVAR(link_all_deplibs, $1)=yes
  1120.   _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
  1121.   case $cc_basename in
  1122.      ifort*|nagfor*) _lt_dar_can_shared=yes ;;
  1123.      *) _lt_dar_can_shared=$GCC ;;
  1124.   esac
  1125.   if test yes = "$_lt_dar_can_shared"; then
  1126.     output_verbose_link_cmd=func_echo_all
  1127.     _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
  1128.     _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
  1129.     _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
  1130.     _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
  1131.     m4_if([$1], [CXX],
  1132. [   if test yes != "$lt_cv_apple_cc_single_mod"; then
  1133.       _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
  1134.       _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
  1135.     fi
  1136. ],[])
  1137.   else
  1138.   _LT_TAGVAR(ld_shlibs, $1)=no
  1139.   fi
  1140. ])
  1141.  
  1142. # _LT_SYS_MODULE_PATH_AIX([TAGNAME])
  1143. # ----------------------------------
  1144. # Links a minimal program and checks the executable
  1145. # for the system default hardcoded library path. In most cases,
  1146. # this is /usr/lib:/lib, but when the MPI compilers are used
  1147. # the location of the communication and MPI libs are included too.
  1148. # If we don't find anything, use the default library path according
  1149. # to the aix ld manual.
  1150. # Store the results from the different compilers for each TAGNAME.
  1151. # Allow to override them for all tags through lt_cv_aix_libpath.
  1152. m4_defun([_LT_SYS_MODULE_PATH_AIX],
  1153. [m4_require([_LT_DECL_SED])dnl
  1154. if test set = "${lt_cv_aix_libpath+set}"; then
  1155.   aix_libpath=$lt_cv_aix_libpath
  1156. else
  1157.   AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
  1158.   [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
  1159.   lt_aix_libpath_sed='[
  1160.       /Import File Strings/,/^$/ {
  1161.           /^0/ {
  1162.               s/^0  *\([^ ]*\) *$/\1/
  1163.               p
  1164.           }
  1165.       }]'
  1166.   _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
  1167.   # Check for a 64-bit object if we didn't find anything.
  1168.   if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
  1169.     _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
  1170.   fi],[])
  1171.   if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
  1172.     _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
  1173.   fi
  1174.   ])
  1175.   aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
  1176. fi
  1177. ])# _LT_SYS_MODULE_PATH_AIX
  1178.  
  1179.  
  1180. # _LT_SHELL_INIT(ARG)
  1181. # -------------------
  1182. m4_define([_LT_SHELL_INIT],
  1183. [m4_divert_text([M4SH-INIT], [$1
  1184. ])])# _LT_SHELL_INIT
  1185.  
  1186.  
  1187.  
  1188. # _LT_PROG_ECHO_BACKSLASH
  1189. # -----------------------
  1190. # Find how we can fake an echo command that does not interpret backslash.
  1191. # In particular, with Autoconf 2.60 or later we add some code to the start
  1192. # of the generated configure script that will find a shell with a builtin
  1193. # printf (that we can use as an echo command).
  1194. m4_defun([_LT_PROG_ECHO_BACKSLASH],
  1195. [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
  1196. ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
  1197. ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  1198.  
  1199. AC_MSG_CHECKING([how to print strings])
  1200. # Test print first, because it will be a builtin if present.
  1201. if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
  1202.    test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
  1203.   ECHO='print -r --'
  1204. elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
  1205.   ECHO='printf %s\n'
  1206. else
  1207.   # Use this function as a fallback that always works.
  1208.   func_fallback_echo ()
  1209.   {
  1210.     eval 'cat <<_LTECHO_EOF
  1211. $[]1
  1212. _LTECHO_EOF'
  1213.   }
  1214.   ECHO='func_fallback_echo'
  1215. fi
  1216.  
  1217. # func_echo_all arg...
  1218. # Invoke $ECHO with all args, space-separated.
  1219. func_echo_all ()
  1220. {
  1221.     $ECHO "$*"
  1222. }
  1223.  
  1224. case $ECHO in
  1225.   printf*) AC_MSG_RESULT([printf]) ;;
  1226.   print*) AC_MSG_RESULT([print -r]) ;;
  1227.   *) AC_MSG_RESULT([cat]) ;;
  1228. esac
  1229.  
  1230. m4_ifdef([_AS_DETECT_SUGGESTED],
  1231. [_AS_DETECT_SUGGESTED([
  1232.   test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
  1233.     ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
  1234.     ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
  1235.     ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  1236.     PATH=/empty FPATH=/empty; export PATH FPATH
  1237.     test "X`printf %s $ECHO`" = "X$ECHO" \
  1238.       || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
  1239.  
  1240. _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
  1241. _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
  1242. ])# _LT_PROG_ECHO_BACKSLASH
  1243.  
  1244.  
  1245. # _LT_WITH_SYSROOT
  1246. # ----------------
  1247. AC_DEFUN([_LT_WITH_SYSROOT],
  1248. [AC_MSG_CHECKING([for sysroot])
  1249. AC_ARG_WITH([sysroot],
  1250. [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
  1251.   [Search for dependent libraries within DIR (or the compiler's sysroot
  1252.    if not specified).])],
  1253. [], [with_sysroot=no])
  1254.  
  1255. dnl lt_sysroot will always be passed unquoted.  We quote it here
  1256. dnl in case the user passed a directory name.
  1257. lt_sysroot=
  1258. case $with_sysroot in #(
  1259.  yes)
  1260.    if test yes = "$GCC"; then
  1261.      lt_sysroot=`$CC --print-sysroot 2>/dev/null`
  1262.    fi
  1263.    ;; #(
  1264.  /*)
  1265.    lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
  1266.    ;; #(
  1267.  no|'')
  1268.    ;; #(
  1269.  *)
  1270.    AC_MSG_RESULT([$with_sysroot])
  1271.    AC_MSG_ERROR([The sysroot must be an absolute path.])
  1272.    ;;
  1273. esac
  1274.  
  1275.  AC_MSG_RESULT([${lt_sysroot:-no}])
  1276. _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
  1277. [dependent libraries, and where our libraries should be installed.])])
  1278.  
  1279. # _LT_ENABLE_LOCK
  1280. # ---------------
  1281. m4_defun([_LT_ENABLE_LOCK],
  1282. [AC_ARG_ENABLE([libtool-lock],
  1283.   [AS_HELP_STRING([--disable-libtool-lock],
  1284.     [avoid locking (might break parallel builds)])])
  1285. test no = "$enable_libtool_lock" || enable_libtool_lock=yes
  1286.  
  1287. # Some flags need to be propagated to the compiler or linker for good
  1288. # libtool support.
  1289. case $host in
  1290. ia64-*-hpux*)
  1291.   # Find out what ABI is being produced by ac_compile, and set mode
  1292.   # options accordingly.
  1293.   echo 'int i;' > conftest.$ac_ext
  1294.   if AC_TRY_EVAL(ac_compile); then
  1295.     case `/usr/bin/file conftest.$ac_objext` in
  1296.       *ELF-32*)
  1297.         HPUX_IA64_MODE=32
  1298.         ;;
  1299.       *ELF-64*)
  1300.         HPUX_IA64_MODE=64
  1301.         ;;
  1302.     esac
  1303.   fi
  1304.   rm -rf conftest*
  1305.   ;;
  1306. *-*-irix6*)
  1307.   # Find out what ABI is being produced by ac_compile, and set linker
  1308.   # options accordingly.
  1309.   echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
  1310.   if AC_TRY_EVAL(ac_compile); then
  1311.     if test yes = "$lt_cv_prog_gnu_ld"; then
  1312.       case `/usr/bin/file conftest.$ac_objext` in
  1313.         *32-bit*)
  1314.           LD="${LD-ld} -melf32bsmip"
  1315.           ;;
  1316.         *N32*)
  1317.           LD="${LD-ld} -melf32bmipn32"
  1318.           ;;
  1319.         *64-bit*)
  1320.           LD="${LD-ld} -melf64bmip"
  1321.         ;;
  1322.       esac
  1323.     else
  1324.       case `/usr/bin/file conftest.$ac_objext` in
  1325.         *32-bit*)
  1326.           LD="${LD-ld} -32"
  1327.           ;;
  1328.         *N32*)
  1329.           LD="${LD-ld} -n32"
  1330.           ;;
  1331.         *64-bit*)
  1332.           LD="${LD-ld} -64"
  1333.           ;;
  1334.       esac
  1335.     fi
  1336.   fi
  1337.   rm -rf conftest*
  1338.   ;;
  1339.  
  1340. mips64*-*linux*)
  1341.   # Find out what ABI is being produced by ac_compile, and set linker
  1342.   # options accordingly.
  1343.   echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
  1344.   if AC_TRY_EVAL(ac_compile); then
  1345.     emul=elf
  1346.     case `/usr/bin/file conftest.$ac_objext` in
  1347.       *32-bit*)
  1348.         emul="${emul}32"
  1349.         ;;
  1350.       *64-bit*)
  1351.         emul="${emul}64"
  1352.         ;;
  1353.     esac
  1354.     case `/usr/bin/file conftest.$ac_objext` in
  1355.       *MSB*)
  1356.         emul="${emul}btsmip"
  1357.         ;;
  1358.       *LSB*)
  1359.         emul="${emul}ltsmip"
  1360.         ;;
  1361.     esac
  1362.     case `/usr/bin/file conftest.$ac_objext` in
  1363.       *N32*)
  1364.         emul="${emul}n32"
  1365.         ;;
  1366.     esac
  1367.     LD="${LD-ld} -m $emul"
  1368.   fi
  1369.   rm -rf conftest*
  1370.   ;;
  1371.  
  1372. x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
  1373. s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
  1374.   # Find out what ABI is being produced by ac_compile, and set linker
  1375.   # options accordingly.  Note that the listed cases only cover the
  1376.   # situations where additional linker options are needed (such as when
  1377.   # doing 32-bit compilation for a host where ld defaults to 64-bit, or
  1378.   # vice versa); the common cases where no linker options are needed do
  1379.   # not appear in the list.
  1380.   echo 'int i;' > conftest.$ac_ext
  1381.   if AC_TRY_EVAL(ac_compile); then
  1382.     case `/usr/bin/file conftest.o` in
  1383.       *32-bit*)
  1384.         case $host in
  1385.           x86_64-*kfreebsd*-gnu)
  1386.             LD="${LD-ld} -m elf_i386_fbsd"
  1387.             ;;
  1388.           x86_64-*linux*)
  1389.             case `/usr/bin/file conftest.o` in
  1390.               *x86-64*)
  1391.                 LD="${LD-ld} -m elf32_x86_64"
  1392.                 ;;
  1393.               *)
  1394.                 LD="${LD-ld} -m elf_i386"
  1395.                 ;;
  1396.             esac
  1397.             ;;
  1398.           powerpc64le-*linux*)
  1399.             LD="${LD-ld} -m elf32lppclinux"
  1400.             ;;
  1401.           powerpc64-*linux*)
  1402.             LD="${LD-ld} -m elf32ppclinux"
  1403.             ;;
  1404.           s390x-*linux*)
  1405.             LD="${LD-ld} -m elf_s390"
  1406.             ;;
  1407.           sparc64-*linux*)
  1408.             LD="${LD-ld} -m elf32_sparc"
  1409.             ;;
  1410.         esac
  1411.         ;;
  1412.       *64-bit*)
  1413.         case $host in
  1414.           x86_64-*kfreebsd*-gnu)
  1415.             LD="${LD-ld} -m elf_x86_64_fbsd"
  1416.             ;;
  1417.           x86_64-*linux*)
  1418.             LD="${LD-ld} -m elf_x86_64"
  1419.             ;;
  1420.           powerpcle-*linux*)
  1421.             LD="${LD-ld} -m elf64lppc"
  1422.             ;;
  1423.           powerpc-*linux*)
  1424.             LD="${LD-ld} -m elf64ppc"
  1425.             ;;
  1426.           s390*-*linux*|s390*-*tpf*)
  1427.             LD="${LD-ld} -m elf64_s390"
  1428.             ;;
  1429.           sparc*-*linux*)
  1430.             LD="${LD-ld} -m elf64_sparc"
  1431.             ;;
  1432.         esac
  1433.         ;;
  1434.     esac
  1435.   fi
  1436.   rm -rf conftest*
  1437.   ;;
  1438.  
  1439. *-*-sco3.2v5*)
  1440.   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
  1441.   SAVE_CFLAGS=$CFLAGS
  1442.   CFLAGS="$CFLAGS -belf"
  1443.   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
  1444.     [AC_LANG_PUSH(C)
  1445.      AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
  1446.      AC_LANG_POP])
  1447.   if test yes != "$lt_cv_cc_needs_belf"; then
  1448.     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
  1449.     CFLAGS=$SAVE_CFLAGS
  1450.   fi
  1451.   ;;
  1452. *-*solaris*)
  1453.   # Find out what ABI is being produced by ac_compile, and set linker
  1454.   # options accordingly.
  1455.   echo 'int i;' > conftest.$ac_ext
  1456.   if AC_TRY_EVAL(ac_compile); then
  1457.     case `/usr/bin/file conftest.o` in
  1458.     *64-bit*)
  1459.       case $lt_cv_prog_gnu_ld in
  1460.       yes*)
  1461.         case $host in
  1462.         i?86-*-solaris*|x86_64-*-solaris*)
  1463.           LD="${LD-ld} -m elf_x86_64"
  1464.           ;;
  1465.         sparc*-*-solaris*)
  1466.           LD="${LD-ld} -m elf64_sparc"
  1467.           ;;
  1468.         esac
  1469.         # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
  1470.         if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
  1471.           LD=${LD-ld}_sol2
  1472.         fi
  1473.         ;;
  1474.       *)
  1475.         if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
  1476.           LD="${LD-ld} -64"
  1477.         fi
  1478.         ;;
  1479.       esac
  1480.       ;;
  1481.     esac
  1482.   fi
  1483.   rm -rf conftest*
  1484.   ;;
  1485. esac
  1486.  
  1487. need_locks=$enable_libtool_lock
  1488. ])# _LT_ENABLE_LOCK
  1489.  
  1490.  
  1491. # _LT_PROG_AR
  1492. # -----------
  1493. m4_defun([_LT_PROG_AR],
  1494. [AC_CHECK_TOOLS(AR, [ar], false)
  1495. : ${AR=ar}
  1496. : ${AR_FLAGS=cru}
  1497. _LT_DECL([], [AR], [1], [The archiver])
  1498. _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
  1499.  
  1500. AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
  1501.   [lt_cv_ar_at_file=no
  1502.    AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
  1503.      [echo conftest.$ac_objext > conftest.lst
  1504.       lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
  1505.       AC_TRY_EVAL([lt_ar_try])
  1506.       if test 0 -eq "$ac_status"; then
  1507.         # Ensure the archiver fails upon bogus file names.
  1508.         rm -f conftest.$ac_objext libconftest.a
  1509.         AC_TRY_EVAL([lt_ar_try])
  1510.         if test 0 -ne "$ac_status"; then
  1511.           lt_cv_ar_at_file=@
  1512.         fi
  1513.       fi
  1514.       rm -f conftest.* libconftest.a
  1515.      ])
  1516.   ])
  1517.  
  1518. if test no = "$lt_cv_ar_at_file"; then
  1519.   archiver_list_spec=
  1520. else
  1521.   archiver_list_spec=$lt_cv_ar_at_file
  1522. fi
  1523. _LT_DECL([], [archiver_list_spec], [1],
  1524.   [How to feed a file listing to the archiver])
  1525. ])# _LT_PROG_AR
  1526.  
  1527.  
  1528. # _LT_CMD_OLD_ARCHIVE
  1529. # -------------------
  1530. m4_defun([_LT_CMD_OLD_ARCHIVE],
  1531. [_LT_PROG_AR
  1532.  
  1533. AC_CHECK_TOOL(STRIP, strip, :)
  1534. test -z "$STRIP" && STRIP=:
  1535. _LT_DECL([], [STRIP], [1], [A symbol stripping program])
  1536.  
  1537. AC_CHECK_TOOL(RANLIB, ranlib, :)
  1538. test -z "$RANLIB" && RANLIB=:
  1539. _LT_DECL([], [RANLIB], [1],
  1540.     [Commands used to install an old-style archive])
  1541.  
  1542. # Determine commands to create old-style static archives.
  1543. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
  1544. old_postinstall_cmds='chmod 644 $oldlib'
  1545. old_postuninstall_cmds=
  1546.  
  1547. if test -n "$RANLIB"; then
  1548.   case $host_os in
  1549.   bitrig* | openbsd*)
  1550.     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
  1551.     ;;
  1552.   *)
  1553.     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
  1554.     ;;
  1555.   esac
  1556.   old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
  1557. fi
  1558.  
  1559. case $host_os in
  1560.   darwin*)
  1561.     lock_old_archive_extraction=yes ;;
  1562.   *)
  1563.     lock_old_archive_extraction=no ;;
  1564. esac
  1565. _LT_DECL([], [old_postinstall_cmds], [2])
  1566. _LT_DECL([], [old_postuninstall_cmds], [2])
  1567. _LT_TAGDECL([], [old_archive_cmds], [2],
  1568.     [Commands used to build an old-style archive])
  1569. _LT_DECL([], [lock_old_archive_extraction], [0],
  1570.     [Whether to use a lock for old archive extraction])
  1571. ])# _LT_CMD_OLD_ARCHIVE
  1572.  
  1573.  
  1574. # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
  1575. #               [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
  1576. # ----------------------------------------------------------------
  1577. # Check whether the given compiler option works
  1578. AC_DEFUN([_LT_COMPILER_OPTION],
  1579. [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  1580. m4_require([_LT_DECL_SED])dnl
  1581. AC_CACHE_CHECK([$1], [$2],
  1582.   [$2=no
  1583.    m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
  1584.    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
  1585.    lt_compiler_flag="$3"  ## exclude from sc_useless_quotes_in_assignment
  1586.    # Insert the option either (1) after the last *FLAGS variable, or
  1587.    # (2) before a word containing "conftest.", or (3) at the end.
  1588.    # Note that $ac_compile itself does not contain backslashes and begins
  1589.    # with a dollar sign (not a hyphen), so the echo should work correctly.
  1590.    # The option is referenced via a variable to avoid confusing sed.
  1591.    lt_compile=`echo "$ac_compile" | $SED \
  1592.    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
  1593.    -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
  1594.    -e 's:$: $lt_compiler_flag:'`
  1595.    (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
  1596.    (eval "$lt_compile" 2>conftest.err)
  1597.    ac_status=$?
  1598.    cat conftest.err >&AS_MESSAGE_LOG_FD
  1599.    echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
  1600.    if (exit $ac_status) && test -s "$ac_outfile"; then
  1601.      # The compiler can only warn and ignore the option if not recognized
  1602.      # So say no if there are warnings other than the usual output.
  1603.      $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
  1604.      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
  1605.      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
  1606.        $2=yes
  1607.      fi
  1608.    fi
  1609.    $RM conftest*
  1610. ])
  1611.  
  1612. if test yes = "[$]$2"; then
  1613.     m4_if([$5], , :, [$5])
  1614. else
  1615.     m4_if([$6], , :, [$6])
  1616. fi
  1617. ])# _LT_COMPILER_OPTION
  1618.  
  1619. # Old name:
  1620. AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
  1621. dnl aclocal-1.4 backwards compatibility:
  1622. dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
  1623.  
  1624.  
  1625. # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
  1626. #                  [ACTION-SUCCESS], [ACTION-FAILURE])
  1627. # ----------------------------------------------------
  1628. # Check whether the given linker option works
  1629. AC_DEFUN([_LT_LINKER_OPTION],
  1630. [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  1631. m4_require([_LT_DECL_SED])dnl
  1632. AC_CACHE_CHECK([$1], [$2],
  1633.   [$2=no
  1634.    save_LDFLAGS=$LDFLAGS
  1635.    LDFLAGS="$LDFLAGS $3"
  1636.    echo "$lt_simple_link_test_code" > conftest.$ac_ext
  1637.    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
  1638.      # The linker can only warn and ignore the option if not recognized
  1639.      # So say no if there are warnings
  1640.      if test -s conftest.err; then
  1641.        # Append any errors to the config.log.
  1642.        cat conftest.err 1>&AS_MESSAGE_LOG_FD
  1643.        $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
  1644.        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
  1645.        if diff conftest.exp conftest.er2 >/dev/null; then
  1646.          $2=yes
  1647.        fi
  1648.      else
  1649.        $2=yes
  1650.      fi
  1651.    fi
  1652.    $RM -r conftest*
  1653.    LDFLAGS=$save_LDFLAGS
  1654. ])
  1655.  
  1656. if test yes = "[$]$2"; then
  1657.     m4_if([$4], , :, [$4])
  1658. else
  1659.     m4_if([$5], , :, [$5])
  1660. fi
  1661. ])# _LT_LINKER_OPTION
  1662.  
  1663. # Old name:
  1664. AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
  1665. dnl aclocal-1.4 backwards compatibility:
  1666. dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
  1667.  
  1668.  
  1669. # LT_CMD_MAX_LEN
  1670. #---------------
  1671. AC_DEFUN([LT_CMD_MAX_LEN],
  1672. [AC_REQUIRE([AC_CANONICAL_HOST])dnl
  1673. # find the maximum length of command line arguments
  1674. AC_MSG_CHECKING([the maximum length of command line arguments])
  1675. AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
  1676.   i=0
  1677.   teststring=ABCD
  1678.  
  1679.   case $build_os in
  1680.   msdosdjgpp*)
  1681.     # On DJGPP, this test can blow up pretty badly due to problems in libc
  1682.     # (any single argument exceeding 2000 bytes causes a buffer overrun
  1683.     # during glob expansion).  Even if it were fixed, the result of this
  1684.     # check would be larger than it should be.
  1685.     lt_cv_sys_max_cmd_len=12288;    # 12K is about right
  1686.     ;;
  1687.  
  1688.   gnu*)
  1689.     # Under GNU Hurd, this test is not required because there is
  1690.     # no limit to the length of command line arguments.
  1691.     # Libtool will interpret -1 as no limit whatsoever
  1692.     lt_cv_sys_max_cmd_len=-1;
  1693.     ;;
  1694.  
  1695.   cygwin* | mingw* | cegcc*)
  1696.     # On Win9x/ME, this test blows up -- it succeeds, but takes
  1697.     # about 5 minutes as the teststring grows exponentially.
  1698.     # Worse, since 9x/ME are not pre-emptively multitasking,
  1699.     # you end up with a "frozen" computer, even though with patience
  1700.     # the test eventually succeeds (with a max line length of 256k).
  1701.     # Instead, let's just punt: use the minimum linelength reported by
  1702.     # all of the supported platforms: 8192 (on NT/2K/XP).
  1703.     lt_cv_sys_max_cmd_len=8192;
  1704.     ;;
  1705.  
  1706.   mint*)
  1707.     # On MiNT this can take a long time and run out of memory.
  1708.     lt_cv_sys_max_cmd_len=8192;
  1709.     ;;
  1710.  
  1711.   amigaos*)
  1712.     # On AmigaOS with pdksh, this test takes hours, literally.
  1713.     # So we just punt and use a minimum line length of 8192.
  1714.     lt_cv_sys_max_cmd_len=8192;
  1715.     ;;
  1716.  
  1717.   bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
  1718.     # This has been around since 386BSD, at least.  Likely further.
  1719.     if test -x /sbin/sysctl; then
  1720.       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
  1721.     elif test -x /usr/sbin/sysctl; then
  1722.       lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
  1723.     else
  1724.       lt_cv_sys_max_cmd_len=65536       # usable default for all BSDs
  1725.     fi
  1726.     # And add a safety zone
  1727.     lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
  1728.     lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
  1729.     ;;
  1730.  
  1731.   interix*)
  1732.     # We know the value 262144 and hardcode it with a safety zone (like BSD)
  1733.     lt_cv_sys_max_cmd_len=196608
  1734.     ;;
  1735.  
  1736.   os2*)
  1737.     # The test takes a long time on OS/2.
  1738.     lt_cv_sys_max_cmd_len=8192
  1739.     ;;
  1740.  
  1741.   osf*)
  1742.     # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
  1743.     # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
  1744.     # nice to cause kernel panics so lets avoid the loop below.
  1745.     # First set a reasonable default.
  1746.     lt_cv_sys_max_cmd_len=16384
  1747.     #
  1748.     if test -x /sbin/sysconfig; then
  1749.       case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
  1750.         *1*) lt_cv_sys_max_cmd_len=-1 ;;
  1751.       esac
  1752.     fi
  1753.     ;;
  1754.   sco3.2v5*)
  1755.     lt_cv_sys_max_cmd_len=102400
  1756.     ;;
  1757.   sysv5* | sco5v6* | sysv4.2uw2*)
  1758.     kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
  1759.     if test -n "$kargmax"; then
  1760.       lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[         ]]//'`
  1761.     else
  1762.       lt_cv_sys_max_cmd_len=32768
  1763.     fi
  1764.     ;;
  1765.   *)
  1766.     lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
  1767.     if test -n "$lt_cv_sys_max_cmd_len" && \
  1768.        test undefined != "$lt_cv_sys_max_cmd_len"; then
  1769.       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
  1770.       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
  1771.     else
  1772.       # Make teststring a little bigger before we do anything with it.
  1773.       # a 1K string should be a reasonable start.
  1774.       for i in 1 2 3 4 5 6 7 8; do
  1775.         teststring=$teststring$teststring
  1776.       done
  1777.       SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
  1778.       # If test is not a shell built-in, we'll probably end up computing a
  1779.       # maximum length that is only half of the actual maximum length, but
  1780.       # we can't tell.
  1781.       while { test X`env echo "$teststring$teststring" 2>/dev/null` \
  1782.                  = "X$teststring$teststring"; } >/dev/null 2>&1 &&
  1783.               test 17 != "$i" # 1/2 MB should be enough
  1784.       do
  1785.         i=`expr $i + 1`
  1786.         teststring=$teststring$teststring
  1787.       done
  1788.       # Only check the string length outside the loop.
  1789.       lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
  1790.       teststring=
  1791.       # Add a significant safety factor because C++ compilers can tack on
  1792.       # massive amounts of additional arguments before passing them to the
  1793.       # linker.  It appears as though 1/2 is a usable value.
  1794.       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
  1795.     fi
  1796.     ;;
  1797.   esac
  1798. ])
  1799. if test -n "$lt_cv_sys_max_cmd_len"; then
  1800.   AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
  1801. else
  1802.   AC_MSG_RESULT(none)
  1803. fi
  1804. max_cmd_len=$lt_cv_sys_max_cmd_len
  1805. _LT_DECL([], [max_cmd_len], [0],
  1806.     [What is the maximum length of a command?])
  1807. ])# LT_CMD_MAX_LEN
  1808.  
  1809. # Old name:
  1810. AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
  1811. dnl aclocal-1.4 backwards compatibility:
  1812. dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
  1813.  
  1814.  
  1815. # _LT_HEADER_DLFCN
  1816. # ----------------
  1817. m4_defun([_LT_HEADER_DLFCN],
  1818. [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
  1819. ])# _LT_HEADER_DLFCN
  1820.  
  1821.  
  1822. # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
  1823. #                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
  1824. # ----------------------------------------------------------------
  1825. m4_defun([_LT_TRY_DLOPEN_SELF],
  1826. [m4_require([_LT_HEADER_DLFCN])dnl
  1827. if test yes = "$cross_compiling"; then :
  1828.   [$4]
  1829. else
  1830.   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
  1831.   lt_status=$lt_dlunknown
  1832.   cat > conftest.$ac_ext <<_LT_EOF
  1833. [#line $LINENO "configure"
  1834. #include "confdefs.h"
  1835.  
  1836. #if HAVE_DLFCN_H
  1837. #include <dlfcn.h>
  1838. #endif
  1839.  
  1840. #include <stdio.h>
  1841.  
  1842. #ifdef RTLD_GLOBAL
  1843. #  define LT_DLGLOBAL           RTLD_GLOBAL
  1844. #else
  1845. #  ifdef DL_GLOBAL
  1846. #    define LT_DLGLOBAL         DL_GLOBAL
  1847. #  else
  1848. #    define LT_DLGLOBAL         0
  1849. #  endif
  1850. #endif
  1851.  
  1852. /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
  1853.    find out it does not work in some platform. */
  1854. #ifndef LT_DLLAZY_OR_NOW
  1855. #  ifdef RTLD_LAZY
  1856. #    define LT_DLLAZY_OR_NOW            RTLD_LAZY
  1857. #  else
  1858. #    ifdef DL_LAZY
  1859. #      define LT_DLLAZY_OR_NOW          DL_LAZY
  1860. #    else
  1861. #      ifdef RTLD_NOW
  1862. #        define LT_DLLAZY_OR_NOW        RTLD_NOW
  1863. #      else
  1864. #        ifdef DL_NOW
  1865. #          define LT_DLLAZY_OR_NOW      DL_NOW
  1866. #        else
  1867. #          define LT_DLLAZY_OR_NOW      0
  1868. #        endif
  1869. #      endif
  1870. #    endif
  1871. #  endif
  1872. #endif
  1873.  
  1874. /* When -fvisibility=hidden is used, assume the code has been annotated
  1875.    correspondingly for the symbols needed.  */
  1876. #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
  1877. int fnord () __attribute__((visibility("default")));
  1878. #endif
  1879.  
  1880. int fnord () { return 42; }
  1881. int main ()
  1882. {
  1883.   void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
  1884.   int status = $lt_dlunknown;
  1885.  
  1886.   if (self)
  1887.     {
  1888.       if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
  1889.       else
  1890.         {
  1891.           if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
  1892.           else puts (dlerror ());
  1893.         }
  1894.       /* dlclose (self); */
  1895.     }
  1896.   else
  1897.     puts (dlerror ());
  1898.  
  1899.   return status;
  1900. }]
  1901. _LT_EOF
  1902.   if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
  1903.     (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
  1904.     lt_status=$?
  1905.     case x$lt_status in
  1906.       x$lt_dlno_uscore) $1 ;;
  1907.       x$lt_dlneed_uscore) $2 ;;
  1908.       x$lt_dlunknown|x*) $3 ;;
  1909.     esac
  1910.   else :
  1911.     # compilation failed
  1912.     $3
  1913.   fi
  1914. fi
  1915. rm -fr conftest*
  1916. ])# _LT_TRY_DLOPEN_SELF
  1917.  
  1918.  
  1919. # LT_SYS_DLOPEN_SELF
  1920. # ------------------
  1921. AC_DEFUN([LT_SYS_DLOPEN_SELF],
  1922. [m4_require([_LT_HEADER_DLFCN])dnl
  1923. if test yes != "$enable_dlopen"; then
  1924.   enable_dlopen=unknown
  1925.   enable_dlopen_self=unknown
  1926.   enable_dlopen_self_static=unknown
  1927. else
  1928.   lt_cv_dlopen=no
  1929.   lt_cv_dlopen_libs=
  1930.  
  1931.   case $host_os in
  1932.   beos*)
  1933.     lt_cv_dlopen=load_add_on
  1934.     lt_cv_dlopen_libs=
  1935.     lt_cv_dlopen_self=yes
  1936.     ;;
  1937.  
  1938.   mingw* | pw32* | cegcc*)
  1939.     lt_cv_dlopen=LoadLibrary
  1940.     lt_cv_dlopen_libs=
  1941.     ;;
  1942.  
  1943.   cygwin*)
  1944.     lt_cv_dlopen=dlopen
  1945.     lt_cv_dlopen_libs=
  1946.     ;;
  1947.  
  1948.   darwin*)
  1949.     # if libdl is installed we need to link against it
  1950.     AC_CHECK_LIB([dl], [dlopen],
  1951.                 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
  1952.     lt_cv_dlopen=dyld
  1953.     lt_cv_dlopen_libs=
  1954.     lt_cv_dlopen_self=yes
  1955.     ])
  1956.     ;;
  1957.  
  1958.   tpf*)
  1959.     # Don't try to run any link tests for TPF.  We know it's impossible
  1960.     # because TPF is a cross-compiler, and we know how we open DSOs.
  1961.     lt_cv_dlopen=dlopen
  1962.     lt_cv_dlopen_libs=
  1963.     lt_cv_dlopen_self=no
  1964.     ;;
  1965.  
  1966.   *)
  1967.     AC_CHECK_FUNC([shl_load],
  1968.           [lt_cv_dlopen=shl_load],
  1969.       [AC_CHECK_LIB([dld], [shl_load],
  1970.             [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
  1971.         [AC_CHECK_FUNC([dlopen],
  1972.               [lt_cv_dlopen=dlopen],
  1973.           [AC_CHECK_LIB([dl], [dlopen],
  1974.                 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
  1975.             [AC_CHECK_LIB([svld], [dlopen],
  1976.                   [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
  1977.               [AC_CHECK_LIB([dld], [dld_link],
  1978.                     [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
  1979.               ])
  1980.             ])
  1981.           ])
  1982.         ])
  1983.       ])
  1984.     ;;
  1985.   esac
  1986.  
  1987.   if test no = "$lt_cv_dlopen"; then
  1988.     enable_dlopen=no
  1989.   else
  1990.     enable_dlopen=yes
  1991.   fi
  1992.  
  1993.   case $lt_cv_dlopen in
  1994.   dlopen)
  1995.     save_CPPFLAGS=$CPPFLAGS
  1996.     test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
  1997.  
  1998.     save_LDFLAGS=$LDFLAGS
  1999.     wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
  2000.  
  2001.     save_LIBS=$LIBS
  2002.     LIBS="$lt_cv_dlopen_libs $LIBS"
  2003.  
  2004.     AC_CACHE_CHECK([whether a program can dlopen itself],
  2005.           lt_cv_dlopen_self, [dnl
  2006.           _LT_TRY_DLOPEN_SELF(
  2007.             lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
  2008.             lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
  2009.     ])
  2010.  
  2011.     if test yes = "$lt_cv_dlopen_self"; then
  2012.       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
  2013.       AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
  2014.           lt_cv_dlopen_self_static, [dnl
  2015.           _LT_TRY_DLOPEN_SELF(
  2016.             lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
  2017.             lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
  2018.       ])
  2019.     fi
  2020.  
  2021.     CPPFLAGS=$save_CPPFLAGS
  2022.     LDFLAGS=$save_LDFLAGS
  2023.     LIBS=$save_LIBS
  2024.     ;;
  2025.   esac
  2026.  
  2027.   case $lt_cv_dlopen_self in
  2028.   yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
  2029.   *) enable_dlopen_self=unknown ;;
  2030.   esac
  2031.  
  2032.   case $lt_cv_dlopen_self_static in
  2033.   yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
  2034.   *) enable_dlopen_self_static=unknown ;;
  2035.   esac
  2036. fi
  2037. _LT_DECL([dlopen_support], [enable_dlopen], [0],
  2038.          [Whether dlopen is supported])
  2039. _LT_DECL([dlopen_self], [enable_dlopen_self], [0],
  2040.          [Whether dlopen of programs is supported])
  2041. _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
  2042.          [Whether dlopen of statically linked programs is supported])
  2043. ])# LT_SYS_DLOPEN_SELF
  2044.  
  2045. # Old name:
  2046. AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
  2047. dnl aclocal-1.4 backwards compatibility:
  2048. dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
  2049.  
  2050.  
  2051. # _LT_COMPILER_C_O([TAGNAME])
  2052. # ---------------------------
  2053. # Check to see if options -c and -o are simultaneously supported by compiler.
  2054. # This macro does not hard code the compiler like AC_PROG_CC_C_O.
  2055. m4_defun([_LT_COMPILER_C_O],
  2056. [m4_require([_LT_DECL_SED])dnl
  2057. m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  2058. m4_require([_LT_TAG_COMPILER])dnl
  2059. AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
  2060.   [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
  2061.   [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
  2062.    $RM -r conftest 2>/dev/null
  2063.    mkdir conftest
  2064.    cd conftest
  2065.    mkdir out
  2066.    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
  2067.  
  2068.    lt_compiler_flag="-o out/conftest2.$ac_objext"
  2069.    # Insert the option either (1) after the last *FLAGS variable, or
  2070.    # (2) before a word containing "conftest.", or (3) at the end.
  2071.    # Note that $ac_compile itself does not contain backslashes and begins
  2072.    # with a dollar sign (not a hyphen), so the echo should work correctly.
  2073.    lt_compile=`echo "$ac_compile" | $SED \
  2074.    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
  2075.    -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
  2076.    -e 's:$: $lt_compiler_flag:'`
  2077.    (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
  2078.    (eval "$lt_compile" 2>out/conftest.err)
  2079.    ac_status=$?
  2080.    cat out/conftest.err >&AS_MESSAGE_LOG_FD
  2081.    echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
  2082.    if (exit $ac_status) && test -s out/conftest2.$ac_objext
  2083.    then
  2084.      # The compiler can only warn and ignore the option if not recognized
  2085.      # So say no if there are warnings
  2086.      $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
  2087.      $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
  2088.      if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
  2089.        _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
  2090.      fi
  2091.    fi
  2092.    chmod u+w . 2>&AS_MESSAGE_LOG_FD
  2093.    $RM conftest*
  2094.    # SGI C++ compiler will create directory out/ii_files/ for
  2095.    # template instantiation
  2096.    test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
  2097.    $RM out/* && rmdir out
  2098.    cd ..
  2099.    $RM -r conftest
  2100.    $RM conftest*
  2101. ])
  2102. _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
  2103.         [Does compiler simultaneously support -c and -o options?])
  2104. ])# _LT_COMPILER_C_O
  2105.  
  2106.  
  2107. # _LT_COMPILER_FILE_LOCKS([TAGNAME])
  2108. # ----------------------------------
  2109. # Check to see if we can do hard links to lock some files if needed
  2110. m4_defun([_LT_COMPILER_FILE_LOCKS],
  2111. [m4_require([_LT_ENABLE_LOCK])dnl
  2112. m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  2113. _LT_COMPILER_C_O([$1])
  2114.  
  2115. hard_links=nottested
  2116. if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
  2117.   # do not overwrite the value of need_locks provided by the user
  2118.   AC_MSG_CHECKING([if we can lock with hard links])
  2119.   hard_links=yes
  2120.   $RM conftest*
  2121.   ln conftest.a conftest.b 2>/dev/null && hard_links=no
  2122.   touch conftest.a
  2123.   ln conftest.a conftest.b 2>&5 || hard_links=no
  2124.   ln conftest.a conftest.b 2>/dev/null && hard_links=no
  2125.   AC_MSG_RESULT([$hard_links])
  2126.   if test no = "$hard_links"; then
  2127.     AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
  2128.     need_locks=warn
  2129.   fi
  2130. else
  2131.   need_locks=no
  2132. fi
  2133. _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
  2134. ])# _LT_COMPILER_FILE_LOCKS
  2135.  
  2136.  
  2137. # _LT_CHECK_OBJDIR
  2138. # ----------------
  2139. m4_defun([_LT_CHECK_OBJDIR],
  2140. [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
  2141. [rm -f .libs 2>/dev/null
  2142. mkdir .libs 2>/dev/null
  2143. if test -d .libs; then
  2144.   lt_cv_objdir=.libs
  2145. else
  2146.   # MS-DOS does not allow filenames that begin with a dot.
  2147.   lt_cv_objdir=_libs
  2148. fi
  2149. rmdir .libs 2>/dev/null])
  2150. objdir=$lt_cv_objdir
  2151. _LT_DECL([], [objdir], [0],
  2152.          [The name of the directory that contains temporary libtool files])dnl
  2153. m4_pattern_allow([LT_OBJDIR])dnl
  2154. AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
  2155.   [Define to the sub-directory where libtool stores uninstalled libraries.])
  2156. ])# _LT_CHECK_OBJDIR
  2157.  
  2158.  
  2159. # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
  2160. # --------------------------------------
  2161. # Check hardcoding attributes.
  2162. m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
  2163. [AC_MSG_CHECKING([how to hardcode library paths into programs])
  2164. _LT_TAGVAR(hardcode_action, $1)=
  2165. if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
  2166.    test -n "$_LT_TAGVAR(runpath_var, $1)" ||
  2167.    test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
  2168.  
  2169.   # We can hardcode non-existent directories.
  2170.   if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
  2171.      # If the only mechanism to avoid hardcoding is shlibpath_var, we
  2172.      # have to relink, otherwise we might link with an installed library
  2173.      # when we should be linking with a yet-to-be-installed one
  2174.      ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
  2175.      test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
  2176.     # Linking always hardcodes the temporary library directory.
  2177.     _LT_TAGVAR(hardcode_action, $1)=relink
  2178.   else
  2179.     # We can link without hardcoding, and we can hardcode nonexisting dirs.
  2180.     _LT_TAGVAR(hardcode_action, $1)=immediate
  2181.   fi
  2182. else
  2183.   # We cannot hardcode anything, or else we can only hardcode existing
  2184.   # directories.
  2185.   _LT_TAGVAR(hardcode_action, $1)=unsupported
  2186. fi
  2187. AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
  2188.  
  2189. if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
  2190.    test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
  2191.   # Fast installation is not supported
  2192.   enable_fast_install=no
  2193. elif test yes = "$shlibpath_overrides_runpath" ||
  2194.      test no = "$enable_shared"; then
  2195.   # Fast installation is not necessary
  2196.   enable_fast_install=needless
  2197. fi
  2198. _LT_TAGDECL([], [hardcode_action], [0],
  2199.     [How to hardcode a shared library path into an executable])
  2200. ])# _LT_LINKER_HARDCODE_LIBPATH
  2201.  
  2202.  
  2203. # _LT_CMD_STRIPLIB
  2204. # ----------------
  2205. m4_defun([_LT_CMD_STRIPLIB],
  2206. [m4_require([_LT_DECL_EGREP])
  2207. striplib=
  2208. old_striplib=
  2209. AC_MSG_CHECKING([whether stripping libraries is possible])
  2210. if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
  2211.   test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
  2212.   test -z "$striplib" && striplib="$STRIP --strip-unneeded"
  2213.   AC_MSG_RESULT([yes])
  2214. else
  2215. # FIXME - insert some real tests, host_os isn't really good enough
  2216.   case $host_os in
  2217.   darwin*)
  2218.     if test -n "$STRIP"; then
  2219.       striplib="$STRIP -x"
  2220.       old_striplib="$STRIP -S"
  2221.       AC_MSG_RESULT([yes])
  2222.     else
  2223.       AC_MSG_RESULT([no])
  2224.     fi
  2225.     ;;
  2226.   *)
  2227.     AC_MSG_RESULT([no])
  2228.     ;;
  2229.   esac
  2230. fi
  2231. _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
  2232. _LT_DECL([], [striplib], [1])
  2233. ])# _LT_CMD_STRIPLIB
  2234.  
  2235.  
  2236. # _LT_PREPARE_MUNGE_PATH_LIST
  2237. # ---------------------------
  2238. # Make sure func_munge_path_list() is defined correctly.
  2239. m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
  2240. [[# func_munge_path_list VARIABLE PATH
  2241. # -----------------------------------
  2242. # VARIABLE is name of variable containing _space_ separated list of
  2243. # directories to be munged by the contents of PATH, which is string
  2244. # having a format:
  2245. # "DIR[:DIR]:"
  2246. #       string "DIR[ DIR]" will be prepended to VARIABLE
  2247. # ":DIR[:DIR]"
  2248. #       string "DIR[ DIR]" will be appended to VARIABLE
  2249. # "DIRP[:DIRP]::[DIRA:]DIRA"
  2250. #       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
  2251. #       "DIRA[ DIRA]" will be appended to VARIABLE
  2252. # "DIR[:DIR]"
  2253. #       VARIABLE will be replaced by "DIR[ DIR]"
  2254. func_munge_path_list ()
  2255. {
  2256.     case x@S|@2 in
  2257.     x)
  2258.         ;;
  2259.     *:)
  2260.         eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
  2261.         ;;
  2262.     x:*)
  2263.         eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
  2264.         ;;
  2265.     *::*)
  2266.         eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
  2267.         eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
  2268.         ;;
  2269.     *)
  2270.         eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
  2271.         ;;
  2272.     esac
  2273. }
  2274. ]])# _LT_PREPARE_PATH_LIST
  2275.  
  2276.  
  2277. # _LT_SYS_DYNAMIC_LINKER([TAG])
  2278. # -----------------------------
  2279. # PORTME Fill in your ld.so characteristics
  2280. m4_defun([_LT_SYS_DYNAMIC_LINKER],
  2281. [AC_REQUIRE([AC_CANONICAL_HOST])dnl
  2282. m4_require([_LT_DECL_EGREP])dnl
  2283. m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  2284. m4_require([_LT_DECL_OBJDUMP])dnl
  2285. m4_require([_LT_DECL_SED])dnl
  2286. m4_require([_LT_CHECK_SHELL_FEATURES])dnl
  2287. m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
  2288. AC_MSG_CHECKING([dynamic linker characteristics])
  2289. m4_if([$1],
  2290.         [], [
  2291. if test yes = "$GCC"; then
  2292.   case $host_os in
  2293.     darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
  2294.     *) lt_awk_arg='/^libraries:/' ;;
  2295.   esac
  2296.   case $host_os in
  2297.     mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
  2298.     *) lt_sed_strip_eq='s|=/|/|g' ;;
  2299.   esac
  2300.   lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
  2301.   case $lt_search_path_spec in
  2302.   *\;*)
  2303.     # if the path contains ";" then we assume it to be the separator
  2304.     # otherwise default to the standard path separator (i.e. ":") - it is
  2305.     # assumed that no part of a normal pathname contains ";" but that should
  2306.     # okay in the real world where ";" in dirpaths is itself problematic.
  2307.     lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
  2308.     ;;
  2309.   *)
  2310.     lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
  2311.     ;;
  2312.   esac
  2313.   # Ok, now we have the path, separated by spaces, we can step through it
  2314.   # and add multilib dir if necessary...
  2315.   lt_tmp_lt_search_path_spec=
  2316.   lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
  2317.   # ...but if some path component already ends with the multilib dir we assume
  2318.   # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
  2319.   case "$lt_multi_os_dir; $lt_search_path_spec " in
  2320.   "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
  2321.     lt_multi_os_dir=
  2322.     ;;
  2323.   esac
  2324.   for lt_sys_path in $lt_search_path_spec; do
  2325.     if test -d "$lt_sys_path$lt_multi_os_dir"; then
  2326.       lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
  2327.     elif test -n "$lt_multi_os_dir"; then
  2328.       test -d "$lt_sys_path" && \
  2329.         lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
  2330.     fi
  2331.   done
  2332.   lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
  2333. BEGIN {RS = " "; FS = "/|\n";} {
  2334.   lt_foo = "";
  2335.   lt_count = 0;
  2336.   for (lt_i = NF; lt_i > 0; lt_i--) {
  2337.     if ($lt_i != "" && $lt_i != ".") {
  2338.       if ($lt_i == "..") {
  2339.         lt_count++;
  2340.       } else {
  2341.         if (lt_count == 0) {
  2342.           lt_foo = "/" $lt_i lt_foo;
  2343.         } else {
  2344.           lt_count--;
  2345.         }
  2346.       }
  2347.     }
  2348.   }
  2349.   if (lt_foo != "") { lt_freq[[lt_foo]]++; }
  2350.   if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
  2351. }'`
  2352.   # AWK program above erroneously prepends '/' to C:/dos/paths
  2353.   # for these hosts.
  2354.   case $host_os in
  2355.     mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
  2356.       $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
  2357.   esac
  2358.   sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
  2359. else
  2360.   sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
  2361. fi])
  2362. library_names_spec=
  2363. libname_spec='lib$name'
  2364. soname_spec=
  2365. shrext_cmds=.so
  2366. postinstall_cmds=
  2367. postuninstall_cmds=
  2368. finish_cmds=
  2369. finish_eval=
  2370. shlibpath_var=
  2371. shlibpath_overrides_runpath=unknown
  2372. version_type=none
  2373. dynamic_linker="$host_os ld.so"
  2374. sys_lib_dlsearch_path_spec="/lib /usr/lib"
  2375. need_lib_prefix=unknown
  2376. hardcode_into_libs=no
  2377.  
  2378. # when you set need_version to no, make sure it does not cause -set_version
  2379. # flags to be left without arguments
  2380. need_version=unknown
  2381.  
  2382. AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
  2383. [User-defined run-time library search path.])
  2384.  
  2385. case $host_os in
  2386. aix3*)
  2387.   version_type=linux # correct to gnu/linux during the next big refactor
  2388.   library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
  2389.   shlibpath_var=LIBPATH
  2390.  
  2391.   # AIX 3 has no versioning support, so we append a major version to the name.
  2392.   soname_spec='$libname$release$shared_ext$major'
  2393.   ;;
  2394.  
  2395. aix[[4-9]]*)
  2396.   version_type=linux # correct to gnu/linux during the next big refactor
  2397.   need_lib_prefix=no
  2398.   need_version=no
  2399.   hardcode_into_libs=yes
  2400.   if test ia64 = "$host_cpu"; then
  2401.     # AIX 5 supports IA64
  2402.     library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
  2403.     shlibpath_var=LD_LIBRARY_PATH
  2404.   else
  2405.     # With GCC up to 2.95.x, collect2 would create an import file
  2406.     # for dependence libraries.  The import file would start with
  2407.     # the line '#! .'.  This would cause the generated library to
  2408.     # depend on '.', always an invalid library.  This was fixed in
  2409.     # development snapshots of GCC prior to 3.0.
  2410.     case $host_os in
  2411.       aix4 | aix4.[[01]] | aix4.[[01]].*)
  2412.       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
  2413.            echo ' yes '
  2414.            echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
  2415.         :
  2416.       else
  2417.         can_build_shared=no
  2418.       fi
  2419.       ;;
  2420.     esac
  2421.     # Using Import Files as archive members, it is possible to support
  2422.     # filename-based versioning of shared library archives on AIX. While
  2423.     # this would work for both with and without runtime linking, it will
  2424.     # prevent static linking of such archives. So we do filename-based
  2425.     # shared library versioning with .so extension only, which is used
  2426.     # when both runtime linking and shared linking is enabled.
  2427.     # Unfortunately, runtime linking may impact performance, so we do
  2428.     # not want this to be the default eventually. Also, we use the
  2429.     # versioned .so libs for executables only if there is the -brtl
  2430.     # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
  2431.     # To allow for filename-based versioning support, we need to create
  2432.     # libNAME.so.V as an archive file, containing:
  2433.     # *) an Import File, referring to the versioned filename of the
  2434.     #    archive as well as the shared archive member, telling the
  2435.     #    bitwidth (32 or 64) of that shared object, and providing the
  2436.     #    list of exported symbols of that shared object, eventually
  2437.     #    decorated with the 'weak' keyword
  2438.     # *) the shared object with the F_LOADONLY flag set, to really avoid
  2439.     #    it being seen by the linker.
  2440.     # At run time we better use the real file rather than another symlink,
  2441.     # but for link time we create the symlink libNAME.so -> libNAME.so.V
  2442.  
  2443.     case $with_aix_soname,$aix_use_runtimelinking in
  2444.     # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
  2445.     # soname into executable. Probably we can add versioning support to
  2446.     # collect2, so additional links can be useful in future.
  2447.     aix,yes) # traditional libtool
  2448.       dynamic_linker='AIX unversionable lib.so'
  2449.       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
  2450.       # instead of lib<name>.a to let people know that these are not
  2451.       # typical AIX shared libraries.
  2452.       library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2453.       ;;
  2454.     aix,no) # traditional AIX only
  2455.       dynamic_linker='AIX lib.a[(]lib.so.V[)]'
  2456.       # We preserve .a as extension for shared libraries through AIX4.2
  2457.       # and later when we are not doing run time linking.
  2458.       library_names_spec='$libname$release.a $libname.a'
  2459.       soname_spec='$libname$release$shared_ext$major'
  2460.       ;;
  2461.     svr4,*) # full svr4 only
  2462.       dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
  2463.       library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
  2464.       # We do not specify a path in Import Files, so LIBPATH fires.
  2465.       shlibpath_overrides_runpath=yes
  2466.       ;;
  2467.     *,yes) # both, prefer svr4
  2468.       dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
  2469.       library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
  2470.       # unpreferred sharedlib libNAME.a needs extra handling
  2471.       postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
  2472.       postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
  2473.       # We do not specify a path in Import Files, so LIBPATH fires.
  2474.       shlibpath_overrides_runpath=yes
  2475.       ;;
  2476.     *,no) # both, prefer aix
  2477.       dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
  2478.       library_names_spec='$libname$release.a $libname.a'
  2479.       soname_spec='$libname$release$shared_ext$major'
  2480.       # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
  2481.       postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
  2482.       postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
  2483.       ;;
  2484.     esac
  2485.     shlibpath_var=LIBPATH
  2486.   fi
  2487.   ;;
  2488.  
  2489. amigaos*)
  2490.   case $host_cpu in
  2491.   powerpc)
  2492.     # Since July 2007 AmigaOS4 officially supports .so libraries.
  2493.     # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
  2494.     library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2495.     ;;
  2496.   m68k)
  2497.     library_names_spec='$libname.ixlibrary $libname.a'
  2498.     # Create ${libname}_ixlibrary.a entries in /sys/libs.
  2499.     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $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'
  2500.     ;;
  2501.   esac
  2502.   ;;
  2503.  
  2504. beos*)
  2505.   library_names_spec='$libname$shared_ext'
  2506.   dynamic_linker="$host_os ld.so"
  2507.   shlibpath_var=LIBRARY_PATH
  2508.   ;;
  2509.  
  2510. bsdi[[45]]*)
  2511.   version_type=linux # correct to gnu/linux during the next big refactor
  2512.   need_version=no
  2513.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2514.   soname_spec='$libname$release$shared_ext$major'
  2515.   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
  2516.   shlibpath_var=LD_LIBRARY_PATH
  2517.   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
  2518.   sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
  2519.   # the default ld.so.conf also contains /usr/contrib/lib and
  2520.   # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
  2521.   # libtool to hard-code these into programs
  2522.   ;;
  2523.  
  2524. cygwin* | mingw* | pw32* | cegcc*)
  2525.   version_type=windows
  2526.   shrext_cmds=.dll
  2527.   need_version=no
  2528.   need_lib_prefix=no
  2529.  
  2530.   case $GCC,$cc_basename in
  2531.   yes,*)
  2532.     # gcc
  2533.     library_names_spec='$libname.dll.a'
  2534.     # DLL is installed to $(libdir)/../bin by postinstall_cmds
  2535.     postinstall_cmds='base_file=`basename \$file`~
  2536.       dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
  2537.       dldir=$destdir/`dirname \$dlpath`~
  2538.       test -d \$dldir || mkdir -p \$dldir~
  2539.       $install_prog $dir/$dlname \$dldir/$dlname~
  2540.       chmod a+x \$dldir/$dlname~
  2541.       if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
  2542.         eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
  2543.       fi'
  2544.     postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
  2545.       dlpath=$dir/\$dldll~
  2546.        $RM \$dlpath'
  2547.     shlibpath_overrides_runpath=yes
  2548.  
  2549.     case $host_os in
  2550.     cygwin*)
  2551.       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
  2552.       soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
  2553. m4_if([$1], [],[
  2554.       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
  2555.       ;;
  2556.     mingw* | cegcc*)
  2557.       # MinGW DLLs use traditional 'lib' prefix
  2558.       soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
  2559.       ;;
  2560.     pw32*)
  2561.       # pw32 DLLs use 'pw' prefix rather than 'lib'
  2562.       library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
  2563.       ;;
  2564.     esac
  2565.     dynamic_linker='Win32 ld.exe'
  2566.     ;;
  2567.  
  2568.   *,cl*)
  2569.     # Native MSVC
  2570.     libname_spec='$name'
  2571.     soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
  2572.     library_names_spec='$libname.dll.lib'
  2573.  
  2574.     case $build_os in
  2575.     mingw*)
  2576.       sys_lib_search_path_spec=
  2577.       lt_save_ifs=$IFS
  2578.       IFS=';'
  2579.       for lt_path in $LIB
  2580.       do
  2581.         IFS=$lt_save_ifs
  2582.         # Let DOS variable expansion print the short 8.3 style file name.
  2583.         lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
  2584.         sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
  2585.       done
  2586.       IFS=$lt_save_ifs
  2587.       # Convert to MSYS style.
  2588.       sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
  2589.       ;;
  2590.     cygwin*)
  2591.       # Convert to unix form, then to dos form, then back to unix form
  2592.       # but this time dos style (no spaces!) so that the unix form looks
  2593.       # like /cygdrive/c/PROGRA~1:/cygdr...
  2594.       sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
  2595.       sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
  2596.       sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
  2597.       ;;
  2598.     *)
  2599.       sys_lib_search_path_spec=$LIB
  2600.       if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
  2601.         # It is most probably a Windows format PATH.
  2602.         sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
  2603.       else
  2604.         sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
  2605.       fi
  2606.       # FIXME: find the short name or the path components, as spaces are
  2607.       # common. (e.g. "Program Files" -> "PROGRA~1")
  2608.       ;;
  2609.     esac
  2610.  
  2611.     # DLL is installed to $(libdir)/../bin by postinstall_cmds
  2612.     postinstall_cmds='base_file=`basename \$file`~
  2613.       dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
  2614.       dldir=$destdir/`dirname \$dlpath`~
  2615.       test -d \$dldir || mkdir -p \$dldir~
  2616.       $install_prog $dir/$dlname \$dldir/$dlname'
  2617.     postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
  2618.       dlpath=$dir/\$dldll~
  2619.        $RM \$dlpath'
  2620.     shlibpath_overrides_runpath=yes
  2621.     dynamic_linker='Win32 link.exe'
  2622.     ;;
  2623.  
  2624.   *)
  2625.     # Assume MSVC wrapper
  2626.     library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
  2627.     dynamic_linker='Win32 ld.exe'
  2628.     ;;
  2629.   esac
  2630.   # FIXME: first we should search . and the directory the executable is in
  2631.   shlibpath_var=PATH
  2632.   ;;
  2633.  
  2634. darwin* | rhapsody*)
  2635.   dynamic_linker="$host_os dyld"
  2636.   version_type=darwin
  2637.   need_lib_prefix=no
  2638.   need_version=no
  2639.   library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
  2640.   soname_spec='$libname$release$major$shared_ext'
  2641.   shlibpath_overrides_runpath=yes
  2642.   shlibpath_var=DYLD_LIBRARY_PATH
  2643.   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
  2644. m4_if([$1], [],[
  2645.   sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
  2646.   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
  2647.   ;;
  2648.  
  2649. dgux*)
  2650.   version_type=linux # correct to gnu/linux during the next big refactor
  2651.   need_lib_prefix=no
  2652.   need_version=no
  2653.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2654.   soname_spec='$libname$release$shared_ext$major'
  2655.   shlibpath_var=LD_LIBRARY_PATH
  2656.   ;;
  2657.  
  2658. freebsd* | dragonfly*)
  2659.   # DragonFly does not have aout.  When/if they implement a new
  2660.   # versioning mechanism, adjust this.
  2661.   if test -x /usr/bin/objformat; then
  2662.     objformat=`/usr/bin/objformat`
  2663.   else
  2664.     case $host_os in
  2665.     freebsd[[23]].*) objformat=aout ;;
  2666.     *) objformat=elf ;;
  2667.     esac
  2668.   fi
  2669.   version_type=freebsd-$objformat
  2670.   case $version_type in
  2671.     freebsd-elf*)
  2672.       library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2673.       soname_spec='$libname$release$shared_ext$major'
  2674.       need_version=no
  2675.       need_lib_prefix=no
  2676.       ;;
  2677.     freebsd-*)
  2678.       library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
  2679.       need_version=yes
  2680.       ;;
  2681.   esac
  2682.   shlibpath_var=LD_LIBRARY_PATH
  2683.   case $host_os in
  2684.   freebsd2.*)
  2685.     shlibpath_overrides_runpath=yes
  2686.     ;;
  2687.   freebsd3.[[01]]* | freebsdelf3.[[01]]*)
  2688.     shlibpath_overrides_runpath=yes
  2689.     hardcode_into_libs=yes
  2690.     ;;
  2691.   freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
  2692.   freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
  2693.     shlibpath_overrides_runpath=no
  2694.     hardcode_into_libs=yes
  2695.     ;;
  2696.   *) # from 4.6 on, and DragonFly
  2697.     shlibpath_overrides_runpath=yes
  2698.     hardcode_into_libs=yes
  2699.     ;;
  2700.   esac
  2701.   ;;
  2702.  
  2703. haiku*)
  2704.   version_type=linux # correct to gnu/linux during the next big refactor
  2705.   need_lib_prefix=no
  2706.   need_version=no
  2707.   dynamic_linker="$host_os runtime_loader"
  2708.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2709.   soname_spec='$libname$release$shared_ext$major'
  2710.   shlibpath_var=LIBRARY_PATH
  2711.   shlibpath_overrides_runpath=no
  2712.   sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
  2713.   hardcode_into_libs=yes
  2714.   ;;
  2715.  
  2716. hpux9* | hpux10* | hpux11*)
  2717.   # Give a soname corresponding to the major version so that dld.sl refuses to
  2718.   # link against other versions.
  2719.   version_type=sunos
  2720.   need_lib_prefix=no
  2721.   need_version=no
  2722.   case $host_cpu in
  2723.   ia64*)
  2724.     shrext_cmds='.so'
  2725.     hardcode_into_libs=yes
  2726.     dynamic_linker="$host_os dld.so"
  2727.     shlibpath_var=LD_LIBRARY_PATH
  2728.     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
  2729.     library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2730.     soname_spec='$libname$release$shared_ext$major'
  2731.     if test 32 = "$HPUX_IA64_MODE"; then
  2732.       sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
  2733.       sys_lib_dlsearch_path_spec=/usr/lib/hpux32
  2734.     else
  2735.       sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
  2736.       sys_lib_dlsearch_path_spec=/usr/lib/hpux64
  2737.     fi
  2738.     ;;
  2739.   hppa*64*)
  2740.     shrext_cmds='.sl'
  2741.     hardcode_into_libs=yes
  2742.     dynamic_linker="$host_os dld.sl"
  2743.     shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
  2744.     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
  2745.     library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2746.     soname_spec='$libname$release$shared_ext$major'
  2747.     sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
  2748.     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
  2749.     ;;
  2750.   *)
  2751.     shrext_cmds='.sl'
  2752.     dynamic_linker="$host_os dld.sl"
  2753.     shlibpath_var=SHLIB_PATH
  2754.     shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
  2755.     library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2756.     soname_spec='$libname$release$shared_ext$major'
  2757.     ;;
  2758.   esac
  2759.   # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
  2760.   postinstall_cmds='chmod 555 $lib'
  2761.   # or fails outright, so override atomically:
  2762.   install_override_mode=555
  2763.   ;;
  2764.  
  2765. interix[[3-9]]*)
  2766.   version_type=linux # correct to gnu/linux during the next big refactor
  2767.   need_lib_prefix=no
  2768.   need_version=no
  2769.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2770.   soname_spec='$libname$release$shared_ext$major'
  2771.   dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
  2772.   shlibpath_var=LD_LIBRARY_PATH
  2773.   shlibpath_overrides_runpath=no
  2774.   hardcode_into_libs=yes
  2775.   ;;
  2776.  
  2777. irix5* | irix6* | nonstopux*)
  2778.   case $host_os in
  2779.     nonstopux*) version_type=nonstopux ;;
  2780.     *)
  2781.         if test yes = "$lt_cv_prog_gnu_ld"; then
  2782.                 version_type=linux # correct to gnu/linux during the next big refactor
  2783.         else
  2784.                 version_type=irix
  2785.         fi ;;
  2786.   esac
  2787.   need_lib_prefix=no
  2788.   need_version=no
  2789.   soname_spec='$libname$release$shared_ext$major'
  2790.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
  2791.   case $host_os in
  2792.   irix5* | nonstopux*)
  2793.     libsuff= shlibsuff=
  2794.     ;;
  2795.   *)
  2796.     case $LD in # libtool.m4 will add one of these switches to LD
  2797.     *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
  2798.       libsuff= shlibsuff= libmagic=32-bit;;
  2799.     *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
  2800.       libsuff=32 shlibsuff=N32 libmagic=N32;;
  2801.     *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
  2802.       libsuff=64 shlibsuff=64 libmagic=64-bit;;
  2803.     *) libsuff= shlibsuff= libmagic=never-match;;
  2804.     esac
  2805.     ;;
  2806.   esac
  2807.   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
  2808.   shlibpath_overrides_runpath=no
  2809.   sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
  2810.   sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
  2811.   hardcode_into_libs=yes
  2812.   ;;
  2813.  
  2814. # No shared lib support for Linux oldld, aout, or coff.
  2815. linux*oldld* | linux*aout* | linux*coff*)
  2816.   dynamic_linker=no
  2817.   ;;
  2818.  
  2819. linux*android*)
  2820.   version_type=none # Android doesn't support versioned libraries.
  2821.   need_lib_prefix=no
  2822.   need_version=no
  2823.   library_names_spec='$libname$release$shared_ext'
  2824.   soname_spec='$libname$release$shared_ext'
  2825.   finish_cmds=
  2826.   shlibpath_var=LD_LIBRARY_PATH
  2827.   shlibpath_overrides_runpath=yes
  2828.  
  2829.   # This implies no fast_install, which is unacceptable.
  2830.   # Some rework will be needed to allow for fast_install
  2831.   # before this can be enabled.
  2832.   hardcode_into_libs=yes
  2833.  
  2834.   dynamic_linker='Android linker'
  2835.   # Don't embed -rpath directories since the linker doesn't support them.
  2836.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  2837.   ;;
  2838.  
  2839. # This must be glibc/ELF.
  2840. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
  2841.   version_type=linux # correct to gnu/linux during the next big refactor
  2842.   need_lib_prefix=no
  2843.   need_version=no
  2844.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2845.   soname_spec='$libname$release$shared_ext$major'
  2846.   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
  2847.   shlibpath_var=LD_LIBRARY_PATH
  2848.   shlibpath_overrides_runpath=no
  2849.  
  2850.   # Some binutils ld are patched to set DT_RUNPATH
  2851.   AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
  2852.     [lt_cv_shlibpath_overrides_runpath=no
  2853.     save_LDFLAGS=$LDFLAGS
  2854.     save_libdir=$libdir
  2855.     eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
  2856.          LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
  2857.     AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
  2858.       [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
  2859.          [lt_cv_shlibpath_overrides_runpath=yes])])
  2860.     LDFLAGS=$save_LDFLAGS
  2861.     libdir=$save_libdir
  2862.     ])
  2863.   shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
  2864.  
  2865.   # This implies no fast_install, which is unacceptable.
  2866.   # Some rework will be needed to allow for fast_install
  2867.   # before this can be enabled.
  2868.   hardcode_into_libs=yes
  2869.  
  2870.   # Ideally, we could use ldconfig to report *all* directores which are
  2871.   # searched for libraries, however this is still not possible.  Aside from not
  2872.   # being certain /sbin/ldconfig is available, command
  2873.   # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
  2874.   # even though it is searched at run-time.  Try to do the best guess by
  2875.   # appending ld.so.conf contents (and includes) to the search path.
  2876.   if test -f /etc/ld.so.conf; then
  2877.     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[   ]*hwcap[        ]/d;s/[:,      ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
  2878.     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
  2879.   fi
  2880.  
  2881.   # We used to test for /lib/ld.so.1 and disable shared libraries on
  2882.   # powerpc, because MkLinux only supported shared libraries with the
  2883.   # GNU dynamic linker.  Since this was broken with cross compilers,
  2884.   # most powerpc-linux boxes support dynamic linking these days and
  2885.   # people can always --disable-shared, the test was removed, and we
  2886.   # assume the GNU/Linux dynamic linker is in use.
  2887.   dynamic_linker='GNU/Linux ld.so'
  2888.   ;;
  2889.  
  2890. netbsd*)
  2891.   version_type=sunos
  2892.   need_lib_prefix=no
  2893.   need_version=no
  2894.   if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  2895.     library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
  2896.     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  2897.     dynamic_linker='NetBSD (a.out) ld.so'
  2898.   else
  2899.     library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2900.     soname_spec='$libname$release$shared_ext$major'
  2901.     dynamic_linker='NetBSD ld.elf_so'
  2902.   fi
  2903.   shlibpath_var=LD_LIBRARY_PATH
  2904.   shlibpath_overrides_runpath=yes
  2905.   hardcode_into_libs=yes
  2906.   ;;
  2907.  
  2908. newsos6)
  2909.   version_type=linux # correct to gnu/linux during the next big refactor
  2910.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2911.   shlibpath_var=LD_LIBRARY_PATH
  2912.   shlibpath_overrides_runpath=yes
  2913.   ;;
  2914.  
  2915. *nto* | *qnx*)
  2916.   version_type=qnx
  2917.   need_lib_prefix=no
  2918.   need_version=no
  2919.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2920.   soname_spec='$libname$release$shared_ext$major'
  2921.   shlibpath_var=LD_LIBRARY_PATH
  2922.   shlibpath_overrides_runpath=no
  2923.   hardcode_into_libs=yes
  2924.   dynamic_linker='ldqnx.so'
  2925.   ;;
  2926.  
  2927. openbsd* | bitrig*)
  2928.   version_type=sunos
  2929.   sys_lib_dlsearch_path_spec=/usr/lib
  2930.   need_lib_prefix=no
  2931.   if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
  2932.     need_version=no
  2933.   else
  2934.     need_version=yes
  2935.   fi
  2936.   library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
  2937.   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  2938.   shlibpath_var=LD_LIBRARY_PATH
  2939.   shlibpath_overrides_runpath=yes
  2940.   ;;
  2941.  
  2942. os2*)
  2943.   libname_spec='$name'
  2944.   version_type=windows
  2945.   shrext_cmds=.dll
  2946.   need_version=no
  2947.   need_lib_prefix=no
  2948.   # OS/2 can only load a DLL with a base name of 8 characters or less.
  2949.   soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
  2950.     v=$($ECHO $release$versuffix | tr -d .-);
  2951.     n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
  2952.     $ECHO $n$v`$shared_ext'
  2953.   library_names_spec='${libname}_dll.$libext'
  2954.   dynamic_linker='OS/2 ld.exe'
  2955.   shlibpath_var=BEGINLIBPATH
  2956.   sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
  2957.   sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
  2958.   postinstall_cmds='base_file=`basename \$file`~
  2959.     dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
  2960.     dldir=$destdir/`dirname \$dlpath`~
  2961.     test -d \$dldir || mkdir -p \$dldir~
  2962.     $install_prog $dir/$dlname \$dldir/$dlname~
  2963.     chmod a+x \$dldir/$dlname~
  2964.     if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
  2965.       eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
  2966.     fi'
  2967.   postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
  2968.     dlpath=$dir/\$dldll~
  2969.     $RM \$dlpath'
  2970.   ;;
  2971.  
  2972. osf3* | osf4* | osf5*)
  2973.   version_type=osf
  2974.   need_lib_prefix=no
  2975.   need_version=no
  2976.   soname_spec='$libname$release$shared_ext$major'
  2977.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2978.   shlibpath_var=LD_LIBRARY_PATH
  2979.   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
  2980.   sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
  2981.   ;;
  2982.  
  2983. rdos*)
  2984.   dynamic_linker=no
  2985.   ;;
  2986.  
  2987. solaris*)
  2988.   version_type=linux # correct to gnu/linux during the next big refactor
  2989.   need_lib_prefix=no
  2990.   need_version=no
  2991.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  2992.   soname_spec='$libname$release$shared_ext$major'
  2993.   shlibpath_var=LD_LIBRARY_PATH
  2994.   shlibpath_overrides_runpath=yes
  2995.   hardcode_into_libs=yes
  2996.   # ldd complains unless libraries are executable
  2997.   postinstall_cmds='chmod +x $lib'
  2998.   ;;
  2999.  
  3000. sunos4*)
  3001.   version_type=sunos
  3002.   library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
  3003.   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
  3004.   shlibpath_var=LD_LIBRARY_PATH
  3005.   shlibpath_overrides_runpath=yes
  3006.   if test yes = "$with_gnu_ld"; then
  3007.     need_lib_prefix=no
  3008.   fi
  3009.   need_version=yes
  3010.   ;;
  3011.  
  3012. sysv4 | sysv4.3*)
  3013.   version_type=linux # correct to gnu/linux during the next big refactor
  3014.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  3015.   soname_spec='$libname$release$shared_ext$major'
  3016.   shlibpath_var=LD_LIBRARY_PATH
  3017.   case $host_vendor in
  3018.     sni)
  3019.       shlibpath_overrides_runpath=no
  3020.       need_lib_prefix=no
  3021.       runpath_var=LD_RUN_PATH
  3022.       ;;
  3023.     siemens)
  3024.       need_lib_prefix=no
  3025.       ;;
  3026.     motorola)
  3027.       need_lib_prefix=no
  3028.       need_version=no
  3029.       shlibpath_overrides_runpath=no
  3030.       sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
  3031.       ;;
  3032.   esac
  3033.   ;;
  3034.  
  3035. sysv4*MP*)
  3036.   if test -d /usr/nec; then
  3037.     version_type=linux # correct to gnu/linux during the next big refactor
  3038.     library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
  3039.     soname_spec='$libname$shared_ext.$major'
  3040.     shlibpath_var=LD_LIBRARY_PATH
  3041.   fi
  3042.   ;;
  3043.  
  3044. sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
  3045.   version_type=sco
  3046.   need_lib_prefix=no
  3047.   need_version=no
  3048.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
  3049.   soname_spec='$libname$release$shared_ext$major'
  3050.   shlibpath_var=LD_LIBRARY_PATH
  3051.   shlibpath_overrides_runpath=yes
  3052.   hardcode_into_libs=yes
  3053.   if test yes = "$with_gnu_ld"; then
  3054.     sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
  3055.   else
  3056.     sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
  3057.     case $host_os in
  3058.       sco3.2v5*)
  3059.         sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
  3060.         ;;
  3061.     esac
  3062.   fi
  3063.   sys_lib_dlsearch_path_spec='/usr/lib'
  3064.   ;;
  3065.  
  3066. tpf*)
  3067.   # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
  3068.   version_type=linux # correct to gnu/linux during the next big refactor
  3069.   need_lib_prefix=no
  3070.   need_version=no
  3071.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  3072.   shlibpath_var=LD_LIBRARY_PATH
  3073.   shlibpath_overrides_runpath=no
  3074.   hardcode_into_libs=yes
  3075.   ;;
  3076.  
  3077. uts4*)
  3078.   version_type=linux # correct to gnu/linux during the next big refactor
  3079.   library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
  3080.   soname_spec='$libname$release$shared_ext$major'
  3081.   shlibpath_var=LD_LIBRARY_PATH
  3082.   ;;
  3083.  
  3084. *)
  3085.   dynamic_linker=no
  3086.   ;;
  3087. esac
  3088. AC_MSG_RESULT([$dynamic_linker])
  3089. test no = "$dynamic_linker" && can_build_shared=no
  3090.  
  3091. variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
  3092. if test yes = "$GCC"; then
  3093.   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
  3094. fi
  3095.  
  3096. if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
  3097.   sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
  3098. fi
  3099.  
  3100. if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
  3101.   sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
  3102. fi
  3103.  
  3104. # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
  3105. configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
  3106.  
  3107. # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
  3108. func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
  3109.  
  3110. # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
  3111. configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
  3112.  
  3113. _LT_DECL([], [variables_saved_for_relink], [1],
  3114.     [Variables whose values should be saved in libtool wrapper scripts and
  3115.     restored at link time])
  3116. _LT_DECL([], [need_lib_prefix], [0],
  3117.     [Do we need the "lib" prefix for modules?])
  3118. _LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
  3119. _LT_DECL([], [version_type], [0], [Library versioning type])
  3120. _LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
  3121. _LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
  3122. _LT_DECL([], [shlibpath_overrides_runpath], [0],
  3123.     [Is shlibpath searched before the hard-coded library search path?])
  3124. _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
  3125. _LT_DECL([], [library_names_spec], [1],
  3126.     [[List of archive names.  First name is the real one, the rest are links.
  3127.     The last name is the one that the linker finds with -lNAME]])
  3128. _LT_DECL([], [soname_spec], [1],
  3129.     [[The coded name of the library, if different from the real name]])
  3130. _LT_DECL([], [install_override_mode], [1],
  3131.     [Permission mode override for installation of shared libraries])
  3132. _LT_DECL([], [postinstall_cmds], [2],
  3133.     [Command to use after installation of a shared archive])
  3134. _LT_DECL([], [postuninstall_cmds], [2],
  3135.     [Command to use after uninstallation of a shared archive])
  3136. _LT_DECL([], [finish_cmds], [2],
  3137.     [Commands used to finish a libtool library installation in a directory])
  3138. _LT_DECL([], [finish_eval], [1],
  3139.     [[As "finish_cmds", except a single script fragment to be evaled but
  3140.     not shown]])
  3141. _LT_DECL([], [hardcode_into_libs], [0],
  3142.     [Whether we should hardcode library paths into libraries])
  3143. _LT_DECL([], [sys_lib_search_path_spec], [2],
  3144.     [Compile-time system search path for libraries])
  3145. _LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
  3146.     [Detected run-time system search path for libraries])
  3147. _LT_DECL([], [configure_time_lt_sys_library_path], [2],
  3148.     [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
  3149. ])# _LT_SYS_DYNAMIC_LINKER
  3150.  
  3151.  
  3152. # _LT_PATH_TOOL_PREFIX(TOOL)
  3153. # --------------------------
  3154. # find a file program that can recognize shared library
  3155. AC_DEFUN([_LT_PATH_TOOL_PREFIX],
  3156. [m4_require([_LT_DECL_EGREP])dnl
  3157. AC_MSG_CHECKING([for $1])
  3158. AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
  3159. [case $MAGIC_CMD in
  3160. [[\\/*] |  ?:[\\/]*])
  3161.   lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
  3162.   ;;
  3163. *)
  3164.   lt_save_MAGIC_CMD=$MAGIC_CMD
  3165.   lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
  3166. dnl $ac_dummy forces splitting on constant user-supplied paths.
  3167. dnl POSIX.2 word splitting is done only on the output of word expansions,
  3168. dnl not every word.  This closes a longstanding sh security hole.
  3169.   ac_dummy="m4_if([$2], , $PATH, [$2])"
  3170.   for ac_dir in $ac_dummy; do
  3171.     IFS=$lt_save_ifs
  3172.     test -z "$ac_dir" && ac_dir=.
  3173.     if test -f "$ac_dir/$1"; then
  3174.       lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
  3175.       if test -n "$file_magic_test_file"; then
  3176.         case $deplibs_check_method in
  3177.         "file_magic "*)
  3178.           file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
  3179.           MAGIC_CMD=$lt_cv_path_MAGIC_CMD
  3180.           if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
  3181.             $EGREP "$file_magic_regex" > /dev/null; then
  3182.             :
  3183.           else
  3184.             cat <<_LT_EOF 1>&2
  3185.  
  3186. *** Warning: the command libtool uses to detect shared libraries,
  3187. *** $file_magic_cmd, produces output that libtool cannot recognize.
  3188. *** The result is that libtool may fail to recognize shared libraries
  3189. *** as such.  This will affect the creation of libtool libraries that
  3190. *** depend on shared libraries, but programs linked with such libtool
  3191. *** libraries will work regardless of this problem.  Nevertheless, you
  3192. *** may want to report the problem to your system manager and/or to
  3193. *** bug-libtool@gnu.org
  3194.  
  3195. _LT_EOF
  3196.           fi ;;
  3197.         esac
  3198.       fi
  3199.       break
  3200.     fi
  3201.   done
  3202.   IFS=$lt_save_ifs
  3203.   MAGIC_CMD=$lt_save_MAGIC_CMD
  3204.   ;;
  3205. esac])
  3206. MAGIC_CMD=$lt_cv_path_MAGIC_CMD
  3207. if test -n "$MAGIC_CMD"; then
  3208.   AC_MSG_RESULT($MAGIC_CMD)
  3209. else
  3210.   AC_MSG_RESULT(no)
  3211. fi
  3212. _LT_DECL([], [MAGIC_CMD], [0],
  3213.          [Used to examine libraries when file_magic_cmd begins with "file"])dnl
  3214. ])# _LT_PATH_TOOL_PREFIX
  3215.  
  3216. # Old name:
  3217. AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
  3218. dnl aclocal-1.4 backwards compatibility:
  3219. dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
  3220.  
  3221.  
  3222. # _LT_PATH_MAGIC
  3223. # --------------
  3224. # find a file program that can recognize a shared library
  3225. m4_defun([_LT_PATH_MAGIC],
  3226. [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
  3227. if test -z "$lt_cv_path_MAGIC_CMD"; then
  3228.   if test -n "$ac_tool_prefix"; then
  3229.     _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
  3230.   else
  3231.     MAGIC_CMD=:
  3232.   fi
  3233. fi
  3234. ])# _LT_PATH_MAGIC
  3235.  
  3236.  
  3237. # LT_PATH_LD
  3238. # ----------
  3239. # find the pathname to the GNU or non-GNU linker
  3240. AC_DEFUN([LT_PATH_LD],
  3241. [AC_REQUIRE([AC_PROG_CC])dnl
  3242. AC_REQUIRE([AC_CANONICAL_HOST])dnl
  3243. AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  3244. m4_require([_LT_DECL_SED])dnl
  3245. m4_require([_LT_DECL_EGREP])dnl
  3246. m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
  3247.  
  3248. AC_ARG_WITH([gnu-ld],
  3249.     [AS_HELP_STRING([--with-gnu-ld],
  3250.         [assume the C compiler uses GNU ld @<:@default=no@:>@])],
  3251.     [test no = "$withval" || with_gnu_ld=yes],
  3252.     [with_gnu_ld=no])dnl
  3253.  
  3254. ac_prog=ld
  3255. if test yes = "$GCC"; then
  3256.   # Check if gcc -print-prog-name=ld gives a path.
  3257.   AC_MSG_CHECKING([for ld used by $CC])
  3258.   case $host in
  3259.   *-*-mingw*)
  3260.     # gcc leaves a trailing carriage return, which upsets mingw
  3261.     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
  3262.   *)
  3263.     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
  3264.   esac
  3265.   case $ac_prog in
  3266.     # Accept absolute paths.
  3267.     [[\\/]]* | ?:[[\\/]]*)
  3268.       re_direlt='/[[^/]][[^/]]*/\.\./'
  3269.       # Canonicalize the pathname of ld
  3270.       ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
  3271.       while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
  3272.         ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
  3273.       done
  3274.       test -z "$LD" && LD=$ac_prog
  3275.       ;;
  3276.   "")
  3277.     # If it fails, then pretend we aren't using GCC.
  3278.     ac_prog=ld
  3279.     ;;
  3280.   *)
  3281.     # If it is relative, then search for the first ld in PATH.
  3282.     with_gnu_ld=unknown
  3283.     ;;
  3284.   esac
  3285. elif test yes = "$with_gnu_ld"; then
  3286.   AC_MSG_CHECKING([for GNU ld])
  3287. else
  3288.   AC_MSG_CHECKING([for non-GNU ld])
  3289. fi
  3290. AC_CACHE_VAL(lt_cv_path_LD,
  3291. [if test -z "$LD"; then
  3292.   lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
  3293.   for ac_dir in $PATH; do
  3294.     IFS=$lt_save_ifs
  3295.     test -z "$ac_dir" && ac_dir=.
  3296.     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
  3297.       lt_cv_path_LD=$ac_dir/$ac_prog
  3298.       # Check to see if the program is GNU ld.  I'd rather use --version,
  3299.       # but apparently some variants of GNU ld only accept -v.
  3300.       # Break only if it was the GNU/non-GNU ld that we prefer.
  3301.       case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
  3302.       *GNU* | *'with BFD'*)
  3303.         test no != "$with_gnu_ld" && break
  3304.         ;;
  3305.       *)
  3306.         test yes != "$with_gnu_ld" && break
  3307.         ;;
  3308.       esac
  3309.     fi
  3310.   done
  3311.   IFS=$lt_save_ifs
  3312. else
  3313.   lt_cv_path_LD=$LD # Let the user override the test with a path.
  3314. fi])
  3315. LD=$lt_cv_path_LD
  3316. if test -n "$LD"; then
  3317.   AC_MSG_RESULT($LD)
  3318. else
  3319.   AC_MSG_RESULT(no)
  3320. fi
  3321. test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
  3322. _LT_PATH_LD_GNU
  3323. AC_SUBST([LD])
  3324.  
  3325. _LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
  3326. ])# LT_PATH_LD
  3327.  
  3328. # Old names:
  3329. AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
  3330. AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
  3331. dnl aclocal-1.4 backwards compatibility:
  3332. dnl AC_DEFUN([AM_PROG_LD], [])
  3333. dnl AC_DEFUN([AC_PROG_LD], [])
  3334.  
  3335.  
  3336. # _LT_PATH_LD_GNU
  3337. #- --------------
  3338. m4_defun([_LT_PATH_LD_GNU],
  3339. [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
  3340. [# I'd rather use --version here, but apparently some GNU lds only accept -v.
  3341. case `$LD -v 2>&1 </dev/null` in
  3342. *GNU* | *'with BFD'*)
  3343.   lt_cv_prog_gnu_ld=yes
  3344.   ;;
  3345. *)
  3346.   lt_cv_prog_gnu_ld=no
  3347.   ;;
  3348. esac])
  3349. with_gnu_ld=$lt_cv_prog_gnu_ld
  3350. ])# _LT_PATH_LD_GNU
  3351.  
  3352.  
  3353. # _LT_CMD_RELOAD
  3354. # --------------
  3355. # find reload flag for linker
  3356. #   -- PORTME Some linkers may need a different reload flag.
  3357. m4_defun([_LT_CMD_RELOAD],
  3358. [AC_CACHE_CHECK([for $LD option to reload object files],
  3359.   lt_cv_ld_reload_flag,
  3360.   [lt_cv_ld_reload_flag='-r'])
  3361. reload_flag=$lt_cv_ld_reload_flag
  3362. case $reload_flag in
  3363. "" | " "*) ;;
  3364. *) reload_flag=" $reload_flag" ;;
  3365. esac
  3366. reload_cmds='$LD$reload_flag -o $output$reload_objs'
  3367. case $host_os in
  3368.   cygwin* | mingw* | pw32* | cegcc*)
  3369.     if test yes != "$GCC"; then
  3370.       reload_cmds=false
  3371.     fi
  3372.     ;;
  3373.   darwin*)
  3374.     if test yes = "$GCC"; then
  3375.       reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
  3376.     else
  3377.       reload_cmds='$LD$reload_flag -o $output$reload_objs'
  3378.     fi
  3379.     ;;
  3380. esac
  3381. _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
  3382. _LT_TAGDECL([], [reload_cmds], [2])dnl
  3383. ])# _LT_CMD_RELOAD
  3384.  
  3385.  
  3386. # _LT_PATH_DD
  3387. # -----------
  3388. # find a working dd
  3389. m4_defun([_LT_PATH_DD],
  3390. [AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
  3391. [printf 0123456789abcdef0123456789abcdef >conftest.i
  3392. cat conftest.i conftest.i >conftest2.i
  3393. : ${lt_DD:=$DD}
  3394. AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
  3395. [if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
  3396.   cmp -s conftest.i conftest.out \
  3397.   && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
  3398. fi])
  3399. rm -f conftest.i conftest2.i conftest.out])
  3400. ])# _LT_PATH_DD
  3401.  
  3402.  
  3403. # _LT_CMD_TRUNCATE
  3404. # ----------------
  3405. # find command to truncate a binary pipe
  3406. m4_defun([_LT_CMD_TRUNCATE],
  3407. [m4_require([_LT_PATH_DD])
  3408. AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
  3409. [printf 0123456789abcdef0123456789abcdef >conftest.i
  3410. cat conftest.i conftest.i >conftest2.i
  3411. lt_cv_truncate_bin=
  3412. if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
  3413.   cmp -s conftest.i conftest.out \
  3414.   && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
  3415. fi
  3416. rm -f conftest.i conftest2.i conftest.out
  3417. test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
  3418. _LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
  3419.   [Command to truncate a binary pipe])
  3420. ])# _LT_CMD_TRUNCATE
  3421.  
  3422.  
  3423. # _LT_CHECK_MAGIC_METHOD
  3424. # ----------------------
  3425. # how to check for library dependencies
  3426. #  -- PORTME fill in with the dynamic library characteristics
  3427. m4_defun([_LT_CHECK_MAGIC_METHOD],
  3428. [m4_require([_LT_DECL_EGREP])
  3429. m4_require([_LT_DECL_OBJDUMP])
  3430. AC_CACHE_CHECK([how to recognize dependent libraries],
  3431. lt_cv_deplibs_check_method,
  3432. [lt_cv_file_magic_cmd='$MAGIC_CMD'
  3433. lt_cv_file_magic_test_file=
  3434. lt_cv_deplibs_check_method='unknown'
  3435. # Need to set the preceding variable on all platforms that support
  3436. # interlibrary dependencies.
  3437. # 'none' -- dependencies not supported.
  3438. # 'unknown' -- same as none, but documents that we really don't know.
  3439. # 'pass_all' -- all dependencies passed with no checks.
  3440. # 'test_compile' -- check by making test program.
  3441. # 'file_magic [[regex]]' -- check by looking for files in library path
  3442. # that responds to the $file_magic_cmd with a given extended regex.
  3443. # If you have 'file' or equivalent on your system and you're not sure
  3444. # whether 'pass_all' will *always* work, you probably want this one.
  3445.  
  3446. case $host_os in
  3447. aix[[4-9]]*)
  3448.   lt_cv_deplibs_check_method=pass_all
  3449.   ;;
  3450.  
  3451. beos*)
  3452.   lt_cv_deplibs_check_method=pass_all
  3453.   ;;
  3454.  
  3455. bsdi[[45]]*)
  3456.   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
  3457.   lt_cv_file_magic_cmd='/usr/bin/file -L'
  3458.   lt_cv_file_magic_test_file=/shlib/libc.so
  3459.   ;;
  3460.  
  3461. cygwin*)
  3462.   # func_win32_libid is a shell function defined in ltmain.sh
  3463.   lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
  3464.   lt_cv_file_magic_cmd='func_win32_libid'
  3465.   ;;
  3466.  
  3467. mingw* | pw32*)
  3468.   # Base MSYS/MinGW do not provide the 'file' command needed by
  3469.   # func_win32_libid shell function, so use a weaker test based on 'objdump',
  3470.   # unless we find 'file', for example because we are cross-compiling.
  3471.   if ( file / ) >/dev/null 2>&1; then
  3472.     lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
  3473.     lt_cv_file_magic_cmd='func_win32_libid'
  3474.   else
  3475.     # Keep this pattern in sync with the one in func_win32_libid.
  3476.     lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
  3477.     lt_cv_file_magic_cmd='$OBJDUMP -f'
  3478.   fi
  3479.   ;;
  3480.  
  3481. cegcc*)
  3482.   # use the weaker test based on 'objdump'. See mingw*.
  3483.   lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
  3484.   lt_cv_file_magic_cmd='$OBJDUMP -f'
  3485.   ;;
  3486.  
  3487. darwin* | rhapsody*)
  3488.   lt_cv_deplibs_check_method=pass_all
  3489.   ;;
  3490.  
  3491. freebsd* | dragonfly*)
  3492.   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
  3493.     case $host_cpu in
  3494.     i*86 )
  3495.       # Not sure whether the presence of OpenBSD here was a mistake.
  3496.       # Let's accept both of them until this is cleared up.
  3497.       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
  3498.       lt_cv_file_magic_cmd=/usr/bin/file
  3499.       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
  3500.       ;;
  3501.     esac
  3502.   else
  3503.     lt_cv_deplibs_check_method=pass_all
  3504.   fi
  3505.   ;;
  3506.  
  3507. haiku*)
  3508.   lt_cv_deplibs_check_method=pass_all
  3509.   ;;
  3510.  
  3511. hpux10.20* | hpux11*)
  3512.   lt_cv_file_magic_cmd=/usr/bin/file
  3513.   case $host_cpu in
  3514.   ia64*)
  3515.     lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
  3516.     lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
  3517.     ;;
  3518.   hppa*64*)
  3519.     [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
  3520.     lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
  3521.     ;;
  3522.   *)
  3523.     lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
  3524.     lt_cv_file_magic_test_file=/usr/lib/libc.sl
  3525.     ;;
  3526.   esac
  3527.   ;;
  3528.  
  3529. interix[[3-9]]*)
  3530.   # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
  3531.   lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
  3532.   ;;
  3533.  
  3534. irix5* | irix6* | nonstopux*)
  3535.   case $LD in
  3536.   *-32|*"-32 ") libmagic=32-bit;;
  3537.   *-n32|*"-n32 ") libmagic=N32;;
  3538.   *-64|*"-64 ") libmagic=64-bit;;
  3539.   *) libmagic=never-match;;
  3540.   esac
  3541.   lt_cv_deplibs_check_method=pass_all
  3542.   ;;
  3543.  
  3544. # This must be glibc/ELF.
  3545. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
  3546.   lt_cv_deplibs_check_method=pass_all
  3547.   ;;
  3548.  
  3549. netbsd*)
  3550.   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
  3551.     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
  3552.   else
  3553.     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
  3554.   fi
  3555.   ;;
  3556.  
  3557. newos6*)
  3558.   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
  3559.   lt_cv_file_magic_cmd=/usr/bin/file
  3560.   lt_cv_file_magic_test_file=/usr/lib/libnls.so
  3561.   ;;
  3562.  
  3563. *nto* | *qnx*)
  3564.   lt_cv_deplibs_check_method=pass_all
  3565.   ;;
  3566.  
  3567. openbsd* | bitrig*)
  3568.   if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
  3569.     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
  3570.   else
  3571.     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
  3572.   fi
  3573.   ;;
  3574.  
  3575. osf3* | osf4* | osf5*)
  3576.   lt_cv_deplibs_check_method=pass_all
  3577.   ;;
  3578.  
  3579. rdos*)
  3580.   lt_cv_deplibs_check_method=pass_all
  3581.   ;;
  3582.  
  3583. solaris*)
  3584.   lt_cv_deplibs_check_method=pass_all
  3585.   ;;
  3586.  
  3587. sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
  3588.   lt_cv_deplibs_check_method=pass_all
  3589.   ;;
  3590.  
  3591. sysv4 | sysv4.3*)
  3592.   case $host_vendor in
  3593.   motorola)
  3594.     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]]'
  3595.     lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
  3596.     ;;
  3597.   ncr)
  3598.     lt_cv_deplibs_check_method=pass_all
  3599.     ;;
  3600.   sequent)
  3601.     lt_cv_file_magic_cmd='/bin/file'
  3602.     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
  3603.     ;;
  3604.   sni)
  3605.     lt_cv_file_magic_cmd='/bin/file'
  3606.     lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
  3607.     lt_cv_file_magic_test_file=/lib/libc.so
  3608.     ;;
  3609.   siemens)
  3610.     lt_cv_deplibs_check_method=pass_all
  3611.     ;;
  3612.   pc)
  3613.     lt_cv_deplibs_check_method=pass_all
  3614.     ;;
  3615.   esac
  3616.   ;;
  3617.  
  3618. tpf*)
  3619.   lt_cv_deplibs_check_method=pass_all
  3620.   ;;
  3621. os2*)
  3622.   lt_cv_deplibs_check_method=pass_all
  3623.   ;;
  3624. esac
  3625. ])
  3626.  
  3627. file_magic_glob=
  3628. want_nocaseglob=no
  3629. if test "$build" = "$host"; then
  3630.   case $host_os in
  3631.   mingw* | pw32*)
  3632.     if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
  3633.       want_nocaseglob=yes
  3634.     else
  3635.       file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
  3636.     fi
  3637.     ;;
  3638.   esac
  3639. fi
  3640.  
  3641. file_magic_cmd=$lt_cv_file_magic_cmd
  3642. deplibs_check_method=$lt_cv_deplibs_check_method
  3643. test -z "$deplibs_check_method" && deplibs_check_method=unknown
  3644.  
  3645. _LT_DECL([], [deplibs_check_method], [1],
  3646.     [Method to check whether dependent libraries are shared objects])
  3647. _LT_DECL([], [file_magic_cmd], [1],
  3648.     [Command to use when deplibs_check_method = "file_magic"])
  3649. _LT_DECL([], [file_magic_glob], [1],
  3650.     [How to find potential files when deplibs_check_method = "file_magic"])
  3651. _LT_DECL([], [want_nocaseglob], [1],
  3652.     [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
  3653. ])# _LT_CHECK_MAGIC_METHOD
  3654.  
  3655.  
  3656. # LT_PATH_NM
  3657. # ----------
  3658. # find the pathname to a BSD- or MS-compatible name lister
  3659. AC_DEFUN([LT_PATH_NM],
  3660. [AC_REQUIRE([AC_PROG_CC])dnl
  3661. AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
  3662. [if test -n "$NM"; then
  3663.   # Let the user override the test.
  3664.   lt_cv_path_NM=$NM
  3665. else
  3666.   lt_nm_to_check=${ac_tool_prefix}nm
  3667.   if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
  3668.     lt_nm_to_check="$lt_nm_to_check nm"
  3669.   fi
  3670.   for lt_tmp_nm in $lt_nm_to_check; do
  3671.     lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
  3672.     for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
  3673.       IFS=$lt_save_ifs
  3674.       test -z "$ac_dir" && ac_dir=.
  3675.       tmp_nm=$ac_dir/$lt_tmp_nm
  3676.       if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
  3677.         # Check to see if the nm accepts a BSD-compat flag.
  3678.         # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
  3679.         #   nm: unknown option "B" ignored
  3680.         # Tru64's nm complains that /dev/null is an invalid object file
  3681.         # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
  3682.         case $build_os in
  3683.         mingw*) lt_bad_file=conftest.nm/nofile ;;
  3684.         *) lt_bad_file=/dev/null ;;
  3685.         esac
  3686.         case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
  3687.         *$lt_bad_file* | *'Invalid file or object type'*)
  3688.           lt_cv_path_NM="$tmp_nm -B"
  3689.           break 2
  3690.           ;;
  3691.         *)
  3692.           case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
  3693.           */dev/null*)
  3694.             lt_cv_path_NM="$tmp_nm -p"
  3695.             break 2
  3696.             ;;
  3697.           *)
  3698.             lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
  3699.             continue # so that we can try to find one that supports BSD flags
  3700.             ;;
  3701.           esac
  3702.           ;;
  3703.         esac
  3704.       fi
  3705.     done
  3706.     IFS=$lt_save_ifs
  3707.   done
  3708.   : ${lt_cv_path_NM=no}
  3709. fi])
  3710. if test no != "$lt_cv_path_NM"; then
  3711.   NM=$lt_cv_path_NM
  3712. else
  3713.   # Didn't find any BSD compatible name lister, look for dumpbin.
  3714.   if test -n "$DUMPBIN"; then :
  3715.     # Let the user override the test.
  3716.   else
  3717.     AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
  3718.     case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
  3719.     *COFF*)
  3720.       DUMPBIN="$DUMPBIN -symbols -headers"
  3721.       ;;
  3722.     *)
  3723.       DUMPBIN=:
  3724.       ;;
  3725.     esac
  3726.   fi
  3727.   AC_SUBST([DUMPBIN])
  3728.   if test : != "$DUMPBIN"; then
  3729.     NM=$DUMPBIN
  3730.   fi
  3731. fi
  3732. test -z "$NM" && NM=nm
  3733. AC_SUBST([NM])
  3734. _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
  3735.  
  3736. AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
  3737.   [lt_cv_nm_interface="BSD nm"
  3738.   echo "int some_variable = 0;" > conftest.$ac_ext
  3739.   (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
  3740.   (eval "$ac_compile" 2>conftest.err)
  3741.   cat conftest.err >&AS_MESSAGE_LOG_FD
  3742.   (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
  3743.   (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
  3744.   cat conftest.err >&AS_MESSAGE_LOG_FD
  3745.   (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
  3746.   cat conftest.out >&AS_MESSAGE_LOG_FD
  3747.   if $GREP 'External.*some_variable' conftest.out > /dev/null; then
  3748.     lt_cv_nm_interface="MS dumpbin"
  3749.   fi
  3750.   rm -f conftest*])
  3751. ])# LT_PATH_NM
  3752.  
  3753. # Old names:
  3754. AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
  3755. AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
  3756. dnl aclocal-1.4 backwards compatibility:
  3757. dnl AC_DEFUN([AM_PROG_NM], [])
  3758. dnl AC_DEFUN([AC_PROG_NM], [])
  3759.  
  3760. # _LT_CHECK_SHAREDLIB_FROM_LINKLIB
  3761. # --------------------------------
  3762. # how to determine the name of the shared library
  3763. # associated with a specific link library.
  3764. #  -- PORTME fill in with the dynamic library characteristics
  3765. m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
  3766. [m4_require([_LT_DECL_EGREP])
  3767. m4_require([_LT_DECL_OBJDUMP])
  3768. m4_require([_LT_DECL_DLLTOOL])
  3769. AC_CACHE_CHECK([how to associate runtime and link libraries],
  3770. lt_cv_sharedlib_from_linklib_cmd,
  3771. [lt_cv_sharedlib_from_linklib_cmd='unknown'
  3772.  
  3773. case $host_os in
  3774. cygwin* | mingw* | pw32* | cegcc*)
  3775.   # two different shell functions defined in ltmain.sh;
  3776.   # decide which one to use based on capabilities of $DLLTOOL
  3777.   case `$DLLTOOL --help 2>&1` in
  3778.   *--identify-strict*)
  3779.     lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
  3780.     ;;
  3781.   *)
  3782.     lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
  3783.     ;;
  3784.   esac
  3785.   ;;
  3786. *)
  3787.   # fallback: assume linklib IS sharedlib
  3788.   lt_cv_sharedlib_from_linklib_cmd=$ECHO
  3789.   ;;
  3790. esac
  3791. ])
  3792. sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
  3793. test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
  3794.  
  3795. _LT_DECL([], [sharedlib_from_linklib_cmd], [1],
  3796.     [Command to associate shared and link libraries])
  3797. ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
  3798.  
  3799.  
  3800. # _LT_PATH_MANIFEST_TOOL
  3801. # ----------------------
  3802. # locate the manifest tool
  3803. m4_defun([_LT_PATH_MANIFEST_TOOL],
  3804. [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
  3805. test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
  3806. AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
  3807.   [lt_cv_path_mainfest_tool=no
  3808.   echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
  3809.   $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
  3810.   cat conftest.err >&AS_MESSAGE_LOG_FD
  3811.   if $GREP 'Manifest Tool' conftest.out > /dev/null; then
  3812.     lt_cv_path_mainfest_tool=yes
  3813.   fi
  3814.   rm -f conftest*])
  3815. if test yes != "$lt_cv_path_mainfest_tool"; then
  3816.   MANIFEST_TOOL=:
  3817. fi
  3818. _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
  3819. ])# _LT_PATH_MANIFEST_TOOL
  3820.  
  3821.  
  3822. # _LT_DLL_DEF_P([FILE])
  3823. # ---------------------
  3824. # True iff FILE is a Windows DLL '.def' file.
  3825. # Keep in sync with func_dll_def_p in the libtool script
  3826. AC_DEFUN([_LT_DLL_DEF_P],
  3827. [dnl
  3828.   test DEF = "`$SED -n dnl
  3829.     -e '\''s/^[[         ]]*//'\'' dnl Strip leading whitespace
  3830.     -e '\''/^\(;.*\)*$/d'\'' dnl      Delete empty lines and comments
  3831.     -e '\''s/^\(EXPORTS\|LIBRARY\)\([[   ]].*\)*$/DEF/p'\'' dnl
  3832.     -e q dnl                          Only consider the first "real" line
  3833.     $1`" dnl
  3834. ])# _LT_DLL_DEF_P
  3835.  
  3836.  
  3837. # LT_LIB_M
  3838. # --------
  3839. # check for math library
  3840. AC_DEFUN([LT_LIB_M],
  3841. [AC_REQUIRE([AC_CANONICAL_HOST])dnl
  3842. LIBM=
  3843. case $host in
  3844. *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
  3845.   # These system don't have libm, or don't need it
  3846.   ;;
  3847. *-ncr-sysv4.3*)
  3848.   AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
  3849.   AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
  3850.   ;;
  3851. *)
  3852.   AC_CHECK_LIB(m, cos, LIBM=-lm)
  3853.   ;;
  3854. esac
  3855. AC_SUBST([LIBM])
  3856. ])# LT_LIB_M
  3857.  
  3858. # Old name:
  3859. AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
  3860. dnl aclocal-1.4 backwards compatibility:
  3861. dnl AC_DEFUN([AC_CHECK_LIBM], [])
  3862.  
  3863.  
  3864. # _LT_COMPILER_NO_RTTI([TAGNAME])
  3865. # -------------------------------
  3866. m4_defun([_LT_COMPILER_NO_RTTI],
  3867. [m4_require([_LT_TAG_COMPILER])dnl
  3868.  
  3869. _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
  3870.  
  3871. if test yes = "$GCC"; then
  3872.   case $cc_basename in
  3873.   nvcc*)
  3874.     _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
  3875.   *)
  3876.     _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
  3877.   esac
  3878.  
  3879.   _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
  3880.     lt_cv_prog_compiler_rtti_exceptions,
  3881.     [-fno-rtti -fno-exceptions], [],
  3882.     [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
  3883. fi
  3884. _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
  3885.         [Compiler flag to turn off builtin functions])
  3886. ])# _LT_COMPILER_NO_RTTI
  3887.  
  3888.  
  3889. # _LT_CMD_GLOBAL_SYMBOLS
  3890. # ----------------------
  3891. m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
  3892. [AC_REQUIRE([AC_CANONICAL_HOST])dnl
  3893. AC_REQUIRE([AC_PROG_CC])dnl
  3894. AC_REQUIRE([AC_PROG_AWK])dnl
  3895. AC_REQUIRE([LT_PATH_NM])dnl
  3896. AC_REQUIRE([LT_PATH_LD])dnl
  3897. m4_require([_LT_DECL_SED])dnl
  3898. m4_require([_LT_DECL_EGREP])dnl
  3899. m4_require([_LT_TAG_COMPILER])dnl
  3900.  
  3901. # Check for command to grab the raw symbol name followed by C symbol from nm.
  3902. AC_MSG_CHECKING([command to parse $NM output from $compiler object])
  3903. AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
  3904. [
  3905. # These are sane defaults that work on at least a few old systems.
  3906. # [They come from Ultrix.  What could be older than Ultrix?!! ;)]
  3907.  
  3908. # Character class describing NM global symbol codes.
  3909. symcode='[[BCDEGRST]]'
  3910.  
  3911. # Regexp to match symbols that can be accessed directly from C.
  3912. sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
  3913.  
  3914. # Define system-specific variables.
  3915. case $host_os in
  3916. aix*)
  3917.   symcode='[[BCDT]]'
  3918.   ;;
  3919. cygwin* | mingw* | pw32* | cegcc*)
  3920.   symcode='[[ABCDGISTW]]'
  3921.   ;;
  3922. hpux*)
  3923.   if test ia64 = "$host_cpu"; then
  3924.     symcode='[[ABCDEGRST]]'
  3925.   fi
  3926.   ;;
  3927. irix* | nonstopux*)
  3928.   symcode='[[BCDEGRST]]'
  3929.   ;;
  3930. osf*)
  3931.   symcode='[[BCDEGQRST]]'
  3932.   ;;
  3933. solaris*)
  3934.   symcode='[[BDRT]]'
  3935.   ;;
  3936. sco3.2v5*)
  3937.   symcode='[[DT]]'
  3938.   ;;
  3939. sysv4.2uw2*)
  3940.   symcode='[[DT]]'
  3941.   ;;
  3942. sysv5* | sco5v6* | unixware* | OpenUNIX*)
  3943.   symcode='[[ABDT]]'
  3944.   ;;
  3945. sysv4)
  3946.   symcode='[[DFNSTU]]'
  3947.   ;;
  3948. esac
  3949.  
  3950. # If we're using GNU nm, then use its standard symbol codes.
  3951. case `$NM -V 2>&1` in
  3952. *GNU* | *'with BFD'*)
  3953.   symcode='[[ABCDGIRSTW]]' ;;
  3954. esac
  3955.  
  3956. if test "$lt_cv_nm_interface" = "MS dumpbin"; then
  3957.   # Gets list of data symbols to import.
  3958.   lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
  3959.   # Adjust the below global symbol transforms to fixup imported variables.
  3960.   lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
  3961.   lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
  3962.   lt_c_name_lib_hook="\
  3963.   -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
  3964.   -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
  3965. else
  3966.   # Disable hooks by default.
  3967.   lt_cv_sys_global_symbol_to_import=
  3968.   lt_cdecl_hook=
  3969.   lt_c_name_hook=
  3970.   lt_c_name_lib_hook=
  3971. fi
  3972.  
  3973. # Transform an extracted symbol line into a proper C declaration.
  3974. # Some systems (esp. on ia64) link data and code symbols differently,
  3975. # so use this general approach.
  3976. lt_cv_sys_global_symbol_to_cdecl="sed -n"\
  3977. $lt_cdecl_hook\
  3978. " -e 's/^T .* \(.*\)$/extern int \1();/p'"\
  3979. " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
  3980.  
  3981. # Transform an extracted symbol line into symbol name and symbol address
  3982. lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
  3983. $lt_c_name_hook\
  3984. " -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
  3985. " -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
  3986.  
  3987. # Transform an extracted symbol line into symbol name with lib prefix and
  3988. # symbol address.
  3989. lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
  3990. $lt_c_name_lib_hook\
  3991. " -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
  3992. " -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
  3993. " -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
  3994.  
  3995. # Handle CRLF in mingw tool chain
  3996. opt_cr=
  3997. case $build_os in
  3998. mingw*)
  3999.   opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
  4000.   ;;
  4001. esac
  4002.  
  4003. # Try without a prefix underscore, then with it.
  4004. for ac_symprfx in "" "_"; do
  4005.  
  4006.   # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
  4007.   symxfrm="\\1 $ac_symprfx\\2 \\2"
  4008.  
  4009.   # Write the raw and C identifiers.
  4010.   if test "$lt_cv_nm_interface" = "MS dumpbin"; then
  4011.     # Fake it for dumpbin and say T for any non-static function,
  4012.     # D for any global variable and I for any imported variable.
  4013.     # Also find C++ and __fastcall symbols from MSVC++,
  4014.     # which start with @ or ?.
  4015.     lt_cv_sys_global_symbol_pipe="$AWK ['"\
  4016. "     {last_section=section; section=\$ 3};"\
  4017. "     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
  4018. "     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
  4019. "     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
  4020. "     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
  4021. "     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
  4022. "     \$ 0!~/External *\|/{next};"\
  4023. "     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
  4024. "     {if(hide[section]) next};"\
  4025. "     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
  4026. "     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
  4027. "     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
  4028. "     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
  4029. "     ' prfx=^$ac_symprfx]"
  4030.   else
  4031.     lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[     ]]\($symcode$symcode*\)[[       ]][[    ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
  4032.   fi
  4033.   lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
  4034.  
  4035.   # Check to see that the pipe works correctly.
  4036.   pipe_works=no
  4037.  
  4038.   rm -f conftest*
  4039.   cat > conftest.$ac_ext <<_LT_EOF
  4040. #ifdef __cplusplus
  4041. extern "C" {
  4042. #endif
  4043. char nm_test_var;
  4044. void nm_test_func(void);
  4045. void nm_test_func(void){}
  4046. #ifdef __cplusplus
  4047. }
  4048. #endif
  4049. int main(){nm_test_var='a';nm_test_func();return(0);}
  4050. _LT_EOF
  4051.  
  4052.   if AC_TRY_EVAL(ac_compile); then
  4053.     # Now try to grab the symbols.
  4054.     nlist=conftest.nm
  4055.     if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
  4056.       # Try sorting and uniquifying the output.
  4057.       if sort "$nlist" | uniq > "$nlist"T; then
  4058.         mv -f "$nlist"T "$nlist"
  4059.       else
  4060.         rm -f "$nlist"T
  4061.       fi
  4062.  
  4063.       # Make sure that we snagged all the symbols we need.
  4064.       if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  4065.         if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  4066.           cat <<_LT_EOF > conftest.$ac_ext
  4067. /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
  4068. #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
  4069. /* DATA imports from DLLs on WIN32 can't be const, because runtime
  4070.    relocations are performed -- see ld's documentation on pseudo-relocs.  */
  4071. # define LT@&t@_DLSYM_CONST
  4072. #elif defined __osf__
  4073. /* This system does not cope well with relocations in const data.  */
  4074. # define LT@&t@_DLSYM_CONST
  4075. #else
  4076. # define LT@&t@_DLSYM_CONST const
  4077. #endif
  4078.  
  4079. #ifdef __cplusplus
  4080. extern "C" {
  4081. #endif
  4082.  
  4083. _LT_EOF
  4084.           # Now generate the symbol file.
  4085.           eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
  4086.  
  4087.           cat <<_LT_EOF >> conftest.$ac_ext
  4088.  
  4089. /* The mapping between symbol names and symbols.  */
  4090. LT@&t@_DLSYM_CONST struct {
  4091.   const char *name;
  4092.   void       *address;
  4093. }
  4094. lt__PROGRAM__LTX_preloaded_symbols[[]] =
  4095. {
  4096.   { "@PROGRAM@", (void *) 0 },
  4097. _LT_EOF
  4098.           $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
  4099.           cat <<\_LT_EOF >> conftest.$ac_ext
  4100.   {0, (void *) 0}
  4101. };
  4102.  
  4103. /* This works around a problem in FreeBSD linker */
  4104. #ifdef FREEBSD_WORKAROUND
  4105. static const void *lt_preloaded_setup() {
  4106.   return lt__PROGRAM__LTX_preloaded_symbols;
  4107. }
  4108. #endif
  4109.  
  4110. #ifdef __cplusplus
  4111. }
  4112. #endif
  4113. _LT_EOF
  4114.           # Now try linking the two files.
  4115.           mv conftest.$ac_objext conftstm.$ac_objext
  4116.           lt_globsym_save_LIBS=$LIBS
  4117.           lt_globsym_save_CFLAGS=$CFLAGS
  4118.           LIBS=conftstm.$ac_objext
  4119.           CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
  4120.           if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
  4121.             pipe_works=yes
  4122.           fi
  4123.           LIBS=$lt_globsym_save_LIBS
  4124.           CFLAGS=$lt_globsym_save_CFLAGS
  4125.         else
  4126.           echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
  4127.         fi
  4128.       else
  4129.         echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
  4130.       fi
  4131.     else
  4132.       echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
  4133.     fi
  4134.   else
  4135.     echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
  4136.     cat conftest.$ac_ext >&5
  4137.   fi
  4138.   rm -rf conftest* conftst*
  4139.  
  4140.   # Do not use the global_symbol_pipe unless it works.
  4141.   if test yes = "$pipe_works"; then
  4142.     break
  4143.   else
  4144.     lt_cv_sys_global_symbol_pipe=
  4145.   fi
  4146. done
  4147. ])
  4148. if test -z "$lt_cv_sys_global_symbol_pipe"; then
  4149.   lt_cv_sys_global_symbol_to_cdecl=
  4150. fi
  4151. if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
  4152.   AC_MSG_RESULT(failed)
  4153. else
  4154.   AC_MSG_RESULT(ok)
  4155. fi
  4156.  
  4157. # Response file support.
  4158. if test "$lt_cv_nm_interface" = "MS dumpbin"; then
  4159.   nm_file_list_spec='@'
  4160. elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
  4161.   nm_file_list_spec='@'
  4162. fi
  4163.  
  4164. _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
  4165.     [Take the output of nm and produce a listing of raw symbols and C names])
  4166. _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
  4167.     [Transform the output of nm in a proper C declaration])
  4168. _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
  4169.     [Transform the output of nm into a list of symbols to manually relocate])
  4170. _LT_DECL([global_symbol_to_c_name_address],
  4171.     [lt_cv_sys_global_symbol_to_c_name_address], [1],
  4172.     [Transform the output of nm in a C name address pair])
  4173. _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
  4174.     [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
  4175.     [Transform the output of nm in a C name address pair when lib prefix is needed])
  4176. _LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
  4177.     [The name lister interface])
  4178. _LT_DECL([], [nm_file_list_spec], [1],
  4179.     [Specify filename containing input files for $NM])
  4180. ]) # _LT_CMD_GLOBAL_SYMBOLS
  4181.  
  4182.  
  4183. # _LT_COMPILER_PIC([TAGNAME])
  4184. # ---------------------------
  4185. m4_defun([_LT_COMPILER_PIC],
  4186. [m4_require([_LT_TAG_COMPILER])dnl
  4187. _LT_TAGVAR(lt_prog_compiler_wl, $1)=
  4188. _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  4189. _LT_TAGVAR(lt_prog_compiler_static, $1)=
  4190.  
  4191. m4_if([$1], [CXX], [
  4192.   # C++ specific cases for pic, static, wl, etc.
  4193.   if test yes = "$GXX"; then
  4194.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4195.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  4196.  
  4197.     case $host_os in
  4198.     aix*)
  4199.       # All AIX code is PIC.
  4200.       if test ia64 = "$host_cpu"; then
  4201.         # AIX 5 now supports IA64 processor
  4202.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4203.       fi
  4204.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4205.       ;;
  4206.  
  4207.     amigaos*)
  4208.       case $host_cpu in
  4209.       powerpc)
  4210.             # see comment about AmigaOS4 .so support
  4211.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4212.         ;;
  4213.       m68k)
  4214.             # FIXME: we need at least 68020 code to build shared libraries, but
  4215.             # adding the '-m68020' flag to GCC prevents building anything better,
  4216.             # like '-m68040'.
  4217.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
  4218.         ;;
  4219.       esac
  4220.       ;;
  4221.  
  4222.     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
  4223.       # PIC is the default for these OSes.
  4224.       ;;
  4225.     mingw* | cygwin* | os2* | pw32* | cegcc*)
  4226.       # This hack is so that the source file can tell whether it is being
  4227.       # built for inclusion in a dll (and should export symbols for example).
  4228.       # Although the cygwin gcc ignores -fPIC, still need this for old-style
  4229.       # (--disable-auto-import) libraries
  4230.       m4_if([$1], [GCJ], [],
  4231.         [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
  4232.       case $host_os in
  4233.       os2*)
  4234.         _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
  4235.         ;;
  4236.       esac
  4237.       ;;
  4238.     darwin* | rhapsody*)
  4239.       # PIC is the default on this platform
  4240.       # Common symbols not allowed in MH_DYLIB files
  4241.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
  4242.       ;;
  4243.     *djgpp*)
  4244.       # DJGPP does not support shared libraries at all
  4245.       _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  4246.       ;;
  4247.     haiku*)
  4248.       # PIC is the default for Haiku.
  4249.       # The "-static" flag exists, but is broken.
  4250.       _LT_TAGVAR(lt_prog_compiler_static, $1)=
  4251.       ;;
  4252.     interix[[3-9]]*)
  4253.       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
  4254.       # Instead, we relocate shared libraries at runtime.
  4255.       ;;
  4256.     sysv4*MP*)
  4257.       if test -d /usr/nec; then
  4258.         _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
  4259.       fi
  4260.       ;;
  4261.     hpux*)
  4262.       # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
  4263.       # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
  4264.       # sets the default TLS model and affects inlining.
  4265.       case $host_cpu in
  4266.       hppa*64*)
  4267.         ;;
  4268.       *)
  4269.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4270.         ;;
  4271.       esac
  4272.       ;;
  4273.     *qnx* | *nto*)
  4274.       # QNX uses GNU C++, but need to define -shared option too, otherwise
  4275.       # it will coredump.
  4276.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
  4277.       ;;
  4278.     *)
  4279.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4280.       ;;
  4281.     esac
  4282.   else
  4283.     case $host_os in
  4284.       aix[[4-9]]*)
  4285.         # All AIX code is PIC.
  4286.         if test ia64 = "$host_cpu"; then
  4287.           # AIX 5 now supports IA64 processor
  4288.           _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4289.         else
  4290.           _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
  4291.         fi
  4292.         ;;
  4293.       chorus*)
  4294.         case $cc_basename in
  4295.         cxch68*)
  4296.           # Green Hills C++ Compiler
  4297.           # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
  4298.           ;;
  4299.         esac
  4300.         ;;
  4301.       mingw* | cygwin* | os2* | pw32* | cegcc*)
  4302.         # This hack is so that the source file can tell whether it is being
  4303.         # built for inclusion in a dll (and should export symbols for example).
  4304.         m4_if([$1], [GCJ], [],
  4305.           [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
  4306.         ;;
  4307.       dgux*)
  4308.         case $cc_basename in
  4309.           ec++*)
  4310.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4311.             ;;
  4312.           ghcx*)
  4313.             # Green Hills C++ Compiler
  4314.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  4315.             ;;
  4316.           *)
  4317.             ;;
  4318.         esac
  4319.         ;;
  4320.       freebsd* | dragonfly*)
  4321.         # FreeBSD uses GNU C++
  4322.         ;;
  4323.       hpux9* | hpux10* | hpux11*)
  4324.         case $cc_basename in
  4325.           CC*)
  4326.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4327.             _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
  4328.             if test ia64 != "$host_cpu"; then
  4329.               _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
  4330.             fi
  4331.             ;;
  4332.           aCC*)
  4333.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4334.             _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
  4335.             case $host_cpu in
  4336.             hppa*64*|ia64*)
  4337.               # +Z the default
  4338.               ;;
  4339.             *)
  4340.               _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
  4341.               ;;
  4342.             esac
  4343.             ;;
  4344.           *)
  4345.             ;;
  4346.         esac
  4347.         ;;
  4348.       interix*)
  4349.         # This is c89, which is MS Visual C++ (no shared libs)
  4350.         # Anyone wants to do a port?
  4351.         ;;
  4352.       irix5* | irix6* | nonstopux*)
  4353.         case $cc_basename in
  4354.           CC*)
  4355.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4356.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  4357.             # CC pic flag -KPIC is the default.
  4358.             ;;
  4359.           *)
  4360.             ;;
  4361.         esac
  4362.         ;;
  4363.       linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
  4364.         case $cc_basename in
  4365.           KCC*)
  4366.             # KAI C++ Compiler
  4367.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
  4368.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4369.             ;;
  4370.           ecpc* )
  4371.             # old Intel C++ for x86_64, which still supported -KPIC.
  4372.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4373.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4374.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  4375.             ;;
  4376.           icpc* )
  4377.             # Intel C++, used to be incompatible with GCC.
  4378.             # ICC 10 doesn't accept -KPIC any more.
  4379.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4380.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4381.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  4382.             ;;
  4383.           pgCC* | pgcpp*)
  4384.             # Portland Group C++ compiler
  4385.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4386.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
  4387.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4388.             ;;
  4389.           cxx*)
  4390.             # Compaq C++
  4391.             # Make sure the PIC flag is empty.  It appears that all Alpha
  4392.             # Linux and Compaq Tru64 Unix objects are PIC.
  4393.             _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  4394.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  4395.             ;;
  4396.           xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
  4397.             # IBM XL 8.0, 9.0 on PPC and BlueGene
  4398.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4399.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
  4400.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
  4401.             ;;
  4402.           *)
  4403.             case `$CC -V 2>&1 | sed 5q` in
  4404.             *Sun\ C*)
  4405.               # Sun C++ 5.9
  4406.               _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4407.               _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4408.               _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
  4409.               ;;
  4410.             esac
  4411.             ;;
  4412.         esac
  4413.         ;;
  4414.       lynxos*)
  4415.         ;;
  4416.       m88k*)
  4417.         ;;
  4418.       mvs*)
  4419.         case $cc_basename in
  4420.           cxx*)
  4421.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
  4422.             ;;
  4423.           *)
  4424.             ;;
  4425.         esac
  4426.         ;;
  4427.       netbsd*)
  4428.         ;;
  4429.       *qnx* | *nto*)
  4430.         # QNX uses GNU C++, but need to define -shared option too, otherwise
  4431.         # it will coredump.
  4432.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
  4433.         ;;
  4434.       osf3* | osf4* | osf5*)
  4435.         case $cc_basename in
  4436.           KCC*)
  4437.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
  4438.             ;;
  4439.           RCC*)
  4440.             # Rational C++ 2.4.1
  4441.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  4442.             ;;
  4443.           cxx*)
  4444.             # Digital/Compaq C++
  4445.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4446.             # Make sure the PIC flag is empty.  It appears that all Alpha
  4447.             # Linux and Compaq Tru64 Unix objects are PIC.
  4448.             _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  4449.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  4450.             ;;
  4451.           *)
  4452.             ;;
  4453.         esac
  4454.         ;;
  4455.       psos*)
  4456.         ;;
  4457.       solaris*)
  4458.         case $cc_basename in
  4459.           CC* | sunCC*)
  4460.             # Sun C++ 4.2, 5.x and Centerline C++
  4461.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4462.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4463.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
  4464.             ;;
  4465.           gcx*)
  4466.             # Green Hills C++ Compiler
  4467.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
  4468.             ;;
  4469.           *)
  4470.             ;;
  4471.         esac
  4472.         ;;
  4473.       sunos4*)
  4474.         case $cc_basename in
  4475.           CC*)
  4476.             # Sun C++ 4.x
  4477.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  4478.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4479.             ;;
  4480.           lcc*)
  4481.             # Lucid
  4482.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  4483.             ;;
  4484.           *)
  4485.             ;;
  4486.         esac
  4487.         ;;
  4488.       sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
  4489.         case $cc_basename in
  4490.           CC*)
  4491.             _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4492.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4493.             _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4494.             ;;
  4495.         esac
  4496.         ;;
  4497.       tandem*)
  4498.         case $cc_basename in
  4499.           NCC*)
  4500.             # NonStop-UX NCC 3.20
  4501.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4502.             ;;
  4503.           *)
  4504.             ;;
  4505.         esac
  4506.         ;;
  4507.       vxworks*)
  4508.         ;;
  4509.       *)
  4510.         _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
  4511.         ;;
  4512.     esac
  4513.   fi
  4514. ],
  4515. [
  4516.   if test yes = "$GCC"; then
  4517.     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4518.     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  4519.  
  4520.     case $host_os in
  4521.       aix*)
  4522.       # All AIX code is PIC.
  4523.       if test ia64 = "$host_cpu"; then
  4524.         # AIX 5 now supports IA64 processor
  4525.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4526.       fi
  4527.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4528.       ;;
  4529.  
  4530.     amigaos*)
  4531.       case $host_cpu in
  4532.       powerpc)
  4533.             # see comment about AmigaOS4 .so support
  4534.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4535.         ;;
  4536.       m68k)
  4537.             # FIXME: we need at least 68020 code to build shared libraries, but
  4538.             # adding the '-m68020' flag to GCC prevents building anything better,
  4539.             # like '-m68040'.
  4540.             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
  4541.         ;;
  4542.       esac
  4543.       ;;
  4544.  
  4545.     beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
  4546.       # PIC is the default for these OSes.
  4547.       ;;
  4548.  
  4549.     mingw* | cygwin* | pw32* | os2* | cegcc*)
  4550.       # This hack is so that the source file can tell whether it is being
  4551.       # built for inclusion in a dll (and should export symbols for example).
  4552.       # Although the cygwin gcc ignores -fPIC, still need this for old-style
  4553.       # (--disable-auto-import) libraries
  4554.       m4_if([$1], [GCJ], [],
  4555.         [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
  4556.       case $host_os in
  4557.       os2*)
  4558.         _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
  4559.         ;;
  4560.       esac
  4561.       ;;
  4562.  
  4563.     darwin* | rhapsody*)
  4564.       # PIC is the default on this platform
  4565.       # Common symbols not allowed in MH_DYLIB files
  4566.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
  4567.       ;;
  4568.  
  4569.     haiku*)
  4570.       # PIC is the default for Haiku.
  4571.       # The "-static" flag exists, but is broken.
  4572.       _LT_TAGVAR(lt_prog_compiler_static, $1)=
  4573.       ;;
  4574.  
  4575.     hpux*)
  4576.       # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
  4577.       # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
  4578.       # sets the default TLS model and affects inlining.
  4579.       case $host_cpu in
  4580.       hppa*64*)
  4581.         # +Z the default
  4582.         ;;
  4583.       *)
  4584.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4585.         ;;
  4586.       esac
  4587.       ;;
  4588.  
  4589.     interix[[3-9]]*)
  4590.       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
  4591.       # Instead, we relocate shared libraries at runtime.
  4592.       ;;
  4593.  
  4594.     msdosdjgpp*)
  4595.       # Just because we use GCC doesn't mean we suddenly get shared libraries
  4596.       # on systems that don't support them.
  4597.       _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
  4598.       enable_shared=no
  4599.       ;;
  4600.  
  4601.     *nto* | *qnx*)
  4602.       # QNX uses GNU C++, but need to define -shared option too, otherwise
  4603.       # it will coredump.
  4604.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
  4605.       ;;
  4606.  
  4607.     sysv4*MP*)
  4608.       if test -d /usr/nec; then
  4609.         _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
  4610.       fi
  4611.       ;;
  4612.  
  4613.     *)
  4614.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4615.       ;;
  4616.     esac
  4617.  
  4618.     case $cc_basename in
  4619.     nvcc*) # Cuda Compiler Driver 2.2
  4620.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
  4621.       if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
  4622.         _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
  4623.       fi
  4624.       ;;
  4625.     esac
  4626.   else
  4627.     # PORTME Check for flag to pass linker flags through the system compiler.
  4628.     case $host_os in
  4629.     aix*)
  4630.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4631.       if test ia64 = "$host_cpu"; then
  4632.         # AIX 5 now supports IA64 processor
  4633.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4634.       else
  4635.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
  4636.       fi
  4637.       ;;
  4638.  
  4639.     darwin* | rhapsody*)
  4640.       # PIC is the default on this platform
  4641.       # Common symbols not allowed in MH_DYLIB files
  4642.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
  4643.       case $cc_basename in
  4644.       nagfor*)
  4645.         # NAG Fortran compiler
  4646.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
  4647.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
  4648.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4649.         ;;
  4650.       esac
  4651.       ;;
  4652.  
  4653.     mingw* | cygwin* | pw32* | os2* | cegcc*)
  4654.       # This hack is so that the source file can tell whether it is being
  4655.       # built for inclusion in a dll (and should export symbols for example).
  4656.       m4_if([$1], [GCJ], [],
  4657.         [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
  4658.       case $host_os in
  4659.       os2*)
  4660.         _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
  4661.         ;;
  4662.       esac
  4663.       ;;
  4664.  
  4665.     hpux9* | hpux10* | hpux11*)
  4666.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4667.       # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
  4668.       # not for PA HP-UX.
  4669.       case $host_cpu in
  4670.       hppa*64*|ia64*)
  4671.         # +Z the default
  4672.         ;;
  4673.       *)
  4674.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
  4675.         ;;
  4676.       esac
  4677.       # Is there a better lt_prog_compiler_static that works with the bundled CC?
  4678.       _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
  4679.       ;;
  4680.  
  4681.     irix5* | irix6* | nonstopux*)
  4682.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4683.       # PIC (with -KPIC) is the default.
  4684.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  4685.       ;;
  4686.  
  4687.     linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
  4688.       case $cc_basename in
  4689.       # old Intel for x86_64, which still supported -KPIC.
  4690.       ecc*)
  4691.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4692.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4693.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  4694.         ;;
  4695.       # icc used to be incompatible with GCC.
  4696.       # ICC 10 doesn't accept -KPIC any more.
  4697.       icc* | ifort*)
  4698.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4699.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4700.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  4701.         ;;
  4702.       # Lahey Fortran 8.1.
  4703.       lf95*)
  4704.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4705.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
  4706.         _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
  4707.         ;;
  4708.       nagfor*)
  4709.         # NAG Fortran compiler
  4710.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
  4711.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
  4712.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4713.         ;;
  4714.       tcc*)
  4715.         # Fabrice Bellard et al's Tiny C Compiler
  4716.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4717.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4718.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  4719.         ;;
  4720.       pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
  4721.         # Portland Group compilers (*not* the Pentium gcc compiler,
  4722.         # which looks to be a dead project)
  4723.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4724.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
  4725.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4726.         ;;
  4727.       ccc*)
  4728.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4729.         # All Alpha code is PIC.
  4730.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  4731.         ;;
  4732.       xl* | bgxl* | bgf* | mpixl*)
  4733.         # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
  4734.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4735.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
  4736.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
  4737.         ;;
  4738.       *)
  4739.         case `$CC -V 2>&1 | sed 5q` in
  4740.         *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
  4741.           # Sun Fortran 8.3 passes all unrecognized flags to the linker
  4742.           _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4743.           _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4744.           _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
  4745.           ;;
  4746.         *Sun\ F* | *Sun*Fortran*)
  4747.           _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4748.           _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4749.           _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
  4750.           ;;
  4751.         *Sun\ C*)
  4752.           # Sun C 5.9
  4753.           _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4754.           _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4755.           _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4756.           ;;
  4757.         *Intel*\ [[CF]]*Compiler*)
  4758.           _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4759.           _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
  4760.           _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
  4761.           ;;
  4762.         *Portland\ Group*)
  4763.           _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4764.           _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
  4765.           _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4766.           ;;
  4767.         esac
  4768.         ;;
  4769.       esac
  4770.       ;;
  4771.  
  4772.     newsos6)
  4773.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4774.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4775.       ;;
  4776.  
  4777.     *nto* | *qnx*)
  4778.       # QNX uses GNU C++, but need to define -shared option too, otherwise
  4779.       # it will coredump.
  4780.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
  4781.       ;;
  4782.  
  4783.     osf3* | osf4* | osf5*)
  4784.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4785.       # All OSF/1 code is PIC.
  4786.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  4787.       ;;
  4788.  
  4789.     rdos*)
  4790.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
  4791.       ;;
  4792.  
  4793.     solaris*)
  4794.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4795.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4796.       case $cc_basename in
  4797.       f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
  4798.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
  4799.       *)
  4800.         _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
  4801.       esac
  4802.       ;;
  4803.  
  4804.     sunos4*)
  4805.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
  4806.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
  4807.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4808.       ;;
  4809.  
  4810.     sysv4 | sysv4.2uw2* | sysv4.3*)
  4811.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4812.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4813.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4814.       ;;
  4815.  
  4816.     sysv4*MP*)
  4817.       if test -d /usr/nec; then
  4818.         _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
  4819.         _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4820.       fi
  4821.       ;;
  4822.  
  4823.     sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
  4824.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4825.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  4826.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4827.       ;;
  4828.  
  4829.     unicos*)
  4830.       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
  4831.       _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
  4832.       ;;
  4833.  
  4834.     uts4*)
  4835.       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
  4836.       _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
  4837.       ;;
  4838.  
  4839.     *)
  4840.       _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
  4841.       ;;
  4842.     esac
  4843.   fi
  4844. ])
  4845. case $host_os in
  4846.   # For platforms that do not support PIC, -DPIC is meaningless:
  4847.   *djgpp*)
  4848.     _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  4849.     ;;
  4850.   *)
  4851.     _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
  4852.     ;;
  4853. esac
  4854.  
  4855. AC_CACHE_CHECK([for $compiler option to produce PIC],
  4856.   [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
  4857.   [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
  4858. _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
  4859.  
  4860. #
  4861. # Check to make sure the PIC flag actually works.
  4862. #
  4863. if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
  4864.   _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
  4865.     [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
  4866.     [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
  4867.     [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
  4868.      "" | " "*) ;;
  4869.      *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
  4870.      esac],
  4871.     [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
  4872.      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
  4873. fi
  4874. _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
  4875.         [Additional compiler flags for building library objects])
  4876.  
  4877. _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
  4878.         [How to pass a linker flag through the compiler])
  4879. #
  4880. # Check to make sure the static flag actually works.
  4881. #
  4882. wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
  4883. _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
  4884.   _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
  4885.   $lt_tmp_static_flag,
  4886.   [],
  4887.   [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
  4888. _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
  4889.         [Compiler flag to prevent dynamic linking])
  4890. ])# _LT_COMPILER_PIC
  4891.  
  4892.  
  4893. # _LT_LINKER_SHLIBS([TAGNAME])
  4894. # ----------------------------
  4895. # See if the linker supports building shared libraries.
  4896. m4_defun([_LT_LINKER_SHLIBS],
  4897. [AC_REQUIRE([LT_PATH_LD])dnl
  4898. AC_REQUIRE([LT_PATH_NM])dnl
  4899. m4_require([_LT_PATH_MANIFEST_TOOL])dnl
  4900. m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  4901. m4_require([_LT_DECL_EGREP])dnl
  4902. m4_require([_LT_DECL_SED])dnl
  4903. m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
  4904. m4_require([_LT_TAG_COMPILER])dnl
  4905. AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
  4906. m4_if([$1], [CXX], [
  4907.   _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
  4908.   _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
  4909.   case $host_os in
  4910.   aix[[4-9]]*)
  4911.     # If we're using GNU nm, then we don't want the "-C" option.
  4912.     # -C means demangle to GNU nm, but means don't demangle to AIX nm.
  4913.     # Without the "-l" option, or with the "-B" option, AIX nm treats
  4914.     # weak defined symbols like other global defined symbols, whereas
  4915.     # GNU nm marks them as "W".
  4916.     # While the 'weak' keyword is ignored in the Export File, we need
  4917.     # it in the Import File for the 'aix-soname' feature, so we have
  4918.     # to replace the "-B" option with "-P" for AIX nm.
  4919.     if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
  4920.       _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
  4921.     else
  4922.       _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
  4923.     fi
  4924.     ;;
  4925.   pw32*)
  4926.     _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
  4927.     ;;
  4928.   cygwin* | mingw* | cegcc*)
  4929.     case $cc_basename in
  4930.     cl*)
  4931.       _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
  4932.       ;;
  4933.     *)
  4934.       _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
  4935.       _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
  4936.       ;;
  4937.     esac
  4938.     ;;
  4939.   *)
  4940.     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
  4941.     ;;
  4942.   esac
  4943. ], [
  4944.   runpath_var=
  4945.   _LT_TAGVAR(allow_undefined_flag, $1)=
  4946.   _LT_TAGVAR(always_export_symbols, $1)=no
  4947.   _LT_TAGVAR(archive_cmds, $1)=
  4948.   _LT_TAGVAR(archive_expsym_cmds, $1)=
  4949.   _LT_TAGVAR(compiler_needs_object, $1)=no
  4950.   _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  4951.   _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  4952.   _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
  4953.   _LT_TAGVAR(hardcode_automatic, $1)=no
  4954.   _LT_TAGVAR(hardcode_direct, $1)=no
  4955.   _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  4956.   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  4957.   _LT_TAGVAR(hardcode_libdir_separator, $1)=
  4958.   _LT_TAGVAR(hardcode_minus_L, $1)=no
  4959.   _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
  4960.   _LT_TAGVAR(inherit_rpath, $1)=no
  4961.   _LT_TAGVAR(link_all_deplibs, $1)=unknown
  4962.   _LT_TAGVAR(module_cmds, $1)=
  4963.   _LT_TAGVAR(module_expsym_cmds, $1)=
  4964.   _LT_TAGVAR(old_archive_from_new_cmds, $1)=
  4965.   _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
  4966.   _LT_TAGVAR(thread_safe_flag_spec, $1)=
  4967.   _LT_TAGVAR(whole_archive_flag_spec, $1)=
  4968.   # include_expsyms should be a list of space-separated symbols to be *always*
  4969.   # included in the symbol list
  4970.   _LT_TAGVAR(include_expsyms, $1)=
  4971.   # exclude_expsyms can be an extended regexp of symbols to exclude
  4972.   # it will be wrapped by ' (' and ')$', so one must not match beginning or
  4973.   # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
  4974.   # as well as any symbol that contains 'd'.
  4975.   _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
  4976.   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
  4977.   # platforms (ab)use it in PIC code, but their linkers get confused if
  4978.   # the symbol is explicitly referenced.  Since portable code cannot
  4979.   # rely on this symbol name, it's probably fine to never include it in
  4980.   # preloaded symbol tables.
  4981.   # Exclude shared library initialization/finalization symbols.
  4982. dnl Note also adjust exclude_expsyms for C++ above.
  4983.   extract_expsyms_cmds=
  4984.  
  4985.   case $host_os in
  4986.   cygwin* | mingw* | pw32* | cegcc*)
  4987.     # FIXME: the MSVC++ port hasn't been tested in a loooong time
  4988.     # When not using gcc, we currently assume that we are using
  4989.     # Microsoft Visual C++.
  4990.     if test yes != "$GCC"; then
  4991.       with_gnu_ld=no
  4992.     fi
  4993.     ;;
  4994.   interix*)
  4995.     # we just hope/assume this is gcc and not c89 (= MSVC++)
  4996.     with_gnu_ld=yes
  4997.     ;;
  4998.   openbsd* | bitrig*)
  4999.     with_gnu_ld=no
  5000.     ;;
  5001.   esac
  5002.  
  5003.   _LT_TAGVAR(ld_shlibs, $1)=yes
  5004.  
  5005.   # On some targets, GNU ld is compatible enough with the native linker
  5006.   # that we're better off using the native interface for both.
  5007.   lt_use_gnu_ld_interface=no
  5008.   if test yes = "$with_gnu_ld"; then
  5009.     case $host_os in
  5010.       aix*)
  5011.         # The AIX port of GNU ld has always aspired to compatibility
  5012.         # with the native linker.  However, as the warning in the GNU ld
  5013.         # block says, versions before 2.19.5* couldn't really create working
  5014.         # shared libraries, regardless of the interface used.
  5015.         case `$LD -v 2>&1` in
  5016.           *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
  5017.           *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
  5018.           *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
  5019.           *)
  5020.             lt_use_gnu_ld_interface=yes
  5021.             ;;
  5022.         esac
  5023.         ;;
  5024.       *)
  5025.         lt_use_gnu_ld_interface=yes
  5026.         ;;
  5027.     esac
  5028.   fi
  5029.  
  5030.   if test yes = "$lt_use_gnu_ld_interface"; then
  5031.     # If archive_cmds runs LD, not CC, wlarc should be empty
  5032.     wlarc='$wl'
  5033.  
  5034.     # Set some defaults for GNU ld with shared library support. These
  5035.     # are reset later if shared libraries are not supported. Putting them
  5036.     # here allows them to be overridden if necessary.
  5037.     runpath_var=LD_RUN_PATH
  5038.     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  5039.     _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
  5040.     # ancient GNU ld didn't support --whole-archive et. al.
  5041.     if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
  5042.       _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
  5043.     else
  5044.       _LT_TAGVAR(whole_archive_flag_spec, $1)=
  5045.     fi
  5046.     supports_anon_versioning=no
  5047.     case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
  5048.       *GNU\ gold*) supports_anon_versioning=yes ;;
  5049.       *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
  5050.       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
  5051.       *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
  5052.       *\ 2.11.*) ;; # other 2.11 versions
  5053.       *) supports_anon_versioning=yes ;;
  5054.     esac
  5055.  
  5056.     # See if GNU ld supports shared libraries.
  5057.     case $host_os in
  5058.     aix[[3-9]]*)
  5059.       # On AIX/PPC, the GNU linker is very broken
  5060.       if test ia64 != "$host_cpu"; then
  5061.         _LT_TAGVAR(ld_shlibs, $1)=no
  5062.         cat <<_LT_EOF 1>&2
  5063.  
  5064. *** Warning: the GNU linker, at least up to release 2.19, is reported
  5065. *** to be unable to reliably create shared libraries on AIX.
  5066. *** Therefore, libtool is disabling shared libraries support.  If you
  5067. *** really care for shared libraries, you may want to install binutils
  5068. *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
  5069. *** You will then need to restart the configuration process.
  5070.  
  5071. _LT_EOF
  5072.       fi
  5073.       ;;
  5074.  
  5075.     amigaos*)
  5076.       case $host_cpu in
  5077.       powerpc)
  5078.             # see comment about AmigaOS4 .so support
  5079.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5080.             _LT_TAGVAR(archive_expsym_cmds, $1)=''
  5081.         ;;
  5082.       m68k)
  5083.             _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
  5084.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  5085.             _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5086.         ;;
  5087.       esac
  5088.       ;;
  5089.  
  5090.     beos*)
  5091.       if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  5092.         _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  5093.         # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
  5094.         # support --undefined.  This deserves some investigation.  FIXME
  5095.         _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5096.       else
  5097.         _LT_TAGVAR(ld_shlibs, $1)=no
  5098.       fi
  5099.       ;;
  5100.  
  5101.     cygwin* | mingw* | pw32* | cegcc*)
  5102.       # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
  5103.       # as there is no search path for DLLs.
  5104.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  5105.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
  5106.       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  5107.       _LT_TAGVAR(always_export_symbols, $1)=no
  5108.       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  5109.       _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
  5110.       _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
  5111.  
  5112.       if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
  5113.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
  5114.         # If the export-symbols file already is a .def file, use it as
  5115.         # is; otherwise, prepend EXPORTS...
  5116.         _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
  5117.           cp $export_symbols $output_objdir/$soname.def;
  5118.         else
  5119.           echo EXPORTS > $output_objdir/$soname.def;
  5120.           cat $export_symbols >> $output_objdir/$soname.def;
  5121.         fi~
  5122.         $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
  5123.       else
  5124.         _LT_TAGVAR(ld_shlibs, $1)=no
  5125.       fi
  5126.       ;;
  5127.  
  5128.     haiku*)
  5129.       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5130.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  5131.       ;;
  5132.  
  5133.     os2*)
  5134.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  5135.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5136.       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  5137.       shrext_cmds=.dll
  5138.       _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
  5139.         $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
  5140.         $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
  5141.         $ECHO EXPORTS >> $output_objdir/$libname.def~
  5142.         emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
  5143.         $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
  5144.         emximp -o $lib $output_objdir/$libname.def'
  5145.       _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
  5146.         $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
  5147.         $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
  5148.         $ECHO EXPORTS >> $output_objdir/$libname.def~
  5149.         prefix_cmds="$SED"~
  5150.         if test EXPORTS = "`$SED 1q $export_symbols`"; then
  5151.           prefix_cmds="$prefix_cmds -e 1d";
  5152.         fi~
  5153.         prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
  5154.         cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
  5155.         $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
  5156.         emximp -o $lib $output_objdir/$libname.def'
  5157.       _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
  5158.       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  5159.       ;;
  5160.  
  5161.     interix[[3-9]]*)
  5162.       _LT_TAGVAR(hardcode_direct, $1)=no
  5163.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5164.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
  5165.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  5166.       # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
  5167.       # Instead, shared libraries are loaded at an image base (0x10000000 by
  5168.       # default) and relocated if they conflict, which is a slow very memory
  5169.       # consuming and fragmenting process.  To avoid this, we pick a random,
  5170.       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
  5171.       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
  5172.       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
  5173.       _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
  5174.       ;;
  5175.  
  5176.     gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
  5177.       tmp_diet=no
  5178.       if test linux-dietlibc = "$host_os"; then
  5179.         case $cc_basename in
  5180.           diet\ *) tmp_diet=yes;;       # linux-dietlibc with static linking (!diet-dyn)
  5181.         esac
  5182.       fi
  5183.       if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
  5184.          && test no = "$tmp_diet"
  5185.       then
  5186.         tmp_addflag=' $pic_flag'
  5187.         tmp_sharedflag='-shared'
  5188.         case $cc_basename,$host_cpu in
  5189.         pgcc*)                          # Portland Group C compiler
  5190.           _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
  5191.           tmp_addflag=' $pic_flag'
  5192.           ;;
  5193.         pgf77* | pgf90* | pgf95* | pgfortran*)
  5194.                                         # Portland Group f77 and f90 compilers
  5195.           _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
  5196.           tmp_addflag=' $pic_flag -Mnomain' ;;
  5197.         ecc*,ia64* | icc*,ia64*)        # Intel C compiler on ia64
  5198.           tmp_addflag=' -i_dynamic' ;;
  5199.         efc*,ia64* | ifort*,ia64*)      # Intel Fortran compiler on ia64
  5200.           tmp_addflag=' -i_dynamic -nofor_main' ;;
  5201.         ifc* | ifort*)                  # Intel Fortran compiler
  5202.           tmp_addflag=' -nofor_main' ;;
  5203.         lf95*)                          # Lahey Fortran 8.1
  5204.           _LT_TAGVAR(whole_archive_flag_spec, $1)=
  5205.           tmp_sharedflag='--shared' ;;
  5206.         nagfor*)                        # NAGFOR 5.3
  5207.           tmp_sharedflag='-Wl,-shared' ;;
  5208.         xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
  5209.           tmp_sharedflag='-qmkshrobj'
  5210.           tmp_addflag= ;;
  5211.         nvcc*)  # Cuda Compiler Driver 2.2
  5212.           _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
  5213.           _LT_TAGVAR(compiler_needs_object, $1)=yes
  5214.           ;;
  5215.         esac
  5216.         case `$CC -V 2>&1 | sed 5q` in
  5217.         *Sun\ C*)                       # Sun C 5.9
  5218.           _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
  5219.           _LT_TAGVAR(compiler_needs_object, $1)=yes
  5220.           tmp_sharedflag='-G' ;;
  5221.         *Sun\ F*)                       # Sun Fortran 8.3
  5222.           tmp_sharedflag='-G' ;;
  5223.         esac
  5224.         _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5225.  
  5226.         if test yes = "$supports_anon_versioning"; then
  5227.           _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
  5228.             cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
  5229.             echo "local: *; };" >> $output_objdir/$libname.ver~
  5230.             $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
  5231.         fi
  5232.  
  5233.         case $cc_basename in
  5234.         tcc*)
  5235.           _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
  5236.           ;;
  5237.         xlf* | bgf* | bgxlf* | mpixlf*)
  5238.           # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
  5239.           _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
  5240.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  5241.           _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
  5242.           if test yes = "$supports_anon_versioning"; then
  5243.             _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
  5244.               cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
  5245.               echo "local: *; };" >> $output_objdir/$libname.ver~
  5246.               $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
  5247.           fi
  5248.           ;;
  5249.         esac
  5250.       else
  5251.         _LT_TAGVAR(ld_shlibs, $1)=no
  5252.       fi
  5253.       ;;
  5254.  
  5255.     netbsd*)
  5256.       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  5257.         _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  5258.         wlarc=
  5259.       else
  5260.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5261.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  5262.       fi
  5263.       ;;
  5264.  
  5265.     solaris*)
  5266.       if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
  5267.         _LT_TAGVAR(ld_shlibs, $1)=no
  5268.         cat <<_LT_EOF 1>&2
  5269.  
  5270. *** Warning: The releases 2.8.* of the GNU linker cannot reliably
  5271. *** create shared libraries on Solaris systems.  Therefore, libtool
  5272. *** is disabling shared libraries support.  We urge you to upgrade GNU
  5273. *** binutils to release 2.9.1 or newer.  Another option is to modify
  5274. *** your PATH or compiler configuration so that the native linker is
  5275. *** used, and then restart.
  5276.  
  5277. _LT_EOF
  5278.       elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  5279.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5280.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  5281.       else
  5282.         _LT_TAGVAR(ld_shlibs, $1)=no
  5283.       fi
  5284.       ;;
  5285.  
  5286.     sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
  5287.       case `$LD -v 2>&1` in
  5288.         *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
  5289.         _LT_TAGVAR(ld_shlibs, $1)=no
  5290.         cat <<_LT_EOF 1>&2
  5291.  
  5292. *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
  5293. *** reliably create shared libraries on SCO systems.  Therefore, libtool
  5294. *** is disabling shared libraries support.  We urge you to upgrade GNU
  5295. *** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
  5296. *** your PATH or compiler configuration so that the native linker is
  5297. *** used, and then restart.
  5298.  
  5299. _LT_EOF
  5300.         ;;
  5301.         *)
  5302.           # For security reasons, it is highly recommended that you always
  5303.           # use absolute paths for naming shared libraries, and exclude the
  5304.           # DT_RUNPATH tag from executables and libraries.  But doing so
  5305.           # requires that you compile everything twice, which is a pain.
  5306.           if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  5307.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  5308.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5309.             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  5310.           else
  5311.             _LT_TAGVAR(ld_shlibs, $1)=no
  5312.           fi
  5313.         ;;
  5314.       esac
  5315.       ;;
  5316.  
  5317.     sunos4*)
  5318.       _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
  5319.       wlarc=
  5320.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5321.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5322.       ;;
  5323.  
  5324.     *)
  5325.       if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  5326.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5327.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  5328.       else
  5329.         _LT_TAGVAR(ld_shlibs, $1)=no
  5330.       fi
  5331.       ;;
  5332.     esac
  5333.  
  5334.     if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
  5335.       runpath_var=
  5336.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  5337.       _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  5338.       _LT_TAGVAR(whole_archive_flag_spec, $1)=
  5339.     fi
  5340.   else
  5341.     # PORTME fill in a description of your system's linker (not GNU ld)
  5342.     case $host_os in
  5343.     aix3*)
  5344.       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  5345.       _LT_TAGVAR(always_export_symbols, $1)=yes
  5346.       _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
  5347.       # Note: this linker hardcodes the directories in LIBPATH if there
  5348.       # are no directories specified by -L.
  5349.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5350.       if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
  5351.         # Neither direct hardcoding nor static linking is supported with a
  5352.         # broken collect2.
  5353.         _LT_TAGVAR(hardcode_direct, $1)=unsupported
  5354.       fi
  5355.       ;;
  5356.  
  5357.     aix[[4-9]]*)
  5358.       if test ia64 = "$host_cpu"; then
  5359.         # On IA64, the linker does run time linking by default, so we don't
  5360.         # have to do anything special.
  5361.         aix_use_runtimelinking=no
  5362.         exp_sym_flag='-Bexport'
  5363.         no_entry_flag=
  5364.       else
  5365.         # If we're using GNU nm, then we don't want the "-C" option.
  5366.         # -C means demangle to GNU nm, but means don't demangle to AIX nm.
  5367.         # Without the "-l" option, or with the "-B" option, AIX nm treats
  5368.         # weak defined symbols like other global defined symbols, whereas
  5369.         # GNU nm marks them as "W".
  5370.         # While the 'weak' keyword is ignored in the Export File, we need
  5371.         # it in the Import File for the 'aix-soname' feature, so we have
  5372.         # to replace the "-B" option with "-P" for AIX nm.
  5373.         if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
  5374.           _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
  5375.         else
  5376.           _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
  5377.         fi
  5378.         aix_use_runtimelinking=no
  5379.  
  5380.         # Test if we are trying to use run time linking or normal
  5381.         # AIX style linking. If -brtl is somewhere in LDFLAGS, we
  5382.         # have runtime linking enabled, and use it for executables.
  5383.         # For shared libraries, we enable/disable runtime linking
  5384.         # depending on the kind of the shared library created -
  5385.         # when "with_aix_soname,aix_use_runtimelinking" is:
  5386.         # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
  5387.         # "aix,yes"  lib.so          shared, rtl:yes, for executables
  5388.         #            lib.a           static archive
  5389.         # "both,no"  lib.so.V(shr.o) shared, rtl:yes
  5390.         #            lib.a(lib.so.V) shared, rtl:no,  for executables
  5391.         # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
  5392.         #            lib.a(lib.so.V) shared, rtl:no
  5393.         # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
  5394.         #            lib.a           static archive
  5395.         case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
  5396.           for ld_flag in $LDFLAGS; do
  5397.           if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
  5398.             aix_use_runtimelinking=yes
  5399.             break
  5400.           fi
  5401.           done
  5402.           if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
  5403.             # With aix-soname=svr4, we create the lib.so.V shared archives only,
  5404.             # so we don't have lib.a shared libs to link our executables.
  5405.             # We have to force runtime linking in this case.
  5406.             aix_use_runtimelinking=yes
  5407.             LDFLAGS="$LDFLAGS -Wl,-brtl"
  5408.           fi
  5409.           ;;
  5410.         esac
  5411.  
  5412.         exp_sym_flag='-bexport'
  5413.         no_entry_flag='-bnoentry'
  5414.       fi
  5415.  
  5416.       # When large executables or shared objects are built, AIX ld can
  5417.       # have problems creating the table of contents.  If linking a library
  5418.       # or program results in "error TOC overflow" add -mminimal-toc to
  5419.       # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
  5420.       # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
  5421.  
  5422.       _LT_TAGVAR(archive_cmds, $1)=''
  5423.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5424.       _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  5425.       _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
  5426.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  5427.       _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
  5428.       case $with_aix_soname,$aix_use_runtimelinking in
  5429.       aix,*) ;; # traditional, no import file
  5430.       svr4,* | *,yes) # use import file
  5431.         # The Import File defines what to hardcode.
  5432.         _LT_TAGVAR(hardcode_direct, $1)=no
  5433.         _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  5434.         ;;
  5435.       esac
  5436.  
  5437.       if test yes = "$GCC"; then
  5438.         case $host_os in aix4.[[012]]|aix4.[[012]].*)
  5439.         # We only want to do this on AIX 4.2 and lower, the check
  5440.         # below for broken collect2 doesn't work under 4.3+
  5441.           collect2name=`$CC -print-prog-name=collect2`
  5442.           if test -f "$collect2name" &&
  5443.            strings "$collect2name" | $GREP resolve_lib_name >/dev/null
  5444.           then
  5445.           # We have reworked collect2
  5446.           :
  5447.           else
  5448.           # We have old collect2
  5449.           _LT_TAGVAR(hardcode_direct, $1)=unsupported
  5450.           # It fails to find uninstalled libraries when the uninstalled
  5451.           # path is not listed in the libpath.  Setting hardcode_minus_L
  5452.           # to unsupported forces relinking
  5453.           _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5454.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  5455.           _LT_TAGVAR(hardcode_libdir_separator, $1)=
  5456.           fi
  5457.           ;;
  5458.         esac
  5459.         shared_flag='-shared'
  5460.         if test yes = "$aix_use_runtimelinking"; then
  5461.           shared_flag="$shared_flag "'$wl-G'
  5462.         fi
  5463.         # Need to ensure runtime linking is disabled for the traditional
  5464.         # shared library, or the linker may eventually find shared libraries
  5465.         # /with/ Import File - we do not want to mix them.
  5466.         shared_flag_aix='-shared'
  5467.         shared_flag_svr4='-shared $wl-G'
  5468.       else
  5469.         # not using gcc
  5470.         if test ia64 = "$host_cpu"; then
  5471.         # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
  5472.         # chokes on -Wl,-G. The following line is correct:
  5473.           shared_flag='-G'
  5474.         else
  5475.           if test yes = "$aix_use_runtimelinking"; then
  5476.             shared_flag='$wl-G'
  5477.           else
  5478.             shared_flag='$wl-bM:SRE'
  5479.           fi
  5480.           shared_flag_aix='$wl-bM:SRE'
  5481.           shared_flag_svr4='$wl-G'
  5482.         fi
  5483.       fi
  5484.  
  5485.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
  5486.       # It seems that -bexpall does not export symbols beginning with
  5487.       # underscore (_), so it is better to generate a list of symbols to export.
  5488.       _LT_TAGVAR(always_export_symbols, $1)=yes
  5489.       if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
  5490.         # Warning - without using the other runtime loading flags (-brtl),
  5491.         # -berok will link without error, but may produce a broken library.
  5492.         _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
  5493.         # Determine the default libpath from the value encoded in an
  5494.         # empty executable.
  5495.         _LT_SYS_MODULE_PATH_AIX([$1])
  5496.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
  5497.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
  5498.       else
  5499.         if test ia64 = "$host_cpu"; then
  5500.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
  5501.           _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
  5502.           _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
  5503.         else
  5504.          # Determine the default libpath from the value encoded in an
  5505.          # empty executable.
  5506.          _LT_SYS_MODULE_PATH_AIX([$1])
  5507.          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
  5508.           # Warning - without using the other run time loading flags,
  5509.           # -berok will link without error, but may produce a broken library.
  5510.           _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
  5511.           _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
  5512.           if test yes = "$with_gnu_ld"; then
  5513.             # We only use this code for GNU lds that support --whole-archive.
  5514.             _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
  5515.           else
  5516.             # Exported symbols can be pulled into shared objects from archives
  5517.             _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
  5518.           fi
  5519.           _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
  5520.           _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
  5521.           # -brtl affects multiple linker settings, -berok does not and is overridden later
  5522.           compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
  5523.           if test svr4 != "$with_aix_soname"; then
  5524.             # This is similar to how AIX traditionally builds its shared libraries.
  5525.             _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
  5526.           fi
  5527.           if test aix != "$with_aix_soname"; then
  5528.             _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
  5529.           else
  5530.             # used by -dlpreopen to get the symbols
  5531.             _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
  5532.           fi
  5533.           _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
  5534.         fi
  5535.       fi
  5536.       ;;
  5537.  
  5538.     amigaos*)
  5539.       case $host_cpu in
  5540.       powerpc)
  5541.             # see comment about AmigaOS4 .so support
  5542.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  5543.             _LT_TAGVAR(archive_expsym_cmds, $1)=''
  5544.         ;;
  5545.       m68k)
  5546.             _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
  5547.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  5548.             _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5549.         ;;
  5550.       esac
  5551.       ;;
  5552.  
  5553.     bsdi[[45]]*)
  5554.       _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
  5555.       ;;
  5556.  
  5557.     cygwin* | mingw* | pw32* | cegcc*)
  5558.       # When not using gcc, we currently assume that we are using
  5559.       # Microsoft Visual C++.
  5560.       # hardcode_libdir_flag_spec is actually meaningless, as there is
  5561.       # no search path for DLLs.
  5562.       case $cc_basename in
  5563.       cl*)
  5564.         # Native MSVC
  5565.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
  5566.         _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  5567.         _LT_TAGVAR(always_export_symbols, $1)=yes
  5568.         _LT_TAGVAR(file_list_spec, $1)='@'
  5569.         # Tell ltmain to make .lib files, not .a files.
  5570.         libext=lib
  5571.         # Tell ltmain to make .dll files, not .so files.
  5572.         shrext_cmds=.dll
  5573.         # FIXME: Setting linknames here is a bad hack.
  5574.         _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
  5575.         _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
  5576.             cp "$export_symbols" "$output_objdir/$soname.def";
  5577.             echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
  5578.           else
  5579.             $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
  5580.           fi~
  5581.           $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
  5582.           linknames='
  5583.         # The linker will not automatically build a static lib if we build a DLL.
  5584.         # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
  5585.         _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  5586.         _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
  5587.         _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
  5588.         # Don't use ranlib
  5589.         _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
  5590.         _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
  5591.           lt_tool_outputfile="@TOOL_OUTPUT@"~
  5592.           case $lt_outputfile in
  5593.             *.exe|*.EXE) ;;
  5594.             *)
  5595.               lt_outputfile=$lt_outputfile.exe
  5596.               lt_tool_outputfile=$lt_tool_outputfile.exe
  5597.               ;;
  5598.           esac~
  5599.           if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
  5600.             $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
  5601.             $RM "$lt_outputfile.manifest";
  5602.           fi'
  5603.         ;;
  5604.       *)
  5605.         # Assume MSVC wrapper
  5606.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
  5607.         _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  5608.         # Tell ltmain to make .lib files, not .a files.
  5609.         libext=lib
  5610.         # Tell ltmain to make .dll files, not .so files.
  5611.         shrext_cmds=.dll
  5612.         # FIXME: Setting linknames here is a bad hack.
  5613.         _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
  5614.         # The linker will automatically build a .lib file if we build a DLL.
  5615.         _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
  5616.         # FIXME: Should let the user specify the lib program.
  5617.         _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
  5618.         _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  5619.         ;;
  5620.       esac
  5621.       ;;
  5622.  
  5623.     darwin* | rhapsody*)
  5624.       _LT_DARWIN_LINKER_FEATURES($1)
  5625.       ;;
  5626.  
  5627.     dgux*)
  5628.       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  5629.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  5630.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5631.       ;;
  5632.  
  5633.     # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
  5634.     # support.  Future versions do this automatically, but an explicit c++rt0.o
  5635.     # does not break anything, and helps significantly (at the cost of a little
  5636.     # extra space).
  5637.     freebsd2.2*)
  5638.       _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
  5639.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  5640.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5641.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5642.       ;;
  5643.  
  5644.     # Unfortunately, older versions of FreeBSD 2 do not have this feature.
  5645.     freebsd2.*)
  5646.       _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
  5647.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5648.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5649.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5650.       ;;
  5651.  
  5652.     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
  5653.     freebsd* | dragonfly*)
  5654.       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
  5655.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  5656.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5657.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5658.       ;;
  5659.  
  5660.     hpux9*)
  5661.       if test yes = "$GCC"; then
  5662.         _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
  5663.       else
  5664.         _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
  5665.       fi
  5666.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
  5667.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  5668.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5669.  
  5670.       # hardcode_minus_L: Not really in the search PATH,
  5671.       # but as the default location of the library.
  5672.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5673.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  5674.       ;;
  5675.  
  5676.     hpux10*)
  5677.       if test yes,no = "$GCC,$with_gnu_ld"; then
  5678.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
  5679.       else
  5680.         _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
  5681.       fi
  5682.       if test no = "$with_gnu_ld"; then
  5683.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
  5684.         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  5685.         _LT_TAGVAR(hardcode_direct, $1)=yes
  5686.         _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  5687.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  5688.         # hardcode_minus_L: Not really in the search PATH,
  5689.         # but as the default location of the library.
  5690.         _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5691.       fi
  5692.       ;;
  5693.  
  5694.     hpux11*)
  5695.       if test yes,no = "$GCC,$with_gnu_ld"; then
  5696.         case $host_cpu in
  5697.         hppa*64*)
  5698.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
  5699.           ;;
  5700.         ia64*)
  5701.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
  5702.           ;;
  5703.         *)
  5704.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
  5705.           ;;
  5706.         esac
  5707.       else
  5708.         case $host_cpu in
  5709.         hppa*64*)
  5710.           _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
  5711.           ;;
  5712.         ia64*)
  5713.           _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
  5714.           ;;
  5715.         *)
  5716.         m4_if($1, [], [
  5717.           # Older versions of the 11.00 compiler do not understand -b yet
  5718.           # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
  5719.           _LT_LINKER_OPTION([if $CC understands -b],
  5720.             _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
  5721.             [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
  5722.             [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
  5723.           [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
  5724.           ;;
  5725.         esac
  5726.       fi
  5727.       if test no = "$with_gnu_ld"; then
  5728.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
  5729.         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  5730.  
  5731.         case $host_cpu in
  5732.         hppa*64*|ia64*)
  5733.           _LT_TAGVAR(hardcode_direct, $1)=no
  5734.           _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5735.           ;;
  5736.         *)
  5737.           _LT_TAGVAR(hardcode_direct, $1)=yes
  5738.           _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  5739.           _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  5740.  
  5741.           # hardcode_minus_L: Not really in the search PATH,
  5742.           # but as the default location of the library.
  5743.           _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5744.           ;;
  5745.         esac
  5746.       fi
  5747.       ;;
  5748.  
  5749.     irix5* | irix6* | nonstopux*)
  5750.       if test yes = "$GCC"; then
  5751.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
  5752.         # Try to use the -exported_symbol ld option, if it does not
  5753.         # work, assume that -exports_file does not work either and
  5754.         # implicitly export all symbols.
  5755.         # This should be the same for all languages, so no per-tag cache variable.
  5756.         AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
  5757.           [lt_cv_irix_exported_symbol],
  5758.           [save_LDFLAGS=$LDFLAGS
  5759.            LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
  5760.            AC_LINK_IFELSE(
  5761.              [AC_LANG_SOURCE(
  5762.                 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
  5763.                               [C++], [[int foo (void) { return 0; }]],
  5764.                               [Fortran 77], [[
  5765.       subroutine foo
  5766.       end]],
  5767.                               [Fortran], [[
  5768.       subroutine foo
  5769.       end]])])],
  5770.               [lt_cv_irix_exported_symbol=yes],
  5771.               [lt_cv_irix_exported_symbol=no])
  5772.            LDFLAGS=$save_LDFLAGS])
  5773.         if test yes = "$lt_cv_irix_exported_symbol"; then
  5774.           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
  5775.         fi
  5776.       else
  5777.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
  5778.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
  5779.       fi
  5780.       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
  5781.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  5782.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  5783.       _LT_TAGVAR(inherit_rpath, $1)=yes
  5784.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  5785.       ;;
  5786.  
  5787.     linux*)
  5788.       case $cc_basename in
  5789.       tcc*)
  5790.         # Fabrice Bellard et al's Tiny C Compiler
  5791.         _LT_TAGVAR(ld_shlibs, $1)=yes
  5792.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
  5793.         ;;
  5794.       esac
  5795.       ;;
  5796.  
  5797.     netbsd*)
  5798.       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  5799.         _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
  5800.       else
  5801.         _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
  5802.       fi
  5803.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  5804.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5805.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5806.       ;;
  5807.  
  5808.     newsos6)
  5809.       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  5810.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5811.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  5812.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  5813.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5814.       ;;
  5815.  
  5816.     *nto* | *qnx*)
  5817.       ;;
  5818.  
  5819.     openbsd* | bitrig*)
  5820.       if test -f /usr/libexec/ld.so; then
  5821.         _LT_TAGVAR(hardcode_direct, $1)=yes
  5822.         _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5823.         _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  5824.         if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
  5825.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
  5826.           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
  5827.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
  5828.           _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  5829.         else
  5830.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
  5831.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
  5832.         fi
  5833.       else
  5834.         _LT_TAGVAR(ld_shlibs, $1)=no
  5835.       fi
  5836.       ;;
  5837.  
  5838.     os2*)
  5839.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  5840.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5841.       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  5842.       shrext_cmds=.dll
  5843.       _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
  5844.         $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
  5845.         $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
  5846.         $ECHO EXPORTS >> $output_objdir/$libname.def~
  5847.         emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
  5848.         $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
  5849.         emximp -o $lib $output_objdir/$libname.def'
  5850.       _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
  5851.         $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
  5852.         $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
  5853.         $ECHO EXPORTS >> $output_objdir/$libname.def~
  5854.         prefix_cmds="$SED"~
  5855.         if test EXPORTS = "`$SED 1q $export_symbols`"; then
  5856.           prefix_cmds="$prefix_cmds -e 1d";
  5857.         fi~
  5858.         prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
  5859.         cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
  5860.         $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
  5861.         emximp -o $lib $output_objdir/$libname.def'
  5862.       _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
  5863.       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  5864.       ;;
  5865.  
  5866.     osf3*)
  5867.       if test yes = "$GCC"; then
  5868.         _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
  5869.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
  5870.       else
  5871.         _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
  5872.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
  5873.       fi
  5874.       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
  5875.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  5876.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  5877.       ;;
  5878.  
  5879.     osf4* | osf5*)      # as osf3* with the addition of -msym flag
  5880.       if test yes = "$GCC"; then
  5881.         _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
  5882.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
  5883.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  5884.       else
  5885.         _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
  5886.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
  5887.         _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
  5888.           $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
  5889.  
  5890.         # Both c and cxx compiler support -rpath directly
  5891.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
  5892.       fi
  5893.       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
  5894.       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  5895.       ;;
  5896.  
  5897.     solaris*)
  5898.       _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
  5899.       if test yes = "$GCC"; then
  5900.         wlarc='$wl'
  5901.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
  5902.         _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  5903.           $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
  5904.       else
  5905.         case `$CC -V 2>&1` in
  5906.         *"Compilers 5.0"*)
  5907.           wlarc=''
  5908.           _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
  5909.           _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  5910.             $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
  5911.           ;;
  5912.         *)
  5913.           wlarc='$wl'
  5914.           _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
  5915.           _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  5916.             $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
  5917.           ;;
  5918.         esac
  5919.       fi
  5920.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  5921.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5922.       case $host_os in
  5923.       solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
  5924.       *)
  5925.         # The compiler driver will combine and reorder linker options,
  5926.         # but understands '-z linker_flag'.  GCC discards it without '$wl',
  5927.         # but is careful enough not to reorder.
  5928.         # Supported since Solaris 2.6 (maybe 2.5.1?)
  5929.         if test yes = "$GCC"; then
  5930.           _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
  5931.         else
  5932.           _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
  5933.         fi
  5934.         ;;
  5935.       esac
  5936.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  5937.       ;;
  5938.  
  5939.     sunos4*)
  5940.       if test sequent = "$host_vendor"; then
  5941.         # Use $CC to link under sequent, because it throws in some extra .o
  5942.         # files that make .init and .fini sections work.
  5943.         _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
  5944.       else
  5945.         _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
  5946.       fi
  5947.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  5948.       _LT_TAGVAR(hardcode_direct, $1)=yes
  5949.       _LT_TAGVAR(hardcode_minus_L, $1)=yes
  5950.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5951.       ;;
  5952.  
  5953.     sysv4)
  5954.       case $host_vendor in
  5955.         sni)
  5956.           _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  5957.           _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
  5958.         ;;
  5959.         siemens)
  5960.           ## LD is ld it makes a PLAMLIB
  5961.           ## CC just makes a GrossModule.
  5962.           _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
  5963.           _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
  5964.           _LT_TAGVAR(hardcode_direct, $1)=no
  5965.         ;;
  5966.         motorola)
  5967.           _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  5968.           _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
  5969.         ;;
  5970.       esac
  5971.       runpath_var='LD_RUN_PATH'
  5972.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5973.       ;;
  5974.  
  5975.     sysv4.3*)
  5976.       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  5977.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5978.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
  5979.       ;;
  5980.  
  5981.     sysv4*MP*)
  5982.       if test -d /usr/nec; then
  5983.         _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  5984.         _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5985.         runpath_var=LD_RUN_PATH
  5986.         hardcode_runpath_var=yes
  5987.         _LT_TAGVAR(ld_shlibs, $1)=yes
  5988.       fi
  5989.       ;;
  5990.  
  5991.     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
  5992.       _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
  5993.       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  5994.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  5995.       runpath_var='LD_RUN_PATH'
  5996.  
  5997.       if test yes = "$GCC"; then
  5998.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  5999.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  6000.       else
  6001.         _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  6002.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  6003.       fi
  6004.       ;;
  6005.  
  6006.     sysv5* | sco3.2v5* | sco5v6*)
  6007.       # Note: We CANNOT use -z defs as we might desire, because we do not
  6008.       # link with -lc, and that would cause any symbols used from libc to
  6009.       # always be unresolved, which means just about no library would
  6010.       # ever link correctly.  If we're not using GNU ld we use -z text
  6011.       # though, which does catch some bad symbols but isn't as heavy-handed
  6012.       # as -z defs.
  6013.       _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
  6014.       _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
  6015.       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  6016.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  6017.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
  6018.       _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
  6019.       _LT_TAGVAR(link_all_deplibs, $1)=yes
  6020.       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
  6021.       runpath_var='LD_RUN_PATH'
  6022.  
  6023.       if test yes = "$GCC"; then
  6024.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  6025.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  6026.       else
  6027.         _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  6028.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  6029.       fi
  6030.       ;;
  6031.  
  6032.     uts4*)
  6033.       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
  6034.       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  6035.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  6036.       ;;
  6037.  
  6038.     *)
  6039.       _LT_TAGVAR(ld_shlibs, $1)=no
  6040.       ;;
  6041.     esac
  6042.  
  6043.     if test sni = "$host_vendor"; then
  6044.       case $host in
  6045.       sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  6046.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
  6047.         ;;
  6048.       esac
  6049.     fi
  6050.   fi
  6051. ])
  6052. AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
  6053. test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
  6054.  
  6055. _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
  6056.  
  6057. _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
  6058. _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
  6059. _LT_DECL([], [extract_expsyms_cmds], [2],
  6060.     [The commands to extract the exported symbol list from a shared archive])
  6061.  
  6062. #
  6063. # Do we need to explicitly link libc?
  6064. #
  6065. case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
  6066. x|xyes)
  6067.   # Assume -lc should be added
  6068.   _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
  6069.  
  6070.   if test yes,yes = "$GCC,$enable_shared"; then
  6071.     case $_LT_TAGVAR(archive_cmds, $1) in
  6072.     *'~'*)
  6073.       # FIXME: we may have to deal with multi-command sequences.
  6074.       ;;
  6075.     '$CC '*)
  6076.       # Test whether the compiler implicitly links with -lc since on some
  6077.       # systems, -lgcc has to come before -lc. If gcc already passes -lc
  6078.       # to ld, don't add -lc before -lgcc.
  6079.       AC_CACHE_CHECK([whether -lc should be explicitly linked in],
  6080.         [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
  6081.         [$RM conftest*
  6082.         echo "$lt_simple_compile_test_code" > conftest.$ac_ext
  6083.  
  6084.         if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
  6085.           soname=conftest
  6086.           lib=conftest
  6087.           libobjs=conftest.$ac_objext
  6088.           deplibs=
  6089.           wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
  6090.           pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
  6091.           compiler_flags=-v
  6092.           linker_flags=-v
  6093.           verstring=
  6094.           output_objdir=.
  6095.           libname=conftest
  6096.           lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
  6097.           _LT_TAGVAR(allow_undefined_flag, $1)=
  6098.           if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
  6099.           then
  6100.             lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
  6101.           else
  6102.             lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
  6103.           fi
  6104.           _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
  6105.         else
  6106.           cat conftest.err 1>&5
  6107.         fi
  6108.         $RM conftest*
  6109.         ])
  6110.       _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
  6111.       ;;
  6112.     esac
  6113.   fi
  6114.   ;;
  6115. esac
  6116.  
  6117. _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
  6118.     [Whether or not to add -lc for building shared libraries])
  6119. _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
  6120.     [enable_shared_with_static_runtimes], [0],
  6121.     [Whether or not to disallow shared libs when runtime libs are static])
  6122. _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
  6123.     [Compiler flag to allow reflexive dlopens])
  6124. _LT_TAGDECL([], [whole_archive_flag_spec], [1],
  6125.     [Compiler flag to generate shared objects directly from archives])
  6126. _LT_TAGDECL([], [compiler_needs_object], [1],
  6127.     [Whether the compiler copes with passing no objects directly])
  6128. _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
  6129.     [Create an old-style archive from a shared archive])
  6130. _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
  6131.     [Create a temporary old-style archive to link instead of a shared archive])
  6132. _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
  6133. _LT_TAGDECL([], [archive_expsym_cmds], [2])
  6134. _LT_TAGDECL([], [module_cmds], [2],
  6135.     [Commands used to build a loadable module if different from building
  6136.     a shared archive.])
  6137. _LT_TAGDECL([], [module_expsym_cmds], [2])
  6138. _LT_TAGDECL([], [with_gnu_ld], [1],
  6139.     [Whether we are building with GNU ld or not])
  6140. _LT_TAGDECL([], [allow_undefined_flag], [1],
  6141.     [Flag that allows shared libraries with undefined symbols to be built])
  6142. _LT_TAGDECL([], [no_undefined_flag], [1],
  6143.     [Flag that enforces no undefined symbols])
  6144. _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
  6145.     [Flag to hardcode $libdir into a binary during linking.
  6146.     This must work even if $libdir does not exist])
  6147. _LT_TAGDECL([], [hardcode_libdir_separator], [1],
  6148.     [Whether we need a single "-rpath" flag with a separated argument])
  6149. _LT_TAGDECL([], [hardcode_direct], [0],
  6150.     [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
  6151.     DIR into the resulting binary])
  6152. _LT_TAGDECL([], [hardcode_direct_absolute], [0],
  6153.     [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
  6154.     DIR into the resulting binary and the resulting library dependency is
  6155.     "absolute", i.e impossible to change by setting $shlibpath_var if the
  6156.     library is relocated])
  6157. _LT_TAGDECL([], [hardcode_minus_L], [0],
  6158.     [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
  6159.     into the resulting binary])
  6160. _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
  6161.     [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
  6162.     into the resulting binary])
  6163. _LT_TAGDECL([], [hardcode_automatic], [0],
  6164.     [Set to "yes" if building a shared library automatically hardcodes DIR
  6165.     into the library and all subsequent libraries and executables linked
  6166.     against it])
  6167. _LT_TAGDECL([], [inherit_rpath], [0],
  6168.     [Set to yes if linker adds runtime paths of dependent libraries
  6169.     to runtime path list])
  6170. _LT_TAGDECL([], [link_all_deplibs], [0],
  6171.     [Whether libtool must link a program against all its dependency libraries])
  6172. _LT_TAGDECL([], [always_export_symbols], [0],
  6173.     [Set to "yes" if exported symbols are required])
  6174. _LT_TAGDECL([], [export_symbols_cmds], [2],
  6175.     [The commands to list exported symbols])
  6176. _LT_TAGDECL([], [exclude_expsyms], [1],
  6177.     [Symbols that should not be listed in the preloaded symbols])
  6178. _LT_TAGDECL([], [include_expsyms], [1],
  6179.     [Symbols that must always be exported])
  6180. _LT_TAGDECL([], [prelink_cmds], [2],
  6181.     [Commands necessary for linking programs (against libraries) with templates])
  6182. _LT_TAGDECL([], [postlink_cmds], [2],
  6183.     [Commands necessary for finishing linking programs])
  6184. _LT_TAGDECL([], [file_list_spec], [1],
  6185.     [Specify filename containing input files])
  6186. dnl FIXME: Not yet implemented
  6187. dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
  6188. dnl    [Compiler flag to generate thread safe objects])
  6189. ])# _LT_LINKER_SHLIBS
  6190.  
  6191.  
  6192. # _LT_LANG_C_CONFIG([TAG])
  6193. # ------------------------
  6194. # Ensure that the configuration variables for a C compiler are suitably
  6195. # defined.  These variables are subsequently used by _LT_CONFIG to write
  6196. # the compiler configuration to 'libtool'.
  6197. m4_defun([_LT_LANG_C_CONFIG],
  6198. [m4_require([_LT_DECL_EGREP])dnl
  6199. lt_save_CC=$CC
  6200. AC_LANG_PUSH(C)
  6201.  
  6202. # Source file extension for C test sources.
  6203. ac_ext=c
  6204.  
  6205. # Object file extension for compiled C test sources.
  6206. objext=o
  6207. _LT_TAGVAR(objext, $1)=$objext
  6208.  
  6209. # Code to be used in simple compile tests
  6210. lt_simple_compile_test_code="int some_variable = 0;"
  6211.  
  6212. # Code to be used in simple link tests
  6213. lt_simple_link_test_code='int main(){return(0);}'
  6214.  
  6215. _LT_TAG_COMPILER
  6216. # Save the default compiler, since it gets overwritten when the other
  6217. # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
  6218. compiler_DEFAULT=$CC
  6219.  
  6220. # save warnings/boilerplate of simple test code
  6221. _LT_COMPILER_BOILERPLATE
  6222. _LT_LINKER_BOILERPLATE
  6223.  
  6224. ## CAVEAT EMPTOR:
  6225. ## There is no encapsulation within the following macros, do not change
  6226. ## the running order or otherwise move them around unless you know exactly
  6227. ## what you are doing...
  6228. if test -n "$compiler"; then
  6229.   _LT_COMPILER_NO_RTTI($1)
  6230.   _LT_COMPILER_PIC($1)
  6231.   _LT_COMPILER_C_O($1)
  6232.   _LT_COMPILER_FILE_LOCKS($1)
  6233.   _LT_LINKER_SHLIBS($1)
  6234.   _LT_SYS_DYNAMIC_LINKER($1)
  6235.   _LT_LINKER_HARDCODE_LIBPATH($1)
  6236.   LT_SYS_DLOPEN_SELF
  6237.   _LT_CMD_STRIPLIB
  6238.  
  6239.   # Report what library types will actually be built
  6240.   AC_MSG_CHECKING([if libtool supports shared libraries])
  6241.   AC_MSG_RESULT([$can_build_shared])
  6242.  
  6243.   AC_MSG_CHECKING([whether to build shared libraries])
  6244.   test no = "$can_build_shared" && enable_shared=no
  6245.  
  6246.   # On AIX, shared libraries and static libraries use the same namespace, and
  6247.   # are all built from PIC.
  6248.   case $host_os in
  6249.   aix3*)
  6250.     test yes = "$enable_shared" && enable_static=no
  6251.     if test -n "$RANLIB"; then
  6252.       archive_cmds="$archive_cmds~\$RANLIB \$lib"
  6253.       postinstall_cmds='$RANLIB $lib'
  6254.     fi
  6255.     ;;
  6256.  
  6257.   aix[[4-9]]*)
  6258.     if test ia64 != "$host_cpu"; then
  6259.       case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
  6260.       yes,aix,yes) ;;                   # shared object as lib.so file only
  6261.       yes,svr4,*) ;;                    # shared object as lib.so archive member only
  6262.       yes,*) enable_static=no ;;        # shared object in lib.a archive as well
  6263.       esac
  6264.     fi
  6265.     ;;
  6266.   esac
  6267.   AC_MSG_RESULT([$enable_shared])
  6268.  
  6269.   AC_MSG_CHECKING([whether to build static libraries])
  6270.   # Make sure either enable_shared or enable_static is yes.
  6271.   test yes = "$enable_shared" || enable_static=yes
  6272.   AC_MSG_RESULT([$enable_static])
  6273.  
  6274.   _LT_CONFIG($1)
  6275. fi
  6276. AC_LANG_POP
  6277. CC=$lt_save_CC
  6278. ])# _LT_LANG_C_CONFIG
  6279.  
  6280.  
  6281. # _LT_LANG_CXX_CONFIG([TAG])
  6282. # --------------------------
  6283. # Ensure that the configuration variables for a C++ compiler are suitably
  6284. # defined.  These variables are subsequently used by _LT_CONFIG to write
  6285. # the compiler configuration to 'libtool'.
  6286. m4_defun([_LT_LANG_CXX_CONFIG],
  6287. [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  6288. m4_require([_LT_DECL_EGREP])dnl
  6289. m4_require([_LT_PATH_MANIFEST_TOOL])dnl
  6290. if test -n "$CXX" && ( test no != "$CXX" &&
  6291.     ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
  6292.     (test g++ != "$CXX"))); then
  6293.   AC_PROG_CXXCPP
  6294. else
  6295.   _lt_caught_CXX_error=yes
  6296. fi
  6297.  
  6298. AC_LANG_PUSH(C++)
  6299. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  6300. _LT_TAGVAR(allow_undefined_flag, $1)=
  6301. _LT_TAGVAR(always_export_symbols, $1)=no
  6302. _LT_TAGVAR(archive_expsym_cmds, $1)=
  6303. _LT_TAGVAR(compiler_needs_object, $1)=no
  6304. _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  6305. _LT_TAGVAR(hardcode_direct, $1)=no
  6306. _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  6307. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  6308. _LT_TAGVAR(hardcode_libdir_separator, $1)=
  6309. _LT_TAGVAR(hardcode_minus_L, $1)=no
  6310. _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
  6311. _LT_TAGVAR(hardcode_automatic, $1)=no
  6312. _LT_TAGVAR(inherit_rpath, $1)=no
  6313. _LT_TAGVAR(module_cmds, $1)=
  6314. _LT_TAGVAR(module_expsym_cmds, $1)=
  6315. _LT_TAGVAR(link_all_deplibs, $1)=unknown
  6316. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  6317. _LT_TAGVAR(reload_flag, $1)=$reload_flag
  6318. _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
  6319. _LT_TAGVAR(no_undefined_flag, $1)=
  6320. _LT_TAGVAR(whole_archive_flag_spec, $1)=
  6321. _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  6322.  
  6323. # Source file extension for C++ test sources.
  6324. ac_ext=cpp
  6325.  
  6326. # Object file extension for compiled C++ test sources.
  6327. objext=o
  6328. _LT_TAGVAR(objext, $1)=$objext
  6329.  
  6330. # No sense in running all these tests if we already determined that
  6331. # the CXX compiler isn't working.  Some variables (like enable_shared)
  6332. # are currently assumed to apply to all compilers on this platform,
  6333. # and will be corrupted by setting them based on a non-working compiler.
  6334. if test yes != "$_lt_caught_CXX_error"; then
  6335.   # Code to be used in simple compile tests
  6336.   lt_simple_compile_test_code="int some_variable = 0;"
  6337.  
  6338.   # Code to be used in simple link tests
  6339.   lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
  6340.  
  6341.   # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  6342.   _LT_TAG_COMPILER
  6343.  
  6344.   # save warnings/boilerplate of simple test code
  6345.   _LT_COMPILER_BOILERPLATE
  6346.   _LT_LINKER_BOILERPLATE
  6347.  
  6348.   # Allow CC to be a program name with arguments.
  6349.   lt_save_CC=$CC
  6350.   lt_save_CFLAGS=$CFLAGS
  6351.   lt_save_LD=$LD
  6352.   lt_save_GCC=$GCC
  6353.   GCC=$GXX
  6354.   lt_save_with_gnu_ld=$with_gnu_ld
  6355.   lt_save_path_LD=$lt_cv_path_LD
  6356.   if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
  6357.     lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
  6358.   else
  6359.     $as_unset lt_cv_prog_gnu_ld
  6360.   fi
  6361.   if test -n "${lt_cv_path_LDCXX+set}"; then
  6362.     lt_cv_path_LD=$lt_cv_path_LDCXX
  6363.   else
  6364.     $as_unset lt_cv_path_LD
  6365.   fi
  6366.   test -z "${LDCXX+set}" || LD=$LDCXX
  6367.   CC=${CXX-"c++"}
  6368.   CFLAGS=$CXXFLAGS
  6369.   compiler=$CC
  6370.   _LT_TAGVAR(compiler, $1)=$CC
  6371.   _LT_CC_BASENAME([$compiler])
  6372.  
  6373.   if test -n "$compiler"; then
  6374.     # We don't want -fno-exception when compiling C++ code, so set the
  6375.     # no_builtin_flag separately
  6376.     if test yes = "$GXX"; then
  6377.       _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
  6378.     else
  6379.       _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
  6380.     fi
  6381.  
  6382.     if test yes = "$GXX"; then
  6383.       # Set up default GNU C++ configuration
  6384.  
  6385.       LT_PATH_LD
  6386.  
  6387.       # Check if GNU C++ uses GNU ld as the underlying linker, since the
  6388.       # archiving commands below assume that GNU ld is being used.
  6389.       if test yes = "$with_gnu_ld"; then
  6390.         _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
  6391.         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  6392.  
  6393.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  6394.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
  6395.  
  6396.         # If archive_cmds runs LD, not CC, wlarc should be empty
  6397.         # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
  6398.         #     investigate it a little bit more. (MM)
  6399.         wlarc='$wl'
  6400.  
  6401.         # ancient GNU ld didn't support --whole-archive et. al.
  6402.         if eval "`$CC -print-prog-name=ld` --help 2>&1" |
  6403.           $GREP 'no-whole-archive' > /dev/null; then
  6404.           _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
  6405.         else
  6406.           _LT_TAGVAR(whole_archive_flag_spec, $1)=
  6407.         fi
  6408.       else
  6409.         with_gnu_ld=no
  6410.         wlarc=
  6411.  
  6412.         # A generic and very simple default shared library creation
  6413.         # command for GNU C++ for the case where it uses the native
  6414.         # linker, instead of GNU ld.  If possible, this setting should
  6415.         # overridden to take advantage of the native linker features on
  6416.         # the platform it is being used on.
  6417.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
  6418.       fi
  6419.  
  6420.       # Commands to make compiler produce verbose output that lists
  6421.       # what "hidden" libraries, object files and flags are used when
  6422.       # linking a shared library.
  6423.       output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
  6424.  
  6425.     else
  6426.       GXX=no
  6427.       with_gnu_ld=no
  6428.       wlarc=
  6429.     fi
  6430.  
  6431.     # PORTME: fill in a description of your system's C++ link characteristics
  6432.     AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
  6433.     _LT_TAGVAR(ld_shlibs, $1)=yes
  6434.     case $host_os in
  6435.       aix3*)
  6436.         # FIXME: insert proper C++ library support
  6437.         _LT_TAGVAR(ld_shlibs, $1)=no
  6438.         ;;
  6439.       aix[[4-9]]*)
  6440.         if test ia64 = "$host_cpu"; then
  6441.           # On IA64, the linker does run time linking by default, so we don't
  6442.           # have to do anything special.
  6443.           aix_use_runtimelinking=no
  6444.           exp_sym_flag='-Bexport'
  6445.           no_entry_flag=
  6446.         else
  6447.           aix_use_runtimelinking=no
  6448.  
  6449.           # Test if we are trying to use run time linking or normal
  6450.           # AIX style linking. If -brtl is somewhere in LDFLAGS, we
  6451.           # have runtime linking enabled, and use it for executables.
  6452.           # For shared libraries, we enable/disable runtime linking
  6453.           # depending on the kind of the shared library created -
  6454.           # when "with_aix_soname,aix_use_runtimelinking" is:
  6455.           # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
  6456.           # "aix,yes"  lib.so          shared, rtl:yes, for executables
  6457.           #            lib.a           static archive
  6458.           # "both,no"  lib.so.V(shr.o) shared, rtl:yes
  6459.           #            lib.a(lib.so.V) shared, rtl:no,  for executables
  6460.           # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
  6461.           #            lib.a(lib.so.V) shared, rtl:no
  6462.           # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
  6463.           #            lib.a           static archive
  6464.           case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
  6465.             for ld_flag in $LDFLAGS; do
  6466.               case $ld_flag in
  6467.               *-brtl*)
  6468.                 aix_use_runtimelinking=yes
  6469.                 break
  6470.                 ;;
  6471.               esac
  6472.             done
  6473.             if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
  6474.               # With aix-soname=svr4, we create the lib.so.V shared archives only,
  6475.               # so we don't have lib.a shared libs to link our executables.
  6476.               # We have to force runtime linking in this case.
  6477.               aix_use_runtimelinking=yes
  6478.               LDFLAGS="$LDFLAGS -Wl,-brtl"
  6479.             fi
  6480.             ;;
  6481.           esac
  6482.  
  6483.           exp_sym_flag='-bexport'
  6484.           no_entry_flag='-bnoentry'
  6485.         fi
  6486.  
  6487.         # When large executables or shared objects are built, AIX ld can
  6488.         # have problems creating the table of contents.  If linking a library
  6489.         # or program results in "error TOC overflow" add -mminimal-toc to
  6490.         # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
  6491.         # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
  6492.  
  6493.         _LT_TAGVAR(archive_cmds, $1)=''
  6494.         _LT_TAGVAR(hardcode_direct, $1)=yes
  6495.         _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  6496.         _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
  6497.         _LT_TAGVAR(link_all_deplibs, $1)=yes
  6498.         _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
  6499.         case $with_aix_soname,$aix_use_runtimelinking in
  6500.         aix,*) ;;       # no import file
  6501.         svr4,* | *,yes) # use import file
  6502.           # The Import File defines what to hardcode.
  6503.           _LT_TAGVAR(hardcode_direct, $1)=no
  6504.           _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  6505.           ;;
  6506.         esac
  6507.  
  6508.         if test yes = "$GXX"; then
  6509.           case $host_os in aix4.[[012]]|aix4.[[012]].*)
  6510.           # We only want to do this on AIX 4.2 and lower, the check
  6511.           # below for broken collect2 doesn't work under 4.3+
  6512.           collect2name=`$CC -print-prog-name=collect2`
  6513.           if test -f "$collect2name" &&
  6514.              strings "$collect2name" | $GREP resolve_lib_name >/dev/null
  6515.           then
  6516.             # We have reworked collect2
  6517.             :
  6518.           else
  6519.             # We have old collect2
  6520.             _LT_TAGVAR(hardcode_direct, $1)=unsupported
  6521.             # It fails to find uninstalled libraries when the uninstalled
  6522.             # path is not listed in the libpath.  Setting hardcode_minus_L
  6523.             # to unsupported forces relinking
  6524.             _LT_TAGVAR(hardcode_minus_L, $1)=yes
  6525.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  6526.             _LT_TAGVAR(hardcode_libdir_separator, $1)=
  6527.           fi
  6528.           esac
  6529.           shared_flag='-shared'
  6530.           if test yes = "$aix_use_runtimelinking"; then
  6531.             shared_flag=$shared_flag' $wl-G'
  6532.           fi
  6533.           # Need to ensure runtime linking is disabled for the traditional
  6534.           # shared library, or the linker may eventually find shared libraries
  6535.           # /with/ Import File - we do not want to mix them.
  6536.           shared_flag_aix='-shared'
  6537.           shared_flag_svr4='-shared $wl-G'
  6538.         else
  6539.           # not using gcc
  6540.           if test ia64 = "$host_cpu"; then
  6541.           # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
  6542.           # chokes on -Wl,-G. The following line is correct:
  6543.           shared_flag='-G'
  6544.           else
  6545.             if test yes = "$aix_use_runtimelinking"; then
  6546.               shared_flag='$wl-G'
  6547.             else
  6548.               shared_flag='$wl-bM:SRE'
  6549.             fi
  6550.             shared_flag_aix='$wl-bM:SRE'
  6551.             shared_flag_svr4='$wl-G'
  6552.           fi
  6553.         fi
  6554.  
  6555.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
  6556.         # It seems that -bexpall does not export symbols beginning with
  6557.         # underscore (_), so it is better to generate a list of symbols to
  6558.         # export.
  6559.         _LT_TAGVAR(always_export_symbols, $1)=yes
  6560.         if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
  6561.           # Warning - without using the other runtime loading flags (-brtl),
  6562.           # -berok will link without error, but may produce a broken library.
  6563.           # The "-G" linker flag allows undefined symbols.
  6564.           _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
  6565.           # Determine the default libpath from the value encoded in an empty
  6566.           # executable.
  6567.           _LT_SYS_MODULE_PATH_AIX([$1])
  6568.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
  6569.  
  6570.           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
  6571.         else
  6572.           if test ia64 = "$host_cpu"; then
  6573.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
  6574.             _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
  6575.             _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
  6576.           else
  6577.             # Determine the default libpath from the value encoded in an
  6578.             # empty executable.
  6579.             _LT_SYS_MODULE_PATH_AIX([$1])
  6580.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
  6581.             # Warning - without using the other run time loading flags,
  6582.             # -berok will link without error, but may produce a broken library.
  6583.             _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
  6584.             _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
  6585.             if test yes = "$with_gnu_ld"; then
  6586.               # We only use this code for GNU lds that support --whole-archive.
  6587.               _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
  6588.             else
  6589.               # Exported symbols can be pulled into shared objects from archives
  6590.               _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
  6591.             fi
  6592.             _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
  6593.             _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
  6594.             # -brtl affects multiple linker settings, -berok does not and is overridden later
  6595.             compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
  6596.             if test svr4 != "$with_aix_soname"; then
  6597.               # This is similar to how AIX traditionally builds its shared
  6598.               # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
  6599.               _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
  6600.             fi
  6601.             if test aix != "$with_aix_soname"; then
  6602.               _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
  6603.             else
  6604.               # used by -dlpreopen to get the symbols
  6605.               _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
  6606.             fi
  6607.             _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
  6608.           fi
  6609.         fi
  6610.         ;;
  6611.  
  6612.       beos*)
  6613.         if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
  6614.           _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  6615.           # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
  6616.           # support --undefined.  This deserves some investigation.  FIXME
  6617.           _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  6618.         else
  6619.           _LT_TAGVAR(ld_shlibs, $1)=no
  6620.         fi
  6621.         ;;
  6622.  
  6623.       chorus*)
  6624.         case $cc_basename in
  6625.           *)
  6626.           # FIXME: insert proper C++ library support
  6627.           _LT_TAGVAR(ld_shlibs, $1)=no
  6628.           ;;
  6629.         esac
  6630.         ;;
  6631.  
  6632.       cygwin* | mingw* | pw32* | cegcc*)
  6633.         case $GXX,$cc_basename in
  6634.         ,cl* | no,cl*)
  6635.           # Native MSVC
  6636.           # hardcode_libdir_flag_spec is actually meaningless, as there is
  6637.           # no search path for DLLs.
  6638.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
  6639.           _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  6640.           _LT_TAGVAR(always_export_symbols, $1)=yes
  6641.           _LT_TAGVAR(file_list_spec, $1)='@'
  6642.           # Tell ltmain to make .lib files, not .a files.
  6643.           libext=lib
  6644.           # Tell ltmain to make .dll files, not .so files.
  6645.           shrext_cmds=.dll
  6646.           # FIXME: Setting linknames here is a bad hack.
  6647.           _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
  6648.           _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
  6649.               cp "$export_symbols" "$output_objdir/$soname.def";
  6650.               echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
  6651.             else
  6652.               $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
  6653.             fi~
  6654.             $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
  6655.             linknames='
  6656.           # The linker will not automatically build a static lib if we build a DLL.
  6657.           # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
  6658.           _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  6659.           # Don't use ranlib
  6660.           _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
  6661.           _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
  6662.             lt_tool_outputfile="@TOOL_OUTPUT@"~
  6663.             case $lt_outputfile in
  6664.               *.exe|*.EXE) ;;
  6665.               *)
  6666.                 lt_outputfile=$lt_outputfile.exe
  6667.                 lt_tool_outputfile=$lt_tool_outputfile.exe
  6668.                 ;;
  6669.             esac~
  6670.             func_to_tool_file "$lt_outputfile"~
  6671.             if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
  6672.               $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
  6673.               $RM "$lt_outputfile.manifest";
  6674.             fi'
  6675.           ;;
  6676.         *)
  6677.           # g++
  6678.           # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
  6679.           # as there is no search path for DLLs.
  6680.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  6681.           _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
  6682.           _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  6683.           _LT_TAGVAR(always_export_symbols, $1)=no
  6684.           _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  6685.  
  6686.           if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
  6687.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
  6688.             # If the export-symbols file already is a .def file, use it as
  6689.             # is; otherwise, prepend EXPORTS...
  6690.             _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
  6691.               cp $export_symbols $output_objdir/$soname.def;
  6692.             else
  6693.               echo EXPORTS > $output_objdir/$soname.def;
  6694.               cat $export_symbols >> $output_objdir/$soname.def;
  6695.             fi~
  6696.             $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
  6697.           else
  6698.             _LT_TAGVAR(ld_shlibs, $1)=no
  6699.           fi
  6700.           ;;
  6701.         esac
  6702.         ;;
  6703.       darwin* | rhapsody*)
  6704.         _LT_DARWIN_LINKER_FEATURES($1)
  6705.         ;;
  6706.  
  6707.       os2*)
  6708.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
  6709.         _LT_TAGVAR(hardcode_minus_L, $1)=yes
  6710.         _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
  6711.         shrext_cmds=.dll
  6712.         _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
  6713.           $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
  6714.           $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
  6715.           $ECHO EXPORTS >> $output_objdir/$libname.def~
  6716.           emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
  6717.           $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
  6718.           emximp -o $lib $output_objdir/$libname.def'
  6719.         _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
  6720.           $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
  6721.           $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
  6722.           $ECHO EXPORTS >> $output_objdir/$libname.def~
  6723.           prefix_cmds="$SED"~
  6724.           if test EXPORTS = "`$SED 1q $export_symbols`"; then
  6725.             prefix_cmds="$prefix_cmds -e 1d";
  6726.           fi~
  6727.           prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
  6728.           cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
  6729.           $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
  6730.           emximp -o $lib $output_objdir/$libname.def'
  6731.         _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
  6732.         _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
  6733.         ;;
  6734.  
  6735.       dgux*)
  6736.         case $cc_basename in
  6737.           ec++*)
  6738.             # FIXME: insert proper C++ library support
  6739.             _LT_TAGVAR(ld_shlibs, $1)=no
  6740.             ;;
  6741.           ghcx*)
  6742.             # Green Hills C++ Compiler
  6743.             # FIXME: insert proper C++ library support
  6744.             _LT_TAGVAR(ld_shlibs, $1)=no
  6745.             ;;
  6746.           *)
  6747.             # FIXME: insert proper C++ library support
  6748.             _LT_TAGVAR(ld_shlibs, $1)=no
  6749.             ;;
  6750.         esac
  6751.         ;;
  6752.  
  6753.       freebsd2.*)
  6754.         # C++ shared libraries reported to be fairly broken before
  6755.         # switch to ELF
  6756.         _LT_TAGVAR(ld_shlibs, $1)=no
  6757.         ;;
  6758.  
  6759.       freebsd-elf*)
  6760.         _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  6761.         ;;
  6762.  
  6763.       freebsd* | dragonfly*)
  6764.         # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
  6765.         # conventions
  6766.         _LT_TAGVAR(ld_shlibs, $1)=yes
  6767.         ;;
  6768.  
  6769.       haiku*)
  6770.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  6771.         _LT_TAGVAR(link_all_deplibs, $1)=yes
  6772.         ;;
  6773.  
  6774.       hpux9*)
  6775.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
  6776.         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  6777.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  6778.         _LT_TAGVAR(hardcode_direct, $1)=yes
  6779.         _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
  6780.                                              # but as the default
  6781.                                              # location of the library.
  6782.  
  6783.         case $cc_basename in
  6784.           CC*)
  6785.             # FIXME: insert proper C++ library support
  6786.             _LT_TAGVAR(ld_shlibs, $1)=no
  6787.             ;;
  6788.           aCC*)
  6789.             _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
  6790.             # Commands to make compiler produce verbose output that lists
  6791.             # what "hidden" libraries, object files and flags are used when
  6792.             # linking a shared library.
  6793.             #
  6794.             # There doesn't appear to be a way to prevent this compiler from
  6795.             # explicitly linking system object files so we need to strip them
  6796.             # from the output so that they don't get included in the library
  6797.             # dependencies.
  6798.             output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
  6799.             ;;
  6800.           *)
  6801.             if test yes = "$GXX"; then
  6802.               _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
  6803.             else
  6804.               # FIXME: insert proper C++ library support
  6805.               _LT_TAGVAR(ld_shlibs, $1)=no
  6806.             fi
  6807.             ;;
  6808.         esac
  6809.         ;;
  6810.  
  6811.       hpux10*|hpux11*)
  6812.         if test no = "$with_gnu_ld"; then
  6813.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
  6814.           _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  6815.  
  6816.           case $host_cpu in
  6817.             hppa*64*|ia64*)
  6818.               ;;
  6819.             *)
  6820.               _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  6821.               ;;
  6822.           esac
  6823.         fi
  6824.         case $host_cpu in
  6825.           hppa*64*|ia64*)
  6826.             _LT_TAGVAR(hardcode_direct, $1)=no
  6827.             _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  6828.             ;;
  6829.           *)
  6830.             _LT_TAGVAR(hardcode_direct, $1)=yes
  6831.             _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  6832.             _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
  6833.                                                  # but as the default
  6834.                                                  # location of the library.
  6835.             ;;
  6836.         esac
  6837.  
  6838.         case $cc_basename in
  6839.           CC*)
  6840.             # FIXME: insert proper C++ library support
  6841.             _LT_TAGVAR(ld_shlibs, $1)=no
  6842.             ;;
  6843.           aCC*)
  6844.             case $host_cpu in
  6845.               hppa*64*)
  6846.                 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  6847.                 ;;
  6848.               ia64*)
  6849.                 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  6850.                 ;;
  6851.               *)
  6852.                 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  6853.                 ;;
  6854.             esac
  6855.             # Commands to make compiler produce verbose output that lists
  6856.             # what "hidden" libraries, object files and flags are used when
  6857.             # linking a shared library.
  6858.             #
  6859.             # There doesn't appear to be a way to prevent this compiler from
  6860.             # explicitly linking system object files so we need to strip them
  6861.             # from the output so that they don't get included in the library
  6862.             # dependencies.
  6863.             output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
  6864.             ;;
  6865.           *)
  6866.             if test yes = "$GXX"; then
  6867.               if test no = "$with_gnu_ld"; then
  6868.                 case $host_cpu in
  6869.                   hppa*64*)
  6870.                     _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  6871.                     ;;
  6872.                   ia64*)
  6873.                     _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  6874.                     ;;
  6875.                   *)
  6876.                     _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  6877.                     ;;
  6878.                 esac
  6879.               fi
  6880.             else
  6881.               # FIXME: insert proper C++ library support
  6882.               _LT_TAGVAR(ld_shlibs, $1)=no
  6883.             fi
  6884.             ;;
  6885.         esac
  6886.         ;;
  6887.  
  6888.       interix[[3-9]]*)
  6889.         _LT_TAGVAR(hardcode_direct, $1)=no
  6890.         _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  6891.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
  6892.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  6893.         # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
  6894.         # Instead, shared libraries are loaded at an image base (0x10000000 by
  6895.         # default) and relocated if they conflict, which is a slow very memory
  6896.         # consuming and fragmenting process.  To avoid this, we pick a random,
  6897.         # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
  6898.         # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
  6899.         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
  6900.         _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
  6901.         ;;
  6902.       irix5* | irix6*)
  6903.         case $cc_basename in
  6904.           CC*)
  6905.             # SGI C++
  6906.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
  6907.  
  6908.             # Archives containing C++ object files must be created using
  6909.             # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
  6910.             # necessary to make sure instantiated templates are included
  6911.             # in the archive.
  6912.             _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
  6913.             ;;
  6914.           *)
  6915.             if test yes = "$GXX"; then
  6916.               if test no = "$with_gnu_ld"; then
  6917.                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
  6918.               else
  6919.                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib'
  6920.               fi
  6921.             fi
  6922.             _LT_TAGVAR(link_all_deplibs, $1)=yes
  6923.             ;;
  6924.         esac
  6925.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  6926.         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  6927.         _LT_TAGVAR(inherit_rpath, $1)=yes
  6928.         ;;
  6929.  
  6930.       linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
  6931.         case $cc_basename in
  6932.           KCC*)
  6933.             # Kuck and Associates, Inc. (KAI) C++ Compiler
  6934.  
  6935.             # KCC will only create a shared library if the output file
  6936.             # ends with ".so" (or ".sl" for HP-UX), so rename the library
  6937.             # to its proper name (with version) after linking.
  6938.             _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
  6939.             _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib'
  6940.             # Commands to make compiler produce verbose output that lists
  6941.             # what "hidden" libraries, object files and flags are used when
  6942.             # linking a shared library.
  6943.             #
  6944.             # There doesn't appear to be a way to prevent this compiler from
  6945.             # explicitly linking system object files so we need to strip them
  6946.             # from the output so that they don't get included in the library
  6947.             # dependencies.
  6948.             output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
  6949.  
  6950.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
  6951.             _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
  6952.  
  6953.             # Archives containing C++ object files must be created using
  6954.             # "CC -Bstatic", where "CC" is the KAI C++ compiler.
  6955.             _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
  6956.             ;;
  6957.           icpc* | ecpc* )
  6958.             # Intel C++
  6959.             with_gnu_ld=yes
  6960.             # version 8.0 and above of icpc choke on multiply defined symbols
  6961.             # if we add $predep_objects and $postdep_objects, however 7.1 and
  6962.             # earlier do not add the objects themselves.
  6963.             case `$CC -V 2>&1` in
  6964.               *"Version 7."*)
  6965.                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
  6966.                 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  6967.                 ;;
  6968.               *)  # Version 8.0 or newer
  6969.                 tmp_idyn=
  6970.                 case $host_cpu in
  6971.                   ia64*) tmp_idyn=' -i_dynamic';;
  6972.                 esac
  6973.                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  6974.                 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  6975.                 ;;
  6976.             esac
  6977.             _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  6978.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
  6979.             _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
  6980.             _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
  6981.             ;;
  6982.           pgCC* | pgcpp*)
  6983.             # Portland Group C++ compiler
  6984.             case `$CC -V` in
  6985.             *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
  6986.               _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
  6987.                rm -rf $tpldir~
  6988.                $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
  6989.                compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
  6990.               _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
  6991.                 rm -rf $tpldir~
  6992.                 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
  6993.                 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
  6994.                 $RANLIB $oldlib'
  6995.               _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
  6996.                 rm -rf $tpldir~
  6997.                 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
  6998.                 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
  6999.               _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
  7000.                 rm -rf $tpldir~
  7001.                 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
  7002.                 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  7003.               ;;
  7004.             *) # Version 6 and above use weak symbols
  7005.               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
  7006.               _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
  7007.               ;;
  7008.             esac
  7009.  
  7010.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
  7011.             _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
  7012.             _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
  7013.             ;;
  7014.           cxx*)
  7015.             # Compaq C++
  7016.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
  7017.             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname  -o $lib $wl-retain-symbols-file $wl$export_symbols'
  7018.  
  7019.             runpath_var=LD_RUN_PATH
  7020.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
  7021.             _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  7022.  
  7023.             # Commands to make compiler produce verbose output that lists
  7024.             # what "hidden" libraries, object files and flags are used when
  7025.             # linking a shared library.
  7026.             #
  7027.             # There doesn't appear to be a way to prevent this compiler from
  7028.             # explicitly linking system object files so we need to strip them
  7029.             # from the output so that they don't get included in the library
  7030.             # dependencies.
  7031.             output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
  7032.             ;;
  7033.           xl* | mpixl* | bgxl*)
  7034.             # IBM XL 8.0 on PPC, with GNU ld
  7035.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  7036.             _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
  7037.             _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
  7038.             if test yes = "$supports_anon_versioning"; then
  7039.               _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
  7040.                 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
  7041.                 echo "local: *; };" >> $output_objdir/$libname.ver~
  7042.                 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
  7043.             fi
  7044.             ;;
  7045.           *)
  7046.             case `$CC -V 2>&1 | sed 5q` in
  7047.             *Sun\ C*)
  7048.               # Sun C++ 5.9
  7049.               _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
  7050.               _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  7051.               _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'
  7052.               _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  7053.               _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
  7054.               _LT_TAGVAR(compiler_needs_object, $1)=yes
  7055.  
  7056.               # Not sure whether something based on
  7057.               # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
  7058.               # would be better.
  7059.               output_verbose_link_cmd='func_echo_all'
  7060.  
  7061.               # Archives containing C++ object files must be created using
  7062.               # "CC -xar", where "CC" is the Sun C++ compiler.  This is
  7063.               # necessary to make sure instantiated templates are included
  7064.               # in the archive.
  7065.               _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
  7066.               ;;
  7067.             esac
  7068.             ;;
  7069.         esac
  7070.         ;;
  7071.  
  7072.       lynxos*)
  7073.         # FIXME: insert proper C++ library support
  7074.         _LT_TAGVAR(ld_shlibs, $1)=no
  7075.         ;;
  7076.  
  7077.       m88k*)
  7078.         # FIXME: insert proper C++ library support
  7079.         _LT_TAGVAR(ld_shlibs, $1)=no
  7080.         ;;
  7081.  
  7082.       mvs*)
  7083.         case $cc_basename in
  7084.           cxx*)
  7085.             # FIXME: insert proper C++ library support
  7086.             _LT_TAGVAR(ld_shlibs, $1)=no
  7087.             ;;
  7088.           *)
  7089.             # FIXME: insert proper C++ library support
  7090.             _LT_TAGVAR(ld_shlibs, $1)=no
  7091.             ;;
  7092.         esac
  7093.         ;;
  7094.  
  7095.       netbsd*)
  7096.         if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  7097.           _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
  7098.           wlarc=
  7099.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  7100.           _LT_TAGVAR(hardcode_direct, $1)=yes
  7101.           _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  7102.         fi
  7103.         # Workaround some broken pre-1.5 toolchains
  7104.         output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
  7105.         ;;
  7106.  
  7107.       *nto* | *qnx*)
  7108.         _LT_TAGVAR(ld_shlibs, $1)=yes
  7109.         ;;
  7110.  
  7111.       openbsd* | bitrig*)
  7112.         if test -f /usr/libexec/ld.so; then
  7113.           _LT_TAGVAR(hardcode_direct, $1)=yes
  7114.           _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  7115.           _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
  7116.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
  7117.           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
  7118.           if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
  7119.             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
  7120.             _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
  7121.             _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
  7122.           fi
  7123.           output_verbose_link_cmd=func_echo_all
  7124.         else
  7125.           _LT_TAGVAR(ld_shlibs, $1)=no
  7126.         fi
  7127.         ;;
  7128.  
  7129.       osf3* | osf4* | osf5*)
  7130.         case $cc_basename in
  7131.           KCC*)
  7132.             # Kuck and Associates, Inc. (KAI) C++ Compiler
  7133.  
  7134.             # KCC will only create a shared library if the output file
  7135.             # ends with ".so" (or ".sl" for HP-UX), so rename the library
  7136.             # to its proper name (with version) after linking.
  7137.             _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
  7138.  
  7139.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
  7140.             _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  7141.  
  7142.             # Archives containing C++ object files must be created using
  7143.             # the KAI C++ compiler.
  7144.             case $host in
  7145.               osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
  7146.               *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
  7147.             esac
  7148.             ;;
  7149.           RCC*)
  7150.             # Rational C++ 2.4.1
  7151.             # FIXME: insert proper C++ library support
  7152.             _LT_TAGVAR(ld_shlibs, $1)=no
  7153.             ;;
  7154.           cxx*)
  7155.             case $host in
  7156.               osf3*)
  7157.                 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
  7158.                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
  7159.                 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  7160.                 ;;
  7161.               *)
  7162.                 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
  7163.                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
  7164.                 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
  7165.                   echo "-hidden">> $lib.exp~
  7166.                   $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~
  7167.                   $RM $lib.exp'
  7168.                 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
  7169.                 ;;
  7170.             esac
  7171.  
  7172.             _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  7173.  
  7174.             # Commands to make compiler produce verbose output that lists
  7175.             # what "hidden" libraries, object files and flags are used when
  7176.             # linking a shared library.
  7177.             #
  7178.             # There doesn't appear to be a way to prevent this compiler from
  7179.             # explicitly linking system object files so we need to strip them
  7180.             # from the output so that they don't get included in the library
  7181.             # dependencies.
  7182.             output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
  7183.             ;;
  7184.           *)
  7185.             if test yes,no = "$GXX,$with_gnu_ld"; then
  7186.               _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
  7187.               case $host in
  7188.                 osf3*)
  7189.                   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
  7190.                   ;;
  7191.                 *)
  7192.                   _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
  7193.                   ;;
  7194.               esac
  7195.  
  7196.               _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
  7197.               _LT_TAGVAR(hardcode_libdir_separator, $1)=:
  7198.  
  7199.               # Commands to make compiler produce verbose output that lists
  7200.               # what "hidden" libraries, object files and flags are used when
  7201.               # linking a shared library.
  7202.               output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
  7203.  
  7204.             else
  7205.               # FIXME: insert proper C++ library support
  7206.               _LT_TAGVAR(ld_shlibs, $1)=no
  7207.             fi
  7208.             ;;
  7209.         esac
  7210.         ;;
  7211.  
  7212.       psos*)
  7213.         # FIXME: insert proper C++ library support
  7214.         _LT_TAGVAR(ld_shlibs, $1)=no
  7215.         ;;
  7216.  
  7217.       sunos4*)
  7218.         case $cc_basename in
  7219.           CC*)
  7220.             # Sun C++ 4.x
  7221.             # FIXME: insert proper C++ library support
  7222.             _LT_TAGVAR(ld_shlibs, $1)=no
  7223.             ;;
  7224.           lcc*)
  7225.             # Lucid
  7226.             # FIXME: insert proper C++ library support
  7227.             _LT_TAGVAR(ld_shlibs, $1)=no
  7228.             ;;
  7229.           *)
  7230.             # FIXME: insert proper C++ library support
  7231.             _LT_TAGVAR(ld_shlibs, $1)=no
  7232.             ;;
  7233.         esac
  7234.         ;;
  7235.  
  7236.       solaris*)
  7237.         case $cc_basename in
  7238.           CC* | sunCC*)
  7239.             # Sun C++ 4.2, 5.x and Centerline C++
  7240.             _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
  7241.             _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
  7242.             _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  7243.             _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  7244.               $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
  7245.  
  7246.             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
  7247.             _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  7248.             case $host_os in
  7249.               solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
  7250.               *)
  7251.                 # The compiler driver will combine and reorder linker options,
  7252.                 # but understands '-z linker_flag'.
  7253.                 # Supported since Solaris 2.6 (maybe 2.5.1?)
  7254.                 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
  7255.                 ;;
  7256.             esac
  7257.             _LT_TAGVAR(link_all_deplibs, $1)=yes
  7258.  
  7259.             output_verbose_link_cmd='func_echo_all'
  7260.  
  7261.             # Archives containing C++ object files must be created using
  7262.             # "CC -xar", where "CC" is the Sun C++ compiler.  This is
  7263.             # necessary to make sure instantiated templates are included
  7264.             # in the archive.
  7265.             _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
  7266.             ;;
  7267.           gcx*)
  7268.             # Green Hills C++ Compiler
  7269.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
  7270.  
  7271.             # The C++ compiler must be used to create the archive.
  7272.             _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
  7273.             ;;
  7274.           *)
  7275.             # GNU C++ compiler with Solaris linker
  7276.             if test yes,no = "$GXX,$with_gnu_ld"; then
  7277.               _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
  7278.               if $CC --version | $GREP -v '^2\.7' > /dev/null; then
  7279.                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
  7280.                 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  7281.                   $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
  7282.  
  7283.                 # Commands to make compiler produce verbose output that lists
  7284.                 # what "hidden" libraries, object files and flags are used when
  7285.                 # linking a shared library.
  7286.                 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
  7287.               else
  7288.                 # g++ 2.7 appears to require '-G' NOT '-shared' on this
  7289.                 # platform.
  7290.                 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
  7291.                 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
  7292.                   $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
  7293.  
  7294.                 # Commands to make compiler produce verbose output that lists
  7295.                 # what "hidden" libraries, object files and flags are used when
  7296.                 # linking a shared library.
  7297.                 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
  7298.               fi
  7299.  
  7300.               _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
  7301.               case $host_os in
  7302.                 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
  7303.                 *)
  7304.                   _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
  7305.                   ;;
  7306.               esac
  7307.             fi
  7308.             ;;
  7309.         esac
  7310.         ;;
  7311.  
  7312.     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
  7313.       _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
  7314.       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  7315.       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  7316.       runpath_var='LD_RUN_PATH'
  7317.  
  7318.       case $cc_basename in
  7319.         CC*)
  7320.           _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  7321.           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  7322.           ;;
  7323.         *)
  7324.           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  7325.           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  7326.           ;;
  7327.       esac
  7328.       ;;
  7329.  
  7330.       sysv5* | sco3.2v5* | sco5v6*)
  7331.         # Note: We CANNOT use -z defs as we might desire, because we do not
  7332.         # link with -lc, and that would cause any symbols used from libc to
  7333.         # always be unresolved, which means just about no library would
  7334.         # ever link correctly.  If we're not using GNU ld we use -z text
  7335.         # though, which does catch some bad symbols but isn't as heavy-handed
  7336.         # as -z defs.
  7337.         _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
  7338.         _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
  7339.         _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  7340.         _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
  7341.         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
  7342.         _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
  7343.         _LT_TAGVAR(link_all_deplibs, $1)=yes
  7344.         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
  7345.         runpath_var='LD_RUN_PATH'
  7346.  
  7347.         case $cc_basename in
  7348.           CC*)
  7349.             _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  7350.             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  7351.             _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
  7352.               '"$_LT_TAGVAR(old_archive_cmds, $1)"
  7353.             _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
  7354.               '"$_LT_TAGVAR(reload_cmds, $1)"
  7355.             ;;
  7356.           *)
  7357.             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  7358.             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
  7359.             ;;
  7360.         esac
  7361.       ;;
  7362.  
  7363.       tandem*)
  7364.         case $cc_basename in
  7365.           NCC*)
  7366.             # NonStop-UX NCC 3.20
  7367.             # FIXME: insert proper C++ library support
  7368.             _LT_TAGVAR(ld_shlibs, $1)=no
  7369.             ;;
  7370.           *)
  7371.             # FIXME: insert proper C++ library support
  7372.             _LT_TAGVAR(ld_shlibs, $1)=no
  7373.             ;;
  7374.         esac
  7375.         ;;
  7376.  
  7377.       vxworks*)
  7378.         # FIXME: insert proper C++ library support
  7379.         _LT_TAGVAR(ld_shlibs, $1)=no
  7380.         ;;
  7381.  
  7382.       *)
  7383.         # FIXME: insert proper C++ library support
  7384.         _LT_TAGVAR(ld_shlibs, $1)=no
  7385.         ;;
  7386.     esac
  7387.  
  7388.     AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
  7389.     test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
  7390.  
  7391.     _LT_TAGVAR(GCC, $1)=$GXX
  7392.     _LT_TAGVAR(LD, $1)=$LD
  7393.  
  7394.     ## CAVEAT EMPTOR:
  7395.     ## There is no encapsulation within the following macros, do not change
  7396.     ## the running order or otherwise move them around unless you know exactly
  7397.     ## what you are doing...
  7398.     _LT_SYS_HIDDEN_LIBDEPS($1)
  7399.     _LT_COMPILER_PIC($1)
  7400.     _LT_COMPILER_C_O($1)
  7401.     _LT_COMPILER_FILE_LOCKS($1)
  7402.     _LT_LINKER_SHLIBS($1)
  7403.     _LT_SYS_DYNAMIC_LINKER($1)
  7404.     _LT_LINKER_HARDCODE_LIBPATH($1)
  7405.  
  7406.     _LT_CONFIG($1)
  7407.   fi # test -n "$compiler"
  7408.  
  7409.   CC=$lt_save_CC
  7410.   CFLAGS=$lt_save_CFLAGS
  7411.   LDCXX=$LD
  7412.   LD=$lt_save_LD
  7413.   GCC=$lt_save_GCC
  7414.   with_gnu_ld=$lt_save_with_gnu_ld
  7415.   lt_cv_path_LDCXX=$lt_cv_path_LD
  7416.   lt_cv_path_LD=$lt_save_path_LD
  7417.   lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
  7418.   lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
  7419. fi # test yes != "$_lt_caught_CXX_error"
  7420.  
  7421. AC_LANG_POP
  7422. ])# _LT_LANG_CXX_CONFIG
  7423.  
  7424.  
  7425. # _LT_FUNC_STRIPNAME_CNF
  7426. # ----------------------
  7427. # func_stripname_cnf prefix suffix name
  7428. # strip PREFIX and SUFFIX off of NAME.
  7429. # PREFIX and SUFFIX must not contain globbing or regex special
  7430. # characters, hashes, percent signs, but SUFFIX may contain a leading
  7431. # dot (in which case that matches only a dot).
  7432. #
  7433. # This function is identical to the (non-XSI) version of func_stripname,
  7434. # except this one can be used by m4 code that may be executed by configure,
  7435. # rather than the libtool script.
  7436. m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
  7437. AC_REQUIRE([_LT_DECL_SED])
  7438. AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
  7439. func_stripname_cnf ()
  7440. {
  7441.   case @S|@2 in
  7442.   .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
  7443.   *)  func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
  7444.   esac
  7445. } # func_stripname_cnf
  7446. ])# _LT_FUNC_STRIPNAME_CNF
  7447.  
  7448.  
  7449. # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
  7450. # ---------------------------------
  7451. # Figure out "hidden" library dependencies from verbose
  7452. # compiler output when linking a shared library.
  7453. # Parse the compiler output and extract the necessary
  7454. # objects, libraries and library flags.
  7455. m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
  7456. [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  7457. AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
  7458. # Dependencies to place before and after the object being linked:
  7459. _LT_TAGVAR(predep_objects, $1)=
  7460. _LT_TAGVAR(postdep_objects, $1)=
  7461. _LT_TAGVAR(predeps, $1)=
  7462. _LT_TAGVAR(postdeps, $1)=
  7463. _LT_TAGVAR(compiler_lib_search_path, $1)=
  7464.  
  7465. dnl we can't use the lt_simple_compile_test_code here,
  7466. dnl because it contains code intended for an executable,
  7467. dnl not a library.  It's possible we should let each
  7468. dnl tag define a new lt_????_link_test_code variable,
  7469. dnl but it's only used here...
  7470. m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
  7471. int a;
  7472. void foo (void) { a = 0; }
  7473. _LT_EOF
  7474. ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
  7475. class Foo
  7476. {
  7477. public:
  7478.   Foo (void) { a = 0; }
  7479. private:
  7480.   int a;
  7481. };
  7482. _LT_EOF
  7483. ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
  7484.       subroutine foo
  7485.       implicit none
  7486.       integer*4 a
  7487.       a=0
  7488.       return
  7489.       end
  7490. _LT_EOF
  7491. ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
  7492.       subroutine foo
  7493.       implicit none
  7494.       integer a
  7495.       a=0
  7496.       return
  7497.       end
  7498. _LT_EOF
  7499. ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
  7500. public class foo {
  7501.   private int a;
  7502.   public void bar (void) {
  7503.     a = 0;
  7504.   }
  7505. };
  7506. _LT_EOF
  7507. ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
  7508. package foo
  7509. func foo() {
  7510. }
  7511. _LT_EOF
  7512. ])
  7513.  
  7514. _lt_libdeps_save_CFLAGS=$CFLAGS
  7515. case "$CC $CFLAGS " in #(
  7516. *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
  7517. *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
  7518. *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
  7519. esac
  7520.  
  7521. dnl Parse the compiler output and extract the necessary
  7522. dnl objects, libraries and library flags.
  7523. if AC_TRY_EVAL(ac_compile); then
  7524.   # Parse the compiler output and extract the necessary
  7525.   # objects, libraries and library flags.
  7526.  
  7527.   # Sentinel used to keep track of whether or not we are before
  7528.   # the conftest object file.
  7529.   pre_test_object_deps_done=no
  7530.  
  7531.   for p in `eval "$output_verbose_link_cmd"`; do
  7532.     case $prev$p in
  7533.  
  7534.     -L* | -R* | -l*)
  7535.        # Some compilers place space between "-{L,R}" and the path.
  7536.        # Remove the space.
  7537.        if test x-L = "$p" ||
  7538.           test x-R = "$p"; then
  7539.          prev=$p
  7540.          continue
  7541.        fi
  7542.  
  7543.        # Expand the sysroot to ease extracting the directories later.
  7544.        if test -z "$prev"; then
  7545.          case $p in
  7546.          -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
  7547.          -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
  7548.          -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
  7549.          esac
  7550.        fi
  7551.        case $p in
  7552.        =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
  7553.        esac
  7554.        if test no = "$pre_test_object_deps_done"; then
  7555.          case $prev in
  7556.          -L | -R)
  7557.            # Internal compiler library paths should come after those
  7558.            # provided the user.  The postdeps already come after the
  7559.            # user supplied libs so there is no need to process them.
  7560.            if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
  7561.              _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
  7562.            else
  7563.              _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
  7564.            fi
  7565.            ;;
  7566.          # The "-l" case would never come before the object being
  7567.          # linked, so don't bother handling this case.
  7568.          esac
  7569.        else
  7570.          if test -z "$_LT_TAGVAR(postdeps, $1)"; then
  7571.            _LT_TAGVAR(postdeps, $1)=$prev$p
  7572.          else
  7573.            _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
  7574.          fi
  7575.        fi
  7576.        prev=
  7577.        ;;
  7578.  
  7579.     *.lto.$objext) ;; # Ignore GCC LTO objects
  7580.     *.$objext)
  7581.        # This assumes that the test object file only shows up
  7582.        # once in the compiler output.
  7583.        if test "$p" = "conftest.$objext"; then
  7584.          pre_test_object_deps_done=yes
  7585.          continue
  7586.        fi
  7587.  
  7588.        if test no = "$pre_test_object_deps_done"; then
  7589.          if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
  7590.            _LT_TAGVAR(predep_objects, $1)=$p
  7591.          else
  7592.            _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
  7593.          fi
  7594.        else
  7595.          if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
  7596.            _LT_TAGVAR(postdep_objects, $1)=$p
  7597.          else
  7598.            _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
  7599.          fi
  7600.        fi
  7601.        ;;
  7602.  
  7603.     *) ;; # Ignore the rest.
  7604.  
  7605.     esac
  7606.   done
  7607.  
  7608.   # Clean up.
  7609.   rm -f a.out a.exe
  7610. else
  7611.   echo "libtool.m4: error: problem compiling $1 test program"
  7612. fi
  7613.  
  7614. $RM -f confest.$objext
  7615. CFLAGS=$_lt_libdeps_save_CFLAGS
  7616.  
  7617. # PORTME: override above test on systems where it is broken
  7618. m4_if([$1], [CXX],
  7619. [case $host_os in
  7620. interix[[3-9]]*)
  7621.   # Interix 3.5 installs completely hosed .la files for C++, so rather than
  7622.   # hack all around it, let's just trust "g++" to DTRT.
  7623.   _LT_TAGVAR(predep_objects,$1)=
  7624.   _LT_TAGVAR(postdep_objects,$1)=
  7625.   _LT_TAGVAR(postdeps,$1)=
  7626.   ;;
  7627. esac
  7628. ])
  7629.  
  7630. case " $_LT_TAGVAR(postdeps, $1) " in
  7631. *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
  7632. esac
  7633.  _LT_TAGVAR(compiler_lib_search_dirs, $1)=
  7634. if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
  7635.  _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
  7636. fi
  7637. _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
  7638.     [The directories searched by this compiler when creating a shared library])
  7639. _LT_TAGDECL([], [predep_objects], [1],
  7640.     [Dependencies to place before and after the objects being linked to
  7641.     create a shared library])
  7642. _LT_TAGDECL([], [postdep_objects], [1])
  7643. _LT_TAGDECL([], [predeps], [1])
  7644. _LT_TAGDECL([], [postdeps], [1])
  7645. _LT_TAGDECL([], [compiler_lib_search_path], [1],
  7646.     [The library search path used internally by the compiler when linking
  7647.     a shared library])
  7648. ])# _LT_SYS_HIDDEN_LIBDEPS
  7649.  
  7650.  
  7651. # _LT_LANG_F77_CONFIG([TAG])
  7652. # --------------------------
  7653. # Ensure that the configuration variables for a Fortran 77 compiler are
  7654. # suitably defined.  These variables are subsequently used by _LT_CONFIG
  7655. # to write the compiler configuration to 'libtool'.
  7656. m4_defun([_LT_LANG_F77_CONFIG],
  7657. [AC_LANG_PUSH(Fortran 77)
  7658. if test -z "$F77" || test no = "$F77"; then
  7659.   _lt_disable_F77=yes
  7660. fi
  7661.  
  7662. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  7663. _LT_TAGVAR(allow_undefined_flag, $1)=
  7664. _LT_TAGVAR(always_export_symbols, $1)=no
  7665. _LT_TAGVAR(archive_expsym_cmds, $1)=
  7666. _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  7667. _LT_TAGVAR(hardcode_direct, $1)=no
  7668. _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  7669. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  7670. _LT_TAGVAR(hardcode_libdir_separator, $1)=
  7671. _LT_TAGVAR(hardcode_minus_L, $1)=no
  7672. _LT_TAGVAR(hardcode_automatic, $1)=no
  7673. _LT_TAGVAR(inherit_rpath, $1)=no
  7674. _LT_TAGVAR(module_cmds, $1)=
  7675. _LT_TAGVAR(module_expsym_cmds, $1)=
  7676. _LT_TAGVAR(link_all_deplibs, $1)=unknown
  7677. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  7678. _LT_TAGVAR(reload_flag, $1)=$reload_flag
  7679. _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
  7680. _LT_TAGVAR(no_undefined_flag, $1)=
  7681. _LT_TAGVAR(whole_archive_flag_spec, $1)=
  7682. _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  7683.  
  7684. # Source file extension for f77 test sources.
  7685. ac_ext=f
  7686.  
  7687. # Object file extension for compiled f77 test sources.
  7688. objext=o
  7689. _LT_TAGVAR(objext, $1)=$objext
  7690.  
  7691. # No sense in running all these tests if we already determined that
  7692. # the F77 compiler isn't working.  Some variables (like enable_shared)
  7693. # are currently assumed to apply to all compilers on this platform,
  7694. # and will be corrupted by setting them based on a non-working compiler.
  7695. if test yes != "$_lt_disable_F77"; then
  7696.   # Code to be used in simple compile tests
  7697.   lt_simple_compile_test_code="\
  7698.       subroutine t
  7699.       return
  7700.       end
  7701. "
  7702.  
  7703.   # Code to be used in simple link tests
  7704.   lt_simple_link_test_code="\
  7705.       program t
  7706.       end
  7707. "
  7708.  
  7709.   # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  7710.   _LT_TAG_COMPILER
  7711.  
  7712.   # save warnings/boilerplate of simple test code
  7713.   _LT_COMPILER_BOILERPLATE
  7714.   _LT_LINKER_BOILERPLATE
  7715.  
  7716.   # Allow CC to be a program name with arguments.
  7717.   lt_save_CC=$CC
  7718.   lt_save_GCC=$GCC
  7719.   lt_save_CFLAGS=$CFLAGS
  7720.   CC=${F77-"f77"}
  7721.   CFLAGS=$FFLAGS
  7722.   compiler=$CC
  7723.   _LT_TAGVAR(compiler, $1)=$CC
  7724.   _LT_CC_BASENAME([$compiler])
  7725.   GCC=$G77
  7726.   if test -n "$compiler"; then
  7727.     AC_MSG_CHECKING([if libtool supports shared libraries])
  7728.     AC_MSG_RESULT([$can_build_shared])
  7729.  
  7730.     AC_MSG_CHECKING([whether to build shared libraries])
  7731.     test no = "$can_build_shared" && enable_shared=no
  7732.  
  7733.     # On AIX, shared libraries and static libraries use the same namespace, and
  7734.     # are all built from PIC.
  7735.     case $host_os in
  7736.       aix3*)
  7737.         test yes = "$enable_shared" && enable_static=no
  7738.         if test -n "$RANLIB"; then
  7739.           archive_cmds="$archive_cmds~\$RANLIB \$lib"
  7740.           postinstall_cmds='$RANLIB $lib'
  7741.         fi
  7742.         ;;
  7743.       aix[[4-9]]*)
  7744.         if test ia64 != "$host_cpu"; then
  7745.           case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
  7746.           yes,aix,yes) ;;               # shared object as lib.so file only
  7747.           yes,svr4,*) ;;                # shared object as lib.so archive member only
  7748.           yes,*) enable_static=no ;;    # shared object in lib.a archive as well
  7749.           esac
  7750.         fi
  7751.         ;;
  7752.     esac
  7753.     AC_MSG_RESULT([$enable_shared])
  7754.  
  7755.     AC_MSG_CHECKING([whether to build static libraries])
  7756.     # Make sure either enable_shared or enable_static is yes.
  7757.     test yes = "$enable_shared" || enable_static=yes
  7758.     AC_MSG_RESULT([$enable_static])
  7759.  
  7760.     _LT_TAGVAR(GCC, $1)=$G77
  7761.     _LT_TAGVAR(LD, $1)=$LD
  7762.  
  7763.     ## CAVEAT EMPTOR:
  7764.     ## There is no encapsulation within the following macros, do not change
  7765.     ## the running order or otherwise move them around unless you know exactly
  7766.     ## what you are doing...
  7767.     _LT_COMPILER_PIC($1)
  7768.     _LT_COMPILER_C_O($1)
  7769.     _LT_COMPILER_FILE_LOCKS($1)
  7770.     _LT_LINKER_SHLIBS($1)
  7771.     _LT_SYS_DYNAMIC_LINKER($1)
  7772.     _LT_LINKER_HARDCODE_LIBPATH($1)
  7773.  
  7774.     _LT_CONFIG($1)
  7775.   fi # test -n "$compiler"
  7776.  
  7777.   GCC=$lt_save_GCC
  7778.   CC=$lt_save_CC
  7779.   CFLAGS=$lt_save_CFLAGS
  7780. fi # test yes != "$_lt_disable_F77"
  7781.  
  7782. AC_LANG_POP
  7783. ])# _LT_LANG_F77_CONFIG
  7784.  
  7785.  
  7786. # _LT_LANG_FC_CONFIG([TAG])
  7787. # -------------------------
  7788. # Ensure that the configuration variables for a Fortran compiler are
  7789. # suitably defined.  These variables are subsequently used by _LT_CONFIG
  7790. # to write the compiler configuration to 'libtool'.
  7791. m4_defun([_LT_LANG_FC_CONFIG],
  7792. [AC_LANG_PUSH(Fortran)
  7793.  
  7794. if test -z "$FC" || test no = "$FC"; then
  7795.   _lt_disable_FC=yes
  7796. fi
  7797.  
  7798. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  7799. _LT_TAGVAR(allow_undefined_flag, $1)=
  7800. _LT_TAGVAR(always_export_symbols, $1)=no
  7801. _LT_TAGVAR(archive_expsym_cmds, $1)=
  7802. _LT_TAGVAR(export_dynamic_flag_spec, $1)=
  7803. _LT_TAGVAR(hardcode_direct, $1)=no
  7804. _LT_TAGVAR(hardcode_direct_absolute, $1)=no
  7805. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  7806. _LT_TAGVAR(hardcode_libdir_separator, $1)=
  7807. _LT_TAGVAR(hardcode_minus_L, $1)=no
  7808. _LT_TAGVAR(hardcode_automatic, $1)=no
  7809. _LT_TAGVAR(inherit_rpath, $1)=no
  7810. _LT_TAGVAR(module_cmds, $1)=
  7811. _LT_TAGVAR(module_expsym_cmds, $1)=
  7812. _LT_TAGVAR(link_all_deplibs, $1)=unknown
  7813. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  7814. _LT_TAGVAR(reload_flag, $1)=$reload_flag
  7815. _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
  7816. _LT_TAGVAR(no_undefined_flag, $1)=
  7817. _LT_TAGVAR(whole_archive_flag_spec, $1)=
  7818. _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
  7819.  
  7820. # Source file extension for fc test sources.
  7821. ac_ext=${ac_fc_srcext-f}
  7822.  
  7823. # Object file extension for compiled fc test sources.
  7824. objext=o
  7825. _LT_TAGVAR(objext, $1)=$objext
  7826.  
  7827. # No sense in running all these tests if we already determined that
  7828. # the FC compiler isn't working.  Some variables (like enable_shared)
  7829. # are currently assumed to apply to all compilers on this platform,
  7830. # and will be corrupted by setting them based on a non-working compiler.
  7831. if test yes != "$_lt_disable_FC"; then
  7832.   # Code to be used in simple compile tests
  7833.   lt_simple_compile_test_code="\
  7834.       subroutine t
  7835.       return
  7836.       end
  7837. "
  7838.  
  7839.   # Code to be used in simple link tests
  7840.   lt_simple_link_test_code="\
  7841.       program t
  7842.       end
  7843. "
  7844.  
  7845.   # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  7846.   _LT_TAG_COMPILER
  7847.  
  7848.   # save warnings/boilerplate of simple test code
  7849.   _LT_COMPILER_BOILERPLATE
  7850.   _LT_LINKER_BOILERPLATE
  7851.  
  7852.   # Allow CC to be a program name with arguments.
  7853.   lt_save_CC=$CC
  7854.   lt_save_GCC=$GCC
  7855.   lt_save_CFLAGS=$CFLAGS
  7856.   CC=${FC-"f95"}
  7857.   CFLAGS=$FCFLAGS
  7858.   compiler=$CC
  7859.   GCC=$ac_cv_fc_compiler_gnu
  7860.  
  7861.   _LT_TAGVAR(compiler, $1)=$CC
  7862.   _LT_CC_BASENAME([$compiler])
  7863.  
  7864.   if test -n "$compiler"; then
  7865.     AC_MSG_CHECKING([if libtool supports shared libraries])
  7866.     AC_MSG_RESULT([$can_build_shared])
  7867.  
  7868.     AC_MSG_CHECKING([whether to build shared libraries])
  7869.     test no = "$can_build_shared" && enable_shared=no
  7870.  
  7871.     # On AIX, shared libraries and static libraries use the same namespace, and
  7872.     # are all built from PIC.
  7873.     case $host_os in
  7874.       aix3*)
  7875.         test yes = "$enable_shared" && enable_static=no
  7876.         if test -n "$RANLIB"; then
  7877.           archive_cmds="$archive_cmds~\$RANLIB \$lib"
  7878.           postinstall_cmds='$RANLIB $lib'
  7879.         fi
  7880.         ;;
  7881.       aix[[4-9]]*)
  7882.         if test ia64 != "$host_cpu"; then
  7883.           case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
  7884.           yes,aix,yes) ;;               # shared object as lib.so file only
  7885.           yes,svr4,*) ;;                # shared object as lib.so archive member only
  7886.           yes,*) enable_static=no ;;    # shared object in lib.a archive as well
  7887.           esac
  7888.         fi
  7889.         ;;
  7890.     esac
  7891.     AC_MSG_RESULT([$enable_shared])
  7892.  
  7893.     AC_MSG_CHECKING([whether to build static libraries])
  7894.     # Make sure either enable_shared or enable_static is yes.
  7895.     test yes = "$enable_shared" || enable_static=yes
  7896.     AC_MSG_RESULT([$enable_static])
  7897.  
  7898.     _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
  7899.     _LT_TAGVAR(LD, $1)=$LD
  7900.  
  7901.     ## CAVEAT EMPTOR:
  7902.     ## There is no encapsulation within the following macros, do not change
  7903.     ## the running order or otherwise move them around unless you know exactly
  7904.     ## what you are doing...
  7905.     _LT_SYS_HIDDEN_LIBDEPS($1)
  7906.     _LT_COMPILER_PIC($1)
  7907.     _LT_COMPILER_C_O($1)
  7908.     _LT_COMPILER_FILE_LOCKS($1)
  7909.     _LT_LINKER_SHLIBS($1)
  7910.     _LT_SYS_DYNAMIC_LINKER($1)
  7911.     _LT_LINKER_HARDCODE_LIBPATH($1)
  7912.  
  7913.     _LT_CONFIG($1)
  7914.   fi # test -n "$compiler"
  7915.  
  7916.   GCC=$lt_save_GCC
  7917.   CC=$lt_save_CC
  7918.   CFLAGS=$lt_save_CFLAGS
  7919. fi # test yes != "$_lt_disable_FC"
  7920.  
  7921. AC_LANG_POP
  7922. ])# _LT_LANG_FC_CONFIG
  7923.  
  7924.  
  7925. # _LT_LANG_GCJ_CONFIG([TAG])
  7926. # --------------------------
  7927. # Ensure that the configuration variables for the GNU Java Compiler compiler
  7928. # are suitably defined.  These variables are subsequently used by _LT_CONFIG
  7929. # to write the compiler configuration to 'libtool'.
  7930. m4_defun([_LT_LANG_GCJ_CONFIG],
  7931. [AC_REQUIRE([LT_PROG_GCJ])dnl
  7932. AC_LANG_SAVE
  7933.  
  7934. # Source file extension for Java test sources.
  7935. ac_ext=java
  7936.  
  7937. # Object file extension for compiled Java test sources.
  7938. objext=o
  7939. _LT_TAGVAR(objext, $1)=$objext
  7940.  
  7941. # Code to be used in simple compile tests
  7942. lt_simple_compile_test_code="class foo {}"
  7943.  
  7944. # Code to be used in simple link tests
  7945. lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
  7946.  
  7947. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  7948. _LT_TAG_COMPILER
  7949.  
  7950. # save warnings/boilerplate of simple test code
  7951. _LT_COMPILER_BOILERPLATE
  7952. _LT_LINKER_BOILERPLATE
  7953.  
  7954. # Allow CC to be a program name with arguments.
  7955. lt_save_CC=$CC
  7956. lt_save_CFLAGS=$CFLAGS
  7957. lt_save_GCC=$GCC
  7958. GCC=yes
  7959. CC=${GCJ-"gcj"}
  7960. CFLAGS=$GCJFLAGS
  7961. compiler=$CC
  7962. _LT_TAGVAR(compiler, $1)=$CC
  7963. _LT_TAGVAR(LD, $1)=$LD
  7964. _LT_CC_BASENAME([$compiler])
  7965.  
  7966. # GCJ did not exist at the time GCC didn't implicitly link libc in.
  7967. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  7968.  
  7969. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  7970. _LT_TAGVAR(reload_flag, $1)=$reload_flag
  7971. _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
  7972.  
  7973. ## CAVEAT EMPTOR:
  7974. ## There is no encapsulation within the following macros, do not change
  7975. ## the running order or otherwise move them around unless you know exactly
  7976. ## what you are doing...
  7977. if test -n "$compiler"; then
  7978.   _LT_COMPILER_NO_RTTI($1)
  7979.   _LT_COMPILER_PIC($1)
  7980.   _LT_COMPILER_C_O($1)
  7981.   _LT_COMPILER_FILE_LOCKS($1)
  7982.   _LT_LINKER_SHLIBS($1)
  7983.   _LT_LINKER_HARDCODE_LIBPATH($1)
  7984.  
  7985.   _LT_CONFIG($1)
  7986. fi
  7987.  
  7988. AC_LANG_RESTORE
  7989.  
  7990. GCC=$lt_save_GCC
  7991. CC=$lt_save_CC
  7992. CFLAGS=$lt_save_CFLAGS
  7993. ])# _LT_LANG_GCJ_CONFIG
  7994.  
  7995.  
  7996. # _LT_LANG_GO_CONFIG([TAG])
  7997. # --------------------------
  7998. # Ensure that the configuration variables for the GNU Go compiler
  7999. # are suitably defined.  These variables are subsequently used by _LT_CONFIG
  8000. # to write the compiler configuration to 'libtool'.
  8001. m4_defun([_LT_LANG_GO_CONFIG],
  8002. [AC_REQUIRE([LT_PROG_GO])dnl
  8003. AC_LANG_SAVE
  8004.  
  8005. # Source file extension for Go test sources.
  8006. ac_ext=go
  8007.  
  8008. # Object file extension for compiled Go test sources.
  8009. objext=o
  8010. _LT_TAGVAR(objext, $1)=$objext
  8011.  
  8012. # Code to be used in simple compile tests
  8013. lt_simple_compile_test_code="package main; func main() { }"
  8014.  
  8015. # Code to be used in simple link tests
  8016. lt_simple_link_test_code='package main; func main() { }'
  8017.  
  8018. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  8019. _LT_TAG_COMPILER
  8020.  
  8021. # save warnings/boilerplate of simple test code
  8022. _LT_COMPILER_BOILERPLATE
  8023. _LT_LINKER_BOILERPLATE
  8024.  
  8025. # Allow CC to be a program name with arguments.
  8026. lt_save_CC=$CC
  8027. lt_save_CFLAGS=$CFLAGS
  8028. lt_save_GCC=$GCC
  8029. GCC=yes
  8030. CC=${GOC-"gccgo"}
  8031. CFLAGS=$GOFLAGS
  8032. compiler=$CC
  8033. _LT_TAGVAR(compiler, $1)=$CC
  8034. _LT_TAGVAR(LD, $1)=$LD
  8035. _LT_CC_BASENAME([$compiler])
  8036.  
  8037. # Go did not exist at the time GCC didn't implicitly link libc in.
  8038. _LT_TAGVAR(archive_cmds_need_lc, $1)=no
  8039.  
  8040. _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
  8041. _LT_TAGVAR(reload_flag, $1)=$reload_flag
  8042. _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
  8043.  
  8044. ## CAVEAT EMPTOR:
  8045. ## There is no encapsulation within the following macros, do not change
  8046. ## the running order or otherwise move them around unless you know exactly
  8047. ## what you are doing...
  8048. if test -n "$compiler"; then
  8049.   _LT_COMPILER_NO_RTTI($1)
  8050.   _LT_COMPILER_PIC($1)
  8051.   _LT_COMPILER_C_O($1)
  8052.   _LT_COMPILER_FILE_LOCKS($1)
  8053.   _LT_LINKER_SHLIBS($1)
  8054.   _LT_LINKER_HARDCODE_LIBPATH($1)
  8055.  
  8056.   _LT_CONFIG($1)
  8057. fi
  8058.  
  8059. AC_LANG_RESTORE
  8060.  
  8061. GCC=$lt_save_GCC
  8062. CC=$lt_save_CC
  8063. CFLAGS=$lt_save_CFLAGS
  8064. ])# _LT_LANG_GO_CONFIG
  8065.  
  8066.  
  8067. # _LT_LANG_RC_CONFIG([TAG])
  8068. # -------------------------
  8069. # Ensure that the configuration variables for the Windows resource compiler
  8070. # are suitably defined.  These variables are subsequently used by _LT_CONFIG
  8071. # to write the compiler configuration to 'libtool'.
  8072. m4_defun([_LT_LANG_RC_CONFIG],
  8073. [AC_REQUIRE([LT_PROG_RC])dnl
  8074. AC_LANG_SAVE
  8075.  
  8076. # Source file extension for RC test sources.
  8077. ac_ext=rc
  8078.  
  8079. # Object file extension for compiled RC test sources.
  8080. objext=o
  8081. _LT_TAGVAR(objext, $1)=$objext
  8082.  
  8083. # Code to be used in simple compile tests
  8084. lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
  8085.  
  8086. # Code to be used in simple link tests
  8087. lt_simple_link_test_code=$lt_simple_compile_test_code
  8088.  
  8089. # ltmain only uses $CC for tagged configurations so make sure $CC is set.
  8090. _LT_TAG_COMPILER
  8091.  
  8092. # save warnings/boilerplate of simple test code
  8093. _LT_COMPILER_BOILERPLATE
  8094. _LT_LINKER_BOILERPLATE
  8095.  
  8096. # Allow CC to be a program name with arguments.
  8097. lt_save_CC=$CC
  8098. lt_save_CFLAGS=$CFLAGS
  8099. lt_save_GCC=$GCC
  8100. GCC=
  8101. CC=${RC-"windres"}
  8102. CFLAGS=
  8103. compiler=$CC
  8104. _LT_TAGVAR(compiler, $1)=$CC
  8105. _LT_CC_BASENAME([$compiler])
  8106. _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
  8107.  
  8108. if test -n "$compiler"; then
  8109.   :
  8110.   _LT_CONFIG($1)
  8111. fi
  8112.  
  8113. GCC=$lt_save_GCC
  8114. AC_LANG_RESTORE
  8115. CC=$lt_save_CC
  8116. CFLAGS=$lt_save_CFLAGS
  8117. ])# _LT_LANG_RC_CONFIG
  8118.  
  8119.  
  8120. # LT_PROG_GCJ
  8121. # -----------
  8122. AC_DEFUN([LT_PROG_GCJ],
  8123. [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
  8124.   [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
  8125.     [AC_CHECK_TOOL(GCJ, gcj,)
  8126.       test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
  8127.       AC_SUBST(GCJFLAGS)])])[]dnl
  8128. ])
  8129.  
  8130. # Old name:
  8131. AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
  8132. dnl aclocal-1.4 backwards compatibility:
  8133. dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
  8134.  
  8135.  
  8136. # LT_PROG_GO
  8137. # ----------
  8138. AC_DEFUN([LT_PROG_GO],
  8139. [AC_CHECK_TOOL(GOC, gccgo,)
  8140. ])
  8141.  
  8142.  
  8143. # LT_PROG_RC
  8144. # ----------
  8145. AC_DEFUN([LT_PROG_RC],
  8146. [AC_CHECK_TOOL(RC, windres,)
  8147. ])
  8148.  
  8149. # Old name:
  8150. AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
  8151. dnl aclocal-1.4 backwards compatibility:
  8152. dnl AC_DEFUN([LT_AC_PROG_RC], [])
  8153.  
  8154.  
  8155. # _LT_DECL_EGREP
  8156. # --------------
  8157. # If we don't have a new enough Autoconf to choose the best grep
  8158. # available, choose the one first in the user's PATH.
  8159. m4_defun([_LT_DECL_EGREP],
  8160. [AC_REQUIRE([AC_PROG_EGREP])dnl
  8161. AC_REQUIRE([AC_PROG_FGREP])dnl
  8162. test -z "$GREP" && GREP=grep
  8163. _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
  8164. _LT_DECL([], [EGREP], [1], [An ERE matcher])
  8165. _LT_DECL([], [FGREP], [1], [A literal string matcher])
  8166. dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
  8167. AC_SUBST([GREP])
  8168. ])
  8169.  
  8170.  
  8171. # _LT_DECL_OBJDUMP
  8172. # --------------
  8173. # If we don't have a new enough Autoconf to choose the best objdump
  8174. # available, choose the one first in the user's PATH.
  8175. m4_defun([_LT_DECL_OBJDUMP],
  8176. [AC_CHECK_TOOL(OBJDUMP, objdump, false)
  8177. test -z "$OBJDUMP" && OBJDUMP=objdump
  8178. _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
  8179. AC_SUBST([OBJDUMP])
  8180. ])
  8181.  
  8182. # _LT_DECL_DLLTOOL
  8183. # ----------------
  8184. # Ensure DLLTOOL variable is set.
  8185. m4_defun([_LT_DECL_DLLTOOL],
  8186. [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
  8187. test -z "$DLLTOOL" && DLLTOOL=dlltool
  8188. _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
  8189. AC_SUBST([DLLTOOL])
  8190. ])
  8191.  
  8192. # _LT_DECL_SED
  8193. # ------------
  8194. # Check for a fully-functional sed program, that truncates
  8195. # as few characters as possible.  Prefer GNU sed if found.
  8196. m4_defun([_LT_DECL_SED],
  8197. [AC_PROG_SED
  8198. test -z "$SED" && SED=sed
  8199. Xsed="$SED -e 1s/^X//"
  8200. _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
  8201. _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
  8202.     [Sed that helps us avoid accidentally triggering echo(1) options like -n])
  8203. ])# _LT_DECL_SED
  8204.  
  8205. m4_ifndef([AC_PROG_SED], [
  8206. ############################################################
  8207. # NOTE: This macro has been submitted for inclusion into   #
  8208. #  GNU Autoconf as AC_PROG_SED.  When it is available in   #
  8209. #  a released version of Autoconf we should remove this    #
  8210. #  macro and use it instead.                               #
  8211. ############################################################
  8212.  
  8213. m4_defun([AC_PROG_SED],
  8214. [AC_MSG_CHECKING([for a sed that does not truncate output])
  8215. AC_CACHE_VAL(lt_cv_path_SED,
  8216. [# Loop through the user's path and test for sed and gsed.
  8217. # Then use that list of sed's as ones to test for truncation.
  8218. as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
  8219. for as_dir in $PATH
  8220. do
  8221.   IFS=$as_save_IFS
  8222.   test -z "$as_dir" && as_dir=.
  8223.   for lt_ac_prog in sed gsed; do
  8224.     for ac_exec_ext in '' $ac_executable_extensions; do
  8225.       if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
  8226.         lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
  8227.       fi
  8228.     done
  8229.   done
  8230. done
  8231. IFS=$as_save_IFS
  8232. lt_ac_max=0
  8233. lt_ac_count=0
  8234. # Add /usr/xpg4/bin/sed as it is typically found on Solaris
  8235. # along with /bin/sed that truncates output.
  8236. for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
  8237.   test ! -f "$lt_ac_sed" && continue
  8238.   cat /dev/null > conftest.in
  8239.   lt_ac_count=0
  8240.   echo $ECHO_N "0123456789$ECHO_C" >conftest.in
  8241.   # Check for GNU sed and select it if it is found.
  8242.   if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
  8243.     lt_cv_path_SED=$lt_ac_sed
  8244.     break
  8245.   fi
  8246.   while true; do
  8247.     cat conftest.in conftest.in >conftest.tmp
  8248.     mv conftest.tmp conftest.in
  8249.     cp conftest.in conftest.nl
  8250.     echo >>conftest.nl
  8251.     $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
  8252.     cmp -s conftest.out conftest.nl || break
  8253.     # 10000 chars as input seems more than enough
  8254.     test 10 -lt "$lt_ac_count" && break
  8255.     lt_ac_count=`expr $lt_ac_count + 1`
  8256.     if test "$lt_ac_count" -gt "$lt_ac_max"; then
  8257.       lt_ac_max=$lt_ac_count
  8258.       lt_cv_path_SED=$lt_ac_sed
  8259.     fi
  8260.   done
  8261. done
  8262. ])
  8263. SED=$lt_cv_path_SED
  8264. AC_SUBST([SED])
  8265. AC_MSG_RESULT([$SED])
  8266. ])#AC_PROG_SED
  8267. ])#m4_ifndef
  8268.  
  8269. # Old name:
  8270. AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
  8271. dnl aclocal-1.4 backwards compatibility:
  8272. dnl AC_DEFUN([LT_AC_PROG_SED], [])
  8273.  
  8274.  
  8275. # _LT_CHECK_SHELL_FEATURES
  8276. # ------------------------
  8277. # Find out whether the shell is Bourne or XSI compatible,
  8278. # or has some other useful features.
  8279. m4_defun([_LT_CHECK_SHELL_FEATURES],
  8280. [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
  8281.   lt_unset=unset
  8282. else
  8283.   lt_unset=false
  8284. fi
  8285. _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
  8286.  
  8287. # test EBCDIC or ASCII
  8288. case `echo X|tr X '\101'` in
  8289.  A) # ASCII based system
  8290.     # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
  8291.   lt_SP2NL='tr \040 \012'
  8292.   lt_NL2SP='tr \015\012 \040\040'
  8293.   ;;
  8294.  *) # EBCDIC based system
  8295.   lt_SP2NL='tr \100 \n'
  8296.   lt_NL2SP='tr \r\n \100\100'
  8297.   ;;
  8298. esac
  8299. _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
  8300. _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
  8301. ])# _LT_CHECK_SHELL_FEATURES
  8302.  
  8303.  
  8304. # _LT_PATH_CONVERSION_FUNCTIONS
  8305. # -----------------------------
  8306. # Determine what file name conversion functions should be used by
  8307. # func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
  8308. # for certain cross-compile configurations and native mingw.
  8309. m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
  8310. [AC_REQUIRE([AC_CANONICAL_HOST])dnl
  8311. AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  8312. AC_MSG_CHECKING([how to convert $build file names to $host format])
  8313. AC_CACHE_VAL(lt_cv_to_host_file_cmd,
  8314. [case $host in
  8315.   *-*-mingw* )
  8316.     case $build in
  8317.       *-*-mingw* ) # actually msys
  8318.         lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
  8319.         ;;
  8320.       *-*-cygwin* )
  8321.         lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
  8322.         ;;
  8323.       * ) # otherwise, assume *nix
  8324.         lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
  8325.         ;;
  8326.     esac
  8327.     ;;
  8328.   *-*-cygwin* )
  8329.     case $build in
  8330.       *-*-mingw* ) # actually msys
  8331.         lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
  8332.         ;;
  8333.       *-*-cygwin* )
  8334.         lt_cv_to_host_file_cmd=func_convert_file_noop
  8335.         ;;
  8336.       * ) # otherwise, assume *nix
  8337.         lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
  8338.         ;;
  8339.     esac
  8340.     ;;
  8341.   * ) # unhandled hosts (and "normal" native builds)
  8342.     lt_cv_to_host_file_cmd=func_convert_file_noop
  8343.     ;;
  8344. esac
  8345. ])
  8346. to_host_file_cmd=$lt_cv_to_host_file_cmd
  8347. AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
  8348. _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
  8349.          [0], [convert $build file names to $host format])dnl
  8350.  
  8351. AC_MSG_CHECKING([how to convert $build file names to toolchain format])
  8352. AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
  8353. [#assume ordinary cross tools, or native build.
  8354. lt_cv_to_tool_file_cmd=func_convert_file_noop
  8355. case $host in
  8356.   *-*-mingw* )
  8357.     case $build in
  8358.       *-*-mingw* ) # actually msys
  8359.         lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
  8360.         ;;
  8361.     esac
  8362.     ;;
  8363. esac
  8364. ])
  8365. to_tool_file_cmd=$lt_cv_to_tool_file_cmd
  8366. AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
  8367. _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
  8368.          [0], [convert $build files to toolchain format])dnl
  8369. ])# _LT_PATH_CONVERSION_FUNCTIONS
  8370.