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