1 # generated automatically by aclocal 1.15.1 -*- Autoconf -*-
3 # Copyright (C) 1996-2017 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-2001, 2003-2015 Free Software Foundation, Inc.
18 # Written by Gordon Matzigkeit, 1996
20 # This file is free software; the Free Software Foundation gives
21 # unlimited permission to copy and/or distribute it, with or without
22 # modifications, as long as this notice is preserved.
24 m4_define([_LT_COPYING], [dnl
25 # Copyright (C) 2014 Free Software Foundation, Inc.
26 # This is free software; see the source for copying conditions. There is NO
27 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
29 # GNU Libtool is free software; you can redistribute it and/or modify
30 # it under the terms of the GNU General Public License as published by
31 # the Free Software Foundation; either version 2 of of the License, or
32 # (at your option) any later version.
34 # As a special exception to the GNU General Public License, if you
35 # distribute this file as part of a program or library that is built
36 # using GNU Libtool, you may include this file under the same
37 # distribution terms that you use for the rest of that program.
39 # GNU Libtool is distributed in the hope that it will be useful, but
40 # WITHOUT ANY WARRANTY; without even the implied warranty of
41 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
42 # GNU General Public License for more details.
44 # You should have received a copy of the GNU General Public License
45 # along with this program. If not, see <http://www.gnu.org/licenses/>.
53 # Complain and exit if this libtool version is less that VERSION.
55 [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
57 [m4_fatal([Libtool version $1 or higher is required],
64 # Complain if the absolute build directory name contains unusual characters
65 m4_defun([_LT_CHECK_BUILDDIR],
68 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
76 [AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
77 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
78 AC_BEFORE([$0], [LT_LANG])dnl
79 AC_BEFORE([$0], [LT_OUTPUT])dnl
80 AC_BEFORE([$0], [LTDL_INIT])dnl
81 m4_require([_LT_CHECK_BUILDDIR])dnl
83 dnl Autoconf doesn't catch unexpanded LT_ macros by default:
84 m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
85 m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
86 dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
87 dnl unless we require an AC_DEFUNed macro:
88 AC_REQUIRE([LTOPTIONS_VERSION])dnl
89 AC_REQUIRE([LTSUGAR_VERSION])dnl
90 AC_REQUIRE([LTVERSION_VERSION])dnl
91 AC_REQUIRE([LTOBSOLETE_VERSION])dnl
92 m4_require([_LT_PROG_LTMAIN])dnl
94 _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
97 _LT_SET_OPTIONS([$0], [$1])
99 # This can be used to rebuild libtool when needed
102 # Always use our own libtool.
103 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
113 AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
114 AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
115 dnl aclocal-1.4 backwards compatibility:
116 dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
117 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
120 # _LT_PREPARE_CC_BASENAME
121 # -----------------------
122 m4_defun([_LT_PREPARE_CC_BASENAME], [
123 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
126 for cc_temp in @S|@*""; do
128 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
129 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
134 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
136 ])# _LT_PREPARE_CC_BASENAME
139 # _LT_CC_BASENAME(CC)
140 # -------------------
141 # It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
142 # but that macro is also expanded into generated libtool script, which
143 # arranges for $SED and $ECHO to be set by different means.
144 m4_defun([_LT_CC_BASENAME],
145 [m4_require([_LT_PREPARE_CC_BASENAME])dnl
146 AC_REQUIRE([_LT_DECL_SED])dnl
147 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
149 cc_basename=$func_cc_basename_result
153 # _LT_FILEUTILS_DEFAULTS
154 # ----------------------
155 # It is okay to use these file commands and assume they have been set
156 # sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
157 m4_defun([_LT_FILEUTILS_DEFAULTS],
161 ])# _LT_FILEUTILS_DEFAULTS
166 m4_defun([_LT_SETUP],
167 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
168 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
169 AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
170 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
172 _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
174 _LT_DECL([], [host_alias], [0], [The host system])dnl
175 _LT_DECL([], [host], [0])dnl
176 _LT_DECL([], [host_os], [0])dnl
178 _LT_DECL([], [build_alias], [0], [The build system])dnl
179 _LT_DECL([], [build], [0])dnl
180 _LT_DECL([], [build_os], [0])dnl
182 AC_REQUIRE([AC_PROG_CC])dnl
183 AC_REQUIRE([LT_PATH_LD])dnl
184 AC_REQUIRE([LT_PATH_NM])dnl
186 AC_REQUIRE([AC_PROG_LN_S])dnl
187 test -z "$LN_S" && LN_S="ln -s"
188 _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
190 AC_REQUIRE([LT_CMD_MAX_LEN])dnl
191 _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
192 _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
194 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
195 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
196 m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
197 m4_require([_LT_CMD_RELOAD])dnl
198 m4_require([_LT_CHECK_MAGIC_METHOD])dnl
199 m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
200 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
201 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
202 m4_require([_LT_WITH_SYSROOT])dnl
203 m4_require([_LT_CMD_TRUNCATE])dnl
205 _LT_CONFIG_LIBTOOL_INIT([
206 # See if we are running on zsh, and set the options that allow our
207 # commands through without removal of \ escapes INIT.
208 if test -n "\${ZSH_VERSION+set}"; then
212 if test -n "${ZSH_VERSION+set}"; then
218 m4_require([_LT_TAG_COMPILER])dnl
222 # AIX sometimes has problems with the GCC collect2 program. For some
223 # reason, if we set the COLLECT_NAMES environment variable, the problems
224 # vanish in a puff of smoke.
225 if test set != "${COLLECT_NAMES+set}"; then
236 # All known linkers require a '.a' archive for static linking (except MSVC,
237 # which needs '.lib').
240 with_gnu_ld=$lt_cv_prog_gnu_ld
245 # Set sane defaults for various variables
246 test -z "$CC" && CC=cc
247 test -z "$LTCC" && LTCC=$CC
248 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
249 test -z "$LD" && LD=ld
250 test -z "$ac_objext" && ac_objext=o
252 _LT_CC_BASENAME([$compiler])
254 # Only perform the check for file, if the check method requires it
255 test -z "$MAGIC_CMD" && MAGIC_CMD=file
256 case $deplibs_check_method in
258 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
264 # Use C for the default configuration in the libtool script
265 LT_SUPPORTED_TAG([CC])
267 _LT_LANG_DEFAULT_CONFIG
272 # _LT_PREPARE_SED_QUOTE_VARS
273 # --------------------------
274 # Define a few sed substitution that help us do robust quoting.
275 m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
276 [# Backslashify metacharacters that are still active within
277 # double-quoted strings.
278 sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
280 # Same as above, but do not quote variable references.
281 double_quote_subst='s/\([["`\\]]\)/\\\1/g'
283 # Sed substitution to delay expansion of an escaped shell variable in a
284 # double_quote_subst'ed string.
285 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
287 # Sed substitution to delay expansion of an escaped single quote.
288 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
290 # Sed substitution to avoid accidental globbing in evaled expressions
291 no_glob_subst='s/\*/\\\*/g'
296 # Note that this code is called both from 'configure', and 'config.status'
297 # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
298 # 'config.status' has no value for ac_aux_dir unless we are using Automake,
299 # so we pass a copy along to make sure it has a sensible value anyway.
300 m4_defun([_LT_PROG_LTMAIN],
301 [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
302 _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
303 ltmain=$ac_aux_dir/ltmain.sh
308 # So that we can recreate a full libtool script including additional
309 # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
310 # in macros and then make a single call at the end using the 'libtool'
314 # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
315 # ----------------------------------------
316 # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
317 m4_define([_LT_CONFIG_LIBTOOL_INIT],
319 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
324 m4_define([_LT_OUTPUT_LIBTOOL_INIT])
327 # _LT_CONFIG_LIBTOOL([COMMANDS])
328 # ------------------------------
329 # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
330 m4_define([_LT_CONFIG_LIBTOOL],
332 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
337 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
340 # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
341 # -----------------------------------------------------
342 m4_defun([_LT_CONFIG_SAVE_COMMANDS],
343 [_LT_CONFIG_LIBTOOL([$1])
344 _LT_CONFIG_LIBTOOL_INIT([$2])
348 # _LT_FORMAT_COMMENT([COMMENT])
349 # -----------------------------
350 # Add leading comment marks to the start of each line, and a trailing
351 # full-stop to the whole comment if one is not present already.
352 m4_define([_LT_FORMAT_COMMENT],
354 m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
355 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
362 # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
363 # -------------------------------------------------------------------
364 # CONFIGNAME is the name given to the value in the libtool script.
365 # VARNAME is the (base) name used in the configure script.
366 # VALUE may be 0, 1 or 2 for a computed quote escaped value based on
367 # VARNAME. Any other value will be used directly.
368 m4_define([_LT_DECL],
369 [lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
370 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
371 [m4_ifval([$1], [$1], [$2])])
372 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
374 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
375 lt_dict_add_subkey([lt_decl_dict], [$2],
376 [tagged?], [m4_ifval([$5], [yes], [no])])])
380 # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
381 # --------------------------------------------------------
382 m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
385 # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
386 # ------------------------------------------------
387 m4_define([lt_decl_tag_varnames],
388 [_lt_decl_filter([tagged?], [yes], $@)])
391 # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
392 # ---------------------------------------------------------
393 m4_define([_lt_decl_filter],
395 [0], [m4_fatal([$0: too few arguments: $#])],
396 [1], [m4_fatal([$0: too few arguments: $#: $1])],
397 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
398 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
399 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
403 # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
404 # --------------------------------------------------
405 m4_define([lt_decl_quote_varnames],
406 [_lt_decl_filter([value], [1], $@)])
409 # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
410 # ---------------------------------------------------
411 m4_define([lt_decl_dquote_varnames],
412 [_lt_decl_filter([value], [2], $@)])
415 # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
416 # ---------------------------------------------------
417 m4_define([lt_decl_varnames_tagged],
418 [m4_assert([$# <= 2])dnl
419 _$0(m4_quote(m4_default([$1], [[, ]])),
420 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
421 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
422 m4_define([_lt_decl_varnames_tagged],
423 [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
426 # lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
427 # ------------------------------------------------
428 m4_define([lt_decl_all_varnames],
429 [_$0(m4_quote(m4_default([$1], [[, ]])),
431 m4_quote(lt_decl_varnames),
432 m4_quote(m4_shift($@))))[]dnl
434 m4_define([_lt_decl_all_varnames],
435 [lt_join($@, lt_decl_varnames_tagged([$1],
436 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
440 # _LT_CONFIG_STATUS_DECLARE([VARNAME])
441 # ------------------------------------
442 # Quote a variable value, and forward it to 'config.status' so that its
443 # declaration there will have the same value as in 'configure'. VARNAME
444 # must have a single quote delimited value for this to work.
445 m4_define([_LT_CONFIG_STATUS_DECLARE],
446 [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
449 # _LT_CONFIG_STATUS_DECLARATIONS
450 # ------------------------------
451 # We delimit libtool config variables with single quotes, so when
452 # we write them to config.status, we have to be sure to quote all
453 # embedded single quotes properly. In configure, this macro expands
454 # each variable declared with _LT_DECL (and _LT_TAGDECL) into:
456 # <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
457 m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
458 [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
459 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
464 # Output comment and list of tags supported by the script
465 m4_defun([_LT_LIBTOOL_TAGS],
466 [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
467 available_tags='_LT_TAGS'dnl
471 # _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
472 # -----------------------------------
473 # Extract the dictionary values for VARNAME (optionally with TAG) and
474 # expand to a commented shell variable setting:
476 # # Some comment about what VAR is for.
477 # visible_name=$lt_internal_name
478 m4_define([_LT_LIBTOOL_DECLARE],
479 [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
480 [description])))[]dnl
481 m4_pushdef([_libtool_name],
482 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
483 m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
484 [0], [_libtool_name=[$]$1],
485 [1], [_libtool_name=$lt_[]$1],
486 [2], [_libtool_name=$lt_[]$1],
487 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
488 m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
492 # _LT_LIBTOOL_CONFIG_VARS
493 # -----------------------
494 # Produce commented declarations of non-tagged libtool config variables
495 # suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
496 # script. Tagged libtool config variables (even for the LIBTOOL CONFIG
497 # section) are produced by _LT_LIBTOOL_TAG_VARS.
498 m4_defun([_LT_LIBTOOL_CONFIG_VARS],
499 [m4_foreach([_lt_var],
500 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
501 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
504 # _LT_LIBTOOL_TAG_VARS(TAG)
505 # -------------------------
506 m4_define([_LT_LIBTOOL_TAG_VARS],
507 [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
508 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
511 # _LT_TAGVAR(VARNAME, [TAGNAME])
512 # ------------------------------
513 m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
516 # _LT_CONFIG_COMMANDS
517 # -------------------
518 # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
519 # variables for single and double quote escaping we saved from calls
520 # to _LT_DECL, we can put quote escaped variables declarations
521 # into 'config.status', and then the shell code to quote escape them in
522 # for loops in 'config.status'. Finally, any additional code accumulated
523 # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
524 m4_defun([_LT_CONFIG_COMMANDS],
525 [AC_PROVIDE_IFELSE([LT_OUTPUT],
526 dnl If the libtool generation code has been placed in $CONFIG_LT,
527 dnl instead of duplicating it all over again into config.status,
528 dnl then we will have config.status run $CONFIG_LT later, so it
529 dnl needs to know what name is stored there:
530 [AC_CONFIG_COMMANDS([libtool],
531 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
532 dnl If the libtool generation code is destined for config.status,
533 dnl expand the accumulated commands and init code now:
534 [AC_CONFIG_COMMANDS([libtool],
535 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
536 ])#_LT_CONFIG_COMMANDS
540 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
543 # The HP-UX ksh and POSIX shell print the target directory to stdout
545 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
547 sed_quote_subst='$sed_quote_subst'
548 double_quote_subst='$double_quote_subst'
549 delay_variable_subst='$delay_variable_subst'
550 _LT_CONFIG_STATUS_DECLARATIONS
553 compiler='$compiler_DEFAULT'
555 # A function that is used when there is no print builtin or printf.
556 func_fallback_echo ()
558 eval 'cat <<_LTECHO_EOF
563 # Quote evaled strings.
564 for var in lt_decl_all_varnames([[ \
565 ]], lt_decl_quote_varnames); do
566 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
567 *[[\\\\\\\`\\"\\\$]]*)
568 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
571 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
576 # Double-quote double-evaled strings.
577 for var in lt_decl_all_varnames([[ \
578 ]], lt_decl_dquote_varnames); do
579 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
580 *[[\\\\\\\`\\"\\\$]]*)
581 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
584 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
589 _LT_OUTPUT_LIBTOOL_INIT
592 # _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
593 # ------------------------------------
594 # Generate a child script FILE with all initialization necessary to
595 # reuse the environment learned by the parent script, and make the
596 # file executable. If COMMENT is supplied, it is inserted after the
597 # '#!' sequence but before initialization text begins. After this
598 # macro, additional text can be appended to FILE to form the body of
599 # the child script. The macro ends with non-zero status if the
600 # file could not be fully written (such as if the disk is full).
601 m4_ifdef([AS_INIT_GENERATED],
602 [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
603 [m4_defun([_LT_GENERATED_FILE_INIT],
604 [m4_require([AS_PREPARE])]dnl
605 [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
607 cat >$1 <<_ASEOF || lt_write_fail=1
609 # Generated by $as_me.
611 SHELL=\${CONFIG_SHELL-$SHELL}
614 cat >>$1 <<\_ASEOF || lt_write_fail=1
617 exec AS_MESSAGE_FD>&1
619 test 0 = "$lt_write_fail" && chmod +x $1[]dnl
620 m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
624 # This macro allows early generation of the libtool script (before
625 # AC_OUTPUT is called), incase it is used in configure for compilation
627 AC_DEFUN([LT_OUTPUT],
628 [: ${CONFIG_LT=./config.lt}
629 AC_MSG_NOTICE([creating $CONFIG_LT])
630 _LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
631 [# Run this file to recreate a libtool stub with the current configuration.])
633 cat >>"$CONFIG_LT" <<\_LTEOF
635 exec AS_MESSAGE_LOG_FD>>config.log
638 AS_BOX([Running $as_me.])
639 } >&AS_MESSAGE_LOG_FD
642 '$as_me' creates a local libtool stub from the current configuration,
643 for use in further configure time tests before the real libtool is
646 Usage: $[0] [[OPTIONS]]
648 -h, --help print this help, then exit
649 -V, --version print version number, then exit
650 -q, --quiet do not print progress messages
651 -d, --debug don't remove temporary files
653 Report bugs to <bug-libtool@gnu.org>."
656 m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
657 m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
658 configured by $[0], generated by m4_PACKAGE_STRING.
660 Copyright (C) 2011 Free Software Foundation, Inc.
661 This config.lt script is free software; the Free Software Foundation
662 gives unlimited permision to copy, distribute and modify it."
667 --version | --v* | -V )
668 echo "$lt_cl_version"; exit 0 ;;
670 echo "$lt_cl_help"; exit 0 ;;
671 --debug | --d* | -d )
673 --quiet | --q* | --silent | --s* | -q )
676 -*) AC_MSG_ERROR([unrecognized option: $[1]
677 Try '$[0] --help' for more information.]) ;;
679 *) AC_MSG_ERROR([unrecognized argument: $[1]
680 Try '$[0] --help' for more information.]) ;;
685 if $lt_cl_silent; then
686 exec AS_MESSAGE_FD>/dev/null
690 cat >>"$CONFIG_LT" <<_LTEOF
691 _LT_OUTPUT_LIBTOOL_COMMANDS_INIT
694 cat >>"$CONFIG_LT" <<\_LTEOF
695 AC_MSG_NOTICE([creating $ofile])
696 _LT_OUTPUT_LIBTOOL_COMMANDS
699 chmod +x "$CONFIG_LT"
701 # configure is writing to config.log, but config.lt does its own redirection,
702 # appending to config.log, which fails on DOS, as config.log is still kept
703 # open by configure. Here we exec the FD to /dev/null, effectively closing
704 # config.log, so it can be properly (re)opened and appended to by config.lt.
706 test yes = "$silent" &&
707 lt_config_lt_args="$lt_config_lt_args --quiet"
708 exec AS_MESSAGE_LOG_FD>/dev/null
709 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
710 exec AS_MESSAGE_LOG_FD>>config.log
711 $lt_cl_success || AS_EXIT(1)
717 # If TAG is the built-in tag, create an initial libtool script with a
718 # default configuration from the untagged config vars. Otherwise add code
719 # to config.status for appending the configuration named by TAG from the
720 # matching tagged config vars.
721 m4_defun([_LT_CONFIG],
722 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
723 _LT_CONFIG_SAVE_COMMANDS([
724 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
725 m4_if(_LT_TAG, [C], [
726 # See if we are running on zsh, and set the options that allow our
727 # commands through without removal of \ escapes.
728 if test -n "${ZSH_VERSION+set}"; then
733 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
736 cat <<_LT_EOF >> "$cfgfile"
738 # Generated automatically by $as_me ($PACKAGE) $VERSION
739 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
741 # Provide generalized library-building support services.
742 # Written by Gordon Matzigkeit, 1996
747 # Configured defaults for sys_lib_dlsearch_path munging.
748 : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
750 # ### BEGIN LIBTOOL CONFIG
751 _LT_LIBTOOL_CONFIG_VARS
753 # ### END LIBTOOL CONFIG
757 cat <<'_LT_EOF' >> "$cfgfile"
759 # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
761 _LT_PREPARE_MUNGE_PATH_LIST
762 _LT_PREPARE_CC_BASENAME
764 # ### END FUNCTIONS SHARED WITH CONFIGURE
770 cat <<\_LT_EOF >> "$cfgfile"
771 # AIX sometimes has problems with the GCC collect2 program. For some
772 # reason, if we set the COLLECT_NAMES environment variable, the problems
773 # vanish in a puff of smoke.
774 if test set != "${COLLECT_NAMES+set}"; then
784 # We use sed instead of cat because bash on DJGPP gets confused if
785 # if finds mixed CR/LF and LF-only lines. Since sed operates in
786 # text mode, it properly converts lines to CR/LF. This bash problem
787 # is reportedly fixed, but why not run on old versions too?
788 sed '$q' "$ltmain" >> "$cfgfile" \
789 || (rm -f "$cfgfile"; exit 1)
791 mv -f "$cfgfile" "$ofile" ||
792 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
795 [cat <<_LT_EOF >> "$ofile"
797 dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
798 dnl in a comment (ie after a #).
799 # ### BEGIN LIBTOOL TAG CONFIG: $1
800 _LT_LIBTOOL_TAG_VARS(_LT_TAG)
801 # ### END LIBTOOL TAG CONFIG: $1
810 ])dnl /_LT_CONFIG_SAVE_COMMANDS
814 # LT_SUPPORTED_TAG(TAG)
815 # ---------------------
816 # Trace this macro to discover what tags are supported by the libtool
817 # --tag option, using:
818 # autoconf --trace 'LT_SUPPORTED_TAG:$1'
819 AC_DEFUN([LT_SUPPORTED_TAG], [])
822 # C support is built-in for now
823 m4_define([_LT_LANG_C_enabled], [])
824 m4_define([_LT_TAGS], [])
829 # Enable libtool support for the given language if not already enabled.
831 [AC_BEFORE([$0], [LT_OUTPUT])dnl
834 [C++], [_LT_LANG(CXX)],
835 [Go], [_LT_LANG(GO)],
836 [Java], [_LT_LANG(GCJ)],
837 [Fortran 77], [_LT_LANG(F77)],
838 [Fortran], [_LT_LANG(FC)],
839 [Windows Resource], [_LT_LANG(RC)],
840 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
842 [m4_fatal([$0: unsupported language: "$1"])])])dnl
849 [m4_ifdef([_LT_LANG_]$1[_enabled], [],
850 [LT_SUPPORTED_TAG([$1])dnl
851 m4_append([_LT_TAGS], [$1 ])dnl
852 m4_define([_LT_LANG_]$1[_enabled], [])dnl
853 _LT_LANG_$1_CONFIG($1)])dnl
857 m4_ifndef([AC_PROG_GO], [
858 # NOTE: This macro has been submitted for inclusion into #
859 # GNU Autoconf as AC_PROG_GO. When it is available in #
860 # a released version of Autoconf we should remove this #
861 # macro and use it instead. #
862 m4_defun([AC_PROG_GO],
864 AC_ARG_VAR([GOC], [Go compiler command])dnl
865 AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
866 _AC_ARG_VAR_LDFLAGS()dnl
867 AC_CHECK_TOOL(GOC, gccgo)
868 if test -z "$GOC"; then
869 if test -n "$ac_tool_prefix"; then
870 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
873 if test -z "$GOC"; then
874 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
880 # _LT_LANG_DEFAULT_CONFIG
881 # -----------------------
882 m4_defun([_LT_LANG_DEFAULT_CONFIG],
883 [AC_PROVIDE_IFELSE([AC_PROG_CXX],
885 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
887 AC_PROVIDE_IFELSE([AC_PROG_F77],
889 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
891 AC_PROVIDE_IFELSE([AC_PROG_FC],
893 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
895 dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
896 dnl pulling things in needlessly.
897 AC_PROVIDE_IFELSE([AC_PROG_GCJ],
899 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
901 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
903 [m4_ifdef([AC_PROG_GCJ],
904 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
905 m4_ifdef([A][M_PROG_GCJ],
906 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
907 m4_ifdef([LT_PROG_GCJ],
908 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
910 AC_PROVIDE_IFELSE([AC_PROG_GO],
912 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
914 AC_PROVIDE_IFELSE([LT_PROG_RC],
916 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
917 ])# _LT_LANG_DEFAULT_CONFIG
920 AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
921 AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
922 AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
923 AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
924 AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
925 dnl aclocal-1.4 backwards compatibility:
926 dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
927 dnl AC_DEFUN([AC_LIBTOOL_F77], [])
928 dnl AC_DEFUN([AC_LIBTOOL_FC], [])
929 dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
930 dnl AC_DEFUN([AC_LIBTOOL_RC], [])
935 m4_defun([_LT_TAG_COMPILER],
936 [AC_REQUIRE([AC_PROG_CC])dnl
938 _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
939 _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
940 _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
941 _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
943 # If no C compiler was specified, use CC.
946 # If no C compiler flags were specified, use CFLAGS.
947 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
949 # Allow CC to be a program name with arguments.
954 # _LT_COMPILER_BOILERPLATE
955 # ------------------------
956 # Check for compiler boilerplate output or warnings with
957 # the simple compiler test code.
958 m4_defun([_LT_COMPILER_BOILERPLATE],
959 [m4_require([_LT_DECL_SED])dnl
960 ac_outfile=conftest.$ac_objext
961 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
962 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
963 _lt_compiler_boilerplate=`cat conftest.err`
965 ])# _LT_COMPILER_BOILERPLATE
968 # _LT_LINKER_BOILERPLATE
969 # ----------------------
970 # Check for linker boilerplate output or warnings with
971 # the simple link test code.
972 m4_defun([_LT_LINKER_BOILERPLATE],
973 [m4_require([_LT_DECL_SED])dnl
974 ac_outfile=conftest.$ac_objext
975 echo "$lt_simple_link_test_code" >conftest.$ac_ext
976 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
977 _lt_linker_boilerplate=`cat conftest.err`
979 ])# _LT_LINKER_BOILERPLATE
981 # _LT_REQUIRED_DARWIN_CHECKS
982 # -------------------------
983 m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
986 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
987 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
988 AC_CHECK_TOOL([LIPO], [lipo], [:])
989 AC_CHECK_TOOL([OTOOL], [otool], [:])
990 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
991 _LT_DECL([], [DSYMUTIL], [1],
992 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
993 _LT_DECL([], [NMEDIT], [1],
994 [Tool to change global to local symbols on Mac OS X])
995 _LT_DECL([], [LIPO], [1],
996 [Tool to manipulate fat objects and archives on Mac OS X])
997 _LT_DECL([], [OTOOL], [1],
998 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
999 _LT_DECL([], [OTOOL64], [1],
1000 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
1002 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
1003 [lt_cv_apple_cc_single_mod=no
1004 if test -z "$LT_MULTI_MODULE"; then
1005 # By default we will add the -single_module flag. You can override
1006 # by either setting the environment variable LT_MULTI_MODULE
1007 # non-empty at configure time, or by adding -multi_module to the
1009 rm -rf libconftest.dylib*
1010 echo "int foo(void){return 1;}" > conftest.c
1011 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1012 -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1013 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1014 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1016 # If there is a non-empty error log, and "single_module"
1017 # appears in it, assume the flag caused a linker warning
1018 if test -s conftest.err && $GREP single_module conftest.err; then
1019 cat conftest.err >&AS_MESSAGE_LOG_FD
1020 # Otherwise, if the output was created with a 0 exit code from
1021 # the compiler, it worked.
1022 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
1023 lt_cv_apple_cc_single_mod=yes
1025 cat conftest.err >&AS_MESSAGE_LOG_FD
1027 rm -rf libconftest.dylib*
1031 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1032 [lt_cv_ld_exported_symbols_list],
1033 [lt_cv_ld_exported_symbols_list=no
1034 save_LDFLAGS=$LDFLAGS
1035 echo "_main" > conftest.sym
1036 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1037 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1038 [lt_cv_ld_exported_symbols_list=yes],
1039 [lt_cv_ld_exported_symbols_list=no])
1040 LDFLAGS=$save_LDFLAGS
1043 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1044 [lt_cv_ld_force_load=no
1045 cat > conftest.c << _LT_EOF
1046 int forced_loaded() { return 2;}
1048 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1049 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1050 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1051 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1052 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1053 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1054 cat > conftest.c << _LT_EOF
1055 int main() { return 0;}
1057 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1058 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1060 if test -s conftest.err && $GREP force_load conftest.err; then
1061 cat conftest.err >&AS_MESSAGE_LOG_FD
1062 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
1063 lt_cv_ld_force_load=yes
1065 cat conftest.err >&AS_MESSAGE_LOG_FD
1067 rm -f conftest.err libconftest.a conftest conftest.c
1068 rm -rf conftest.dSYM
1071 rhapsody* | darwin1.[[012]])
1072 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
1074 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1075 darwin*) # darwin 5.x on
1076 # if running on 10.5 or later, the deployment target defaults
1077 # to the OS version, if on x86, and 10.4, the deployment
1078 # target defaults to 10.4. Don't you love it?
1079 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1080 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1081 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1083 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1085 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1089 if test yes = "$lt_cv_apple_cc_single_mod"; then
1090 _lt_dar_single_mod='$single_module'
1092 if test yes = "$lt_cv_ld_exported_symbols_list"; then
1093 _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
1095 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
1097 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
1098 _lt_dsymutil='~$DSYMUTIL $lib || :'
1107 # _LT_DARWIN_LINKER_FEATURES([TAG])
1108 # ---------------------------------
1109 # Checks for linker and compiler features on darwin
1110 m4_defun([_LT_DARWIN_LINKER_FEATURES],
1112 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1113 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1114 _LT_TAGVAR(hardcode_direct, $1)=no
1115 _LT_TAGVAR(hardcode_automatic, $1)=yes
1116 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1117 if test yes = "$lt_cv_ld_force_load"; then
1118 _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\"`'
1119 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1120 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1122 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1124 _LT_TAGVAR(link_all_deplibs, $1)=yes
1125 _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
1126 case $cc_basename in
1127 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
1128 *) _lt_dar_can_shared=$GCC ;;
1130 if test yes = "$_lt_dar_can_shared"; then
1131 output_verbose_link_cmd=func_echo_all
1132 _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"
1133 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
1134 _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"
1135 _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"
1137 [ if test yes != "$lt_cv_apple_cc_single_mod"; then
1138 _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"
1139 _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"
1143 _LT_TAGVAR(ld_shlibs, $1)=no
1147 # _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1148 # ----------------------------------
1149 # Links a minimal program and checks the executable
1150 # for the system default hardcoded library path. In most cases,
1151 # this is /usr/lib:/lib, but when the MPI compilers are used
1152 # the location of the communication and MPI libs are included too.
1153 # If we don't find anything, use the default library path according
1154 # to the aix ld manual.
1155 # Store the results from the different compilers for each TAGNAME.
1156 # Allow to override them for all tags through lt_cv_aix_libpath.
1157 m4_defun([_LT_SYS_MODULE_PATH_AIX],
1158 [m4_require([_LT_DECL_SED])dnl
1159 if test set = "${lt_cv_aix_libpath+set}"; then
1160 aix_libpath=$lt_cv_aix_libpath
1162 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1163 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1164 lt_aix_libpath_sed='[
1165 /Import File Strings/,/^$/ {
1167 s/^0 *\([^ ]*\) *$/\1/
1171 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1172 # Check for a 64-bit object if we didn't find anything.
1173 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1174 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1176 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1177 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
1180 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1182 ])# _LT_SYS_MODULE_PATH_AIX
1185 # _LT_SHELL_INIT(ARG)
1186 # -------------------
1187 m4_define([_LT_SHELL_INIT],
1188 [m4_divert_text([M4SH-INIT], [$1
1189 ])])# _LT_SHELL_INIT
1193 # _LT_PROG_ECHO_BACKSLASH
1194 # -----------------------
1195 # Find how we can fake an echo command that does not interpret backslash.
1196 # In particular, with Autoconf 2.60 or later we add some code to the start
1197 # of the generated configure script that will find a shell with a builtin
1198 # printf (that we can use as an echo command).
1199 m4_defun([_LT_PROG_ECHO_BACKSLASH],
1200 [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1201 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1202 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1204 AC_MSG_CHECKING([how to print strings])
1205 # Test print first, because it will be a builtin if present.
1206 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1207 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1209 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1212 # Use this function as a fallback that always works.
1213 func_fallback_echo ()
1215 eval 'cat <<_LTECHO_EOF
1219 ECHO='func_fallback_echo'
1222 # func_echo_all arg...
1223 # Invoke $ECHO with all args, space-separated.
1230 printf*) AC_MSG_RESULT([printf]) ;;
1231 print*) AC_MSG_RESULT([print -r]) ;;
1232 *) AC_MSG_RESULT([cat]) ;;
1235 m4_ifdef([_AS_DETECT_SUGGESTED],
1236 [_AS_DETECT_SUGGESTED([
1237 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1238 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1239 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1240 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1241 PATH=/empty FPATH=/empty; export PATH FPATH
1242 test "X`printf %s $ECHO`" = "X$ECHO" \
1243 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1245 _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1246 _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1247 ])# _LT_PROG_ECHO_BACKSLASH
1252 AC_DEFUN([_LT_WITH_SYSROOT],
1253 [AC_MSG_CHECKING([for sysroot])
1254 AC_ARG_WITH([sysroot],
1255 [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
1256 [Search for dependent libraries within DIR (or the compiler's sysroot
1257 if not specified).])],
1258 [], [with_sysroot=no])
1260 dnl lt_sysroot will always be passed unquoted. We quote it here
1261 dnl in case the user passed a directory name.
1263 case $with_sysroot in #(
1265 if test yes = "$GCC"; then
1266 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1270 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1275 AC_MSG_RESULT([$with_sysroot])
1276 AC_MSG_ERROR([The sysroot must be an absolute path.])
1280 AC_MSG_RESULT([${lt_sysroot:-no}])
1281 _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1282 [dependent libraries, and where our libraries should be installed.])])
1286 m4_defun([_LT_ENABLE_LOCK],
1287 [AC_ARG_ENABLE([libtool-lock],
1288 [AS_HELP_STRING([--disable-libtool-lock],
1289 [avoid locking (might break parallel builds)])])
1290 test no = "$enable_libtool_lock" || enable_libtool_lock=yes
1292 # Some flags need to be propagated to the compiler or linker for good
1296 # Find out what ABI is being produced by ac_compile, and set mode
1297 # options accordingly.
1298 echo 'int i;' > conftest.$ac_ext
1299 if AC_TRY_EVAL(ac_compile); then
1300 case `/usr/bin/file conftest.$ac_objext` in
1312 # Find out what ABI is being produced by ac_compile, and set linker
1313 # options accordingly.
1314 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1315 if AC_TRY_EVAL(ac_compile); then
1316 if test yes = "$lt_cv_prog_gnu_ld"; then
1317 case `/usr/bin/file conftest.$ac_objext` in
1319 LD="${LD-ld} -melf32bsmip"
1322 LD="${LD-ld} -melf32bmipn32"
1325 LD="${LD-ld} -melf64bmip"
1329 case `/usr/bin/file conftest.$ac_objext` in
1346 # Find out what ABI is being produced by ac_compile, and set linker
1347 # options accordingly.
1348 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1349 if AC_TRY_EVAL(ac_compile); then
1351 case `/usr/bin/file conftest.$ac_objext` in
1359 case `/usr/bin/file conftest.$ac_objext` in
1361 emul="${emul}btsmip"
1364 emul="${emul}ltsmip"
1367 case `/usr/bin/file conftest.$ac_objext` in
1372 LD="${LD-ld} -m $emul"
1377 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
1378 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1379 # Find out what ABI is being produced by ac_compile, and set linker
1380 # options accordingly. Note that the listed cases only cover the
1381 # situations where additional linker options are needed (such as when
1382 # doing 32-bit compilation for a host where ld defaults to 64-bit, or
1383 # vice versa); the common cases where no linker options are needed do
1384 # not appear in the list.
1385 echo 'int i;' > conftest.$ac_ext
1386 if AC_TRY_EVAL(ac_compile); then
1387 case `/usr/bin/file conftest.o` in
1390 x86_64-*kfreebsd*-gnu)
1391 LD="${LD-ld} -m elf_i386_fbsd"
1394 case `/usr/bin/file conftest.o` in
1396 LD="${LD-ld} -m elf32_x86_64"
1399 LD="${LD-ld} -m elf_i386"
1403 powerpc64le-*linux*)
1404 LD="${LD-ld} -m elf32lppclinux"
1407 LD="${LD-ld} -m elf32ppclinux"
1410 LD="${LD-ld} -m elf_s390"
1413 LD="${LD-ld} -m elf32_sparc"
1419 x86_64-*kfreebsd*-gnu)
1420 LD="${LD-ld} -m elf_x86_64_fbsd"
1423 LD="${LD-ld} -m elf_x86_64"
1426 LD="${LD-ld} -m elf64lppc"
1429 LD="${LD-ld} -m elf64ppc"
1431 s390*-*linux*|s390*-*tpf*)
1432 LD="${LD-ld} -m elf64_s390"
1435 LD="${LD-ld} -m elf64_sparc"
1445 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1447 CFLAGS="$CFLAGS -belf"
1448 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1450 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1452 if test yes != "$lt_cv_cc_needs_belf"; then
1453 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1458 # Find out what ABI is being produced by ac_compile, and set linker
1459 # options accordingly.
1460 echo 'int i;' > conftest.$ac_ext
1461 if AC_TRY_EVAL(ac_compile); then
1462 case `/usr/bin/file conftest.o` in
1464 case $lt_cv_prog_gnu_ld in
1467 i?86-*-solaris*|x86_64-*-solaris*)
1468 LD="${LD-ld} -m elf_x86_64"
1471 LD="${LD-ld} -m elf64_sparc"
1474 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1475 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1480 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1492 need_locks=$enable_libtool_lock
1498 m4_defun([_LT_PROG_AR],
1499 [AC_CHECK_TOOLS(AR, [ar], false)
1502 _LT_DECL([], [AR], [1], [The archiver])
1503 _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1505 AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1506 [lt_cv_ar_at_file=no
1507 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1508 [echo conftest.$ac_objext > conftest.lst
1509 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1510 AC_TRY_EVAL([lt_ar_try])
1511 if test 0 -eq "$ac_status"; then
1512 # Ensure the archiver fails upon bogus file names.
1513 rm -f conftest.$ac_objext libconftest.a
1514 AC_TRY_EVAL([lt_ar_try])
1515 if test 0 -ne "$ac_status"; then
1519 rm -f conftest.* libconftest.a
1523 if test no = "$lt_cv_ar_at_file"; then
1526 archiver_list_spec=$lt_cv_ar_at_file
1528 _LT_DECL([], [archiver_list_spec], [1],
1529 [How to feed a file listing to the archiver])
1533 # _LT_CMD_OLD_ARCHIVE
1534 # -------------------
1535 m4_defun([_LT_CMD_OLD_ARCHIVE],
1538 AC_CHECK_TOOL(STRIP, strip, :)
1539 test -z "$STRIP" && STRIP=:
1540 _LT_DECL([], [STRIP], [1], [A symbol stripping program])
1542 AC_CHECK_TOOL(RANLIB, ranlib, :)
1543 test -z "$RANLIB" && RANLIB=:
1544 _LT_DECL([], [RANLIB], [1],
1545 [Commands used to install an old-style archive])
1547 # Determine commands to create old-style static archives.
1548 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1549 old_postinstall_cmds='chmod 644 $oldlib'
1550 old_postuninstall_cmds=
1552 if test -n "$RANLIB"; then
1555 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
1558 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
1561 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
1566 lock_old_archive_extraction=yes ;;
1568 lock_old_archive_extraction=no ;;
1570 _LT_DECL([], [old_postinstall_cmds], [2])
1571 _LT_DECL([], [old_postuninstall_cmds], [2])
1572 _LT_TAGDECL([], [old_archive_cmds], [2],
1573 [Commands used to build an old-style archive])
1574 _LT_DECL([], [lock_old_archive_extraction], [0],
1575 [Whether to use a lock for old archive extraction])
1576 ])# _LT_CMD_OLD_ARCHIVE
1579 # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1580 # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1581 # ----------------------------------------------------------------
1582 # Check whether the given compiler option works
1583 AC_DEFUN([_LT_COMPILER_OPTION],
1584 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1585 m4_require([_LT_DECL_SED])dnl
1586 AC_CACHE_CHECK([$1], [$2],
1588 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1589 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1590 lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment
1591 # Insert the option either (1) after the last *FLAGS variable, or
1592 # (2) before a word containing "conftest.", or (3) at the end.
1593 # Note that $ac_compile itself does not contain backslashes and begins
1594 # with a dollar sign (not a hyphen), so the echo should work correctly.
1595 # The option is referenced via a variable to avoid confusing sed.
1596 lt_compile=`echo "$ac_compile" | $SED \
1597 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1598 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1599 -e 's:$: $lt_compiler_flag:'`
1600 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1601 (eval "$lt_compile" 2>conftest.err)
1603 cat conftest.err >&AS_MESSAGE_LOG_FD
1604 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1605 if (exit $ac_status) && test -s "$ac_outfile"; then
1606 # The compiler can only warn and ignore the option if not recognized
1607 # So say no if there are warnings other than the usual output.
1608 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1609 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1610 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1617 if test yes = "[$]$2"; then
1618 m4_if([$5], , :, [$5])
1620 m4_if([$6], , :, [$6])
1622 ])# _LT_COMPILER_OPTION
1625 AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1626 dnl aclocal-1.4 backwards compatibility:
1627 dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1630 # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1631 # [ACTION-SUCCESS], [ACTION-FAILURE])
1632 # ----------------------------------------------------
1633 # Check whether the given linker option works
1634 AC_DEFUN([_LT_LINKER_OPTION],
1635 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1636 m4_require([_LT_DECL_SED])dnl
1637 AC_CACHE_CHECK([$1], [$2],
1639 save_LDFLAGS=$LDFLAGS
1640 LDFLAGS="$LDFLAGS $3"
1641 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1642 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1643 # The linker can only warn and ignore the option if not recognized
1644 # So say no if there are warnings
1645 if test -s conftest.err; then
1646 # Append any errors to the config.log.
1647 cat conftest.err 1>&AS_MESSAGE_LOG_FD
1648 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1649 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1650 if diff conftest.exp conftest.er2 >/dev/null; then
1658 LDFLAGS=$save_LDFLAGS
1661 if test yes = "[$]$2"; then
1662 m4_if([$4], , :, [$4])
1664 m4_if([$5], , :, [$5])
1666 ])# _LT_LINKER_OPTION
1669 AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1670 dnl aclocal-1.4 backwards compatibility:
1671 dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1676 AC_DEFUN([LT_CMD_MAX_LEN],
1677 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
1678 # find the maximum length of command line arguments
1679 AC_MSG_CHECKING([the maximum length of command line arguments])
1680 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1686 # On DJGPP, this test can blow up pretty badly due to problems in libc
1687 # (any single argument exceeding 2000 bytes causes a buffer overrun
1688 # during glob expansion). Even if it were fixed, the result of this
1689 # check would be larger than it should be.
1690 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1694 # Under GNU Hurd, this test is not required because there is
1695 # no limit to the length of command line arguments.
1696 # Libtool will interpret -1 as no limit whatsoever
1697 lt_cv_sys_max_cmd_len=-1;
1700 cygwin* | mingw* | cegcc*)
1701 # On Win9x/ME, this test blows up -- it succeeds, but takes
1702 # about 5 minutes as the teststring grows exponentially.
1703 # Worse, since 9x/ME are not pre-emptively multitasking,
1704 # you end up with a "frozen" computer, even though with patience
1705 # the test eventually succeeds (with a max line length of 256k).
1706 # Instead, let's just punt: use the minimum linelength reported by
1707 # all of the supported platforms: 8192 (on NT/2K/XP).
1708 lt_cv_sys_max_cmd_len=8192;
1712 # On MiNT this can take a long time and run out of memory.
1713 lt_cv_sys_max_cmd_len=8192;
1717 # On AmigaOS with pdksh, this test takes hours, literally.
1718 # So we just punt and use a minimum line length of 8192.
1719 lt_cv_sys_max_cmd_len=8192;
1722 bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
1723 # This has been around since 386BSD, at least. Likely further.
1724 if test -x /sbin/sysctl; then
1725 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1726 elif test -x /usr/sbin/sysctl; then
1727 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1729 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1731 # And add a safety zone
1732 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1733 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1737 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1738 lt_cv_sys_max_cmd_len=196608
1742 # The test takes a long time on OS/2.
1743 lt_cv_sys_max_cmd_len=8192
1747 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1748 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1749 # nice to cause kernel panics so lets avoid the loop below.
1750 # First set a reasonable default.
1751 lt_cv_sys_max_cmd_len=16384
1753 if test -x /sbin/sysconfig; then
1754 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1755 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1760 lt_cv_sys_max_cmd_len=102400
1762 sysv5* | sco5v6* | sysv4.2uw2*)
1763 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1764 if test -n "$kargmax"; then
1765 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1767 lt_cv_sys_max_cmd_len=32768
1771 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1772 if test -n "$lt_cv_sys_max_cmd_len" && \
1773 test undefined != "$lt_cv_sys_max_cmd_len"; then
1774 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1775 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1777 # Make teststring a little bigger before we do anything with it.
1778 # a 1K string should be a reasonable start.
1779 for i in 1 2 3 4 5 6 7 8; do
1780 teststring=$teststring$teststring
1782 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1783 # If test is not a shell built-in, we'll probably end up computing a
1784 # maximum length that is only half of the actual maximum length, but
1786 while { test X`env echo "$teststring$teststring" 2>/dev/null` \
1787 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1788 test 17 != "$i" # 1/2 MB should be enough
1791 teststring=$teststring$teststring
1793 # Only check the string length outside the loop.
1794 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1796 # Add a significant safety factor because C++ compilers can tack on
1797 # massive amounts of additional arguments before passing them to the
1798 # linker. It appears as though 1/2 is a usable value.
1799 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1804 if test -n "$lt_cv_sys_max_cmd_len"; then
1805 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1809 max_cmd_len=$lt_cv_sys_max_cmd_len
1810 _LT_DECL([], [max_cmd_len], [0],
1811 [What is the maximum length of a command?])
1815 AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1816 dnl aclocal-1.4 backwards compatibility:
1817 dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1822 m4_defun([_LT_HEADER_DLFCN],
1823 [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1824 ])# _LT_HEADER_DLFCN
1827 # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1828 # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1829 # ----------------------------------------------------------------
1830 m4_defun([_LT_TRY_DLOPEN_SELF],
1831 [m4_require([_LT_HEADER_DLFCN])dnl
1832 if test yes = "$cross_compiling"; then :
1835 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1836 lt_status=$lt_dlunknown
1837 cat > conftest.$ac_ext <<_LT_EOF
1838 [#line $LINENO "configure"
1839 #include "confdefs.h"
1848 # define LT_DLGLOBAL RTLD_GLOBAL
1851 # define LT_DLGLOBAL DL_GLOBAL
1853 # define LT_DLGLOBAL 0
1857 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1858 find out it does not work in some platform. */
1859 #ifndef LT_DLLAZY_OR_NOW
1861 # define LT_DLLAZY_OR_NOW RTLD_LAZY
1864 # define LT_DLLAZY_OR_NOW DL_LAZY
1867 # define LT_DLLAZY_OR_NOW RTLD_NOW
1870 # define LT_DLLAZY_OR_NOW DL_NOW
1872 # define LT_DLLAZY_OR_NOW 0
1879 /* When -fvisibility=hidden is used, assume the code has been annotated
1880 correspondingly for the symbols needed. */
1881 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1882 int fnord () __attribute__((visibility("default")));
1885 int fnord () { return 42; }
1888 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1889 int status = $lt_dlunknown;
1893 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1896 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1897 else puts (dlerror ());
1899 /* dlclose (self); */
1907 if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
1908 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1911 x$lt_dlno_uscore) $1 ;;
1912 x$lt_dlneed_uscore) $2 ;;
1913 x$lt_dlunknown|x*) $3 ;;
1916 # compilation failed
1921 ])# _LT_TRY_DLOPEN_SELF
1924 # LT_SYS_DLOPEN_SELF
1925 # ------------------
1926 AC_DEFUN([LT_SYS_DLOPEN_SELF],
1927 [m4_require([_LT_HEADER_DLFCN])dnl
1928 if test yes != "$enable_dlopen"; then
1929 enable_dlopen=unknown
1930 enable_dlopen_self=unknown
1931 enable_dlopen_self_static=unknown
1938 lt_cv_dlopen=load_add_on
1940 lt_cv_dlopen_self=yes
1943 mingw* | pw32* | cegcc*)
1944 lt_cv_dlopen=LoadLibrary
1954 # if libdl is installed we need to link against it
1955 AC_CHECK_LIB([dl], [dlopen],
1956 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
1959 lt_cv_dlopen_self=yes
1964 # Don't try to run any link tests for TPF. We know it's impossible
1965 # because TPF is a cross-compiler, and we know how we open DSOs.
1968 lt_cv_dlopen_self=no
1972 AC_CHECK_FUNC([shl_load],
1973 [lt_cv_dlopen=shl_load],
1974 [AC_CHECK_LIB([dld], [shl_load],
1975 [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
1976 [AC_CHECK_FUNC([dlopen],
1977 [lt_cv_dlopen=dlopen],
1978 [AC_CHECK_LIB([dl], [dlopen],
1979 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
1980 [AC_CHECK_LIB([svld], [dlopen],
1981 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
1982 [AC_CHECK_LIB([dld], [dld_link],
1983 [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
1992 if test no = "$lt_cv_dlopen"; then
1998 case $lt_cv_dlopen in
2000 save_CPPFLAGS=$CPPFLAGS
2001 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
2003 save_LDFLAGS=$LDFLAGS
2004 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2007 LIBS="$lt_cv_dlopen_libs $LIBS"
2009 AC_CACHE_CHECK([whether a program can dlopen itself],
2010 lt_cv_dlopen_self, [dnl
2011 _LT_TRY_DLOPEN_SELF(
2012 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
2013 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
2016 if test yes = "$lt_cv_dlopen_self"; then
2017 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
2018 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
2019 lt_cv_dlopen_self_static, [dnl
2020 _LT_TRY_DLOPEN_SELF(
2021 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
2022 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
2026 CPPFLAGS=$save_CPPFLAGS
2027 LDFLAGS=$save_LDFLAGS
2032 case $lt_cv_dlopen_self in
2033 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
2034 *) enable_dlopen_self=unknown ;;
2037 case $lt_cv_dlopen_self_static in
2038 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
2039 *) enable_dlopen_self_static=unknown ;;
2042 _LT_DECL([dlopen_support], [enable_dlopen], [0],
2043 [Whether dlopen is supported])
2044 _LT_DECL([dlopen_self], [enable_dlopen_self], [0],
2045 [Whether dlopen of programs is supported])
2046 _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
2047 [Whether dlopen of statically linked programs is supported])
2048 ])# LT_SYS_DLOPEN_SELF
2051 AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
2052 dnl aclocal-1.4 backwards compatibility:
2053 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
2056 # _LT_COMPILER_C_O([TAGNAME])
2057 # ---------------------------
2058 # Check to see if options -c and -o are simultaneously supported by compiler.
2059 # This macro does not hard code the compiler like AC_PROG_CC_C_O.
2060 m4_defun([_LT_COMPILER_C_O],
2061 [m4_require([_LT_DECL_SED])dnl
2062 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2063 m4_require([_LT_TAG_COMPILER])dnl
2064 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
2065 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
2066 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
2067 $RM -r conftest 2>/dev/null
2071 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2073 lt_compiler_flag="-o out/conftest2.$ac_objext"
2074 # Insert the option either (1) after the last *FLAGS variable, or
2075 # (2) before a word containing "conftest.", or (3) at the end.
2076 # Note that $ac_compile itself does not contain backslashes and begins
2077 # with a dollar sign (not a hyphen), so the echo should work correctly.
2078 lt_compile=`echo "$ac_compile" | $SED \
2079 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2080 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2081 -e 's:$: $lt_compiler_flag:'`
2082 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2083 (eval "$lt_compile" 2>out/conftest.err)
2085 cat out/conftest.err >&AS_MESSAGE_LOG_FD
2086 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2087 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2089 # The compiler can only warn and ignore the option if not recognized
2090 # So say no if there are warnings
2091 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2092 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2093 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2094 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2097 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2099 # SGI C++ compiler will create directory out/ii_files/ for
2100 # template instantiation
2101 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2102 $RM out/* && rmdir out
2107 _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2108 [Does compiler simultaneously support -c and -o options?])
2109 ])# _LT_COMPILER_C_O
2112 # _LT_COMPILER_FILE_LOCKS([TAGNAME])
2113 # ----------------------------------
2114 # Check to see if we can do hard links to lock some files if needed
2115 m4_defun([_LT_COMPILER_FILE_LOCKS],
2116 [m4_require([_LT_ENABLE_LOCK])dnl
2117 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2118 _LT_COMPILER_C_O([$1])
2120 hard_links=nottested
2121 if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
2122 # do not overwrite the value of need_locks provided by the user
2123 AC_MSG_CHECKING([if we can lock with hard links])
2126 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2128 ln conftest.a conftest.b 2>&5 || hard_links=no
2129 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2130 AC_MSG_RESULT([$hard_links])
2131 if test no = "$hard_links"; then
2132 AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
2138 _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2139 ])# _LT_COMPILER_FILE_LOCKS
2144 m4_defun([_LT_CHECK_OBJDIR],
2145 [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2146 [rm -f .libs 2>/dev/null
2147 mkdir .libs 2>/dev/null
2148 if test -d .libs; then
2151 # MS-DOS does not allow filenames that begin with a dot.
2154 rmdir .libs 2>/dev/null])
2155 objdir=$lt_cv_objdir
2156 _LT_DECL([], [objdir], [0],
2157 [The name of the directory that contains temporary libtool files])dnl
2158 m4_pattern_allow([LT_OBJDIR])dnl
2159 AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
2160 [Define to the sub-directory where libtool stores uninstalled libraries.])
2161 ])# _LT_CHECK_OBJDIR
2164 # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2165 # --------------------------------------
2166 # Check hardcoding attributes.
2167 m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2168 [AC_MSG_CHECKING([how to hardcode library paths into programs])
2169 _LT_TAGVAR(hardcode_action, $1)=
2170 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2171 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2172 test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
2174 # We can hardcode non-existent directories.
2175 if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
2176 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2177 # have to relink, otherwise we might link with an installed library
2178 # when we should be linking with a yet-to-be-installed one
2179 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
2180 test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
2181 # Linking always hardcodes the temporary library directory.
2182 _LT_TAGVAR(hardcode_action, $1)=relink
2184 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2185 _LT_TAGVAR(hardcode_action, $1)=immediate
2188 # We cannot hardcode anything, or else we can only hardcode existing
2190 _LT_TAGVAR(hardcode_action, $1)=unsupported
2192 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2194 if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
2195 test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
2196 # Fast installation is not supported
2197 enable_fast_install=no
2198 elif test yes = "$shlibpath_overrides_runpath" ||
2199 test no = "$enable_shared"; then
2200 # Fast installation is not necessary
2201 enable_fast_install=needless
2203 _LT_TAGDECL([], [hardcode_action], [0],
2204 [How to hardcode a shared library path into an executable])
2205 ])# _LT_LINKER_HARDCODE_LIBPATH
2210 m4_defun([_LT_CMD_STRIPLIB],
2211 [m4_require([_LT_DECL_EGREP])
2214 AC_MSG_CHECKING([whether stripping libraries is possible])
2215 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2216 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2217 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2218 AC_MSG_RESULT([yes])
2220 # FIXME - insert some real tests, host_os isn't really good enough
2223 if test -n "$STRIP"; then
2224 striplib="$STRIP -x"
2225 old_striplib="$STRIP -S"
2226 AC_MSG_RESULT([yes])
2236 _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2237 _LT_DECL([], [striplib], [1])
2238 ])# _LT_CMD_STRIPLIB
2241 # _LT_PREPARE_MUNGE_PATH_LIST
2242 # ---------------------------
2243 # Make sure func_munge_path_list() is defined correctly.
2244 m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
2245 [[# func_munge_path_list VARIABLE PATH
2246 # -----------------------------------
2247 # VARIABLE is name of variable containing _space_ separated list of
2248 # directories to be munged by the contents of PATH, which is string
2251 # string "DIR[ DIR]" will be prepended to VARIABLE
2253 # string "DIR[ DIR]" will be appended to VARIABLE
2254 # "DIRP[:DIRP]::[DIRA:]DIRA"
2255 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string
2256 # "DIRA[ DIRA]" will be appended to VARIABLE
2258 # VARIABLE will be replaced by "DIR[ DIR]"
2259 func_munge_path_list ()
2265 eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
2268 eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
2271 eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
2272 eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
2275 eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
2279 ]])# _LT_PREPARE_PATH_LIST
2282 # _LT_SYS_DYNAMIC_LINKER([TAG])
2283 # -----------------------------
2284 # PORTME Fill in your ld.so characteristics
2285 m4_defun([_LT_SYS_DYNAMIC_LINKER],
2286 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
2287 m4_require([_LT_DECL_EGREP])dnl
2288 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2289 m4_require([_LT_DECL_OBJDUMP])dnl
2290 m4_require([_LT_DECL_SED])dnl
2291 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2292 m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
2293 AC_MSG_CHECKING([dynamic linker characteristics])
2296 if test yes = "$GCC"; then
2298 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
2299 *) lt_awk_arg='/^libraries:/' ;;
2302 mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
2303 *) lt_sed_strip_eq='s|=/|/|g' ;;
2305 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2306 case $lt_search_path_spec in
2308 # if the path contains ";" then we assume it to be the separator
2309 # otherwise default to the standard path separator (i.e. ":") - it is
2310 # assumed that no part of a normal pathname contains ";" but that should
2311 # okay in the real world where ";" in dirpaths is itself problematic.
2312 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2315 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2318 # Ok, now we have the path, separated by spaces, we can step through it
2319 # and add multilib dir if necessary...
2320 lt_tmp_lt_search_path_spec=
2321 lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2322 # ...but if some path component already ends with the multilib dir we assume
2323 # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
2324 case "$lt_multi_os_dir; $lt_search_path_spec " in
2325 "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
2329 for lt_sys_path in $lt_search_path_spec; do
2330 if test -d "$lt_sys_path$lt_multi_os_dir"; then
2331 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
2332 elif test -n "$lt_multi_os_dir"; then
2333 test -d "$lt_sys_path" && \
2334 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2337 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2338 BEGIN {RS = " "; FS = "/|\n";} {
2341 for (lt_i = NF; lt_i > 0; lt_i--) {
2342 if ($lt_i != "" && $lt_i != ".") {
2343 if ($lt_i == "..") {
2346 if (lt_count == 0) {
2347 lt_foo = "/" $lt_i lt_foo;
2354 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2355 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2357 # AWK program above erroneously prepends '/' to C:/dos/paths
2360 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2361 $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
2363 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2365 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2368 libname_spec='lib$name'
2376 shlibpath_overrides_runpath=unknown
2378 dynamic_linker="$host_os ld.so"
2379 sys_lib_dlsearch_path_spec="/lib /usr/lib"
2380 need_lib_prefix=unknown
2381 hardcode_into_libs=no
2383 # when you set need_version to no, make sure it does not cause -set_version
2384 # flags to be left without arguments
2385 need_version=unknown
2387 AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
2388 [User-defined run-time library search path.])
2392 version_type=linux # correct to gnu/linux during the next big refactor
2393 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
2394 shlibpath_var=LIBPATH
2396 # AIX 3 has no versioning support, so we append a major version to the name.
2397 soname_spec='$libname$release$shared_ext$major'
2401 version_type=linux # correct to gnu/linux during the next big refactor
2404 hardcode_into_libs=yes
2405 if test ia64 = "$host_cpu"; then
2406 # AIX 5 supports IA64
2407 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
2408 shlibpath_var=LD_LIBRARY_PATH
2410 # With GCC up to 2.95.x, collect2 would create an import file
2411 # for dependence libraries. The import file would start with
2412 # the line '#! .'. This would cause the generated library to
2413 # depend on '.', always an invalid library. This was fixed in
2414 # development snapshots of GCC prior to 3.0.
2416 aix4 | aix4.[[01]] | aix4.[[01]].*)
2417 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2419 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
2426 # Using Import Files as archive members, it is possible to support
2427 # filename-based versioning of shared library archives on AIX. While
2428 # this would work for both with and without runtime linking, it will
2429 # prevent static linking of such archives. So we do filename-based
2430 # shared library versioning with .so extension only, which is used
2431 # when both runtime linking and shared linking is enabled.
2432 # Unfortunately, runtime linking may impact performance, so we do
2433 # not want this to be the default eventually. Also, we use the
2434 # versioned .so libs for executables only if there is the -brtl
2435 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
2436 # To allow for filename-based versioning support, we need to create
2437 # libNAME.so.V as an archive file, containing:
2438 # *) an Import File, referring to the versioned filename of the
2439 # archive as well as the shared archive member, telling the
2440 # bitwidth (32 or 64) of that shared object, and providing the
2441 # list of exported symbols of that shared object, eventually
2442 # decorated with the 'weak' keyword
2443 # *) the shared object with the F_LOADONLY flag set, to really avoid
2444 # it being seen by the linker.
2445 # At run time we better use the real file rather than another symlink,
2446 # but for link time we create the symlink libNAME.so -> libNAME.so.V
2448 case $with_aix_soname,$aix_use_runtimelinking in
2449 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
2450 # soname into executable. Probably we can add versioning support to
2451 # collect2, so additional links can be useful in future.
2452 aix,yes) # traditional libtool
2453 dynamic_linker='AIX unversionable lib.so'
2454 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2455 # instead of lib<name>.a to let people know that these are not
2456 # typical AIX shared libraries.
2457 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2459 aix,no) # traditional AIX only
2460 dynamic_linker='AIX lib.a[(]lib.so.V[)]'
2461 # We preserve .a as extension for shared libraries through AIX4.2
2462 # and later when we are not doing run time linking.
2463 library_names_spec='$libname$release.a $libname.a'
2464 soname_spec='$libname$release$shared_ext$major'
2466 svr4,*) # full svr4 only
2467 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
2468 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2469 # We do not specify a path in Import Files, so LIBPATH fires.
2470 shlibpath_overrides_runpath=yes
2472 *,yes) # both, prefer svr4
2473 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
2474 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2475 # unpreferred sharedlib libNAME.a needs extra handling
2476 postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
2477 postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
2478 # We do not specify a path in Import Files, so LIBPATH fires.
2479 shlibpath_overrides_runpath=yes
2481 *,no) # both, prefer aix
2482 dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
2483 library_names_spec='$libname$release.a $libname.a'
2484 soname_spec='$libname$release$shared_ext$major'
2485 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
2486 postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
2487 postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
2490 shlibpath_var=LIBPATH
2497 # Since July 2007 AmigaOS4 officially supports .so libraries.
2498 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2499 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2502 library_names_spec='$libname.ixlibrary $libname.a'
2503 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2504 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $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'
2510 library_names_spec='$libname$shared_ext'
2511 dynamic_linker="$host_os ld.so"
2512 shlibpath_var=LIBRARY_PATH
2516 version_type=linux # correct to gnu/linux during the next big refactor
2518 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2519 soname_spec='$libname$release$shared_ext$major'
2520 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2521 shlibpath_var=LD_LIBRARY_PATH
2522 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2523 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2524 # the default ld.so.conf also contains /usr/contrib/lib and
2525 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2526 # libtool to hard-code these into programs
2529 cygwin* | mingw* | pw32* | cegcc*)
2530 version_type=windows
2535 case $GCC,$cc_basename in
2538 library_names_spec='$libname.dll.a'
2539 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2540 postinstall_cmds='base_file=`basename \$file`~
2541 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2542 dldir=$destdir/`dirname \$dlpath`~
2543 test -d \$dldir || mkdir -p \$dldir~
2544 $install_prog $dir/$dlname \$dldir/$dlname~
2545 chmod a+x \$dldir/$dlname~
2546 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2547 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2549 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2550 dlpath=$dir/\$dldll~
2552 shlibpath_overrides_runpath=yes
2556 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2557 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2559 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2562 # MinGW DLLs use traditional 'lib' prefix
2563 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2566 # pw32 DLLs use 'pw' prefix rather than 'lib'
2567 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2570 dynamic_linker='Win32 ld.exe'
2575 libname_spec='$name'
2576 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2577 library_names_spec='$libname.dll.lib'
2581 sys_lib_search_path_spec=
2587 # Let DOS variable expansion print the short 8.3 style file name.
2588 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2589 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2592 # Convert to MSYS style.
2593 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2596 # Convert to unix form, then to dos form, then back to unix form
2597 # but this time dos style (no spaces!) so that the unix form looks
2598 # like /cygdrive/c/PROGRA~1:/cygdr...
2599 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2600 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2601 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2604 sys_lib_search_path_spec=$LIB
2605 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2606 # It is most probably a Windows format PATH.
2607 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2609 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2611 # FIXME: find the short name or the path components, as spaces are
2612 # common. (e.g. "Program Files" -> "PROGRA~1")
2616 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2617 postinstall_cmds='base_file=`basename \$file`~
2618 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2619 dldir=$destdir/`dirname \$dlpath`~
2620 test -d \$dldir || mkdir -p \$dldir~
2621 $install_prog $dir/$dlname \$dldir/$dlname'
2622 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2623 dlpath=$dir/\$dldll~
2625 shlibpath_overrides_runpath=yes
2626 dynamic_linker='Win32 link.exe'
2630 # Assume MSVC wrapper
2631 library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
2632 dynamic_linker='Win32 ld.exe'
2635 # FIXME: first we should search . and the directory the executable is in
2639 darwin* | rhapsody*)
2640 dynamic_linker="$host_os dyld"
2644 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
2645 soname_spec='$libname$release$major$shared_ext'
2646 shlibpath_overrides_runpath=yes
2647 shlibpath_var=DYLD_LIBRARY_PATH
2648 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2650 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2651 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
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 shlibpath_var=LD_LIBRARY_PATH
2663 freebsd* | dragonfly*)
2664 # DragonFly does not have aout. When/if they implement a new
2665 # versioning mechanism, adjust this.
2666 if test -x /usr/bin/objformat; then
2667 objformat=`/usr/bin/objformat`
2670 freebsd[[23]].*) objformat=aout ;;
2674 version_type=freebsd-$objformat
2675 case $version_type in
2677 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2678 soname_spec='$libname$release$shared_ext$major'
2683 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2687 shlibpath_var=LD_LIBRARY_PATH
2690 shlibpath_overrides_runpath=yes
2692 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2693 shlibpath_overrides_runpath=yes
2694 hardcode_into_libs=yes
2696 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2697 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2698 shlibpath_overrides_runpath=no
2699 hardcode_into_libs=yes
2701 *) # from 4.6 on, and DragonFly
2702 shlibpath_overrides_runpath=yes
2703 hardcode_into_libs=yes
2709 version_type=linux # correct to gnu/linux during the next big refactor
2712 dynamic_linker="$host_os runtime_loader"
2713 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2714 soname_spec='$libname$release$shared_ext$major'
2715 shlibpath_var=LIBRARY_PATH
2716 shlibpath_overrides_runpath=no
2717 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2718 hardcode_into_libs=yes
2721 hpux9* | hpux10* | hpux11*)
2722 # Give a soname corresponding to the major version so that dld.sl refuses to
2723 # link against other versions.
2730 hardcode_into_libs=yes
2731 dynamic_linker="$host_os dld.so"
2732 shlibpath_var=LD_LIBRARY_PATH
2733 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2734 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2735 soname_spec='$libname$release$shared_ext$major'
2736 if test 32 = "$HPUX_IA64_MODE"; then
2737 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2738 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
2740 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2741 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
2746 hardcode_into_libs=yes
2747 dynamic_linker="$host_os dld.sl"
2748 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2749 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2750 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2751 soname_spec='$libname$release$shared_ext$major'
2752 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2753 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2757 dynamic_linker="$host_os dld.sl"
2758 shlibpath_var=SHLIB_PATH
2759 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2760 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2761 soname_spec='$libname$release$shared_ext$major'
2764 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2765 postinstall_cmds='chmod 555 $lib'
2766 # or fails outright, so override atomically:
2767 install_override_mode=555
2771 version_type=linux # correct to gnu/linux during the next big refactor
2774 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2775 soname_spec='$libname$release$shared_ext$major'
2776 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2777 shlibpath_var=LD_LIBRARY_PATH
2778 shlibpath_overrides_runpath=no
2779 hardcode_into_libs=yes
2782 irix5* | irix6* | nonstopux*)
2784 nonstopux*) version_type=nonstopux ;;
2786 if test yes = "$lt_cv_prog_gnu_ld"; then
2787 version_type=linux # correct to gnu/linux during the next big refactor
2794 soname_spec='$libname$release$shared_ext$major'
2795 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
2797 irix5* | nonstopux*)
2801 case $LD in # libtool.m4 will add one of these switches to LD
2802 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2803 libsuff= shlibsuff= libmagic=32-bit;;
2804 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2805 libsuff=32 shlibsuff=N32 libmagic=N32;;
2806 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2807 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2808 *) libsuff= shlibsuff= libmagic=never-match;;
2812 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2813 shlibpath_overrides_runpath=no
2814 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
2815 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
2816 hardcode_into_libs=yes
2819 # No shared lib support for Linux oldld, aout, or coff.
2820 linux*oldld* | linux*aout* | linux*coff*)
2825 version_type=none # Android doesn't support versioned libraries.
2828 library_names_spec='$libname$release$shared_ext'
2829 soname_spec='$libname$release$shared_ext'
2831 shlibpath_var=LD_LIBRARY_PATH
2832 shlibpath_overrides_runpath=yes
2834 # This implies no fast_install, which is unacceptable.
2835 # Some rework will be needed to allow for fast_install
2836 # before this can be enabled.
2837 hardcode_into_libs=yes
2839 dynamic_linker='Android linker'
2840 # Don't embed -rpath directories since the linker doesn't support them.
2841 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2844 # This must be glibc/ELF.
2845 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
2846 version_type=linux # correct to gnu/linux during the next big refactor
2849 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2850 soname_spec='$libname$release$shared_ext$major'
2851 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2852 shlibpath_var=LD_LIBRARY_PATH
2853 shlibpath_overrides_runpath=no
2855 # Some binutils ld are patched to set DT_RUNPATH
2856 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2857 [lt_cv_shlibpath_overrides_runpath=no
2858 save_LDFLAGS=$LDFLAGS
2860 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2861 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2862 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2863 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2864 [lt_cv_shlibpath_overrides_runpath=yes])])
2865 LDFLAGS=$save_LDFLAGS
2868 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2870 # This implies no fast_install, which is unacceptable.
2871 # Some rework will be needed to allow for fast_install
2872 # before this can be enabled.
2873 hardcode_into_libs=yes
2875 # Ideally, we could use ldconfig to report *all* directores which are
2876 # searched for libraries, however this is still not possible. Aside from not
2877 # being certain /sbin/ldconfig is available, command
2878 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
2879 # even though it is searched at run-time. Try to do the best guess by
2880 # appending ld.so.conf contents (and includes) to the search path.
2881 if test -f /etc/ld.so.conf; then
2882 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' ' '`
2883 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2886 # We used to test for /lib/ld.so.1 and disable shared libraries on
2887 # powerpc, because MkLinux only supported shared libraries with the
2888 # GNU dynamic linker. Since this was broken with cross compilers,
2889 # most powerpc-linux boxes support dynamic linking these days and
2890 # people can always --disable-shared, the test was removed, and we
2891 # assume the GNU/Linux dynamic linker is in use.
2892 dynamic_linker='GNU/Linux ld.so'
2899 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2900 soname_spec='${libname}${release}${shared_ext}$major'
2901 shlibpath_var=LD_LIBRARY_PATH
2902 shlibpath_overrides_runpath=no
2903 hardcode_into_libs=yes
2904 dynamic_linker='NetBSD ld.elf_so'
2911 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2912 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2913 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2914 dynamic_linker='NetBSD (a.out) ld.so'
2916 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2917 soname_spec='$libname$release$shared_ext$major'
2918 dynamic_linker='NetBSD ld.elf_so'
2920 shlibpath_var=LD_LIBRARY_PATH
2921 shlibpath_overrides_runpath=yes
2922 hardcode_into_libs=yes
2926 version_type=linux # correct to gnu/linux during the next big refactor
2927 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2928 shlibpath_var=LD_LIBRARY_PATH
2929 shlibpath_overrides_runpath=yes
2936 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2937 soname_spec='$libname$release$shared_ext$major'
2938 shlibpath_var=LD_LIBRARY_PATH
2939 shlibpath_overrides_runpath=no
2940 hardcode_into_libs=yes
2941 dynamic_linker='ldqnx.so'
2946 sys_lib_dlsearch_path_spec=/usr/lib
2948 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
2953 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2954 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2955 shlibpath_var=LD_LIBRARY_PATH
2956 shlibpath_overrides_runpath=yes
2960 libname_spec='$name'
2961 version_type=windows
2965 # OS/2 can only load a DLL with a base name of 8 characters or less.
2966 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
2967 v=$($ECHO $release$versuffix | tr -d .-);
2968 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
2969 $ECHO $n$v`$shared_ext'
2970 library_names_spec='${libname}_dll.$libext'
2971 dynamic_linker='OS/2 ld.exe'
2972 shlibpath_var=BEGINLIBPATH
2973 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2974 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2975 postinstall_cmds='base_file=`basename \$file`~
2976 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
2977 dldir=$destdir/`dirname \$dlpath`~
2978 test -d \$dldir || mkdir -p \$dldir~
2979 $install_prog $dir/$dlname \$dldir/$dlname~
2980 chmod a+x \$dldir/$dlname~
2981 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2982 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2984 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
2985 dlpath=$dir/\$dldll~
2989 osf3* | osf4* | osf5*)
2993 soname_spec='$libname$release$shared_ext$major'
2994 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2995 shlibpath_var=LD_LIBRARY_PATH
2996 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2997 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
3005 version_type=linux # correct to gnu/linux during the next big refactor
3008 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3009 soname_spec='$libname$release$shared_ext$major'
3010 shlibpath_var=LD_LIBRARY_PATH
3011 shlibpath_overrides_runpath=yes
3012 hardcode_into_libs=yes
3013 # ldd complains unless libraries are executable
3014 postinstall_cmds='chmod +x $lib'
3019 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
3020 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
3021 shlibpath_var=LD_LIBRARY_PATH
3022 shlibpath_overrides_runpath=yes
3023 if test yes = "$with_gnu_ld"; then
3030 version_type=linux # correct to gnu/linux during the next big refactor
3031 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3032 soname_spec='$libname$release$shared_ext$major'
3033 shlibpath_var=LD_LIBRARY_PATH
3034 case $host_vendor in
3036 shlibpath_overrides_runpath=no
3038 runpath_var=LD_RUN_PATH
3046 shlibpath_overrides_runpath=no
3047 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
3053 if test -d /usr/nec; then
3054 version_type=linux # correct to gnu/linux during the next big refactor
3055 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
3056 soname_spec='$libname$shared_ext.$major'
3057 shlibpath_var=LD_LIBRARY_PATH
3061 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3065 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
3066 soname_spec='$libname$release$shared_ext$major'
3067 shlibpath_var=LD_LIBRARY_PATH
3068 shlibpath_overrides_runpath=yes
3069 hardcode_into_libs=yes
3070 if test yes = "$with_gnu_ld"; then
3071 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
3073 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
3076 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
3080 sys_lib_dlsearch_path_spec='/usr/lib'
3084 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
3085 version_type=linux # correct to gnu/linux during the next big refactor
3088 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3089 shlibpath_var=LD_LIBRARY_PATH
3090 shlibpath_overrides_runpath=no
3091 hardcode_into_libs=yes
3095 version_type=linux # correct to gnu/linux during the next big refactor
3096 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3097 soname_spec='$libname$release$shared_ext$major'
3098 shlibpath_var=LD_LIBRARY_PATH
3105 AC_MSG_RESULT([$dynamic_linker])
3106 test no = "$dynamic_linker" && can_build_shared=no
3108 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
3109 if test yes = "$GCC"; then
3110 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3113 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
3114 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
3117 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
3118 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
3121 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
3122 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
3124 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
3125 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
3127 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
3128 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
3130 _LT_DECL([], [variables_saved_for_relink], [1],
3131 [Variables whose values should be saved in libtool wrapper scripts and
3132 restored at link time])
3133 _LT_DECL([], [need_lib_prefix], [0],
3134 [Do we need the "lib" prefix for modules?])
3135 _LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
3136 _LT_DECL([], [version_type], [0], [Library versioning type])
3137 _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
3138 _LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
3139 _LT_DECL([], [shlibpath_overrides_runpath], [0],
3140 [Is shlibpath searched before the hard-coded library search path?])
3141 _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
3142 _LT_DECL([], [library_names_spec], [1],
3143 [[List of archive names. First name is the real one, the rest are links.
3144 The last name is the one that the linker finds with -lNAME]])
3145 _LT_DECL([], [soname_spec], [1],
3146 [[The coded name of the library, if different from the real name]])
3147 _LT_DECL([], [install_override_mode], [1],
3148 [Permission mode override for installation of shared libraries])
3149 _LT_DECL([], [postinstall_cmds], [2],
3150 [Command to use after installation of a shared archive])
3151 _LT_DECL([], [postuninstall_cmds], [2],
3152 [Command to use after uninstallation of a shared archive])
3153 _LT_DECL([], [finish_cmds], [2],
3154 [Commands used to finish a libtool library installation in a directory])
3155 _LT_DECL([], [finish_eval], [1],
3156 [[As "finish_cmds", except a single script fragment to be evaled but
3158 _LT_DECL([], [hardcode_into_libs], [0],
3159 [Whether we should hardcode library paths into libraries])
3160 _LT_DECL([], [sys_lib_search_path_spec], [2],
3161 [Compile-time system search path for libraries])
3162 _LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
3163 [Detected run-time system search path for libraries])
3164 _LT_DECL([], [configure_time_lt_sys_library_path], [2],
3165 [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
3166 ])# _LT_SYS_DYNAMIC_LINKER
3169 # _LT_PATH_TOOL_PREFIX(TOOL)
3170 # --------------------------
3171 # find a file program that can recognize shared library
3172 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
3173 [m4_require([_LT_DECL_EGREP])dnl
3174 AC_MSG_CHECKING([for $1])
3175 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3177 [[\\/*] | ?:[\\/]*])
3178 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
3181 lt_save_MAGIC_CMD=$MAGIC_CMD
3182 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3183 dnl $ac_dummy forces splitting on constant user-supplied paths.
3184 dnl POSIX.2 word splitting is done only on the output of word expansions,
3185 dnl not every word. This closes a longstanding sh security hole.
3186 ac_dummy="m4_if([$2], , $PATH, [$2])"
3187 for ac_dir in $ac_dummy; do
3189 test -z "$ac_dir" && ac_dir=.
3190 if test -f "$ac_dir/$1"; then
3191 lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
3192 if test -n "$file_magic_test_file"; then
3193 case $deplibs_check_method in
3195 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
3196 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3197 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3198 $EGREP "$file_magic_regex" > /dev/null; then
3203 *** Warning: the command libtool uses to detect shared libraries,
3204 *** $file_magic_cmd, produces output that libtool cannot recognize.
3205 *** The result is that libtool may fail to recognize shared libraries
3206 *** as such. This will affect the creation of libtool libraries that
3207 *** depend on shared libraries, but programs linked with such libtool
3208 *** libraries will work regardless of this problem. Nevertheless, you
3209 *** may want to report the problem to your system manager and/or to
3210 *** bug-libtool@gnu.org
3220 MAGIC_CMD=$lt_save_MAGIC_CMD
3223 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3224 if test -n "$MAGIC_CMD"; then
3225 AC_MSG_RESULT($MAGIC_CMD)
3229 _LT_DECL([], [MAGIC_CMD], [0],
3230 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3231 ])# _LT_PATH_TOOL_PREFIX
3234 AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3235 dnl aclocal-1.4 backwards compatibility:
3236 dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
3241 # find a file program that can recognize a shared library
3242 m4_defun([_LT_PATH_MAGIC],
3243 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
3244 if test -z "$lt_cv_path_MAGIC_CMD"; then
3245 if test -n "$ac_tool_prefix"; then
3246 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
3256 # find the pathname to the GNU or non-GNU linker
3257 AC_DEFUN([LT_PATH_LD],
3258 [AC_REQUIRE([AC_PROG_CC])dnl
3259 AC_REQUIRE([AC_CANONICAL_HOST])dnl
3260 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3261 m4_require([_LT_DECL_SED])dnl
3262 m4_require([_LT_DECL_EGREP])dnl
3263 m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
3265 AC_ARG_WITH([gnu-ld],
3266 [AS_HELP_STRING([--with-gnu-ld],
3267 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
3268 [test no = "$withval" || with_gnu_ld=yes],
3269 [with_gnu_ld=no])dnl
3272 if test yes = "$GCC"; then
3273 # Check if gcc -print-prog-name=ld gives a path.
3274 AC_MSG_CHECKING([for ld used by $CC])
3277 # gcc leaves a trailing carriage return, which upsets mingw
3278 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3280 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3283 # Accept absolute paths.
3284 [[\\/]]* | ?:[[\\/]]*)
3285 re_direlt='/[[^/]][[^/]]*/\.\./'
3286 # Canonicalize the pathname of ld
3287 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3288 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3289 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3291 test -z "$LD" && LD=$ac_prog
3294 # If it fails, then pretend we aren't using GCC.
3298 # If it is relative, then search for the first ld in PATH.
3302 elif test yes = "$with_gnu_ld"; then
3303 AC_MSG_CHECKING([for GNU ld])
3305 AC_MSG_CHECKING([for non-GNU ld])
3307 AC_CACHE_VAL(lt_cv_path_LD,
3308 [if test -z "$LD"; then
3309 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3310 for ac_dir in $PATH; do
3312 test -z "$ac_dir" && ac_dir=.
3313 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3314 lt_cv_path_LD=$ac_dir/$ac_prog
3315 # Check to see if the program is GNU ld. I'd rather use --version,
3316 # but apparently some variants of GNU ld only accept -v.
3317 # Break only if it was the GNU/non-GNU ld that we prefer.
3318 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3319 *GNU* | *'with BFD'*)
3320 test no != "$with_gnu_ld" && break
3323 test yes != "$with_gnu_ld" && break
3330 lt_cv_path_LD=$LD # Let the user override the test with a path.
3333 if test -n "$LD"; then
3338 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3342 _LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3346 AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3347 AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3348 dnl aclocal-1.4 backwards compatibility:
3349 dnl AC_DEFUN([AM_PROG_LD], [])
3350 dnl AC_DEFUN([AC_PROG_LD], [])
3355 m4_defun([_LT_PATH_LD_GNU],
3356 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3357 [# I'd rather use --version here, but apparently some GNU lds only accept -v.
3358 case `$LD -v 2>&1 </dev/null` in
3359 *GNU* | *'with BFD'*)
3360 lt_cv_prog_gnu_ld=yes
3363 lt_cv_prog_gnu_ld=no
3366 with_gnu_ld=$lt_cv_prog_gnu_ld
3372 # find reload flag for linker
3373 # -- PORTME Some linkers may need a different reload flag.
3374 m4_defun([_LT_CMD_RELOAD],
3375 [AC_CACHE_CHECK([for $LD option to reload object files],
3376 lt_cv_ld_reload_flag,
3377 [lt_cv_ld_reload_flag='-r'])
3378 reload_flag=$lt_cv_ld_reload_flag
3379 case $reload_flag in
3381 *) reload_flag=" $reload_flag" ;;
3383 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3385 cygwin* | mingw* | pw32* | cegcc*)
3386 if test yes != "$GCC"; then
3391 if test yes = "$GCC"; then
3392 reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
3394 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3398 _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3399 _LT_TAGDECL([], [reload_cmds], [2])dnl
3406 m4_defun([_LT_PATH_DD],
3407 [AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
3408 [printf 0123456789abcdef0123456789abcdef >conftest.i
3409 cat conftest.i conftest.i >conftest2.i
3411 AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
3412 [if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3413 cmp -s conftest.i conftest.out \
3414 && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
3416 rm -f conftest.i conftest2.i conftest.out])
3422 # find command to truncate a binary pipe
3423 m4_defun([_LT_CMD_TRUNCATE],
3424 [m4_require([_LT_PATH_DD])
3425 AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
3426 [printf 0123456789abcdef0123456789abcdef >conftest.i
3427 cat conftest.i conftest.i >conftest2.i
3429 if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3430 cmp -s conftest.i conftest.out \
3431 && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
3433 rm -f conftest.i conftest2.i conftest.out
3434 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
3435 _LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
3436 [Command to truncate a binary pipe])
3437 ])# _LT_CMD_TRUNCATE
3440 # _LT_CHECK_MAGIC_METHOD
3441 # ----------------------
3442 # how to check for library dependencies
3443 # -- PORTME fill in with the dynamic library characteristics
3444 m4_defun([_LT_CHECK_MAGIC_METHOD],
3445 [m4_require([_LT_DECL_EGREP])
3446 m4_require([_LT_DECL_OBJDUMP])
3447 AC_CACHE_CHECK([how to recognize dependent libraries],
3448 lt_cv_deplibs_check_method,
3449 [lt_cv_file_magic_cmd='$MAGIC_CMD'
3450 lt_cv_file_magic_test_file=
3451 lt_cv_deplibs_check_method='unknown'
3452 # Need to set the preceding variable on all platforms that support
3453 # interlibrary dependencies.
3454 # 'none' -- dependencies not supported.
3455 # 'unknown' -- same as none, but documents that we really don't know.
3456 # 'pass_all' -- all dependencies passed with no checks.
3457 # 'test_compile' -- check by making test program.
3458 # 'file_magic [[regex]]' -- check by looking for files in library path
3459 # that responds to the $file_magic_cmd with a given extended regex.
3460 # If you have 'file' or equivalent on your system and you're not sure
3461 # whether 'pass_all' will *always* work, you probably want this one.
3465 lt_cv_deplibs_check_method=pass_all
3469 lt_cv_deplibs_check_method=pass_all
3473 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3474 lt_cv_file_magic_cmd='/usr/bin/file -L'
3475 lt_cv_file_magic_test_file=/shlib/libc.so
3479 # func_win32_libid is a shell function defined in ltmain.sh
3480 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3481 lt_cv_file_magic_cmd='func_win32_libid'
3485 # Base MSYS/MinGW do not provide the 'file' command needed by
3486 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3487 # unless we find 'file', for example because we are cross-compiling.
3488 if ( file / ) >/dev/null 2>&1; then
3489 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3490 lt_cv_file_magic_cmd='func_win32_libid'
3492 # Keep this pattern in sync with the one in func_win32_libid.
3493 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3494 lt_cv_file_magic_cmd='$OBJDUMP -f'
3499 # use the weaker test based on 'objdump'. See mingw*.
3500 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3501 lt_cv_file_magic_cmd='$OBJDUMP -f'
3504 darwin* | rhapsody*)
3505 lt_cv_deplibs_check_method=pass_all
3508 freebsd* | dragonfly*)
3509 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3512 # Not sure whether the presence of OpenBSD here was a mistake.
3513 # Let's accept both of them until this is cleared up.
3514 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3515 lt_cv_file_magic_cmd=/usr/bin/file
3516 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3520 lt_cv_deplibs_check_method=pass_all
3525 lt_cv_deplibs_check_method=pass_all
3528 hpux10.20* | hpux11*)
3529 lt_cv_file_magic_cmd=/usr/bin/file
3532 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3533 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3536 [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]']
3537 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3540 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3541 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3547 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3548 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3551 irix5* | irix6* | nonstopux*)
3553 *-32|*"-32 ") libmagic=32-bit;;
3554 *-n32|*"-n32 ") libmagic=N32;;
3555 *-64|*"-64 ") libmagic=64-bit;;
3556 *) libmagic=never-match;;
3558 lt_cv_deplibs_check_method=pass_all
3561 # This must be glibc/ELF.
3562 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
3563 lt_cv_deplibs_check_method=pass_all
3566 netbsd* | netbsdelf*-gnu)
3567 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3568 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3570 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3575 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3576 lt_cv_file_magic_cmd=/usr/bin/file
3577 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3581 lt_cv_deplibs_check_method=pass_all
3585 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
3586 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3588 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3592 osf3* | osf4* | osf5*)
3593 lt_cv_deplibs_check_method=pass_all
3597 lt_cv_deplibs_check_method=pass_all
3601 lt_cv_deplibs_check_method=pass_all
3604 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3605 lt_cv_deplibs_check_method=pass_all
3609 case $host_vendor in
3611 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]]'
3612 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3615 lt_cv_deplibs_check_method=pass_all
3618 lt_cv_file_magic_cmd='/bin/file'
3619 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3622 lt_cv_file_magic_cmd='/bin/file'
3623 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3624 lt_cv_file_magic_test_file=/lib/libc.so
3627 lt_cv_deplibs_check_method=pass_all
3630 lt_cv_deplibs_check_method=pass_all
3636 lt_cv_deplibs_check_method=pass_all
3639 lt_cv_deplibs_check_method=pass_all
3646 if test "$build" = "$host"; then
3649 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3652 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3658 file_magic_cmd=$lt_cv_file_magic_cmd
3659 deplibs_check_method=$lt_cv_deplibs_check_method
3660 test -z "$deplibs_check_method" && deplibs_check_method=unknown
3662 _LT_DECL([], [deplibs_check_method], [1],
3663 [Method to check whether dependent libraries are shared objects])
3664 _LT_DECL([], [file_magic_cmd], [1],
3665 [Command to use when deplibs_check_method = "file_magic"])
3666 _LT_DECL([], [file_magic_glob], [1],
3667 [How to find potential files when deplibs_check_method = "file_magic"])
3668 _LT_DECL([], [want_nocaseglob], [1],
3669 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3670 ])# _LT_CHECK_MAGIC_METHOD
3675 # find the pathname to a BSD- or MS-compatible name lister
3676 AC_DEFUN([LT_PATH_NM],
3677 [AC_REQUIRE([AC_PROG_CC])dnl
3678 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3679 [if test -n "$NM"; then
3680 # Let the user override the test.
3683 lt_nm_to_check=${ac_tool_prefix}nm
3684 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3685 lt_nm_to_check="$lt_nm_to_check nm"
3687 for lt_tmp_nm in $lt_nm_to_check; do
3688 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3689 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3691 test -z "$ac_dir" && ac_dir=.
3692 tmp_nm=$ac_dir/$lt_tmp_nm
3693 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
3694 # Check to see if the nm accepts a BSD-compat flag.
3695 # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
3696 # nm: unknown option "B" ignored
3697 # Tru64's nm complains that /dev/null is an invalid object file
3698 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
3700 mingw*) lt_bad_file=conftest.nm/nofile ;;
3701 *) lt_bad_file=/dev/null ;;
3703 case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
3704 *$lt_bad_file* | *'Invalid file or object type'*)
3705 lt_cv_path_NM="$tmp_nm -B"
3709 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3711 lt_cv_path_NM="$tmp_nm -p"
3715 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3716 continue # so that we can try to find one that supports BSD flags
3725 : ${lt_cv_path_NM=no}
3727 if test no != "$lt_cv_path_NM"; then
3730 # Didn't find any BSD compatible name lister, look for dumpbin.
3731 if test -n "$DUMPBIN"; then :
3732 # Let the user override the test.
3734 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3735 case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
3737 DUMPBIN="$DUMPBIN -symbols -headers"
3745 if test : != "$DUMPBIN"; then
3749 test -z "$NM" && NM=nm
3751 _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3753 AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3754 [lt_cv_nm_interface="BSD nm"
3755 echo "int some_variable = 0;" > conftest.$ac_ext
3756 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3757 (eval "$ac_compile" 2>conftest.err)
3758 cat conftest.err >&AS_MESSAGE_LOG_FD
3759 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3760 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3761 cat conftest.err >&AS_MESSAGE_LOG_FD
3762 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3763 cat conftest.out >&AS_MESSAGE_LOG_FD
3764 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3765 lt_cv_nm_interface="MS dumpbin"
3771 AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3772 AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3773 dnl aclocal-1.4 backwards compatibility:
3774 dnl AC_DEFUN([AM_PROG_NM], [])
3775 dnl AC_DEFUN([AC_PROG_NM], [])
3777 # _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3778 # --------------------------------
3779 # how to determine the name of the shared library
3780 # associated with a specific link library.
3781 # -- PORTME fill in with the dynamic library characteristics
3782 m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3783 [m4_require([_LT_DECL_EGREP])
3784 m4_require([_LT_DECL_OBJDUMP])
3785 m4_require([_LT_DECL_DLLTOOL])
3786 AC_CACHE_CHECK([how to associate runtime and link libraries],
3787 lt_cv_sharedlib_from_linklib_cmd,
3788 [lt_cv_sharedlib_from_linklib_cmd='unknown'
3791 cygwin* | mingw* | pw32* | cegcc*)
3792 # two different shell functions defined in ltmain.sh;
3793 # decide which one to use based on capabilities of $DLLTOOL
3794 case `$DLLTOOL --help 2>&1` in
3795 *--identify-strict*)
3796 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3799 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3804 # fallback: assume linklib IS sharedlib
3805 lt_cv_sharedlib_from_linklib_cmd=$ECHO
3809 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3810 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3812 _LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3813 [Command to associate shared and link libraries])
3814 ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3817 # _LT_PATH_MANIFEST_TOOL
3818 # ----------------------
3819 # locate the manifest tool
3820 m4_defun([_LT_PATH_MANIFEST_TOOL],
3821 [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3822 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3823 AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3824 [lt_cv_path_mainfest_tool=no
3825 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3826 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3827 cat conftest.err >&AS_MESSAGE_LOG_FD
3828 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3829 lt_cv_path_mainfest_tool=yes
3832 if test yes != "$lt_cv_path_mainfest_tool"; then
3835 _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3836 ])# _LT_PATH_MANIFEST_TOOL
3839 # _LT_DLL_DEF_P([FILE])
3840 # ---------------------
3841 # True iff FILE is a Windows DLL '.def' file.
3842 # Keep in sync with func_dll_def_p in the libtool script
3843 AC_DEFUN([_LT_DLL_DEF_P],
3845 test DEF = "`$SED -n dnl
3846 -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace
3847 -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments
3848 -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl
3849 -e q dnl Only consider the first "real" line
3856 # check for math library
3857 AC_DEFUN([LT_LIB_M],
3858 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3861 *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3862 # These system don't have libm, or don't need it
3865 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
3866 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3869 AC_CHECK_LIB(m, cos, LIBM=-lm)
3876 AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3877 dnl aclocal-1.4 backwards compatibility:
3878 dnl AC_DEFUN([AC_CHECK_LIBM], [])
3881 # _LT_COMPILER_NO_RTTI([TAGNAME])
3882 # -------------------------------
3883 m4_defun([_LT_COMPILER_NO_RTTI],
3884 [m4_require([_LT_TAG_COMPILER])dnl
3886 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3888 if test yes = "$GCC"; then
3889 case $cc_basename in
3891 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3893 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3896 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3897 lt_cv_prog_compiler_rtti_exceptions,
3898 [-fno-rtti -fno-exceptions], [],
3899 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3901 _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3902 [Compiler flag to turn off builtin functions])
3903 ])# _LT_COMPILER_NO_RTTI
3906 # _LT_CMD_GLOBAL_SYMBOLS
3907 # ----------------------
3908 m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3909 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3910 AC_REQUIRE([AC_PROG_CC])dnl
3911 AC_REQUIRE([AC_PROG_AWK])dnl
3912 AC_REQUIRE([LT_PATH_NM])dnl
3913 AC_REQUIRE([LT_PATH_LD])dnl
3914 m4_require([_LT_DECL_SED])dnl
3915 m4_require([_LT_DECL_EGREP])dnl
3916 m4_require([_LT_TAG_COMPILER])dnl
3918 # Check for command to grab the raw symbol name followed by C symbol from nm.
3919 AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3920 AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3922 # These are sane defaults that work on at least a few old systems.
3923 # [They come from Ultrix. What could be older than Ultrix?!! ;)]
3925 # Character class describing NM global symbol codes.
3926 symcode='[[BCDEGRST]]'
3928 # Regexp to match symbols that can be accessed directly from C.
3929 sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3931 # Define system-specific variables.
3936 cygwin* | mingw* | pw32* | cegcc*)
3937 symcode='[[ABCDGISTW]]'
3940 if test ia64 = "$host_cpu"; then
3941 symcode='[[ABCDEGRST]]'
3945 symcode='[[BCDEGRST]]'
3948 symcode='[[BCDEGQRST]]'
3959 sysv5* | sco5v6* | unixware* | OpenUNIX*)
3963 symcode='[[DFNSTU]]'
3967 # If we're using GNU nm, then use its standard symbol codes.
3968 case `$NM -V 2>&1` in
3969 *GNU* | *'with BFD'*)
3970 symcode='[[ABCDGIRSTW]]' ;;
3973 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3974 # Gets list of data symbols to import.
3975 lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
3976 # Adjust the below global symbol transforms to fixup imported variables.
3977 lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
3978 lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
3979 lt_c_name_lib_hook="\
3980 -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
3981 -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
3983 # Disable hooks by default.
3984 lt_cv_sys_global_symbol_to_import=
3990 # Transform an extracted symbol line into a proper C declaration.
3991 # Some systems (esp. on ia64) link data and code symbols differently,
3992 # so use this general approach.
3993 lt_cv_sys_global_symbol_to_cdecl="sed -n"\
3995 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\
3996 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
3998 # Transform an extracted symbol line into symbol name and symbol address
3999 lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
4001 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
4002 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
4004 # Transform an extracted symbol line into symbol name with lib prefix and
4006 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
4007 $lt_c_name_lib_hook\
4008 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
4009 " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
4010 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
4012 # Handle CRLF in mingw tool chain
4016 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
4020 # Try without a prefix underscore, then with it.
4021 for ac_symprfx in "" "_"; do
4023 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
4024 symxfrm="\\1 $ac_symprfx\\2 \\2"
4026 # Write the raw and C identifiers.
4027 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4028 # Fake it for dumpbin and say T for any non-static function,
4029 # D for any global variable and I for any imported variable.
4030 # Also find C++ and __fastcall symbols from MSVC++,
4031 # which start with @ or ?.
4032 lt_cv_sys_global_symbol_pipe="$AWK ['"\
4033 " {last_section=section; section=\$ 3};"\
4034 " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
4035 " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
4036 " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
4037 " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
4038 " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
4039 " \$ 0!~/External *\|/{next};"\
4040 " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
4041 " {if(hide[section]) next};"\
4042 " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
4043 " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
4044 " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
4045 " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
4046 " ' prfx=^$ac_symprfx]"
4048 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
4050 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
4052 # Check to see that the pipe works correctly.
4056 cat > conftest.$ac_ext <<_LT_EOF
4061 void nm_test_func(void);
4062 void nm_test_func(void){}
4066 int main(){nm_test_var='a';nm_test_func();return(0);}
4069 if AC_TRY_EVAL(ac_compile); then
4070 # Now try to grab the symbols.
4072 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
4073 # Try sorting and uniquifying the output.
4074 if sort "$nlist" | uniq > "$nlist"T; then
4075 mv -f "$nlist"T "$nlist"
4080 # Make sure that we snagged all the symbols we need.
4081 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4082 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4083 cat <<_LT_EOF > conftest.$ac_ext
4084 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
4085 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4086 /* DATA imports from DLLs on WIN32 can't be const, because runtime
4087 relocations are performed -- see ld's documentation on pseudo-relocs. */
4088 # define LT@&t@_DLSYM_CONST
4089 #elif defined __osf__
4090 /* This system does not cope well with relocations in const data. */
4091 # define LT@&t@_DLSYM_CONST
4093 # define LT@&t@_DLSYM_CONST const
4101 # Now generate the symbol file.
4102 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
4104 cat <<_LT_EOF >> conftest.$ac_ext
4106 /* The mapping between symbol names and symbols. */
4107 LT@&t@_DLSYM_CONST struct {
4111 lt__PROGRAM__LTX_preloaded_symbols[[]] =
4113 { "@PROGRAM@", (void *) 0 },
4115 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
4116 cat <<\_LT_EOF >> conftest.$ac_ext
4120 /* This works around a problem in FreeBSD linker */
4121 #ifdef FREEBSD_WORKAROUND
4122 static const void *lt_preloaded_setup() {
4123 return lt__PROGRAM__LTX_preloaded_symbols;
4131 # Now try linking the two files.
4132 mv conftest.$ac_objext conftstm.$ac_objext
4133 lt_globsym_save_LIBS=$LIBS
4134 lt_globsym_save_CFLAGS=$CFLAGS
4135 LIBS=conftstm.$ac_objext
4136 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4137 if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
4140 LIBS=$lt_globsym_save_LIBS
4141 CFLAGS=$lt_globsym_save_CFLAGS
4143 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4146 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4149 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4152 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4153 cat conftest.$ac_ext >&5
4155 rm -rf conftest* conftst*
4157 # Do not use the global_symbol_pipe unless it works.
4158 if test yes = "$pipe_works"; then
4161 lt_cv_sys_global_symbol_pipe=
4165 if test -z "$lt_cv_sys_global_symbol_pipe"; then
4166 lt_cv_sys_global_symbol_to_cdecl=
4168 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4169 AC_MSG_RESULT(failed)
4174 # Response file support.
4175 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4176 nm_file_list_spec='@'
4177 elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4178 nm_file_list_spec='@'
4181 _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
4182 [Take the output of nm and produce a listing of raw symbols and C names])
4183 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4184 [Transform the output of nm in a proper C declaration])
4185 _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
4186 [Transform the output of nm into a list of symbols to manually relocate])
4187 _LT_DECL([global_symbol_to_c_name_address],
4188 [lt_cv_sys_global_symbol_to_c_name_address], [1],
4189 [Transform the output of nm in a C name address pair])
4190 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4191 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4192 [Transform the output of nm in a C name address pair when lib prefix is needed])
4193 _LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4194 [The name lister interface])
4195 _LT_DECL([], [nm_file_list_spec], [1],
4196 [Specify filename containing input files for $NM])
4197 ]) # _LT_CMD_GLOBAL_SYMBOLS
4200 # _LT_COMPILER_PIC([TAGNAME])
4201 # ---------------------------
4202 m4_defun([_LT_COMPILER_PIC],
4203 [m4_require([_LT_TAG_COMPILER])dnl
4204 _LT_TAGVAR(lt_prog_compiler_wl, $1)=
4205 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4206 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4208 m4_if([$1], [CXX], [
4209 # C++ specific cases for pic, static, wl, etc.
4210 if test yes = "$GXX"; then
4211 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4212 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4216 # All AIX code is PIC.
4217 if test ia64 = "$host_cpu"; then
4218 # AIX 5 now supports IA64 processor
4219 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4221 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4227 # see comment about AmigaOS4 .so support
4228 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4231 # FIXME: we need at least 68020 code to build shared libraries, but
4232 # adding the '-m68020' flag to GCC prevents building anything better,
4234 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4239 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4240 # PIC is the default for these OSes.
4242 mingw* | cygwin* | os2* | pw32* | cegcc*)
4243 # This hack is so that the source file can tell whether it is being
4244 # built for inclusion in a dll (and should export symbols for example).
4245 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4246 # (--disable-auto-import) libraries
4247 m4_if([$1], [GCJ], [],
4248 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4251 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4255 darwin* | rhapsody*)
4256 # PIC is the default on this platform
4257 # Common symbols not allowed in MH_DYLIB files
4258 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4261 # DJGPP does not support shared libraries at all
4262 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4265 # PIC is the default for Haiku.
4266 # The "-static" flag exists, but is broken.
4267 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4270 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4271 # Instead, we relocate shared libraries at runtime.
4274 if test -d /usr/nec; then
4275 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4279 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4280 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4281 # sets the default TLS model and affects inlining.
4286 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4291 # QNX uses GNU C++, but need to define -shared option too, otherwise
4293 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4296 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4302 # All AIX code is PIC.
4303 if test ia64 = "$host_cpu"; then
4304 # AIX 5 now supports IA64 processor
4305 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4307 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4311 case $cc_basename in
4313 # Green Hills C++ Compiler
4314 # _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"
4318 mingw* | cygwin* | os2* | pw32* | cegcc*)
4319 # This hack is so that the source file can tell whether it is being
4320 # built for inclusion in a dll (and should export symbols for example).
4321 m4_if([$1], [GCJ], [],
4322 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4325 case $cc_basename in
4327 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4330 # Green Hills C++ Compiler
4331 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4337 freebsd* | dragonfly*)
4338 # FreeBSD uses GNU C++
4340 hpux9* | hpux10* | hpux11*)
4341 case $cc_basename in
4343 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4344 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4345 if test ia64 != "$host_cpu"; then
4346 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4350 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4351 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4357 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4366 # This is c89, which is MS Visual C++ (no shared libs)
4367 # Anyone wants to do a port?
4369 irix5* | irix6* | nonstopux*)
4370 case $cc_basename in
4372 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4373 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4374 # CC pic flag -KPIC is the default.
4380 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4381 case $cc_basename in
4384 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4385 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4388 # old Intel C++ for x86_64, which still supported -KPIC.
4389 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4390 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4391 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4394 # Intel C++, used to be incompatible with GCC.
4395 # ICC 10 doesn't accept -KPIC any more.
4396 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4397 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4398 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4401 # Portland Group C++ compiler
4402 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4403 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4404 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4408 # Make sure the PIC flag is empty. It appears that all Alpha
4409 # Linux and Compaq Tru64 Unix objects are PIC.
4410 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4411 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4413 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4414 # IBM XL 8.0, 9.0 on PPC and BlueGene
4415 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4416 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4417 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4420 case `$CC -V 2>&1 | sed 5q` in
4423 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4424 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4425 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4436 case $cc_basename in
4438 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4444 netbsd* | netbsdelf*-gnu)
4447 # QNX uses GNU C++, but need to define -shared option too, otherwise
4449 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4451 osf3* | osf4* | osf5*)
4452 case $cc_basename in
4454 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4457 # Rational C++ 2.4.1
4458 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4461 # Digital/Compaq C++
4462 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4463 # Make sure the PIC flag is empty. It appears that all Alpha
4464 # Linux and Compaq Tru64 Unix objects are PIC.
4465 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4466 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4475 case $cc_basename in
4477 # Sun C++ 4.2, 5.x and Centerline C++
4478 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4479 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4480 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4483 # Green Hills C++ Compiler
4484 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4491 case $cc_basename in
4494 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4495 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4499 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4505 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4506 case $cc_basename in
4508 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4509 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4510 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4515 case $cc_basename in
4517 # NonStop-UX NCC 3.20
4518 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4527 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4533 if test yes = "$GCC"; then
4534 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4535 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4539 # All AIX code is PIC.
4540 if test ia64 = "$host_cpu"; then
4541 # AIX 5 now supports IA64 processor
4542 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4544 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4550 # see comment about AmigaOS4 .so support
4551 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4554 # FIXME: we need at least 68020 code to build shared libraries, but
4555 # adding the '-m68020' flag to GCC prevents building anything better,
4557 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4562 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4563 # PIC is the default for these OSes.
4566 mingw* | cygwin* | pw32* | os2* | cegcc*)
4567 # This hack is so that the source file can tell whether it is being
4568 # built for inclusion in a dll (and should export symbols for example).
4569 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4570 # (--disable-auto-import) libraries
4571 m4_if([$1], [GCJ], [],
4572 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4575 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4580 darwin* | rhapsody*)
4581 # PIC is the default on this platform
4582 # Common symbols not allowed in MH_DYLIB files
4583 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4587 # PIC is the default for Haiku.
4588 # The "-static" flag exists, but is broken.
4589 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4593 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4594 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4595 # sets the default TLS model and affects inlining.
4601 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4607 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4608 # Instead, we relocate shared libraries at runtime.
4612 # Just because we use GCC doesn't mean we suddenly get shared libraries
4613 # on systems that don't support them.
4614 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4619 # QNX uses GNU C++, but need to define -shared option too, otherwise
4621 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4625 if test -d /usr/nec; then
4626 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4631 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4635 case $cc_basename in
4636 nvcc*) # Cuda Compiler Driver 2.2
4637 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4638 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4639 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4644 # PORTME Check for flag to pass linker flags through the system compiler.
4647 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4648 if test ia64 = "$host_cpu"; then
4649 # AIX 5 now supports IA64 processor
4650 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4652 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4656 darwin* | rhapsody*)
4657 # PIC is the default on this platform
4658 # Common symbols not allowed in MH_DYLIB files
4659 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4660 case $cc_basename in
4662 # NAG Fortran compiler
4663 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4664 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4665 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4670 mingw* | cygwin* | pw32* | os2* | cegcc*)
4671 # This hack is so that the source file can tell whether it is being
4672 # built for inclusion in a dll (and should export symbols for example).
4673 m4_if([$1], [GCJ], [],
4674 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4677 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4682 hpux9* | hpux10* | hpux11*)
4683 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4684 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4691 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4694 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4695 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4698 irix5* | irix6* | nonstopux*)
4699 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4700 # PIC (with -KPIC) is the default.
4701 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4704 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4705 case $cc_basename in
4706 # old Intel for x86_64, which still supported -KPIC.
4708 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4709 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4710 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4712 # icc used to be incompatible with GCC.
4713 # ICC 10 doesn't accept -KPIC any more.
4715 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4716 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4717 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4719 # Lahey Fortran 8.1.
4721 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4722 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4723 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4726 # NAG Fortran compiler
4727 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4728 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4729 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4732 # Fabrice Bellard et al's Tiny C Compiler
4733 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4734 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4735 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4737 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4738 # Portland Group compilers (*not* the Pentium gcc compiler,
4739 # which looks to be a dead project)
4740 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4741 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4742 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4745 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4746 # All Alpha code is PIC.
4747 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4749 xl* | bgxl* | bgf* | mpixl*)
4750 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4751 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4752 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4753 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4756 case `$CC -V 2>&1 | sed 5q` in
4757 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4758 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4759 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4760 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4761 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4763 *Sun\ F* | *Sun*Fortran*)
4764 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4765 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4766 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4770 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4771 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4772 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4774 *Intel*\ [[CF]]*Compiler*)
4775 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4776 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4777 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4780 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4781 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4782 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4790 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4791 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4795 # QNX uses GNU C++, but need to define -shared option too, otherwise
4797 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4800 osf3* | osf4* | osf5*)
4801 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4802 # All OSF/1 code is PIC.
4803 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4807 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4811 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4812 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4813 case $cc_basename in
4814 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4815 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4817 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4822 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4823 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4824 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4827 sysv4 | sysv4.2uw2* | sysv4.3*)
4828 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4829 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4830 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4834 if test -d /usr/nec; then
4835 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4836 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4840 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4841 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4842 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4843 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4847 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4848 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4852 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4853 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4857 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4863 # For platforms that do not support PIC, -DPIC is meaningless:
4865 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4868 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4872 AC_CACHE_CHECK([for $compiler option to produce PIC],
4873 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4874 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4875 _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4878 # Check to make sure the PIC flag actually works.
4880 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4881 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4882 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4883 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4884 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4886 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4888 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4889 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4891 _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4892 [Additional compiler flags for building library objects])
4894 _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4895 [How to pass a linker flag through the compiler])
4897 # Check to make sure the static flag actually works.
4899 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4900 _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4901 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4902 $lt_tmp_static_flag,
4904 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4905 _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4906 [Compiler flag to prevent dynamic linking])
4907 ])# _LT_COMPILER_PIC
4910 # _LT_LINKER_SHLIBS([TAGNAME])
4911 # ----------------------------
4912 # See if the linker supports building shared libraries.
4913 m4_defun([_LT_LINKER_SHLIBS],
4914 [AC_REQUIRE([LT_PATH_LD])dnl
4915 AC_REQUIRE([LT_PATH_NM])dnl
4916 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4917 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4918 m4_require([_LT_DECL_EGREP])dnl
4919 m4_require([_LT_DECL_SED])dnl
4920 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4921 m4_require([_LT_TAG_COMPILER])dnl
4922 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4923 m4_if([$1], [CXX], [
4924 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4925 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4928 # If we're using GNU nm, then we don't want the "-C" option.
4929 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
4930 # Without the "-l" option, or with the "-B" option, AIX nm treats
4931 # weak defined symbols like other global defined symbols, whereas
4932 # GNU nm marks them as "W".
4933 # While the 'weak' keyword is ignored in the Export File, we need
4934 # it in the Import File for the 'aix-soname' feature, so we have
4935 # to replace the "-B" option with "-P" for AIX nm.
4936 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4937 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
4939 _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
4943 _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
4945 cygwin* | mingw* | cegcc*)
4946 case $cc_basename in
4948 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4951 _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'
4952 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4956 linux* | k*bsd*-gnu | gnu*)
4957 _LT_TAGVAR(link_all_deplibs, $1)=no
4960 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4965 _LT_TAGVAR(allow_undefined_flag, $1)=
4966 _LT_TAGVAR(always_export_symbols, $1)=no
4967 _LT_TAGVAR(archive_cmds, $1)=
4968 _LT_TAGVAR(archive_expsym_cmds, $1)=
4969 _LT_TAGVAR(compiler_needs_object, $1)=no
4970 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4971 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4972 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4973 _LT_TAGVAR(hardcode_automatic, $1)=no
4974 _LT_TAGVAR(hardcode_direct, $1)=no
4975 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4976 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4977 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4978 _LT_TAGVAR(hardcode_minus_L, $1)=no
4979 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4980 _LT_TAGVAR(inherit_rpath, $1)=no
4981 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4982 _LT_TAGVAR(module_cmds, $1)=
4983 _LT_TAGVAR(module_expsym_cmds, $1)=
4984 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4985 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4986 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4987 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4988 # include_expsyms should be a list of space-separated symbols to be *always*
4989 # included in the symbol list
4990 _LT_TAGVAR(include_expsyms, $1)=
4991 # exclude_expsyms can be an extended regexp of symbols to exclude
4992 # it will be wrapped by ' (' and ')$', so one must not match beginning or
4993 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
4994 # as well as any symbol that contains 'd'.
4995 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4996 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4997 # platforms (ab)use it in PIC code, but their linkers get confused if
4998 # the symbol is explicitly referenced. Since portable code cannot
4999 # rely on this symbol name, it's probably fine to never include it in
5000 # preloaded symbol tables.
5001 # Exclude shared library initialization/finalization symbols.
5002 dnl Note also adjust exclude_expsyms for C++ above.
5003 extract_expsyms_cmds=
5006 cygwin* | mingw* | pw32* | cegcc*)
5007 # FIXME: the MSVC++ port hasn't been tested in a loooong time
5008 # When not using gcc, we currently assume that we are using
5009 # Microsoft Visual C++.
5010 if test yes != "$GCC"; then
5015 # we just hope/assume this is gcc and not c89 (= MSVC++)
5021 linux* | k*bsd*-gnu | gnu*)
5022 _LT_TAGVAR(link_all_deplibs, $1)=no
5026 _LT_TAGVAR(ld_shlibs, $1)=yes
5028 # On some targets, GNU ld is compatible enough with the native linker
5029 # that we're better off using the native interface for both.
5030 lt_use_gnu_ld_interface=no
5031 if test yes = "$with_gnu_ld"; then
5034 # The AIX port of GNU ld has always aspired to compatibility
5035 # with the native linker. However, as the warning in the GNU ld
5036 # block says, versions before 2.19.5* couldn't really create working
5037 # shared libraries, regardless of the interface used.
5038 case `$LD -v 2>&1` in
5039 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5040 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5041 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5043 lt_use_gnu_ld_interface=yes
5048 lt_use_gnu_ld_interface=yes
5053 if test yes = "$lt_use_gnu_ld_interface"; then
5054 # If archive_cmds runs LD, not CC, wlarc should be empty
5057 # Set some defaults for GNU ld with shared library support. These
5058 # are reset later if shared libraries are not supported. Putting them
5059 # here allows them to be overridden if necessary.
5060 runpath_var=LD_RUN_PATH
5061 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5062 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5063 # ancient GNU ld didn't support --whole-archive et. al.
5064 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
5065 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5067 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5069 supports_anon_versioning=no
5070 case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
5071 *GNU\ gold*) supports_anon_versioning=yes ;;
5072 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5073 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5074 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5075 *\ 2.11.*) ;; # other 2.11 versions
5076 *) supports_anon_versioning=yes ;;
5079 # See if GNU ld supports shared libraries.
5082 # On AIX/PPC, the GNU linker is very broken
5083 if test ia64 != "$host_cpu"; then
5084 _LT_TAGVAR(ld_shlibs, $1)=no
5087 *** Warning: the GNU linker, at least up to release 2.19, is reported
5088 *** to be unable to reliably create shared libraries on AIX.
5089 *** Therefore, libtool is disabling shared libraries support. If you
5090 *** really care for shared libraries, you may want to install binutils
5091 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5092 *** You will then need to restart the configuration process.
5101 # see comment about AmigaOS4 .so support
5102 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5103 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5106 _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)'
5107 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5108 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5114 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5115 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5116 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5117 # support --undefined. This deserves some investigation. FIXME
5118 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5120 _LT_TAGVAR(ld_shlibs, $1)=no
5124 cygwin* | mingw* | pw32* | cegcc*)
5125 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5126 # as there is no search path for DLLs.
5127 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5128 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
5129 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5130 _LT_TAGVAR(always_export_symbols, $1)=no
5131 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5132 _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'
5133 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5135 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5136 _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'
5137 # If the export-symbols file already is a .def file, use it as
5138 # is; otherwise, prepend EXPORTS...
5139 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5140 cp $export_symbols $output_objdir/$soname.def;
5142 echo EXPORTS > $output_objdir/$soname.def;
5143 cat $export_symbols >> $output_objdir/$soname.def;
5145 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5147 _LT_TAGVAR(ld_shlibs, $1)=no
5152 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5153 _LT_TAGVAR(link_all_deplibs, $1)=yes
5157 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5158 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5159 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5161 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5162 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5163 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5164 $ECHO EXPORTS >> $output_objdir/$libname.def~
5165 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5166 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5167 emximp -o $lib $output_objdir/$libname.def'
5168 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5169 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5170 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5171 $ECHO EXPORTS >> $output_objdir/$libname.def~
5173 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5174 prefix_cmds="$prefix_cmds -e 1d";
5176 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5177 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5178 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5179 emximp -o $lib $output_objdir/$libname.def'
5180 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5181 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5185 _LT_TAGVAR(hardcode_direct, $1)=no
5186 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5187 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5188 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5189 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5190 # Instead, shared libraries are loaded at an image base (0x10000000 by
5191 # default) and relocated if they conflict, which is a slow very memory
5192 # consuming and fragmenting process. To avoid this, we pick a random,
5193 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5194 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
5195 _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'
5196 _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'
5199 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5201 if test linux-dietlibc = "$host_os"; then
5202 case $cc_basename in
5203 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
5206 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
5207 && test no = "$tmp_diet"
5209 tmp_addflag=' $pic_flag'
5210 tmp_sharedflag='-shared'
5211 case $cc_basename,$host_cpu in
5212 pgcc*) # Portland Group C compiler
5213 _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'
5214 tmp_addflag=' $pic_flag'
5216 pgf77* | pgf90* | pgf95* | pgfortran*)
5217 # Portland Group f77 and f90 compilers
5218 _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'
5219 tmp_addflag=' $pic_flag -Mnomain' ;;
5220 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
5221 tmp_addflag=' -i_dynamic' ;;
5222 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
5223 tmp_addflag=' -i_dynamic -nofor_main' ;;
5224 ifc* | ifort*) # Intel Fortran compiler
5225 tmp_addflag=' -nofor_main' ;;
5226 lf95*) # Lahey Fortran 8.1
5227 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5228 tmp_sharedflag='--shared' ;;
5229 nagfor*) # NAGFOR 5.3
5230 tmp_sharedflag='-Wl,-shared' ;;
5231 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5232 tmp_sharedflag='-qmkshrobj'
5234 nvcc*) # Cuda Compiler Driver 2.2
5235 _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'
5236 _LT_TAGVAR(compiler_needs_object, $1)=yes
5239 case `$CC -V 2>&1 | sed 5q` in
5240 *Sun\ C*) # Sun C 5.9
5241 _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'
5242 _LT_TAGVAR(compiler_needs_object, $1)=yes
5243 tmp_sharedflag='-G' ;;
5244 *Sun\ F*) # Sun Fortran 8.3
5245 tmp_sharedflag='-G' ;;
5247 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5249 if test yes = "$supports_anon_versioning"; then
5250 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5251 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5252 echo "local: *; };" >> $output_objdir/$libname.ver~
5253 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
5256 case $cc_basename in
5258 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5260 xlf* | bgf* | bgxlf* | mpixlf*)
5261 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5262 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
5263 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5264 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5265 if test yes = "$supports_anon_versioning"; then
5266 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5267 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5268 echo "local: *; };" >> $output_objdir/$libname.ver~
5269 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5274 _LT_TAGVAR(ld_shlibs, $1)=no
5278 netbsd* | netbsdelf*-gnu)
5279 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5280 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5283 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5284 _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'
5289 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5290 _LT_TAGVAR(ld_shlibs, $1)=no
5293 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
5294 *** create shared libraries on Solaris systems. Therefore, libtool
5295 *** is disabling shared libraries support. We urge you to upgrade GNU
5296 *** binutils to release 2.9.1 or newer. Another option is to modify
5297 *** your PATH or compiler configuration so that the native linker is
5298 *** used, and then restart.
5301 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5302 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5303 _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'
5305 _LT_TAGVAR(ld_shlibs, $1)=no
5309 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5310 case `$LD -v 2>&1` in
5311 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5312 _LT_TAGVAR(ld_shlibs, $1)=no
5315 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
5316 *** reliably create shared libraries on SCO systems. Therefore, libtool
5317 *** is disabling shared libraries support. We urge you to upgrade GNU
5318 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
5319 *** your PATH or compiler configuration so that the native linker is
5320 *** used, and then restart.
5325 # For security reasons, it is highly recommended that you always
5326 # use absolute paths for naming shared libraries, and exclude the
5327 # DT_RUNPATH tag from executables and libraries. But doing so
5328 # requires that you compile everything twice, which is a pain.
5329 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5330 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5331 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5332 _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'
5334 _LT_TAGVAR(ld_shlibs, $1)=no
5341 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5343 _LT_TAGVAR(hardcode_direct, $1)=yes
5344 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5348 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5349 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5350 _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'
5352 _LT_TAGVAR(ld_shlibs, $1)=no
5357 if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
5359 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5360 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5361 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5364 # PORTME fill in a description of your system's linker (not GNU ld)
5367 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5368 _LT_TAGVAR(always_export_symbols, $1)=yes
5369 _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'
5370 # Note: this linker hardcodes the directories in LIBPATH if there
5371 # are no directories specified by -L.
5372 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5373 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
5374 # Neither direct hardcoding nor static linking is supported with a
5376 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5381 if test ia64 = "$host_cpu"; then
5382 # On IA64, the linker does run time linking by default, so we don't
5383 # have to do anything special.
5384 aix_use_runtimelinking=no
5385 exp_sym_flag='-Bexport'
5388 # If we're using GNU nm, then we don't want the "-C" option.
5389 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
5390 # Without the "-l" option, or with the "-B" option, AIX nm treats
5391 # weak defined symbols like other global defined symbols, whereas
5392 # GNU nm marks them as "W".
5393 # While the 'weak' keyword is ignored in the Export File, we need
5394 # it in the Import File for the 'aix-soname' feature, so we have
5395 # to replace the "-B" option with "-P" for AIX nm.
5396 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5397 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
5399 _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
5401 aix_use_runtimelinking=no
5403 # Test if we are trying to use run time linking or normal
5404 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5405 # have runtime linking enabled, and use it for executables.
5406 # For shared libraries, we enable/disable runtime linking
5407 # depending on the kind of the shared library created -
5408 # when "with_aix_soname,aix_use_runtimelinking" is:
5409 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
5410 # "aix,yes" lib.so shared, rtl:yes, for executables
5411 # lib.a static archive
5412 # "both,no" lib.so.V(shr.o) shared, rtl:yes
5413 # lib.a(lib.so.V) shared, rtl:no, for executables
5414 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
5415 # lib.a(lib.so.V) shared, rtl:no
5416 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
5417 # lib.a static archive
5418 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5419 for ld_flag in $LDFLAGS; do
5420 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
5421 aix_use_runtimelinking=yes
5425 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
5426 # With aix-soname=svr4, we create the lib.so.V shared archives only,
5427 # so we don't have lib.a shared libs to link our executables.
5428 # We have to force runtime linking in this case.
5429 aix_use_runtimelinking=yes
5430 LDFLAGS="$LDFLAGS -Wl,-brtl"
5435 exp_sym_flag='-bexport'
5436 no_entry_flag='-bnoentry'
5439 # When large executables or shared objects are built, AIX ld can
5440 # have problems creating the table of contents. If linking a library
5441 # or program results in "error TOC overflow" add -mminimal-toc to
5442 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5443 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5445 _LT_TAGVAR(archive_cmds, $1)=''
5446 _LT_TAGVAR(hardcode_direct, $1)=yes
5447 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5448 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5449 _LT_TAGVAR(link_all_deplibs, $1)=yes
5450 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
5451 case $with_aix_soname,$aix_use_runtimelinking in
5452 aix,*) ;; # traditional, no import file
5453 svr4,* | *,yes) # use import file
5454 # The Import File defines what to hardcode.
5455 _LT_TAGVAR(hardcode_direct, $1)=no
5456 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
5460 if test yes = "$GCC"; then
5461 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5462 # We only want to do this on AIX 4.2 and lower, the check
5463 # below for broken collect2 doesn't work under 4.3+
5464 collect2name=`$CC -print-prog-name=collect2`
5465 if test -f "$collect2name" &&
5466 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5468 # We have reworked collect2
5471 # We have old collect2
5472 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5473 # It fails to find uninstalled libraries when the uninstalled
5474 # path is not listed in the libpath. Setting hardcode_minus_L
5475 # to unsupported forces relinking
5476 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5477 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5478 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5482 shared_flag='-shared'
5483 if test yes = "$aix_use_runtimelinking"; then
5484 shared_flag="$shared_flag "'$wl-G'
5486 # Need to ensure runtime linking is disabled for the traditional
5487 # shared library, or the linker may eventually find shared libraries
5488 # /with/ Import File - we do not want to mix them.
5489 shared_flag_aix='-shared'
5490 shared_flag_svr4='-shared $wl-G'
5493 if test ia64 = "$host_cpu"; then
5494 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5495 # chokes on -Wl,-G. The following line is correct:
5498 if test yes = "$aix_use_runtimelinking"; then
5501 shared_flag='$wl-bM:SRE'
5503 shared_flag_aix='$wl-bM:SRE'
5504 shared_flag_svr4='$wl-G'
5508 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5509 # It seems that -bexpall does not export symbols beginning with
5510 # underscore (_), so it is better to generate a list of symbols to export.
5511 _LT_TAGVAR(always_export_symbols, $1)=yes
5512 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5513 # Warning - without using the other runtime loading flags (-brtl),
5514 # -berok will link without error, but may produce a broken library.
5515 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5516 # Determine the default libpath from the value encoded in an
5518 _LT_SYS_MODULE_PATH_AIX([$1])
5519 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5520 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
5522 if test ia64 = "$host_cpu"; then
5523 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5524 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5525 _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"
5527 # Determine the default libpath from the value encoded in an
5529 _LT_SYS_MODULE_PATH_AIX([$1])
5530 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5531 # Warning - without using the other run time loading flags,
5532 # -berok will link without error, but may produce a broken library.
5533 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
5534 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
5535 if test yes = "$with_gnu_ld"; then
5536 # We only use this code for GNU lds that support --whole-archive.
5537 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
5539 # Exported symbols can be pulled into shared objects from archives
5540 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5542 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5543 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
5544 # -brtl affects multiple linker settings, -berok does not and is overridden later
5545 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
5546 if test svr4 != "$with_aix_soname"; then
5547 # This is similar to how AIX traditionally builds its shared libraries.
5548 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
5550 if test aix != "$with_aix_soname"; then
5551 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
5553 # used by -dlpreopen to get the symbols
5554 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
5556 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
5564 # see comment about AmigaOS4 .so support
5565 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5566 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5569 _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)'
5570 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5571 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5577 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5580 cygwin* | mingw* | pw32* | cegcc*)
5581 # When not using gcc, we currently assume that we are using
5582 # Microsoft Visual C++.
5583 # hardcode_libdir_flag_spec is actually meaningless, as there is
5584 # no search path for DLLs.
5585 case $cc_basename in
5588 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5589 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5590 _LT_TAGVAR(always_export_symbols, $1)=yes
5591 _LT_TAGVAR(file_list_spec, $1)='@'
5592 # Tell ltmain to make .lib files, not .a files.
5594 # Tell ltmain to make .dll files, not .so files.
5596 # FIXME: Setting linknames here is a bad hack.
5597 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
5598 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5599 cp "$export_symbols" "$output_objdir/$soname.def";
5600 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
5602 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
5604 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5606 # The linker will not automatically build a static lib if we build a DLL.
5607 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5608 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5609 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5610 _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'
5612 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5613 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5614 lt_tool_outputfile="@TOOL_OUTPUT@"~
5615 case $lt_outputfile in
5618 lt_outputfile=$lt_outputfile.exe
5619 lt_tool_outputfile=$lt_tool_outputfile.exe
5622 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
5623 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5624 $RM "$lt_outputfile.manifest";
5628 # Assume MSVC wrapper
5629 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5630 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5631 # Tell ltmain to make .lib files, not .a files.
5633 # Tell ltmain to make .dll files, not .so files.
5635 # FIXME: Setting linknames here is a bad hack.
5636 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5637 # The linker will automatically build a .lib file if we build a DLL.
5638 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5639 # FIXME: Should let the user specify the lib program.
5640 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5641 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5646 darwin* | rhapsody*)
5647 _LT_DARWIN_LINKER_FEATURES($1)
5651 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5652 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5653 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5656 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5657 # support. Future versions do this automatically, but an explicit c++rt0.o
5658 # does not break anything, and helps significantly (at the cost of a little
5661 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5662 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5663 _LT_TAGVAR(hardcode_direct, $1)=yes
5664 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5667 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5669 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5670 _LT_TAGVAR(hardcode_direct, $1)=yes
5671 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5672 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5675 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5676 freebsd* | dragonfly*)
5677 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5678 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5679 _LT_TAGVAR(hardcode_direct, $1)=yes
5680 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5684 if test yes = "$GCC"; then
5685 _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 "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
5687 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
5689 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5690 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5691 _LT_TAGVAR(hardcode_direct, $1)=yes
5693 # hardcode_minus_L: Not really in the search PATH,
5694 # but as the default location of the library.
5695 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5696 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5700 if test yes,no = "$GCC,$with_gnu_ld"; then
5701 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5703 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5705 if test no = "$with_gnu_ld"; then
5706 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5707 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5708 _LT_TAGVAR(hardcode_direct, $1)=yes
5709 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5710 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5711 # hardcode_minus_L: Not really in the search PATH,
5712 # but as the default location of the library.
5713 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5718 if test yes,no = "$GCC,$with_gnu_ld"; then
5721 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5724 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5727 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5733 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5736 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5740 # Older versions of the 11.00 compiler do not understand -b yet
5741 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5742 _LT_LINKER_OPTION([if $CC understands -b],
5743 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5744 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5745 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5746 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5750 if test no = "$with_gnu_ld"; then
5751 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5752 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5756 _LT_TAGVAR(hardcode_direct, $1)=no
5757 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5760 _LT_TAGVAR(hardcode_direct, $1)=yes
5761 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5762 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5764 # hardcode_minus_L: Not really in the search PATH,
5765 # but as the default location of the library.
5766 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5772 irix5* | irix6* | nonstopux*)
5773 if test yes = "$GCC"; then
5774 _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'
5775 # Try to use the -exported_symbol ld option, if it does not
5776 # work, assume that -exports_file does not work either and
5777 # implicitly export all symbols.
5778 # This should be the same for all languages, so no per-tag cache variable.
5779 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5780 [lt_cv_irix_exported_symbol],
5781 [save_LDFLAGS=$LDFLAGS
5782 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
5785 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5786 [C++], [[int foo (void) { return 0; }]],
5793 [lt_cv_irix_exported_symbol=yes],
5794 [lt_cv_irix_exported_symbol=no])
5795 LDFLAGS=$save_LDFLAGS])
5796 if test yes = "$lt_cv_irix_exported_symbol"; then
5797 _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'
5799 _LT_TAGVAR(link_all_deplibs, $1)=no
5801 _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'
5802 _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'
5804 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5805 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5806 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5807 _LT_TAGVAR(inherit_rpath, $1)=yes
5808 _LT_TAGVAR(link_all_deplibs, $1)=yes
5812 case $cc_basename in
5814 # Fabrice Bellard et al's Tiny C Compiler
5815 _LT_TAGVAR(ld_shlibs, $1)=yes
5816 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5821 netbsd* | netbsdelf*-gnu)
5822 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5823 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5825 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5827 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5828 _LT_TAGVAR(hardcode_direct, $1)=yes
5829 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5833 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5834 _LT_TAGVAR(hardcode_direct, $1)=yes
5835 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5836 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5837 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5844 if test -f /usr/libexec/ld.so; then
5845 _LT_TAGVAR(hardcode_direct, $1)=yes
5846 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5847 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5848 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5849 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5850 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
5851 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5852 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5854 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5855 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5858 _LT_TAGVAR(ld_shlibs, $1)=no
5863 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5864 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5865 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5867 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5868 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5869 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5870 $ECHO EXPORTS >> $output_objdir/$libname.def~
5871 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5872 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5873 emximp -o $lib $output_objdir/$libname.def'
5874 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5875 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5876 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5877 $ECHO EXPORTS >> $output_objdir/$libname.def~
5879 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5880 prefix_cmds="$prefix_cmds -e 1d";
5882 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5883 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5884 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5885 emximp -o $lib $output_objdir/$libname.def'
5886 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5887 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5891 if test yes = "$GCC"; then
5892 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5893 _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'
5895 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5896 _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'
5898 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5899 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5900 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5903 osf4* | osf5*) # as osf3* with the addition of -msym flag
5904 if test yes = "$GCC"; then
5905 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5906 _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'
5907 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5909 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5910 _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'
5911 _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~
5912 $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'
5914 # Both c and cxx compiler support -rpath directly
5915 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5917 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5918 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5922 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5923 if test yes = "$GCC"; then
5925 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5926 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5927 $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'
5929 case `$CC -V 2>&1` in
5932 _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
5933 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5934 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5938 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5939 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5940 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5944 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5945 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5947 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5949 # The compiler driver will combine and reorder linker options,
5950 # but understands '-z linker_flag'. GCC discards it without '$wl',
5951 # but is careful enough not to reorder.
5952 # Supported since Solaris 2.6 (maybe 2.5.1?)
5953 if test yes = "$GCC"; then
5954 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5956 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5960 _LT_TAGVAR(link_all_deplibs, $1)=yes
5964 if test sequent = "$host_vendor"; then
5965 # Use $CC to link under sequent, because it throws in some extra .o
5966 # files that make .init and .fini sections work.
5967 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5969 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5971 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5972 _LT_TAGVAR(hardcode_direct, $1)=yes
5973 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5974 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5978 case $host_vendor in
5980 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5981 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5984 ## LD is ld it makes a PLAMLIB
5985 ## CC just makes a GrossModule.
5986 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5987 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5988 _LT_TAGVAR(hardcode_direct, $1)=no
5991 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5992 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5995 runpath_var='LD_RUN_PATH'
5996 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6000 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6001 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6002 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6006 if test -d /usr/nec; then
6007 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6008 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6009 runpath_var=LD_RUN_PATH
6010 hardcode_runpath_var=yes
6011 _LT_TAGVAR(ld_shlibs, $1)=yes
6015 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6016 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6017 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6018 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6019 runpath_var='LD_RUN_PATH'
6021 if test yes = "$GCC"; then
6022 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6023 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6025 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6026 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6030 sysv5* | sco3.2v5* | sco5v6*)
6031 # Note: We CANNOT use -z defs as we might desire, because we do not
6032 # link with -lc, and that would cause any symbols used from libc to
6033 # always be unresolved, which means just about no library would
6034 # ever link correctly. If we're not using GNU ld we use -z text
6035 # though, which does catch some bad symbols but isn't as heavy-handed
6037 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6038 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
6039 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6040 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6041 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
6042 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6043 _LT_TAGVAR(link_all_deplibs, $1)=yes
6044 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
6045 runpath_var='LD_RUN_PATH'
6047 if test yes = "$GCC"; then
6048 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6049 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6051 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6052 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6057 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6058 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6059 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6063 _LT_TAGVAR(ld_shlibs, $1)=no
6067 if test sni = "$host_vendor"; then
6069 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6070 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
6076 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6077 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
6079 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
6081 _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6082 _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6083 _LT_DECL([], [extract_expsyms_cmds], [2],
6084 [The commands to extract the exported symbol list from a shared archive])
6087 # Do we need to explicitly link libc?
6089 case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6091 # Assume -lc should be added
6092 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6094 if test yes,yes = "$GCC,$enable_shared"; then
6095 case $_LT_TAGVAR(archive_cmds, $1) in
6097 # FIXME: we may have to deal with multi-command sequences.
6100 # Test whether the compiler implicitly links with -lc since on some
6101 # systems, -lgcc has to come before -lc. If gcc already passes -lc
6102 # to ld, don't add -lc before -lgcc.
6103 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6104 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6106 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6108 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6111 libobjs=conftest.$ac_objext
6113 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6114 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6120 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6121 _LT_TAGVAR(allow_undefined_flag, $1)=
6122 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6124 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6126 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6128 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6130 cat conftest.err 1>&5
6134 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
6141 _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6142 [Whether or not to add -lc for building shared libraries])
6143 _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6144 [enable_shared_with_static_runtimes], [0],
6145 [Whether or not to disallow shared libs when runtime libs are static])
6146 _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6147 [Compiler flag to allow reflexive dlopens])
6148 _LT_TAGDECL([], [whole_archive_flag_spec], [1],
6149 [Compiler flag to generate shared objects directly from archives])
6150 _LT_TAGDECL([], [compiler_needs_object], [1],
6151 [Whether the compiler copes with passing no objects directly])
6152 _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6153 [Create an old-style archive from a shared archive])
6154 _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6155 [Create a temporary old-style archive to link instead of a shared archive])
6156 _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6157 _LT_TAGDECL([], [archive_expsym_cmds], [2])
6158 _LT_TAGDECL([], [module_cmds], [2],
6159 [Commands used to build a loadable module if different from building
6161 _LT_TAGDECL([], [module_expsym_cmds], [2])
6162 _LT_TAGDECL([], [with_gnu_ld], [1],
6163 [Whether we are building with GNU ld or not])
6164 _LT_TAGDECL([], [allow_undefined_flag], [1],
6165 [Flag that allows shared libraries with undefined symbols to be built])
6166 _LT_TAGDECL([], [no_undefined_flag], [1],
6167 [Flag that enforces no undefined symbols])
6168 _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6169 [Flag to hardcode $libdir into a binary during linking.
6170 This must work even if $libdir does not exist])
6171 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
6172 [Whether we need a single "-rpath" flag with a separated argument])
6173 _LT_TAGDECL([], [hardcode_direct], [0],
6174 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6175 DIR into the resulting binary])
6176 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
6177 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6178 DIR into the resulting binary and the resulting library dependency is
6179 "absolute", i.e impossible to change by setting $shlibpath_var if the
6180 library is relocated])
6181 _LT_TAGDECL([], [hardcode_minus_L], [0],
6182 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6183 into the resulting binary])
6184 _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6185 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6186 into the resulting binary])
6187 _LT_TAGDECL([], [hardcode_automatic], [0],
6188 [Set to "yes" if building a shared library automatically hardcodes DIR
6189 into the library and all subsequent libraries and executables linked
6191 _LT_TAGDECL([], [inherit_rpath], [0],
6192 [Set to yes if linker adds runtime paths of dependent libraries
6193 to runtime path list])
6194 _LT_TAGDECL([], [link_all_deplibs], [0],
6195 [Whether libtool must link a program against all its dependency libraries])
6196 _LT_TAGDECL([], [always_export_symbols], [0],
6197 [Set to "yes" if exported symbols are required])
6198 _LT_TAGDECL([], [export_symbols_cmds], [2],
6199 [The commands to list exported symbols])
6200 _LT_TAGDECL([], [exclude_expsyms], [1],
6201 [Symbols that should not be listed in the preloaded symbols])
6202 _LT_TAGDECL([], [include_expsyms], [1],
6203 [Symbols that must always be exported])
6204 _LT_TAGDECL([], [prelink_cmds], [2],
6205 [Commands necessary for linking programs (against libraries) with templates])
6206 _LT_TAGDECL([], [postlink_cmds], [2],
6207 [Commands necessary for finishing linking programs])
6208 _LT_TAGDECL([], [file_list_spec], [1],
6209 [Specify filename containing input files])
6210 dnl FIXME: Not yet implemented
6211 dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6212 dnl [Compiler flag to generate thread safe objects])
6213 ])# _LT_LINKER_SHLIBS
6216 # _LT_LANG_C_CONFIG([TAG])
6217 # ------------------------
6218 # Ensure that the configuration variables for a C compiler are suitably
6219 # defined. These variables are subsequently used by _LT_CONFIG to write
6220 # the compiler configuration to 'libtool'.
6221 m4_defun([_LT_LANG_C_CONFIG],
6222 [m4_require([_LT_DECL_EGREP])dnl
6226 # Source file extension for C test sources.
6229 # Object file extension for compiled C test sources.
6231 _LT_TAGVAR(objext, $1)=$objext
6233 # Code to be used in simple compile tests
6234 lt_simple_compile_test_code="int some_variable = 0;"
6236 # Code to be used in simple link tests
6237 lt_simple_link_test_code='int main(){return(0);}'
6240 # Save the default compiler, since it gets overwritten when the other
6241 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6242 compiler_DEFAULT=$CC
6244 # save warnings/boilerplate of simple test code
6245 _LT_COMPILER_BOILERPLATE
6246 _LT_LINKER_BOILERPLATE
6248 if test -n "$compiler"; then
6249 _LT_COMPILER_NO_RTTI($1)
6250 _LT_COMPILER_PIC($1)
6251 _LT_COMPILER_C_O($1)
6252 _LT_COMPILER_FILE_LOCKS($1)
6253 _LT_LINKER_SHLIBS($1)
6254 _LT_SYS_DYNAMIC_LINKER($1)
6255 _LT_LINKER_HARDCODE_LIBPATH($1)
6259 # Report what library types will actually be built
6260 AC_MSG_CHECKING([if libtool supports shared libraries])
6261 AC_MSG_RESULT([$can_build_shared])
6263 AC_MSG_CHECKING([whether to build shared libraries])
6264 test no = "$can_build_shared" && enable_shared=no
6266 # On AIX, shared libraries and static libraries use the same namespace, and
6267 # are all built from PIC.
6270 test yes = "$enable_shared" && enable_static=no
6271 if test -n "$RANLIB"; then
6272 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6273 postinstall_cmds='$RANLIB $lib'
6278 if test ia64 != "$host_cpu"; then
6279 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
6280 yes,aix,yes) ;; # shared object as lib.so file only
6281 yes,svr4,*) ;; # shared object as lib.so archive member only
6282 yes,*) enable_static=no ;; # shared object in lib.a archive as well
6287 AC_MSG_RESULT([$enable_shared])
6289 AC_MSG_CHECKING([whether to build static libraries])
6290 # Make sure either enable_shared or enable_static is yes.
6291 test yes = "$enable_shared" || enable_static=yes
6292 AC_MSG_RESULT([$enable_static])
6298 ])# _LT_LANG_C_CONFIG
6301 # _LT_LANG_CXX_CONFIG([TAG])
6302 # --------------------------
6303 # Ensure that the configuration variables for a C++ compiler are suitably
6304 # defined. These variables are subsequently used by _LT_CONFIG to write
6305 # the compiler configuration to 'libtool'.
6306 m4_defun([_LT_LANG_CXX_CONFIG],
6307 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6308 m4_require([_LT_DECL_EGREP])dnl
6309 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6310 if test -n "$CXX" && ( test no != "$CXX" &&
6311 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6312 (test g++ != "$CXX"))); then
6315 _lt_caught_CXX_error=yes
6319 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6320 _LT_TAGVAR(allow_undefined_flag, $1)=
6321 _LT_TAGVAR(always_export_symbols, $1)=no
6322 _LT_TAGVAR(archive_expsym_cmds, $1)=
6323 _LT_TAGVAR(compiler_needs_object, $1)=no
6324 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
6325 _LT_TAGVAR(hardcode_direct, $1)=no
6326 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6327 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6328 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6329 _LT_TAGVAR(hardcode_minus_L, $1)=no
6330 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6331 _LT_TAGVAR(hardcode_automatic, $1)=no
6332 _LT_TAGVAR(inherit_rpath, $1)=no
6333 _LT_TAGVAR(module_cmds, $1)=
6334 _LT_TAGVAR(module_expsym_cmds, $1)=
6335 _LT_TAGVAR(link_all_deplibs, $1)=unknown
6336 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6337 _LT_TAGVAR(reload_flag, $1)=$reload_flag
6338 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6339 _LT_TAGVAR(no_undefined_flag, $1)=
6340 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6341 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6343 # Source file extension for C++ test sources.
6346 # Object file extension for compiled C++ test sources.
6348 _LT_TAGVAR(objext, $1)=$objext
6350 # No sense in running all these tests if we already determined that
6351 # the CXX compiler isn't working. Some variables (like enable_shared)
6352 # are currently assumed to apply to all compilers on this platform,
6353 # and will be corrupted by setting them based on a non-working compiler.
6354 if test yes != "$_lt_caught_CXX_error"; then
6355 # Code to be used in simple compile tests
6356 lt_simple_compile_test_code="int some_variable = 0;"
6358 # Code to be used in simple link tests
6359 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6361 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6364 # save warnings/boilerplate of simple test code
6365 _LT_COMPILER_BOILERPLATE
6366 _LT_LINKER_BOILERPLATE
6368 # Allow CC to be a program name with arguments.
6370 lt_save_CFLAGS=$CFLAGS
6374 lt_save_with_gnu_ld=$with_gnu_ld
6375 lt_save_path_LD=$lt_cv_path_LD
6376 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6377 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6379 $as_unset lt_cv_prog_gnu_ld
6381 if test -n "${lt_cv_path_LDCXX+set}"; then
6382 lt_cv_path_LD=$lt_cv_path_LDCXX
6384 $as_unset lt_cv_path_LD
6386 test -z "${LDCXX+set}" || LD=$LDCXX
6390 _LT_TAGVAR(compiler, $1)=$CC
6391 _LT_CC_BASENAME([$compiler])
6393 if test -n "$compiler"; then
6394 # We don't want -fno-exception when compiling C++ code, so set the
6395 # no_builtin_flag separately
6396 if test yes = "$GXX"; then
6397 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6399 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6402 if test yes = "$GXX"; then
6403 # Set up default GNU C++ configuration
6407 # Check if GNU C++ uses GNU ld as the underlying linker, since the
6408 # archiving commands below assume that GNU ld is being used.
6409 if test yes = "$with_gnu_ld"; then
6410 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6411 _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'
6413 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6414 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6416 # If archive_cmds runs LD, not CC, wlarc should be empty
6417 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6418 # investigate it a little bit more. (MM)
6421 # ancient GNU ld didn't support --whole-archive et. al.
6422 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6423 $GREP 'no-whole-archive' > /dev/null; then
6424 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
6426 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6432 # A generic and very simple default shared library creation
6433 # command for GNU C++ for the case where it uses the native
6434 # linker, instead of GNU ld. If possible, this setting should
6435 # overridden to take advantage of the native linker features on
6436 # the platform it is being used on.
6437 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6440 # Commands to make compiler produce verbose output that lists
6441 # what "hidden" libraries, object files and flags are used when
6442 # linking a shared library.
6443 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6451 # PORTME: fill in a description of your system's C++ link characteristics
6452 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
6453 _LT_TAGVAR(ld_shlibs, $1)=yes
6456 # FIXME: insert proper C++ library support
6457 _LT_TAGVAR(ld_shlibs, $1)=no
6460 if test ia64 = "$host_cpu"; then
6461 # On IA64, the linker does run time linking by default, so we don't
6462 # have to do anything special.
6463 aix_use_runtimelinking=no
6464 exp_sym_flag='-Bexport'
6467 aix_use_runtimelinking=no
6469 # Test if we are trying to use run time linking or normal
6470 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6471 # have runtime linking enabled, and use it for executables.
6472 # For shared libraries, we enable/disable runtime linking
6473 # depending on the kind of the shared library created -
6474 # when "with_aix_soname,aix_use_runtimelinking" is:
6475 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
6476 # "aix,yes" lib.so shared, rtl:yes, for executables
6477 # lib.a static archive
6478 # "both,no" lib.so.V(shr.o) shared, rtl:yes
6479 # lib.a(lib.so.V) shared, rtl:no, for executables
6480 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
6481 # lib.a(lib.so.V) shared, rtl:no
6482 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
6483 # lib.a static archive
6484 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6485 for ld_flag in $LDFLAGS; do
6488 aix_use_runtimelinking=yes
6493 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
6494 # With aix-soname=svr4, we create the lib.so.V shared archives only,
6495 # so we don't have lib.a shared libs to link our executables.
6496 # We have to force runtime linking in this case.
6497 aix_use_runtimelinking=yes
6498 LDFLAGS="$LDFLAGS -Wl,-brtl"
6503 exp_sym_flag='-bexport'
6504 no_entry_flag='-bnoentry'
6507 # When large executables or shared objects are built, AIX ld can
6508 # have problems creating the table of contents. If linking a library
6509 # or program results in "error TOC overflow" add -mminimal-toc to
6510 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6511 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6513 _LT_TAGVAR(archive_cmds, $1)=''
6514 _LT_TAGVAR(hardcode_direct, $1)=yes
6515 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6516 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6517 _LT_TAGVAR(link_all_deplibs, $1)=yes
6518 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
6519 case $with_aix_soname,$aix_use_runtimelinking in
6520 aix,*) ;; # no import file
6521 svr4,* | *,yes) # use import file
6522 # The Import File defines what to hardcode.
6523 _LT_TAGVAR(hardcode_direct, $1)=no
6524 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6528 if test yes = "$GXX"; then
6529 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6530 # We only want to do this on AIX 4.2 and lower, the check
6531 # below for broken collect2 doesn't work under 4.3+
6532 collect2name=`$CC -print-prog-name=collect2`
6533 if test -f "$collect2name" &&
6534 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6536 # We have reworked collect2
6539 # We have old collect2
6540 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6541 # It fails to find uninstalled libraries when the uninstalled
6542 # path is not listed in the libpath. Setting hardcode_minus_L
6543 # to unsupported forces relinking
6544 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6545 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6546 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6549 shared_flag='-shared'
6550 if test yes = "$aix_use_runtimelinking"; then
6551 shared_flag=$shared_flag' $wl-G'
6553 # Need to ensure runtime linking is disabled for the traditional
6554 # shared library, or the linker may eventually find shared libraries
6555 # /with/ Import File - we do not want to mix them.
6556 shared_flag_aix='-shared'
6557 shared_flag_svr4='-shared $wl-G'
6560 if test ia64 = "$host_cpu"; then
6561 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6562 # chokes on -Wl,-G. The following line is correct:
6565 if test yes = "$aix_use_runtimelinking"; then
6568 shared_flag='$wl-bM:SRE'
6570 shared_flag_aix='$wl-bM:SRE'
6571 shared_flag_svr4='$wl-G'
6575 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
6576 # It seems that -bexpall does not export symbols beginning with
6577 # underscore (_), so it is better to generate a list of symbols to
6579 _LT_TAGVAR(always_export_symbols, $1)=yes
6580 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
6581 # Warning - without using the other runtime loading flags (-brtl),
6582 # -berok will link without error, but may produce a broken library.
6583 # The "-G" linker flag allows undefined symbols.
6584 _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
6585 # Determine the default libpath from the value encoded in an empty
6587 _LT_SYS_MODULE_PATH_AIX([$1])
6588 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6590 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
6592 if test ia64 = "$host_cpu"; then
6593 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
6594 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6595 _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"
6597 # Determine the default libpath from the value encoded in an
6599 _LT_SYS_MODULE_PATH_AIX([$1])
6600 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6601 # Warning - without using the other run time loading flags,
6602 # -berok will link without error, but may produce a broken library.
6603 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
6604 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
6605 if test yes = "$with_gnu_ld"; then
6606 # We only use this code for GNU lds that support --whole-archive.
6607 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
6609 # Exported symbols can be pulled into shared objects from archives
6610 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6612 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6613 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
6614 # -brtl affects multiple linker settings, -berok does not and is overridden later
6615 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
6616 if test svr4 != "$with_aix_soname"; then
6617 # This is similar to how AIX traditionally builds its shared
6618 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
6619 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
6621 if test aix != "$with_aix_soname"; then
6622 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
6624 # used by -dlpreopen to get the symbols
6625 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
6627 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
6633 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6634 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6635 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6636 # support --undefined. This deserves some investigation. FIXME
6637 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6639 _LT_TAGVAR(ld_shlibs, $1)=no
6644 case $cc_basename in
6646 # FIXME: insert proper C++ library support
6647 _LT_TAGVAR(ld_shlibs, $1)=no
6652 cygwin* | mingw* | pw32* | cegcc*)
6653 case $GXX,$cc_basename in
6656 # hardcode_libdir_flag_spec is actually meaningless, as there is
6657 # no search path for DLLs.
6658 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6659 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6660 _LT_TAGVAR(always_export_symbols, $1)=yes
6661 _LT_TAGVAR(file_list_spec, $1)='@'
6662 # Tell ltmain to make .lib files, not .a files.
6664 # Tell ltmain to make .dll files, not .so files.
6666 # FIXME: Setting linknames here is a bad hack.
6667 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
6668 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6669 cp "$export_symbols" "$output_objdir/$soname.def";
6670 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
6672 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
6674 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6676 # The linker will not automatically build a static lib if we build a DLL.
6677 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6678 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6680 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6681 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6682 lt_tool_outputfile="@TOOL_OUTPUT@"~
6683 case $lt_outputfile in
6686 lt_outputfile=$lt_outputfile.exe
6687 lt_tool_outputfile=$lt_tool_outputfile.exe
6690 func_to_tool_file "$lt_outputfile"~
6691 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
6692 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6693 $RM "$lt_outputfile.manifest";
6698 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6699 # as there is no search path for DLLs.
6700 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6701 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
6702 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6703 _LT_TAGVAR(always_export_symbols, $1)=no
6704 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6706 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6707 _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'
6708 # If the export-symbols file already is a .def file, use it as
6709 # is; otherwise, prepend EXPORTS...
6710 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6711 cp $export_symbols $output_objdir/$soname.def;
6713 echo EXPORTS > $output_objdir/$soname.def;
6714 cat $export_symbols >> $output_objdir/$soname.def;
6716 $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'
6718 _LT_TAGVAR(ld_shlibs, $1)=no
6723 darwin* | rhapsody*)
6724 _LT_DARWIN_LINKER_FEATURES($1)
6728 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6729 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6730 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6732 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6733 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6734 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6735 $ECHO EXPORTS >> $output_objdir/$libname.def~
6736 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
6737 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6738 emximp -o $lib $output_objdir/$libname.def'
6739 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6740 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6741 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6742 $ECHO EXPORTS >> $output_objdir/$libname.def~
6744 if test EXPORTS = "`$SED 1q $export_symbols`"; then
6745 prefix_cmds="$prefix_cmds -e 1d";
6747 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
6748 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
6749 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6750 emximp -o $lib $output_objdir/$libname.def'
6751 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
6752 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6756 case $cc_basename in
6758 # FIXME: insert proper C++ library support
6759 _LT_TAGVAR(ld_shlibs, $1)=no
6762 # Green Hills C++ Compiler
6763 # FIXME: insert proper C++ library support
6764 _LT_TAGVAR(ld_shlibs, $1)=no
6767 # FIXME: insert proper C++ library support
6768 _LT_TAGVAR(ld_shlibs, $1)=no
6774 # C++ shared libraries reported to be fairly broken before
6776 _LT_TAGVAR(ld_shlibs, $1)=no
6780 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6783 freebsd* | dragonfly*)
6784 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6786 _LT_TAGVAR(ld_shlibs, $1)=yes
6790 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6791 _LT_TAGVAR(link_all_deplibs, $1)=yes
6795 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6796 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6797 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6798 _LT_TAGVAR(hardcode_direct, $1)=yes
6799 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6800 # but as the default
6801 # location of the library.
6803 case $cc_basename in
6805 # FIXME: insert proper C++ library support
6806 _LT_TAGVAR(ld_shlibs, $1)=no
6809 _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 "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
6810 # Commands to make compiler produce verbose output that lists
6811 # what "hidden" libraries, object files and flags are used when
6812 # linking a shared library.
6814 # There doesn't appear to be a way to prevent this compiler from
6815 # explicitly linking system object files so we need to strip them
6816 # from the output so that they don't get included in the library
6818 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"'
6821 if test yes = "$GXX"; then
6822 _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 "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
6824 # FIXME: insert proper C++ library support
6825 _LT_TAGVAR(ld_shlibs, $1)=no
6832 if test no = "$with_gnu_ld"; then
6833 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6834 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6840 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6846 _LT_TAGVAR(hardcode_direct, $1)=no
6847 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6850 _LT_TAGVAR(hardcode_direct, $1)=yes
6851 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6852 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6853 # but as the default
6854 # location of the library.
6858 case $cc_basename in
6860 # FIXME: insert proper C++ library support
6861 _LT_TAGVAR(ld_shlibs, $1)=no
6866 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6869 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6872 _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'
6875 # Commands to make compiler produce verbose output that lists
6876 # what "hidden" libraries, object files and flags are used when
6877 # linking a shared library.
6879 # There doesn't appear to be a way to prevent this compiler from
6880 # explicitly linking system object files so we need to strip them
6881 # from the output so that they don't get included in the library
6883 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"'
6886 if test yes = "$GXX"; then
6887 if test no = "$with_gnu_ld"; then
6890 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6893 _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'
6896 _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'
6901 # FIXME: insert proper C++ library support
6902 _LT_TAGVAR(ld_shlibs, $1)=no
6909 _LT_TAGVAR(hardcode_direct, $1)=no
6910 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6911 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6912 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6913 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6914 # Instead, shared libraries are loaded at an image base (0x10000000 by
6915 # default) and relocated if they conflict, which is a slow very memory
6916 # consuming and fragmenting process. To avoid this, we pick a random,
6917 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6918 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6919 _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'
6920 _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'
6923 case $cc_basename in
6926 _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'
6928 # Archives containing C++ object files must be created using
6929 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6930 # necessary to make sure instantiated templates are included
6932 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6935 if test yes = "$GXX"; then
6936 if test no = "$with_gnu_ld"; then
6937 _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'
6939 _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'
6942 _LT_TAGVAR(link_all_deplibs, $1)=yes
6945 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6946 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6947 _LT_TAGVAR(inherit_rpath, $1)=yes
6950 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6951 case $cc_basename in
6953 # Kuck and Associates, Inc. (KAI) C++ Compiler
6955 # KCC will only create a shared library if the output file
6956 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6957 # to its proper name (with version) after linking.
6958 _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'
6959 _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'
6960 # Commands to make compiler produce verbose output that lists
6961 # what "hidden" libraries, object files and flags are used when
6962 # linking a shared library.
6964 # There doesn't appear to be a way to prevent this compiler from
6965 # explicitly linking system object files so we need to strip them
6966 # from the output so that they don't get included in the library
6968 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"'
6970 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6971 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6973 # Archives containing C++ object files must be created using
6974 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6975 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6980 # version 8.0 and above of icpc choke on multiply defined symbols
6981 # if we add $predep_objects and $postdep_objects, however 7.1 and
6982 # earlier do not add the objects themselves.
6983 case `$CC -V 2>&1` in
6985 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6986 _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'
6988 *) # Version 8.0 or newer
6991 ia64*) tmp_idyn=' -i_dynamic';;
6993 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6994 _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'
6997 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6998 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6999 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7000 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
7003 # Portland Group C++ compiler
7005 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7006 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
7008 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
7009 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7010 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
7012 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
7013 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7015 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
7017 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7018 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7019 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
7021 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7022 $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'
7024 *) # Version 6 and above use weak symbols
7025 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7026 _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'
7030 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
7031 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7032 _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'
7036 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7037 _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'
7039 runpath_var=LD_RUN_PATH
7040 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7041 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7043 # Commands to make compiler produce verbose output that lists
7044 # what "hidden" libraries, object files and flags are used when
7045 # linking a shared library.
7047 # There doesn't appear to be a way to prevent this compiler from
7048 # explicitly linking system object files so we need to strip them
7049 # from the output so that they don't get included in the library
7051 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'
7053 xl* | mpixl* | bgxl*)
7054 # IBM XL 8.0 on PPC, with GNU ld
7055 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7056 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7057 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7058 if test yes = "$supports_anon_versioning"; then
7059 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
7060 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7061 echo "local: *; };" >> $output_objdir/$libname.ver~
7062 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7066 case `$CC -V 2>&1 | sed 5q` in
7069 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7070 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7071 _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'
7072 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7073 _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'
7074 _LT_TAGVAR(compiler_needs_object, $1)=yes
7076 # Not sure whether something based on
7077 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7079 output_verbose_link_cmd='func_echo_all'
7081 # Archives containing C++ object files must be created using
7082 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7083 # necessary to make sure instantiated templates are included
7085 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7093 # FIXME: insert proper C++ library support
7094 _LT_TAGVAR(ld_shlibs, $1)=no
7098 # FIXME: insert proper C++ library support
7099 _LT_TAGVAR(ld_shlibs, $1)=no
7103 case $cc_basename in
7105 # FIXME: insert proper C++ library support
7106 _LT_TAGVAR(ld_shlibs, $1)=no
7109 # FIXME: insert proper C++ library support
7110 _LT_TAGVAR(ld_shlibs, $1)=no
7116 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7117 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7119 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7120 _LT_TAGVAR(hardcode_direct, $1)=yes
7121 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7123 # Workaround some broken pre-1.5 toolchains
7124 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7128 _LT_TAGVAR(ld_shlibs, $1)=yes
7132 if test -f /usr/libexec/ld.so; then
7133 _LT_TAGVAR(hardcode_direct, $1)=yes
7134 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7135 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7136 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7137 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7138 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
7139 _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'
7140 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7141 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7143 output_verbose_link_cmd=func_echo_all
7145 _LT_TAGVAR(ld_shlibs, $1)=no
7149 osf3* | osf4* | osf5*)
7150 case $cc_basename in
7152 # Kuck and Associates, Inc. (KAI) C++ Compiler
7154 # KCC will only create a shared library if the output file
7155 # ends with ".so" (or ".sl" for HP-UX), so rename the library
7156 # to its proper name (with version) after linking.
7157 _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'
7159 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7160 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7162 # Archives containing C++ object files must be created using
7163 # the KAI C++ compiler.
7165 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7166 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7170 # Rational C++ 2.4.1
7171 # FIXME: insert proper C++ library support
7172 _LT_TAGVAR(ld_shlibs, $1)=no
7177 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7178 _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'
7179 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7182 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
7183 _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'
7184 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
7185 echo "-hidden">> $lib.exp~
7186 $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~
7188 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7192 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7194 # Commands to make compiler produce verbose output that lists
7195 # what "hidden" libraries, object files and flags are used when
7196 # linking a shared library.
7198 # There doesn't appear to be a way to prevent this compiler from
7199 # explicitly linking system object files so we need to strip them
7200 # from the output so that they don't get included in the library
7202 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"'
7205 if test yes,no = "$GXX,$with_gnu_ld"; then
7206 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7209 _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'
7212 _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'
7216 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7217 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7219 # Commands to make compiler produce verbose output that lists
7220 # what "hidden" libraries, object files and flags are used when
7221 # linking a shared library.
7222 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7225 # FIXME: insert proper C++ library support
7226 _LT_TAGVAR(ld_shlibs, $1)=no
7233 # FIXME: insert proper C++ library support
7234 _LT_TAGVAR(ld_shlibs, $1)=no
7238 case $cc_basename in
7241 # FIXME: insert proper C++ library support
7242 _LT_TAGVAR(ld_shlibs, $1)=no
7246 # FIXME: insert proper C++ library support
7247 _LT_TAGVAR(ld_shlibs, $1)=no
7250 # FIXME: insert proper C++ library support
7251 _LT_TAGVAR(ld_shlibs, $1)=no
7257 case $cc_basename in
7259 # Sun C++ 4.2, 5.x and Centerline C++
7260 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7261 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7262 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7263 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7264 $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'
7266 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7267 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7269 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7271 # The compiler driver will combine and reorder linker options,
7272 # but understands '-z linker_flag'.
7273 # Supported since Solaris 2.6 (maybe 2.5.1?)
7274 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7277 _LT_TAGVAR(link_all_deplibs, $1)=yes
7279 output_verbose_link_cmd='func_echo_all'
7281 # Archives containing C++ object files must be created using
7282 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7283 # necessary to make sure instantiated templates are included
7285 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7288 # Green Hills C++ Compiler
7289 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7291 # The C++ compiler must be used to create the archive.
7292 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
7295 # GNU C++ compiler with Solaris linker
7296 if test yes,no = "$GXX,$with_gnu_ld"; then
7297 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
7298 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
7299 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7300 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7301 $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7303 # Commands to make compiler produce verbose output that lists
7304 # what "hidden" libraries, object files and flags are used when
7305 # linking a shared library.
7306 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7308 # g++ 2.7 appears to require '-G' NOT '-shared' on this
7310 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7311 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7312 $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7314 # Commands to make compiler produce verbose output that lists
7315 # what "hidden" libraries, object files and flags are used when
7316 # linking a shared library.
7317 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7320 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
7322 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7324 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7332 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
7333 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7334 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7335 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7336 runpath_var='LD_RUN_PATH'
7338 case $cc_basename in
7340 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7341 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7344 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7345 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7350 sysv5* | sco3.2v5* | sco5v6*)
7351 # Note: We CANNOT use -z defs as we might desire, because we do not
7352 # link with -lc, and that would cause any symbols used from libc to
7353 # always be unresolved, which means just about no library would
7354 # ever link correctly. If we're not using GNU ld we use -z text
7355 # though, which does catch some bad symbols but isn't as heavy-handed
7357 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7358 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7359 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7360 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7361 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7362 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7363 _LT_TAGVAR(link_all_deplibs, $1)=yes
7364 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7365 runpath_var='LD_RUN_PATH'
7367 case $cc_basename in
7369 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7370 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7371 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
7372 '"$_LT_TAGVAR(old_archive_cmds, $1)"
7373 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
7374 '"$_LT_TAGVAR(reload_cmds, $1)"
7377 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7378 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7384 case $cc_basename in
7386 # NonStop-UX NCC 3.20
7387 # FIXME: insert proper C++ library support
7388 _LT_TAGVAR(ld_shlibs, $1)=no
7391 # FIXME: insert proper C++ library support
7392 _LT_TAGVAR(ld_shlibs, $1)=no
7398 # FIXME: insert proper C++ library support
7399 _LT_TAGVAR(ld_shlibs, $1)=no
7403 # FIXME: insert proper C++ library support
7404 _LT_TAGVAR(ld_shlibs, $1)=no
7408 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
7409 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
7411 _LT_TAGVAR(GCC, $1)=$GXX
7412 _LT_TAGVAR(LD, $1)=$LD
7415 ## There is no encapsulation within the following macros, do not change
7416 ## the running order or otherwise move them around unless you know exactly
7417 ## what you are doing...
7418 _LT_SYS_HIDDEN_LIBDEPS($1)
7419 _LT_COMPILER_PIC($1)
7420 _LT_COMPILER_C_O($1)
7421 _LT_COMPILER_FILE_LOCKS($1)
7422 _LT_LINKER_SHLIBS($1)
7423 _LT_SYS_DYNAMIC_LINKER($1)
7424 _LT_LINKER_HARDCODE_LIBPATH($1)
7427 fi # test -n "$compiler"
7430 CFLAGS=$lt_save_CFLAGS
7434 with_gnu_ld=$lt_save_with_gnu_ld
7435 lt_cv_path_LDCXX=$lt_cv_path_LD
7436 lt_cv_path_LD=$lt_save_path_LD
7437 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7438 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
7439 fi # test yes != "$_lt_caught_CXX_error"
7442 ])# _LT_LANG_CXX_CONFIG
7445 # _LT_FUNC_STRIPNAME_CNF
7446 # ----------------------
7447 # func_stripname_cnf prefix suffix name
7448 # strip PREFIX and SUFFIX off of NAME.
7449 # PREFIX and SUFFIX must not contain globbing or regex special
7450 # characters, hashes, percent signs, but SUFFIX may contain a leading
7451 # dot (in which case that matches only a dot).
7453 # This function is identical to the (non-XSI) version of func_stripname,
7454 # except this one can be used by m4 code that may be executed by configure,
7455 # rather than the libtool script.
7456 m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7457 AC_REQUIRE([_LT_DECL_SED])
7458 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7459 func_stripname_cnf ()
7462 .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
7463 *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
7465 } # func_stripname_cnf
7466 ])# _LT_FUNC_STRIPNAME_CNF
7469 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7470 # ---------------------------------
7471 # Figure out "hidden" library dependencies from verbose
7472 # compiler output when linking a shared library.
7473 # Parse the compiler output and extract the necessary
7474 # objects, libraries and library flags.
7475 m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7476 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7477 AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7478 # Dependencies to place before and after the object being linked:
7479 _LT_TAGVAR(predep_objects, $1)=
7480 _LT_TAGVAR(postdep_objects, $1)=
7481 _LT_TAGVAR(predeps, $1)=
7482 _LT_TAGVAR(postdeps, $1)=
7483 _LT_TAGVAR(compiler_lib_search_path, $1)=
7485 dnl we can't use the lt_simple_compile_test_code here,
7486 dnl because it contains code intended for an executable,
7487 dnl not a library. It's possible we should let each
7488 dnl tag define a new lt_????_link_test_code variable,
7489 dnl but it's only used here...
7490 m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7492 void foo (void) { a = 0; }
7494 ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7498 Foo (void) { a = 0; }
7503 ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
7511 ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
7519 ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
7522 public void bar (void) {
7527 ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7534 _lt_libdeps_save_CFLAGS=$CFLAGS
7535 case "$CC $CFLAGS " in #(
7536 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7537 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7538 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7541 dnl Parse the compiler output and extract the necessary
7542 dnl objects, libraries and library flags.
7543 if AC_TRY_EVAL(ac_compile); then
7544 # Parse the compiler output and extract the necessary
7545 # objects, libraries and library flags.
7547 # Sentinel used to keep track of whether or not we are before
7548 # the conftest object file.
7549 pre_test_object_deps_done=no
7551 for p in `eval "$output_verbose_link_cmd"`; do
7555 # Some compilers place space between "-{L,R}" and the path.
7557 if test x-L = "$p" ||
7558 test x-R = "$p"; then
7563 # Expand the sysroot to ease extracting the directories later.
7564 if test -z "$prev"; then
7566 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7567 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7568 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7572 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7574 if test no = "$pre_test_object_deps_done"; then
7577 # Internal compiler library paths should come after those
7578 # provided the user. The postdeps already come after the
7579 # user supplied libs so there is no need to process them.
7580 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7581 _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
7583 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
7586 # The "-l" case would never come before the object being
7587 # linked, so don't bother handling this case.
7590 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7591 _LT_TAGVAR(postdeps, $1)=$prev$p
7593 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
7599 *.lto.$objext) ;; # Ignore GCC LTO objects
7601 # This assumes that the test object file only shows up
7602 # once in the compiler output.
7603 if test "$p" = "conftest.$objext"; then
7604 pre_test_object_deps_done=yes
7608 if test no = "$pre_test_object_deps_done"; then
7609 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7610 _LT_TAGVAR(predep_objects, $1)=$p
7612 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7615 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7616 _LT_TAGVAR(postdep_objects, $1)=$p
7618 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7623 *) ;; # Ignore the rest.
7631 echo "libtool.m4: error: problem compiling $1 test program"
7634 $RM -f confest.$objext
7635 CFLAGS=$_lt_libdeps_save_CFLAGS
7637 # PORTME: override above test on systems where it is broken
7641 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7642 # hack all around it, let's just trust "g++" to DTRT.
7643 _LT_TAGVAR(predep_objects,$1)=
7644 _LT_TAGVAR(postdep_objects,$1)=
7645 _LT_TAGVAR(postdeps,$1)=
7650 case " $_LT_TAGVAR(postdeps, $1) " in
7651 *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7653 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7654 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7655 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
7657 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7658 [The directories searched by this compiler when creating a shared library])
7659 _LT_TAGDECL([], [predep_objects], [1],
7660 [Dependencies to place before and after the objects being linked to
7661 create a shared library])
7662 _LT_TAGDECL([], [postdep_objects], [1])
7663 _LT_TAGDECL([], [predeps], [1])
7664 _LT_TAGDECL([], [postdeps], [1])
7665 _LT_TAGDECL([], [compiler_lib_search_path], [1],
7666 [The library search path used internally by the compiler when linking
7668 ])# _LT_SYS_HIDDEN_LIBDEPS
7671 # _LT_LANG_F77_CONFIG([TAG])
7672 # --------------------------
7673 # Ensure that the configuration variables for a Fortran 77 compiler are
7674 # suitably defined. These variables are subsequently used by _LT_CONFIG
7675 # to write the compiler configuration to 'libtool'.
7676 m4_defun([_LT_LANG_F77_CONFIG],
7677 [AC_LANG_PUSH(Fortran 77)
7678 if test -z "$F77" || test no = "$F77"; then
7682 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7683 _LT_TAGVAR(allow_undefined_flag, $1)=
7684 _LT_TAGVAR(always_export_symbols, $1)=no
7685 _LT_TAGVAR(archive_expsym_cmds, $1)=
7686 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7687 _LT_TAGVAR(hardcode_direct, $1)=no
7688 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7689 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7690 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7691 _LT_TAGVAR(hardcode_minus_L, $1)=no
7692 _LT_TAGVAR(hardcode_automatic, $1)=no
7693 _LT_TAGVAR(inherit_rpath, $1)=no
7694 _LT_TAGVAR(module_cmds, $1)=
7695 _LT_TAGVAR(module_expsym_cmds, $1)=
7696 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7697 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7698 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7699 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7700 _LT_TAGVAR(no_undefined_flag, $1)=
7701 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7702 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7704 # Source file extension for f77 test sources.
7707 # Object file extension for compiled f77 test sources.
7709 _LT_TAGVAR(objext, $1)=$objext
7711 # No sense in running all these tests if we already determined that
7712 # the F77 compiler isn't working. Some variables (like enable_shared)
7713 # are currently assumed to apply to all compilers on this platform,
7714 # and will be corrupted by setting them based on a non-working compiler.
7715 if test yes != "$_lt_disable_F77"; then
7716 # Code to be used in simple compile tests
7717 lt_simple_compile_test_code="\
7723 # Code to be used in simple link tests
7724 lt_simple_link_test_code="\
7729 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7732 # save warnings/boilerplate of simple test code
7733 _LT_COMPILER_BOILERPLATE
7734 _LT_LINKER_BOILERPLATE
7736 # Allow CC to be a program name with arguments.
7739 lt_save_CFLAGS=$CFLAGS
7743 _LT_TAGVAR(compiler, $1)=$CC
7744 _LT_CC_BASENAME([$compiler])
7746 if test -n "$compiler"; then
7747 AC_MSG_CHECKING([if libtool supports shared libraries])
7748 AC_MSG_RESULT([$can_build_shared])
7750 AC_MSG_CHECKING([whether to build shared libraries])
7751 test no = "$can_build_shared" && enable_shared=no
7753 # On AIX, shared libraries and static libraries use the same namespace, and
7754 # are all built from PIC.
7757 test yes = "$enable_shared" && enable_static=no
7758 if test -n "$RANLIB"; then
7759 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7760 postinstall_cmds='$RANLIB $lib'
7764 if test ia64 != "$host_cpu"; then
7765 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7766 yes,aix,yes) ;; # shared object as lib.so file only
7767 yes,svr4,*) ;; # shared object as lib.so archive member only
7768 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7773 AC_MSG_RESULT([$enable_shared])
7775 AC_MSG_CHECKING([whether to build static libraries])
7776 # Make sure either enable_shared or enable_static is yes.
7777 test yes = "$enable_shared" || enable_static=yes
7778 AC_MSG_RESULT([$enable_static])
7780 _LT_TAGVAR(GCC, $1)=$G77
7781 _LT_TAGVAR(LD, $1)=$LD
7784 ## There is no encapsulation within the following macros, do not change
7785 ## the running order or otherwise move them around unless you know exactly
7786 ## what you are doing...
7787 _LT_COMPILER_PIC($1)
7788 _LT_COMPILER_C_O($1)
7789 _LT_COMPILER_FILE_LOCKS($1)
7790 _LT_LINKER_SHLIBS($1)
7791 _LT_SYS_DYNAMIC_LINKER($1)
7792 _LT_LINKER_HARDCODE_LIBPATH($1)
7795 fi # test -n "$compiler"
7799 CFLAGS=$lt_save_CFLAGS
7800 fi # test yes != "$_lt_disable_F77"
7803 ])# _LT_LANG_F77_CONFIG
7806 # _LT_LANG_FC_CONFIG([TAG])
7807 # -------------------------
7808 # Ensure that the configuration variables for a Fortran compiler are
7809 # suitably defined. These variables are subsequently used by _LT_CONFIG
7810 # to write the compiler configuration to 'libtool'.
7811 m4_defun([_LT_LANG_FC_CONFIG],
7812 [AC_LANG_PUSH(Fortran)
7814 if test -z "$FC" || test no = "$FC"; then
7818 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7819 _LT_TAGVAR(allow_undefined_flag, $1)=
7820 _LT_TAGVAR(always_export_symbols, $1)=no
7821 _LT_TAGVAR(archive_expsym_cmds, $1)=
7822 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7823 _LT_TAGVAR(hardcode_direct, $1)=no
7824 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7825 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7826 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7827 _LT_TAGVAR(hardcode_minus_L, $1)=no
7828 _LT_TAGVAR(hardcode_automatic, $1)=no
7829 _LT_TAGVAR(inherit_rpath, $1)=no
7830 _LT_TAGVAR(module_cmds, $1)=
7831 _LT_TAGVAR(module_expsym_cmds, $1)=
7832 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7833 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7834 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7835 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7836 _LT_TAGVAR(no_undefined_flag, $1)=
7837 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7838 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7840 # Source file extension for fc test sources.
7841 ac_ext=${ac_fc_srcext-f}
7843 # Object file extension for compiled fc test sources.
7845 _LT_TAGVAR(objext, $1)=$objext
7847 # No sense in running all these tests if we already determined that
7848 # the FC compiler isn't working. Some variables (like enable_shared)
7849 # are currently assumed to apply to all compilers on this platform,
7850 # and will be corrupted by setting them based on a non-working compiler.
7851 if test yes != "$_lt_disable_FC"; then
7852 # Code to be used in simple compile tests
7853 lt_simple_compile_test_code="\
7859 # Code to be used in simple link tests
7860 lt_simple_link_test_code="\
7865 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7868 # save warnings/boilerplate of simple test code
7869 _LT_COMPILER_BOILERPLATE
7870 _LT_LINKER_BOILERPLATE
7872 # Allow CC to be a program name with arguments.
7875 lt_save_CFLAGS=$CFLAGS
7879 GCC=$ac_cv_fc_compiler_gnu
7881 _LT_TAGVAR(compiler, $1)=$CC
7882 _LT_CC_BASENAME([$compiler])
7884 if test -n "$compiler"; then
7885 AC_MSG_CHECKING([if libtool supports shared libraries])
7886 AC_MSG_RESULT([$can_build_shared])
7888 AC_MSG_CHECKING([whether to build shared libraries])
7889 test no = "$can_build_shared" && enable_shared=no
7891 # On AIX, shared libraries and static libraries use the same namespace, and
7892 # are all built from PIC.
7895 test yes = "$enable_shared" && enable_static=no
7896 if test -n "$RANLIB"; then
7897 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7898 postinstall_cmds='$RANLIB $lib'
7902 if test ia64 != "$host_cpu"; then
7903 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7904 yes,aix,yes) ;; # shared object as lib.so file only
7905 yes,svr4,*) ;; # shared object as lib.so archive member only
7906 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7911 AC_MSG_RESULT([$enable_shared])
7913 AC_MSG_CHECKING([whether to build static libraries])
7914 # Make sure either enable_shared or enable_static is yes.
7915 test yes = "$enable_shared" || enable_static=yes
7916 AC_MSG_RESULT([$enable_static])
7918 _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7919 _LT_TAGVAR(LD, $1)=$LD
7922 ## There is no encapsulation within the following macros, do not change
7923 ## the running order or otherwise move them around unless you know exactly
7924 ## what you are doing...
7925 _LT_SYS_HIDDEN_LIBDEPS($1)
7926 _LT_COMPILER_PIC($1)
7927 _LT_COMPILER_C_O($1)
7928 _LT_COMPILER_FILE_LOCKS($1)
7929 _LT_LINKER_SHLIBS($1)
7930 _LT_SYS_DYNAMIC_LINKER($1)
7931 _LT_LINKER_HARDCODE_LIBPATH($1)
7934 fi # test -n "$compiler"
7938 CFLAGS=$lt_save_CFLAGS
7939 fi # test yes != "$_lt_disable_FC"
7942 ])# _LT_LANG_FC_CONFIG
7945 # _LT_LANG_GCJ_CONFIG([TAG])
7946 # --------------------------
7947 # Ensure that the configuration variables for the GNU Java Compiler compiler
7948 # are suitably defined. These variables are subsequently used by _LT_CONFIG
7949 # to write the compiler configuration to 'libtool'.
7950 m4_defun([_LT_LANG_GCJ_CONFIG],
7951 [AC_REQUIRE([LT_PROG_GCJ])dnl
7954 # Source file extension for Java test sources.
7957 # Object file extension for compiled Java test sources.
7959 _LT_TAGVAR(objext, $1)=$objext
7961 # Code to be used in simple compile tests
7962 lt_simple_compile_test_code="class foo {}"
7964 # Code to be used in simple link tests
7965 lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7967 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7970 # save warnings/boilerplate of simple test code
7971 _LT_COMPILER_BOILERPLATE
7972 _LT_LINKER_BOILERPLATE
7974 # Allow CC to be a program name with arguments.
7976 lt_save_CFLAGS=$CFLAGS
7982 _LT_TAGVAR(compiler, $1)=$CC
7983 _LT_TAGVAR(LD, $1)=$LD
7984 _LT_CC_BASENAME([$compiler])
7986 # GCJ did not exist at the time GCC didn't implicitly link libc in.
7987 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7989 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7990 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7991 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7993 if test -n "$compiler"; then
7994 _LT_COMPILER_NO_RTTI($1)
7995 _LT_COMPILER_PIC($1)
7996 _LT_COMPILER_C_O($1)
7997 _LT_COMPILER_FILE_LOCKS($1)
7998 _LT_LINKER_SHLIBS($1)
7999 _LT_LINKER_HARDCODE_LIBPATH($1)
8008 CFLAGS=$lt_save_CFLAGS
8009 ])# _LT_LANG_GCJ_CONFIG
8012 # _LT_LANG_GO_CONFIG([TAG])
8013 # --------------------------
8014 # Ensure that the configuration variables for the GNU Go compiler
8015 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8016 # to write the compiler configuration to 'libtool'.
8017 m4_defun([_LT_LANG_GO_CONFIG],
8018 [AC_REQUIRE([LT_PROG_GO])dnl
8021 # Source file extension for Go test sources.
8024 # Object file extension for compiled Go test sources.
8026 _LT_TAGVAR(objext, $1)=$objext
8028 # Code to be used in simple compile tests
8029 lt_simple_compile_test_code="package main; func main() { }"
8031 # Code to be used in simple link tests
8032 lt_simple_link_test_code='package main; func main() { }'
8034 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8037 # save warnings/boilerplate of simple test code
8038 _LT_COMPILER_BOILERPLATE
8039 _LT_LINKER_BOILERPLATE
8041 # Allow CC to be a program name with arguments.
8043 lt_save_CFLAGS=$CFLAGS
8049 _LT_TAGVAR(compiler, $1)=$CC
8050 _LT_TAGVAR(LD, $1)=$LD
8051 _LT_CC_BASENAME([$compiler])
8053 # Go did not exist at the time GCC didn't implicitly link libc in.
8054 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
8056 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8057 _LT_TAGVAR(reload_flag, $1)=$reload_flag
8058 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8060 if test -n "$compiler"; then
8061 _LT_COMPILER_NO_RTTI($1)
8062 _LT_COMPILER_PIC($1)
8063 _LT_COMPILER_C_O($1)
8064 _LT_COMPILER_FILE_LOCKS($1)
8065 _LT_LINKER_SHLIBS($1)
8066 _LT_LINKER_HARDCODE_LIBPATH($1)
8075 CFLAGS=$lt_save_CFLAGS
8076 ])# _LT_LANG_GO_CONFIG
8079 # _LT_LANG_RC_CONFIG([TAG])
8080 # -------------------------
8081 # Ensure that the configuration variables for the Windows resource compiler
8082 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8083 # to write the compiler configuration to 'libtool'.
8084 m4_defun([_LT_LANG_RC_CONFIG],
8085 [AC_REQUIRE([LT_PROG_RC])dnl
8088 # Source file extension for RC test sources.
8091 # Object file extension for compiled RC test sources.
8093 _LT_TAGVAR(objext, $1)=$objext
8095 # Code to be used in simple compile tests
8096 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8098 # Code to be used in simple link tests
8099 lt_simple_link_test_code=$lt_simple_compile_test_code
8101 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8104 # save warnings/boilerplate of simple test code
8105 _LT_COMPILER_BOILERPLATE
8106 _LT_LINKER_BOILERPLATE
8108 # Allow CC to be a program name with arguments.
8110 lt_save_CFLAGS=$CFLAGS
8116 _LT_TAGVAR(compiler, $1)=$CC
8117 _LT_CC_BASENAME([$compiler])
8118 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8120 if test -n "$compiler"; then
8128 CFLAGS=$lt_save_CFLAGS
8129 ])# _LT_LANG_RC_CONFIG
8134 AC_DEFUN([LT_PROG_GCJ],
8135 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8136 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8137 [AC_CHECK_TOOL(GCJ, gcj,)
8138 test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
8139 AC_SUBST(GCJFLAGS)])])[]dnl
8143 AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8144 dnl aclocal-1.4 backwards compatibility:
8145 dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
8150 AC_DEFUN([LT_PROG_GO],
8151 [AC_CHECK_TOOL(GOC, gccgo,)
8157 AC_DEFUN([LT_PROG_RC],
8158 [AC_CHECK_TOOL(RC, windres,)
8162 AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8163 dnl aclocal-1.4 backwards compatibility:
8164 dnl AC_DEFUN([LT_AC_PROG_RC], [])
8169 # If we don't have a new enough Autoconf to choose the best grep
8170 # available, choose the one first in the user's PATH.
8171 m4_defun([_LT_DECL_EGREP],
8172 [AC_REQUIRE([AC_PROG_EGREP])dnl
8173 AC_REQUIRE([AC_PROG_FGREP])dnl
8174 test -z "$GREP" && GREP=grep
8175 _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8176 _LT_DECL([], [EGREP], [1], [An ERE matcher])
8177 _LT_DECL([], [FGREP], [1], [A literal string matcher])
8178 dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8185 # If we don't have a new enough Autoconf to choose the best objdump
8186 # available, choose the one first in the user's PATH.
8187 m4_defun([_LT_DECL_OBJDUMP],
8188 [AC_CHECK_TOOL(OBJDUMP, objdump, false)
8189 test -z "$OBJDUMP" && OBJDUMP=objdump
8190 _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8196 # Ensure DLLTOOL variable is set.
8197 m4_defun([_LT_DECL_DLLTOOL],
8198 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8199 test -z "$DLLTOOL" && DLLTOOL=dlltool
8200 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8206 # Check for a fully-functional sed program, that truncates
8207 # as few characters as possible. Prefer GNU sed if found.
8208 m4_defun([_LT_DECL_SED],
8210 test -z "$SED" && SED=sed
8211 Xsed="$SED -e 1s/^X//"
8212 _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8213 _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8214 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
8217 m4_ifndef([AC_PROG_SED], [
8218 # NOTE: This macro has been submitted for inclusion into #
8219 # GNU Autoconf as AC_PROG_SED. When it is available in #
8220 # a released version of Autoconf we should remove this #
8221 # macro and use it instead. #
8223 m4_defun([AC_PROG_SED],
8224 [AC_MSG_CHECKING([for a sed that does not truncate output])
8225 AC_CACHE_VAL(lt_cv_path_SED,
8226 [# Loop through the user's path and test for sed and gsed.
8227 # Then use that list of sed's as ones to test for truncation.
8228 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8232 test -z "$as_dir" && as_dir=.
8233 for lt_ac_prog in sed gsed; do
8234 for ac_exec_ext in '' $ac_executable_extensions; do
8235 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8236 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8244 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
8245 # along with /bin/sed that truncates output.
8246 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
8247 test ! -f "$lt_ac_sed" && continue
8248 cat /dev/null > conftest.in
8250 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8251 # Check for GNU sed and select it if it is found.
8252 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8253 lt_cv_path_SED=$lt_ac_sed
8257 cat conftest.in conftest.in >conftest.tmp
8258 mv conftest.tmp conftest.in
8259 cp conftest.in conftest.nl
8261 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8262 cmp -s conftest.out conftest.nl || break
8263 # 10000 chars as input seems more than enough
8264 test 10 -lt "$lt_ac_count" && break
8265 lt_ac_count=`expr $lt_ac_count + 1`
8266 if test "$lt_ac_count" -gt "$lt_ac_max"; then
8267 lt_ac_max=$lt_ac_count
8268 lt_cv_path_SED=$lt_ac_sed
8275 AC_MSG_RESULT([$SED])
8280 AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8281 dnl aclocal-1.4 backwards compatibility:
8282 dnl AC_DEFUN([LT_AC_PROG_SED], [])
8285 # _LT_CHECK_SHELL_FEATURES
8286 # ------------------------
8287 # Find out whether the shell is Bourne or XSI compatible,
8288 # or has some other useful features.
8289 m4_defun([_LT_CHECK_SHELL_FEATURES],
8290 [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
8295 _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8297 # test EBCDIC or ASCII
8298 case `echo X|tr X '\101'` in
8299 A) # ASCII based system
8300 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8301 lt_SP2NL='tr \040 \012'
8302 lt_NL2SP='tr \015\012 \040\040'
8304 *) # EBCDIC based system
8305 lt_SP2NL='tr \100 \n'
8306 lt_NL2SP='tr \r\n \100\100'
8309 _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8310 _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8311 ])# _LT_CHECK_SHELL_FEATURES
8314 # _LT_PATH_CONVERSION_FUNCTIONS
8315 # -----------------------------
8316 # Determine what file name conversion functions should be used by
8317 # func_to_host_file (and, implicitly, by func_to_host_path). These are needed
8318 # for certain cross-compile configurations and native mingw.
8319 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8320 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8321 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8322 AC_MSG_CHECKING([how to convert $build file names to $host format])
8323 AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8327 *-*-mingw* ) # actually msys
8328 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8331 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8333 * ) # otherwise, assume *nix
8334 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8340 *-*-mingw* ) # actually msys
8341 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8344 lt_cv_to_host_file_cmd=func_convert_file_noop
8346 * ) # otherwise, assume *nix
8347 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
8351 * ) # unhandled hosts (and "normal" native builds)
8352 lt_cv_to_host_file_cmd=func_convert_file_noop
8356 to_host_file_cmd=$lt_cv_to_host_file_cmd
8357 AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
8358 _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
8359 [0], [convert $build file names to $host format])dnl
8361 AC_MSG_CHECKING([how to convert $build file names to toolchain format])
8362 AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
8363 [#assume ordinary cross tools, or native build.
8364 lt_cv_to_tool_file_cmd=func_convert_file_noop
8368 *-*-mingw* ) # actually msys
8369 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
8375 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
8376 AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
8377 _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8378 [0], [convert $build files to toolchain format])dnl
8379 ])# _LT_PATH_CONVERSION_FUNCTIONS
8381 # Helper functions for option handling. -*- Autoconf -*-
8383 # Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8385 # Written by Gary V. Vaughan, 2004
8387 # This file is free software; the Free Software Foundation gives
8388 # unlimited permission to copy and/or distribute it, with or without
8389 # modifications, as long as this notice is preserved.
8391 # serial 8 ltoptions.m4
8393 # This is to help aclocal find these macros, as it can't see m4_define.
8394 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8397 # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8398 # ------------------------------------------
8399 m4_define([_LT_MANGLE_OPTION],
8400 [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8403 # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8404 # ---------------------------------------
8405 # Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8406 # matching handler defined, dispatch to it. Other OPTION-NAMEs are
8408 m4_define([_LT_SET_OPTION],
8409 [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8410 m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8411 _LT_MANGLE_DEFUN([$1], [$2]),
8412 [m4_warning([Unknown $1 option '$2'])])[]dnl
8416 # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8417 # ------------------------------------------------------------
8418 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8419 m4_define([_LT_IF_OPTION],
8420 [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8423 # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8424 # -------------------------------------------------------
8425 # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8427 m4_define([_LT_UNLESS_OPTIONS],
8428 [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8429 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8430 [m4_define([$0_found])])])[]dnl
8431 m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8436 # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8437 # ----------------------------------------
8438 # OPTION-LIST is a space-separated list of Libtool options associated
8439 # with MACRO-NAME. If any OPTION has a matching handler declared with
8440 # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8441 # the unknown option and exit.
8442 m4_defun([_LT_SET_OPTIONS],
8444 m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8445 [_LT_SET_OPTION([$1], _LT_Option)])
8447 m4_if([$1],[LT_INIT],[
8449 dnl Simply set some default values (i.e off) if boolean options were not
8451 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8453 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8456 dnl If no reference was made to various pairs of opposing options, then
8457 dnl we run the default mode handler for the pair. For example, if neither
8458 dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
8459 dnl archives by default:
8460 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8461 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8462 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8463 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8464 [_LT_ENABLE_FAST_INSTALL])
8465 _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
8466 [_LT_WITH_AIX_SONAME([aix])])
8472 # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8473 # -----------------------------------------
8474 m4_define([_LT_MANGLE_DEFUN],
8475 [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8478 # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8479 # -----------------------------------------------
8480 m4_define([LT_OPTION_DEFINE],
8481 [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8482 ])# LT_OPTION_DEFINE
8487 LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8490 AU_DEFUN([AC_LIBTOOL_DLOPEN],
8491 [_LT_SET_OPTION([LT_INIT], [dlopen])
8492 AC_DIAGNOSE([obsolete],
8493 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8494 put the 'dlopen' option into LT_INIT's first parameter.])
8497 dnl aclocal-1.4 backwards compatibility:
8498 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8503 # Declare package support for building win32 dll's.
8504 LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8505 [enable_win32_dll=yes
8508 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8509 AC_CHECK_TOOL(AS, as, false)
8510 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8511 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8515 test -z "$AS" && AS=as
8516 _LT_DECL([], [AS], [1], [Assembler program])dnl
8518 test -z "$DLLTOOL" && DLLTOOL=dlltool
8519 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8521 test -z "$OBJDUMP" && OBJDUMP=objdump
8522 _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8525 AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8526 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8527 _LT_SET_OPTION([LT_INIT], [win32-dll])
8528 AC_DIAGNOSE([obsolete],
8529 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8530 put the 'win32-dll' option into LT_INIT's first parameter.])
8533 dnl aclocal-1.4 backwards compatibility:
8534 dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8537 # _LT_ENABLE_SHARED([DEFAULT])
8538 # ----------------------------
8539 # implement the --enable-shared flag, and supports the 'shared' and
8540 # 'disable-shared' LT_INIT options.
8541 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8542 m4_define([_LT_ENABLE_SHARED],
8543 [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8544 AC_ARG_ENABLE([shared],
8545 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8546 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8547 [p=${PACKAGE-default}
8549 yes) enable_shared=yes ;;
8550 no) enable_shared=no ;;
8553 # Look at the argument we got. We use all the common list separators.
8554 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8555 for pkg in $enableval; do
8557 if test "X$pkg" = "X$p"; then
8564 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8566 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8567 [Whether or not to build shared libraries])
8568 ])# _LT_ENABLE_SHARED
8570 LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8571 LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8574 AC_DEFUN([AC_ENABLE_SHARED],
8575 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8578 AC_DEFUN([AC_DISABLE_SHARED],
8579 [_LT_SET_OPTION([LT_INIT], [disable-shared])
8582 AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8583 AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8585 dnl aclocal-1.4 backwards compatibility:
8586 dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8587 dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8591 # _LT_ENABLE_STATIC([DEFAULT])
8592 # ----------------------------
8593 # implement the --enable-static flag, and support the 'static' and
8594 # 'disable-static' LT_INIT options.
8595 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8596 m4_define([_LT_ENABLE_STATIC],
8597 [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8598 AC_ARG_ENABLE([static],
8599 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8600 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8601 [p=${PACKAGE-default}
8603 yes) enable_static=yes ;;
8604 no) enable_static=no ;;
8607 # Look at the argument we got. We use all the common list separators.
8608 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8609 for pkg in $enableval; do
8611 if test "X$pkg" = "X$p"; then
8618 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8620 _LT_DECL([build_old_libs], [enable_static], [0],
8621 [Whether or not to build static libraries])
8622 ])# _LT_ENABLE_STATIC
8624 LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8625 LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8628 AC_DEFUN([AC_ENABLE_STATIC],
8629 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8632 AC_DEFUN([AC_DISABLE_STATIC],
8633 [_LT_SET_OPTION([LT_INIT], [disable-static])
8636 AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8637 AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8639 dnl aclocal-1.4 backwards compatibility:
8640 dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8641 dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8645 # _LT_ENABLE_FAST_INSTALL([DEFAULT])
8646 # ----------------------------------
8647 # implement the --enable-fast-install flag, and support the 'fast-install'
8648 # and 'disable-fast-install' LT_INIT options.
8649 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8650 m4_define([_LT_ENABLE_FAST_INSTALL],
8651 [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8652 AC_ARG_ENABLE([fast-install],
8653 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8654 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8655 [p=${PACKAGE-default}
8657 yes) enable_fast_install=yes ;;
8658 no) enable_fast_install=no ;;
8660 enable_fast_install=no
8661 # Look at the argument we got. We use all the common list separators.
8662 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8663 for pkg in $enableval; do
8665 if test "X$pkg" = "X$p"; then
8666 enable_fast_install=yes
8672 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8674 _LT_DECL([fast_install], [enable_fast_install], [0],
8675 [Whether or not to optimize for fast installation])dnl
8676 ])# _LT_ENABLE_FAST_INSTALL
8678 LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8679 LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8682 AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8683 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8684 AC_DIAGNOSE([obsolete],
8685 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8686 the 'fast-install' option into LT_INIT's first parameter.])
8689 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8690 [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8691 AC_DIAGNOSE([obsolete],
8692 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8693 the 'disable-fast-install' option into LT_INIT's first parameter.])
8696 dnl aclocal-1.4 backwards compatibility:
8697 dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8698 dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8701 # _LT_WITH_AIX_SONAME([DEFAULT])
8702 # ----------------------------------
8703 # implement the --with-aix-soname flag, and support the `aix-soname=aix'
8704 # and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
8705 # is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
8706 m4_define([_LT_WITH_AIX_SONAME],
8707 [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
8708 shared_archive_member_spec=
8709 case $host,$enable_shared in
8710 power*-*-aix[[5-9]]*,yes)
8711 AC_MSG_CHECKING([which variant of shared library versioning to provide])
8712 AC_ARG_WITH([aix-soname],
8713 [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
8714 [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
8719 AC_MSG_ERROR([Unknown argument to --with-aix-soname])
8722 lt_cv_with_aix_soname=$with_aix_soname],
8723 [AC_CACHE_VAL([lt_cv_with_aix_soname],
8724 [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
8725 with_aix_soname=$lt_cv_with_aix_soname])
8726 AC_MSG_RESULT([$with_aix_soname])
8727 if test aix != "$with_aix_soname"; then
8728 # For the AIX way of multilib, we name the shared archive member
8729 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8730 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8731 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8732 # the AIX toolchain works better with OBJECT_MODE set (default 32).
8733 if test 64 = "${OBJECT_MODE-32}"; then
8734 shared_archive_member_spec=shr_64
8736 shared_archive_member_spec=shr
8745 _LT_DECL([], [shared_archive_member_spec], [0],
8746 [Shared archive member basename, for filename based shared library versioning on AIX])dnl
8747 ])# _LT_WITH_AIX_SONAME
8749 LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
8750 LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
8751 LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
8754 # _LT_WITH_PIC([MODE])
8755 # --------------------
8756 # implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
8758 # MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
8759 m4_define([_LT_WITH_PIC],
8761 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8762 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8763 [lt_p=${PACKAGE-default}
8765 yes|no) pic_mode=$withval ;;
8768 # Look at the argument we got. We use all the common list separators.
8769 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8770 for lt_pkg in $withval; do
8772 if test "X$lt_pkg" = "X$lt_p"; then
8779 [pic_mode=m4_default([$1], [default])])
8781 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8784 LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8785 LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8788 AU_DEFUN([AC_LIBTOOL_PICMODE],
8789 [_LT_SET_OPTION([LT_INIT], [pic-only])
8790 AC_DIAGNOSE([obsolete],
8791 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8792 put the 'pic-only' option into LT_INIT's first parameter.])
8795 dnl aclocal-1.4 backwards compatibility:
8796 dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8799 m4_define([_LTDL_MODE], [])
8800 LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8801 [m4_define([_LTDL_MODE], [nonrecursive])])
8802 LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8803 [m4_define([_LTDL_MODE], [recursive])])
8804 LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8805 [m4_define([_LTDL_MODE], [subproject])])
8807 m4_define([_LTDL_TYPE], [])
8808 LT_OPTION_DEFINE([LTDL_INIT], [installable],
8809 [m4_define([_LTDL_TYPE], [installable])])
8810 LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8811 [m4_define([_LTDL_TYPE], [convenience])])
8813 # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8815 # Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8817 # Written by Gary V. Vaughan, 2004
8819 # This file is free software; the Free Software Foundation gives
8820 # unlimited permission to copy and/or distribute it, with or without
8821 # modifications, as long as this notice is preserved.
8823 # serial 6 ltsugar.m4
8825 # This is to help aclocal find these macros, as it can't see m4_define.
8826 AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8829 # lt_join(SEP, ARG1, [ARG2...])
8830 # -----------------------------
8831 # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8832 # associated separator.
8833 # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8834 # versions in m4sugar had bugs.
8835 m4_define([lt_join],
8836 [m4_if([$#], [1], [],
8838 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8839 m4_define([_lt_join],
8840 [m4_if([$#$2], [2], [],
8841 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8847 # Manipulate m4 lists.
8848 # These macros are necessary as long as will still need to support
8849 # Autoconf-2.59, which quotes differently.
8850 m4_define([lt_car], [[$1]])
8852 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8854 [m4_dquote(m4_shift($@))])])
8855 m4_define([lt_unquote], $1)
8858 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
8859 # ------------------------------------------
8860 # Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
8861 # Note that neither SEPARATOR nor STRING are expanded; they are appended
8862 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8863 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
8864 # than defined and empty).
8866 # This macro is needed until we can rely on Autoconf 2.62, since earlier
8867 # versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8868 m4_define([lt_append],
8870 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8874 # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8875 # ----------------------------------------------------------
8876 # Produce a SEP delimited list of all paired combinations of elements of
8877 # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8878 # has the form PREFIXmINFIXSUFFIXn.
8879 # Needed until we can rely on m4_combine added in Autoconf 2.62.
8880 m4_define([lt_combine],
8881 [m4_if(m4_eval([$# > 3]), [1],
8882 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8883 [[m4_foreach([_Lt_prefix], [$2],
8884 [m4_foreach([_Lt_suffix],
8885 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8886 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8889 # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8890 # -----------------------------------------------------------------------
8891 # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8892 # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8893 m4_define([lt_if_append_uniq],
8895 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8896 [lt_append([$1], [$2], [$3])$4],
8898 [lt_append([$1], [$2], [$3])$4])])
8901 # lt_dict_add(DICT, KEY, VALUE)
8902 # -----------------------------
8903 m4_define([lt_dict_add],
8904 [m4_define([$1($2)], [$3])])
8907 # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8908 # --------------------------------------------
8909 m4_define([lt_dict_add_subkey],
8910 [m4_define([$1($2:$3)], [$4])])
8913 # lt_dict_fetch(DICT, KEY, [SUBKEY])
8914 # ----------------------------------
8915 m4_define([lt_dict_fetch],
8917 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8918 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8921 # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8922 # -----------------------------------------------------------------
8923 m4_define([lt_if_dict_fetch],
8924 [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8929 # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8930 # --------------------------------------------------------------
8931 m4_define([lt_dict_filter],
8932 [m4_if([$5], [], [],
8933 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8934 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8935 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8938 # ltversion.m4 -- version numbers -*- Autoconf -*-
8940 # Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
8941 # Written by Scott James Remnant, 2004
8943 # This file is free software; the Free Software Foundation gives
8944 # unlimited permission to copy and/or distribute it, with or without
8945 # modifications, as long as this notice is preserved.
8949 # serial 4179 ltversion.m4
8950 # This file is part of GNU Libtool
8952 m4_define([LT_PACKAGE_VERSION], [2.4.6])
8953 m4_define([LT_PACKAGE_REVISION], [2.4.6])
8955 AC_DEFUN([LTVERSION_VERSION],
8956 [macro_version='2.4.6'
8957 macro_revision='2.4.6'
8958 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8959 _LT_DECL(, macro_revision, 0)
8962 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8964 # Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8966 # Written by Scott James Remnant, 2004.
8968 # This file is free software; the Free Software Foundation gives
8969 # unlimited permission to copy and/or distribute it, with or without
8970 # modifications, as long as this notice is preserved.
8972 # serial 5 lt~obsolete.m4
8974 # These exist entirely to fool aclocal when bootstrapping libtool.
8976 # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
8977 # which have later been changed to m4_define as they aren't part of the
8978 # exported API, or moved to Autoconf or Automake where they belong.
8980 # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8981 # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8982 # using a macro with the same name in our local m4/libtool.m4 it'll
8983 # pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8984 # and doesn't know about Autoconf macros at all.)
8986 # So we provide this file, which has a silly filename so it's always
8987 # included after everything else. This provides aclocal with the
8988 # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8989 # because those macros already exist, or will be overwritten later.
8990 # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8992 # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8993 # Yes, that means every name once taken will need to remain here until
8994 # we give up compatibility with versions before 1.7, at which point
8995 # we need to keep only those names which we still refer to.
8997 # This is to help aclocal find these macros, as it can't see m4_define.
8998 AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
9000 m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
9001 m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
9002 m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
9003 m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
9004 m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
9005 m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
9006 m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
9007 m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
9008 m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
9009 m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
9010 m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
9011 m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
9012 m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
9013 m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
9014 m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9015 m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9016 m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
9017 m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9018 m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9019 m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
9020 m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
9021 m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9022 m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9023 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9024 m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9025 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9026 m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9027 m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9028 m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
9029 m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
9030 m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
9031 m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9032 m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9033 m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
9034 m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
9035 m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9036 m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9037 m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
9038 m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9039 m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
9040 m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
9041 m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
9042 m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9043 m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9044 m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9045 m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9046 m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9047 m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9048 m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9049 m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9050 m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9051 m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9052 m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
9053 m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
9054 m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9055 m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9056 m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9057 m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9058 m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
9059 m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
9060 m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
9062 dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
9063 dnl serial 11 (pkg-config-0.29.1)
9065 dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
9066 dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
9068 dnl This program is free software; you can redistribute it and/or modify
9069 dnl it under the terms of the GNU General Public License as published by
9070 dnl the Free Software Foundation; either version 2 of the License, or
9071 dnl (at your option) any later version.
9073 dnl This program is distributed in the hope that it will be useful, but
9074 dnl WITHOUT ANY WARRANTY; without even the implied warranty of
9075 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9076 dnl General Public License for more details.
9078 dnl You should have received a copy of the GNU General Public License
9079 dnl along with this program; if not, write to the Free Software
9080 dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
9081 dnl 02111-1307, USA.
9083 dnl As a special exception to the GNU General Public License, if you
9084 dnl distribute this file as part of a program that contains a
9085 dnl configuration script generated by Autoconf, you may include it under
9086 dnl the same distribution terms that you use for the rest of that
9089 dnl PKG_PREREQ(MIN-VERSION)
9090 dnl -----------------------
9093 dnl Verify that the version of the pkg-config macros are at least
9094 dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
9095 dnl installed version of pkg-config, this checks the developer's version
9096 dnl of pkg.m4 when generating configure.
9098 dnl To ensure that this macro is defined, also add:
9099 dnl m4_ifndef([PKG_PREREQ],
9100 dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
9102 dnl See the "Since" comment for each macro you use to see what version
9103 dnl of the macros you require.
9104 m4_defun([PKG_PREREQ],
9105 [m4_define([PKG_MACROS_VERSION], [0.29.1])
9106 m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
9107 [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
9110 dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
9111 dnl ----------------------------------
9114 dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
9115 dnl first found in the path. Checks that the version of pkg-config found
9116 dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
9117 dnl used since that's the first version where most current features of
9118 dnl pkg-config existed.
9119 AC_DEFUN([PKG_PROG_PKG_CONFIG],
9120 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
9121 m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
9122 m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
9123 AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
9124 AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
9125 AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
9127 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
9128 AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
9130 if test -n "$PKG_CONFIG"; then
9131 _pkg_min_version=m4_default([$1], [0.9.0])
9132 AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
9133 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
9134 AC_MSG_RESULT([yes])
9140 ])dnl PKG_PROG_PKG_CONFIG
9142 dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9143 dnl -------------------------------------------------------------------
9146 dnl Check to see whether a particular set of modules exists. Similar to
9147 dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
9149 dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9150 dnl only at the first occurence in configure.ac, so if the first place
9151 dnl it's called might be skipped (such as if it is within an "if", you
9152 dnl have to call PKG_CHECK_EXISTS manually
9153 AC_DEFUN([PKG_CHECK_EXISTS],
9154 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9155 if test -n "$PKG_CONFIG" && \
9156 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
9157 m4_default([$2], [:])
9158 m4_ifvaln([$3], [else
9162 dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
9163 dnl ---------------------------------------------
9164 dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
9165 dnl pkg_failed based on the result.
9166 m4_define([_PKG_CONFIG],
9167 [if test -n "$$1"; then
9169 elif test -n "$PKG_CONFIG"; then
9170 PKG_CHECK_EXISTS([$3],
9171 [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
9172 test "x$?" != "x0" && pkg_failed=yes ],
9179 dnl _PKG_SHORT_ERRORS_SUPPORTED
9180 dnl ---------------------------
9181 dnl Internal check to see if pkg-config supports short errors.
9182 AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
9183 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9184 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
9185 _pkg_short_errors_supported=yes
9187 _pkg_short_errors_supported=no
9189 ])dnl _PKG_SHORT_ERRORS_SUPPORTED
9192 dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9193 dnl [ACTION-IF-NOT-FOUND])
9194 dnl --------------------------------------------------------------
9197 dnl Note that if there is a possibility the first call to
9198 dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
9199 dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
9200 AC_DEFUN([PKG_CHECK_MODULES],
9201 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9202 AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
9203 AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
9206 AC_MSG_CHECKING([for $1])
9208 _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
9209 _PKG_CONFIG([$1][_LIBS], [libs], [$2])
9211 m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
9212 and $1[]_LIBS to avoid the need to call pkg-config.
9213 See the pkg-config man page for more details.])
9215 if test $pkg_failed = yes; then
9217 _PKG_SHORT_ERRORS_SUPPORTED
9218 if test $_pkg_short_errors_supported = yes; then
9219 $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
9221 $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
9223 # Put the nasty error message in config.log where it belongs
9224 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
9226 m4_default([$4], [AC_MSG_ERROR(
9227 [Package requirements ($2) were not met:
9231 Consider adjusting the PKG_CONFIG_PATH environment variable if you
9232 installed software in a non-standard prefix.
9236 elif test $pkg_failed = untried; then
9238 m4_default([$4], [AC_MSG_FAILURE(
9239 [The pkg-config script could not be found or is too old. Make sure it
9240 is in your PATH or set the PKG_CONFIG environment variable to the full
9245 To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
9248 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
9249 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
9250 AC_MSG_RESULT([yes])
9253 ])dnl PKG_CHECK_MODULES
9256 dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9257 dnl [ACTION-IF-NOT-FOUND])
9258 dnl ---------------------------------------------------------------------
9261 dnl Checks for existence of MODULES and gathers its build flags with
9262 dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
9263 dnl and VARIABLE-PREFIX_LIBS from --libs.
9265 dnl Note that if there is a possibility the first call to
9266 dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
9267 dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
9269 AC_DEFUN([PKG_CHECK_MODULES_STATIC],
9270 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9271 _save_PKG_CONFIG=$PKG_CONFIG
9272 PKG_CONFIG="$PKG_CONFIG --static"
9273 PKG_CHECK_MODULES($@)
9274 PKG_CONFIG=$_save_PKG_CONFIG[]dnl
9275 ])dnl PKG_CHECK_MODULES_STATIC
9278 dnl PKG_INSTALLDIR([DIRECTORY])
9279 dnl -------------------------
9282 dnl Substitutes the variable pkgconfigdir as the location where a module
9283 dnl should install pkg-config .pc files. By default the directory is
9284 dnl $libdir/pkgconfig, but the default can be changed by passing
9285 dnl DIRECTORY. The user can override through the --with-pkgconfigdir
9287 AC_DEFUN([PKG_INSTALLDIR],
9288 [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
9289 m4_pushdef([pkg_description],
9290 [pkg-config installation directory @<:@]pkg_default[@:>@])
9291 AC_ARG_WITH([pkgconfigdir],
9292 [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
9293 [with_pkgconfigdir=]pkg_default)
9294 AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
9295 m4_popdef([pkg_default])
9296 m4_popdef([pkg_description])
9297 ])dnl PKG_INSTALLDIR
9300 dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
9301 dnl --------------------------------
9304 dnl Substitutes the variable noarch_pkgconfigdir as the location where a
9305 dnl module should install arch-independent pkg-config .pc files. By
9306 dnl default the directory is $datadir/pkgconfig, but the default can be
9307 dnl changed by passing DIRECTORY. The user can override through the
9308 dnl --with-noarch-pkgconfigdir parameter.
9309 AC_DEFUN([PKG_NOARCH_INSTALLDIR],
9310 [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
9311 m4_pushdef([pkg_description],
9312 [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
9313 AC_ARG_WITH([noarch-pkgconfigdir],
9314 [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
9315 [with_noarch_pkgconfigdir=]pkg_default)
9316 AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
9317 m4_popdef([pkg_default])
9318 m4_popdef([pkg_description])
9319 ])dnl PKG_NOARCH_INSTALLDIR
9322 dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
9323 dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9324 dnl -------------------------------------------
9327 dnl Retrieves the value of the pkg-config variable for the given module.
9328 AC_DEFUN([PKG_CHECK_VAR],
9329 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9330 AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
9332 _PKG_CONFIG([$1], [variable="][$3]["], [$2])
9333 AS_VAR_COPY([$1], [pkg_cv_][$1])
9335 AS_VAR_IF([$1], [""], [$5], [$4])dnl
9338 # AM_CONDITIONAL -*- Autoconf -*-
9340 # Copyright (C) 1997-2017 Free Software Foundation, Inc.
9342 # This file is free software; the Free Software Foundation
9343 # gives unlimited permission to copy and/or distribute it,
9344 # with or without modifications, as long as this notice is preserved.
9346 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
9347 # -------------------------------------
9348 # Define a conditional.
9349 AC_DEFUN([AM_CONDITIONAL],
9350 [AC_PREREQ([2.52])dnl
9351 m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
9352 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
9353 AC_SUBST([$1_TRUE])dnl
9354 AC_SUBST([$1_FALSE])dnl
9355 _AM_SUBST_NOTMAKE([$1_TRUE])dnl
9356 _AM_SUBST_NOTMAKE([$1_FALSE])dnl
9357 m4_define([_AM_COND_VALUE_$1], [$2])dnl
9365 AC_CONFIG_COMMANDS_PRE(
9366 [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
9367 AC_MSG_ERROR([[conditional "$1" was never defined.
9368 Usually this means the macro was only invoked conditionally.]])
9371 # Copyright (C) 2006-2017 Free Software Foundation, Inc.
9373 # This file is free software; the Free Software Foundation
9374 # gives unlimited permission to copy and/or distribute it,
9375 # with or without modifications, as long as this notice is preserved.
9377 # _AM_SUBST_NOTMAKE(VARIABLE)
9378 # ---------------------------
9379 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
9380 # This macro is traced by Automake.
9381 AC_DEFUN([_AM_SUBST_NOTMAKE])
9383 # AM_SUBST_NOTMAKE(VARIABLE)
9384 # --------------------------
9385 # Public sister of _AM_SUBST_NOTMAKE.
9386 AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])