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