1 # generated automatically by aclocal 1.16.5 -*- Autoconf -*-
3 # Copyright (C) 1996-2021 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 cr libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1051 $AR cr 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[[912]]*)
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 $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD
4073 if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then
4074 # Try sorting and uniquifying the output.
4075 if sort "$nlist" | uniq > "$nlist"T; then
4076 mv -f "$nlist"T "$nlist"
4081 # Make sure that we snagged all the symbols we need.
4082 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4083 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4084 cat <<_LT_EOF > conftest.$ac_ext
4085 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
4086 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4087 /* DATA imports from DLLs on WIN32 can't be const, because runtime
4088 relocations are performed -- see ld's documentation on pseudo-relocs. */
4089 # define LT@&t@_DLSYM_CONST
4090 #elif defined __osf__
4091 /* This system does not cope well with relocations in const data. */
4092 # define LT@&t@_DLSYM_CONST
4094 # define LT@&t@_DLSYM_CONST const
4102 # Now generate the symbol file.
4103 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
4105 cat <<_LT_EOF >> conftest.$ac_ext
4107 /* The mapping between symbol names and symbols. */
4108 LT@&t@_DLSYM_CONST struct {
4112 lt__PROGRAM__LTX_preloaded_symbols[[]] =
4114 { "@PROGRAM@", (void *) 0 },
4116 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
4117 cat <<\_LT_EOF >> conftest.$ac_ext
4121 /* This works around a problem in FreeBSD linker */
4122 #ifdef FREEBSD_WORKAROUND
4123 static const void *lt_preloaded_setup() {
4124 return lt__PROGRAM__LTX_preloaded_symbols;
4132 # Now try linking the two files.
4133 mv conftest.$ac_objext conftstm.$ac_objext
4134 lt_globsym_save_LIBS=$LIBS
4135 lt_globsym_save_CFLAGS=$CFLAGS
4136 LIBS=conftstm.$ac_objext
4137 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4138 if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
4141 LIBS=$lt_globsym_save_LIBS
4142 CFLAGS=$lt_globsym_save_CFLAGS
4144 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4147 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4150 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4153 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4154 cat conftest.$ac_ext >&5
4156 rm -rf conftest* conftst*
4158 # Do not use the global_symbol_pipe unless it works.
4159 if test yes = "$pipe_works"; then
4162 lt_cv_sys_global_symbol_pipe=
4166 if test -z "$lt_cv_sys_global_symbol_pipe"; then
4167 lt_cv_sys_global_symbol_to_cdecl=
4169 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4170 AC_MSG_RESULT(failed)
4175 # Response file support.
4176 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4177 nm_file_list_spec='@'
4178 elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4179 nm_file_list_spec='@'
4182 _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
4183 [Take the output of nm and produce a listing of raw symbols and C names])
4184 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4185 [Transform the output of nm in a proper C declaration])
4186 _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
4187 [Transform the output of nm into a list of symbols to manually relocate])
4188 _LT_DECL([global_symbol_to_c_name_address],
4189 [lt_cv_sys_global_symbol_to_c_name_address], [1],
4190 [Transform the output of nm in a C name address pair])
4191 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4192 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4193 [Transform the output of nm in a C name address pair when lib prefix is needed])
4194 _LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4195 [The name lister interface])
4196 _LT_DECL([], [nm_file_list_spec], [1],
4197 [Specify filename containing input files for $NM])
4198 ]) # _LT_CMD_GLOBAL_SYMBOLS
4201 # _LT_COMPILER_PIC([TAGNAME])
4202 # ---------------------------
4203 m4_defun([_LT_COMPILER_PIC],
4204 [m4_require([_LT_TAG_COMPILER])dnl
4205 _LT_TAGVAR(lt_prog_compiler_wl, $1)=
4206 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4207 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4209 m4_if([$1], [CXX], [
4210 # C++ specific cases for pic, static, wl, etc.
4211 if test yes = "$GXX"; then
4212 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4213 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4217 # All AIX code is PIC.
4218 if test ia64 = "$host_cpu"; then
4219 # AIX 5 now supports IA64 processor
4220 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4222 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4228 # see comment about AmigaOS4 .so support
4229 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4232 # FIXME: we need at least 68020 code to build shared libraries, but
4233 # adding the '-m68020' flag to GCC prevents building anything better,
4235 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4240 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4241 # PIC is the default for these OSes.
4243 mingw* | cygwin* | os2* | pw32* | cegcc*)
4244 # This hack is so that the source file can tell whether it is being
4245 # built for inclusion in a dll (and should export symbols for example).
4246 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4247 # (--disable-auto-import) libraries
4248 m4_if([$1], [GCJ], [],
4249 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4252 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4256 darwin* | rhapsody*)
4257 # PIC is the default on this platform
4258 # Common symbols not allowed in MH_DYLIB files
4259 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4262 # DJGPP does not support shared libraries at all
4263 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4266 # PIC is the default for Haiku.
4267 # The "-static" flag exists, but is broken.
4268 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4271 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4272 # Instead, we relocate shared libraries at runtime.
4275 if test -d /usr/nec; then
4276 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4280 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4281 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4282 # sets the default TLS model and affects inlining.
4287 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4292 # QNX uses GNU C++, but need to define -shared option too, otherwise
4294 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4297 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4303 # All AIX code is PIC.
4304 if test ia64 = "$host_cpu"; then
4305 # AIX 5 now supports IA64 processor
4306 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4308 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4312 case $cc_basename in
4314 # Green Hills C++ Compiler
4315 # _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"
4319 mingw* | cygwin* | os2* | pw32* | cegcc*)
4320 # This hack is so that the source file can tell whether it is being
4321 # built for inclusion in a dll (and should export symbols for example).
4322 m4_if([$1], [GCJ], [],
4323 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4326 case $cc_basename in
4328 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4331 # Green Hills C++ Compiler
4332 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4338 freebsd* | dragonfly*)
4339 # FreeBSD uses GNU C++
4341 hpux9* | hpux10* | hpux11*)
4342 case $cc_basename in
4344 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4345 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4346 if test ia64 != "$host_cpu"; then
4347 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4351 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4352 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4358 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4367 # This is c89, which is MS Visual C++ (no shared libs)
4368 # Anyone wants to do a port?
4370 irix5* | irix6* | nonstopux*)
4371 case $cc_basename in
4373 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4374 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4375 # CC pic flag -KPIC is the default.
4381 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4382 case $cc_basename in
4385 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4386 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4389 # old Intel C++ for x86_64, which still supported -KPIC.
4390 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4391 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4392 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4395 # Intel C++, used to be incompatible with GCC.
4396 # ICC 10 doesn't accept -KPIC any more.
4397 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4398 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4399 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4402 # Portland Group C++ compiler
4403 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4404 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4405 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4409 # Make sure the PIC flag is empty. It appears that all Alpha
4410 # Linux and Compaq Tru64 Unix objects are PIC.
4411 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4412 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4414 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4415 # IBM XL 8.0, 9.0 on PPC and BlueGene
4416 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4417 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4418 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4421 case `$CC -V 2>&1 | sed 5q` in
4424 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4425 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4426 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4437 case $cc_basename in
4439 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4445 netbsd* | netbsdelf*-gnu)
4448 # QNX uses GNU C++, but need to define -shared option too, otherwise
4450 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4452 osf3* | osf4* | osf5*)
4453 case $cc_basename in
4455 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4458 # Rational C++ 2.4.1
4459 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4462 # Digital/Compaq C++
4463 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4464 # Make sure the PIC flag is empty. It appears that all Alpha
4465 # Linux and Compaq Tru64 Unix objects are PIC.
4466 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4467 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4476 case $cc_basename in
4478 # Sun C++ 4.2, 5.x and Centerline C++
4479 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4480 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4481 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4484 # Green Hills C++ Compiler
4485 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4492 case $cc_basename in
4495 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4496 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4500 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4506 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4507 case $cc_basename in
4509 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4510 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4511 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4516 case $cc_basename in
4518 # NonStop-UX NCC 3.20
4519 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4528 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4534 if test yes = "$GCC"; then
4535 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4536 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4540 # All AIX code is PIC.
4541 if test ia64 = "$host_cpu"; then
4542 # AIX 5 now supports IA64 processor
4543 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4545 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4551 # see comment about AmigaOS4 .so support
4552 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4555 # FIXME: we need at least 68020 code to build shared libraries, but
4556 # adding the '-m68020' flag to GCC prevents building anything better,
4558 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4563 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4564 # PIC is the default for these OSes.
4567 mingw* | cygwin* | pw32* | os2* | cegcc*)
4568 # This hack is so that the source file can tell whether it is being
4569 # built for inclusion in a dll (and should export symbols for example).
4570 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4571 # (--disable-auto-import) libraries
4572 m4_if([$1], [GCJ], [],
4573 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4576 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4581 darwin* | rhapsody*)
4582 # PIC is the default on this platform
4583 # Common symbols not allowed in MH_DYLIB files
4584 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4588 # PIC is the default for Haiku.
4589 # The "-static" flag exists, but is broken.
4590 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4594 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4595 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4596 # sets the default TLS model and affects inlining.
4602 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4608 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4609 # Instead, we relocate shared libraries at runtime.
4613 # Just because we use GCC doesn't mean we suddenly get shared libraries
4614 # on systems that don't support them.
4615 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4620 # QNX uses GNU C++, but need to define -shared option too, otherwise
4622 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4626 if test -d /usr/nec; then
4627 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4632 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4636 case $cc_basename in
4637 nvcc*) # Cuda Compiler Driver 2.2
4638 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4639 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4640 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4645 # PORTME Check for flag to pass linker flags through the system compiler.
4648 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4649 if test ia64 = "$host_cpu"; then
4650 # AIX 5 now supports IA64 processor
4651 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4653 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4657 darwin* | rhapsody*)
4658 # PIC is the default on this platform
4659 # Common symbols not allowed in MH_DYLIB files
4660 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4661 case $cc_basename in
4663 # NAG Fortran compiler
4664 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4665 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4666 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4671 mingw* | cygwin* | pw32* | os2* | cegcc*)
4672 # This hack is so that the source file can tell whether it is being
4673 # built for inclusion in a dll (and should export symbols for example).
4674 m4_if([$1], [GCJ], [],
4675 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4678 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4683 hpux9* | hpux10* | hpux11*)
4684 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4685 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4692 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4695 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4696 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4699 irix5* | irix6* | nonstopux*)
4700 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4701 # PIC (with -KPIC) is the default.
4702 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4705 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4706 case $cc_basename in
4707 # old Intel for x86_64, which still supported -KPIC.
4709 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4710 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4711 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4713 # flang / f18. f95 an alias for gfortran or flang on Debian
4714 flang* | f18* | f95*)
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 # icc used to be incompatible with GCC.
4720 # ICC 10 doesn't accept -KPIC any more.
4722 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4723 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4724 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4726 # Lahey Fortran 8.1.
4728 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4729 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4730 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4733 # NAG Fortran compiler
4734 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4735 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4736 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4739 # Fabrice Bellard et al's Tiny C Compiler
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)='-static'
4744 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4745 # Portland Group compilers (*not* the Pentium gcc compiler,
4746 # which looks to be a dead project)
4747 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4748 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4749 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4752 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4753 # All Alpha code is PIC.
4754 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4756 xl* | bgxl* | bgf* | mpixl*)
4757 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4758 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4759 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4760 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4763 case `$CC -V 2>&1 | sed 5q` in
4764 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4765 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4766 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4767 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4768 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4770 *Sun\ F* | *Sun*Fortran*)
4771 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4772 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4773 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4777 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4778 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4779 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4781 *Intel*\ [[CF]]*Compiler*)
4782 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4783 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4784 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4787 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4788 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4789 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4797 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4798 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4802 # QNX uses GNU C++, but need to define -shared option too, otherwise
4804 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4807 osf3* | osf4* | osf5*)
4808 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4809 # All OSF/1 code is PIC.
4810 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4814 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4818 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4819 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4820 case $cc_basename in
4821 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4822 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4824 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4829 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4830 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4831 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4834 sysv4 | sysv4.2uw2* | sysv4.3*)
4835 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4836 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4837 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4841 if test -d /usr/nec; then
4842 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4843 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4847 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4848 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4849 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4850 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4854 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4855 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4859 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4860 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4864 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4870 # For platforms that do not support PIC, -DPIC is meaningless:
4872 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4875 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4879 AC_CACHE_CHECK([for $compiler option to produce PIC],
4880 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4881 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4882 _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4885 # Check to make sure the PIC flag actually works.
4887 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4888 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4889 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4890 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4891 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4893 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4895 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4896 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4898 _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4899 [Additional compiler flags for building library objects])
4901 _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4902 [How to pass a linker flag through the compiler])
4904 # Check to make sure the static flag actually works.
4906 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4907 _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4908 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4909 $lt_tmp_static_flag,
4911 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4912 _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4913 [Compiler flag to prevent dynamic linking])
4914 ])# _LT_COMPILER_PIC
4917 # _LT_LINKER_SHLIBS([TAGNAME])
4918 # ----------------------------
4919 # See if the linker supports building shared libraries.
4920 m4_defun([_LT_LINKER_SHLIBS],
4921 [AC_REQUIRE([LT_PATH_LD])dnl
4922 AC_REQUIRE([LT_PATH_NM])dnl
4923 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4924 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4925 m4_require([_LT_DECL_EGREP])dnl
4926 m4_require([_LT_DECL_SED])dnl
4927 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4928 m4_require([_LT_TAG_COMPILER])dnl
4929 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4930 m4_if([$1], [CXX], [
4931 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4932 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4935 # If we're using GNU nm, then we don't want the "-C" option.
4936 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
4937 # Without the "-l" option, or with the "-B" option, AIX nm treats
4938 # weak defined symbols like other global defined symbols, whereas
4939 # GNU nm marks them as "W".
4940 # While the 'weak' keyword is ignored in the Export File, we need
4941 # it in the Import File for the 'aix-soname' feature, so we have
4942 # to replace the "-B" option with "-P" for AIX nm.
4943 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4944 _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'
4946 _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'
4950 _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
4952 cygwin* | mingw* | cegcc*)
4953 case $cc_basename in
4955 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4958 _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'
4959 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4963 linux* | k*bsd*-gnu | gnu*)
4964 _LT_TAGVAR(link_all_deplibs, $1)=no
4967 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4972 _LT_TAGVAR(allow_undefined_flag, $1)=
4973 _LT_TAGVAR(always_export_symbols, $1)=no
4974 _LT_TAGVAR(archive_cmds, $1)=
4975 _LT_TAGVAR(archive_expsym_cmds, $1)=
4976 _LT_TAGVAR(compiler_needs_object, $1)=no
4977 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4978 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4979 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4980 _LT_TAGVAR(hardcode_automatic, $1)=no
4981 _LT_TAGVAR(hardcode_direct, $1)=no
4982 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4983 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4984 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4985 _LT_TAGVAR(hardcode_minus_L, $1)=no
4986 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4987 _LT_TAGVAR(inherit_rpath, $1)=no
4988 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4989 _LT_TAGVAR(module_cmds, $1)=
4990 _LT_TAGVAR(module_expsym_cmds, $1)=
4991 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4992 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4993 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4994 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4995 # include_expsyms should be a list of space-separated symbols to be *always*
4996 # included in the symbol list
4997 _LT_TAGVAR(include_expsyms, $1)=
4998 # exclude_expsyms can be an extended regexp of symbols to exclude
4999 # it will be wrapped by ' (' and ')$', so one must not match beginning or
5000 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
5001 # as well as any symbol that contains 'd'.
5002 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5003 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
5004 # platforms (ab)use it in PIC code, but their linkers get confused if
5005 # the symbol is explicitly referenced. Since portable code cannot
5006 # rely on this symbol name, it's probably fine to never include it in
5007 # preloaded symbol tables.
5008 # Exclude shared library initialization/finalization symbols.
5009 dnl Note also adjust exclude_expsyms for C++ above.
5010 extract_expsyms_cmds=
5013 cygwin* | mingw* | pw32* | cegcc*)
5014 # FIXME: the MSVC++ port hasn't been tested in a loooong time
5015 # When not using gcc, we currently assume that we are using
5016 # Microsoft Visual C++.
5017 if test yes != "$GCC"; then
5022 # we just hope/assume this is gcc and not c89 (= MSVC++)
5028 linux* | k*bsd*-gnu | gnu*)
5029 _LT_TAGVAR(link_all_deplibs, $1)=no
5033 _LT_TAGVAR(ld_shlibs, $1)=yes
5035 # On some targets, GNU ld is compatible enough with the native linker
5036 # that we're better off using the native interface for both.
5037 lt_use_gnu_ld_interface=no
5038 if test yes = "$with_gnu_ld"; then
5041 # The AIX port of GNU ld has always aspired to compatibility
5042 # with the native linker. However, as the warning in the GNU ld
5043 # block says, versions before 2.19.5* couldn't really create working
5044 # shared libraries, regardless of the interface used.
5045 case `$LD -v 2>&1` in
5046 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5047 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5048 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5050 lt_use_gnu_ld_interface=yes
5055 lt_use_gnu_ld_interface=yes
5060 if test yes = "$lt_use_gnu_ld_interface"; then
5061 # If archive_cmds runs LD, not CC, wlarc should be empty
5064 # Set some defaults for GNU ld with shared library support. These
5065 # are reset later if shared libraries are not supported. Putting them
5066 # here allows them to be overridden if necessary.
5067 runpath_var=LD_RUN_PATH
5068 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5069 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5070 # ancient GNU ld didn't support --whole-archive et. al.
5071 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
5072 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5074 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5076 supports_anon_versioning=no
5077 case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
5078 *GNU\ gold*) supports_anon_versioning=yes ;;
5079 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5080 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5081 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5082 *\ 2.11.*) ;; # other 2.11 versions
5083 *) supports_anon_versioning=yes ;;
5086 # See if GNU ld supports shared libraries.
5089 # On AIX/PPC, the GNU linker is very broken
5090 if test ia64 != "$host_cpu"; then
5091 _LT_TAGVAR(ld_shlibs, $1)=no
5094 *** Warning: the GNU linker, at least up to release 2.19, is reported
5095 *** to be unable to reliably create shared libraries on AIX.
5096 *** Therefore, libtool is disabling shared libraries support. If you
5097 *** really care for shared libraries, you may want to install binutils
5098 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5099 *** You will then need to restart the configuration process.
5108 # see comment about AmigaOS4 .so support
5109 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5110 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5113 _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)'
5114 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5115 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5121 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5122 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5123 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5124 # support --undefined. This deserves some investigation. FIXME
5125 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5127 _LT_TAGVAR(ld_shlibs, $1)=no
5131 cygwin* | mingw* | pw32* | cegcc*)
5132 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5133 # as there is no search path for DLLs.
5134 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5135 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
5136 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5137 _LT_TAGVAR(always_export_symbols, $1)=no
5138 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5139 _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'
5140 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5142 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5143 _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'
5144 # If the export-symbols file already is a .def file, use it as
5145 # is; otherwise, prepend EXPORTS...
5146 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5147 cp $export_symbols $output_objdir/$soname.def;
5149 echo EXPORTS > $output_objdir/$soname.def;
5150 cat $export_symbols >> $output_objdir/$soname.def;
5152 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5154 _LT_TAGVAR(ld_shlibs, $1)=no
5159 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5160 _LT_TAGVAR(link_all_deplibs, $1)=yes
5164 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5165 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5166 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5168 _LT_TAGVAR(archive_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~
5172 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5173 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5174 emximp -o $lib $output_objdir/$libname.def'
5175 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5176 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5177 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5178 $ECHO EXPORTS >> $output_objdir/$libname.def~
5180 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5181 prefix_cmds="$prefix_cmds -e 1d";
5183 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5184 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5185 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5186 emximp -o $lib $output_objdir/$libname.def'
5187 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5188 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5192 _LT_TAGVAR(hardcode_direct, $1)=no
5193 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5194 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5195 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5196 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5197 # Instead, shared libraries are loaded at an image base (0x10000000 by
5198 # default) and relocated if they conflict, which is a slow very memory
5199 # consuming and fragmenting process. To avoid this, we pick a random,
5200 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5201 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
5202 _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'
5203 _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'
5206 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5208 if test linux-dietlibc = "$host_os"; then
5209 case $cc_basename in
5210 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
5213 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
5214 && test no = "$tmp_diet"
5216 tmp_addflag=' $pic_flag'
5217 tmp_sharedflag='-shared'
5218 case $cc_basename,$host_cpu in
5219 pgcc*) # Portland Group C compiler
5220 _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'
5221 tmp_addflag=' $pic_flag'
5223 pgf77* | pgf90* | pgf95* | pgfortran*)
5224 # Portland Group f77 and f90 compilers
5225 _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'
5226 tmp_addflag=' $pic_flag -Mnomain' ;;
5227 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
5228 tmp_addflag=' -i_dynamic' ;;
5229 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
5230 tmp_addflag=' -i_dynamic -nofor_main' ;;
5231 ifc* | ifort*) # Intel Fortran compiler
5232 tmp_addflag=' -nofor_main' ;;
5233 lf95*) # Lahey Fortran 8.1
5234 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5235 tmp_sharedflag='--shared' ;;
5236 nagfor*) # NAGFOR 5.3
5237 tmp_sharedflag='-Wl,-shared' ;;
5238 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5239 tmp_sharedflag='-qmkshrobj'
5241 nvcc*) # Cuda Compiler Driver 2.2
5242 _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'
5243 _LT_TAGVAR(compiler_needs_object, $1)=yes
5246 case `$CC -V 2>&1 | sed 5q` in
5247 *Sun\ C*) # Sun C 5.9
5248 _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'
5249 _LT_TAGVAR(compiler_needs_object, $1)=yes
5250 tmp_sharedflag='-G' ;;
5251 *Sun\ F*) # Sun Fortran 8.3
5252 tmp_sharedflag='-G' ;;
5254 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5256 if test yes = "$supports_anon_versioning"; then
5257 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5258 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5259 echo "local: *; };" >> $output_objdir/$libname.ver~
5260 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
5263 case $cc_basename in
5265 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5267 xlf* | bgf* | bgxlf* | mpixlf*)
5268 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5269 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
5270 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5271 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5272 if test yes = "$supports_anon_versioning"; then
5273 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5274 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5275 echo "local: *; };" >> $output_objdir/$libname.ver~
5276 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5281 _LT_TAGVAR(ld_shlibs, $1)=no
5285 netbsd* | netbsdelf*-gnu)
5286 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5287 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5290 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5291 _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'
5296 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5297 _LT_TAGVAR(ld_shlibs, $1)=no
5300 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
5301 *** create shared libraries on Solaris systems. Therefore, libtool
5302 *** is disabling shared libraries support. We urge you to upgrade GNU
5303 *** binutils to release 2.9.1 or newer. Another option is to modify
5304 *** your PATH or compiler configuration so that the native linker is
5305 *** used, and then restart.
5308 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5309 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5310 _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'
5312 _LT_TAGVAR(ld_shlibs, $1)=no
5316 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5317 case `$LD -v 2>&1` in
5318 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5319 _LT_TAGVAR(ld_shlibs, $1)=no
5322 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
5323 *** reliably create shared libraries on SCO systems. Therefore, libtool
5324 *** is disabling shared libraries support. We urge you to upgrade GNU
5325 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
5326 *** your PATH or compiler configuration so that the native linker is
5327 *** used, and then restart.
5332 # For security reasons, it is highly recommended that you always
5333 # use absolute paths for naming shared libraries, and exclude the
5334 # DT_RUNPATH tag from executables and libraries. But doing so
5335 # requires that you compile everything twice, which is a pain.
5336 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5337 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5338 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5339 _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'
5341 _LT_TAGVAR(ld_shlibs, $1)=no
5348 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5350 _LT_TAGVAR(hardcode_direct, $1)=yes
5351 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5355 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5356 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5357 _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'
5359 _LT_TAGVAR(ld_shlibs, $1)=no
5364 if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
5366 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5367 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5368 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5371 # PORTME fill in a description of your system's linker (not GNU ld)
5374 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5375 _LT_TAGVAR(always_export_symbols, $1)=yes
5376 _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'
5377 # Note: this linker hardcodes the directories in LIBPATH if there
5378 # are no directories specified by -L.
5379 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5380 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
5381 # Neither direct hardcoding nor static linking is supported with a
5383 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5388 if test ia64 = "$host_cpu"; then
5389 # On IA64, the linker does run time linking by default, so we don't
5390 # have to do anything special.
5391 aix_use_runtimelinking=no
5392 exp_sym_flag='-Bexport'
5395 # If we're using GNU nm, then we don't want the "-C" option.
5396 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
5397 # Without the "-l" option, or with the "-B" option, AIX nm treats
5398 # weak defined symbols like other global defined symbols, whereas
5399 # GNU nm marks them as "W".
5400 # While the 'weak' keyword is ignored in the Export File, we need
5401 # it in the Import File for the 'aix-soname' feature, so we have
5402 # to replace the "-B" option with "-P" for AIX nm.
5403 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5404 _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'
5406 _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'
5408 aix_use_runtimelinking=no
5410 # Test if we are trying to use run time linking or normal
5411 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5412 # have runtime linking enabled, and use it for executables.
5413 # For shared libraries, we enable/disable runtime linking
5414 # depending on the kind of the shared library created -
5415 # when "with_aix_soname,aix_use_runtimelinking" is:
5416 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
5417 # "aix,yes" lib.so shared, rtl:yes, for executables
5418 # lib.a static archive
5419 # "both,no" lib.so.V(shr.o) shared, rtl:yes
5420 # lib.a(lib.so.V) shared, rtl:no, for executables
5421 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
5422 # lib.a(lib.so.V) shared, rtl:no
5423 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
5424 # lib.a static archive
5425 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5426 for ld_flag in $LDFLAGS; do
5427 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
5428 aix_use_runtimelinking=yes
5432 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
5433 # With aix-soname=svr4, we create the lib.so.V shared archives only,
5434 # so we don't have lib.a shared libs to link our executables.
5435 # We have to force runtime linking in this case.
5436 aix_use_runtimelinking=yes
5437 LDFLAGS="$LDFLAGS -Wl,-brtl"
5442 exp_sym_flag='-bexport'
5443 no_entry_flag='-bnoentry'
5446 # When large executables or shared objects are built, AIX ld can
5447 # have problems creating the table of contents. If linking a library
5448 # or program results in "error TOC overflow" add -mminimal-toc to
5449 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5450 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5452 _LT_TAGVAR(archive_cmds, $1)=''
5453 _LT_TAGVAR(hardcode_direct, $1)=yes
5454 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5455 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5456 _LT_TAGVAR(link_all_deplibs, $1)=yes
5457 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
5458 case $with_aix_soname,$aix_use_runtimelinking in
5459 aix,*) ;; # traditional, no import file
5460 svr4,* | *,yes) # use import file
5461 # The Import File defines what to hardcode.
5462 _LT_TAGVAR(hardcode_direct, $1)=no
5463 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
5467 if test yes = "$GCC"; then
5468 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5469 # We only want to do this on AIX 4.2 and lower, the check
5470 # below for broken collect2 doesn't work under 4.3+
5471 collect2name=`$CC -print-prog-name=collect2`
5472 if test -f "$collect2name" &&
5473 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5475 # We have reworked collect2
5478 # We have old collect2
5479 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5480 # It fails to find uninstalled libraries when the uninstalled
5481 # path is not listed in the libpath. Setting hardcode_minus_L
5482 # to unsupported forces relinking
5483 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5484 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5485 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5489 shared_flag='-shared'
5490 if test yes = "$aix_use_runtimelinking"; then
5491 shared_flag="$shared_flag "'$wl-G'
5493 # Need to ensure runtime linking is disabled for the traditional
5494 # shared library, or the linker may eventually find shared libraries
5495 # /with/ Import File - we do not want to mix them.
5496 shared_flag_aix='-shared'
5497 shared_flag_svr4='-shared $wl-G'
5500 if test ia64 = "$host_cpu"; then
5501 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5502 # chokes on -Wl,-G. The following line is correct:
5505 if test yes = "$aix_use_runtimelinking"; then
5508 shared_flag='$wl-bM:SRE'
5510 shared_flag_aix='$wl-bM:SRE'
5511 shared_flag_svr4='$wl-G'
5515 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5516 # It seems that -bexpall does not export symbols beginning with
5517 # underscore (_), so it is better to generate a list of symbols to export.
5518 _LT_TAGVAR(always_export_symbols, $1)=yes
5519 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5520 # Warning - without using the other runtime loading flags (-brtl),
5521 # -berok will link without error, but may produce a broken library.
5522 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5523 # Determine the default libpath from the value encoded in an
5525 _LT_SYS_MODULE_PATH_AIX([$1])
5526 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5527 _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
5529 if test ia64 = "$host_cpu"; then
5530 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5531 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5532 _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"
5534 # Determine the default libpath from the value encoded in an
5536 _LT_SYS_MODULE_PATH_AIX([$1])
5537 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5538 # Warning - without using the other run time loading flags,
5539 # -berok will link without error, but may produce a broken library.
5540 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
5541 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
5542 if test yes = "$with_gnu_ld"; then
5543 # We only use this code for GNU lds that support --whole-archive.
5544 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
5546 # Exported symbols can be pulled into shared objects from archives
5547 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5549 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5550 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
5551 # -brtl affects multiple linker settings, -berok does not and is overridden later
5552 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
5553 if test svr4 != "$with_aix_soname"; then
5554 # This is similar to how AIX traditionally builds its shared libraries.
5555 _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'
5557 if test aix != "$with_aix_soname"; then
5558 _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'
5560 # used by -dlpreopen to get the symbols
5561 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
5563 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
5571 # see comment about AmigaOS4 .so support
5572 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5573 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5576 _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)'
5577 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5578 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5584 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5587 cygwin* | mingw* | pw32* | cegcc*)
5588 # When not using gcc, we currently assume that we are using
5589 # Microsoft Visual C++.
5590 # hardcode_libdir_flag_spec is actually meaningless, as there is
5591 # no search path for DLLs.
5592 case $cc_basename in
5595 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5596 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5597 _LT_TAGVAR(always_export_symbols, $1)=yes
5598 _LT_TAGVAR(file_list_spec, $1)='@'
5599 # Tell ltmain to make .lib files, not .a files.
5601 # Tell ltmain to make .dll files, not .so files.
5603 # FIXME: Setting linknames here is a bad hack.
5604 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
5605 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5606 cp "$export_symbols" "$output_objdir/$soname.def";
5607 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
5609 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
5611 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5613 # The linker will not automatically build a static lib if we build a DLL.
5614 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5615 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5616 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5617 _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'
5619 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5620 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5621 lt_tool_outputfile="@TOOL_OUTPUT@"~
5622 case $lt_outputfile in
5625 lt_outputfile=$lt_outputfile.exe
5626 lt_tool_outputfile=$lt_tool_outputfile.exe
5629 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
5630 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5631 $RM "$lt_outputfile.manifest";
5635 # Assume MSVC wrapper
5636 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5637 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5638 # Tell ltmain to make .lib files, not .a files.
5640 # Tell ltmain to make .dll files, not .so files.
5642 # FIXME: Setting linknames here is a bad hack.
5643 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5644 # The linker will automatically build a .lib file if we build a DLL.
5645 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5646 # FIXME: Should let the user specify the lib program.
5647 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5648 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5653 darwin* | rhapsody*)
5654 _LT_DARWIN_LINKER_FEATURES($1)
5658 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5659 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5660 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5663 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5664 # support. Future versions do this automatically, but an explicit c++rt0.o
5665 # does not break anything, and helps significantly (at the cost of a little
5668 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5669 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5670 _LT_TAGVAR(hardcode_direct, $1)=yes
5671 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5674 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5676 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5677 _LT_TAGVAR(hardcode_direct, $1)=yes
5678 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5679 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5682 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5683 freebsd* | dragonfly*)
5684 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5685 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5686 _LT_TAGVAR(hardcode_direct, $1)=yes
5687 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5691 if test yes = "$GCC"; then
5692 _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'
5694 _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'
5696 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5697 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5698 _LT_TAGVAR(hardcode_direct, $1)=yes
5700 # hardcode_minus_L: Not really in the search PATH,
5701 # but as the default location of the library.
5702 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5703 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5707 if test yes,no = "$GCC,$with_gnu_ld"; then
5708 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5710 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5712 if test no = "$with_gnu_ld"; then
5713 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5714 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5715 _LT_TAGVAR(hardcode_direct, $1)=yes
5716 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5717 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5718 # hardcode_minus_L: Not really in the search PATH,
5719 # but as the default location of the library.
5720 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5725 if test yes,no = "$GCC,$with_gnu_ld"; then
5728 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5731 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5734 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5740 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5743 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5747 # Older versions of the 11.00 compiler do not understand -b yet
5748 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5749 _LT_LINKER_OPTION([if $CC understands -b],
5750 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5751 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5752 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5753 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5757 if test no = "$with_gnu_ld"; then
5758 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5759 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5763 _LT_TAGVAR(hardcode_direct, $1)=no
5764 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5767 _LT_TAGVAR(hardcode_direct, $1)=yes
5768 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5769 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5771 # hardcode_minus_L: Not really in the search PATH,
5772 # but as the default location of the library.
5773 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5779 irix5* | irix6* | nonstopux*)
5780 if test yes = "$GCC"; then
5781 _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'
5782 # Try to use the -exported_symbol ld option, if it does not
5783 # work, assume that -exports_file does not work either and
5784 # implicitly export all symbols.
5785 # This should be the same for all languages, so no per-tag cache variable.
5786 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5787 [lt_cv_irix_exported_symbol],
5788 [save_LDFLAGS=$LDFLAGS
5789 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
5792 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5793 [C++], [[int foo (void) { return 0; }]],
5800 [lt_cv_irix_exported_symbol=yes],
5801 [lt_cv_irix_exported_symbol=no])
5802 LDFLAGS=$save_LDFLAGS])
5803 if test yes = "$lt_cv_irix_exported_symbol"; then
5804 _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'
5806 _LT_TAGVAR(link_all_deplibs, $1)=no
5808 _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'
5809 _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'
5811 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5812 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5813 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5814 _LT_TAGVAR(inherit_rpath, $1)=yes
5815 _LT_TAGVAR(link_all_deplibs, $1)=yes
5819 case $cc_basename in
5821 # Fabrice Bellard et al's Tiny C Compiler
5822 _LT_TAGVAR(ld_shlibs, $1)=yes
5823 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5828 netbsd* | netbsdelf*-gnu)
5829 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5830 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5832 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5834 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5835 _LT_TAGVAR(hardcode_direct, $1)=yes
5836 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5840 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5841 _LT_TAGVAR(hardcode_direct, $1)=yes
5842 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5843 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5844 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5851 if test -f /usr/libexec/ld.so; then
5852 _LT_TAGVAR(hardcode_direct, $1)=yes
5853 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5854 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5855 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5856 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5857 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
5858 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5859 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5861 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5862 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5865 _LT_TAGVAR(ld_shlibs, $1)=no
5870 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5871 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5872 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5874 _LT_TAGVAR(archive_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~
5878 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5879 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5880 emximp -o $lib $output_objdir/$libname.def'
5881 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5882 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5883 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5884 $ECHO EXPORTS >> $output_objdir/$libname.def~
5886 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5887 prefix_cmds="$prefix_cmds -e 1d";
5889 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5890 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5891 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5892 emximp -o $lib $output_objdir/$libname.def'
5893 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5894 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5898 if test yes = "$GCC"; then
5899 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5900 _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'
5902 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5903 _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'
5905 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5906 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5907 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5910 osf4* | osf5*) # as osf3* with the addition of -msym flag
5911 if test yes = "$GCC"; then
5912 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5913 _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'
5914 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5916 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5917 _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'
5918 _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~
5919 $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'
5921 # Both c and cxx compiler support -rpath directly
5922 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5924 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5925 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5929 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5930 if test yes = "$GCC"; then
5932 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_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 $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'
5936 case `$CC -V 2>&1` in
5939 _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
5940 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5941 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5945 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5946 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5947 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5951 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5952 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5954 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5956 # The compiler driver will combine and reorder linker options,
5957 # but understands '-z linker_flag'. GCC discards it without '$wl',
5958 # but is careful enough not to reorder.
5959 # Supported since Solaris 2.6 (maybe 2.5.1?)
5960 if test yes = "$GCC"; then
5961 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5963 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5967 _LT_TAGVAR(link_all_deplibs, $1)=yes
5971 if test sequent = "$host_vendor"; then
5972 # Use $CC to link under sequent, because it throws in some extra .o
5973 # files that make .init and .fini sections work.
5974 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5976 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5978 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5979 _LT_TAGVAR(hardcode_direct, $1)=yes
5980 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5981 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5985 case $host_vendor in
5987 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5988 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5991 ## LD is ld it makes a PLAMLIB
5992 ## CC just makes a GrossModule.
5993 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5994 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5995 _LT_TAGVAR(hardcode_direct, $1)=no
5998 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5999 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
6002 runpath_var='LD_RUN_PATH'
6003 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
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 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6013 if test -d /usr/nec; then
6014 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6015 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6016 runpath_var=LD_RUN_PATH
6017 hardcode_runpath_var=yes
6018 _LT_TAGVAR(ld_shlibs, $1)=yes
6022 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6023 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6024 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6025 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6026 runpath_var='LD_RUN_PATH'
6028 if test yes = "$GCC"; then
6029 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6030 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6032 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6033 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6037 sysv5* | sco3.2v5* | sco5v6*)
6038 # Note: We CANNOT use -z defs as we might desire, because we do not
6039 # link with -lc, and that would cause any symbols used from libc to
6040 # always be unresolved, which means just about no library would
6041 # ever link correctly. If we're not using GNU ld we use -z text
6042 # though, which does catch some bad symbols but isn't as heavy-handed
6044 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6045 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
6046 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6047 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6048 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
6049 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6050 _LT_TAGVAR(link_all_deplibs, $1)=yes
6051 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
6052 runpath_var='LD_RUN_PATH'
6054 if test yes = "$GCC"; then
6055 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6056 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6058 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6059 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6064 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6065 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6066 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6070 _LT_TAGVAR(ld_shlibs, $1)=no
6074 if test sni = "$host_vendor"; then
6076 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6077 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
6083 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6084 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
6086 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
6088 _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6089 _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6090 _LT_DECL([], [extract_expsyms_cmds], [2],
6091 [The commands to extract the exported symbol list from a shared archive])
6094 # Do we need to explicitly link libc?
6096 case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6098 # Assume -lc should be added
6099 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6101 if test yes,yes = "$GCC,$enable_shared"; then
6102 case $_LT_TAGVAR(archive_cmds, $1) in
6104 # FIXME: we may have to deal with multi-command sequences.
6107 # Test whether the compiler implicitly links with -lc since on some
6108 # systems, -lgcc has to come before -lc. If gcc already passes -lc
6109 # to ld, don't add -lc before -lgcc.
6110 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6111 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6113 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6115 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6118 libobjs=conftest.$ac_objext
6120 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6121 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6127 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6128 _LT_TAGVAR(allow_undefined_flag, $1)=
6129 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6131 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6133 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6135 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6137 cat conftest.err 1>&5
6141 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
6148 _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6149 [Whether or not to add -lc for building shared libraries])
6150 _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6151 [enable_shared_with_static_runtimes], [0],
6152 [Whether or not to disallow shared libs when runtime libs are static])
6153 _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6154 [Compiler flag to allow reflexive dlopens])
6155 _LT_TAGDECL([], [whole_archive_flag_spec], [1],
6156 [Compiler flag to generate shared objects directly from archives])
6157 _LT_TAGDECL([], [compiler_needs_object], [1],
6158 [Whether the compiler copes with passing no objects directly])
6159 _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6160 [Create an old-style archive from a shared archive])
6161 _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6162 [Create a temporary old-style archive to link instead of a shared archive])
6163 _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6164 _LT_TAGDECL([], [archive_expsym_cmds], [2])
6165 _LT_TAGDECL([], [module_cmds], [2],
6166 [Commands used to build a loadable module if different from building
6168 _LT_TAGDECL([], [module_expsym_cmds], [2])
6169 _LT_TAGDECL([], [with_gnu_ld], [1],
6170 [Whether we are building with GNU ld or not])
6171 _LT_TAGDECL([], [allow_undefined_flag], [1],
6172 [Flag that allows shared libraries with undefined symbols to be built])
6173 _LT_TAGDECL([], [no_undefined_flag], [1],
6174 [Flag that enforces no undefined symbols])
6175 _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6176 [Flag to hardcode $libdir into a binary during linking.
6177 This must work even if $libdir does not exist])
6178 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
6179 [Whether we need a single "-rpath" flag with a separated argument])
6180 _LT_TAGDECL([], [hardcode_direct], [0],
6181 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6182 DIR into the resulting binary])
6183 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
6184 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6185 DIR into the resulting binary and the resulting library dependency is
6186 "absolute", i.e impossible to change by setting $shlibpath_var if the
6187 library is relocated])
6188 _LT_TAGDECL([], [hardcode_minus_L], [0],
6189 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6190 into the resulting binary])
6191 _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6192 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6193 into the resulting binary])
6194 _LT_TAGDECL([], [hardcode_automatic], [0],
6195 [Set to "yes" if building a shared library automatically hardcodes DIR
6196 into the library and all subsequent libraries and executables linked
6198 _LT_TAGDECL([], [inherit_rpath], [0],
6199 [Set to yes if linker adds runtime paths of dependent libraries
6200 to runtime path list])
6201 _LT_TAGDECL([], [link_all_deplibs], [0],
6202 [Whether libtool must link a program against all its dependency libraries])
6203 _LT_TAGDECL([], [always_export_symbols], [0],
6204 [Set to "yes" if exported symbols are required])
6205 _LT_TAGDECL([], [export_symbols_cmds], [2],
6206 [The commands to list exported symbols])
6207 _LT_TAGDECL([], [exclude_expsyms], [1],
6208 [Symbols that should not be listed in the preloaded symbols])
6209 _LT_TAGDECL([], [include_expsyms], [1],
6210 [Symbols that must always be exported])
6211 _LT_TAGDECL([], [prelink_cmds], [2],
6212 [Commands necessary for linking programs (against libraries) with templates])
6213 _LT_TAGDECL([], [postlink_cmds], [2],
6214 [Commands necessary for finishing linking programs])
6215 _LT_TAGDECL([], [file_list_spec], [1],
6216 [Specify filename containing input files])
6217 dnl FIXME: Not yet implemented
6218 dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6219 dnl [Compiler flag to generate thread safe objects])
6220 ])# _LT_LINKER_SHLIBS
6223 # _LT_LANG_C_CONFIG([TAG])
6224 # ------------------------
6225 # Ensure that the configuration variables for a C compiler are suitably
6226 # defined. These variables are subsequently used by _LT_CONFIG to write
6227 # the compiler configuration to 'libtool'.
6228 m4_defun([_LT_LANG_C_CONFIG],
6229 [m4_require([_LT_DECL_EGREP])dnl
6233 # Source file extension for C test sources.
6236 # Object file extension for compiled C test sources.
6238 _LT_TAGVAR(objext, $1)=$objext
6240 # Code to be used in simple compile tests
6241 lt_simple_compile_test_code="int some_variable = 0;"
6243 # Code to be used in simple link tests
6244 lt_simple_link_test_code='int main(){return(0);}'
6247 # Save the default compiler, since it gets overwritten when the other
6248 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6249 compiler_DEFAULT=$CC
6251 # save warnings/boilerplate of simple test code
6252 _LT_COMPILER_BOILERPLATE
6253 _LT_LINKER_BOILERPLATE
6255 if test -n "$compiler"; then
6256 _LT_COMPILER_NO_RTTI($1)
6257 _LT_COMPILER_PIC($1)
6258 _LT_COMPILER_C_O($1)
6259 _LT_COMPILER_FILE_LOCKS($1)
6260 _LT_LINKER_SHLIBS($1)
6261 _LT_SYS_DYNAMIC_LINKER($1)
6262 _LT_LINKER_HARDCODE_LIBPATH($1)
6266 # Report what library types will actually be built
6267 AC_MSG_CHECKING([if libtool supports shared libraries])
6268 AC_MSG_RESULT([$can_build_shared])
6270 AC_MSG_CHECKING([whether to build shared libraries])
6271 test no = "$can_build_shared" && enable_shared=no
6273 # On AIX, shared libraries and static libraries use the same namespace, and
6274 # are all built from PIC.
6277 test yes = "$enable_shared" && enable_static=no
6278 if test -n "$RANLIB"; then
6279 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6280 postinstall_cmds='$RANLIB $lib'
6285 if test ia64 != "$host_cpu"; then
6286 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
6287 yes,aix,yes) ;; # shared object as lib.so file only
6288 yes,svr4,*) ;; # shared object as lib.so archive member only
6289 yes,*) enable_static=no ;; # shared object in lib.a archive as well
6294 AC_MSG_RESULT([$enable_shared])
6296 AC_MSG_CHECKING([whether to build static libraries])
6297 # Make sure either enable_shared or enable_static is yes.
6298 test yes = "$enable_shared" || enable_static=yes
6299 AC_MSG_RESULT([$enable_static])
6305 ])# _LT_LANG_C_CONFIG
6308 # _LT_LANG_CXX_CONFIG([TAG])
6309 # --------------------------
6310 # Ensure that the configuration variables for a C++ compiler are suitably
6311 # defined. These variables are subsequently used by _LT_CONFIG to write
6312 # the compiler configuration to 'libtool'.
6313 m4_defun([_LT_LANG_CXX_CONFIG],
6314 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6315 m4_require([_LT_DECL_EGREP])dnl
6316 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6317 if test -n "$CXX" && ( test no != "$CXX" &&
6318 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6319 (test g++ != "$CXX"))); then
6322 _lt_caught_CXX_error=yes
6326 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6327 _LT_TAGVAR(allow_undefined_flag, $1)=
6328 _LT_TAGVAR(always_export_symbols, $1)=no
6329 _LT_TAGVAR(archive_expsym_cmds, $1)=
6330 _LT_TAGVAR(compiler_needs_object, $1)=no
6331 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
6332 _LT_TAGVAR(hardcode_direct, $1)=no
6333 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6334 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6335 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6336 _LT_TAGVAR(hardcode_minus_L, $1)=no
6337 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6338 _LT_TAGVAR(hardcode_automatic, $1)=no
6339 _LT_TAGVAR(inherit_rpath, $1)=no
6340 _LT_TAGVAR(module_cmds, $1)=
6341 _LT_TAGVAR(module_expsym_cmds, $1)=
6342 _LT_TAGVAR(link_all_deplibs, $1)=unknown
6343 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6344 _LT_TAGVAR(reload_flag, $1)=$reload_flag
6345 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6346 _LT_TAGVAR(no_undefined_flag, $1)=
6347 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6348 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6350 # Source file extension for C++ test sources.
6353 # Object file extension for compiled C++ test sources.
6355 _LT_TAGVAR(objext, $1)=$objext
6357 # No sense in running all these tests if we already determined that
6358 # the CXX compiler isn't working. Some variables (like enable_shared)
6359 # are currently assumed to apply to all compilers on this platform,
6360 # and will be corrupted by setting them based on a non-working compiler.
6361 if test yes != "$_lt_caught_CXX_error"; then
6362 # Code to be used in simple compile tests
6363 lt_simple_compile_test_code="int some_variable = 0;"
6365 # Code to be used in simple link tests
6366 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6368 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6371 # save warnings/boilerplate of simple test code
6372 _LT_COMPILER_BOILERPLATE
6373 _LT_LINKER_BOILERPLATE
6375 # Allow CC to be a program name with arguments.
6377 lt_save_CFLAGS=$CFLAGS
6381 lt_save_with_gnu_ld=$with_gnu_ld
6382 lt_save_path_LD=$lt_cv_path_LD
6383 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6384 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6386 $as_unset lt_cv_prog_gnu_ld
6388 if test -n "${lt_cv_path_LDCXX+set}"; then
6389 lt_cv_path_LD=$lt_cv_path_LDCXX
6391 $as_unset lt_cv_path_LD
6393 test -z "${LDCXX+set}" || LD=$LDCXX
6397 _LT_TAGVAR(compiler, $1)=$CC
6398 _LT_CC_BASENAME([$compiler])
6400 if test -n "$compiler"; then
6401 # We don't want -fno-exception when compiling C++ code, so set the
6402 # no_builtin_flag separately
6403 if test yes = "$GXX"; then
6404 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6406 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6409 if test yes = "$GXX"; then
6410 # Set up default GNU C++ configuration
6414 # Check if GNU C++ uses GNU ld as the underlying linker, since the
6415 # archiving commands below assume that GNU ld is being used.
6416 if test yes = "$with_gnu_ld"; then
6417 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6418 _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'
6420 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6421 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6423 # If archive_cmds runs LD, not CC, wlarc should be empty
6424 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6425 # investigate it a little bit more. (MM)
6428 # ancient GNU ld didn't support --whole-archive et. al.
6429 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6430 $GREP 'no-whole-archive' > /dev/null; then
6431 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
6433 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6439 # A generic and very simple default shared library creation
6440 # command for GNU C++ for the case where it uses the native
6441 # linker, instead of GNU ld. If possible, this setting should
6442 # overridden to take advantage of the native linker features on
6443 # the platform it is being used on.
6444 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6447 # Commands to make compiler produce verbose output that lists
6448 # what "hidden" libraries, object files and flags are used when
6449 # linking a shared library.
6450 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
6458 # PORTME: fill in a description of your system's C++ link characteristics
6459 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
6460 _LT_TAGVAR(ld_shlibs, $1)=yes
6463 # FIXME: insert proper C++ library support
6464 _LT_TAGVAR(ld_shlibs, $1)=no
6467 if test ia64 = "$host_cpu"; then
6468 # On IA64, the linker does run time linking by default, so we don't
6469 # have to do anything special.
6470 aix_use_runtimelinking=no
6471 exp_sym_flag='-Bexport'
6474 aix_use_runtimelinking=no
6476 # Test if we are trying to use run time linking or normal
6477 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6478 # have runtime linking enabled, and use it for executables.
6479 # For shared libraries, we enable/disable runtime linking
6480 # depending on the kind of the shared library created -
6481 # when "with_aix_soname,aix_use_runtimelinking" is:
6482 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
6483 # "aix,yes" lib.so shared, rtl:yes, for executables
6484 # lib.a static archive
6485 # "both,no" lib.so.V(shr.o) shared, rtl:yes
6486 # lib.a(lib.so.V) shared, rtl:no, for executables
6487 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
6488 # lib.a(lib.so.V) shared, rtl:no
6489 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
6490 # lib.a static archive
6491 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6492 for ld_flag in $LDFLAGS; do
6495 aix_use_runtimelinking=yes
6500 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
6501 # With aix-soname=svr4, we create the lib.so.V shared archives only,
6502 # so we don't have lib.a shared libs to link our executables.
6503 # We have to force runtime linking in this case.
6504 aix_use_runtimelinking=yes
6505 LDFLAGS="$LDFLAGS -Wl,-brtl"
6510 exp_sym_flag='-bexport'
6511 no_entry_flag='-bnoentry'
6514 # When large executables or shared objects are built, AIX ld can
6515 # have problems creating the table of contents. If linking a library
6516 # or program results in "error TOC overflow" add -mminimal-toc to
6517 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6518 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6520 _LT_TAGVAR(archive_cmds, $1)=''
6521 _LT_TAGVAR(hardcode_direct, $1)=yes
6522 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6523 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6524 _LT_TAGVAR(link_all_deplibs, $1)=yes
6525 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
6526 case $with_aix_soname,$aix_use_runtimelinking in
6527 aix,*) ;; # no import file
6528 svr4,* | *,yes) # use import file
6529 # The Import File defines what to hardcode.
6530 _LT_TAGVAR(hardcode_direct, $1)=no
6531 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6535 if test yes = "$GXX"; then
6536 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6537 # We only want to do this on AIX 4.2 and lower, the check
6538 # below for broken collect2 doesn't work under 4.3+
6539 collect2name=`$CC -print-prog-name=collect2`
6540 if test -f "$collect2name" &&
6541 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6543 # We have reworked collect2
6546 # We have old collect2
6547 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6548 # It fails to find uninstalled libraries when the uninstalled
6549 # path is not listed in the libpath. Setting hardcode_minus_L
6550 # to unsupported forces relinking
6551 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6552 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6553 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6556 shared_flag='-shared'
6557 if test yes = "$aix_use_runtimelinking"; then
6558 shared_flag=$shared_flag' $wl-G'
6560 # Need to ensure runtime linking is disabled for the traditional
6561 # shared library, or the linker may eventually find shared libraries
6562 # /with/ Import File - we do not want to mix them.
6563 shared_flag_aix='-shared'
6564 shared_flag_svr4='-shared $wl-G'
6567 if test ia64 = "$host_cpu"; then
6568 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6569 # chokes on -Wl,-G. The following line is correct:
6572 if test yes = "$aix_use_runtimelinking"; then
6575 shared_flag='$wl-bM:SRE'
6577 shared_flag_aix='$wl-bM:SRE'
6578 shared_flag_svr4='$wl-G'
6582 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
6583 # It seems that -bexpall does not export symbols beginning with
6584 # underscore (_), so it is better to generate a list of symbols to
6586 _LT_TAGVAR(always_export_symbols, $1)=yes
6587 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
6588 # Warning - without using the other runtime loading flags (-brtl),
6589 # -berok will link without error, but may produce a broken library.
6590 # The "-G" linker flag allows undefined symbols.
6591 _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
6592 # Determine the default libpath from the value encoded in an empty
6594 _LT_SYS_MODULE_PATH_AIX([$1])
6595 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6597 _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
6599 if test ia64 = "$host_cpu"; then
6600 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
6601 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6602 _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"
6604 # Determine the default libpath from the value encoded in an
6606 _LT_SYS_MODULE_PATH_AIX([$1])
6607 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6608 # Warning - without using the other run time loading flags,
6609 # -berok will link without error, but may produce a broken library.
6610 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
6611 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
6612 if test yes = "$with_gnu_ld"; then
6613 # We only use this code for GNU lds that support --whole-archive.
6614 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
6616 # Exported symbols can be pulled into shared objects from archives
6617 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6619 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6620 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
6621 # -brtl affects multiple linker settings, -berok does not and is overridden later
6622 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
6623 if test svr4 != "$with_aix_soname"; then
6624 # This is similar to how AIX traditionally builds its shared
6625 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
6626 _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'
6628 if test aix != "$with_aix_soname"; then
6629 _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'
6631 # used by -dlpreopen to get the symbols
6632 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
6634 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
6640 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6641 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6642 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6643 # support --undefined. This deserves some investigation. FIXME
6644 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6646 _LT_TAGVAR(ld_shlibs, $1)=no
6651 case $cc_basename in
6653 # FIXME: insert proper C++ library support
6654 _LT_TAGVAR(ld_shlibs, $1)=no
6659 cygwin* | mingw* | pw32* | cegcc*)
6660 case $GXX,$cc_basename in
6663 # hardcode_libdir_flag_spec is actually meaningless, as there is
6664 # no search path for DLLs.
6665 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6666 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6667 _LT_TAGVAR(always_export_symbols, $1)=yes
6668 _LT_TAGVAR(file_list_spec, $1)='@'
6669 # Tell ltmain to make .lib files, not .a files.
6671 # Tell ltmain to make .dll files, not .so files.
6673 # FIXME: Setting linknames here is a bad hack.
6674 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
6675 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6676 cp "$export_symbols" "$output_objdir/$soname.def";
6677 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
6679 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
6681 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6683 # The linker will not automatically build a static lib if we build a DLL.
6684 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6685 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6687 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6688 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6689 lt_tool_outputfile="@TOOL_OUTPUT@"~
6690 case $lt_outputfile in
6693 lt_outputfile=$lt_outputfile.exe
6694 lt_tool_outputfile=$lt_tool_outputfile.exe
6697 func_to_tool_file "$lt_outputfile"~
6698 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
6699 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6700 $RM "$lt_outputfile.manifest";
6705 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6706 # as there is no search path for DLLs.
6707 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6708 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
6709 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6710 _LT_TAGVAR(always_export_symbols, $1)=no
6711 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6713 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6714 _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'
6715 # If the export-symbols file already is a .def file, use it as
6716 # is; otherwise, prepend EXPORTS...
6717 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6718 cp $export_symbols $output_objdir/$soname.def;
6720 echo EXPORTS > $output_objdir/$soname.def;
6721 cat $export_symbols >> $output_objdir/$soname.def;
6723 $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'
6725 _LT_TAGVAR(ld_shlibs, $1)=no
6730 darwin* | rhapsody*)
6731 _LT_DARWIN_LINKER_FEATURES($1)
6735 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6736 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6737 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6739 _LT_TAGVAR(archive_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~
6743 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
6744 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6745 emximp -o $lib $output_objdir/$libname.def'
6746 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6747 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6748 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6749 $ECHO EXPORTS >> $output_objdir/$libname.def~
6751 if test EXPORTS = "`$SED 1q $export_symbols`"; then
6752 prefix_cmds="$prefix_cmds -e 1d";
6754 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
6755 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
6756 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6757 emximp -o $lib $output_objdir/$libname.def'
6758 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
6759 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6763 case $cc_basename in
6765 # FIXME: insert proper C++ library support
6766 _LT_TAGVAR(ld_shlibs, $1)=no
6769 # Green Hills C++ Compiler
6770 # FIXME: insert proper C++ library support
6771 _LT_TAGVAR(ld_shlibs, $1)=no
6774 # FIXME: insert proper C++ library support
6775 _LT_TAGVAR(ld_shlibs, $1)=no
6781 # C++ shared libraries reported to be fairly broken before
6783 _LT_TAGVAR(ld_shlibs, $1)=no
6787 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6790 freebsd* | dragonfly*)
6791 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6793 _LT_TAGVAR(ld_shlibs, $1)=yes
6797 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6798 _LT_TAGVAR(link_all_deplibs, $1)=yes
6802 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6803 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6804 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6805 _LT_TAGVAR(hardcode_direct, $1)=yes
6806 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6807 # but as the default
6808 # location of the library.
6810 case $cc_basename in
6812 # FIXME: insert proper C++ library support
6813 _LT_TAGVAR(ld_shlibs, $1)=no
6816 _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'
6817 # Commands to make compiler produce verbose output that lists
6818 # what "hidden" libraries, object files and flags are used when
6819 # linking a shared library.
6821 # There doesn't appear to be a way to prevent this compiler from
6822 # explicitly linking system object files so we need to strip them
6823 # from the output so that they don't get included in the library
6825 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"'
6828 if test yes = "$GXX"; then
6829 _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'
6831 # FIXME: insert proper C++ library support
6832 _LT_TAGVAR(ld_shlibs, $1)=no
6839 if test no = "$with_gnu_ld"; then
6840 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6841 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6847 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6853 _LT_TAGVAR(hardcode_direct, $1)=no
6854 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6857 _LT_TAGVAR(hardcode_direct, $1)=yes
6858 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6859 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6860 # but as the default
6861 # location of the library.
6865 case $cc_basename in
6867 # FIXME: insert proper C++ library support
6868 _LT_TAGVAR(ld_shlibs, $1)=no
6873 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6876 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6879 _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'
6882 # Commands to make compiler produce verbose output that lists
6883 # what "hidden" libraries, object files and flags are used when
6884 # linking a shared library.
6886 # There doesn't appear to be a way to prevent this compiler from
6887 # explicitly linking system object files so we need to strip them
6888 # from the output so that they don't get included in the library
6890 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"'
6893 if test yes = "$GXX"; then
6894 if test no = "$with_gnu_ld"; then
6897 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6900 _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'
6903 _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'
6908 # FIXME: insert proper C++ library support
6909 _LT_TAGVAR(ld_shlibs, $1)=no
6916 _LT_TAGVAR(hardcode_direct, $1)=no
6917 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6918 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6919 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6920 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6921 # Instead, shared libraries are loaded at an image base (0x10000000 by
6922 # default) and relocated if they conflict, which is a slow very memory
6923 # consuming and fragmenting process. To avoid this, we pick a random,
6924 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6925 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6926 _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'
6927 _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'
6930 case $cc_basename in
6933 _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'
6935 # Archives containing C++ object files must be created using
6936 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6937 # necessary to make sure instantiated templates are included
6939 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6942 if test yes = "$GXX"; then
6943 if test no = "$with_gnu_ld"; then
6944 _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'
6946 _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'
6949 _LT_TAGVAR(link_all_deplibs, $1)=yes
6952 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6953 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6954 _LT_TAGVAR(inherit_rpath, $1)=yes
6957 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6958 case $cc_basename in
6960 # Kuck and Associates, Inc. (KAI) C++ Compiler
6962 # KCC will only create a shared library if the output file
6963 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6964 # to its proper name (with version) after linking.
6965 _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'
6966 _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'
6967 # Commands to make compiler produce verbose output that lists
6968 # what "hidden" libraries, object files and flags are used when
6969 # linking a shared library.
6971 # There doesn't appear to be a way to prevent this compiler from
6972 # explicitly linking system object files so we need to strip them
6973 # from the output so that they don't get included in the library
6975 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"'
6977 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6978 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6980 # Archives containing C++ object files must be created using
6981 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6982 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6987 # version 8.0 and above of icpc choke on multiply defined symbols
6988 # if we add $predep_objects and $postdep_objects, however 7.1 and
6989 # earlier do not add the objects themselves.
6990 case `$CC -V 2>&1` in
6992 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6993 _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'
6995 *) # Version 8.0 or newer
6998 ia64*) tmp_idyn=' -i_dynamic';;
7000 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7001 _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'
7004 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7005 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7006 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7007 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
7010 # Portland Group C++ compiler
7012 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7013 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
7015 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
7016 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7017 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
7019 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
7020 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7022 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
7024 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7025 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7026 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
7028 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7029 $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'
7031 *) # Version 6 and above use weak symbols
7032 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7033 _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'
7037 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
7038 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7039 _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'
7043 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7044 _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'
7046 runpath_var=LD_RUN_PATH
7047 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7048 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7050 # Commands to make compiler produce verbose output that lists
7051 # what "hidden" libraries, object files and flags are used when
7052 # linking a shared library.
7054 # There doesn't appear to be a way to prevent this compiler from
7055 # explicitly linking system object files so we need to strip them
7056 # from the output so that they don't get included in the library
7058 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'
7060 xl* | mpixl* | bgxl*)
7061 # IBM XL 8.0 on PPC, with GNU ld
7062 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7063 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7064 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7065 if test yes = "$supports_anon_versioning"; then
7066 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
7067 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7068 echo "local: *; };" >> $output_objdir/$libname.ver~
7069 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7073 case `$CC -V 2>&1 | sed 5q` in
7076 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7077 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7078 _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'
7079 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7080 _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'
7081 _LT_TAGVAR(compiler_needs_object, $1)=yes
7083 # Not sure whether something based on
7084 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7086 output_verbose_link_cmd='func_echo_all'
7088 # Archives containing C++ object files must be created using
7089 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7090 # necessary to make sure instantiated templates are included
7092 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7100 # FIXME: insert proper C++ library support
7101 _LT_TAGVAR(ld_shlibs, $1)=no
7105 # FIXME: insert proper C++ library support
7106 _LT_TAGVAR(ld_shlibs, $1)=no
7110 case $cc_basename in
7112 # FIXME: insert proper C++ library support
7113 _LT_TAGVAR(ld_shlibs, $1)=no
7116 # FIXME: insert proper C++ library support
7117 _LT_TAGVAR(ld_shlibs, $1)=no
7123 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7124 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7126 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7127 _LT_TAGVAR(hardcode_direct, $1)=yes
7128 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7130 # Workaround some broken pre-1.5 toolchains
7131 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7135 _LT_TAGVAR(ld_shlibs, $1)=yes
7139 if test -f /usr/libexec/ld.so; then
7140 _LT_TAGVAR(hardcode_direct, $1)=yes
7141 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7142 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7143 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7144 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7145 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
7146 _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'
7147 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7148 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7150 output_verbose_link_cmd=func_echo_all
7152 _LT_TAGVAR(ld_shlibs, $1)=no
7156 osf3* | osf4* | osf5*)
7157 case $cc_basename in
7159 # Kuck and Associates, Inc. (KAI) C++ Compiler
7161 # KCC will only create a shared library if the output file
7162 # ends with ".so" (or ".sl" for HP-UX), so rename the library
7163 # to its proper name (with version) after linking.
7164 _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'
7166 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7167 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7169 # Archives containing C++ object files must be created using
7170 # the KAI C++ compiler.
7172 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7173 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7177 # Rational C++ 2.4.1
7178 # FIXME: insert proper C++ library support
7179 _LT_TAGVAR(ld_shlibs, $1)=no
7184 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7185 _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'
7186 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7189 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
7190 _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'
7191 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
7192 echo "-hidden">> $lib.exp~
7193 $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~
7195 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7199 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7201 # Commands to make compiler produce verbose output that lists
7202 # what "hidden" libraries, object files and flags are used when
7203 # linking a shared library.
7205 # There doesn't appear to be a way to prevent this compiler from
7206 # explicitly linking system object files so we need to strip them
7207 # from the output so that they don't get included in the library
7209 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"'
7212 if test yes,no = "$GXX,$with_gnu_ld"; then
7213 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7216 _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'
7219 _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'
7223 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7224 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7226 # Commands to make compiler produce verbose output that lists
7227 # what "hidden" libraries, object files and flags are used when
7228 # linking a shared library.
7229 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
7232 # FIXME: insert proper C++ library support
7233 _LT_TAGVAR(ld_shlibs, $1)=no
7240 # FIXME: insert proper C++ library support
7241 _LT_TAGVAR(ld_shlibs, $1)=no
7245 case $cc_basename in
7248 # FIXME: insert proper C++ library support
7249 _LT_TAGVAR(ld_shlibs, $1)=no
7253 # FIXME: insert proper C++ library support
7254 _LT_TAGVAR(ld_shlibs, $1)=no
7257 # FIXME: insert proper C++ library support
7258 _LT_TAGVAR(ld_shlibs, $1)=no
7264 case $cc_basename in
7266 # Sun C++ 4.2, 5.x and Centerline C++
7267 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7268 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7269 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7270 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7271 $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'
7273 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7274 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7276 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7278 # The compiler driver will combine and reorder linker options,
7279 # but understands '-z linker_flag'.
7280 # Supported since Solaris 2.6 (maybe 2.5.1?)
7281 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7284 _LT_TAGVAR(link_all_deplibs, $1)=yes
7286 output_verbose_link_cmd='func_echo_all'
7288 # Archives containing C++ object files must be created using
7289 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7290 # necessary to make sure instantiated templates are included
7292 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7295 # Green Hills C++ Compiler
7296 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7298 # The C++ compiler must be used to create the archive.
7299 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
7302 # GNU C++ compiler with Solaris linker
7303 if test yes,no = "$GXX,$with_gnu_ld"; then
7304 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
7305 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
7306 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7307 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7308 $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'
7310 # Commands to make compiler produce verbose output that lists
7311 # what "hidden" libraries, object files and flags are used when
7312 # linking a shared library.
7313 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
7315 # g++ 2.7 appears to require '-G' NOT '-shared' on this
7317 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7318 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7319 $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'
7321 # Commands to make compiler produce verbose output that lists
7322 # what "hidden" libraries, object files and flags are used when
7323 # linking a shared library.
7324 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
7327 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
7329 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7331 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7339 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
7340 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7341 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7342 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7343 runpath_var='LD_RUN_PATH'
7345 case $cc_basename in
7347 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7348 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7351 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7352 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7357 sysv5* | sco3.2v5* | sco5v6*)
7358 # Note: We CANNOT use -z defs as we might desire, because we do not
7359 # link with -lc, and that would cause any symbols used from libc to
7360 # always be unresolved, which means just about no library would
7361 # ever link correctly. If we're not using GNU ld we use -z text
7362 # though, which does catch some bad symbols but isn't as heavy-handed
7364 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7365 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7366 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7367 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7368 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7369 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7370 _LT_TAGVAR(link_all_deplibs, $1)=yes
7371 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7372 runpath_var='LD_RUN_PATH'
7374 case $cc_basename in
7376 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7377 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7378 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
7379 '"$_LT_TAGVAR(old_archive_cmds, $1)"
7380 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
7381 '"$_LT_TAGVAR(reload_cmds, $1)"
7384 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7385 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7391 case $cc_basename in
7393 # NonStop-UX NCC 3.20
7394 # FIXME: insert proper C++ library support
7395 _LT_TAGVAR(ld_shlibs, $1)=no
7398 # FIXME: insert proper C++ library support
7399 _LT_TAGVAR(ld_shlibs, $1)=no
7405 # FIXME: insert proper C++ library support
7406 _LT_TAGVAR(ld_shlibs, $1)=no
7410 # FIXME: insert proper C++ library support
7411 _LT_TAGVAR(ld_shlibs, $1)=no
7415 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
7416 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
7418 _LT_TAGVAR(GCC, $1)=$GXX
7419 _LT_TAGVAR(LD, $1)=$LD
7422 ## There is no encapsulation within the following macros, do not change
7423 ## the running order or otherwise move them around unless you know exactly
7424 ## what you are doing...
7425 _LT_SYS_HIDDEN_LIBDEPS($1)
7426 _LT_COMPILER_PIC($1)
7427 _LT_COMPILER_C_O($1)
7428 _LT_COMPILER_FILE_LOCKS($1)
7429 _LT_LINKER_SHLIBS($1)
7430 _LT_SYS_DYNAMIC_LINKER($1)
7431 _LT_LINKER_HARDCODE_LIBPATH($1)
7434 fi # test -n "$compiler"
7437 CFLAGS=$lt_save_CFLAGS
7441 with_gnu_ld=$lt_save_with_gnu_ld
7442 lt_cv_path_LDCXX=$lt_cv_path_LD
7443 lt_cv_path_LD=$lt_save_path_LD
7444 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7445 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
7446 fi # test yes != "$_lt_caught_CXX_error"
7449 ])# _LT_LANG_CXX_CONFIG
7452 # _LT_FUNC_STRIPNAME_CNF
7453 # ----------------------
7454 # func_stripname_cnf prefix suffix name
7455 # strip PREFIX and SUFFIX off of NAME.
7456 # PREFIX and SUFFIX must not contain globbing or regex special
7457 # characters, hashes, percent signs, but SUFFIX may contain a leading
7458 # dot (in which case that matches only a dot).
7460 # This function is identical to the (non-XSI) version of func_stripname,
7461 # except this one can be used by m4 code that may be executed by configure,
7462 # rather than the libtool script.
7463 m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7464 AC_REQUIRE([_LT_DECL_SED])
7465 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7466 func_stripname_cnf ()
7469 .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
7470 *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
7472 } # func_stripname_cnf
7473 ])# _LT_FUNC_STRIPNAME_CNF
7476 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7477 # ---------------------------------
7478 # Figure out "hidden" library dependencies from verbose
7479 # compiler output when linking a shared library.
7480 # Parse the compiler output and extract the necessary
7481 # objects, libraries and library flags.
7482 m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7483 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7484 AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7485 # Dependencies to place before and after the object being linked:
7486 _LT_TAGVAR(predep_objects, $1)=
7487 _LT_TAGVAR(postdep_objects, $1)=
7488 _LT_TAGVAR(predeps, $1)=
7489 _LT_TAGVAR(postdeps, $1)=
7490 _LT_TAGVAR(compiler_lib_search_path, $1)=
7492 dnl we can't use the lt_simple_compile_test_code here,
7493 dnl because it contains code intended for an executable,
7494 dnl not a library. It's possible we should let each
7495 dnl tag define a new lt_????_link_test_code variable,
7496 dnl but it's only used here...
7497 m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7499 void foo (void) { a = 0; }
7501 ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7505 Foo (void) { a = 0; }
7510 ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
7518 ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
7526 ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
7529 public void bar (void) {
7534 ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7541 _lt_libdeps_save_CFLAGS=$CFLAGS
7542 case "$CC $CFLAGS " in #(
7543 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7544 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7545 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7548 dnl Parse the compiler output and extract the necessary
7549 dnl objects, libraries and library flags.
7550 if AC_TRY_EVAL(ac_compile); then
7551 # Parse the compiler output and extract the necessary
7552 # objects, libraries and library flags.
7554 # Sentinel used to keep track of whether or not we are before
7555 # the conftest object file.
7556 pre_test_object_deps_done=no
7558 for p in `eval "$output_verbose_link_cmd"`; do
7562 # Some compilers place space between "-{L,R}" and the path.
7564 if test x-L = "$p" ||
7565 test x-R = "$p"; then
7570 # Expand the sysroot to ease extracting the directories later.
7571 if test -z "$prev"; then
7573 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7574 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7575 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7579 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7581 if test no = "$pre_test_object_deps_done"; then
7584 # Internal compiler library paths should come after those
7585 # provided the user. The postdeps already come after the
7586 # user supplied libs so there is no need to process them.
7587 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7588 _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
7590 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
7593 # The "-l" case would never come before the object being
7594 # linked, so don't bother handling this case.
7597 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7598 _LT_TAGVAR(postdeps, $1)=$prev$p
7600 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
7606 *.lto.$objext) ;; # Ignore GCC LTO objects
7608 # This assumes that the test object file only shows up
7609 # once in the compiler output.
7610 if test "$p" = "conftest.$objext"; then
7611 pre_test_object_deps_done=yes
7615 if test no = "$pre_test_object_deps_done"; then
7616 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7617 _LT_TAGVAR(predep_objects, $1)=$p
7619 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7622 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7623 _LT_TAGVAR(postdep_objects, $1)=$p
7625 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7630 *) ;; # Ignore the rest.
7638 echo "libtool.m4: error: problem compiling $1 test program"
7641 $RM -f confest.$objext
7642 CFLAGS=$_lt_libdeps_save_CFLAGS
7644 # PORTME: override above test on systems where it is broken
7648 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7649 # hack all around it, let's just trust "g++" to DTRT.
7650 _LT_TAGVAR(predep_objects,$1)=
7651 _LT_TAGVAR(postdep_objects,$1)=
7652 _LT_TAGVAR(postdeps,$1)=
7657 case " $_LT_TAGVAR(postdeps, $1) " in
7658 *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7660 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7661 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7662 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
7664 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7665 [The directories searched by this compiler when creating a shared library])
7666 _LT_TAGDECL([], [predep_objects], [1],
7667 [Dependencies to place before and after the objects being linked to
7668 create a shared library])
7669 _LT_TAGDECL([], [postdep_objects], [1])
7670 _LT_TAGDECL([], [predeps], [1])
7671 _LT_TAGDECL([], [postdeps], [1])
7672 _LT_TAGDECL([], [compiler_lib_search_path], [1],
7673 [The library search path used internally by the compiler when linking
7675 ])# _LT_SYS_HIDDEN_LIBDEPS
7678 # _LT_LANG_F77_CONFIG([TAG])
7679 # --------------------------
7680 # Ensure that the configuration variables for a Fortran 77 compiler are
7681 # suitably defined. These variables are subsequently used by _LT_CONFIG
7682 # to write the compiler configuration to 'libtool'.
7683 m4_defun([_LT_LANG_F77_CONFIG],
7684 [AC_LANG_PUSH(Fortran 77)
7685 if test -z "$F77" || test no = "$F77"; then
7689 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7690 _LT_TAGVAR(allow_undefined_flag, $1)=
7691 _LT_TAGVAR(always_export_symbols, $1)=no
7692 _LT_TAGVAR(archive_expsym_cmds, $1)=
7693 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7694 _LT_TAGVAR(hardcode_direct, $1)=no
7695 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7696 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7697 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7698 _LT_TAGVAR(hardcode_minus_L, $1)=no
7699 _LT_TAGVAR(hardcode_automatic, $1)=no
7700 _LT_TAGVAR(inherit_rpath, $1)=no
7701 _LT_TAGVAR(module_cmds, $1)=
7702 _LT_TAGVAR(module_expsym_cmds, $1)=
7703 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7704 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7705 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7706 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7707 _LT_TAGVAR(no_undefined_flag, $1)=
7708 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7709 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7711 # Source file extension for f77 test sources.
7714 # Object file extension for compiled f77 test sources.
7716 _LT_TAGVAR(objext, $1)=$objext
7718 # No sense in running all these tests if we already determined that
7719 # the F77 compiler isn't working. Some variables (like enable_shared)
7720 # are currently assumed to apply to all compilers on this platform,
7721 # and will be corrupted by setting them based on a non-working compiler.
7722 if test yes != "$_lt_disable_F77"; then
7723 # Code to be used in simple compile tests
7724 lt_simple_compile_test_code="\
7730 # Code to be used in simple link tests
7731 lt_simple_link_test_code="\
7736 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7739 # save warnings/boilerplate of simple test code
7740 _LT_COMPILER_BOILERPLATE
7741 _LT_LINKER_BOILERPLATE
7743 # Allow CC to be a program name with arguments.
7746 lt_save_CFLAGS=$CFLAGS
7750 _LT_TAGVAR(compiler, $1)=$CC
7751 _LT_CC_BASENAME([$compiler])
7753 if test -n "$compiler"; then
7754 AC_MSG_CHECKING([if libtool supports shared libraries])
7755 AC_MSG_RESULT([$can_build_shared])
7757 AC_MSG_CHECKING([whether to build shared libraries])
7758 test no = "$can_build_shared" && enable_shared=no
7760 # On AIX, shared libraries and static libraries use the same namespace, and
7761 # are all built from PIC.
7764 test yes = "$enable_shared" && enable_static=no
7765 if test -n "$RANLIB"; then
7766 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7767 postinstall_cmds='$RANLIB $lib'
7771 if test ia64 != "$host_cpu"; then
7772 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7773 yes,aix,yes) ;; # shared object as lib.so file only
7774 yes,svr4,*) ;; # shared object as lib.so archive member only
7775 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7780 AC_MSG_RESULT([$enable_shared])
7782 AC_MSG_CHECKING([whether to build static libraries])
7783 # Make sure either enable_shared or enable_static is yes.
7784 test yes = "$enable_shared" || enable_static=yes
7785 AC_MSG_RESULT([$enable_static])
7787 _LT_TAGVAR(GCC, $1)=$G77
7788 _LT_TAGVAR(LD, $1)=$LD
7791 ## There is no encapsulation within the following macros, do not change
7792 ## the running order or otherwise move them around unless you know exactly
7793 ## what you are doing...
7794 _LT_COMPILER_PIC($1)
7795 _LT_COMPILER_C_O($1)
7796 _LT_COMPILER_FILE_LOCKS($1)
7797 _LT_LINKER_SHLIBS($1)
7798 _LT_SYS_DYNAMIC_LINKER($1)
7799 _LT_LINKER_HARDCODE_LIBPATH($1)
7802 fi # test -n "$compiler"
7806 CFLAGS=$lt_save_CFLAGS
7807 fi # test yes != "$_lt_disable_F77"
7810 ])# _LT_LANG_F77_CONFIG
7813 # _LT_LANG_FC_CONFIG([TAG])
7814 # -------------------------
7815 # Ensure that the configuration variables for a Fortran compiler are
7816 # suitably defined. These variables are subsequently used by _LT_CONFIG
7817 # to write the compiler configuration to 'libtool'.
7818 m4_defun([_LT_LANG_FC_CONFIG],
7819 [AC_LANG_PUSH(Fortran)
7821 if test -z "$FC" || test no = "$FC"; then
7825 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7826 _LT_TAGVAR(allow_undefined_flag, $1)=
7827 _LT_TAGVAR(always_export_symbols, $1)=no
7828 _LT_TAGVAR(archive_expsym_cmds, $1)=
7829 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7830 _LT_TAGVAR(hardcode_direct, $1)=no
7831 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7832 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7833 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7834 _LT_TAGVAR(hardcode_minus_L, $1)=no
7835 _LT_TAGVAR(hardcode_automatic, $1)=no
7836 _LT_TAGVAR(inherit_rpath, $1)=no
7837 _LT_TAGVAR(module_cmds, $1)=
7838 _LT_TAGVAR(module_expsym_cmds, $1)=
7839 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7840 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7841 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7842 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7843 _LT_TAGVAR(no_undefined_flag, $1)=
7844 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7845 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7847 # Source file extension for fc test sources.
7848 ac_ext=${ac_fc_srcext-f}
7850 # Object file extension for compiled fc test sources.
7852 _LT_TAGVAR(objext, $1)=$objext
7854 # No sense in running all these tests if we already determined that
7855 # the FC compiler isn't working. Some variables (like enable_shared)
7856 # are currently assumed to apply to all compilers on this platform,
7857 # and will be corrupted by setting them based on a non-working compiler.
7858 if test yes != "$_lt_disable_FC"; then
7859 # Code to be used in simple compile tests
7860 lt_simple_compile_test_code="\
7866 # Code to be used in simple link tests
7867 lt_simple_link_test_code="\
7872 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7875 # save warnings/boilerplate of simple test code
7876 _LT_COMPILER_BOILERPLATE
7877 _LT_LINKER_BOILERPLATE
7879 # Allow CC to be a program name with arguments.
7882 lt_save_CFLAGS=$CFLAGS
7886 GCC=$ac_cv_fc_compiler_gnu
7888 _LT_TAGVAR(compiler, $1)=$CC
7889 _LT_CC_BASENAME([$compiler])
7891 if test -n "$compiler"; then
7892 AC_MSG_CHECKING([if libtool supports shared libraries])
7893 AC_MSG_RESULT([$can_build_shared])
7895 AC_MSG_CHECKING([whether to build shared libraries])
7896 test no = "$can_build_shared" && enable_shared=no
7898 # On AIX, shared libraries and static libraries use the same namespace, and
7899 # are all built from PIC.
7902 test yes = "$enable_shared" && enable_static=no
7903 if test -n "$RANLIB"; then
7904 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7905 postinstall_cmds='$RANLIB $lib'
7909 if test ia64 != "$host_cpu"; then
7910 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7911 yes,aix,yes) ;; # shared object as lib.so file only
7912 yes,svr4,*) ;; # shared object as lib.so archive member only
7913 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7918 AC_MSG_RESULT([$enable_shared])
7920 AC_MSG_CHECKING([whether to build static libraries])
7921 # Make sure either enable_shared or enable_static is yes.
7922 test yes = "$enable_shared" || enable_static=yes
7923 AC_MSG_RESULT([$enable_static])
7925 _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7926 _LT_TAGVAR(LD, $1)=$LD
7929 ## There is no encapsulation within the following macros, do not change
7930 ## the running order or otherwise move them around unless you know exactly
7931 ## what you are doing...
7932 _LT_SYS_HIDDEN_LIBDEPS($1)
7933 _LT_COMPILER_PIC($1)
7934 _LT_COMPILER_C_O($1)
7935 _LT_COMPILER_FILE_LOCKS($1)
7936 _LT_LINKER_SHLIBS($1)
7937 _LT_SYS_DYNAMIC_LINKER($1)
7938 _LT_LINKER_HARDCODE_LIBPATH($1)
7941 fi # test -n "$compiler"
7945 CFLAGS=$lt_save_CFLAGS
7946 fi # test yes != "$_lt_disable_FC"
7949 ])# _LT_LANG_FC_CONFIG
7952 # _LT_LANG_GCJ_CONFIG([TAG])
7953 # --------------------------
7954 # Ensure that the configuration variables for the GNU Java Compiler compiler
7955 # are suitably defined. These variables are subsequently used by _LT_CONFIG
7956 # to write the compiler configuration to 'libtool'.
7957 m4_defun([_LT_LANG_GCJ_CONFIG],
7958 [AC_REQUIRE([LT_PROG_GCJ])dnl
7961 # Source file extension for Java test sources.
7964 # Object file extension for compiled Java test sources.
7966 _LT_TAGVAR(objext, $1)=$objext
7968 # Code to be used in simple compile tests
7969 lt_simple_compile_test_code="class foo {}"
7971 # Code to be used in simple link tests
7972 lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7974 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7977 # save warnings/boilerplate of simple test code
7978 _LT_COMPILER_BOILERPLATE
7979 _LT_LINKER_BOILERPLATE
7981 # Allow CC to be a program name with arguments.
7983 lt_save_CFLAGS=$CFLAGS
7989 _LT_TAGVAR(compiler, $1)=$CC
7990 _LT_TAGVAR(LD, $1)=$LD
7991 _LT_CC_BASENAME([$compiler])
7993 # GCJ did not exist at the time GCC didn't implicitly link libc in.
7994 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7996 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7997 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7998 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8000 if test -n "$compiler"; then
8001 _LT_COMPILER_NO_RTTI($1)
8002 _LT_COMPILER_PIC($1)
8003 _LT_COMPILER_C_O($1)
8004 _LT_COMPILER_FILE_LOCKS($1)
8005 _LT_LINKER_SHLIBS($1)
8006 _LT_LINKER_HARDCODE_LIBPATH($1)
8015 CFLAGS=$lt_save_CFLAGS
8016 ])# _LT_LANG_GCJ_CONFIG
8019 # _LT_LANG_GO_CONFIG([TAG])
8020 # --------------------------
8021 # Ensure that the configuration variables for the GNU Go compiler
8022 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8023 # to write the compiler configuration to 'libtool'.
8024 m4_defun([_LT_LANG_GO_CONFIG],
8025 [AC_REQUIRE([LT_PROG_GO])dnl
8028 # Source file extension for Go test sources.
8031 # Object file extension for compiled Go test sources.
8033 _LT_TAGVAR(objext, $1)=$objext
8035 # Code to be used in simple compile tests
8036 lt_simple_compile_test_code="package main; func main() { }"
8038 # Code to be used in simple link tests
8039 lt_simple_link_test_code='package main; func main() { }'
8041 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8044 # save warnings/boilerplate of simple test code
8045 _LT_COMPILER_BOILERPLATE
8046 _LT_LINKER_BOILERPLATE
8048 # Allow CC to be a program name with arguments.
8050 lt_save_CFLAGS=$CFLAGS
8056 _LT_TAGVAR(compiler, $1)=$CC
8057 _LT_TAGVAR(LD, $1)=$LD
8058 _LT_CC_BASENAME([$compiler])
8060 # Go did not exist at the time GCC didn't implicitly link libc in.
8061 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
8063 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8064 _LT_TAGVAR(reload_flag, $1)=$reload_flag
8065 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8067 if test -n "$compiler"; then
8068 _LT_COMPILER_NO_RTTI($1)
8069 _LT_COMPILER_PIC($1)
8070 _LT_COMPILER_C_O($1)
8071 _LT_COMPILER_FILE_LOCKS($1)
8072 _LT_LINKER_SHLIBS($1)
8073 _LT_LINKER_HARDCODE_LIBPATH($1)
8082 CFLAGS=$lt_save_CFLAGS
8083 ])# _LT_LANG_GO_CONFIG
8086 # _LT_LANG_RC_CONFIG([TAG])
8087 # -------------------------
8088 # Ensure that the configuration variables for the Windows resource compiler
8089 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8090 # to write the compiler configuration to 'libtool'.
8091 m4_defun([_LT_LANG_RC_CONFIG],
8092 [AC_REQUIRE([LT_PROG_RC])dnl
8095 # Source file extension for RC test sources.
8098 # Object file extension for compiled RC test sources.
8100 _LT_TAGVAR(objext, $1)=$objext
8102 # Code to be used in simple compile tests
8103 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8105 # Code to be used in simple link tests
8106 lt_simple_link_test_code=$lt_simple_compile_test_code
8108 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8111 # save warnings/boilerplate of simple test code
8112 _LT_COMPILER_BOILERPLATE
8113 _LT_LINKER_BOILERPLATE
8115 # Allow CC to be a program name with arguments.
8117 lt_save_CFLAGS=$CFLAGS
8123 _LT_TAGVAR(compiler, $1)=$CC
8124 _LT_CC_BASENAME([$compiler])
8125 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8127 if test -n "$compiler"; then
8135 CFLAGS=$lt_save_CFLAGS
8136 ])# _LT_LANG_RC_CONFIG
8141 AC_DEFUN([LT_PROG_GCJ],
8142 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8143 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8144 [AC_CHECK_TOOL(GCJ, gcj,)
8145 test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
8146 AC_SUBST(GCJFLAGS)])])[]dnl
8150 AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8151 dnl aclocal-1.4 backwards compatibility:
8152 dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
8157 AC_DEFUN([LT_PROG_GO],
8158 [AC_CHECK_TOOL(GOC, gccgo,)
8164 AC_DEFUN([LT_PROG_RC],
8165 [AC_CHECK_TOOL(RC, windres,)
8169 AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8170 dnl aclocal-1.4 backwards compatibility:
8171 dnl AC_DEFUN([LT_AC_PROG_RC], [])
8176 # If we don't have a new enough Autoconf to choose the best grep
8177 # available, choose the one first in the user's PATH.
8178 m4_defun([_LT_DECL_EGREP],
8179 [AC_REQUIRE([AC_PROG_EGREP])dnl
8180 AC_REQUIRE([AC_PROG_FGREP])dnl
8181 test -z "$GREP" && GREP=grep
8182 _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8183 _LT_DECL([], [EGREP], [1], [An ERE matcher])
8184 _LT_DECL([], [FGREP], [1], [A literal string matcher])
8185 dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8192 # If we don't have a new enough Autoconf to choose the best objdump
8193 # available, choose the one first in the user's PATH.
8194 m4_defun([_LT_DECL_OBJDUMP],
8195 [AC_CHECK_TOOL(OBJDUMP, objdump, false)
8196 test -z "$OBJDUMP" && OBJDUMP=objdump
8197 _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8203 # Ensure DLLTOOL variable is set.
8204 m4_defun([_LT_DECL_DLLTOOL],
8205 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8206 test -z "$DLLTOOL" && DLLTOOL=dlltool
8207 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8213 # Check for a fully-functional sed program, that truncates
8214 # as few characters as possible. Prefer GNU sed if found.
8215 m4_defun([_LT_DECL_SED],
8217 test -z "$SED" && SED=sed
8218 Xsed="$SED -e 1s/^X//"
8219 _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8220 _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8221 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
8224 m4_ifndef([AC_PROG_SED], [
8225 # NOTE: This macro has been submitted for inclusion into #
8226 # GNU Autoconf as AC_PROG_SED. When it is available in #
8227 # a released version of Autoconf we should remove this #
8228 # macro and use it instead. #
8230 m4_defun([AC_PROG_SED],
8231 [AC_MSG_CHECKING([for a sed that does not truncate output])
8232 AC_CACHE_VAL(lt_cv_path_SED,
8233 [# Loop through the user's path and test for sed and gsed.
8234 # Then use that list of sed's as ones to test for truncation.
8235 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8239 test -z "$as_dir" && as_dir=.
8240 for lt_ac_prog in sed gsed; do
8241 for ac_exec_ext in '' $ac_executable_extensions; do
8242 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8243 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8251 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
8252 # along with /bin/sed that truncates output.
8253 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
8254 test ! -f "$lt_ac_sed" && continue
8255 cat /dev/null > conftest.in
8257 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8258 # Check for GNU sed and select it if it is found.
8259 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8260 lt_cv_path_SED=$lt_ac_sed
8264 cat conftest.in conftest.in >conftest.tmp
8265 mv conftest.tmp conftest.in
8266 cp conftest.in conftest.nl
8268 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8269 cmp -s conftest.out conftest.nl || break
8270 # 10000 chars as input seems more than enough
8271 test 10 -lt "$lt_ac_count" && break
8272 lt_ac_count=`expr $lt_ac_count + 1`
8273 if test "$lt_ac_count" -gt "$lt_ac_max"; then
8274 lt_ac_max=$lt_ac_count
8275 lt_cv_path_SED=$lt_ac_sed
8282 AC_MSG_RESULT([$SED])
8287 AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8288 dnl aclocal-1.4 backwards compatibility:
8289 dnl AC_DEFUN([LT_AC_PROG_SED], [])
8292 # _LT_CHECK_SHELL_FEATURES
8293 # ------------------------
8294 # Find out whether the shell is Bourne or XSI compatible,
8295 # or has some other useful features.
8296 m4_defun([_LT_CHECK_SHELL_FEATURES],
8297 [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
8302 _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8304 # test EBCDIC or ASCII
8305 case `echo X|tr X '\101'` in
8306 A) # ASCII based system
8307 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8308 lt_SP2NL='tr \040 \012'
8309 lt_NL2SP='tr \015\012 \040\040'
8311 *) # EBCDIC based system
8312 lt_SP2NL='tr \100 \n'
8313 lt_NL2SP='tr \r\n \100\100'
8316 _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8317 _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8318 ])# _LT_CHECK_SHELL_FEATURES
8321 # _LT_PATH_CONVERSION_FUNCTIONS
8322 # -----------------------------
8323 # Determine what file name conversion functions should be used by
8324 # func_to_host_file (and, implicitly, by func_to_host_path). These are needed
8325 # for certain cross-compile configurations and native mingw.
8326 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8327 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8328 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8329 AC_MSG_CHECKING([how to convert $build file names to $host format])
8330 AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8334 *-*-mingw* ) # actually msys
8335 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8338 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8340 * ) # otherwise, assume *nix
8341 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8347 *-*-mingw* ) # actually msys
8348 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8351 lt_cv_to_host_file_cmd=func_convert_file_noop
8353 * ) # otherwise, assume *nix
8354 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
8358 * ) # unhandled hosts (and "normal" native builds)
8359 lt_cv_to_host_file_cmd=func_convert_file_noop
8363 to_host_file_cmd=$lt_cv_to_host_file_cmd
8364 AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
8365 _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
8366 [0], [convert $build file names to $host format])dnl
8368 AC_MSG_CHECKING([how to convert $build file names to toolchain format])
8369 AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
8370 [#assume ordinary cross tools, or native build.
8371 lt_cv_to_tool_file_cmd=func_convert_file_noop
8375 *-*-mingw* ) # actually msys
8376 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
8382 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
8383 AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
8384 _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8385 [0], [convert $build files to toolchain format])dnl
8386 ])# _LT_PATH_CONVERSION_FUNCTIONS
8388 # Helper functions for option handling. -*- Autoconf -*-
8390 # Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8392 # Written by Gary V. Vaughan, 2004
8394 # This file is free software; the Free Software Foundation gives
8395 # unlimited permission to copy and/or distribute it, with or without
8396 # modifications, as long as this notice is preserved.
8398 # serial 8 ltoptions.m4
8400 # This is to help aclocal find these macros, as it can't see m4_define.
8401 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8404 # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8405 # ------------------------------------------
8406 m4_define([_LT_MANGLE_OPTION],
8407 [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8410 # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8411 # ---------------------------------------
8412 # Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8413 # matching handler defined, dispatch to it. Other OPTION-NAMEs are
8415 m4_define([_LT_SET_OPTION],
8416 [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8417 m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8418 _LT_MANGLE_DEFUN([$1], [$2]),
8419 [m4_warning([Unknown $1 option '$2'])])[]dnl
8423 # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8424 # ------------------------------------------------------------
8425 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8426 m4_define([_LT_IF_OPTION],
8427 [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8430 # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8431 # -------------------------------------------------------
8432 # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8434 m4_define([_LT_UNLESS_OPTIONS],
8435 [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8436 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8437 [m4_define([$0_found])])])[]dnl
8438 m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8443 # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8444 # ----------------------------------------
8445 # OPTION-LIST is a space-separated list of Libtool options associated
8446 # with MACRO-NAME. If any OPTION has a matching handler declared with
8447 # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8448 # the unknown option and exit.
8449 m4_defun([_LT_SET_OPTIONS],
8451 m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8452 [_LT_SET_OPTION([$1], _LT_Option)])
8454 m4_if([$1],[LT_INIT],[
8456 dnl Simply set some default values (i.e off) if boolean options were not
8458 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8460 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8463 dnl If no reference was made to various pairs of opposing options, then
8464 dnl we run the default mode handler for the pair. For example, if neither
8465 dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
8466 dnl archives by default:
8467 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8468 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8469 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8470 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8471 [_LT_ENABLE_FAST_INSTALL])
8472 _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
8473 [_LT_WITH_AIX_SONAME([aix])])
8479 # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8480 # -----------------------------------------
8481 m4_define([_LT_MANGLE_DEFUN],
8482 [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8485 # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8486 # -----------------------------------------------
8487 m4_define([LT_OPTION_DEFINE],
8488 [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8489 ])# LT_OPTION_DEFINE
8494 LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8497 AU_DEFUN([AC_LIBTOOL_DLOPEN],
8498 [_LT_SET_OPTION([LT_INIT], [dlopen])
8499 AC_DIAGNOSE([obsolete],
8500 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8501 put the 'dlopen' option into LT_INIT's first parameter.])
8504 dnl aclocal-1.4 backwards compatibility:
8505 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8510 # Declare package support for building win32 dll's.
8511 LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8512 [enable_win32_dll=yes
8515 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8516 AC_CHECK_TOOL(AS, as, false)
8517 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8518 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8522 test -z "$AS" && AS=as
8523 _LT_DECL([], [AS], [1], [Assembler program])dnl
8525 test -z "$DLLTOOL" && DLLTOOL=dlltool
8526 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8528 test -z "$OBJDUMP" && OBJDUMP=objdump
8529 _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8532 AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8533 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8534 _LT_SET_OPTION([LT_INIT], [win32-dll])
8535 AC_DIAGNOSE([obsolete],
8536 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8537 put the 'win32-dll' option into LT_INIT's first parameter.])
8540 dnl aclocal-1.4 backwards compatibility:
8541 dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8544 # _LT_ENABLE_SHARED([DEFAULT])
8545 # ----------------------------
8546 # implement the --enable-shared flag, and supports the 'shared' and
8547 # 'disable-shared' LT_INIT options.
8548 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8549 m4_define([_LT_ENABLE_SHARED],
8550 [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8551 AC_ARG_ENABLE([shared],
8552 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8553 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8554 [p=${PACKAGE-default}
8556 yes) enable_shared=yes ;;
8557 no) enable_shared=no ;;
8560 # Look at the argument we got. We use all the common list separators.
8561 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8562 for pkg in $enableval; do
8564 if test "X$pkg" = "X$p"; then
8571 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8573 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8574 [Whether or not to build shared libraries])
8575 ])# _LT_ENABLE_SHARED
8577 LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8578 LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8581 AC_DEFUN([AC_ENABLE_SHARED],
8582 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8585 AC_DEFUN([AC_DISABLE_SHARED],
8586 [_LT_SET_OPTION([LT_INIT], [disable-shared])
8589 AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8590 AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8592 dnl aclocal-1.4 backwards compatibility:
8593 dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8594 dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8598 # _LT_ENABLE_STATIC([DEFAULT])
8599 # ----------------------------
8600 # implement the --enable-static flag, and support the 'static' and
8601 # 'disable-static' LT_INIT options.
8602 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8603 m4_define([_LT_ENABLE_STATIC],
8604 [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8605 AC_ARG_ENABLE([static],
8606 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8607 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8608 [p=${PACKAGE-default}
8610 yes) enable_static=yes ;;
8611 no) enable_static=no ;;
8614 # Look at the argument we got. We use all the common list separators.
8615 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8616 for pkg in $enableval; do
8618 if test "X$pkg" = "X$p"; then
8625 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8627 _LT_DECL([build_old_libs], [enable_static], [0],
8628 [Whether or not to build static libraries])
8629 ])# _LT_ENABLE_STATIC
8631 LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8632 LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8635 AC_DEFUN([AC_ENABLE_STATIC],
8636 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8639 AC_DEFUN([AC_DISABLE_STATIC],
8640 [_LT_SET_OPTION([LT_INIT], [disable-static])
8643 AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8644 AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8646 dnl aclocal-1.4 backwards compatibility:
8647 dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8648 dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8652 # _LT_ENABLE_FAST_INSTALL([DEFAULT])
8653 # ----------------------------------
8654 # implement the --enable-fast-install flag, and support the 'fast-install'
8655 # and 'disable-fast-install' LT_INIT options.
8656 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8657 m4_define([_LT_ENABLE_FAST_INSTALL],
8658 [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8659 AC_ARG_ENABLE([fast-install],
8660 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8661 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8662 [p=${PACKAGE-default}
8664 yes) enable_fast_install=yes ;;
8665 no) enable_fast_install=no ;;
8667 enable_fast_install=no
8668 # Look at the argument we got. We use all the common list separators.
8669 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8670 for pkg in $enableval; do
8672 if test "X$pkg" = "X$p"; then
8673 enable_fast_install=yes
8679 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8681 _LT_DECL([fast_install], [enable_fast_install], [0],
8682 [Whether or not to optimize for fast installation])dnl
8683 ])# _LT_ENABLE_FAST_INSTALL
8685 LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8686 LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8689 AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8690 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8691 AC_DIAGNOSE([obsolete],
8692 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8693 the 'fast-install' option into LT_INIT's first parameter.])
8696 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8697 [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8698 AC_DIAGNOSE([obsolete],
8699 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8700 the 'disable-fast-install' option into LT_INIT's first parameter.])
8703 dnl aclocal-1.4 backwards compatibility:
8704 dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8705 dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8708 # _LT_WITH_AIX_SONAME([DEFAULT])
8709 # ----------------------------------
8710 # implement the --with-aix-soname flag, and support the `aix-soname=aix'
8711 # and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
8712 # is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
8713 m4_define([_LT_WITH_AIX_SONAME],
8714 [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
8715 shared_archive_member_spec=
8716 case $host,$enable_shared in
8717 power*-*-aix[[5-9]]*,yes)
8718 AC_MSG_CHECKING([which variant of shared library versioning to provide])
8719 AC_ARG_WITH([aix-soname],
8720 [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
8721 [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
8726 AC_MSG_ERROR([Unknown argument to --with-aix-soname])
8729 lt_cv_with_aix_soname=$with_aix_soname],
8730 [AC_CACHE_VAL([lt_cv_with_aix_soname],
8731 [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
8732 with_aix_soname=$lt_cv_with_aix_soname])
8733 AC_MSG_RESULT([$with_aix_soname])
8734 if test aix != "$with_aix_soname"; then
8735 # For the AIX way of multilib, we name the shared archive member
8736 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8737 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8738 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8739 # the AIX toolchain works better with OBJECT_MODE set (default 32).
8740 if test 64 = "${OBJECT_MODE-32}"; then
8741 shared_archive_member_spec=shr_64
8743 shared_archive_member_spec=shr
8752 _LT_DECL([], [shared_archive_member_spec], [0],
8753 [Shared archive member basename, for filename based shared library versioning on AIX])dnl
8754 ])# _LT_WITH_AIX_SONAME
8756 LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
8757 LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
8758 LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
8761 # _LT_WITH_PIC([MODE])
8762 # --------------------
8763 # implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
8765 # MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
8766 m4_define([_LT_WITH_PIC],
8768 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8769 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8770 [lt_p=${PACKAGE-default}
8772 yes|no) pic_mode=$withval ;;
8775 # Look at the argument we got. We use all the common list separators.
8776 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8777 for lt_pkg in $withval; do
8779 if test "X$lt_pkg" = "X$lt_p"; then
8786 [pic_mode=m4_default([$1], [default])])
8788 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8791 LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8792 LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8795 AU_DEFUN([AC_LIBTOOL_PICMODE],
8796 [_LT_SET_OPTION([LT_INIT], [pic-only])
8797 AC_DIAGNOSE([obsolete],
8798 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8799 put the 'pic-only' option into LT_INIT's first parameter.])
8802 dnl aclocal-1.4 backwards compatibility:
8803 dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8806 m4_define([_LTDL_MODE], [])
8807 LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8808 [m4_define([_LTDL_MODE], [nonrecursive])])
8809 LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8810 [m4_define([_LTDL_MODE], [recursive])])
8811 LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8812 [m4_define([_LTDL_MODE], [subproject])])
8814 m4_define([_LTDL_TYPE], [])
8815 LT_OPTION_DEFINE([LTDL_INIT], [installable],
8816 [m4_define([_LTDL_TYPE], [installable])])
8817 LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8818 [m4_define([_LTDL_TYPE], [convenience])])
8820 # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8822 # Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8824 # Written by Gary V. Vaughan, 2004
8826 # This file is free software; the Free Software Foundation gives
8827 # unlimited permission to copy and/or distribute it, with or without
8828 # modifications, as long as this notice is preserved.
8830 # serial 6 ltsugar.m4
8832 # This is to help aclocal find these macros, as it can't see m4_define.
8833 AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8836 # lt_join(SEP, ARG1, [ARG2...])
8837 # -----------------------------
8838 # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8839 # associated separator.
8840 # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8841 # versions in m4sugar had bugs.
8842 m4_define([lt_join],
8843 [m4_if([$#], [1], [],
8845 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8846 m4_define([_lt_join],
8847 [m4_if([$#$2], [2], [],
8848 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8854 # Manipulate m4 lists.
8855 # These macros are necessary as long as will still need to support
8856 # Autoconf-2.59, which quotes differently.
8857 m4_define([lt_car], [[$1]])
8859 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8861 [m4_dquote(m4_shift($@))])])
8862 m4_define([lt_unquote], $1)
8865 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
8866 # ------------------------------------------
8867 # Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
8868 # Note that neither SEPARATOR nor STRING are expanded; they are appended
8869 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8870 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
8871 # than defined and empty).
8873 # This macro is needed until we can rely on Autoconf 2.62, since earlier
8874 # versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8875 m4_define([lt_append],
8877 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8881 # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8882 # ----------------------------------------------------------
8883 # Produce a SEP delimited list of all paired combinations of elements of
8884 # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8885 # has the form PREFIXmINFIXSUFFIXn.
8886 # Needed until we can rely on m4_combine added in Autoconf 2.62.
8887 m4_define([lt_combine],
8888 [m4_if(m4_eval([$# > 3]), [1],
8889 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8890 [[m4_foreach([_Lt_prefix], [$2],
8891 [m4_foreach([_Lt_suffix],
8892 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8893 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8896 # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8897 # -----------------------------------------------------------------------
8898 # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8899 # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8900 m4_define([lt_if_append_uniq],
8902 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8903 [lt_append([$1], [$2], [$3])$4],
8905 [lt_append([$1], [$2], [$3])$4])])
8908 # lt_dict_add(DICT, KEY, VALUE)
8909 # -----------------------------
8910 m4_define([lt_dict_add],
8911 [m4_define([$1($2)], [$3])])
8914 # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8915 # --------------------------------------------
8916 m4_define([lt_dict_add_subkey],
8917 [m4_define([$1($2:$3)], [$4])])
8920 # lt_dict_fetch(DICT, KEY, [SUBKEY])
8921 # ----------------------------------
8922 m4_define([lt_dict_fetch],
8924 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8925 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8928 # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8929 # -----------------------------------------------------------------
8930 m4_define([lt_if_dict_fetch],
8931 [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8936 # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8937 # --------------------------------------------------------------
8938 m4_define([lt_dict_filter],
8939 [m4_if([$5], [], [],
8940 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8941 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8942 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8945 # ltversion.m4 -- version numbers -*- Autoconf -*-
8947 # Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
8948 # Written by Scott James Remnant, 2004
8950 # This file is free software; the Free Software Foundation gives
8951 # unlimited permission to copy and/or distribute it, with or without
8952 # modifications, as long as this notice is preserved.
8956 # serial 4179 ltversion.m4
8957 # This file is part of GNU Libtool
8959 m4_define([LT_PACKAGE_VERSION], [2.4.6])
8960 m4_define([LT_PACKAGE_REVISION], [2.4.6])
8962 AC_DEFUN([LTVERSION_VERSION],
8963 [macro_version='2.4.6'
8964 macro_revision='2.4.6'
8965 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8966 _LT_DECL(, macro_revision, 0)
8969 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8971 # Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8973 # Written by Scott James Remnant, 2004.
8975 # This file is free software; the Free Software Foundation gives
8976 # unlimited permission to copy and/or distribute it, with or without
8977 # modifications, as long as this notice is preserved.
8979 # serial 5 lt~obsolete.m4
8981 # These exist entirely to fool aclocal when bootstrapping libtool.
8983 # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
8984 # which have later been changed to m4_define as they aren't part of the
8985 # exported API, or moved to Autoconf or Automake where they belong.
8987 # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8988 # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8989 # using a macro with the same name in our local m4/libtool.m4 it'll
8990 # pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8991 # and doesn't know about Autoconf macros at all.)
8993 # So we provide this file, which has a silly filename so it's always
8994 # included after everything else. This provides aclocal with the
8995 # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8996 # because those macros already exist, or will be overwritten later.
8997 # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8999 # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
9000 # Yes, that means every name once taken will need to remain here until
9001 # we give up compatibility with versions before 1.7, at which point
9002 # we need to keep only those names which we still refer to.
9004 # This is to help aclocal find these macros, as it can't see m4_define.
9005 AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
9007 m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
9008 m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
9009 m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
9010 m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
9011 m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
9012 m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
9013 m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
9014 m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
9015 m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
9016 m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
9017 m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
9018 m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
9019 m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
9020 m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
9021 m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9022 m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9023 m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
9024 m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9025 m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9026 m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
9027 m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
9028 m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9029 m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9030 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9031 m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9032 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9033 m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9034 m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9035 m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
9036 m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
9037 m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
9038 m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9039 m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9040 m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
9041 m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
9042 m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9043 m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9044 m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
9045 m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9046 m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
9047 m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
9048 m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
9049 m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9050 m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9051 m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9052 m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9053 m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9054 m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9055 m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9056 m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9057 m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9058 m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9059 m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
9060 m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
9061 m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9062 m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9063 m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9064 m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9065 m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
9066 m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
9067 m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])