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