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