1 # generated automatically by aclocal 1.13.4 -*- Autoconf -*-
3 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
5 # This file is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
14 m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
15 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
17 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
18 # 2006, 2007, 2008, 2009, 2010, 2011 Free Software
20 # Written by Gordon Matzigkeit, 1996
22 # This file is free software; the Free Software Foundation gives
23 # unlimited permission to copy and/or distribute it, with or without
24 # modifications, as long as this notice is preserved.
26 m4_define([_LT_COPYING], [dnl
27 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
28 # 2006, 2007, 2008, 2009, 2010, 2011 Free Software
30 # Written by Gordon Matzigkeit, 1996
32 # This file is part of GNU Libtool.
34 # GNU Libtool is free software; you can redistribute it and/or
35 # modify it under the terms of the GNU General Public License as
36 # published by the Free Software Foundation; either version 2 of
37 # the License, or (at your option) any later version.
39 # As a special exception to the GNU General Public License,
40 # if you distribute this file as part of a program or library that
41 # is built using GNU Libtool, you may include this file under the
42 # same distribution terms that you use for the rest of that program.
44 # GNU Libtool is distributed in the hope that it will be useful,
45 # but WITHOUT ANY WARRANTY; without even the implied warranty of
46 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
47 # GNU General Public License for more details.
49 # You should have received a copy of the GNU General Public License
50 # along with GNU Libtool; see the file COPYING. If not, a copy
51 # can be downloaded from http://www.gnu.org/licenses/gpl.html, or
52 # obtained by writing to the Free Software Foundation, Inc.,
53 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
61 # Complain and exit if this libtool version is less that VERSION.
63 [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
65 [m4_fatal([Libtool version $1 or higher is required],
72 # Complain if the absolute build directory name contains unusual characters
73 m4_defun([_LT_CHECK_BUILDDIR],
76 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
84 [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
85 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
86 AC_BEFORE([$0], [LT_LANG])dnl
87 AC_BEFORE([$0], [LT_OUTPUT])dnl
88 AC_BEFORE([$0], [LTDL_INIT])dnl
89 m4_require([_LT_CHECK_BUILDDIR])dnl
91 dnl Autoconf doesn't catch unexpanded LT_ macros by default:
92 m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
93 m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
94 dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
95 dnl unless we require an AC_DEFUNed macro:
96 AC_REQUIRE([LTOPTIONS_VERSION])dnl
97 AC_REQUIRE([LTSUGAR_VERSION])dnl
98 AC_REQUIRE([LTVERSION_VERSION])dnl
99 AC_REQUIRE([LTOBSOLETE_VERSION])dnl
100 m4_require([_LT_PROG_LTMAIN])dnl
102 _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
105 _LT_SET_OPTIONS([$0], [$1])
107 # This can be used to rebuild libtool when needed
108 LIBTOOL_DEPS="$ltmain"
110 # Always use our own libtool.
111 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
121 AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
122 AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
123 dnl aclocal-1.4 backwards compatibility:
124 dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
125 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
128 # _LT_CC_BASENAME(CC)
129 # -------------------
130 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
131 m4_defun([_LT_CC_BASENAME],
132 [for cc_temp in $1""; do
134 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
135 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
140 cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
144 # _LT_FILEUTILS_DEFAULTS
145 # ----------------------
146 # It is okay to use these file commands and assume they have been set
147 # sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
148 m4_defun([_LT_FILEUTILS_DEFAULTS],
152 ])# _LT_FILEUTILS_DEFAULTS
157 m4_defun([_LT_SETUP],
158 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
159 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
160 AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
161 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
163 _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
165 _LT_DECL([], [host_alias], [0], [The host system])dnl
166 _LT_DECL([], [host], [0])dnl
167 _LT_DECL([], [host_os], [0])dnl
169 _LT_DECL([], [build_alias], [0], [The build system])dnl
170 _LT_DECL([], [build], [0])dnl
171 _LT_DECL([], [build_os], [0])dnl
173 AC_REQUIRE([AC_PROG_CC])dnl
174 AC_REQUIRE([LT_PATH_LD])dnl
175 AC_REQUIRE([LT_PATH_NM])dnl
177 AC_REQUIRE([AC_PROG_LN_S])dnl
178 test -z "$LN_S" && LN_S="ln -s"
179 _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
181 AC_REQUIRE([LT_CMD_MAX_LEN])dnl
182 _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
183 _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
185 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
186 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
187 m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
188 m4_require([_LT_CMD_RELOAD])dnl
189 m4_require([_LT_CHECK_MAGIC_METHOD])dnl
190 m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
191 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
192 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
193 m4_require([_LT_WITH_SYSROOT])dnl
195 _LT_CONFIG_LIBTOOL_INIT([
196 # See if we are running on zsh, and set the options which allow our
197 # commands through without removal of \ escapes INIT.
198 if test -n "\${ZSH_VERSION+set}" ; then
202 if test -n "${ZSH_VERSION+set}" ; then
208 m4_require([_LT_TAG_COMPILER])dnl
212 # AIX sometimes has problems with the GCC collect2 program. For some
213 # reason, if we set the COLLECT_NAMES environment variable, the problems
214 # vanish in a puff of smoke.
215 if test "X${COLLECT_NAMES+set}" != Xset; then
226 # All known linkers require a `.a' archive for static linking (except MSVC,
227 # which needs '.lib').
230 with_gnu_ld="$lt_cv_prog_gnu_ld"
235 # Set sane defaults for various variables
236 test -z "$CC" && CC=cc
237 test -z "$LTCC" && LTCC=$CC
238 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
239 test -z "$LD" && LD=ld
240 test -z "$ac_objext" && ac_objext=o
242 _LT_CC_BASENAME([$compiler])
244 # Only perform the check for file, if the check method requires it
245 test -z "$MAGIC_CMD" && MAGIC_CMD=file
246 case $deplibs_check_method in
248 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
254 # Use C for the default configuration in the libtool script
255 LT_SUPPORTED_TAG([CC])
257 _LT_LANG_DEFAULT_CONFIG
262 # _LT_PREPARE_SED_QUOTE_VARS
263 # --------------------------
264 # Define a few sed substitution that help us do robust quoting.
265 m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
266 [# Backslashify metacharacters that are still active within
267 # double-quoted strings.
268 sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
270 # Same as above, but do not quote variable references.
271 double_quote_subst='s/\([["`\\]]\)/\\\1/g'
273 # Sed substitution to delay expansion of an escaped shell variable in a
274 # double_quote_subst'ed string.
275 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
277 # Sed substitution to delay expansion of an escaped single quote.
278 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
280 # Sed substitution to avoid accidental globbing in evaled expressions
281 no_glob_subst='s/\*/\\\*/g'
286 # Note that this code is called both from `configure', and `config.status'
287 # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
288 # `config.status' has no value for ac_aux_dir unless we are using Automake,
289 # so we pass a copy along to make sure it has a sensible value anyway.
290 m4_defun([_LT_PROG_LTMAIN],
291 [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
292 _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
293 ltmain="$ac_aux_dir/ltmain.sh"
298 # So that we can recreate a full libtool script including additional
299 # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
300 # in macros and then make a single call at the end using the `libtool'
304 # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
305 # ----------------------------------------
306 # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
307 m4_define([_LT_CONFIG_LIBTOOL_INIT],
309 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
314 m4_define([_LT_OUTPUT_LIBTOOL_INIT])
317 # _LT_CONFIG_LIBTOOL([COMMANDS])
318 # ------------------------------
319 # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
320 m4_define([_LT_CONFIG_LIBTOOL],
322 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
327 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
330 # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
331 # -----------------------------------------------------
332 m4_defun([_LT_CONFIG_SAVE_COMMANDS],
333 [_LT_CONFIG_LIBTOOL([$1])
334 _LT_CONFIG_LIBTOOL_INIT([$2])
338 # _LT_FORMAT_COMMENT([COMMENT])
339 # -----------------------------
340 # Add leading comment marks to the start of each line, and a trailing
341 # full-stop to the whole comment if one is not present already.
342 m4_define([_LT_FORMAT_COMMENT],
344 m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
345 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
352 # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
353 # -------------------------------------------------------------------
354 # CONFIGNAME is the name given to the value in the libtool script.
355 # VARNAME is the (base) name used in the configure script.
356 # VALUE may be 0, 1 or 2 for a computed quote escaped value based on
357 # VARNAME. Any other value will be used directly.
358 m4_define([_LT_DECL],
359 [lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
360 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
361 [m4_ifval([$1], [$1], [$2])])
362 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
364 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
365 lt_dict_add_subkey([lt_decl_dict], [$2],
366 [tagged?], [m4_ifval([$5], [yes], [no])])])
370 # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
371 # --------------------------------------------------------
372 m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
375 # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
376 # ------------------------------------------------
377 m4_define([lt_decl_tag_varnames],
378 [_lt_decl_filter([tagged?], [yes], $@)])
381 # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
382 # ---------------------------------------------------------
383 m4_define([_lt_decl_filter],
385 [0], [m4_fatal([$0: too few arguments: $#])],
386 [1], [m4_fatal([$0: too few arguments: $#: $1])],
387 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
388 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
389 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
393 # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
394 # --------------------------------------------------
395 m4_define([lt_decl_quote_varnames],
396 [_lt_decl_filter([value], [1], $@)])
399 # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
400 # ---------------------------------------------------
401 m4_define([lt_decl_dquote_varnames],
402 [_lt_decl_filter([value], [2], $@)])
405 # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
406 # ---------------------------------------------------
407 m4_define([lt_decl_varnames_tagged],
408 [m4_assert([$# <= 2])dnl
409 _$0(m4_quote(m4_default([$1], [[, ]])),
410 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
411 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
412 m4_define([_lt_decl_varnames_tagged],
413 [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
416 # lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
417 # ------------------------------------------------
418 m4_define([lt_decl_all_varnames],
419 [_$0(m4_quote(m4_default([$1], [[, ]])),
421 m4_quote(lt_decl_varnames),
422 m4_quote(m4_shift($@))))[]dnl
424 m4_define([_lt_decl_all_varnames],
425 [lt_join($@, lt_decl_varnames_tagged([$1],
426 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
430 # _LT_CONFIG_STATUS_DECLARE([VARNAME])
431 # ------------------------------------
432 # Quote a variable value, and forward it to `config.status' so that its
433 # declaration there will have the same value as in `configure'. VARNAME
434 # must have a single quote delimited value for this to work.
435 m4_define([_LT_CONFIG_STATUS_DECLARE],
436 [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
439 # _LT_CONFIG_STATUS_DECLARATIONS
440 # ------------------------------
441 # We delimit libtool config variables with single quotes, so when
442 # we write them to config.status, we have to be sure to quote all
443 # embedded single quotes properly. In configure, this macro expands
444 # each variable declared with _LT_DECL (and _LT_TAGDECL) into:
446 # <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
447 m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
448 [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
449 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
454 # Output comment and list of tags supported by the script
455 m4_defun([_LT_LIBTOOL_TAGS],
456 [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
457 available_tags="_LT_TAGS"dnl
461 # _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
462 # -----------------------------------
463 # Extract the dictionary values for VARNAME (optionally with TAG) and
464 # expand to a commented shell variable setting:
466 # # Some comment about what VAR is for.
467 # visible_name=$lt_internal_name
468 m4_define([_LT_LIBTOOL_DECLARE],
469 [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
470 [description])))[]dnl
471 m4_pushdef([_libtool_name],
472 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
473 m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
474 [0], [_libtool_name=[$]$1],
475 [1], [_libtool_name=$lt_[]$1],
476 [2], [_libtool_name=$lt_[]$1],
477 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
478 m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
482 # _LT_LIBTOOL_CONFIG_VARS
483 # -----------------------
484 # Produce commented declarations of non-tagged libtool config variables
485 # suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
486 # script. Tagged libtool config variables (even for the LIBTOOL CONFIG
487 # section) are produced by _LT_LIBTOOL_TAG_VARS.
488 m4_defun([_LT_LIBTOOL_CONFIG_VARS],
489 [m4_foreach([_lt_var],
490 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
491 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
494 # _LT_LIBTOOL_TAG_VARS(TAG)
495 # -------------------------
496 m4_define([_LT_LIBTOOL_TAG_VARS],
497 [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
498 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
501 # _LT_TAGVAR(VARNAME, [TAGNAME])
502 # ------------------------------
503 m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
506 # _LT_CONFIG_COMMANDS
507 # -------------------
508 # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
509 # variables for single and double quote escaping we saved from calls
510 # to _LT_DECL, we can put quote escaped variables declarations
511 # into `config.status', and then the shell code to quote escape them in
512 # for loops in `config.status'. Finally, any additional code accumulated
513 # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
514 m4_defun([_LT_CONFIG_COMMANDS],
515 [AC_PROVIDE_IFELSE([LT_OUTPUT],
516 dnl If the libtool generation code has been placed in $CONFIG_LT,
517 dnl instead of duplicating it all over again into config.status,
518 dnl then we will have config.status run $CONFIG_LT later, so it
519 dnl needs to know what name is stored there:
520 [AC_CONFIG_COMMANDS([libtool],
521 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
522 dnl If the libtool generation code is destined for config.status,
523 dnl expand the accumulated commands and init code now:
524 [AC_CONFIG_COMMANDS([libtool],
525 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
526 ])#_LT_CONFIG_COMMANDS
530 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
533 # The HP-UX ksh and POSIX shell print the target directory to stdout
535 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
537 sed_quote_subst='$sed_quote_subst'
538 double_quote_subst='$double_quote_subst'
539 delay_variable_subst='$delay_variable_subst'
540 _LT_CONFIG_STATUS_DECLARATIONS
543 compiler='$compiler_DEFAULT'
545 # A function that is used when there is no print builtin or printf.
546 func_fallback_echo ()
548 eval 'cat <<_LTECHO_EOF
553 # Quote evaled strings.
554 for var in lt_decl_all_varnames([[ \
555 ]], lt_decl_quote_varnames); do
556 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
557 *[[\\\\\\\`\\"\\\$]]*)
558 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
561 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
566 # Double-quote double-evaled strings.
567 for var in lt_decl_all_varnames([[ \
568 ]], lt_decl_dquote_varnames); do
569 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
570 *[[\\\\\\\`\\"\\\$]]*)
571 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
574 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
579 _LT_OUTPUT_LIBTOOL_INIT
582 # _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
583 # ------------------------------------
584 # Generate a child script FILE with all initialization necessary to
585 # reuse the environment learned by the parent script, and make the
586 # file executable. If COMMENT is supplied, it is inserted after the
587 # `#!' sequence but before initialization text begins. After this
588 # macro, additional text can be appended to FILE to form the body of
589 # the child script. The macro ends with non-zero status if the
590 # file could not be fully written (such as if the disk is full).
591 m4_ifdef([AS_INIT_GENERATED],
592 [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
593 [m4_defun([_LT_GENERATED_FILE_INIT],
594 [m4_require([AS_PREPARE])]dnl
595 [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
597 cat >$1 <<_ASEOF || lt_write_fail=1
599 # Generated by $as_me.
601 SHELL=\${CONFIG_SHELL-$SHELL}
604 cat >>$1 <<\_ASEOF || lt_write_fail=1
607 exec AS_MESSAGE_FD>&1
609 test $lt_write_fail = 0 && chmod +x $1[]dnl
610 m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
614 # This macro allows early generation of the libtool script (before
615 # AC_OUTPUT is called), incase it is used in configure for compilation
617 AC_DEFUN([LT_OUTPUT],
618 [: ${CONFIG_LT=./config.lt}
619 AC_MSG_NOTICE([creating $CONFIG_LT])
620 _LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
621 [# Run this file to recreate a libtool stub with the current configuration.])
623 cat >>"$CONFIG_LT" <<\_LTEOF
625 exec AS_MESSAGE_LOG_FD>>config.log
628 AS_BOX([Running $as_me.])
629 } >&AS_MESSAGE_LOG_FD
632 \`$as_me' creates a local libtool stub from the current configuration,
633 for use in further configure time tests before the real libtool is
636 Usage: $[0] [[OPTIONS]]
638 -h, --help print this help, then exit
639 -V, --version print version number, then exit
640 -q, --quiet do not print progress messages
641 -d, --debug don't remove temporary files
643 Report bugs to <bug-libtool@gnu.org>."
646 m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
647 m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
648 configured by $[0], generated by m4_PACKAGE_STRING.
650 Copyright (C) 2011 Free Software Foundation, Inc.
651 This config.lt script is free software; the Free Software Foundation
652 gives unlimited permision to copy, distribute and modify it."
657 --version | --v* | -V )
658 echo "$lt_cl_version"; exit 0 ;;
660 echo "$lt_cl_help"; exit 0 ;;
661 --debug | --d* | -d )
663 --quiet | --q* | --silent | --s* | -q )
666 -*) AC_MSG_ERROR([unrecognized option: $[1]
667 Try \`$[0] --help' for more information.]) ;;
669 *) AC_MSG_ERROR([unrecognized argument: $[1]
670 Try \`$[0] --help' for more information.]) ;;
675 if $lt_cl_silent; then
676 exec AS_MESSAGE_FD>/dev/null
680 cat >>"$CONFIG_LT" <<_LTEOF
681 _LT_OUTPUT_LIBTOOL_COMMANDS_INIT
684 cat >>"$CONFIG_LT" <<\_LTEOF
685 AC_MSG_NOTICE([creating $ofile])
686 _LT_OUTPUT_LIBTOOL_COMMANDS
689 chmod +x "$CONFIG_LT"
691 # configure is writing to config.log, but config.lt does its own redirection,
692 # appending to config.log, which fails on DOS, as config.log is still kept
693 # open by configure. Here we exec the FD to /dev/null, effectively closing
694 # config.log, so it can be properly (re)opened and appended to by config.lt.
696 test "$silent" = yes &&
697 lt_config_lt_args="$lt_config_lt_args --quiet"
698 exec AS_MESSAGE_LOG_FD>/dev/null
699 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
700 exec AS_MESSAGE_LOG_FD>>config.log
701 $lt_cl_success || AS_EXIT(1)
707 # If TAG is the built-in tag, create an initial libtool script with a
708 # default configuration from the untagged config vars. Otherwise add code
709 # to config.status for appending the configuration named by TAG from the
710 # matching tagged config vars.
711 m4_defun([_LT_CONFIG],
712 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
713 _LT_CONFIG_SAVE_COMMANDS([
714 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
715 m4_if(_LT_TAG, [C], [
716 # See if we are running on zsh, and set the options which allow our
717 # commands through without removal of \ escapes.
718 if test -n "${ZSH_VERSION+set}" ; then
723 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
726 cat <<_LT_EOF >> "$cfgfile"
729 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
730 # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
731 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
732 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
737 # ### BEGIN LIBTOOL CONFIG
738 _LT_LIBTOOL_CONFIG_VARS
740 # ### END LIBTOOL CONFIG
746 cat <<\_LT_EOF >> "$cfgfile"
747 # AIX sometimes has problems with the GCC collect2 program. For some
748 # reason, if we set the COLLECT_NAMES environment variable, the problems
749 # vanish in a puff of smoke.
750 if test "X${COLLECT_NAMES+set}" != Xset; then
760 # We use sed instead of cat because bash on DJGPP gets confused if
761 # if finds mixed CR/LF and LF-only lines. Since sed operates in
762 # text mode, it properly converts lines to CR/LF. This bash problem
763 # is reportedly fixed, but why not run on old versions too?
764 sed '$q' "$ltmain" >> "$cfgfile" \
765 || (rm -f "$cfgfile"; exit 1)
767 _LT_PROG_REPLACE_SHELLFNS
769 mv -f "$cfgfile" "$ofile" ||
770 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
773 [cat <<_LT_EOF >> "$ofile"
775 dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
776 dnl in a comment (ie after a #).
777 # ### BEGIN LIBTOOL TAG CONFIG: $1
778 _LT_LIBTOOL_TAG_VARS(_LT_TAG)
779 # ### END LIBTOOL TAG CONFIG: $1
786 TIMESTAMP='$TIMESTAMP'
789 ])dnl /_LT_CONFIG_SAVE_COMMANDS
793 # LT_SUPPORTED_TAG(TAG)
794 # ---------------------
795 # Trace this macro to discover what tags are supported by the libtool
796 # --tag option, using:
797 # autoconf --trace 'LT_SUPPORTED_TAG:$1'
798 AC_DEFUN([LT_SUPPORTED_TAG], [])
801 # C support is built-in for now
802 m4_define([_LT_LANG_C_enabled], [])
803 m4_define([_LT_TAGS], [])
808 # Enable libtool support for the given language if not already enabled.
810 [AC_BEFORE([$0], [LT_OUTPUT])dnl
813 [C++], [_LT_LANG(CXX)],
814 [Go], [_LT_LANG(GO)],
815 [Java], [_LT_LANG(GCJ)],
816 [Fortran 77], [_LT_LANG(F77)],
817 [Fortran], [_LT_LANG(FC)],
818 [Windows Resource], [_LT_LANG(RC)],
819 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
821 [m4_fatal([$0: unsupported language: "$1"])])])dnl
828 [m4_ifdef([_LT_LANG_]$1[_enabled], [],
829 [LT_SUPPORTED_TAG([$1])dnl
830 m4_append([_LT_TAGS], [$1 ])dnl
831 m4_define([_LT_LANG_]$1[_enabled], [])dnl
832 _LT_LANG_$1_CONFIG($1)])dnl
836 m4_ifndef([AC_PROG_GO], [
837 # NOTE: This macro has been submitted for inclusion into #
838 # GNU Autoconf as AC_PROG_GO. When it is available in #
839 # a released version of Autoconf we should remove this #
840 # macro and use it instead. #
841 m4_defun([AC_PROG_GO],
843 AC_ARG_VAR([GOC], [Go compiler command])dnl
844 AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
845 _AC_ARG_VAR_LDFLAGS()dnl
846 AC_CHECK_TOOL(GOC, gccgo)
847 if test -z "$GOC"; then
848 if test -n "$ac_tool_prefix"; then
849 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
852 if test -z "$GOC"; then
853 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
859 # _LT_LANG_DEFAULT_CONFIG
860 # -----------------------
861 m4_defun([_LT_LANG_DEFAULT_CONFIG],
862 [AC_PROVIDE_IFELSE([AC_PROG_CXX],
864 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
866 AC_PROVIDE_IFELSE([AC_PROG_F77],
868 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
870 AC_PROVIDE_IFELSE([AC_PROG_FC],
872 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
874 dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
875 dnl pulling things in needlessly.
876 AC_PROVIDE_IFELSE([AC_PROG_GCJ],
878 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
880 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
882 [m4_ifdef([AC_PROG_GCJ],
883 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
884 m4_ifdef([A][M_PROG_GCJ],
885 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
886 m4_ifdef([LT_PROG_GCJ],
887 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
889 AC_PROVIDE_IFELSE([AC_PROG_GO],
891 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
893 AC_PROVIDE_IFELSE([LT_PROG_RC],
895 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
896 ])# _LT_LANG_DEFAULT_CONFIG
899 AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
900 AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
901 AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
902 AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
903 AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
904 dnl aclocal-1.4 backwards compatibility:
905 dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
906 dnl AC_DEFUN([AC_LIBTOOL_F77], [])
907 dnl AC_DEFUN([AC_LIBTOOL_FC], [])
908 dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
909 dnl AC_DEFUN([AC_LIBTOOL_RC], [])
914 m4_defun([_LT_TAG_COMPILER],
915 [AC_REQUIRE([AC_PROG_CC])dnl
917 _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
918 _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
919 _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
920 _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
922 # If no C compiler was specified, use CC.
925 # If no C compiler flags were specified, use CFLAGS.
926 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
928 # Allow CC to be a program name with arguments.
933 # _LT_COMPILER_BOILERPLATE
934 # ------------------------
935 # Check for compiler boilerplate output or warnings with
936 # the simple compiler test code.
937 m4_defun([_LT_COMPILER_BOILERPLATE],
938 [m4_require([_LT_DECL_SED])dnl
939 ac_outfile=conftest.$ac_objext
940 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
941 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
942 _lt_compiler_boilerplate=`cat conftest.err`
944 ])# _LT_COMPILER_BOILERPLATE
947 # _LT_LINKER_BOILERPLATE
948 # ----------------------
949 # Check for linker boilerplate output or warnings with
950 # the simple link test code.
951 m4_defun([_LT_LINKER_BOILERPLATE],
952 [m4_require([_LT_DECL_SED])dnl
953 ac_outfile=conftest.$ac_objext
954 echo "$lt_simple_link_test_code" >conftest.$ac_ext
955 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
956 _lt_linker_boilerplate=`cat conftest.err`
958 ])# _LT_LINKER_BOILERPLATE
960 # _LT_REQUIRED_DARWIN_CHECKS
961 # -------------------------
962 m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
965 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
966 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
967 AC_CHECK_TOOL([LIPO], [lipo], [:])
968 AC_CHECK_TOOL([OTOOL], [otool], [:])
969 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
970 _LT_DECL([], [DSYMUTIL], [1],
971 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
972 _LT_DECL([], [NMEDIT], [1],
973 [Tool to change global to local symbols on Mac OS X])
974 _LT_DECL([], [LIPO], [1],
975 [Tool to manipulate fat objects and archives on Mac OS X])
976 _LT_DECL([], [OTOOL], [1],
977 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
978 _LT_DECL([], [OTOOL64], [1],
979 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
981 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
982 [lt_cv_apple_cc_single_mod=no
983 if test -z "${LT_MULTI_MODULE}"; then
984 # By default we will add the -single_module flag. You can override
985 # by either setting the environment variable LT_MULTI_MODULE
986 # non-empty at configure time, or by adding -multi_module to the
988 rm -rf libconftest.dylib*
989 echo "int foo(void){return 1;}" > conftest.c
990 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
991 -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
992 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
993 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
995 # If there is a non-empty error log, and "single_module"
996 # appears in it, assume the flag caused a linker warning
997 if test -s conftest.err && $GREP single_module conftest.err; then
998 cat conftest.err >&AS_MESSAGE_LOG_FD
999 # Otherwise, if the output was created with a 0 exit code from
1000 # the compiler, it worked.
1001 elif test -f libconftest.dylib && test $_lt_result -eq 0; then
1002 lt_cv_apple_cc_single_mod=yes
1004 cat conftest.err >&AS_MESSAGE_LOG_FD
1006 rm -rf libconftest.dylib*
1010 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1011 [lt_cv_ld_exported_symbols_list],
1012 [lt_cv_ld_exported_symbols_list=no
1013 save_LDFLAGS=$LDFLAGS
1014 echo "_main" > conftest.sym
1015 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1016 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1017 [lt_cv_ld_exported_symbols_list=yes],
1018 [lt_cv_ld_exported_symbols_list=no])
1019 LDFLAGS="$save_LDFLAGS"
1022 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1023 [lt_cv_ld_force_load=no
1024 cat > conftest.c << _LT_EOF
1025 int forced_loaded() { return 2;}
1027 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1028 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1029 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1030 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1031 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1032 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1033 cat > conftest.c << _LT_EOF
1034 int main() { return 0;}
1036 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1037 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1039 if test -s conftest.err && $GREP force_load conftest.err; then
1040 cat conftest.err >&AS_MESSAGE_LOG_FD
1041 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
1042 lt_cv_ld_force_load=yes
1044 cat conftest.err >&AS_MESSAGE_LOG_FD
1046 rm -f conftest.err libconftest.a conftest conftest.c
1047 rm -rf conftest.dSYM
1050 rhapsody* | darwin1.[[012]])
1051 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
1053 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1054 darwin*) # darwin 5.x on
1055 # if running on 10.5 or later, the deployment target defaults
1056 # to the OS version, if on x86, and 10.4, the deployment
1057 # target defaults to 10.4. Don't you love it?
1058 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1059 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1060 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1062 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1064 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1068 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
1069 _lt_dar_single_mod='$single_module'
1071 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
1072 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
1074 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
1076 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
1077 _lt_dsymutil='~$DSYMUTIL $lib || :'
1086 # _LT_DARWIN_LINKER_FEATURES([TAG])
1087 # ---------------------------------
1088 # Checks for linker and compiler features on darwin
1089 m4_defun([_LT_DARWIN_LINKER_FEATURES],
1091 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1092 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1093 _LT_TAGVAR(hardcode_direct, $1)=no
1094 _LT_TAGVAR(hardcode_automatic, $1)=yes
1095 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1096 if test "$lt_cv_ld_force_load" = "yes"; then
1097 _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
1098 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1099 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1101 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1103 _LT_TAGVAR(link_all_deplibs, $1)=yes
1104 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1105 case $cc_basename in
1106 ifort*) _lt_dar_can_shared=yes ;;
1107 *) _lt_dar_can_shared=$GCC ;;
1109 if test "$_lt_dar_can_shared" = "yes"; then
1110 output_verbose_link_cmd=func_echo_all
1111 _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
1112 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1113 _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
1114 _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
1116 [ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1117 _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
1118 _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
1122 _LT_TAGVAR(ld_shlibs, $1)=no
1126 # _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1127 # ----------------------------------
1128 # Links a minimal program and checks the executable
1129 # for the system default hardcoded library path. In most cases,
1130 # this is /usr/lib:/lib, but when the MPI compilers are used
1131 # the location of the communication and MPI libs are included too.
1132 # If we don't find anything, use the default library path according
1133 # to the aix ld manual.
1134 # Store the results from the different compilers for each TAGNAME.
1135 # Allow to override them for all tags through lt_cv_aix_libpath.
1136 m4_defun([_LT_SYS_MODULE_PATH_AIX],
1137 [m4_require([_LT_DECL_SED])dnl
1138 if test "${lt_cv_aix_libpath+set}" = set; then
1139 aix_libpath=$lt_cv_aix_libpath
1141 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1142 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1143 lt_aix_libpath_sed='[
1144 /Import File Strings/,/^$/ {
1146 s/^0 *\([^ ]*\) *$/\1/
1150 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1151 # Check for a 64-bit object if we didn't find anything.
1152 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1153 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1155 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1156 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1159 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1161 ])# _LT_SYS_MODULE_PATH_AIX
1164 # _LT_SHELL_INIT(ARG)
1165 # -------------------
1166 m4_define([_LT_SHELL_INIT],
1167 [m4_divert_text([M4SH-INIT], [$1
1168 ])])# _LT_SHELL_INIT
1172 # _LT_PROG_ECHO_BACKSLASH
1173 # -----------------------
1174 # Find how we can fake an echo command that does not interpret backslash.
1175 # In particular, with Autoconf 2.60 or later we add some code to the start
1176 # of the generated configure script which will find a shell with a builtin
1177 # printf (which we can use as an echo command).
1178 m4_defun([_LT_PROG_ECHO_BACKSLASH],
1179 [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1180 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1181 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1183 AC_MSG_CHECKING([how to print strings])
1184 # Test print first, because it will be a builtin if present.
1185 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1186 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1188 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1191 # Use this function as a fallback that always works.
1192 func_fallback_echo ()
1194 eval 'cat <<_LTECHO_EOF
1198 ECHO='func_fallback_echo'
1201 # func_echo_all arg...
1202 # Invoke $ECHO with all args, space-separated.
1209 printf*) AC_MSG_RESULT([printf]) ;;
1210 print*) AC_MSG_RESULT([print -r]) ;;
1211 *) AC_MSG_RESULT([cat]) ;;
1214 m4_ifdef([_AS_DETECT_SUGGESTED],
1215 [_AS_DETECT_SUGGESTED([
1216 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1217 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1218 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1219 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1220 PATH=/empty FPATH=/empty; export PATH FPATH
1221 test "X`printf %s $ECHO`" = "X$ECHO" \
1222 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1224 _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1225 _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1226 ])# _LT_PROG_ECHO_BACKSLASH
1231 AC_DEFUN([_LT_WITH_SYSROOT],
1232 [AC_MSG_CHECKING([for sysroot])
1233 AC_ARG_WITH([sysroot],
1234 [ --with-sysroot[=DIR] Search for dependent libraries within DIR
1235 (or the compiler's sysroot if not specified).],
1236 [], [with_sysroot=no])
1238 dnl lt_sysroot will always be passed unquoted. We quote it here
1239 dnl in case the user passed a directory name.
1241 case ${with_sysroot} in #(
1243 if test "$GCC" = yes; then
1244 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1248 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1253 AC_MSG_RESULT([${with_sysroot}])
1254 AC_MSG_ERROR([The sysroot must be an absolute path.])
1258 AC_MSG_RESULT([${lt_sysroot:-no}])
1259 _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1260 [dependent libraries, and in which our libraries should be installed.])])
1264 m4_defun([_LT_ENABLE_LOCK],
1265 [AC_ARG_ENABLE([libtool-lock],
1266 [AS_HELP_STRING([--disable-libtool-lock],
1267 [avoid locking (might break parallel builds)])])
1268 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1270 # Some flags need to be propagated to the compiler or linker for good
1274 # Find out which ABI we are using.
1275 echo 'int i;' > conftest.$ac_ext
1276 if AC_TRY_EVAL(ac_compile); then
1277 case `/usr/bin/file conftest.$ac_objext` in
1289 # Find out which ABI we are using.
1290 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1291 if AC_TRY_EVAL(ac_compile); then
1292 if test "$lt_cv_prog_gnu_ld" = yes; then
1293 case `/usr/bin/file conftest.$ac_objext` in
1295 LD="${LD-ld} -melf32bsmip"
1298 LD="${LD-ld} -melf32bmipn32"
1301 LD="${LD-ld} -melf64bmip"
1305 case `/usr/bin/file conftest.$ac_objext` in
1321 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
1322 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1323 # Find out which ABI we are using.
1324 echo 'int i;' > conftest.$ac_ext
1325 if AC_TRY_EVAL(ac_compile); then
1326 case `/usr/bin/file conftest.o` in
1329 x86_64-*kfreebsd*-gnu)
1330 LD="${LD-ld} -m elf_i386_fbsd"
1333 LD="${LD-ld} -m elf_i386"
1335 powerpc64le-*linux*)
1336 LD="${LD-ld} -m elf32lppclinux"
1339 LD="${LD-ld} -m elf32ppclinux"
1342 LD="${LD-ld} -m elf_s390"
1345 LD="${LD-ld} -m elf32_sparc"
1351 x86_64-*kfreebsd*-gnu)
1352 LD="${LD-ld} -m elf_x86_64_fbsd"
1355 LD="${LD-ld} -m elf_x86_64"
1358 LD="${LD-ld} -m elf64lppc"
1361 LD="${LD-ld} -m elf64ppc"
1363 s390*-*linux*|s390*-*tpf*)
1364 LD="${LD-ld} -m elf64_s390"
1367 LD="${LD-ld} -m elf64_sparc"
1377 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1378 SAVE_CFLAGS="$CFLAGS"
1379 CFLAGS="$CFLAGS -belf"
1380 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1382 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1384 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1385 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1386 CFLAGS="$SAVE_CFLAGS"
1390 # Find out which ABI we are using.
1391 echo 'int i;' > conftest.$ac_ext
1392 if AC_TRY_EVAL(ac_compile); then
1393 case `/usr/bin/file conftest.o` in
1395 case $lt_cv_prog_gnu_ld in
1399 LD="${LD-ld} -m elf_x86_64"
1402 LD="${LD-ld} -m elf64_sparc"
1405 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1406 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1411 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1423 need_locks="$enable_libtool_lock"
1429 m4_defun([_LT_PROG_AR],
1430 [AC_CHECK_TOOLS(AR, [ar], false)
1433 _LT_DECL([], [AR], [1], [The archiver])
1434 _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1436 AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1437 [lt_cv_ar_at_file=no
1438 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1439 [echo conftest.$ac_objext > conftest.lst
1440 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1441 AC_TRY_EVAL([lt_ar_try])
1442 if test "$ac_status" -eq 0; then
1443 # Ensure the archiver fails upon bogus file names.
1444 rm -f conftest.$ac_objext libconftest.a
1445 AC_TRY_EVAL([lt_ar_try])
1446 if test "$ac_status" -ne 0; then
1450 rm -f conftest.* libconftest.a
1454 if test "x$lt_cv_ar_at_file" = xno; then
1457 archiver_list_spec=$lt_cv_ar_at_file
1459 _LT_DECL([], [archiver_list_spec], [1],
1460 [How to feed a file listing to the archiver])
1464 # _LT_CMD_OLD_ARCHIVE
1465 # -------------------
1466 m4_defun([_LT_CMD_OLD_ARCHIVE],
1469 AC_CHECK_TOOL(STRIP, strip, :)
1470 test -z "$STRIP" && STRIP=:
1471 _LT_DECL([], [STRIP], [1], [A symbol stripping program])
1473 AC_CHECK_TOOL(RANLIB, ranlib, :)
1474 test -z "$RANLIB" && RANLIB=:
1475 _LT_DECL([], [RANLIB], [1],
1476 [Commands used to install an old-style archive])
1478 # Determine commands to create old-style static archives.
1479 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1480 old_postinstall_cmds='chmod 644 $oldlib'
1481 old_postuninstall_cmds=
1483 if test -n "$RANLIB"; then
1486 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
1489 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
1492 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
1497 lock_old_archive_extraction=yes ;;
1499 lock_old_archive_extraction=no ;;
1501 _LT_DECL([], [old_postinstall_cmds], [2])
1502 _LT_DECL([], [old_postuninstall_cmds], [2])
1503 _LT_TAGDECL([], [old_archive_cmds], [2],
1504 [Commands used to build an old-style archive])
1505 _LT_DECL([], [lock_old_archive_extraction], [0],
1506 [Whether to use a lock for old archive extraction])
1507 ])# _LT_CMD_OLD_ARCHIVE
1510 # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1511 # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1512 # ----------------------------------------------------------------
1513 # Check whether the given compiler option works
1514 AC_DEFUN([_LT_COMPILER_OPTION],
1515 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1516 m4_require([_LT_DECL_SED])dnl
1517 AC_CACHE_CHECK([$1], [$2],
1519 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1520 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1521 lt_compiler_flag="$3"
1522 # Insert the option either (1) after the last *FLAGS variable, or
1523 # (2) before a word containing "conftest.", or (3) at the end.
1524 # Note that $ac_compile itself does not contain backslashes and begins
1525 # with a dollar sign (not a hyphen), so the echo should work correctly.
1526 # The option is referenced via a variable to avoid confusing sed.
1527 lt_compile=`echo "$ac_compile" | $SED \
1528 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1529 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1530 -e 's:$: $lt_compiler_flag:'`
1531 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1532 (eval "$lt_compile" 2>conftest.err)
1534 cat conftest.err >&AS_MESSAGE_LOG_FD
1535 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1536 if (exit $ac_status) && test -s "$ac_outfile"; then
1537 # The compiler can only warn and ignore the option if not recognized
1538 # So say no if there are warnings other than the usual output.
1539 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1540 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1541 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1548 if test x"[$]$2" = xyes; then
1549 m4_if([$5], , :, [$5])
1551 m4_if([$6], , :, [$6])
1553 ])# _LT_COMPILER_OPTION
1556 AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1557 dnl aclocal-1.4 backwards compatibility:
1558 dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1561 # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1562 # [ACTION-SUCCESS], [ACTION-FAILURE])
1563 # ----------------------------------------------------
1564 # Check whether the given linker option works
1565 AC_DEFUN([_LT_LINKER_OPTION],
1566 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1567 m4_require([_LT_DECL_SED])dnl
1568 AC_CACHE_CHECK([$1], [$2],
1570 save_LDFLAGS="$LDFLAGS"
1571 LDFLAGS="$LDFLAGS $3"
1572 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1573 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1574 # The linker can only warn and ignore the option if not recognized
1575 # So say no if there are warnings
1576 if test -s conftest.err; then
1577 # Append any errors to the config.log.
1578 cat conftest.err 1>&AS_MESSAGE_LOG_FD
1579 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1580 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1581 if diff conftest.exp conftest.er2 >/dev/null; then
1589 LDFLAGS="$save_LDFLAGS"
1592 if test x"[$]$2" = xyes; then
1593 m4_if([$4], , :, [$4])
1595 m4_if([$5], , :, [$5])
1597 ])# _LT_LINKER_OPTION
1600 AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1601 dnl aclocal-1.4 backwards compatibility:
1602 dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1607 AC_DEFUN([LT_CMD_MAX_LEN],
1608 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
1609 # find the maximum length of command line arguments
1610 AC_MSG_CHECKING([the maximum length of command line arguments])
1611 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1617 # On DJGPP, this test can blow up pretty badly due to problems in libc
1618 # (any single argument exceeding 2000 bytes causes a buffer overrun
1619 # during glob expansion). Even if it were fixed, the result of this
1620 # check would be larger than it should be.
1621 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1625 # Under GNU Hurd, this test is not required because there is
1626 # no limit to the length of command line arguments.
1627 # Libtool will interpret -1 as no limit whatsoever
1628 lt_cv_sys_max_cmd_len=-1;
1631 cygwin* | mingw* | cegcc*)
1632 # On Win9x/ME, this test blows up -- it succeeds, but takes
1633 # about 5 minutes as the teststring grows exponentially.
1634 # Worse, since 9x/ME are not pre-emptively multitasking,
1635 # you end up with a "frozen" computer, even though with patience
1636 # the test eventually succeeds (with a max line length of 256k).
1637 # Instead, let's just punt: use the minimum linelength reported by
1638 # all of the supported platforms: 8192 (on NT/2K/XP).
1639 lt_cv_sys_max_cmd_len=8192;
1643 # On MiNT this can take a long time and run out of memory.
1644 lt_cv_sys_max_cmd_len=8192;
1648 # On AmigaOS with pdksh, this test takes hours, literally.
1649 # So we just punt and use a minimum line length of 8192.
1650 lt_cv_sys_max_cmd_len=8192;
1653 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1654 # This has been around since 386BSD, at least. Likely further.
1655 if test -x /sbin/sysctl; then
1656 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1657 elif test -x /usr/sbin/sysctl; then
1658 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1660 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1662 # And add a safety zone
1663 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1664 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1668 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1669 lt_cv_sys_max_cmd_len=196608
1673 # The test takes a long time on OS/2.
1674 lt_cv_sys_max_cmd_len=8192
1678 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1679 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1680 # nice to cause kernel panics so lets avoid the loop below.
1681 # First set a reasonable default.
1682 lt_cv_sys_max_cmd_len=16384
1684 if test -x /sbin/sysconfig; then
1685 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1686 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1691 lt_cv_sys_max_cmd_len=102400
1693 sysv5* | sco5v6* | sysv4.2uw2*)
1694 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1695 if test -n "$kargmax"; then
1696 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1698 lt_cv_sys_max_cmd_len=32768
1702 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1703 if test -n "$lt_cv_sys_max_cmd_len"; then
1704 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1705 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1707 # Make teststring a little bigger before we do anything with it.
1708 # a 1K string should be a reasonable start.
1709 for i in 1 2 3 4 5 6 7 8 ; do
1710 teststring=$teststring$teststring
1712 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1713 # If test is not a shell built-in, we'll probably end up computing a
1714 # maximum length that is only half of the actual maximum length, but
1716 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
1717 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1718 test $i != 17 # 1/2 MB should be enough
1721 teststring=$teststring$teststring
1723 # Only check the string length outside the loop.
1724 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1726 # Add a significant safety factor because C++ compilers can tack on
1727 # massive amounts of additional arguments before passing them to the
1728 # linker. It appears as though 1/2 is a usable value.
1729 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1734 if test -n $lt_cv_sys_max_cmd_len ; then
1735 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1739 max_cmd_len=$lt_cv_sys_max_cmd_len
1740 _LT_DECL([], [max_cmd_len], [0],
1741 [What is the maximum length of a command?])
1745 AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1746 dnl aclocal-1.4 backwards compatibility:
1747 dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1752 m4_defun([_LT_HEADER_DLFCN],
1753 [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1754 ])# _LT_HEADER_DLFCN
1757 # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1758 # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1759 # ----------------------------------------------------------------
1760 m4_defun([_LT_TRY_DLOPEN_SELF],
1761 [m4_require([_LT_HEADER_DLFCN])dnl
1762 if test "$cross_compiling" = yes; then :
1765 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1766 lt_status=$lt_dlunknown
1767 cat > conftest.$ac_ext <<_LT_EOF
1768 [#line $LINENO "configure"
1769 #include "confdefs.h"
1778 # define LT_DLGLOBAL RTLD_GLOBAL
1781 # define LT_DLGLOBAL DL_GLOBAL
1783 # define LT_DLGLOBAL 0
1787 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1788 find out it does not work in some platform. */
1789 #ifndef LT_DLLAZY_OR_NOW
1791 # define LT_DLLAZY_OR_NOW RTLD_LAZY
1794 # define LT_DLLAZY_OR_NOW DL_LAZY
1797 # define LT_DLLAZY_OR_NOW RTLD_NOW
1800 # define LT_DLLAZY_OR_NOW DL_NOW
1802 # define LT_DLLAZY_OR_NOW 0
1809 /* When -fvisbility=hidden is used, assume the code has been annotated
1810 correspondingly for the symbols needed. */
1811 #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1812 int fnord () __attribute__((visibility("default")));
1815 int fnord () { return 42; }
1818 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1819 int status = $lt_dlunknown;
1823 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1826 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1827 else puts (dlerror ());
1829 /* dlclose (self); */
1837 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1838 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1841 x$lt_dlno_uscore) $1 ;;
1842 x$lt_dlneed_uscore) $2 ;;
1843 x$lt_dlunknown|x*) $3 ;;
1846 # compilation failed
1851 ])# _LT_TRY_DLOPEN_SELF
1854 # LT_SYS_DLOPEN_SELF
1855 # ------------------
1856 AC_DEFUN([LT_SYS_DLOPEN_SELF],
1857 [m4_require([_LT_HEADER_DLFCN])dnl
1858 if test "x$enable_dlopen" != xyes; then
1859 enable_dlopen=unknown
1860 enable_dlopen_self=unknown
1861 enable_dlopen_self_static=unknown
1868 lt_cv_dlopen="load_add_on"
1870 lt_cv_dlopen_self=yes
1873 mingw* | pw32* | cegcc*)
1874 lt_cv_dlopen="LoadLibrary"
1879 lt_cv_dlopen="dlopen"
1884 # if libdl is installed we need to link against it
1885 AC_CHECK_LIB([dl], [dlopen],
1886 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1889 lt_cv_dlopen_self=yes
1894 AC_CHECK_FUNC([shl_load],
1895 [lt_cv_dlopen="shl_load"],
1896 [AC_CHECK_LIB([dld], [shl_load],
1897 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1898 [AC_CHECK_FUNC([dlopen],
1899 [lt_cv_dlopen="dlopen"],
1900 [AC_CHECK_LIB([dl], [dlopen],
1901 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1902 [AC_CHECK_LIB([svld], [dlopen],
1903 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1904 [AC_CHECK_LIB([dld], [dld_link],
1905 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1914 if test "x$lt_cv_dlopen" != xno; then
1920 case $lt_cv_dlopen in
1922 save_CPPFLAGS="$CPPFLAGS"
1923 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1925 save_LDFLAGS="$LDFLAGS"
1926 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1929 LIBS="$lt_cv_dlopen_libs $LIBS"
1931 AC_CACHE_CHECK([whether a program can dlopen itself],
1932 lt_cv_dlopen_self, [dnl
1933 _LT_TRY_DLOPEN_SELF(
1934 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1935 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1938 if test "x$lt_cv_dlopen_self" = xyes; then
1939 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1940 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1941 lt_cv_dlopen_self_static, [dnl
1942 _LT_TRY_DLOPEN_SELF(
1943 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1944 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1948 CPPFLAGS="$save_CPPFLAGS"
1949 LDFLAGS="$save_LDFLAGS"
1954 case $lt_cv_dlopen_self in
1955 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1956 *) enable_dlopen_self=unknown ;;
1959 case $lt_cv_dlopen_self_static in
1960 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1961 *) enable_dlopen_self_static=unknown ;;
1964 _LT_DECL([dlopen_support], [enable_dlopen], [0],
1965 [Whether dlopen is supported])
1966 _LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1967 [Whether dlopen of programs is supported])
1968 _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1969 [Whether dlopen of statically linked programs is supported])
1970 ])# LT_SYS_DLOPEN_SELF
1973 AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1974 dnl aclocal-1.4 backwards compatibility:
1975 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
1978 # _LT_COMPILER_C_O([TAGNAME])
1979 # ---------------------------
1980 # Check to see if options -c and -o are simultaneously supported by compiler.
1981 # This macro does not hard code the compiler like AC_PROG_CC_C_O.
1982 m4_defun([_LT_COMPILER_C_O],
1983 [m4_require([_LT_DECL_SED])dnl
1984 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1985 m4_require([_LT_TAG_COMPILER])dnl
1986 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1987 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1988 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1989 $RM -r conftest 2>/dev/null
1993 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1995 lt_compiler_flag="-o out/conftest2.$ac_objext"
1996 # Insert the option either (1) after the last *FLAGS variable, or
1997 # (2) before a word containing "conftest.", or (3) at the end.
1998 # Note that $ac_compile itself does not contain backslashes and begins
1999 # with a dollar sign (not a hyphen), so the echo should work correctly.
2000 lt_compile=`echo "$ac_compile" | $SED \
2001 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2002 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2003 -e 's:$: $lt_compiler_flag:'`
2004 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2005 (eval "$lt_compile" 2>out/conftest.err)
2007 cat out/conftest.err >&AS_MESSAGE_LOG_FD
2008 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2009 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2011 # The compiler can only warn and ignore the option if not recognized
2012 # So say no if there are warnings
2013 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2014 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2015 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2016 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2019 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2021 # SGI C++ compiler will create directory out/ii_files/ for
2022 # template instantiation
2023 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2024 $RM out/* && rmdir out
2029 _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2030 [Does compiler simultaneously support -c and -o options?])
2031 ])# _LT_COMPILER_C_O
2034 # _LT_COMPILER_FILE_LOCKS([TAGNAME])
2035 # ----------------------------------
2036 # Check to see if we can do hard links to lock some files if needed
2037 m4_defun([_LT_COMPILER_FILE_LOCKS],
2038 [m4_require([_LT_ENABLE_LOCK])dnl
2039 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2040 _LT_COMPILER_C_O([$1])
2042 hard_links="nottested"
2043 if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
2044 # do not overwrite the value of need_locks provided by the user
2045 AC_MSG_CHECKING([if we can lock with hard links])
2048 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2050 ln conftest.a conftest.b 2>&5 || hard_links=no
2051 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2052 AC_MSG_RESULT([$hard_links])
2053 if test "$hard_links" = no; then
2054 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
2060 _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2061 ])# _LT_COMPILER_FILE_LOCKS
2066 m4_defun([_LT_CHECK_OBJDIR],
2067 [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2068 [rm -f .libs 2>/dev/null
2069 mkdir .libs 2>/dev/null
2070 if test -d .libs; then
2073 # MS-DOS does not allow filenames that begin with a dot.
2076 rmdir .libs 2>/dev/null])
2077 objdir=$lt_cv_objdir
2078 _LT_DECL([], [objdir], [0],
2079 [The name of the directory that contains temporary libtool files])dnl
2080 m4_pattern_allow([LT_OBJDIR])dnl
2081 AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2082 [Define to the sub-directory in which libtool stores uninstalled libraries.])
2083 ])# _LT_CHECK_OBJDIR
2086 # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2087 # --------------------------------------
2088 # Check hardcoding attributes.
2089 m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2090 [AC_MSG_CHECKING([how to hardcode library paths into programs])
2091 _LT_TAGVAR(hardcode_action, $1)=
2092 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2093 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2094 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
2096 # We can hardcode non-existent directories.
2097 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
2098 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2099 # have to relink, otherwise we might link with an installed library
2100 # when we should be linking with a yet-to-be-installed one
2101 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2102 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
2103 # Linking always hardcodes the temporary library directory.
2104 _LT_TAGVAR(hardcode_action, $1)=relink
2106 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2107 _LT_TAGVAR(hardcode_action, $1)=immediate
2110 # We cannot hardcode anything, or else we can only hardcode existing
2112 _LT_TAGVAR(hardcode_action, $1)=unsupported
2114 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2116 if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2117 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
2118 # Fast installation is not supported
2119 enable_fast_install=no
2120 elif test "$shlibpath_overrides_runpath" = yes ||
2121 test "$enable_shared" = no; then
2122 # Fast installation is not necessary
2123 enable_fast_install=needless
2125 _LT_TAGDECL([], [hardcode_action], [0],
2126 [How to hardcode a shared library path into an executable])
2127 ])# _LT_LINKER_HARDCODE_LIBPATH
2132 m4_defun([_LT_CMD_STRIPLIB],
2133 [m4_require([_LT_DECL_EGREP])
2136 AC_MSG_CHECKING([whether stripping libraries is possible])
2137 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2138 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2139 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2140 AC_MSG_RESULT([yes])
2142 # FIXME - insert some real tests, host_os isn't really good enough
2145 if test -n "$STRIP" ; then
2146 striplib="$STRIP -x"
2147 old_striplib="$STRIP -S"
2148 AC_MSG_RESULT([yes])
2158 _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2159 _LT_DECL([], [striplib], [1])
2160 ])# _LT_CMD_STRIPLIB
2163 # _LT_SYS_DYNAMIC_LINKER([TAG])
2164 # -----------------------------
2165 # PORTME Fill in your ld.so characteristics
2166 m4_defun([_LT_SYS_DYNAMIC_LINKER],
2167 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
2168 m4_require([_LT_DECL_EGREP])dnl
2169 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2170 m4_require([_LT_DECL_OBJDUMP])dnl
2171 m4_require([_LT_DECL_SED])dnl
2172 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2173 AC_MSG_CHECKING([dynamic linker characteristics])
2176 if test "$GCC" = yes; then
2178 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2179 *) lt_awk_arg="/^libraries:/" ;;
2182 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2183 *) lt_sed_strip_eq="s,=/,/,g" ;;
2185 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2186 case $lt_search_path_spec in
2188 # if the path contains ";" then we assume it to be the separator
2189 # otherwise default to the standard path separator (i.e. ":") - it is
2190 # assumed that no part of a normal pathname contains ";" but that should
2191 # okay in the real world where ";" in dirpaths is itself problematic.
2192 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2195 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2198 # Ok, now we have the path, separated by spaces, we can step through it
2199 # and add multilib dir if necessary.
2200 lt_tmp_lt_search_path_spec=
2201 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2202 for lt_sys_path in $lt_search_path_spec; do
2203 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2204 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2206 test -d "$lt_sys_path" && \
2207 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2210 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2211 BEGIN {RS=" "; FS="/|\n";} {
2214 for (lt_i = NF; lt_i > 0; lt_i--) {
2215 if ($lt_i != "" && $lt_i != ".") {
2216 if ($lt_i == "..") {
2219 if (lt_count == 0) {
2220 lt_foo="/" $lt_i lt_foo;
2227 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2228 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2230 # AWK program above erroneously prepends '/' to C:/dos/paths
2233 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2234 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2236 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2238 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2241 libname_spec='lib$name'
2249 shlibpath_overrides_runpath=unknown
2251 dynamic_linker="$host_os ld.so"
2252 sys_lib_dlsearch_path_spec="/lib /usr/lib"
2253 need_lib_prefix=unknown
2254 hardcode_into_libs=no
2256 # when you set need_version to no, make sure it does not cause -set_version
2257 # flags to be left without arguments
2258 need_version=unknown
2262 version_type=linux # correct to gnu/linux during the next big refactor
2263 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2264 shlibpath_var=LIBPATH
2266 # AIX 3 has no versioning support, so we append a major version to the name.
2267 soname_spec='${libname}${release}${shared_ext}$major'
2271 version_type=linux # correct to gnu/linux during the next big refactor
2274 hardcode_into_libs=yes
2275 if test "$host_cpu" = ia64; then
2276 # AIX 5 supports IA64
2277 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2278 shlibpath_var=LD_LIBRARY_PATH
2280 # With GCC up to 2.95.x, collect2 would create an import file
2281 # for dependence libraries. The import file would start with
2282 # the line `#! .'. This would cause the generated library to
2283 # depend on `.', always an invalid library. This was fixed in
2284 # development snapshots of GCC prior to 3.0.
2286 aix4 | aix4.[[01]] | aix4.[[01]].*)
2287 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2289 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
2296 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2297 # soname into executable. Probably we can add versioning support to
2298 # collect2, so additional links can be useful in future.
2299 if test "$aix_use_runtimelinking" = yes; then
2300 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2301 # instead of lib<name>.a to let people know that these are not
2302 # typical AIX shared libraries.
2303 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2305 # We preserve .a as extension for shared libraries through AIX4.2
2306 # and later when we are not doing run time linking.
2307 library_names_spec='${libname}${release}.a $libname.a'
2308 soname_spec='${libname}${release}${shared_ext}$major'
2310 shlibpath_var=LIBPATH
2317 # Since July 2007 AmigaOS4 officially supports .so libraries.
2318 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2319 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2322 library_names_spec='$libname.ixlibrary $libname.a'
2323 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2324 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
2330 library_names_spec='${libname}${shared_ext}'
2331 dynamic_linker="$host_os ld.so"
2332 shlibpath_var=LIBRARY_PATH
2336 version_type=linux # correct to gnu/linux during the next big refactor
2338 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2339 soname_spec='${libname}${release}${shared_ext}$major'
2340 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2341 shlibpath_var=LD_LIBRARY_PATH
2342 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2343 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2344 # the default ld.so.conf also contains /usr/contrib/lib and
2345 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2346 # libtool to hard-code these into programs
2349 cygwin* | mingw* | pw32* | cegcc*)
2350 version_type=windows
2355 case $GCC,$cc_basename in
2358 library_names_spec='$libname.dll.a'
2359 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2360 postinstall_cmds='base_file=`basename \${file}`~
2361 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2362 dldir=$destdir/`dirname \$dlpath`~
2363 test -d \$dldir || mkdir -p \$dldir~
2364 $install_prog $dir/$dlname \$dldir/$dlname~
2365 chmod a+x \$dldir/$dlname~
2366 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2367 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2369 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2370 dlpath=$dir/\$dldll~
2372 shlibpath_overrides_runpath=yes
2376 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2377 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2379 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2382 # MinGW DLLs use traditional 'lib' prefix
2383 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2386 # pw32 DLLs use 'pw' prefix rather than 'lib'
2387 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2390 dynamic_linker='Win32 ld.exe'
2395 libname_spec='$name'
2396 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2397 library_names_spec='${libname}.dll.lib'
2401 sys_lib_search_path_spec=
2407 # Let DOS variable expansion print the short 8.3 style file name.
2408 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2409 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2412 # Convert to MSYS style.
2413 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2416 # Convert to unix form, then to dos form, then back to unix form
2417 # but this time dos style (no spaces!) so that the unix form looks
2418 # like /cygdrive/c/PROGRA~1:/cygdr...
2419 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2420 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2421 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2424 sys_lib_search_path_spec="$LIB"
2425 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2426 # It is most probably a Windows format PATH.
2427 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2429 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2431 # FIXME: find the short name or the path components, as spaces are
2432 # common. (e.g. "Program Files" -> "PROGRA~1")
2436 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2437 postinstall_cmds='base_file=`basename \${file}`~
2438 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2439 dldir=$destdir/`dirname \$dlpath`~
2440 test -d \$dldir || mkdir -p \$dldir~
2441 $install_prog $dir/$dlname \$dldir/$dlname'
2442 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2443 dlpath=$dir/\$dldll~
2445 shlibpath_overrides_runpath=yes
2446 dynamic_linker='Win32 link.exe'
2450 # Assume MSVC wrapper
2451 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2452 dynamic_linker='Win32 ld.exe'
2455 # FIXME: first we should search . and the directory the executable is in
2459 darwin* | rhapsody*)
2460 dynamic_linker="$host_os dyld"
2464 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
2465 soname_spec='${libname}${release}${major}$shared_ext'
2466 shlibpath_overrides_runpath=yes
2467 shlibpath_var=DYLD_LIBRARY_PATH
2468 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2470 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2471 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2475 version_type=linux # correct to gnu/linux during the next big refactor
2478 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2479 soname_spec='${libname}${release}${shared_ext}$major'
2480 shlibpath_var=LD_LIBRARY_PATH
2483 freebsd* | dragonfly*)
2484 # DragonFly does not have aout. When/if they implement a new
2485 # versioning mechanism, adjust this.
2486 if test -x /usr/bin/objformat; then
2487 objformat=`/usr/bin/objformat`
2490 freebsd[[23]].*) objformat=aout ;;
2494 version_type=freebsd-$objformat
2495 case $version_type in
2497 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2502 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2506 shlibpath_var=LD_LIBRARY_PATH
2509 shlibpath_overrides_runpath=yes
2511 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2512 shlibpath_overrides_runpath=yes
2513 hardcode_into_libs=yes
2515 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2516 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2517 shlibpath_overrides_runpath=no
2518 hardcode_into_libs=yes
2520 *) # from 4.6 on, and DragonFly
2521 shlibpath_overrides_runpath=yes
2522 hardcode_into_libs=yes
2528 version_type=linux # correct to gnu/linux during the next big refactor
2531 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2532 soname_spec='${libname}${release}${shared_ext}$major'
2533 shlibpath_var=LD_LIBRARY_PATH
2534 shlibpath_overrides_runpath=no
2535 hardcode_into_libs=yes
2539 version_type=linux # correct to gnu/linux during the next big refactor
2542 dynamic_linker="$host_os runtime_loader"
2543 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2544 soname_spec='${libname}${release}${shared_ext}$major'
2545 shlibpath_var=LIBRARY_PATH
2546 shlibpath_overrides_runpath=yes
2547 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2548 hardcode_into_libs=yes
2551 hpux9* | hpux10* | hpux11*)
2552 # Give a soname corresponding to the major version so that dld.sl refuses to
2553 # link against other versions.
2560 hardcode_into_libs=yes
2561 dynamic_linker="$host_os dld.so"
2562 shlibpath_var=LD_LIBRARY_PATH
2563 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2564 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2565 soname_spec='${libname}${release}${shared_ext}$major'
2566 if test "X$HPUX_IA64_MODE" = X32; then
2567 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2569 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2571 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2575 hardcode_into_libs=yes
2576 dynamic_linker="$host_os dld.sl"
2577 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2578 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2579 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2580 soname_spec='${libname}${release}${shared_ext}$major'
2581 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2582 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2586 dynamic_linker="$host_os dld.sl"
2587 shlibpath_var=SHLIB_PATH
2588 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2589 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2590 soname_spec='${libname}${release}${shared_ext}$major'
2593 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2594 postinstall_cmds='chmod 555 $lib'
2595 # or fails outright, so override atomically:
2596 install_override_mode=555
2600 version_type=linux # correct to gnu/linux during the next big refactor
2603 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2604 soname_spec='${libname}${release}${shared_ext}$major'
2605 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2606 shlibpath_var=LD_LIBRARY_PATH
2607 shlibpath_overrides_runpath=no
2608 hardcode_into_libs=yes
2611 irix5* | irix6* | nonstopux*)
2613 nonstopux*) version_type=nonstopux ;;
2615 if test "$lt_cv_prog_gnu_ld" = yes; then
2616 version_type=linux # correct to gnu/linux during the next big refactor
2623 soname_spec='${libname}${release}${shared_ext}$major'
2624 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2626 irix5* | nonstopux*)
2630 case $LD in # libtool.m4 will add one of these switches to LD
2631 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2632 libsuff= shlibsuff= libmagic=32-bit;;
2633 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2634 libsuff=32 shlibsuff=N32 libmagic=N32;;
2635 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2636 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2637 *) libsuff= shlibsuff= libmagic=never-match;;
2641 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2642 shlibpath_overrides_runpath=no
2643 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2644 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2645 hardcode_into_libs=yes
2648 # No shared lib support for Linux oldld, aout, or coff.
2649 linux*oldld* | linux*aout* | linux*coff*)
2653 # This must be glibc/ELF.
2654 linux* | k*bsd*-gnu | kopensolaris*-gnu)
2655 version_type=linux # correct to gnu/linux during the next big refactor
2658 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2659 soname_spec='${libname}${release}${shared_ext}$major'
2660 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2661 shlibpath_var=LD_LIBRARY_PATH
2662 shlibpath_overrides_runpath=no
2664 # Some binutils ld are patched to set DT_RUNPATH
2665 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2666 [lt_cv_shlibpath_overrides_runpath=no
2667 save_LDFLAGS=$LDFLAGS
2669 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2670 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2671 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2672 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2673 [lt_cv_shlibpath_overrides_runpath=yes])])
2674 LDFLAGS=$save_LDFLAGS
2677 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2679 # This implies no fast_install, which is unacceptable.
2680 # Some rework will be needed to allow for fast_install
2681 # before this can be enabled.
2682 hardcode_into_libs=yes
2684 # Add ABI-specific directories to the system library path.
2685 sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
2687 # Append ld.so.conf contents to the search path
2688 if test -f /etc/ld.so.conf; then
2689 lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
2690 sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
2694 # We used to test for /lib/ld.so.1 and disable shared libraries on
2695 # powerpc, because MkLinux only supported shared libraries with the
2696 # GNU dynamic linker. Since this was broken with cross compilers,
2697 # most powerpc-linux boxes support dynamic linking these days and
2698 # people can always --disable-shared, the test was removed, and we
2699 # assume the GNU/Linux dynamic linker is in use.
2700 dynamic_linker='GNU/Linux ld.so'
2707 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2708 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2709 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2710 dynamic_linker='NetBSD (a.out) ld.so'
2712 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2713 soname_spec='${libname}${release}${shared_ext}$major'
2714 dynamic_linker='NetBSD ld.elf_so'
2716 shlibpath_var=LD_LIBRARY_PATH
2717 shlibpath_overrides_runpath=yes
2718 hardcode_into_libs=yes
2722 version_type=linux # correct to gnu/linux during the next big refactor
2723 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2724 shlibpath_var=LD_LIBRARY_PATH
2725 shlibpath_overrides_runpath=yes
2732 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2733 soname_spec='${libname}${release}${shared_ext}$major'
2734 shlibpath_var=LD_LIBRARY_PATH
2735 shlibpath_overrides_runpath=no
2736 hardcode_into_libs=yes
2737 dynamic_linker='ldqnx.so'
2742 sys_lib_dlsearch_path_spec="/usr/lib"
2744 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2746 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2747 *) need_version=no ;;
2749 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2750 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2751 shlibpath_var=LD_LIBRARY_PATH
2752 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2754 openbsd2.[[89]] | openbsd2.[[89]].*)
2755 shlibpath_overrides_runpath=no
2758 shlibpath_overrides_runpath=yes
2762 shlibpath_overrides_runpath=yes
2767 libname_spec='$name'
2770 library_names_spec='$libname${shared_ext} $libname.a'
2771 dynamic_linker='OS/2 ld.exe'
2772 shlibpath_var=LIBPATH
2775 osf3* | osf4* | osf5*)
2779 soname_spec='${libname}${release}${shared_ext}$major'
2780 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2781 shlibpath_var=LD_LIBRARY_PATH
2782 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2783 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2791 version_type=linux # correct to gnu/linux during the next big refactor
2794 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2795 soname_spec='${libname}${release}${shared_ext}$major'
2796 shlibpath_var=LD_LIBRARY_PATH
2797 shlibpath_overrides_runpath=yes
2798 hardcode_into_libs=yes
2799 # ldd complains unless libraries are executable
2800 postinstall_cmds='chmod +x $lib'
2805 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2806 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2807 shlibpath_var=LD_LIBRARY_PATH
2808 shlibpath_overrides_runpath=yes
2809 if test "$with_gnu_ld" = yes; then
2816 version_type=linux # correct to gnu/linux during the next big refactor
2817 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2818 soname_spec='${libname}${release}${shared_ext}$major'
2819 shlibpath_var=LD_LIBRARY_PATH
2820 case $host_vendor in
2822 shlibpath_overrides_runpath=no
2824 runpath_var=LD_RUN_PATH
2832 shlibpath_overrides_runpath=no
2833 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2839 if test -d /usr/nec ;then
2840 version_type=linux # correct to gnu/linux during the next big refactor
2841 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2842 soname_spec='$libname${shared_ext}.$major'
2843 shlibpath_var=LD_LIBRARY_PATH
2847 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2848 version_type=freebsd-elf
2851 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2852 soname_spec='${libname}${release}${shared_ext}$major'
2853 shlibpath_var=LD_LIBRARY_PATH
2854 shlibpath_overrides_runpath=yes
2855 hardcode_into_libs=yes
2856 if test "$with_gnu_ld" = yes; then
2857 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
2859 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
2862 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2866 sys_lib_dlsearch_path_spec='/usr/lib'
2870 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
2871 version_type=linux # correct to gnu/linux during the next big refactor
2874 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2875 shlibpath_var=LD_LIBRARY_PATH
2876 shlibpath_overrides_runpath=no
2877 hardcode_into_libs=yes
2881 version_type=linux # correct to gnu/linux during the next big refactor
2882 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2883 soname_spec='${libname}${release}${shared_ext}$major'
2884 shlibpath_var=LD_LIBRARY_PATH
2891 AC_MSG_RESULT([$dynamic_linker])
2892 test "$dynamic_linker" = no && can_build_shared=no
2894 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2895 if test "$GCC" = yes; then
2896 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2899 if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2900 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2902 if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2903 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2906 _LT_DECL([], [variables_saved_for_relink], [1],
2907 [Variables whose values should be saved in libtool wrapper scripts and
2908 restored at link time])
2909 _LT_DECL([], [need_lib_prefix], [0],
2910 [Do we need the "lib" prefix for modules?])
2911 _LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2912 _LT_DECL([], [version_type], [0], [Library versioning type])
2913 _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2914 _LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2915 _LT_DECL([], [shlibpath_overrides_runpath], [0],
2916 [Is shlibpath searched before the hard-coded library search path?])
2917 _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2918 _LT_DECL([], [library_names_spec], [1],
2919 [[List of archive names. First name is the real one, the rest are links.
2920 The last name is the one that the linker finds with -lNAME]])
2921 _LT_DECL([], [soname_spec], [1],
2922 [[The coded name of the library, if different from the real name]])
2923 _LT_DECL([], [install_override_mode], [1],
2924 [Permission mode override for installation of shared libraries])
2925 _LT_DECL([], [postinstall_cmds], [2],
2926 [Command to use after installation of a shared archive])
2927 _LT_DECL([], [postuninstall_cmds], [2],
2928 [Command to use after uninstallation of a shared archive])
2929 _LT_DECL([], [finish_cmds], [2],
2930 [Commands used to finish a libtool library installation in a directory])
2931 _LT_DECL([], [finish_eval], [1],
2932 [[As "finish_cmds", except a single script fragment to be evaled but
2934 _LT_DECL([], [hardcode_into_libs], [0],
2935 [Whether we should hardcode library paths into libraries])
2936 _LT_DECL([], [sys_lib_search_path_spec], [2],
2937 [Compile-time system search path for libraries])
2938 _LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2939 [Run-time system search path for libraries])
2940 ])# _LT_SYS_DYNAMIC_LINKER
2943 # _LT_PATH_TOOL_PREFIX(TOOL)
2944 # --------------------------
2945 # find a file program which can recognize shared library
2946 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2947 [m4_require([_LT_DECL_EGREP])dnl
2948 AC_MSG_CHECKING([for $1])
2949 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2951 [[\\/*] | ?:[\\/]*])
2952 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2955 lt_save_MAGIC_CMD="$MAGIC_CMD"
2956 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2957 dnl $ac_dummy forces splitting on constant user-supplied paths.
2958 dnl POSIX.2 word splitting is done only on the output of word expansions,
2959 dnl not every word. This closes a longstanding sh security hole.
2960 ac_dummy="m4_if([$2], , $PATH, [$2])"
2961 for ac_dir in $ac_dummy; do
2963 test -z "$ac_dir" && ac_dir=.
2964 if test -f $ac_dir/$1; then
2965 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2966 if test -n "$file_magic_test_file"; then
2967 case $deplibs_check_method in
2969 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2970 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2971 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2972 $EGREP "$file_magic_regex" > /dev/null; then
2977 *** Warning: the command libtool uses to detect shared libraries,
2978 *** $file_magic_cmd, produces output that libtool cannot recognize.
2979 *** The result is that libtool may fail to recognize shared libraries
2980 *** as such. This will affect the creation of libtool libraries that
2981 *** depend on shared libraries, but programs linked with such libtool
2982 *** libraries will work regardless of this problem. Nevertheless, you
2983 *** may want to report the problem to your system manager and/or to
2984 *** bug-libtool@gnu.org
2994 MAGIC_CMD="$lt_save_MAGIC_CMD"
2997 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2998 if test -n "$MAGIC_CMD"; then
2999 AC_MSG_RESULT($MAGIC_CMD)
3003 _LT_DECL([], [MAGIC_CMD], [0],
3004 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3005 ])# _LT_PATH_TOOL_PREFIX
3008 AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3009 dnl aclocal-1.4 backwards compatibility:
3010 dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
3015 # find a file program which can recognize a shared library
3016 m4_defun([_LT_PATH_MAGIC],
3017 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
3018 if test -z "$lt_cv_path_MAGIC_CMD"; then
3019 if test -n "$ac_tool_prefix"; then
3020 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
3030 # find the pathname to the GNU or non-GNU linker
3031 AC_DEFUN([LT_PATH_LD],
3032 [AC_REQUIRE([AC_PROG_CC])dnl
3033 AC_REQUIRE([AC_CANONICAL_HOST])dnl
3034 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3035 m4_require([_LT_DECL_SED])dnl
3036 m4_require([_LT_DECL_EGREP])dnl
3037 m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
3039 AC_ARG_WITH([gnu-ld],
3040 [AS_HELP_STRING([--with-gnu-ld],
3041 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
3042 [test "$withval" = no || with_gnu_ld=yes],
3043 [with_gnu_ld=no])dnl
3046 if test "$GCC" = yes; then
3047 # Check if gcc -print-prog-name=ld gives a path.
3048 AC_MSG_CHECKING([for ld used by $CC])
3051 # gcc leaves a trailing carriage return which upsets mingw
3052 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3054 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3057 # Accept absolute paths.
3058 [[\\/]]* | ?:[[\\/]]*)
3059 re_direlt='/[[^/]][[^/]]*/\.\./'
3060 # Canonicalize the pathname of ld
3061 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3062 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3063 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3065 test -z "$LD" && LD="$ac_prog"
3068 # If it fails, then pretend we aren't using GCC.
3072 # If it is relative, then search for the first ld in PATH.
3076 elif test "$with_gnu_ld" = yes; then
3077 AC_MSG_CHECKING([for GNU ld])
3079 AC_MSG_CHECKING([for non-GNU ld])
3081 AC_CACHE_VAL(lt_cv_path_LD,
3082 [if test -z "$LD"; then
3083 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3084 for ac_dir in $PATH; do
3086 test -z "$ac_dir" && ac_dir=.
3087 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3088 lt_cv_path_LD="$ac_dir/$ac_prog"
3089 # Check to see if the program is GNU ld. I'd rather use --version,
3090 # but apparently some variants of GNU ld only accept -v.
3091 # Break only if it was the GNU/non-GNU ld that we prefer.
3092 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3093 *GNU* | *'with BFD'*)
3094 test "$with_gnu_ld" != no && break
3097 test "$with_gnu_ld" != yes && break
3104 lt_cv_path_LD="$LD" # Let the user override the test with a path.
3107 if test -n "$LD"; then
3112 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3116 _LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3120 AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3121 AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3122 dnl aclocal-1.4 backwards compatibility:
3123 dnl AC_DEFUN([AM_PROG_LD], [])
3124 dnl AC_DEFUN([AC_PROG_LD], [])
3129 m4_defun([_LT_PATH_LD_GNU],
3130 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3131 [# I'd rather use --version here, but apparently some GNU lds only accept -v.
3132 case `$LD -v 2>&1 </dev/null` in
3133 *GNU* | *'with BFD'*)
3134 lt_cv_prog_gnu_ld=yes
3137 lt_cv_prog_gnu_ld=no
3140 with_gnu_ld=$lt_cv_prog_gnu_ld
3146 # find reload flag for linker
3147 # -- PORTME Some linkers may need a different reload flag.
3148 m4_defun([_LT_CMD_RELOAD],
3149 [AC_CACHE_CHECK([for $LD option to reload object files],
3150 lt_cv_ld_reload_flag,
3151 [lt_cv_ld_reload_flag='-r'])
3152 reload_flag=$lt_cv_ld_reload_flag
3153 case $reload_flag in
3155 *) reload_flag=" $reload_flag" ;;
3157 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3159 cygwin* | mingw* | pw32* | cegcc*)
3160 if test "$GCC" != yes; then
3165 if test "$GCC" = yes; then
3166 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
3168 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3172 _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3173 _LT_TAGDECL([], [reload_cmds], [2])dnl
3177 # _LT_CHECK_MAGIC_METHOD
3178 # ----------------------
3179 # how to check for library dependencies
3180 # -- PORTME fill in with the dynamic library characteristics
3181 m4_defun([_LT_CHECK_MAGIC_METHOD],
3182 [m4_require([_LT_DECL_EGREP])
3183 m4_require([_LT_DECL_OBJDUMP])
3184 AC_CACHE_CHECK([how to recognize dependent libraries],
3185 lt_cv_deplibs_check_method,
3186 [lt_cv_file_magic_cmd='$MAGIC_CMD'
3187 lt_cv_file_magic_test_file=
3188 lt_cv_deplibs_check_method='unknown'
3189 # Need to set the preceding variable on all platforms that support
3190 # interlibrary dependencies.
3191 # 'none' -- dependencies not supported.
3192 # `unknown' -- same as none, but documents that we really don't know.
3193 # 'pass_all' -- all dependencies passed with no checks.
3194 # 'test_compile' -- check by making test program.
3195 # 'file_magic [[regex]]' -- check by looking for files in library path
3196 # which responds to the $file_magic_cmd with a given extended regex.
3197 # If you have `file' or equivalent on your system and you're not sure
3198 # whether `pass_all' will *always* work, you probably want this one.
3202 lt_cv_deplibs_check_method=pass_all
3206 lt_cv_deplibs_check_method=pass_all
3210 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3211 lt_cv_file_magic_cmd='/usr/bin/file -L'
3212 lt_cv_file_magic_test_file=/shlib/libc.so
3216 # func_win32_libid is a shell function defined in ltmain.sh
3217 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3218 lt_cv_file_magic_cmd='func_win32_libid'
3222 # Base MSYS/MinGW do not provide the 'file' command needed by
3223 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3224 # unless we find 'file', for example because we are cross-compiling.
3225 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3226 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
3227 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3228 lt_cv_file_magic_cmd='func_win32_libid'
3230 # Keep this pattern in sync with the one in func_win32_libid.
3231 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3232 lt_cv_file_magic_cmd='$OBJDUMP -f'
3237 # use the weaker test based on 'objdump'. See mingw*.
3238 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3239 lt_cv_file_magic_cmd='$OBJDUMP -f'
3242 darwin* | rhapsody*)
3243 lt_cv_deplibs_check_method=pass_all
3246 freebsd* | dragonfly*)
3247 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3250 # Not sure whether the presence of OpenBSD here was a mistake.
3251 # Let's accept both of them until this is cleared up.
3252 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3253 lt_cv_file_magic_cmd=/usr/bin/file
3254 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3258 lt_cv_deplibs_check_method=pass_all
3263 lt_cv_deplibs_check_method=pass_all
3267 lt_cv_deplibs_check_method=pass_all
3270 hpux10.20* | hpux11*)
3271 lt_cv_file_magic_cmd=/usr/bin/file
3274 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3275 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3278 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
3279 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3282 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3283 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3289 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3290 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3293 irix5* | irix6* | nonstopux*)
3295 *-32|*"-32 ") libmagic=32-bit;;
3296 *-n32|*"-n32 ") libmagic=N32;;
3297 *-64|*"-64 ") libmagic=64-bit;;
3298 *) libmagic=never-match;;
3300 lt_cv_deplibs_check_method=pass_all
3303 # This must be glibc/ELF.
3304 linux* | k*bsd*-gnu | kopensolaris*-gnu)
3305 lt_cv_deplibs_check_method=pass_all
3309 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3310 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3312 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3317 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3318 lt_cv_file_magic_cmd=/usr/bin/file
3319 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3323 lt_cv_deplibs_check_method=pass_all
3327 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3328 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3330 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3334 osf3* | osf4* | osf5*)
3335 lt_cv_deplibs_check_method=pass_all
3339 lt_cv_deplibs_check_method=pass_all
3343 lt_cv_deplibs_check_method=pass_all
3346 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3347 lt_cv_deplibs_check_method=pass_all
3351 case $host_vendor in
3353 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
3354 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3357 lt_cv_deplibs_check_method=pass_all
3360 lt_cv_file_magic_cmd='/bin/file'
3361 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3364 lt_cv_file_magic_cmd='/bin/file'
3365 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3366 lt_cv_file_magic_test_file=/lib/libc.so
3369 lt_cv_deplibs_check_method=pass_all
3372 lt_cv_deplibs_check_method=pass_all
3378 lt_cv_deplibs_check_method=pass_all
3385 if test "$build" = "$host"; then
3388 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3391 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3397 file_magic_cmd=$lt_cv_file_magic_cmd
3398 deplibs_check_method=$lt_cv_deplibs_check_method
3399 test -z "$deplibs_check_method" && deplibs_check_method=unknown
3401 _LT_DECL([], [deplibs_check_method], [1],
3402 [Method to check whether dependent libraries are shared objects])
3403 _LT_DECL([], [file_magic_cmd], [1],
3404 [Command to use when deplibs_check_method = "file_magic"])
3405 _LT_DECL([], [file_magic_glob], [1],
3406 [How to find potential files when deplibs_check_method = "file_magic"])
3407 _LT_DECL([], [want_nocaseglob], [1],
3408 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3409 ])# _LT_CHECK_MAGIC_METHOD
3414 # find the pathname to a BSD- or MS-compatible name lister
3415 AC_DEFUN([LT_PATH_NM],
3416 [AC_REQUIRE([AC_PROG_CC])dnl
3417 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3418 [if test -n "$NM"; then
3419 # Let the user override the test.
3422 lt_nm_to_check="${ac_tool_prefix}nm"
3423 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3424 lt_nm_to_check="$lt_nm_to_check nm"
3426 for lt_tmp_nm in $lt_nm_to_check; do
3427 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3428 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3430 test -z "$ac_dir" && ac_dir=.
3431 tmp_nm="$ac_dir/$lt_tmp_nm"
3432 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3433 # Check to see if the nm accepts a BSD-compat flag.
3434 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3435 # nm: unknown option "B" ignored
3436 # Tru64's nm complains that /dev/null is an invalid object file
3437 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3438 */dev/null* | *'Invalid file or object type'*)
3439 lt_cv_path_NM="$tmp_nm -B"
3443 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3445 lt_cv_path_NM="$tmp_nm -p"
3449 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3450 continue # so that we can try to find one that supports BSD flags
3459 : ${lt_cv_path_NM=no}
3461 if test "$lt_cv_path_NM" != "no"; then
3464 # Didn't find any BSD compatible name lister, look for dumpbin.
3465 if test -n "$DUMPBIN"; then :
3466 # Let the user override the test.
3468 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3469 case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
3471 DUMPBIN="$DUMPBIN -symbols"
3479 if test "$DUMPBIN" != ":"; then
3483 test -z "$NM" && NM=nm
3485 _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3487 AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3488 [lt_cv_nm_interface="BSD nm"
3489 echo "int some_variable = 0;" > conftest.$ac_ext
3490 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3491 (eval "$ac_compile" 2>conftest.err)
3492 cat conftest.err >&AS_MESSAGE_LOG_FD
3493 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3494 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3495 cat conftest.err >&AS_MESSAGE_LOG_FD
3496 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3497 cat conftest.out >&AS_MESSAGE_LOG_FD
3498 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3499 lt_cv_nm_interface="MS dumpbin"
3505 AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3506 AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3507 dnl aclocal-1.4 backwards compatibility:
3508 dnl AC_DEFUN([AM_PROG_NM], [])
3509 dnl AC_DEFUN([AC_PROG_NM], [])
3511 # _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3512 # --------------------------------
3513 # how to determine the name of the shared library
3514 # associated with a specific link library.
3515 # -- PORTME fill in with the dynamic library characteristics
3516 m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3517 [m4_require([_LT_DECL_EGREP])
3518 m4_require([_LT_DECL_OBJDUMP])
3519 m4_require([_LT_DECL_DLLTOOL])
3520 AC_CACHE_CHECK([how to associate runtime and link libraries],
3521 lt_cv_sharedlib_from_linklib_cmd,
3522 [lt_cv_sharedlib_from_linklib_cmd='unknown'
3525 cygwin* | mingw* | pw32* | cegcc*)
3526 # two different shell functions defined in ltmain.sh
3527 # decide which to use based on capabilities of $DLLTOOL
3528 case `$DLLTOOL --help 2>&1` in
3529 *--identify-strict*)
3530 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3533 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3538 # fallback: assume linklib IS sharedlib
3539 lt_cv_sharedlib_from_linklib_cmd="$ECHO"
3543 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3544 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3546 _LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3547 [Command to associate shared and link libraries])
3548 ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3551 # _LT_PATH_MANIFEST_TOOL
3552 # ----------------------
3553 # locate the manifest tool
3554 m4_defun([_LT_PATH_MANIFEST_TOOL],
3555 [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3556 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3557 AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3558 [lt_cv_path_mainfest_tool=no
3559 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3560 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3561 cat conftest.err >&AS_MESSAGE_LOG_FD
3562 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3563 lt_cv_path_mainfest_tool=yes
3566 if test "x$lt_cv_path_mainfest_tool" != xyes; then
3569 _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3570 ])# _LT_PATH_MANIFEST_TOOL
3575 # check for math library
3576 AC_DEFUN([LT_LIB_M],
3577 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3580 *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3581 # These system don't have libm, or don't need it
3584 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3585 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3588 AC_CHECK_LIB(m, cos, LIBM="-lm")
3595 AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3596 dnl aclocal-1.4 backwards compatibility:
3597 dnl AC_DEFUN([AC_CHECK_LIBM], [])
3600 # _LT_COMPILER_NO_RTTI([TAGNAME])
3601 # -------------------------------
3602 m4_defun([_LT_COMPILER_NO_RTTI],
3603 [m4_require([_LT_TAG_COMPILER])dnl
3605 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3607 if test "$GCC" = yes; then
3608 case $cc_basename in
3610 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3612 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3615 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3616 lt_cv_prog_compiler_rtti_exceptions,
3617 [-fno-rtti -fno-exceptions], [],
3618 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3620 _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3621 [Compiler flag to turn off builtin functions])
3622 ])# _LT_COMPILER_NO_RTTI
3625 # _LT_CMD_GLOBAL_SYMBOLS
3626 # ----------------------
3627 m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3628 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3629 AC_REQUIRE([AC_PROG_CC])dnl
3630 AC_REQUIRE([AC_PROG_AWK])dnl
3631 AC_REQUIRE([LT_PATH_NM])dnl
3632 AC_REQUIRE([LT_PATH_LD])dnl
3633 m4_require([_LT_DECL_SED])dnl
3634 m4_require([_LT_DECL_EGREP])dnl
3635 m4_require([_LT_TAG_COMPILER])dnl
3637 # Check for command to grab the raw symbol name followed by C symbol from nm.
3638 AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3639 AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3641 # These are sane defaults that work on at least a few old systems.
3642 # [They come from Ultrix. What could be older than Ultrix?!! ;)]
3644 # Character class describing NM global symbol codes.
3645 symcode='[[BCDEGRST]]'
3647 # Regexp to match symbols that can be accessed directly from C.
3648 sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3650 # Define system-specific variables.
3655 cygwin* | mingw* | pw32* | cegcc*)
3656 symcode='[[ABCDGISTW]]'
3659 if test "$host_cpu" = ia64; then
3660 symcode='[[ABCDEGRST]]'
3664 symcode='[[BCDEGRST]]'
3667 symcode='[[BCDEGQRST]]'
3678 sysv5* | sco5v6* | unixware* | OpenUNIX*)
3682 symcode='[[DFNSTU]]'
3686 # If we're using GNU nm, then use its standard symbol codes.
3687 case `$NM -V 2>&1` in
3688 *GNU* | *'with BFD'*)
3689 symcode='[[ABCDGIRSTW]]' ;;
3692 # Transform an extracted symbol line into a proper C declaration.
3693 # Some systems (esp. on ia64) link data and code symbols differently,
3694 # so use this general approach.
3695 lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3697 # Transform an extracted symbol line into symbol name and symbol address
3698 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3699 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
3701 # Handle CRLF in mingw tool chain
3705 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3709 # Try without a prefix underscore, then with it.
3710 for ac_symprfx in "" "_"; do
3712 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3713 symxfrm="\\1 $ac_symprfx\\2 \\2"
3715 # Write the raw and C identifiers.
3716 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3717 # Fake it for dumpbin and say T for any non-static function
3718 # and D for any global variable.
3719 # Also find C++ and __fastcall symbols from MSVC++,
3720 # which start with @ or ?.
3721 lt_cv_sys_global_symbol_pipe="$AWK ['"\
3722 " {last_section=section; section=\$ 3};"\
3723 " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
3724 " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3725 " \$ 0!~/External *\|/{next};"\
3726 " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3727 " {if(hide[section]) next};"\
3728 " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3729 " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3730 " s[1]~/^[@?]/{print s[1], s[1]; next};"\
3731 " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3732 " ' prfx=^$ac_symprfx]"
3734 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3736 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
3738 # Check to see that the pipe works correctly.
3742 cat > conftest.$ac_ext <<_LT_EOF
3747 void nm_test_func(void);
3748 void nm_test_func(void){}
3752 int main(){nm_test_var='a';nm_test_func();return(0);}
3755 if AC_TRY_EVAL(ac_compile); then
3756 # Now try to grab the symbols.
3758 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
3759 # Try sorting and uniquifying the output.
3760 if sort "$nlist" | uniq > "$nlist"T; then
3761 mv -f "$nlist"T "$nlist"
3766 # Make sure that we snagged all the symbols we need.
3767 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3768 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3769 cat <<_LT_EOF > conftest.$ac_ext
3770 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
3771 #if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
3772 /* DATA imports from DLLs on WIN32 con't be const, because runtime
3773 relocations are performed -- see ld's documentation on pseudo-relocs. */
3774 # define LT@&t@_DLSYM_CONST
3775 #elif defined(__osf__)
3776 /* This system does not cope well with relocations in const data. */
3777 # define LT@&t@_DLSYM_CONST
3779 # define LT@&t@_DLSYM_CONST const
3787 # Now generate the symbol file.
3788 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
3790 cat <<_LT_EOF >> conftest.$ac_ext
3792 /* The mapping between symbol names and symbols. */
3793 LT@&t@_DLSYM_CONST struct {
3797 lt__PROGRAM__LTX_preloaded_symbols[[]] =
3799 { "@PROGRAM@", (void *) 0 },
3801 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3802 cat <<\_LT_EOF >> conftest.$ac_ext
3806 /* This works around a problem in FreeBSD linker */
3807 #ifdef FREEBSD_WORKAROUND
3808 static const void *lt_preloaded_setup() {
3809 return lt__PROGRAM__LTX_preloaded_symbols;
3817 # Now try linking the two files.
3818 mv conftest.$ac_objext conftstm.$ac_objext
3819 lt_globsym_save_LIBS=$LIBS
3820 lt_globsym_save_CFLAGS=$CFLAGS
3821 LIBS="conftstm.$ac_objext"
3822 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3823 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3826 LIBS=$lt_globsym_save_LIBS
3827 CFLAGS=$lt_globsym_save_CFLAGS
3829 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3832 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3835 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
3838 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3839 cat conftest.$ac_ext >&5
3841 rm -rf conftest* conftst*
3843 # Do not use the global_symbol_pipe unless it works.
3844 if test "$pipe_works" = yes; then
3847 lt_cv_sys_global_symbol_pipe=
3851 if test -z "$lt_cv_sys_global_symbol_pipe"; then
3852 lt_cv_sys_global_symbol_to_cdecl=
3854 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3855 AC_MSG_RESULT(failed)
3860 # Response file support.
3861 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3862 nm_file_list_spec='@'
3863 elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
3864 nm_file_list_spec='@'
3867 _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3868 [Take the output of nm and produce a listing of raw symbols and C names])
3869 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3870 [Transform the output of nm in a proper C declaration])
3871 _LT_DECL([global_symbol_to_c_name_address],
3872 [lt_cv_sys_global_symbol_to_c_name_address], [1],
3873 [Transform the output of nm in a C name address pair])
3874 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3875 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3876 [Transform the output of nm in a C name address pair when lib prefix is needed])
3877 _LT_DECL([], [nm_file_list_spec], [1],
3878 [Specify filename containing input files for $NM])
3879 ]) # _LT_CMD_GLOBAL_SYMBOLS
3882 # _LT_COMPILER_PIC([TAGNAME])
3883 # ---------------------------
3884 m4_defun([_LT_COMPILER_PIC],
3885 [m4_require([_LT_TAG_COMPILER])dnl
3886 _LT_TAGVAR(lt_prog_compiler_wl, $1)=
3887 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3888 _LT_TAGVAR(lt_prog_compiler_static, $1)=
3890 m4_if([$1], [CXX], [
3891 # C++ specific cases for pic, static, wl, etc.
3892 if test "$GXX" = yes; then
3893 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3894 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
3898 # All AIX code is PIC.
3899 if test "$host_cpu" = ia64; then
3900 # AIX 5 now supports IA64 processor
3901 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3908 # see comment about AmigaOS4 .so support
3909 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3912 # FIXME: we need at least 68020 code to build shared libraries, but
3913 # adding the `-m68020' flag to GCC prevents building anything better,
3915 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3920 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
3921 # PIC is the default for these OSes.
3923 mingw* | cygwin* | os2* | pw32* | cegcc*)
3924 # This hack is so that the source file can tell whether it is being
3925 # built for inclusion in a dll (and should export symbols for example).
3926 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3927 # (--disable-auto-import) libraries
3928 m4_if([$1], [GCJ], [],
3929 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3931 darwin* | rhapsody*)
3932 # PIC is the default on this platform
3933 # Common symbols not allowed in MH_DYLIB files
3934 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
3937 # DJGPP does not support shared libraries at all
3938 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3941 # PIC is the default for Haiku.
3942 # The "-static" flag exists, but is broken.
3943 _LT_TAGVAR(lt_prog_compiler_static, $1)=
3946 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3947 # Instead, we relocate shared libraries at runtime.
3950 if test -d /usr/nec; then
3951 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
3955 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3956 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3957 # sets the default TLS model and affects inlining.
3962 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3967 # QNX uses GNU C++, but need to define -shared option too, otherwise
3969 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3972 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3978 # All AIX code is PIC.
3979 if test "$host_cpu" = ia64; then
3980 # AIX 5 now supports IA64 processor
3981 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3983 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
3987 case $cc_basename in
3989 # Green Hills C++ Compiler
3990 # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
3994 mingw* | cygwin* | os2* | pw32* | cegcc*)
3995 # This hack is so that the source file can tell whether it is being
3996 # built for inclusion in a dll (and should export symbols for example).
3997 m4_if([$1], [GCJ], [],
3998 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4001 case $cc_basename in
4003 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4006 # Green Hills C++ Compiler
4007 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4013 freebsd* | dragonfly*)
4014 # FreeBSD uses GNU C++
4016 hpux9* | hpux10* | hpux11*)
4017 case $cc_basename in
4019 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4020 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4021 if test "$host_cpu" != ia64; then
4022 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4026 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4027 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4033 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4042 # This is c89, which is MS Visual C++ (no shared libs)
4043 # Anyone wants to do a port?
4045 irix5* | irix6* | nonstopux*)
4046 case $cc_basename in
4048 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4049 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4050 # CC pic flag -KPIC is the default.
4056 linux* | k*bsd*-gnu | kopensolaris*-gnu)
4057 case $cc_basename in
4060 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4061 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4064 # old Intel C++ for x86_64 which still supported -KPIC.
4065 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4066 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4067 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4070 # Intel C++, used to be incompatible with GCC.
4071 # ICC 10 doesn't accept -KPIC any more.
4072 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4073 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4074 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4077 # Portland Group C++ compiler
4078 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4079 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4080 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4084 # Make sure the PIC flag is empty. It appears that all Alpha
4085 # Linux and Compaq Tru64 Unix objects are PIC.
4086 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4087 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4089 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4090 # IBM XL 8.0, 9.0 on PPC and BlueGene
4091 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4092 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4093 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4096 case `$CC -V 2>&1 | sed 5q` in
4099 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4100 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4101 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4112 case $cc_basename in
4114 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4123 # QNX uses GNU C++, but need to define -shared option too, otherwise
4125 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4127 osf3* | osf4* | osf5*)
4128 case $cc_basename in
4130 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4133 # Rational C++ 2.4.1
4134 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4137 # Digital/Compaq C++
4138 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4139 # Make sure the PIC flag is empty. It appears that all Alpha
4140 # Linux and Compaq Tru64 Unix objects are PIC.
4141 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4142 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4151 case $cc_basename in
4153 # Sun C++ 4.2, 5.x and Centerline C++
4154 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4155 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4156 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4159 # Green Hills C++ Compiler
4160 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4167 case $cc_basename in
4170 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4171 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4175 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4181 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4182 case $cc_basename in
4184 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4185 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4186 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4191 case $cc_basename in
4193 # NonStop-UX NCC 3.20
4194 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4203 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4209 if test "$GCC" = yes; then
4210 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4211 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4215 # All AIX code is PIC.
4216 if test "$host_cpu" = ia64; then
4217 # AIX 5 now supports IA64 processor
4218 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4225 # see comment about AmigaOS4 .so support
4226 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4229 # FIXME: we need at least 68020 code to build shared libraries, but
4230 # adding the `-m68020' flag to GCC prevents building anything better,
4232 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4237 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4238 # PIC is the default for these OSes.
4241 mingw* | cygwin* | pw32* | os2* | cegcc*)
4242 # This hack is so that the source file can tell whether it is being
4243 # built for inclusion in a dll (and should export symbols for example).
4244 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4245 # (--disable-auto-import) libraries
4246 m4_if([$1], [GCJ], [],
4247 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4250 darwin* | rhapsody*)
4251 # PIC is the default on this platform
4252 # Common symbols not allowed in MH_DYLIB files
4253 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4257 # PIC is the default for Haiku.
4258 # The "-static" flag exists, but is broken.
4259 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4263 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4264 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4265 # sets the default TLS model and affects inlining.
4271 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4277 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4278 # Instead, we relocate shared libraries at runtime.
4282 # Just because we use GCC doesn't mean we suddenly get shared libraries
4283 # on systems that don't support them.
4284 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4289 # QNX uses GNU C++, but need to define -shared option too, otherwise
4291 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4295 if test -d /usr/nec; then
4296 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4301 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4305 case $cc_basename in
4306 nvcc*) # Cuda Compiler Driver 2.2
4307 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4308 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4309 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4314 # PORTME Check for flag to pass linker flags through the system compiler.
4317 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4318 if test "$host_cpu" = ia64; then
4319 # AIX 5 now supports IA64 processor
4320 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4322 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4326 mingw* | cygwin* | pw32* | os2* | cegcc*)
4327 # This hack is so that the source file can tell whether it is being
4328 # built for inclusion in a dll (and should export symbols for example).
4329 m4_if([$1], [GCJ], [],
4330 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4333 hpux9* | hpux10* | hpux11*)
4334 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4335 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4342 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4345 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4346 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4349 irix5* | irix6* | nonstopux*)
4350 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4351 # PIC (with -KPIC) is the default.
4352 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4355 linux* | k*bsd*-gnu | kopensolaris*-gnu)
4356 case $cc_basename in
4357 # old Intel for x86_64 which still supported -KPIC.
4359 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4360 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4361 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4363 # icc used to be incompatible with GCC.
4364 # ICC 10 doesn't accept -KPIC any more.
4366 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4367 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4368 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4370 # Lahey Fortran 8.1.
4372 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4373 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4374 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4377 # NAG Fortran compiler
4378 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4379 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4380 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4382 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4383 # Portland Group compilers (*not* the Pentium gcc compiler,
4384 # which looks to be a dead project)
4385 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4386 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4387 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4390 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4391 # All Alpha code is PIC.
4392 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4394 xl* | bgxl* | bgf* | mpixl*)
4395 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4396 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4397 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4398 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4401 case `$CC -V 2>&1 | sed 5q` in
4402 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4403 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4404 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4405 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4406 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4408 *Sun\ F* | *Sun*Fortran*)
4409 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4410 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4411 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4415 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4416 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4417 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4419 *Intel*\ [[CF]]*Compiler*)
4420 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4421 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4422 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4425 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4426 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4427 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4435 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4436 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4440 # QNX uses GNU C++, but need to define -shared option too, otherwise
4442 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4445 osf3* | osf4* | osf5*)
4446 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4447 # All OSF/1 code is PIC.
4448 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4452 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4456 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4457 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4458 case $cc_basename in
4459 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4460 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4462 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4467 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4468 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4469 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4472 sysv4 | sysv4.2uw2* | sysv4.3*)
4473 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4474 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4475 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4479 if test -d /usr/nec ;then
4480 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4481 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4485 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4486 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4487 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4488 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4492 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4493 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4497 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4498 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4502 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4508 # For platforms which do not support PIC, -DPIC is meaningless:
4510 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4513 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4517 AC_CACHE_CHECK([for $compiler option to produce PIC],
4518 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4519 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4520 _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4523 # Check to make sure the PIC flag actually works.
4525 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4526 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4527 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4528 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4529 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4531 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4533 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4534 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4536 _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4537 [Additional compiler flags for building library objects])
4539 _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4540 [How to pass a linker flag through the compiler])
4542 # Check to make sure the static flag actually works.
4544 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4545 _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4546 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4547 $lt_tmp_static_flag,
4549 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4550 _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4551 [Compiler flag to prevent dynamic linking])
4552 ])# _LT_COMPILER_PIC
4555 # _LT_LINKER_SHLIBS([TAGNAME])
4556 # ----------------------------
4557 # See if the linker supports building shared libraries.
4558 m4_defun([_LT_LINKER_SHLIBS],
4559 [AC_REQUIRE([LT_PATH_LD])dnl
4560 AC_REQUIRE([LT_PATH_NM])dnl
4561 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4562 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4563 m4_require([_LT_DECL_EGREP])dnl
4564 m4_require([_LT_DECL_SED])dnl
4565 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4566 m4_require([_LT_TAG_COMPILER])dnl
4567 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4568 m4_if([$1], [CXX], [
4569 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4570 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4573 # If we're using GNU nm, then we don't want the "-C" option.
4574 # -C means demangle to AIX nm, but means don't demangle with GNU nm
4575 # Also, AIX nm treats weak defined symbols like other global defined
4576 # symbols, whereas GNU nm marks them as "W".
4577 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4578 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4580 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4584 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
4586 cygwin* | mingw* | cegcc*)
4587 case $cc_basename in
4589 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4592 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4593 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4598 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4603 _LT_TAGVAR(allow_undefined_flag, $1)=
4604 _LT_TAGVAR(always_export_symbols, $1)=no
4605 _LT_TAGVAR(archive_cmds, $1)=
4606 _LT_TAGVAR(archive_expsym_cmds, $1)=
4607 _LT_TAGVAR(compiler_needs_object, $1)=no
4608 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4609 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4610 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4611 _LT_TAGVAR(hardcode_automatic, $1)=no
4612 _LT_TAGVAR(hardcode_direct, $1)=no
4613 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4614 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4615 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4616 _LT_TAGVAR(hardcode_minus_L, $1)=no
4617 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4618 _LT_TAGVAR(inherit_rpath, $1)=no
4619 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4620 _LT_TAGVAR(module_cmds, $1)=
4621 _LT_TAGVAR(module_expsym_cmds, $1)=
4622 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4623 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4624 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4625 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4626 # include_expsyms should be a list of space-separated symbols to be *always*
4627 # included in the symbol list
4628 _LT_TAGVAR(include_expsyms, $1)=
4629 # exclude_expsyms can be an extended regexp of symbols to exclude
4630 # it will be wrapped by ` (' and `)$', so one must not match beginning or
4631 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4632 # as well as any symbol that contains `d'.
4633 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4634 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4635 # platforms (ab)use it in PIC code, but their linkers get confused if
4636 # the symbol is explicitly referenced. Since portable code cannot
4637 # rely on this symbol name, it's probably fine to never include it in
4638 # preloaded symbol tables.
4639 # Exclude shared library initialization/finalization symbols.
4640 dnl Note also adjust exclude_expsyms for C++ above.
4641 extract_expsyms_cmds=
4644 cygwin* | mingw* | pw32* | cegcc*)
4645 # FIXME: the MSVC++ port hasn't been tested in a loooong time
4646 # When not using gcc, we currently assume that we are using
4647 # Microsoft Visual C++.
4648 if test "$GCC" != yes; then
4653 # we just hope/assume this is gcc and not c89 (= MSVC++)
4661 _LT_TAGVAR(ld_shlibs, $1)=yes
4663 # On some targets, GNU ld is compatible enough with the native linker
4664 # that we're better off using the native interface for both.
4665 lt_use_gnu_ld_interface=no
4666 if test "$with_gnu_ld" = yes; then
4669 # The AIX port of GNU ld has always aspired to compatibility
4670 # with the native linker. However, as the warning in the GNU ld
4671 # block says, versions before 2.19.5* couldn't really create working
4672 # shared libraries, regardless of the interface used.
4673 case `$LD -v 2>&1` in
4674 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
4675 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
4676 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
4678 lt_use_gnu_ld_interface=yes
4683 lt_use_gnu_ld_interface=yes
4688 if test "$lt_use_gnu_ld_interface" = yes; then
4689 # If archive_cmds runs LD, not CC, wlarc should be empty
4692 # Set some defaults for GNU ld with shared library support. These
4693 # are reset later if shared libraries are not supported. Putting them
4694 # here allows them to be overridden if necessary.
4695 runpath_var=LD_RUN_PATH
4696 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4697 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
4698 # ancient GNU ld didn't support --whole-archive et. al.
4699 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4700 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4702 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4704 supports_anon_versioning=no
4705 case `$LD -v 2>&1` in
4706 *GNU\ gold*) supports_anon_versioning=yes ;;
4707 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4708 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4709 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4710 *\ 2.11.*) ;; # other 2.11 versions
4711 *) supports_anon_versioning=yes ;;
4714 # See if GNU ld supports shared libraries.
4717 # On AIX/PPC, the GNU linker is very broken
4718 if test "$host_cpu" != ia64; then
4719 _LT_TAGVAR(ld_shlibs, $1)=no
4722 *** Warning: the GNU linker, at least up to release 2.19, is reported
4723 *** to be unable to reliably create shared libraries on AIX.
4724 *** Therefore, libtool is disabling shared libraries support. If you
4725 *** really care for shared libraries, you may want to install binutils
4726 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
4727 *** You will then need to restart the configuration process.
4736 # see comment about AmigaOS4 .so support
4737 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4738 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4741 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
4742 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4743 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4749 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4750 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4751 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4752 # support --undefined. This deserves some investigation. FIXME
4753 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4755 _LT_TAGVAR(ld_shlibs, $1)=no
4759 cygwin* | mingw* | pw32* | cegcc*)
4760 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
4761 # as there is no search path for DLLs.
4762 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4763 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
4764 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4765 _LT_TAGVAR(always_export_symbols, $1)=no
4766 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
4767 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4768 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4770 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4771 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4772 # If the export-symbols file already is a .def file (1st line
4773 # is EXPORTS), use it as is; otherwise, prepend...
4774 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
4775 cp $export_symbols $output_objdir/$soname.def;
4777 echo EXPORTS > $output_objdir/$soname.def;
4778 cat $export_symbols >> $output_objdir/$soname.def;
4780 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4782 _LT_TAGVAR(ld_shlibs, $1)=no
4787 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4788 _LT_TAGVAR(link_all_deplibs, $1)=yes
4792 _LT_TAGVAR(hardcode_direct, $1)=no
4793 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4794 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4795 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4796 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4797 # Instead, shared libraries are loaded at an image base (0x10000000 by
4798 # default) and relocated if they conflict, which is a slow very memory
4799 # consuming and fragmenting process. To avoid this, we pick a random,
4800 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4801 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
4802 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
4803 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
4806 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
4808 if test "$host_os" = linux-dietlibc; then
4809 case $cc_basename in
4810 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
4813 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4814 && test "$tmp_diet" = no
4816 tmp_addflag=' $pic_flag'
4817 tmp_sharedflag='-shared'
4818 case $cc_basename,$host_cpu in
4819 pgcc*) # Portland Group C compiler
4820 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4821 tmp_addflag=' $pic_flag'
4823 pgf77* | pgf90* | pgf95* | pgfortran*)
4824 # Portland Group f77 and f90 compilers
4825 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4826 tmp_addflag=' $pic_flag -Mnomain' ;;
4827 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
4828 tmp_addflag=' -i_dynamic' ;;
4829 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
4830 tmp_addflag=' -i_dynamic -nofor_main' ;;
4831 ifc* | ifort*) # Intel Fortran compiler
4832 tmp_addflag=' -nofor_main' ;;
4833 lf95*) # Lahey Fortran 8.1
4834 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4835 tmp_sharedflag='--shared' ;;
4836 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
4837 tmp_sharedflag='-qmkshrobj'
4839 nvcc*) # Cuda Compiler Driver 2.2
4840 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4841 _LT_TAGVAR(compiler_needs_object, $1)=yes
4844 case `$CC -V 2>&1 | sed 5q` in
4845 *Sun\ C*) # Sun C 5.9
4846 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4847 _LT_TAGVAR(compiler_needs_object, $1)=yes
4848 tmp_sharedflag='-G' ;;
4849 *Sun\ F*) # Sun Fortran 8.3
4850 tmp_sharedflag='-G' ;;
4852 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4854 if test "x$supports_anon_versioning" = xyes; then
4855 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4856 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4857 echo "local: *; };" >> $output_objdir/$libname.ver~
4858 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4861 case $cc_basename in
4862 xlf* | bgf* | bgxlf* | mpixlf*)
4863 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4864 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
4865 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4866 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
4867 if test "x$supports_anon_versioning" = xyes; then
4868 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4869 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4870 echo "local: *; };" >> $output_objdir/$libname.ver~
4871 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
4876 _LT_TAGVAR(ld_shlibs, $1)=no
4881 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4882 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
4885 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4886 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4891 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4892 _LT_TAGVAR(ld_shlibs, $1)=no
4895 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
4896 *** create shared libraries on Solaris systems. Therefore, libtool
4897 *** is disabling shared libraries support. We urge you to upgrade GNU
4898 *** binutils to release 2.9.1 or newer. Another option is to modify
4899 *** your PATH or compiler configuration so that the native linker is
4900 *** used, and then restart.
4903 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4904 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4905 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4907 _LT_TAGVAR(ld_shlibs, $1)=no
4911 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4912 case `$LD -v 2>&1` in
4913 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
4914 _LT_TAGVAR(ld_shlibs, $1)=no
4917 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4918 *** reliably create shared libraries on SCO systems. Therefore, libtool
4919 *** is disabling shared libraries support. We urge you to upgrade GNU
4920 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
4921 *** your PATH or compiler configuration so that the native linker is
4922 *** used, and then restart.
4927 # For security reasons, it is highly recommended that you always
4928 # use absolute paths for naming shared libraries, and exclude the
4929 # DT_RUNPATH tag from executables and libraries. But doing so
4930 # requires that you compile everything twice, which is a pain.
4931 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4932 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4933 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4934 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4936 _LT_TAGVAR(ld_shlibs, $1)=no
4943 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4945 _LT_TAGVAR(hardcode_direct, $1)=yes
4946 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4950 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4951 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4952 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4954 _LT_TAGVAR(ld_shlibs, $1)=no
4959 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
4961 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4962 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4963 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4966 # PORTME fill in a description of your system's linker (not GNU ld)
4969 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4970 _LT_TAGVAR(always_export_symbols, $1)=yes
4971 _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
4972 # Note: this linker hardcodes the directories in LIBPATH if there
4973 # are no directories specified by -L.
4974 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4975 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
4976 # Neither direct hardcoding nor static linking is supported with a
4978 _LT_TAGVAR(hardcode_direct, $1)=unsupported
4983 if test "$host_cpu" = ia64; then
4984 # On IA64, the linker does run time linking by default, so we don't
4985 # have to do anything special.
4986 aix_use_runtimelinking=no
4987 exp_sym_flag='-Bexport'
4990 # If we're using GNU nm, then we don't want the "-C" option.
4991 # -C means demangle to AIX nm, but means don't demangle with GNU nm
4992 # Also, AIX nm treats weak defined symbols like other global
4993 # defined symbols, whereas GNU nm marks them as "W".
4994 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4995 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4997 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4999 aix_use_runtimelinking=no
5001 # Test if we are trying to use run time linking or normal
5002 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5003 # need to do runtime linking.
5004 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5005 for ld_flag in $LDFLAGS; do
5006 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
5007 aix_use_runtimelinking=yes
5014 exp_sym_flag='-bexport'
5015 no_entry_flag='-bnoentry'
5018 # When large executables or shared objects are built, AIX ld can
5019 # have problems creating the table of contents. If linking a library
5020 # or program results in "error TOC overflow" add -mminimal-toc to
5021 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5022 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5024 _LT_TAGVAR(archive_cmds, $1)=''
5025 _LT_TAGVAR(hardcode_direct, $1)=yes
5026 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5027 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5028 _LT_TAGVAR(link_all_deplibs, $1)=yes
5029 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
5031 if test "$GCC" = yes; then
5032 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5033 # We only want to do this on AIX 4.2 and lower, the check
5034 # below for broken collect2 doesn't work under 4.3+
5035 collect2name=`${CC} -print-prog-name=collect2`
5036 if test -f "$collect2name" &&
5037 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5039 # We have reworked collect2
5042 # We have old collect2
5043 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5044 # It fails to find uninstalled libraries when the uninstalled
5045 # path is not listed in the libpath. Setting hardcode_minus_L
5046 # to unsupported forces relinking
5047 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5048 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5049 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5053 shared_flag='-shared'
5054 if test "$aix_use_runtimelinking" = yes; then
5055 shared_flag="$shared_flag "'${wl}-G'
5059 if test "$host_cpu" = ia64; then
5060 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5061 # chokes on -Wl,-G. The following line is correct:
5064 if test "$aix_use_runtimelinking" = yes; then
5065 shared_flag='${wl}-G'
5067 shared_flag='${wl}-bM:SRE'
5072 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
5073 # It seems that -bexpall does not export symbols beginning with
5074 # underscore (_), so it is better to generate a list of symbols to export.
5075 _LT_TAGVAR(always_export_symbols, $1)=yes
5076 if test "$aix_use_runtimelinking" = yes; then
5077 # Warning - without using the other runtime loading flags (-brtl),
5078 # -berok will link without error, but may produce a broken library.
5079 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5080 # Determine the default libpath from the value encoded in an
5082 _LT_SYS_MODULE_PATH_AIX([$1])
5083 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5084 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
5086 if test "$host_cpu" = ia64; then
5087 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5088 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5089 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
5091 # Determine the default libpath from the value encoded in an
5093 _LT_SYS_MODULE_PATH_AIX([$1])
5094 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5095 # Warning - without using the other run time loading flags,
5096 # -berok will link without error, but may produce a broken library.
5097 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5098 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
5099 if test "$with_gnu_ld" = yes; then
5100 # We only use this code for GNU lds that support --whole-archive.
5101 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5103 # Exported symbols can be pulled into shared objects from archives
5104 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5106 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5107 # This is similar to how AIX traditionally builds its shared libraries.
5108 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
5116 # see comment about AmigaOS4 .so support
5117 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5118 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5121 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
5122 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5123 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5129 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5132 cygwin* | mingw* | pw32* | cegcc*)
5133 # When not using gcc, we currently assume that we are using
5134 # Microsoft Visual C++.
5135 # hardcode_libdir_flag_spec is actually meaningless, as there is
5136 # no search path for DLLs.
5137 case $cc_basename in
5140 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5141 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5142 _LT_TAGVAR(always_export_symbols, $1)=yes
5143 _LT_TAGVAR(file_list_spec, $1)='@'
5144 # Tell ltmain to make .lib files, not .a files.
5146 # Tell ltmain to make .dll files, not .so files.
5148 # FIXME: Setting linknames here is a bad hack.
5149 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
5150 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5151 sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
5153 sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
5155 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5157 # The linker will not automatically build a static lib if we build a DLL.
5158 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5159 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5160 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5161 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
5163 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5164 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5165 lt_tool_outputfile="@TOOL_OUTPUT@"~
5166 case $lt_outputfile in
5169 lt_outputfile="$lt_outputfile.exe"
5170 lt_tool_outputfile="$lt_tool_outputfile.exe"
5173 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
5174 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5175 $RM "$lt_outputfile.manifest";
5179 # Assume MSVC wrapper
5180 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5181 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5182 # Tell ltmain to make .lib files, not .a files.
5184 # Tell ltmain to make .dll files, not .so files.
5186 # FIXME: Setting linknames here is a bad hack.
5187 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5188 # The linker will automatically build a .lib file if we build a DLL.
5189 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5190 # FIXME: Should let the user specify the lib program.
5191 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5192 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5197 darwin* | rhapsody*)
5198 _LT_DARWIN_LINKER_FEATURES($1)
5202 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5203 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5204 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5207 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5208 # support. Future versions do this automatically, but an explicit c++rt0.o
5209 # does not break anything, and helps significantly (at the cost of a little
5212 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5213 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5214 _LT_TAGVAR(hardcode_direct, $1)=yes
5215 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5218 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5220 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5221 _LT_TAGVAR(hardcode_direct, $1)=yes
5222 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5223 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5226 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5227 freebsd* | dragonfly*)
5228 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5229 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5230 _LT_TAGVAR(hardcode_direct, $1)=yes
5231 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5235 if test "$GCC" = yes; then
5236 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5238 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5240 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5241 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5242 _LT_TAGVAR(hardcode_direct, $1)=yes
5244 # hardcode_minus_L: Not really in the search PATH,
5245 # but as the default location of the library.
5246 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5247 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5251 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5252 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5254 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5256 if test "$with_gnu_ld" = no; then
5257 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5258 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5259 _LT_TAGVAR(hardcode_direct, $1)=yes
5260 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5261 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5262 # hardcode_minus_L: Not really in the search PATH,
5263 # but as the default location of the library.
5264 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5269 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5272 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5275 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5278 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5284 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5287 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5291 # Older versions of the 11.00 compiler do not understand -b yet
5292 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5293 _LT_LINKER_OPTION([if $CC understands -b],
5294 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5295 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5296 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5297 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5301 if test "$with_gnu_ld" = no; then
5302 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5303 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5307 _LT_TAGVAR(hardcode_direct, $1)=no
5308 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5311 _LT_TAGVAR(hardcode_direct, $1)=yes
5312 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5313 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5315 # hardcode_minus_L: Not really in the search PATH,
5316 # but as the default location of the library.
5317 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5323 irix5* | irix6* | nonstopux*)
5324 if test "$GCC" = yes; then
5325 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5326 # Try to use the -exported_symbol ld option, if it does not
5327 # work, assume that -exports_file does not work either and
5328 # implicitly export all symbols.
5329 # This should be the same for all languages, so no per-tag cache variable.
5330 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5331 [lt_cv_irix_exported_symbol],
5332 [save_LDFLAGS="$LDFLAGS"
5333 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
5336 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5337 [C++], [[int foo (void) { return 0; }]],
5344 [lt_cv_irix_exported_symbol=yes],
5345 [lt_cv_irix_exported_symbol=no])
5346 LDFLAGS="$save_LDFLAGS"])
5347 if test "$lt_cv_irix_exported_symbol" = yes; then
5348 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
5351 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5352 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
5354 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5355 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5356 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5357 _LT_TAGVAR(inherit_rpath, $1)=yes
5358 _LT_TAGVAR(link_all_deplibs, $1)=yes
5362 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5363 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5365 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5367 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5368 _LT_TAGVAR(hardcode_direct, $1)=yes
5369 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5373 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5374 _LT_TAGVAR(hardcode_direct, $1)=yes
5375 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5376 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5377 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5384 if test -f /usr/libexec/ld.so; then
5385 _LT_TAGVAR(hardcode_direct, $1)=yes
5386 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5387 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5388 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
5389 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5390 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
5391 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5392 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5395 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
5396 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5397 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5400 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5401 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5406 _LT_TAGVAR(ld_shlibs, $1)=no
5411 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5412 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5413 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5414 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
5415 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
5419 if test "$GCC" = yes; then
5420 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
5421 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5423 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5424 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5426 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5427 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5428 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5431 osf4* | osf5*) # as osf3* with the addition of -msym flag
5432 if test "$GCC" = yes; then
5433 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
5434 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5435 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5437 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5438 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5439 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
5440 $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
5442 # Both c and cxx compiler support -rpath directly
5443 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5445 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5446 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5450 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5451 if test "$GCC" = yes; then
5453 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5454 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5455 $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5457 case `$CC -V 2>&1` in
5460 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5461 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5462 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5466 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5467 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5468 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5472 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5473 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5475 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5477 # The compiler driver will combine and reorder linker options,
5478 # but understands `-z linker_flag'. GCC discards it without `$wl',
5479 # but is careful enough not to reorder.
5480 # Supported since Solaris 2.6 (maybe 2.5.1?)
5481 if test "$GCC" = yes; then
5482 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
5484 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5488 _LT_TAGVAR(link_all_deplibs, $1)=yes
5492 if test "x$host_vendor" = xsequent; then
5493 # Use $CC to link under sequent, because it throws in some extra .o
5494 # files that make .init and .fini sections work.
5495 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5497 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5499 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5500 _LT_TAGVAR(hardcode_direct, $1)=yes
5501 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5502 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5506 case $host_vendor in
5508 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5509 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5512 ## LD is ld it makes a PLAMLIB
5513 ## CC just makes a GrossModule.
5514 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5515 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5516 _LT_TAGVAR(hardcode_direct, $1)=no
5519 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5520 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5523 runpath_var='LD_RUN_PATH'
5524 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5528 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5529 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5530 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5534 if test -d /usr/nec; then
5535 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5536 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5537 runpath_var=LD_RUN_PATH
5538 hardcode_runpath_var=yes
5539 _LT_TAGVAR(ld_shlibs, $1)=yes
5543 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
5544 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5545 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5546 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5547 runpath_var='LD_RUN_PATH'
5549 if test "$GCC" = yes; then
5550 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5551 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5553 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5554 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5558 sysv5* | sco3.2v5* | sco5v6*)
5559 # Note: We can NOT use -z defs as we might desire, because we do not
5560 # link with -lc, and that would cause any symbols used from libc to
5561 # always be unresolved, which means just about no library would
5562 # ever link correctly. If we're not using GNU ld we use -z text
5563 # though, which does catch some bad symbols but isn't as heavy-handed
5565 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5566 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5567 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5568 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5569 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5570 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5571 _LT_TAGVAR(link_all_deplibs, $1)=yes
5572 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
5573 runpath_var='LD_RUN_PATH'
5575 if test "$GCC" = yes; then
5576 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5577 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5579 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5580 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5585 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5586 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5587 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5591 _LT_TAGVAR(ld_shlibs, $1)=no
5595 if test x$host_vendor = xsni; then
5597 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5598 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5604 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5605 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
5607 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
5609 _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5610 _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5611 _LT_DECL([], [extract_expsyms_cmds], [2],
5612 [The commands to extract the exported symbol list from a shared archive])
5615 # Do we need to explicitly link libc?
5617 case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
5619 # Assume -lc should be added
5620 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5622 if test "$enable_shared" = yes && test "$GCC" = yes; then
5623 case $_LT_TAGVAR(archive_cmds, $1) in
5625 # FIXME: we may have to deal with multi-command sequences.
5628 # Test whether the compiler implicitly links with -lc since on some
5629 # systems, -lgcc has to come before -lc. If gcc already passes -lc
5630 # to ld, don't add -lc before -lgcc.
5631 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
5632 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
5634 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5636 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5639 libobjs=conftest.$ac_objext
5641 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5642 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5648 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5649 _LT_TAGVAR(allow_undefined_flag, $1)=
5650 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5652 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5654 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5656 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5658 cat conftest.err 1>&5
5662 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
5669 _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5670 [Whether or not to add -lc for building shared libraries])
5671 _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5672 [enable_shared_with_static_runtimes], [0],
5673 [Whether or not to disallow shared libs when runtime libs are static])
5674 _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5675 [Compiler flag to allow reflexive dlopens])
5676 _LT_TAGDECL([], [whole_archive_flag_spec], [1],
5677 [Compiler flag to generate shared objects directly from archives])
5678 _LT_TAGDECL([], [compiler_needs_object], [1],
5679 [Whether the compiler copes with passing no objects directly])
5680 _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5681 [Create an old-style archive from a shared archive])
5682 _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5683 [Create a temporary old-style archive to link instead of a shared archive])
5684 _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5685 _LT_TAGDECL([], [archive_expsym_cmds], [2])
5686 _LT_TAGDECL([], [module_cmds], [2],
5687 [Commands used to build a loadable module if different from building
5689 _LT_TAGDECL([], [module_expsym_cmds], [2])
5690 _LT_TAGDECL([], [with_gnu_ld], [1],
5691 [Whether we are building with GNU ld or not])
5692 _LT_TAGDECL([], [allow_undefined_flag], [1],
5693 [Flag that allows shared libraries with undefined symbols to be built])
5694 _LT_TAGDECL([], [no_undefined_flag], [1],
5695 [Flag that enforces no undefined symbols])
5696 _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5697 [Flag to hardcode $libdir into a binary during linking.
5698 This must work even if $libdir does not exist])
5699 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
5700 [Whether we need a single "-rpath" flag with a separated argument])
5701 _LT_TAGDECL([], [hardcode_direct], [0],
5702 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5703 DIR into the resulting binary])
5704 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
5705 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5706 DIR into the resulting binary and the resulting library dependency is
5707 "absolute", i.e impossible to change by setting ${shlibpath_var} if the
5708 library is relocated])
5709 _LT_TAGDECL([], [hardcode_minus_L], [0],
5710 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5711 into the resulting binary])
5712 _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5713 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5714 into the resulting binary])
5715 _LT_TAGDECL([], [hardcode_automatic], [0],
5716 [Set to "yes" if building a shared library automatically hardcodes DIR
5717 into the library and all subsequent libraries and executables linked
5719 _LT_TAGDECL([], [inherit_rpath], [0],
5720 [Set to yes if linker adds runtime paths of dependent libraries
5721 to runtime path list])
5722 _LT_TAGDECL([], [link_all_deplibs], [0],
5723 [Whether libtool must link a program against all its dependency libraries])
5724 _LT_TAGDECL([], [always_export_symbols], [0],
5725 [Set to "yes" if exported symbols are required])
5726 _LT_TAGDECL([], [export_symbols_cmds], [2],
5727 [The commands to list exported symbols])
5728 _LT_TAGDECL([], [exclude_expsyms], [1],
5729 [Symbols that should not be listed in the preloaded symbols])
5730 _LT_TAGDECL([], [include_expsyms], [1],
5731 [Symbols that must always be exported])
5732 _LT_TAGDECL([], [prelink_cmds], [2],
5733 [Commands necessary for linking programs (against libraries) with templates])
5734 _LT_TAGDECL([], [postlink_cmds], [2],
5735 [Commands necessary for finishing linking programs])
5736 _LT_TAGDECL([], [file_list_spec], [1],
5737 [Specify filename containing input files])
5738 dnl FIXME: Not yet implemented
5739 dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5740 dnl [Compiler flag to generate thread safe objects])
5741 ])# _LT_LINKER_SHLIBS
5744 # _LT_LANG_C_CONFIG([TAG])
5745 # ------------------------
5746 # Ensure that the configuration variables for a C compiler are suitably
5747 # defined. These variables are subsequently used by _LT_CONFIG to write
5748 # the compiler configuration to `libtool'.
5749 m4_defun([_LT_LANG_C_CONFIG],
5750 [m4_require([_LT_DECL_EGREP])dnl
5754 # Source file extension for C test sources.
5757 # Object file extension for compiled C test sources.
5759 _LT_TAGVAR(objext, $1)=$objext
5761 # Code to be used in simple compile tests
5762 lt_simple_compile_test_code="int some_variable = 0;"
5764 # Code to be used in simple link tests
5765 lt_simple_link_test_code='int main(){return(0);}'
5768 # Save the default compiler, since it gets overwritten when the other
5769 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5770 compiler_DEFAULT=$CC
5772 # save warnings/boilerplate of simple test code
5773 _LT_COMPILER_BOILERPLATE
5774 _LT_LINKER_BOILERPLATE
5776 if test -n "$compiler"; then
5777 _LT_COMPILER_NO_RTTI($1)
5778 _LT_COMPILER_PIC($1)
5779 _LT_COMPILER_C_O($1)
5780 _LT_COMPILER_FILE_LOCKS($1)
5781 _LT_LINKER_SHLIBS($1)
5782 _LT_SYS_DYNAMIC_LINKER($1)
5783 _LT_LINKER_HARDCODE_LIBPATH($1)
5787 # Report which library types will actually be built
5788 AC_MSG_CHECKING([if libtool supports shared libraries])
5789 AC_MSG_RESULT([$can_build_shared])
5791 AC_MSG_CHECKING([whether to build shared libraries])
5792 test "$can_build_shared" = "no" && enable_shared=no
5794 # On AIX, shared libraries and static libraries use the same namespace, and
5795 # are all built from PIC.
5798 test "$enable_shared" = yes && enable_static=no
5799 if test -n "$RANLIB"; then
5800 archive_cmds="$archive_cmds~\$RANLIB \$lib"
5801 postinstall_cmds='$RANLIB $lib'
5806 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5807 test "$enable_shared" = yes && enable_static=no
5811 AC_MSG_RESULT([$enable_shared])
5813 AC_MSG_CHECKING([whether to build static libraries])
5814 # Make sure either enable_shared or enable_static is yes.
5815 test "$enable_shared" = yes || enable_static=yes
5816 AC_MSG_RESULT([$enable_static])
5822 ])# _LT_LANG_C_CONFIG
5825 # _LT_LANG_CXX_CONFIG([TAG])
5826 # --------------------------
5827 # Ensure that the configuration variables for a C++ compiler are suitably
5828 # defined. These variables are subsequently used by _LT_CONFIG to write
5829 # the compiler configuration to `libtool'.
5830 m4_defun([_LT_LANG_CXX_CONFIG],
5831 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5832 m4_require([_LT_DECL_EGREP])dnl
5833 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5834 if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5835 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5836 (test "X$CXX" != "Xg++"))) ; then
5839 _lt_caught_CXX_error=yes
5843 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5844 _LT_TAGVAR(allow_undefined_flag, $1)=
5845 _LT_TAGVAR(always_export_symbols, $1)=no
5846 _LT_TAGVAR(archive_expsym_cmds, $1)=
5847 _LT_TAGVAR(compiler_needs_object, $1)=no
5848 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5849 _LT_TAGVAR(hardcode_direct, $1)=no
5850 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
5851 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5852 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5853 _LT_TAGVAR(hardcode_minus_L, $1)=no
5854 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5855 _LT_TAGVAR(hardcode_automatic, $1)=no
5856 _LT_TAGVAR(inherit_rpath, $1)=no
5857 _LT_TAGVAR(module_cmds, $1)=
5858 _LT_TAGVAR(module_expsym_cmds, $1)=
5859 _LT_TAGVAR(link_all_deplibs, $1)=unknown
5860 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
5861 _LT_TAGVAR(reload_flag, $1)=$reload_flag
5862 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5863 _LT_TAGVAR(no_undefined_flag, $1)=
5864 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5865 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5867 # Source file extension for C++ test sources.
5870 # Object file extension for compiled C++ test sources.
5872 _LT_TAGVAR(objext, $1)=$objext
5874 # No sense in running all these tests if we already determined that
5875 # the CXX compiler isn't working. Some variables (like enable_shared)
5876 # are currently assumed to apply to all compilers on this platform,
5877 # and will be corrupted by setting them based on a non-working compiler.
5878 if test "$_lt_caught_CXX_error" != yes; then
5879 # Code to be used in simple compile tests
5880 lt_simple_compile_test_code="int some_variable = 0;"
5882 # Code to be used in simple link tests
5883 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5885 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
5888 # save warnings/boilerplate of simple test code
5889 _LT_COMPILER_BOILERPLATE
5890 _LT_LINKER_BOILERPLATE
5892 # Allow CC to be a program name with arguments.
5894 lt_save_CFLAGS=$CFLAGS
5898 lt_save_with_gnu_ld=$with_gnu_ld
5899 lt_save_path_LD=$lt_cv_path_LD
5900 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5901 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
5903 $as_unset lt_cv_prog_gnu_ld
5905 if test -n "${lt_cv_path_LDCXX+set}"; then
5906 lt_cv_path_LD=$lt_cv_path_LDCXX
5908 $as_unset lt_cv_path_LD
5910 test -z "${LDCXX+set}" || LD=$LDCXX
5914 _LT_TAGVAR(compiler, $1)=$CC
5915 _LT_CC_BASENAME([$compiler])
5917 if test -n "$compiler"; then
5918 # We don't want -fno-exception when compiling C++ code, so set the
5919 # no_builtin_flag separately
5920 if test "$GXX" = yes; then
5921 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5923 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5926 if test "$GXX" = yes; then
5927 # Set up default GNU C++ configuration
5931 # Check if GNU C++ uses GNU ld as the underlying linker, since the
5932 # archiving commands below assume that GNU ld is being used.
5933 if test "$with_gnu_ld" = yes; then
5934 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5935 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5937 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5938 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5940 # If archive_cmds runs LD, not CC, wlarc should be empty
5941 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5942 # investigate it a little bit more. (MM)
5945 # ancient GNU ld didn't support --whole-archive et. al.
5946 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5947 $GREP 'no-whole-archive' > /dev/null; then
5948 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5950 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5956 # A generic and very simple default shared library creation
5957 # command for GNU C++ for the case where it uses the native
5958 # linker, instead of GNU ld. If possible, this setting should
5959 # overridden to take advantage of the native linker features on
5960 # the platform it is being used on.
5961 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
5964 # Commands to make compiler produce verbose output that lists
5965 # what "hidden" libraries, object files and flags are used when
5966 # linking a shared library.
5967 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5975 # PORTME: fill in a description of your system's C++ link characteristics
5976 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5977 _LT_TAGVAR(ld_shlibs, $1)=yes
5980 # FIXME: insert proper C++ library support
5981 _LT_TAGVAR(ld_shlibs, $1)=no
5984 if test "$host_cpu" = ia64; then
5985 # On IA64, the linker does run time linking by default, so we don't
5986 # have to do anything special.
5987 aix_use_runtimelinking=no
5988 exp_sym_flag='-Bexport'
5991 aix_use_runtimelinking=no
5993 # Test if we are trying to use run time linking or normal
5994 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5995 # need to do runtime linking.
5996 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5997 for ld_flag in $LDFLAGS; do
6000 aix_use_runtimelinking=yes
6008 exp_sym_flag='-bexport'
6009 no_entry_flag='-bnoentry'
6012 # When large executables or shared objects are built, AIX ld can
6013 # have problems creating the table of contents. If linking a library
6014 # or program results in "error TOC overflow" add -mminimal-toc to
6015 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6016 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6018 _LT_TAGVAR(archive_cmds, $1)=''
6019 _LT_TAGVAR(hardcode_direct, $1)=yes
6020 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6021 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6022 _LT_TAGVAR(link_all_deplibs, $1)=yes
6023 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
6025 if test "$GXX" = yes; then
6026 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6027 # We only want to do this on AIX 4.2 and lower, the check
6028 # below for broken collect2 doesn't work under 4.3+
6029 collect2name=`${CC} -print-prog-name=collect2`
6030 if test -f "$collect2name" &&
6031 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6033 # We have reworked collect2
6036 # We have old collect2
6037 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6038 # It fails to find uninstalled libraries when the uninstalled
6039 # path is not listed in the libpath. Setting hardcode_minus_L
6040 # to unsupported forces relinking
6041 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6042 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6043 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6046 shared_flag='-shared'
6047 if test "$aix_use_runtimelinking" = yes; then
6048 shared_flag="$shared_flag "'${wl}-G'
6052 if test "$host_cpu" = ia64; then
6053 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6054 # chokes on -Wl,-G. The following line is correct:
6057 if test "$aix_use_runtimelinking" = yes; then
6058 shared_flag='${wl}-G'
6060 shared_flag='${wl}-bM:SRE'
6065 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
6066 # It seems that -bexpall does not export symbols beginning with
6067 # underscore (_), so it is better to generate a list of symbols to
6069 _LT_TAGVAR(always_export_symbols, $1)=yes
6070 if test "$aix_use_runtimelinking" = yes; then
6071 # Warning - without using the other runtime loading flags (-brtl),
6072 # -berok will link without error, but may produce a broken library.
6073 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
6074 # Determine the default libpath from the value encoded in an empty
6076 _LT_SYS_MODULE_PATH_AIX([$1])
6077 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6079 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
6081 if test "$host_cpu" = ia64; then
6082 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6083 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6084 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
6086 # Determine the default libpath from the value encoded in an
6088 _LT_SYS_MODULE_PATH_AIX([$1])
6089 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6090 # Warning - without using the other run time loading flags,
6091 # -berok will link without error, but may produce a broken library.
6092 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6093 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
6094 if test "$with_gnu_ld" = yes; then
6095 # We only use this code for GNU lds that support --whole-archive.
6096 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6098 # Exported symbols can be pulled into shared objects from archives
6099 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6101 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6102 # This is similar to how AIX traditionally builds its shared
6104 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
6110 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6111 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6112 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6113 # support --undefined. This deserves some investigation. FIXME
6114 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6116 _LT_TAGVAR(ld_shlibs, $1)=no
6121 case $cc_basename in
6123 # FIXME: insert proper C++ library support
6124 _LT_TAGVAR(ld_shlibs, $1)=no
6129 cygwin* | mingw* | pw32* | cegcc*)
6130 case $GXX,$cc_basename in
6133 # hardcode_libdir_flag_spec is actually meaningless, as there is
6134 # no search path for DLLs.
6135 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6136 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6137 _LT_TAGVAR(always_export_symbols, $1)=yes
6138 _LT_TAGVAR(file_list_spec, $1)='@'
6139 # Tell ltmain to make .lib files, not .a files.
6141 # Tell ltmain to make .dll files, not .so files.
6143 # FIXME: Setting linknames here is a bad hack.
6144 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6145 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6146 $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6148 $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6150 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6152 # The linker will not automatically build a static lib if we build a DLL.
6153 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6154 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6156 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6157 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6158 lt_tool_outputfile="@TOOL_OUTPUT@"~
6159 case $lt_outputfile in
6162 lt_outputfile="$lt_outputfile.exe"
6163 lt_tool_outputfile="$lt_tool_outputfile.exe"
6166 func_to_tool_file "$lt_outputfile"~
6167 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6168 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6169 $RM "$lt_outputfile.manifest";
6174 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6175 # as there is no search path for DLLs.
6176 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6177 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
6178 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6179 _LT_TAGVAR(always_export_symbols, $1)=no
6180 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6182 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6183 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6184 # If the export-symbols file already is a .def file (1st line
6185 # is EXPORTS), use it as is; otherwise, prepend...
6186 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6187 cp $export_symbols $output_objdir/$soname.def;
6189 echo EXPORTS > $output_objdir/$soname.def;
6190 cat $export_symbols >> $output_objdir/$soname.def;
6192 $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6194 _LT_TAGVAR(ld_shlibs, $1)=no
6199 darwin* | rhapsody*)
6200 _LT_DARWIN_LINKER_FEATURES($1)
6204 case $cc_basename in
6206 # FIXME: insert proper C++ library support
6207 _LT_TAGVAR(ld_shlibs, $1)=no
6210 # Green Hills C++ Compiler
6211 # FIXME: insert proper C++ library support
6212 _LT_TAGVAR(ld_shlibs, $1)=no
6215 # FIXME: insert proper C++ library support
6216 _LT_TAGVAR(ld_shlibs, $1)=no
6222 # C++ shared libraries reported to be fairly broken before
6224 _LT_TAGVAR(ld_shlibs, $1)=no
6228 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6231 freebsd* | dragonfly*)
6232 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6234 _LT_TAGVAR(ld_shlibs, $1)=yes
6241 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6242 _LT_TAGVAR(link_all_deplibs, $1)=yes
6246 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6247 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6248 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6249 _LT_TAGVAR(hardcode_direct, $1)=yes
6250 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6251 # but as the default
6252 # location of the library.
6254 case $cc_basename in
6256 # FIXME: insert proper C++ library support
6257 _LT_TAGVAR(ld_shlibs, $1)=no
6260 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6261 # Commands to make compiler produce verbose output that lists
6262 # what "hidden" libraries, object files and flags are used when
6263 # linking a shared library.
6265 # There doesn't appear to be a way to prevent this compiler from
6266 # explicitly linking system object files so we need to strip them
6267 # from the output so that they don't get included in the library
6269 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6272 if test "$GXX" = yes; then
6273 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6275 # FIXME: insert proper C++ library support
6276 _LT_TAGVAR(ld_shlibs, $1)=no
6283 if test $with_gnu_ld = no; then
6284 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6285 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6291 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6297 _LT_TAGVAR(hardcode_direct, $1)=no
6298 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6301 _LT_TAGVAR(hardcode_direct, $1)=yes
6302 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6303 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6304 # but as the default
6305 # location of the library.
6309 case $cc_basename in
6311 # FIXME: insert proper C++ library support
6312 _LT_TAGVAR(ld_shlibs, $1)=no
6317 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6320 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6323 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6326 # Commands to make compiler produce verbose output that lists
6327 # what "hidden" libraries, object files and flags are used when
6328 # linking a shared library.
6330 # There doesn't appear to be a way to prevent this compiler from
6331 # explicitly linking system object files so we need to strip them
6332 # from the output so that they don't get included in the library
6334 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6337 if test "$GXX" = yes; then
6338 if test $with_gnu_ld = no; then
6341 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6344 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6347 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6352 # FIXME: insert proper C++ library support
6353 _LT_TAGVAR(ld_shlibs, $1)=no
6360 _LT_TAGVAR(hardcode_direct, $1)=no
6361 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6362 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6363 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6364 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6365 # Instead, shared libraries are loaded at an image base (0x10000000 by
6366 # default) and relocated if they conflict, which is a slow very memory
6367 # consuming and fragmenting process. To avoid this, we pick a random,
6368 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6369 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6370 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6371 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6374 case $cc_basename in
6377 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
6379 # Archives containing C++ object files must be created using
6380 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6381 # necessary to make sure instantiated templates are included
6383 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6386 if test "$GXX" = yes; then
6387 if test "$with_gnu_ld" = no; then
6388 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6390 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
6393 _LT_TAGVAR(link_all_deplibs, $1)=yes
6396 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6397 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6398 _LT_TAGVAR(inherit_rpath, $1)=yes
6401 linux* | k*bsd*-gnu | kopensolaris*-gnu)
6402 case $cc_basename in
6404 # Kuck and Associates, Inc. (KAI) C++ Compiler
6406 # KCC will only create a shared library if the output file
6407 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6408 # to its proper name (with version) after linking.
6409 _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
6410 _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
6411 # Commands to make compiler produce verbose output that lists
6412 # what "hidden" libraries, object files and flags are used when
6413 # linking a shared library.
6415 # There doesn't appear to be a way to prevent this compiler from
6416 # explicitly linking system object files so we need to strip them
6417 # from the output so that they don't get included in the library
6419 output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6421 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6422 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6424 # Archives containing C++ object files must be created using
6425 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6426 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6431 # version 8.0 and above of icpc choke on multiply defined symbols
6432 # if we add $predep_objects and $postdep_objects, however 7.1 and
6433 # earlier do not add the objects themselves.
6434 case `$CC -V 2>&1` in
6436 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6437 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
6439 *) # Version 8.0 or newer
6442 ia64*) tmp_idyn=' -i_dynamic';;
6444 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6445 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
6448 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6449 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6450 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6451 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6454 # Portland Group C++ compiler
6456 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
6457 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6459 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
6460 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
6461 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6463 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
6464 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
6466 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6468 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
6469 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6470 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
6472 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
6473 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
6475 *) # Version 6 and above use weak symbols
6476 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6477 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
6481 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6482 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6483 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
6487 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6488 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
6490 runpath_var=LD_RUN_PATH
6491 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6492 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6494 # Commands to make compiler produce verbose output that lists
6495 # what "hidden" libraries, object files and flags are used when
6496 # linking a shared library.
6498 # There doesn't appear to be a way to prevent this compiler from
6499 # explicitly linking system object files so we need to strip them
6500 # from the output so that they don't get included in the library
6502 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
6504 xl* | mpixl* | bgxl*)
6505 # IBM XL 8.0 on PPC, with GNU ld
6506 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6507 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6508 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6509 if test "x$supports_anon_versioning" = xyes; then
6510 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6511 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6512 echo "local: *; };" >> $output_objdir/$libname.ver~
6513 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6517 case `$CC -V 2>&1 | sed 5q` in
6520 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6521 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6522 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
6523 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6524 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
6525 _LT_TAGVAR(compiler_needs_object, $1)=yes
6527 # Not sure whether something based on
6528 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6530 output_verbose_link_cmd='func_echo_all'
6532 # Archives containing C++ object files must be created using
6533 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6534 # necessary to make sure instantiated templates are included
6536 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6544 # FIXME: insert proper C++ library support
6545 _LT_TAGVAR(ld_shlibs, $1)=no
6549 # FIXME: insert proper C++ library support
6550 _LT_TAGVAR(ld_shlibs, $1)=no
6554 case $cc_basename in
6556 # FIXME: insert proper C++ library support
6557 _LT_TAGVAR(ld_shlibs, $1)=no
6560 # FIXME: insert proper C++ library support
6561 _LT_TAGVAR(ld_shlibs, $1)=no
6567 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6568 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6570 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6571 _LT_TAGVAR(hardcode_direct, $1)=yes
6572 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6574 # Workaround some broken pre-1.5 toolchains
6575 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6579 _LT_TAGVAR(ld_shlibs, $1)=yes
6583 # C++ shared libraries are fairly broken
6584 _LT_TAGVAR(ld_shlibs, $1)=no
6588 if test -f /usr/libexec/ld.so; then
6589 _LT_TAGVAR(hardcode_direct, $1)=yes
6590 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6591 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6592 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6593 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6594 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6595 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
6596 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6597 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6599 output_verbose_link_cmd=func_echo_all
6601 _LT_TAGVAR(ld_shlibs, $1)=no
6605 osf3* | osf4* | osf5*)
6606 case $cc_basename in
6608 # Kuck and Associates, Inc. (KAI) C++ Compiler
6610 # KCC will only create a shared library if the output file
6611 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6612 # to its proper name (with version) after linking.
6613 _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
6615 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6616 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6618 # Archives containing C++ object files must be created using
6619 # the KAI C++ compiler.
6621 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6622 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6626 # Rational C++ 2.4.1
6627 # FIXME: insert proper C++ library support
6628 _LT_TAGVAR(ld_shlibs, $1)=no
6633 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6634 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
6635 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6638 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6639 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
6640 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6641 echo "-hidden">> $lib.exp~
6642 $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
6644 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6648 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6650 # Commands to make compiler produce verbose output that lists
6651 # what "hidden" libraries, object files and flags are used when
6652 # linking a shared library.
6654 # There doesn't appear to be a way to prevent this compiler from
6655 # explicitly linking system object files so we need to strip them
6656 # from the output so that they don't get included in the library
6658 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6661 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6662 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6665 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6668 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6672 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6673 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6675 # Commands to make compiler produce verbose output that lists
6676 # what "hidden" libraries, object files and flags are used when
6677 # linking a shared library.
6678 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6681 # FIXME: insert proper C++ library support
6682 _LT_TAGVAR(ld_shlibs, $1)=no
6689 # FIXME: insert proper C++ library support
6690 _LT_TAGVAR(ld_shlibs, $1)=no
6694 case $cc_basename in
6697 # FIXME: insert proper C++ library support
6698 _LT_TAGVAR(ld_shlibs, $1)=no
6702 # FIXME: insert proper C++ library support
6703 _LT_TAGVAR(ld_shlibs, $1)=no
6706 # FIXME: insert proper C++ library support
6707 _LT_TAGVAR(ld_shlibs, $1)=no
6713 case $cc_basename in
6715 # Sun C++ 4.2, 5.x and Centerline C++
6716 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6717 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6718 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6719 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6720 $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6722 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6723 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6725 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6727 # The compiler driver will combine and reorder linker options,
6728 # but understands `-z linker_flag'.
6729 # Supported since Solaris 2.6 (maybe 2.5.1?)
6730 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6733 _LT_TAGVAR(link_all_deplibs, $1)=yes
6735 output_verbose_link_cmd='func_echo_all'
6737 # Archives containing C++ object files must be created using
6738 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6739 # necessary to make sure instantiated templates are included
6741 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6744 # Green Hills C++ Compiler
6745 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6747 # The C++ compiler must be used to create the archive.
6748 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
6751 # GNU C++ compiler with Solaris linker
6752 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6753 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6754 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
6755 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6756 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6757 $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6759 # Commands to make compiler produce verbose output that lists
6760 # what "hidden" libraries, object files and flags are used when
6761 # linking a shared library.
6762 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6764 # g++ 2.7 appears to require `-G' NOT `-shared' on this
6766 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6767 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6768 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6770 # Commands to make compiler produce verbose output that lists
6771 # what "hidden" libraries, object files and flags are used when
6772 # linking a shared library.
6773 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6776 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6778 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6780 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6788 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6789 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6790 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6791 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6792 runpath_var='LD_RUN_PATH'
6794 case $cc_basename in
6796 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6797 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6800 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6801 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6806 sysv5* | sco3.2v5* | sco5v6*)
6807 # Note: We can NOT use -z defs as we might desire, because we do not
6808 # link with -lc, and that would cause any symbols used from libc to
6809 # always be unresolved, which means just about no library would
6810 # ever link correctly. If we're not using GNU ld we use -z text
6811 # though, which does catch some bad symbols but isn't as heavy-handed
6813 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6814 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6815 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6816 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6817 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6818 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6819 _LT_TAGVAR(link_all_deplibs, $1)=yes
6820 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6821 runpath_var='LD_RUN_PATH'
6823 case $cc_basename in
6825 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6826 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6827 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6828 '"$_LT_TAGVAR(old_archive_cmds, $1)"
6829 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6830 '"$_LT_TAGVAR(reload_cmds, $1)"
6833 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6834 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6840 case $cc_basename in
6842 # NonStop-UX NCC 3.20
6843 # FIXME: insert proper C++ library support
6844 _LT_TAGVAR(ld_shlibs, $1)=no
6847 # FIXME: insert proper C++ library support
6848 _LT_TAGVAR(ld_shlibs, $1)=no
6854 # FIXME: insert proper C++ library support
6855 _LT_TAGVAR(ld_shlibs, $1)=no
6859 # FIXME: insert proper C++ library support
6860 _LT_TAGVAR(ld_shlibs, $1)=no
6864 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6865 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6867 _LT_TAGVAR(GCC, $1)="$GXX"
6868 _LT_TAGVAR(LD, $1)="$LD"
6871 ## There is no encapsulation within the following macros, do not change
6872 ## the running order or otherwise move them around unless you know exactly
6873 ## what you are doing...
6874 _LT_SYS_HIDDEN_LIBDEPS($1)
6875 _LT_COMPILER_PIC($1)
6876 _LT_COMPILER_C_O($1)
6877 _LT_COMPILER_FILE_LOCKS($1)
6878 _LT_LINKER_SHLIBS($1)
6879 _LT_SYS_DYNAMIC_LINKER($1)
6880 _LT_LINKER_HARDCODE_LIBPATH($1)
6883 fi # test -n "$compiler"
6886 CFLAGS=$lt_save_CFLAGS
6890 with_gnu_ld=$lt_save_with_gnu_ld
6891 lt_cv_path_LDCXX=$lt_cv_path_LD
6892 lt_cv_path_LD=$lt_save_path_LD
6893 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6894 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6895 fi # test "$_lt_caught_CXX_error" != yes
6898 ])# _LT_LANG_CXX_CONFIG
6901 # _LT_FUNC_STRIPNAME_CNF
6902 # ----------------------
6903 # func_stripname_cnf prefix suffix name
6904 # strip PREFIX and SUFFIX off of NAME.
6905 # PREFIX and SUFFIX must not contain globbing or regex special
6906 # characters, hashes, percent signs, but SUFFIX may contain a leading
6907 # dot (in which case that matches only a dot).
6909 # This function is identical to the (non-XSI) version of func_stripname,
6910 # except this one can be used by m4 code that may be executed by configure,
6911 # rather than the libtool script.
6912 m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6913 AC_REQUIRE([_LT_DECL_SED])
6914 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6915 func_stripname_cnf ()
6918 .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6919 *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6921 } # func_stripname_cnf
6922 ])# _LT_FUNC_STRIPNAME_CNF
6924 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6925 # ---------------------------------
6926 # Figure out "hidden" library dependencies from verbose
6927 # compiler output when linking a shared library.
6928 # Parse the compiler output and extract the necessary
6929 # objects, libraries and library flags.
6930 m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6931 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6932 AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
6933 # Dependencies to place before and after the object being linked:
6934 _LT_TAGVAR(predep_objects, $1)=
6935 _LT_TAGVAR(postdep_objects, $1)=
6936 _LT_TAGVAR(predeps, $1)=
6937 _LT_TAGVAR(postdeps, $1)=
6938 _LT_TAGVAR(compiler_lib_search_path, $1)=
6940 dnl we can't use the lt_simple_compile_test_code here,
6941 dnl because it contains code intended for an executable,
6942 dnl not a library. It's possible we should let each
6943 dnl tag define a new lt_????_link_test_code variable,
6944 dnl but it's only used here...
6945 m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6947 void foo (void) { a = 0; }
6949 ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6953 Foo (void) { a = 0; }
6958 ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6966 ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6974 ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6977 public void bar (void) {
6982 ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
6989 _lt_libdeps_save_CFLAGS=$CFLAGS
6990 case "$CC $CFLAGS " in #(
6991 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
6992 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
6993 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
6996 dnl Parse the compiler output and extract the necessary
6997 dnl objects, libraries and library flags.
6998 if AC_TRY_EVAL(ac_compile); then
6999 # Parse the compiler output and extract the necessary
7000 # objects, libraries and library flags.
7002 # Sentinel used to keep track of whether or not we are before
7003 # the conftest object file.
7004 pre_test_object_deps_done=no
7006 for p in `eval "$output_verbose_link_cmd"`; do
7010 # Some compilers place space between "-{L,R}" and the path.
7012 if test $p = "-L" ||
7013 test $p = "-R"; then
7018 # Expand the sysroot to ease extracting the directories later.
7019 if test -z "$prev"; then
7021 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7022 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7023 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7027 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7029 if test "$pre_test_object_deps_done" = no; then
7032 # Internal compiler library paths should come after those
7033 # provided the user. The postdeps already come after the
7034 # user supplied libs so there is no need to process them.
7035 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7036 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
7038 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
7041 # The "-l" case would never come before the object being
7042 # linked, so don't bother handling this case.
7045 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7046 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
7048 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
7054 *.lto.$objext) ;; # Ignore GCC LTO objects
7056 # This assumes that the test object file only shows up
7057 # once in the compiler output.
7058 if test "$p" = "conftest.$objext"; then
7059 pre_test_object_deps_done=yes
7063 if test "$pre_test_object_deps_done" = no; then
7064 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7065 _LT_TAGVAR(predep_objects, $1)="$p"
7067 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7070 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7071 _LT_TAGVAR(postdep_objects, $1)="$p"
7073 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7078 *) ;; # Ignore the rest.
7086 echo "libtool.m4: error: problem compiling $1 test program"
7089 $RM -f confest.$objext
7090 CFLAGS=$_lt_libdeps_save_CFLAGS
7092 # PORTME: override above test on systems where it is broken
7096 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7097 # hack all around it, let's just trust "g++" to DTRT.
7098 _LT_TAGVAR(predep_objects,$1)=
7099 _LT_TAGVAR(postdep_objects,$1)=
7100 _LT_TAGVAR(postdeps,$1)=
7104 case `$CC -V 2>&1 | sed 5q` in
7108 # The more standards-conforming stlport4 library is
7109 # incompatible with the Cstd library. Avoid specifying
7110 # it if it's in CXXFLAGS. Ignore libCrun as
7111 # -library=stlport4 depends on it.
7112 case " $CXX $CXXFLAGS " in
7113 *" -library=stlport4 "*)
7114 solaris_use_stlport4=yes
7118 if test "$solaris_use_stlport4" != yes; then
7119 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7126 case $cc_basename in
7128 # The more standards-conforming stlport4 library is
7129 # incompatible with the Cstd library. Avoid specifying
7130 # it if it's in CXXFLAGS. Ignore libCrun as
7131 # -library=stlport4 depends on it.
7132 case " $CXX $CXXFLAGS " in
7133 *" -library=stlport4 "*)
7134 solaris_use_stlport4=yes
7138 # Adding this requires a known-good setup of shared libraries for
7139 # Sun compiler versions before 5.6, else PIC objects from an old
7140 # archive will be linked into the output, leading to subtle bugs.
7141 if test "$solaris_use_stlport4" != yes; then
7142 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7150 case " $_LT_TAGVAR(postdeps, $1) " in
7151 *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7153 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7154 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7155 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
7157 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7158 [The directories searched by this compiler when creating a shared library])
7159 _LT_TAGDECL([], [predep_objects], [1],
7160 [Dependencies to place before and after the objects being linked to
7161 create a shared library])
7162 _LT_TAGDECL([], [postdep_objects], [1])
7163 _LT_TAGDECL([], [predeps], [1])
7164 _LT_TAGDECL([], [postdeps], [1])
7165 _LT_TAGDECL([], [compiler_lib_search_path], [1],
7166 [The library search path used internally by the compiler when linking
7168 ])# _LT_SYS_HIDDEN_LIBDEPS
7171 # _LT_LANG_F77_CONFIG([TAG])
7172 # --------------------------
7173 # Ensure that the configuration variables for a Fortran 77 compiler are
7174 # suitably defined. These variables are subsequently used by _LT_CONFIG
7175 # to write the compiler configuration to `libtool'.
7176 m4_defun([_LT_LANG_F77_CONFIG],
7177 [AC_LANG_PUSH(Fortran 77)
7178 if test -z "$F77" || test "X$F77" = "Xno"; then
7182 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7183 _LT_TAGVAR(allow_undefined_flag, $1)=
7184 _LT_TAGVAR(always_export_symbols, $1)=no
7185 _LT_TAGVAR(archive_expsym_cmds, $1)=
7186 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7187 _LT_TAGVAR(hardcode_direct, $1)=no
7188 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7189 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7190 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7191 _LT_TAGVAR(hardcode_minus_L, $1)=no
7192 _LT_TAGVAR(hardcode_automatic, $1)=no
7193 _LT_TAGVAR(inherit_rpath, $1)=no
7194 _LT_TAGVAR(module_cmds, $1)=
7195 _LT_TAGVAR(module_expsym_cmds, $1)=
7196 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7197 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7198 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7199 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7200 _LT_TAGVAR(no_undefined_flag, $1)=
7201 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7202 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7204 # Source file extension for f77 test sources.
7207 # Object file extension for compiled f77 test sources.
7209 _LT_TAGVAR(objext, $1)=$objext
7211 # No sense in running all these tests if we already determined that
7212 # the F77 compiler isn't working. Some variables (like enable_shared)
7213 # are currently assumed to apply to all compilers on this platform,
7214 # and will be corrupted by setting them based on a non-working compiler.
7215 if test "$_lt_disable_F77" != yes; then
7216 # Code to be used in simple compile tests
7217 lt_simple_compile_test_code="\
7223 # Code to be used in simple link tests
7224 lt_simple_link_test_code="\
7229 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7232 # save warnings/boilerplate of simple test code
7233 _LT_COMPILER_BOILERPLATE
7234 _LT_LINKER_BOILERPLATE
7236 # Allow CC to be a program name with arguments.
7239 lt_save_CFLAGS=$CFLAGS
7243 _LT_TAGVAR(compiler, $1)=$CC
7244 _LT_CC_BASENAME([$compiler])
7246 if test -n "$compiler"; then
7247 AC_MSG_CHECKING([if libtool supports shared libraries])
7248 AC_MSG_RESULT([$can_build_shared])
7250 AC_MSG_CHECKING([whether to build shared libraries])
7251 test "$can_build_shared" = "no" && enable_shared=no
7253 # On AIX, shared libraries and static libraries use the same namespace, and
7254 # are all built from PIC.
7257 test "$enable_shared" = yes && enable_static=no
7258 if test -n "$RANLIB"; then
7259 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7260 postinstall_cmds='$RANLIB $lib'
7264 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7265 test "$enable_shared" = yes && enable_static=no
7269 AC_MSG_RESULT([$enable_shared])
7271 AC_MSG_CHECKING([whether to build static libraries])
7272 # Make sure either enable_shared or enable_static is yes.
7273 test "$enable_shared" = yes || enable_static=yes
7274 AC_MSG_RESULT([$enable_static])
7276 _LT_TAGVAR(GCC, $1)="$G77"
7277 _LT_TAGVAR(LD, $1)="$LD"
7280 ## There is no encapsulation within the following macros, do not change
7281 ## the running order or otherwise move them around unless you know exactly
7282 ## what you are doing...
7283 _LT_COMPILER_PIC($1)
7284 _LT_COMPILER_C_O($1)
7285 _LT_COMPILER_FILE_LOCKS($1)
7286 _LT_LINKER_SHLIBS($1)
7287 _LT_SYS_DYNAMIC_LINKER($1)
7288 _LT_LINKER_HARDCODE_LIBPATH($1)
7291 fi # test -n "$compiler"
7295 CFLAGS="$lt_save_CFLAGS"
7296 fi # test "$_lt_disable_F77" != yes
7299 ])# _LT_LANG_F77_CONFIG
7302 # _LT_LANG_FC_CONFIG([TAG])
7303 # -------------------------
7304 # Ensure that the configuration variables for a Fortran compiler are
7305 # suitably defined. These variables are subsequently used by _LT_CONFIG
7306 # to write the compiler configuration to `libtool'.
7307 m4_defun([_LT_LANG_FC_CONFIG],
7308 [AC_LANG_PUSH(Fortran)
7310 if test -z "$FC" || test "X$FC" = "Xno"; then
7314 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7315 _LT_TAGVAR(allow_undefined_flag, $1)=
7316 _LT_TAGVAR(always_export_symbols, $1)=no
7317 _LT_TAGVAR(archive_expsym_cmds, $1)=
7318 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7319 _LT_TAGVAR(hardcode_direct, $1)=no
7320 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7321 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7322 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7323 _LT_TAGVAR(hardcode_minus_L, $1)=no
7324 _LT_TAGVAR(hardcode_automatic, $1)=no
7325 _LT_TAGVAR(inherit_rpath, $1)=no
7326 _LT_TAGVAR(module_cmds, $1)=
7327 _LT_TAGVAR(module_expsym_cmds, $1)=
7328 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7329 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7330 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7331 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7332 _LT_TAGVAR(no_undefined_flag, $1)=
7333 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7334 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7336 # Source file extension for fc test sources.
7337 ac_ext=${ac_fc_srcext-f}
7339 # Object file extension for compiled fc test sources.
7341 _LT_TAGVAR(objext, $1)=$objext
7343 # No sense in running all these tests if we already determined that
7344 # the FC compiler isn't working. Some variables (like enable_shared)
7345 # are currently assumed to apply to all compilers on this platform,
7346 # and will be corrupted by setting them based on a non-working compiler.
7347 if test "$_lt_disable_FC" != yes; then
7348 # Code to be used in simple compile tests
7349 lt_simple_compile_test_code="\
7355 # Code to be used in simple link tests
7356 lt_simple_link_test_code="\
7361 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7364 # save warnings/boilerplate of simple test code
7365 _LT_COMPILER_BOILERPLATE
7366 _LT_LINKER_BOILERPLATE
7368 # Allow CC to be a program name with arguments.
7371 lt_save_CFLAGS=$CFLAGS
7375 GCC=$ac_cv_fc_compiler_gnu
7377 _LT_TAGVAR(compiler, $1)=$CC
7378 _LT_CC_BASENAME([$compiler])
7380 if test -n "$compiler"; then
7381 AC_MSG_CHECKING([if libtool supports shared libraries])
7382 AC_MSG_RESULT([$can_build_shared])
7384 AC_MSG_CHECKING([whether to build shared libraries])
7385 test "$can_build_shared" = "no" && enable_shared=no
7387 # On AIX, shared libraries and static libraries use the same namespace, and
7388 # are all built from PIC.
7391 test "$enable_shared" = yes && enable_static=no
7392 if test -n "$RANLIB"; then
7393 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7394 postinstall_cmds='$RANLIB $lib'
7398 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7399 test "$enable_shared" = yes && enable_static=no
7403 AC_MSG_RESULT([$enable_shared])
7405 AC_MSG_CHECKING([whether to build static libraries])
7406 # Make sure either enable_shared or enable_static is yes.
7407 test "$enable_shared" = yes || enable_static=yes
7408 AC_MSG_RESULT([$enable_static])
7410 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
7411 _LT_TAGVAR(LD, $1)="$LD"
7414 ## There is no encapsulation within the following macros, do not change
7415 ## the running order or otherwise move them around unless you know exactly
7416 ## what you are doing...
7417 _LT_SYS_HIDDEN_LIBDEPS($1)
7418 _LT_COMPILER_PIC($1)
7419 _LT_COMPILER_C_O($1)
7420 _LT_COMPILER_FILE_LOCKS($1)
7421 _LT_LINKER_SHLIBS($1)
7422 _LT_SYS_DYNAMIC_LINKER($1)
7423 _LT_LINKER_HARDCODE_LIBPATH($1)
7426 fi # test -n "$compiler"
7430 CFLAGS=$lt_save_CFLAGS
7431 fi # test "$_lt_disable_FC" != yes
7434 ])# _LT_LANG_FC_CONFIG
7437 # _LT_LANG_GCJ_CONFIG([TAG])
7438 # --------------------------
7439 # Ensure that the configuration variables for the GNU Java Compiler compiler
7440 # are suitably defined. These variables are subsequently used by _LT_CONFIG
7441 # to write the compiler configuration to `libtool'.
7442 m4_defun([_LT_LANG_GCJ_CONFIG],
7443 [AC_REQUIRE([LT_PROG_GCJ])dnl
7446 # Source file extension for Java test sources.
7449 # Object file extension for compiled Java test sources.
7451 _LT_TAGVAR(objext, $1)=$objext
7453 # Code to be used in simple compile tests
7454 lt_simple_compile_test_code="class foo {}"
7456 # Code to be used in simple link tests
7457 lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7459 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7462 # save warnings/boilerplate of simple test code
7463 _LT_COMPILER_BOILERPLATE
7464 _LT_LINKER_BOILERPLATE
7466 # Allow CC to be a program name with arguments.
7468 lt_save_CFLAGS=$CFLAGS
7474 _LT_TAGVAR(compiler, $1)=$CC
7475 _LT_TAGVAR(LD, $1)="$LD"
7476 _LT_CC_BASENAME([$compiler])
7478 # GCJ did not exist at the time GCC didn't implicitly link libc in.
7479 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7481 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7482 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7483 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7485 if test -n "$compiler"; then
7486 _LT_COMPILER_NO_RTTI($1)
7487 _LT_COMPILER_PIC($1)
7488 _LT_COMPILER_C_O($1)
7489 _LT_COMPILER_FILE_LOCKS($1)
7490 _LT_LINKER_SHLIBS($1)
7491 _LT_LINKER_HARDCODE_LIBPATH($1)
7500 CFLAGS=$lt_save_CFLAGS
7501 ])# _LT_LANG_GCJ_CONFIG
7504 # _LT_LANG_GO_CONFIG([TAG])
7505 # --------------------------
7506 # Ensure that the configuration variables for the GNU Go compiler
7507 # are suitably defined. These variables are subsequently used by _LT_CONFIG
7508 # to write the compiler configuration to `libtool'.
7509 m4_defun([_LT_LANG_GO_CONFIG],
7510 [AC_REQUIRE([LT_PROG_GO])dnl
7513 # Source file extension for Go test sources.
7516 # Object file extension for compiled Go test sources.
7518 _LT_TAGVAR(objext, $1)=$objext
7520 # Code to be used in simple compile tests
7521 lt_simple_compile_test_code="package main; func main() { }"
7523 # Code to be used in simple link tests
7524 lt_simple_link_test_code='package main; func main() { }'
7526 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7529 # save warnings/boilerplate of simple test code
7530 _LT_COMPILER_BOILERPLATE
7531 _LT_LINKER_BOILERPLATE
7533 # Allow CC to be a program name with arguments.
7535 lt_save_CFLAGS=$CFLAGS
7541 _LT_TAGVAR(compiler, $1)=$CC
7542 _LT_TAGVAR(LD, $1)="$LD"
7543 _LT_CC_BASENAME([$compiler])
7545 # Go did not exist at the time GCC didn't implicitly link libc in.
7546 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7548 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7549 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7550 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7552 if test -n "$compiler"; then
7553 _LT_COMPILER_NO_RTTI($1)
7554 _LT_COMPILER_PIC($1)
7555 _LT_COMPILER_C_O($1)
7556 _LT_COMPILER_FILE_LOCKS($1)
7557 _LT_LINKER_SHLIBS($1)
7558 _LT_LINKER_HARDCODE_LIBPATH($1)
7567 CFLAGS=$lt_save_CFLAGS
7568 ])# _LT_LANG_GO_CONFIG
7571 # _LT_LANG_RC_CONFIG([TAG])
7572 # -------------------------
7573 # Ensure that the configuration variables for the Windows resource compiler
7574 # are suitably defined. These variables are subsequently used by _LT_CONFIG
7575 # to write the compiler configuration to `libtool'.
7576 m4_defun([_LT_LANG_RC_CONFIG],
7577 [AC_REQUIRE([LT_PROG_RC])dnl
7580 # Source file extension for RC test sources.
7583 # Object file extension for compiled RC test sources.
7585 _LT_TAGVAR(objext, $1)=$objext
7587 # Code to be used in simple compile tests
7588 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
7590 # Code to be used in simple link tests
7591 lt_simple_link_test_code="$lt_simple_compile_test_code"
7593 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7596 # save warnings/boilerplate of simple test code
7597 _LT_COMPILER_BOILERPLATE
7598 _LT_LINKER_BOILERPLATE
7600 # Allow CC to be a program name with arguments.
7602 lt_save_CFLAGS=$CFLAGS
7608 _LT_TAGVAR(compiler, $1)=$CC
7609 _LT_CC_BASENAME([$compiler])
7610 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
7612 if test -n "$compiler"; then
7620 CFLAGS=$lt_save_CFLAGS
7621 ])# _LT_LANG_RC_CONFIG
7626 AC_DEFUN([LT_PROG_GCJ],
7627 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
7628 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
7629 [AC_CHECK_TOOL(GCJ, gcj,)
7630 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
7631 AC_SUBST(GCJFLAGS)])])[]dnl
7635 AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7636 dnl aclocal-1.4 backwards compatibility:
7637 dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
7642 AC_DEFUN([LT_PROG_GO],
7643 [AC_CHECK_TOOL(GOC, gccgo,)
7649 AC_DEFUN([LT_PROG_RC],
7650 [AC_CHECK_TOOL(RC, windres,)
7654 AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7655 dnl aclocal-1.4 backwards compatibility:
7656 dnl AC_DEFUN([LT_AC_PROG_RC], [])
7661 # If we don't have a new enough Autoconf to choose the best grep
7662 # available, choose the one first in the user's PATH.
7663 m4_defun([_LT_DECL_EGREP],
7664 [AC_REQUIRE([AC_PROG_EGREP])dnl
7665 AC_REQUIRE([AC_PROG_FGREP])dnl
7666 test -z "$GREP" && GREP=grep
7667 _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7668 _LT_DECL([], [EGREP], [1], [An ERE matcher])
7669 _LT_DECL([], [FGREP], [1], [A literal string matcher])
7670 dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7677 # If we don't have a new enough Autoconf to choose the best objdump
7678 # available, choose the one first in the user's PATH.
7679 m4_defun([_LT_DECL_OBJDUMP],
7680 [AC_CHECK_TOOL(OBJDUMP, objdump, false)
7681 test -z "$OBJDUMP" && OBJDUMP=objdump
7682 _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7688 # Ensure DLLTOOL variable is set.
7689 m4_defun([_LT_DECL_DLLTOOL],
7690 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7691 test -z "$DLLTOOL" && DLLTOOL=dlltool
7692 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7698 # Check for a fully-functional sed program, that truncates
7699 # as few characters as possible. Prefer GNU sed if found.
7700 m4_defun([_LT_DECL_SED],
7702 test -z "$SED" && SED=sed
7703 Xsed="$SED -e 1s/^X//"
7704 _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7705 _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7706 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7709 m4_ifndef([AC_PROG_SED], [
7710 # NOTE: This macro has been submitted for inclusion into #
7711 # GNU Autoconf as AC_PROG_SED. When it is available in #
7712 # a released version of Autoconf we should remove this #
7713 # macro and use it instead. #
7715 m4_defun([AC_PROG_SED],
7716 [AC_MSG_CHECKING([for a sed that does not truncate output])
7717 AC_CACHE_VAL(lt_cv_path_SED,
7718 [# Loop through the user's path and test for sed and gsed.
7719 # Then use that list of sed's as ones to test for truncation.
7720 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7724 test -z "$as_dir" && as_dir=.
7725 for lt_ac_prog in sed gsed; do
7726 for ac_exec_ext in '' $ac_executable_extensions; do
7727 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7728 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
7736 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
7737 # along with /bin/sed that truncates output.
7738 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
7739 test ! -f $lt_ac_sed && continue
7740 cat /dev/null > conftest.in
7742 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7743 # Check for GNU sed and select it if it is found.
7744 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7745 lt_cv_path_SED=$lt_ac_sed
7749 cat conftest.in conftest.in >conftest.tmp
7750 mv conftest.tmp conftest.in
7751 cp conftest.in conftest.nl
7753 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7754 cmp -s conftest.out conftest.nl || break
7755 # 10000 chars as input seems more than enough
7756 test $lt_ac_count -gt 10 && break
7757 lt_ac_count=`expr $lt_ac_count + 1`
7758 if test $lt_ac_count -gt $lt_ac_max; then
7759 lt_ac_max=$lt_ac_count
7760 lt_cv_path_SED=$lt_ac_sed
7767 AC_MSG_RESULT([$SED])
7772 AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7773 dnl aclocal-1.4 backwards compatibility:
7774 dnl AC_DEFUN([LT_AC_PROG_SED], [])
7777 # _LT_CHECK_SHELL_FEATURES
7778 # ------------------------
7779 # Find out whether the shell is Bourne or XSI compatible,
7780 # or has some other useful features.
7781 m4_defun([_LT_CHECK_SHELL_FEATURES],
7782 [AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7783 # Try some XSI features
7786 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7788 && eval 'test $(( 1 + 1 )) -eq 2 \
7789 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7791 AC_MSG_RESULT([$xsi_shell])
7792 _LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7794 AC_MSG_CHECKING([whether the shell understands "+="])
7796 ( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7798 && lt_shell_append=yes
7799 AC_MSG_RESULT([$lt_shell_append])
7800 _LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7802 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7807 _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7809 # test EBCDIC or ASCII
7810 case `echo X|tr X '\101'` in
7811 A) # ASCII based system
7812 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7813 lt_SP2NL='tr \040 \012'
7814 lt_NL2SP='tr \015\012 \040\040'
7816 *) # EBCDIC based system
7817 lt_SP2NL='tr \100 \n'
7818 lt_NL2SP='tr \r\n \100\100'
7821 _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7822 _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7823 ])# _LT_CHECK_SHELL_FEATURES
7826 # _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7827 # ------------------------------------------------------
7828 # In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7829 # '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7830 m4_defun([_LT_PROG_FUNCTION_REPLACE],
7832 sed -e '/^$1 ()$/,/^} # $1 /c\
7835 m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
7836 } # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7837 && mv -f "$cfgfile.tmp" "$cfgfile" \
7838 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7839 test 0 -eq $? || _lt_function_replace_fail=:
7843 # _LT_PROG_REPLACE_SHELLFNS
7844 # -------------------------
7845 # Replace existing portable implementations of several shell functions with
7846 # equivalent extended shell implementations where those features are available..
7847 m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7848 [if test x"$xsi_shell" = xyes; then
7849 _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7851 */*) func_dirname_result="${1%/*}${2}" ;;
7852 * ) func_dirname_result="${3}" ;;
7855 _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7856 func_basename_result="${1##*/}"])
7858 _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7860 */*) func_dirname_result="${1%/*}${2}" ;;
7861 * ) func_dirname_result="${3}" ;;
7863 func_basename_result="${1##*/}"])
7865 _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7866 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7867 # positional parameters, so assign one to ordinary parameter first.
7868 func_stripname_result=${3}
7869 func_stripname_result=${func_stripname_result#"${1}"}
7870 func_stripname_result=${func_stripname_result%"${2}"}])
7872 _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7873 func_split_long_opt_name=${1%%=*}
7874 func_split_long_opt_arg=${1#*=}])
7876 _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7877 func_split_short_opt_arg=${1#??}
7878 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
7880 _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7882 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7883 *) func_lo2o_result=${1} ;;
7886 _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
7888 _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
7890 _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
7893 if test x"$lt_shell_append" = xyes; then
7894 _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
7896 _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7897 func_quote_for_eval "${2}"
7898 dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7899 eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
7901 # Save a `func_append' function call where possible by direct use of '+='
7902 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7903 && mv -f "$cfgfile.tmp" "$cfgfile" \
7904 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7905 test 0 -eq $? || _lt_function_replace_fail=:
7907 # Save a `func_append' function call even when '+=' is not available
7908 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7909 && mv -f "$cfgfile.tmp" "$cfgfile" \
7910 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7911 test 0 -eq $? || _lt_function_replace_fail=:
7914 if test x"$_lt_function_replace_fail" = x":"; then
7915 AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7919 # _LT_PATH_CONVERSION_FUNCTIONS
7920 # -----------------------------
7921 # Determine which file name conversion functions should be used by
7922 # func_to_host_file (and, implicitly, by func_to_host_path). These are needed
7923 # for certain cross-compile configurations and native mingw.
7924 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7925 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
7926 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7927 AC_MSG_CHECKING([how to convert $build file names to $host format])
7928 AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7932 *-*-mingw* ) # actually msys
7933 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7936 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7938 * ) # otherwise, assume *nix
7939 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7945 *-*-mingw* ) # actually msys
7946 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7949 lt_cv_to_host_file_cmd=func_convert_file_noop
7951 * ) # otherwise, assume *nix
7952 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7956 * ) # unhandled hosts (and "normal" native builds)
7957 lt_cv_to_host_file_cmd=func_convert_file_noop
7961 to_host_file_cmd=$lt_cv_to_host_file_cmd
7962 AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7963 _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7964 [0], [convert $build file names to $host format])dnl
7966 AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7967 AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7968 [#assume ordinary cross tools, or native build.
7969 lt_cv_to_tool_file_cmd=func_convert_file_noop
7973 *-*-mingw* ) # actually msys
7974 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7980 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7981 AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7982 _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
7983 [0], [convert $build files to toolchain format])dnl
7984 ])# _LT_PATH_CONVERSION_FUNCTIONS
7986 # Helper functions for option handling. -*- Autoconf -*-
7988 # Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
7990 # Written by Gary V. Vaughan, 2004
7992 # This file is free software; the Free Software Foundation gives
7993 # unlimited permission to copy and/or distribute it, with or without
7994 # modifications, as long as this notice is preserved.
7996 # serial 7 ltoptions.m4
7998 # This is to help aclocal find these macros, as it can't see m4_define.
7999 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8002 # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8003 # ------------------------------------------
8004 m4_define([_LT_MANGLE_OPTION],
8005 [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8008 # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8009 # ---------------------------------------
8010 # Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8011 # matching handler defined, dispatch to it. Other OPTION-NAMEs are
8013 m4_define([_LT_SET_OPTION],
8014 [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8015 m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8016 _LT_MANGLE_DEFUN([$1], [$2]),
8017 [m4_warning([Unknown $1 option `$2'])])[]dnl
8021 # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8022 # ------------------------------------------------------------
8023 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8024 m4_define([_LT_IF_OPTION],
8025 [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8028 # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8029 # -------------------------------------------------------
8030 # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8032 m4_define([_LT_UNLESS_OPTIONS],
8033 [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8034 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8035 [m4_define([$0_found])])])[]dnl
8036 m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8041 # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8042 # ----------------------------------------
8043 # OPTION-LIST is a space-separated list of Libtool options associated
8044 # with MACRO-NAME. If any OPTION has a matching handler declared with
8045 # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8046 # the unknown option and exit.
8047 m4_defun([_LT_SET_OPTIONS],
8049 m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8050 [_LT_SET_OPTION([$1], _LT_Option)])
8052 m4_if([$1],[LT_INIT],[
8054 dnl Simply set some default values (i.e off) if boolean options were not
8056 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8058 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8061 dnl If no reference was made to various pairs of opposing options, then
8062 dnl we run the default mode handler for the pair. For example, if neither
8063 dnl `shared' nor `disable-shared' was passed, we enable building of shared
8064 dnl archives by default:
8065 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8066 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8067 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8068 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8069 [_LT_ENABLE_FAST_INSTALL])
8075 # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8076 # -----------------------------------------
8077 m4_define([_LT_MANGLE_DEFUN],
8078 [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8081 # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8082 # -----------------------------------------------
8083 m4_define([LT_OPTION_DEFINE],
8084 [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8085 ])# LT_OPTION_DEFINE
8090 LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8093 AU_DEFUN([AC_LIBTOOL_DLOPEN],
8094 [_LT_SET_OPTION([LT_INIT], [dlopen])
8095 AC_DIAGNOSE([obsolete],
8096 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8097 put the `dlopen' option into LT_INIT's first parameter.])
8100 dnl aclocal-1.4 backwards compatibility:
8101 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8106 # Declare package support for building win32 dll's.
8107 LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8108 [enable_win32_dll=yes
8111 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8112 AC_CHECK_TOOL(AS, as, false)
8113 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8114 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8118 test -z "$AS" && AS=as
8119 _LT_DECL([], [AS], [1], [Assembler program])dnl
8121 test -z "$DLLTOOL" && DLLTOOL=dlltool
8122 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8124 test -z "$OBJDUMP" && OBJDUMP=objdump
8125 _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8128 AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8129 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8130 _LT_SET_OPTION([LT_INIT], [win32-dll])
8131 AC_DIAGNOSE([obsolete],
8132 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8133 put the `win32-dll' option into LT_INIT's first parameter.])
8136 dnl aclocal-1.4 backwards compatibility:
8137 dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8140 # _LT_ENABLE_SHARED([DEFAULT])
8141 # ----------------------------
8142 # implement the --enable-shared flag, and supports the `shared' and
8143 # `disable-shared' LT_INIT options.
8144 # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8145 m4_define([_LT_ENABLE_SHARED],
8146 [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8147 AC_ARG_ENABLE([shared],
8148 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8149 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8150 [p=${PACKAGE-default}
8152 yes) enable_shared=yes ;;
8153 no) enable_shared=no ;;
8156 # Look at the argument we got. We use all the common list separators.
8157 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8158 for pkg in $enableval; do
8160 if test "X$pkg" = "X$p"; then
8167 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8169 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8170 [Whether or not to build shared libraries])
8171 ])# _LT_ENABLE_SHARED
8173 LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8174 LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8177 AC_DEFUN([AC_ENABLE_SHARED],
8178 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8181 AC_DEFUN([AC_DISABLE_SHARED],
8182 [_LT_SET_OPTION([LT_INIT], [disable-shared])
8185 AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8186 AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8188 dnl aclocal-1.4 backwards compatibility:
8189 dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8190 dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8194 # _LT_ENABLE_STATIC([DEFAULT])
8195 # ----------------------------
8196 # implement the --enable-static flag, and support the `static' and
8197 # `disable-static' LT_INIT options.
8198 # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8199 m4_define([_LT_ENABLE_STATIC],
8200 [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8201 AC_ARG_ENABLE([static],
8202 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8203 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8204 [p=${PACKAGE-default}
8206 yes) enable_static=yes ;;
8207 no) enable_static=no ;;
8210 # Look at the argument we got. We use all the common list separators.
8211 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8212 for pkg in $enableval; do
8214 if test "X$pkg" = "X$p"; then
8221 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8223 _LT_DECL([build_old_libs], [enable_static], [0],
8224 [Whether or not to build static libraries])
8225 ])# _LT_ENABLE_STATIC
8227 LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8228 LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8231 AC_DEFUN([AC_ENABLE_STATIC],
8232 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8235 AC_DEFUN([AC_DISABLE_STATIC],
8236 [_LT_SET_OPTION([LT_INIT], [disable-static])
8239 AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8240 AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8242 dnl aclocal-1.4 backwards compatibility:
8243 dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8244 dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8248 # _LT_ENABLE_FAST_INSTALL([DEFAULT])
8249 # ----------------------------------
8250 # implement the --enable-fast-install flag, and support the `fast-install'
8251 # and `disable-fast-install' LT_INIT options.
8252 # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8253 m4_define([_LT_ENABLE_FAST_INSTALL],
8254 [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8255 AC_ARG_ENABLE([fast-install],
8256 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8257 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8258 [p=${PACKAGE-default}
8260 yes) enable_fast_install=yes ;;
8261 no) enable_fast_install=no ;;
8263 enable_fast_install=no
8264 # Look at the argument we got. We use all the common list separators.
8265 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8266 for pkg in $enableval; do
8268 if test "X$pkg" = "X$p"; then
8269 enable_fast_install=yes
8275 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8277 _LT_DECL([fast_install], [enable_fast_install], [0],
8278 [Whether or not to optimize for fast installation])dnl
8279 ])# _LT_ENABLE_FAST_INSTALL
8281 LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8282 LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8285 AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8286 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8287 AC_DIAGNOSE([obsolete],
8288 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8289 the `fast-install' option into LT_INIT's first parameter.])
8292 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8293 [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8294 AC_DIAGNOSE([obsolete],
8295 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8296 the `disable-fast-install' option into LT_INIT's first parameter.])
8299 dnl aclocal-1.4 backwards compatibility:
8300 dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8301 dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8304 # _LT_WITH_PIC([MODE])
8305 # --------------------
8306 # implement the --with-pic flag, and support the `pic-only' and `no-pic'
8308 # MODE is either `yes' or `no'. If omitted, it defaults to `both'.
8309 m4_define([_LT_WITH_PIC],
8311 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8312 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8313 [lt_p=${PACKAGE-default}
8315 yes|no) pic_mode=$withval ;;
8318 # Look at the argument we got. We use all the common list separators.
8319 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8320 for lt_pkg in $withval; do
8322 if test "X$lt_pkg" = "X$lt_p"; then
8331 test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
8333 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8336 LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8337 LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8340 AU_DEFUN([AC_LIBTOOL_PICMODE],
8341 [_LT_SET_OPTION([LT_INIT], [pic-only])
8342 AC_DIAGNOSE([obsolete],
8343 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8344 put the `pic-only' option into LT_INIT's first parameter.])
8347 dnl aclocal-1.4 backwards compatibility:
8348 dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8351 m4_define([_LTDL_MODE], [])
8352 LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8353 [m4_define([_LTDL_MODE], [nonrecursive])])
8354 LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8355 [m4_define([_LTDL_MODE], [recursive])])
8356 LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8357 [m4_define([_LTDL_MODE], [subproject])])
8359 m4_define([_LTDL_TYPE], [])
8360 LT_OPTION_DEFINE([LTDL_INIT], [installable],
8361 [m4_define([_LTDL_TYPE], [installable])])
8362 LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8363 [m4_define([_LTDL_TYPE], [convenience])])
8365 # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8367 # Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
8368 # Written by Gary V. Vaughan, 2004
8370 # This file is free software; the Free Software Foundation gives
8371 # unlimited permission to copy and/or distribute it, with or without
8372 # modifications, as long as this notice is preserved.
8374 # serial 6 ltsugar.m4
8376 # This is to help aclocal find these macros, as it can't see m4_define.
8377 AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8380 # lt_join(SEP, ARG1, [ARG2...])
8381 # -----------------------------
8382 # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8383 # associated separator.
8384 # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8385 # versions in m4sugar had bugs.
8386 m4_define([lt_join],
8387 [m4_if([$#], [1], [],
8389 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8390 m4_define([_lt_join],
8391 [m4_if([$#$2], [2], [],
8392 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8398 # Manipulate m4 lists.
8399 # These macros are necessary as long as will still need to support
8400 # Autoconf-2.59 which quotes differently.
8401 m4_define([lt_car], [[$1]])
8403 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8405 [m4_dquote(m4_shift($@))])])
8406 m4_define([lt_unquote], $1)
8409 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
8410 # ------------------------------------------
8411 # Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
8412 # Note that neither SEPARATOR nor STRING are expanded; they are appended
8413 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8414 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
8415 # than defined and empty).
8417 # This macro is needed until we can rely on Autoconf 2.62, since earlier
8418 # versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8419 m4_define([lt_append],
8421 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8425 # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8426 # ----------------------------------------------------------
8427 # Produce a SEP delimited list of all paired combinations of elements of
8428 # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8429 # has the form PREFIXmINFIXSUFFIXn.
8430 # Needed until we can rely on m4_combine added in Autoconf 2.62.
8431 m4_define([lt_combine],
8432 [m4_if(m4_eval([$# > 3]), [1],
8433 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8434 [[m4_foreach([_Lt_prefix], [$2],
8435 [m4_foreach([_Lt_suffix],
8436 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8437 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8440 # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8441 # -----------------------------------------------------------------------
8442 # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8443 # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8444 m4_define([lt_if_append_uniq],
8446 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8447 [lt_append([$1], [$2], [$3])$4],
8449 [lt_append([$1], [$2], [$3])$4])])
8452 # lt_dict_add(DICT, KEY, VALUE)
8453 # -----------------------------
8454 m4_define([lt_dict_add],
8455 [m4_define([$1($2)], [$3])])
8458 # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8459 # --------------------------------------------
8460 m4_define([lt_dict_add_subkey],
8461 [m4_define([$1($2:$3)], [$4])])
8464 # lt_dict_fetch(DICT, KEY, [SUBKEY])
8465 # ----------------------------------
8466 m4_define([lt_dict_fetch],
8468 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8469 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8472 # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8473 # -----------------------------------------------------------------
8474 m4_define([lt_if_dict_fetch],
8475 [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8480 # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8481 # --------------------------------------------------------------
8482 m4_define([lt_dict_filter],
8483 [m4_if([$5], [], [],
8484 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8485 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8486 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8489 # ltversion.m4 -- version numbers -*- Autoconf -*-
8491 # Copyright (C) 2004 Free Software Foundation, Inc.
8492 # Written by Scott James Remnant, 2004
8494 # This file is free software; the Free Software Foundation gives
8495 # unlimited permission to copy and/or distribute it, with or without
8496 # modifications, as long as this notice is preserved.
8500 # serial 3337 ltversion.m4
8501 # This file is part of GNU Libtool
8503 m4_define([LT_PACKAGE_VERSION], [2.4.2])
8504 m4_define([LT_PACKAGE_REVISION], [1.3337])
8506 AC_DEFUN([LTVERSION_VERSION],
8507 [macro_version='2.4.2'
8508 macro_revision='1.3337'
8509 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8510 _LT_DECL(, macro_revision, 0)
8513 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8515 # Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
8516 # Written by Scott James Remnant, 2004.
8518 # This file is free software; the Free Software Foundation gives
8519 # unlimited permission to copy and/or distribute it, with or without
8520 # modifications, as long as this notice is preserved.
8522 # serial 5 lt~obsolete.m4
8524 # These exist entirely to fool aclocal when bootstrapping libtool.
8526 # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
8527 # which have later been changed to m4_define as they aren't part of the
8528 # exported API, or moved to Autoconf or Automake where they belong.
8530 # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8531 # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8532 # using a macro with the same name in our local m4/libtool.m4 it'll
8533 # pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8534 # and doesn't know about Autoconf macros at all.)
8536 # So we provide this file, which has a silly filename so it's always
8537 # included after everything else. This provides aclocal with the
8538 # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8539 # because those macros already exist, or will be overwritten later.
8540 # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8542 # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8543 # Yes, that means every name once taken will need to remain here until
8544 # we give up compatibility with versions before 1.7, at which point
8545 # we need to keep only those names which we still refer to.
8547 # This is to help aclocal find these macros, as it can't see m4_define.
8548 AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8550 m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8551 m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8552 m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8553 m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8554 m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8555 m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8556 m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8557 m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8558 m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8559 m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
8560 m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
8561 m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8562 m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8563 m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8564 m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
8565 m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
8566 m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
8567 m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
8568 m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
8569 m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
8570 m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
8571 m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
8572 m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
8573 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
8574 m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
8575 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
8576 m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
8577 m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
8578 m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
8579 m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
8580 m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
8581 m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
8582 m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
8583 m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
8584 m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
8585 m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
8586 m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
8587 m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
8588 m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
8589 m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
8590 m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
8591 m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
8592 m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
8593 m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
8594 m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
8595 m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
8596 m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
8597 m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
8598 m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
8599 m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
8600 m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
8601 m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
8602 m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
8603 m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
8604 m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
8605 m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
8606 m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
8607 m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
8608 m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
8609 m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
8610 m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])