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