1 # generated automatically by aclocal 1.16.1 -*- Autoconf -*-
3 # Copyright (C) 1996-2018 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 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
740 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
742 # Provide generalized library-building support services.
743 # Written by Gordon Matzigkeit, 1996
748 # Configured defaults for sys_lib_dlsearch_path munging.
749 : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
751 # ### BEGIN LIBTOOL CONFIG
752 _LT_LIBTOOL_CONFIG_VARS
754 # ### END LIBTOOL CONFIG
758 cat <<'_LT_EOF' >> "$cfgfile"
760 # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
762 _LT_PREPARE_MUNGE_PATH_LIST
763 _LT_PREPARE_CC_BASENAME
765 # ### END FUNCTIONS SHARED WITH CONFIGURE
771 cat <<\_LT_EOF >> "$cfgfile"
772 # AIX sometimes has problems with the GCC collect2 program. For some
773 # reason, if we set the COLLECT_NAMES environment variable, the problems
774 # vanish in a puff of smoke.
775 if test set != "${COLLECT_NAMES+set}"; then
785 # We use sed instead of cat because bash on DJGPP gets confused if
786 # if finds mixed CR/LF and LF-only lines. Since sed operates in
787 # text mode, it properly converts lines to CR/LF. This bash problem
788 # is reportedly fixed, but why not run on old versions too?
789 sed '$q' "$ltmain" >> "$cfgfile" \
790 || (rm -f "$cfgfile"; exit 1)
792 mv -f "$cfgfile" "$ofile" ||
793 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
796 [cat <<_LT_EOF >> "$ofile"
798 dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
799 dnl in a comment (ie after a #).
800 # ### BEGIN LIBTOOL TAG CONFIG: $1
801 _LT_LIBTOOL_TAG_VARS(_LT_TAG)
802 # ### END LIBTOOL TAG CONFIG: $1
811 ])dnl /_LT_CONFIG_SAVE_COMMANDS
815 # LT_SUPPORTED_TAG(TAG)
816 # ---------------------
817 # Trace this macro to discover what tags are supported by the libtool
818 # --tag option, using:
819 # autoconf --trace 'LT_SUPPORTED_TAG:$1'
820 AC_DEFUN([LT_SUPPORTED_TAG], [])
823 # C support is built-in for now
824 m4_define([_LT_LANG_C_enabled], [])
825 m4_define([_LT_TAGS], [])
830 # Enable libtool support for the given language if not already enabled.
832 [AC_BEFORE([$0], [LT_OUTPUT])dnl
835 [C++], [_LT_LANG(CXX)],
836 [Go], [_LT_LANG(GO)],
837 [Java], [_LT_LANG(GCJ)],
838 [Fortran 77], [_LT_LANG(F77)],
839 [Fortran], [_LT_LANG(FC)],
840 [Windows Resource], [_LT_LANG(RC)],
841 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
843 [m4_fatal([$0: unsupported language: "$1"])])])dnl
850 [m4_ifdef([_LT_LANG_]$1[_enabled], [],
851 [LT_SUPPORTED_TAG([$1])dnl
852 m4_append([_LT_TAGS], [$1 ])dnl
853 m4_define([_LT_LANG_]$1[_enabled], [])dnl
854 _LT_LANG_$1_CONFIG($1)])dnl
858 m4_ifndef([AC_PROG_GO], [
859 # NOTE: This macro has been submitted for inclusion into #
860 # GNU Autoconf as AC_PROG_GO. When it is available in #
861 # a released version of Autoconf we should remove this #
862 # macro and use it instead. #
863 m4_defun([AC_PROG_GO],
865 AC_ARG_VAR([GOC], [Go compiler command])dnl
866 AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
867 _AC_ARG_VAR_LDFLAGS()dnl
868 AC_CHECK_TOOL(GOC, gccgo)
869 if test -z "$GOC"; then
870 if test -n "$ac_tool_prefix"; then
871 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
874 if test -z "$GOC"; then
875 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
881 # _LT_LANG_DEFAULT_CONFIG
882 # -----------------------
883 m4_defun([_LT_LANG_DEFAULT_CONFIG],
884 [AC_PROVIDE_IFELSE([AC_PROG_CXX],
886 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
888 AC_PROVIDE_IFELSE([AC_PROG_F77],
890 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
892 AC_PROVIDE_IFELSE([AC_PROG_FC],
894 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
896 dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
897 dnl pulling things in needlessly.
898 AC_PROVIDE_IFELSE([AC_PROG_GCJ],
900 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
902 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
904 [m4_ifdef([AC_PROG_GCJ],
905 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
906 m4_ifdef([A][M_PROG_GCJ],
907 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
908 m4_ifdef([LT_PROG_GCJ],
909 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
911 AC_PROVIDE_IFELSE([AC_PROG_GO],
913 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
915 AC_PROVIDE_IFELSE([LT_PROG_RC],
917 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
918 ])# _LT_LANG_DEFAULT_CONFIG
921 AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
922 AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
923 AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
924 AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
925 AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
926 dnl aclocal-1.4 backwards compatibility:
927 dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
928 dnl AC_DEFUN([AC_LIBTOOL_F77], [])
929 dnl AC_DEFUN([AC_LIBTOOL_FC], [])
930 dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
931 dnl AC_DEFUN([AC_LIBTOOL_RC], [])
936 m4_defun([_LT_TAG_COMPILER],
937 [AC_REQUIRE([AC_PROG_CC])dnl
939 _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
940 _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
941 _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
942 _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
944 # If no C compiler was specified, use CC.
947 # If no C compiler flags were specified, use CFLAGS.
948 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
950 # Allow CC to be a program name with arguments.
955 # _LT_COMPILER_BOILERPLATE
956 # ------------------------
957 # Check for compiler boilerplate output or warnings with
958 # the simple compiler test code.
959 m4_defun([_LT_COMPILER_BOILERPLATE],
960 [m4_require([_LT_DECL_SED])dnl
961 ac_outfile=conftest.$ac_objext
962 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
963 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
964 _lt_compiler_boilerplate=`cat conftest.err`
966 ])# _LT_COMPILER_BOILERPLATE
969 # _LT_LINKER_BOILERPLATE
970 # ----------------------
971 # Check for linker boilerplate output or warnings with
972 # the simple link test code.
973 m4_defun([_LT_LINKER_BOILERPLATE],
974 [m4_require([_LT_DECL_SED])dnl
975 ac_outfile=conftest.$ac_objext
976 echo "$lt_simple_link_test_code" >conftest.$ac_ext
977 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
978 _lt_linker_boilerplate=`cat conftest.err`
980 ])# _LT_LINKER_BOILERPLATE
982 # _LT_REQUIRED_DARWIN_CHECKS
983 # -------------------------
984 m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
987 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
988 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
989 AC_CHECK_TOOL([LIPO], [lipo], [:])
990 AC_CHECK_TOOL([OTOOL], [otool], [:])
991 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
992 _LT_DECL([], [DSYMUTIL], [1],
993 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
994 _LT_DECL([], [NMEDIT], [1],
995 [Tool to change global to local symbols on Mac OS X])
996 _LT_DECL([], [LIPO], [1],
997 [Tool to manipulate fat objects and archives on Mac OS X])
998 _LT_DECL([], [OTOOL], [1],
999 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
1000 _LT_DECL([], [OTOOL64], [1],
1001 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
1003 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
1004 [lt_cv_apple_cc_single_mod=no
1005 if test -z "$LT_MULTI_MODULE"; then
1006 # By default we will add the -single_module flag. You can override
1007 # by either setting the environment variable LT_MULTI_MODULE
1008 # non-empty at configure time, or by adding -multi_module to the
1010 rm -rf libconftest.dylib*
1011 echo "int foo(void){return 1;}" > conftest.c
1012 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1013 -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1014 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1015 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1017 # If there is a non-empty error log, and "single_module"
1018 # appears in it, assume the flag caused a linker warning
1019 if test -s conftest.err && $GREP single_module conftest.err; then
1020 cat conftest.err >&AS_MESSAGE_LOG_FD
1021 # Otherwise, if the output was created with a 0 exit code from
1022 # the compiler, it worked.
1023 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
1024 lt_cv_apple_cc_single_mod=yes
1026 cat conftest.err >&AS_MESSAGE_LOG_FD
1028 rm -rf libconftest.dylib*
1032 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1033 [lt_cv_ld_exported_symbols_list],
1034 [lt_cv_ld_exported_symbols_list=no
1035 save_LDFLAGS=$LDFLAGS
1036 echo "_main" > conftest.sym
1037 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1038 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1039 [lt_cv_ld_exported_symbols_list=yes],
1040 [lt_cv_ld_exported_symbols_list=no])
1041 LDFLAGS=$save_LDFLAGS
1044 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1045 [lt_cv_ld_force_load=no
1046 cat > conftest.c << _LT_EOF
1047 int forced_loaded() { return 2;}
1049 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1050 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1051 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1052 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1053 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1054 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1055 cat > conftest.c << _LT_EOF
1056 int main() { return 0;}
1058 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1059 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1061 if test -s conftest.err && $GREP force_load conftest.err; then
1062 cat conftest.err >&AS_MESSAGE_LOG_FD
1063 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
1064 lt_cv_ld_force_load=yes
1066 cat conftest.err >&AS_MESSAGE_LOG_FD
1068 rm -f conftest.err libconftest.a conftest conftest.c
1069 rm -rf conftest.dSYM
1072 rhapsody* | darwin1.[[012]])
1073 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
1075 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1076 darwin*) # darwin 5.x on
1077 # if running on 10.5 or later, the deployment target defaults
1078 # to the OS version, if on x86, and 10.4, the deployment
1079 # target defaults to 10.4. Don't you love it?
1080 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1081 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1082 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1084 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1086 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1090 if test yes = "$lt_cv_apple_cc_single_mod"; then
1091 _lt_dar_single_mod='$single_module'
1093 if test yes = "$lt_cv_ld_exported_symbols_list"; then
1094 _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
1096 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
1098 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
1099 _lt_dsymutil='~$DSYMUTIL $lib || :'
1108 # _LT_DARWIN_LINKER_FEATURES([TAG])
1109 # ---------------------------------
1110 # Checks for linker and compiler features on darwin
1111 m4_defun([_LT_DARWIN_LINKER_FEATURES],
1113 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1114 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1115 _LT_TAGVAR(hardcode_direct, $1)=no
1116 _LT_TAGVAR(hardcode_automatic, $1)=yes
1117 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1118 if test yes = "$lt_cv_ld_force_load"; then
1119 _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\"`'
1120 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1121 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1123 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1125 _LT_TAGVAR(link_all_deplibs, $1)=yes
1126 _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
1127 case $cc_basename in
1128 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
1129 *) _lt_dar_can_shared=$GCC ;;
1131 if test yes = "$_lt_dar_can_shared"; then
1132 output_verbose_link_cmd=func_echo_all
1133 _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"
1134 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
1135 _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"
1136 _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"
1138 [ if test yes != "$lt_cv_apple_cc_single_mod"; then
1139 _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"
1140 _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"
1144 _LT_TAGVAR(ld_shlibs, $1)=no
1148 # _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1149 # ----------------------------------
1150 # Links a minimal program and checks the executable
1151 # for the system default hardcoded library path. In most cases,
1152 # this is /usr/lib:/lib, but when the MPI compilers are used
1153 # the location of the communication and MPI libs are included too.
1154 # If we don't find anything, use the default library path according
1155 # to the aix ld manual.
1156 # Store the results from the different compilers for each TAGNAME.
1157 # Allow to override them for all tags through lt_cv_aix_libpath.
1158 m4_defun([_LT_SYS_MODULE_PATH_AIX],
1159 [m4_require([_LT_DECL_SED])dnl
1160 if test set = "${lt_cv_aix_libpath+set}"; then
1161 aix_libpath=$lt_cv_aix_libpath
1163 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1164 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1165 lt_aix_libpath_sed='[
1166 /Import File Strings/,/^$/ {
1168 s/^0 *\([^ ]*\) *$/\1/
1172 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1173 # Check for a 64-bit object if we didn't find anything.
1174 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1175 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1177 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1178 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
1181 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1183 ])# _LT_SYS_MODULE_PATH_AIX
1186 # _LT_SHELL_INIT(ARG)
1187 # -------------------
1188 m4_define([_LT_SHELL_INIT],
1189 [m4_divert_text([M4SH-INIT], [$1
1190 ])])# _LT_SHELL_INIT
1194 # _LT_PROG_ECHO_BACKSLASH
1195 # -----------------------
1196 # Find how we can fake an echo command that does not interpret backslash.
1197 # In particular, with Autoconf 2.60 or later we add some code to the start
1198 # of the generated configure script that will find a shell with a builtin
1199 # printf (that we can use as an echo command).
1200 m4_defun([_LT_PROG_ECHO_BACKSLASH],
1201 [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1202 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1203 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1205 AC_MSG_CHECKING([how to print strings])
1206 # Test print first, because it will be a builtin if present.
1207 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1208 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1210 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1213 # Use this function as a fallback that always works.
1214 func_fallback_echo ()
1216 eval 'cat <<_LTECHO_EOF
1220 ECHO='func_fallback_echo'
1223 # func_echo_all arg...
1224 # Invoke $ECHO with all args, space-separated.
1231 printf*) AC_MSG_RESULT([printf]) ;;
1232 print*) AC_MSG_RESULT([print -r]) ;;
1233 *) AC_MSG_RESULT([cat]) ;;
1236 m4_ifdef([_AS_DETECT_SUGGESTED],
1237 [_AS_DETECT_SUGGESTED([
1238 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1239 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1240 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1241 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1242 PATH=/empty FPATH=/empty; export PATH FPATH
1243 test "X`printf %s $ECHO`" = "X$ECHO" \
1244 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1246 _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1247 _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1248 ])# _LT_PROG_ECHO_BACKSLASH
1253 AC_DEFUN([_LT_WITH_SYSROOT],
1254 [AC_MSG_CHECKING([for sysroot])
1255 AC_ARG_WITH([sysroot],
1256 [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
1257 [Search for dependent libraries within DIR (or the compiler's sysroot
1258 if not specified).])],
1259 [], [with_sysroot=no])
1261 dnl lt_sysroot will always be passed unquoted. We quote it here
1262 dnl in case the user passed a directory name.
1264 case $with_sysroot in #(
1266 if test yes = "$GCC"; then
1267 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1271 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1276 AC_MSG_RESULT([$with_sysroot])
1277 AC_MSG_ERROR([The sysroot must be an absolute path.])
1281 AC_MSG_RESULT([${lt_sysroot:-no}])
1282 _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1283 [dependent libraries, and where our libraries should be installed.])])
1287 m4_defun([_LT_ENABLE_LOCK],
1288 [AC_ARG_ENABLE([libtool-lock],
1289 [AS_HELP_STRING([--disable-libtool-lock],
1290 [avoid locking (might break parallel builds)])])
1291 test no = "$enable_libtool_lock" || enable_libtool_lock=yes
1293 # Some flags need to be propagated to the compiler or linker for good
1297 # Find out what ABI is being produced by ac_compile, and set mode
1298 # options accordingly.
1299 echo 'int i;' > conftest.$ac_ext
1300 if AC_TRY_EVAL(ac_compile); then
1301 case `/usr/bin/file conftest.$ac_objext` in
1313 # Find out what ABI is being produced by ac_compile, and set linker
1314 # options accordingly.
1315 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1316 if AC_TRY_EVAL(ac_compile); then
1317 if test yes = "$lt_cv_prog_gnu_ld"; then
1318 case `/usr/bin/file conftest.$ac_objext` in
1320 LD="${LD-ld} -melf32bsmip"
1323 LD="${LD-ld} -melf32bmipn32"
1326 LD="${LD-ld} -melf64bmip"
1330 case `/usr/bin/file conftest.$ac_objext` in
1347 # Find out what ABI is being produced by ac_compile, and set linker
1348 # options accordingly.
1349 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1350 if AC_TRY_EVAL(ac_compile); then
1352 case `/usr/bin/file conftest.$ac_objext` in
1360 case `/usr/bin/file conftest.$ac_objext` in
1362 emul="${emul}btsmip"
1365 emul="${emul}ltsmip"
1368 case `/usr/bin/file conftest.$ac_objext` in
1373 LD="${LD-ld} -m $emul"
1378 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
1379 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1380 # Find out what ABI is being produced by ac_compile, and set linker
1381 # options accordingly. Note that the listed cases only cover the
1382 # situations where additional linker options are needed (such as when
1383 # doing 32-bit compilation for a host where ld defaults to 64-bit, or
1384 # vice versa); the common cases where no linker options are needed do
1385 # not appear in the list.
1386 echo 'int i;' > conftest.$ac_ext
1387 if AC_TRY_EVAL(ac_compile); then
1388 case `/usr/bin/file conftest.o` in
1391 x86_64-*kfreebsd*-gnu)
1392 LD="${LD-ld} -m elf_i386_fbsd"
1395 case `/usr/bin/file conftest.o` in
1397 LD="${LD-ld} -m elf32_x86_64"
1400 LD="${LD-ld} -m elf_i386"
1404 powerpc64le-*linux*)
1405 LD="${LD-ld} -m elf32lppclinux"
1408 LD="${LD-ld} -m elf32ppclinux"
1411 LD="${LD-ld} -m elf_s390"
1414 LD="${LD-ld} -m elf32_sparc"
1420 x86_64-*kfreebsd*-gnu)
1421 LD="${LD-ld} -m elf_x86_64_fbsd"
1424 LD="${LD-ld} -m elf_x86_64"
1427 LD="${LD-ld} -m elf64lppc"
1430 LD="${LD-ld} -m elf64ppc"
1432 s390*-*linux*|s390*-*tpf*)
1433 LD="${LD-ld} -m elf64_s390"
1436 LD="${LD-ld} -m elf64_sparc"
1446 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1448 CFLAGS="$CFLAGS -belf"
1449 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1451 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1453 if test yes != "$lt_cv_cc_needs_belf"; then
1454 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1459 # Find out what ABI is being produced by ac_compile, and set linker
1460 # options accordingly.
1461 echo 'int i;' > conftest.$ac_ext
1462 if AC_TRY_EVAL(ac_compile); then
1463 case `/usr/bin/file conftest.o` in
1465 case $lt_cv_prog_gnu_ld in
1468 i?86-*-solaris*|x86_64-*-solaris*)
1469 LD="${LD-ld} -m elf_x86_64"
1472 LD="${LD-ld} -m elf64_sparc"
1475 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1476 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1481 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1493 need_locks=$enable_libtool_lock
1499 m4_defun([_LT_PROG_AR],
1500 [AC_CHECK_TOOLS(AR, [ar], false)
1503 _LT_DECL([], [AR], [1], [The archiver])
1504 _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1506 AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1507 [lt_cv_ar_at_file=no
1508 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1509 [echo conftest.$ac_objext > conftest.lst
1510 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1511 AC_TRY_EVAL([lt_ar_try])
1512 if test 0 -eq "$ac_status"; then
1513 # Ensure the archiver fails upon bogus file names.
1514 rm -f conftest.$ac_objext libconftest.a
1515 AC_TRY_EVAL([lt_ar_try])
1516 if test 0 -ne "$ac_status"; then
1520 rm -f conftest.* libconftest.a
1524 if test no = "$lt_cv_ar_at_file"; then
1527 archiver_list_spec=$lt_cv_ar_at_file
1529 _LT_DECL([], [archiver_list_spec], [1],
1530 [How to feed a file listing to the archiver])
1534 # _LT_CMD_OLD_ARCHIVE
1535 # -------------------
1536 m4_defun([_LT_CMD_OLD_ARCHIVE],
1539 AC_CHECK_TOOL(STRIP, strip, :)
1540 test -z "$STRIP" && STRIP=:
1541 _LT_DECL([], [STRIP], [1], [A symbol stripping program])
1543 AC_CHECK_TOOL(RANLIB, ranlib, :)
1544 test -z "$RANLIB" && RANLIB=:
1545 _LT_DECL([], [RANLIB], [1],
1546 [Commands used to install an old-style archive])
1548 # Determine commands to create old-style static archives.
1549 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1550 old_postinstall_cmds='chmod 644 $oldlib'
1551 old_postuninstall_cmds=
1553 if test -n "$RANLIB"; then
1556 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
1559 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
1562 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
1567 lock_old_archive_extraction=yes ;;
1569 lock_old_archive_extraction=no ;;
1571 _LT_DECL([], [old_postinstall_cmds], [2])
1572 _LT_DECL([], [old_postuninstall_cmds], [2])
1573 _LT_TAGDECL([], [old_archive_cmds], [2],
1574 [Commands used to build an old-style archive])
1575 _LT_DECL([], [lock_old_archive_extraction], [0],
1576 [Whether to use a lock for old archive extraction])
1577 ])# _LT_CMD_OLD_ARCHIVE
1580 # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1581 # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1582 # ----------------------------------------------------------------
1583 # Check whether the given compiler option works
1584 AC_DEFUN([_LT_COMPILER_OPTION],
1585 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1586 m4_require([_LT_DECL_SED])dnl
1587 AC_CACHE_CHECK([$1], [$2],
1589 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1590 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1591 lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment
1592 # Insert the option either (1) after the last *FLAGS variable, or
1593 # (2) before a word containing "conftest.", or (3) at the end.
1594 # Note that $ac_compile itself does not contain backslashes and begins
1595 # with a dollar sign (not a hyphen), so the echo should work correctly.
1596 # The option is referenced via a variable to avoid confusing sed.
1597 lt_compile=`echo "$ac_compile" | $SED \
1598 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1599 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1600 -e 's:$: $lt_compiler_flag:'`
1601 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1602 (eval "$lt_compile" 2>conftest.err)
1604 cat conftest.err >&AS_MESSAGE_LOG_FD
1605 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1606 if (exit $ac_status) && test -s "$ac_outfile"; then
1607 # The compiler can only warn and ignore the option if not recognized
1608 # So say no if there are warnings other than the usual output.
1609 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1610 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1611 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1618 if test yes = "[$]$2"; then
1619 m4_if([$5], , :, [$5])
1621 m4_if([$6], , :, [$6])
1623 ])# _LT_COMPILER_OPTION
1626 AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1627 dnl aclocal-1.4 backwards compatibility:
1628 dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1631 # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1632 # [ACTION-SUCCESS], [ACTION-FAILURE])
1633 # ----------------------------------------------------
1634 # Check whether the given linker option works
1635 AC_DEFUN([_LT_LINKER_OPTION],
1636 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1637 m4_require([_LT_DECL_SED])dnl
1638 AC_CACHE_CHECK([$1], [$2],
1640 save_LDFLAGS=$LDFLAGS
1641 LDFLAGS="$LDFLAGS $3"
1642 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1643 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1644 # The linker can only warn and ignore the option if not recognized
1645 # So say no if there are warnings
1646 if test -s conftest.err; then
1647 # Append any errors to the config.log.
1648 cat conftest.err 1>&AS_MESSAGE_LOG_FD
1649 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1650 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1651 if diff conftest.exp conftest.er2 >/dev/null; then
1659 LDFLAGS=$save_LDFLAGS
1662 if test yes = "[$]$2"; then
1663 m4_if([$4], , :, [$4])
1665 m4_if([$5], , :, [$5])
1667 ])# _LT_LINKER_OPTION
1670 AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1671 dnl aclocal-1.4 backwards compatibility:
1672 dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1677 AC_DEFUN([LT_CMD_MAX_LEN],
1678 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
1679 # find the maximum length of command line arguments
1680 AC_MSG_CHECKING([the maximum length of command line arguments])
1681 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1687 # On DJGPP, this test can blow up pretty badly due to problems in libc
1688 # (any single argument exceeding 2000 bytes causes a buffer overrun
1689 # during glob expansion). Even if it were fixed, the result of this
1690 # check would be larger than it should be.
1691 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1695 # Under GNU Hurd, this test is not required because there is
1696 # no limit to the length of command line arguments.
1697 # Libtool will interpret -1 as no limit whatsoever
1698 lt_cv_sys_max_cmd_len=-1;
1701 cygwin* | mingw* | cegcc*)
1702 # On Win9x/ME, this test blows up -- it succeeds, but takes
1703 # about 5 minutes as the teststring grows exponentially.
1704 # Worse, since 9x/ME are not pre-emptively multitasking,
1705 # you end up with a "frozen" computer, even though with patience
1706 # the test eventually succeeds (with a max line length of 256k).
1707 # Instead, let's just punt: use the minimum linelength reported by
1708 # all of the supported platforms: 8192 (on NT/2K/XP).
1709 lt_cv_sys_max_cmd_len=8192;
1713 # On MiNT this can take a long time and run out of memory.
1714 lt_cv_sys_max_cmd_len=8192;
1718 # On AmigaOS with pdksh, this test takes hours, literally.
1719 # So we just punt and use a minimum line length of 8192.
1720 lt_cv_sys_max_cmd_len=8192;
1723 bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
1724 # This has been around since 386BSD, at least. Likely further.
1725 if test -x /sbin/sysctl; then
1726 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1727 elif test -x /usr/sbin/sysctl; then
1728 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1730 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1732 # And add a safety zone
1733 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1734 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1738 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1739 lt_cv_sys_max_cmd_len=196608
1743 # The test takes a long time on OS/2.
1744 lt_cv_sys_max_cmd_len=8192
1748 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1749 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1750 # nice to cause kernel panics so lets avoid the loop below.
1751 # First set a reasonable default.
1752 lt_cv_sys_max_cmd_len=16384
1754 if test -x /sbin/sysconfig; then
1755 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1756 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1761 lt_cv_sys_max_cmd_len=102400
1763 sysv5* | sco5v6* | sysv4.2uw2*)
1764 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1765 if test -n "$kargmax"; then
1766 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1768 lt_cv_sys_max_cmd_len=32768
1772 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1773 if test -n "$lt_cv_sys_max_cmd_len" && \
1774 test undefined != "$lt_cv_sys_max_cmd_len"; then
1775 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1776 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1778 # Make teststring a little bigger before we do anything with it.
1779 # a 1K string should be a reasonable start.
1780 for i in 1 2 3 4 5 6 7 8; do
1781 teststring=$teststring$teststring
1783 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1784 # If test is not a shell built-in, we'll probably end up computing a
1785 # maximum length that is only half of the actual maximum length, but
1787 while { test X`env echo "$teststring$teststring" 2>/dev/null` \
1788 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1789 test 17 != "$i" # 1/2 MB should be enough
1792 teststring=$teststring$teststring
1794 # Only check the string length outside the loop.
1795 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1797 # Add a significant safety factor because C++ compilers can tack on
1798 # massive amounts of additional arguments before passing them to the
1799 # linker. It appears as though 1/2 is a usable value.
1800 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1805 if test -n "$lt_cv_sys_max_cmd_len"; then
1806 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1810 max_cmd_len=$lt_cv_sys_max_cmd_len
1811 _LT_DECL([], [max_cmd_len], [0],
1812 [What is the maximum length of a command?])
1816 AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1817 dnl aclocal-1.4 backwards compatibility:
1818 dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1823 m4_defun([_LT_HEADER_DLFCN],
1824 [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1825 ])# _LT_HEADER_DLFCN
1828 # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1829 # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1830 # ----------------------------------------------------------------
1831 m4_defun([_LT_TRY_DLOPEN_SELF],
1832 [m4_require([_LT_HEADER_DLFCN])dnl
1833 if test yes = "$cross_compiling"; then :
1836 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1837 lt_status=$lt_dlunknown
1838 cat > conftest.$ac_ext <<_LT_EOF
1839 [#line $LINENO "configure"
1840 #include "confdefs.h"
1849 # define LT_DLGLOBAL RTLD_GLOBAL
1852 # define LT_DLGLOBAL DL_GLOBAL
1854 # define LT_DLGLOBAL 0
1858 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1859 find out it does not work in some platform. */
1860 #ifndef LT_DLLAZY_OR_NOW
1862 # define LT_DLLAZY_OR_NOW RTLD_LAZY
1865 # define LT_DLLAZY_OR_NOW DL_LAZY
1868 # define LT_DLLAZY_OR_NOW RTLD_NOW
1871 # define LT_DLLAZY_OR_NOW DL_NOW
1873 # define LT_DLLAZY_OR_NOW 0
1880 /* When -fvisibility=hidden is used, assume the code has been annotated
1881 correspondingly for the symbols needed. */
1882 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1883 int fnord () __attribute__((visibility("default")));
1886 int fnord () { return 42; }
1889 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1890 int status = $lt_dlunknown;
1894 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1897 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1898 else puts (dlerror ());
1900 /* dlclose (self); */
1908 if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
1909 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1912 x$lt_dlno_uscore) $1 ;;
1913 x$lt_dlneed_uscore) $2 ;;
1914 x$lt_dlunknown|x*) $3 ;;
1917 # compilation failed
1922 ])# _LT_TRY_DLOPEN_SELF
1925 # LT_SYS_DLOPEN_SELF
1926 # ------------------
1927 AC_DEFUN([LT_SYS_DLOPEN_SELF],
1928 [m4_require([_LT_HEADER_DLFCN])dnl
1929 if test yes != "$enable_dlopen"; then
1930 enable_dlopen=unknown
1931 enable_dlopen_self=unknown
1932 enable_dlopen_self_static=unknown
1939 lt_cv_dlopen=load_add_on
1941 lt_cv_dlopen_self=yes
1944 mingw* | pw32* | cegcc*)
1945 lt_cv_dlopen=LoadLibrary
1955 # if libdl is installed we need to link against it
1956 AC_CHECK_LIB([dl], [dlopen],
1957 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
1960 lt_cv_dlopen_self=yes
1965 # Don't try to run any link tests for TPF. We know it's impossible
1966 # because TPF is a cross-compiler, and we know how we open DSOs.
1969 lt_cv_dlopen_self=no
1973 AC_CHECK_FUNC([shl_load],
1974 [lt_cv_dlopen=shl_load],
1975 [AC_CHECK_LIB([dld], [shl_load],
1976 [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
1977 [AC_CHECK_FUNC([dlopen],
1978 [lt_cv_dlopen=dlopen],
1979 [AC_CHECK_LIB([dl], [dlopen],
1980 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
1981 [AC_CHECK_LIB([svld], [dlopen],
1982 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
1983 [AC_CHECK_LIB([dld], [dld_link],
1984 [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
1993 if test no = "$lt_cv_dlopen"; then
1999 case $lt_cv_dlopen in
2001 save_CPPFLAGS=$CPPFLAGS
2002 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
2004 save_LDFLAGS=$LDFLAGS
2005 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2008 LIBS="$lt_cv_dlopen_libs $LIBS"
2010 AC_CACHE_CHECK([whether a program can dlopen itself],
2011 lt_cv_dlopen_self, [dnl
2012 _LT_TRY_DLOPEN_SELF(
2013 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
2014 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
2017 if test yes = "$lt_cv_dlopen_self"; then
2018 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
2019 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
2020 lt_cv_dlopen_self_static, [dnl
2021 _LT_TRY_DLOPEN_SELF(
2022 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
2023 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
2027 CPPFLAGS=$save_CPPFLAGS
2028 LDFLAGS=$save_LDFLAGS
2033 case $lt_cv_dlopen_self in
2034 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
2035 *) enable_dlopen_self=unknown ;;
2038 case $lt_cv_dlopen_self_static in
2039 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
2040 *) enable_dlopen_self_static=unknown ;;
2043 _LT_DECL([dlopen_support], [enable_dlopen], [0],
2044 [Whether dlopen is supported])
2045 _LT_DECL([dlopen_self], [enable_dlopen_self], [0],
2046 [Whether dlopen of programs is supported])
2047 _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
2048 [Whether dlopen of statically linked programs is supported])
2049 ])# LT_SYS_DLOPEN_SELF
2052 AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
2053 dnl aclocal-1.4 backwards compatibility:
2054 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
2057 # _LT_COMPILER_C_O([TAGNAME])
2058 # ---------------------------
2059 # Check to see if options -c and -o are simultaneously supported by compiler.
2060 # This macro does not hard code the compiler like AC_PROG_CC_C_O.
2061 m4_defun([_LT_COMPILER_C_O],
2062 [m4_require([_LT_DECL_SED])dnl
2063 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2064 m4_require([_LT_TAG_COMPILER])dnl
2065 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
2066 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
2067 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
2068 $RM -r conftest 2>/dev/null
2072 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2074 lt_compiler_flag="-o out/conftest2.$ac_objext"
2075 # Insert the option either (1) after the last *FLAGS variable, or
2076 # (2) before a word containing "conftest.", or (3) at the end.
2077 # Note that $ac_compile itself does not contain backslashes and begins
2078 # with a dollar sign (not a hyphen), so the echo should work correctly.
2079 lt_compile=`echo "$ac_compile" | $SED \
2080 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2081 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2082 -e 's:$: $lt_compiler_flag:'`
2083 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2084 (eval "$lt_compile" 2>out/conftest.err)
2086 cat out/conftest.err >&AS_MESSAGE_LOG_FD
2087 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2088 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2090 # The compiler can only warn and ignore the option if not recognized
2091 # So say no if there are warnings
2092 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2093 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2094 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2095 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2098 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2100 # SGI C++ compiler will create directory out/ii_files/ for
2101 # template instantiation
2102 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2103 $RM out/* && rmdir out
2108 _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2109 [Does compiler simultaneously support -c and -o options?])
2110 ])# _LT_COMPILER_C_O
2113 # _LT_COMPILER_FILE_LOCKS([TAGNAME])
2114 # ----------------------------------
2115 # Check to see if we can do hard links to lock some files if needed
2116 m4_defun([_LT_COMPILER_FILE_LOCKS],
2117 [m4_require([_LT_ENABLE_LOCK])dnl
2118 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2119 _LT_COMPILER_C_O([$1])
2121 hard_links=nottested
2122 if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
2123 # do not overwrite the value of need_locks provided by the user
2124 AC_MSG_CHECKING([if we can lock with hard links])
2127 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2129 ln conftest.a conftest.b 2>&5 || hard_links=no
2130 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2131 AC_MSG_RESULT([$hard_links])
2132 if test no = "$hard_links"; then
2133 AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
2139 _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2140 ])# _LT_COMPILER_FILE_LOCKS
2145 m4_defun([_LT_CHECK_OBJDIR],
2146 [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2147 [rm -f .libs 2>/dev/null
2148 mkdir .libs 2>/dev/null
2149 if test -d .libs; then
2152 # MS-DOS does not allow filenames that begin with a dot.
2155 rmdir .libs 2>/dev/null])
2156 objdir=$lt_cv_objdir
2157 _LT_DECL([], [objdir], [0],
2158 [The name of the directory that contains temporary libtool files])dnl
2159 m4_pattern_allow([LT_OBJDIR])dnl
2160 AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
2161 [Define to the sub-directory where libtool stores uninstalled libraries.])
2162 ])# _LT_CHECK_OBJDIR
2165 # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2166 # --------------------------------------
2167 # Check hardcoding attributes.
2168 m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2169 [AC_MSG_CHECKING([how to hardcode library paths into programs])
2170 _LT_TAGVAR(hardcode_action, $1)=
2171 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2172 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2173 test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
2175 # We can hardcode non-existent directories.
2176 if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
2177 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2178 # have to relink, otherwise we might link with an installed library
2179 # when we should be linking with a yet-to-be-installed one
2180 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
2181 test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
2182 # Linking always hardcodes the temporary library directory.
2183 _LT_TAGVAR(hardcode_action, $1)=relink
2185 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2186 _LT_TAGVAR(hardcode_action, $1)=immediate
2189 # We cannot hardcode anything, or else we can only hardcode existing
2191 _LT_TAGVAR(hardcode_action, $1)=unsupported
2193 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2195 if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
2196 test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
2197 # Fast installation is not supported
2198 enable_fast_install=no
2199 elif test yes = "$shlibpath_overrides_runpath" ||
2200 test no = "$enable_shared"; then
2201 # Fast installation is not necessary
2202 enable_fast_install=needless
2204 _LT_TAGDECL([], [hardcode_action], [0],
2205 [How to hardcode a shared library path into an executable])
2206 ])# _LT_LINKER_HARDCODE_LIBPATH
2211 m4_defun([_LT_CMD_STRIPLIB],
2212 [m4_require([_LT_DECL_EGREP])
2215 AC_MSG_CHECKING([whether stripping libraries is possible])
2216 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2217 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2218 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2219 AC_MSG_RESULT([yes])
2221 # FIXME - insert some real tests, host_os isn't really good enough
2224 if test -n "$STRIP"; then
2225 striplib="$STRIP -x"
2226 old_striplib="$STRIP -S"
2227 AC_MSG_RESULT([yes])
2237 _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2238 _LT_DECL([], [striplib], [1])
2239 ])# _LT_CMD_STRIPLIB
2242 # _LT_PREPARE_MUNGE_PATH_LIST
2243 # ---------------------------
2244 # Make sure func_munge_path_list() is defined correctly.
2245 m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
2246 [[# func_munge_path_list VARIABLE PATH
2247 # -----------------------------------
2248 # VARIABLE is name of variable containing _space_ separated list of
2249 # directories to be munged by the contents of PATH, which is string
2252 # string "DIR[ DIR]" will be prepended to VARIABLE
2254 # string "DIR[ DIR]" will be appended to VARIABLE
2255 # "DIRP[:DIRP]::[DIRA:]DIRA"
2256 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string
2257 # "DIRA[ DIRA]" will be appended to VARIABLE
2259 # VARIABLE will be replaced by "DIR[ DIR]"
2260 func_munge_path_list ()
2266 eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
2269 eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
2272 eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
2273 eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
2276 eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
2280 ]])# _LT_PREPARE_PATH_LIST
2283 # _LT_SYS_DYNAMIC_LINKER([TAG])
2284 # -----------------------------
2285 # PORTME Fill in your ld.so characteristics
2286 m4_defun([_LT_SYS_DYNAMIC_LINKER],
2287 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
2288 m4_require([_LT_DECL_EGREP])dnl
2289 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2290 m4_require([_LT_DECL_OBJDUMP])dnl
2291 m4_require([_LT_DECL_SED])dnl
2292 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2293 m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
2294 AC_MSG_CHECKING([dynamic linker characteristics])
2297 if test yes = "$GCC"; then
2299 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
2300 *) lt_awk_arg='/^libraries:/' ;;
2303 mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
2304 *) lt_sed_strip_eq='s|=/|/|g' ;;
2306 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2307 case $lt_search_path_spec in
2309 # if the path contains ";" then we assume it to be the separator
2310 # otherwise default to the standard path separator (i.e. ":") - it is
2311 # assumed that no part of a normal pathname contains ";" but that should
2312 # okay in the real world where ";" in dirpaths is itself problematic.
2313 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2316 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2319 # Ok, now we have the path, separated by spaces, we can step through it
2320 # and add multilib dir if necessary...
2321 lt_tmp_lt_search_path_spec=
2322 lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2323 # ...but if some path component already ends with the multilib dir we assume
2324 # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
2325 case "$lt_multi_os_dir; $lt_search_path_spec " in
2326 "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
2330 for lt_sys_path in $lt_search_path_spec; do
2331 if test -d "$lt_sys_path$lt_multi_os_dir"; then
2332 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
2333 elif test -n "$lt_multi_os_dir"; then
2334 test -d "$lt_sys_path" && \
2335 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2338 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2339 BEGIN {RS = " "; FS = "/|\n";} {
2342 for (lt_i = NF; lt_i > 0; lt_i--) {
2343 if ($lt_i != "" && $lt_i != ".") {
2344 if ($lt_i == "..") {
2347 if (lt_count == 0) {
2348 lt_foo = "/" $lt_i lt_foo;
2355 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2356 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2358 # AWK program above erroneously prepends '/' to C:/dos/paths
2361 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2362 $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
2364 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2366 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2369 libname_spec='lib$name'
2377 shlibpath_overrides_runpath=unknown
2379 dynamic_linker="$host_os ld.so"
2380 sys_lib_dlsearch_path_spec="/lib /usr/lib"
2381 need_lib_prefix=unknown
2382 hardcode_into_libs=no
2384 # when you set need_version to no, make sure it does not cause -set_version
2385 # flags to be left without arguments
2386 need_version=unknown
2388 AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
2389 [User-defined run-time library search path.])
2393 version_type=linux # correct to gnu/linux during the next big refactor
2394 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
2395 shlibpath_var=LIBPATH
2397 # AIX 3 has no versioning support, so we append a major version to the name.
2398 soname_spec='$libname$release$shared_ext$major'
2402 version_type=linux # correct to gnu/linux during the next big refactor
2405 hardcode_into_libs=yes
2406 if test ia64 = "$host_cpu"; then
2407 # AIX 5 supports IA64
2408 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
2409 shlibpath_var=LD_LIBRARY_PATH
2411 # With GCC up to 2.95.x, collect2 would create an import file
2412 # for dependence libraries. The import file would start with
2413 # the line '#! .'. This would cause the generated library to
2414 # depend on '.', always an invalid library. This was fixed in
2415 # development snapshots of GCC prior to 3.0.
2417 aix4 | aix4.[[01]] | aix4.[[01]].*)
2418 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2420 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
2427 # Using Import Files as archive members, it is possible to support
2428 # filename-based versioning of shared library archives on AIX. While
2429 # this would work for both with and without runtime linking, it will
2430 # prevent static linking of such archives. So we do filename-based
2431 # shared library versioning with .so extension only, which is used
2432 # when both runtime linking and shared linking is enabled.
2433 # Unfortunately, runtime linking may impact performance, so we do
2434 # not want this to be the default eventually. Also, we use the
2435 # versioned .so libs for executables only if there is the -brtl
2436 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
2437 # To allow for filename-based versioning support, we need to create
2438 # libNAME.so.V as an archive file, containing:
2439 # *) an Import File, referring to the versioned filename of the
2440 # archive as well as the shared archive member, telling the
2441 # bitwidth (32 or 64) of that shared object, and providing the
2442 # list of exported symbols of that shared object, eventually
2443 # decorated with the 'weak' keyword
2444 # *) the shared object with the F_LOADONLY flag set, to really avoid
2445 # it being seen by the linker.
2446 # At run time we better use the real file rather than another symlink,
2447 # but for link time we create the symlink libNAME.so -> libNAME.so.V
2449 case $with_aix_soname,$aix_use_runtimelinking in
2450 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
2451 # soname into executable. Probably we can add versioning support to
2452 # collect2, so additional links can be useful in future.
2453 aix,yes) # traditional libtool
2454 dynamic_linker='AIX unversionable lib.so'
2455 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2456 # instead of lib<name>.a to let people know that these are not
2457 # typical AIX shared libraries.
2458 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2460 aix,no) # traditional AIX only
2461 dynamic_linker='AIX lib.a[(]lib.so.V[)]'
2462 # We preserve .a as extension for shared libraries through AIX4.2
2463 # and later when we are not doing run time linking.
2464 library_names_spec='$libname$release.a $libname.a'
2465 soname_spec='$libname$release$shared_ext$major'
2467 svr4,*) # full svr4 only
2468 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
2469 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2470 # We do not specify a path in Import Files, so LIBPATH fires.
2471 shlibpath_overrides_runpath=yes
2473 *,yes) # both, prefer svr4
2474 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
2475 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2476 # unpreferred sharedlib libNAME.a needs extra handling
2477 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"'
2478 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"'
2479 # We do not specify a path in Import Files, so LIBPATH fires.
2480 shlibpath_overrides_runpath=yes
2482 *,no) # both, prefer aix
2483 dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
2484 library_names_spec='$libname$release.a $libname.a'
2485 soname_spec='$libname$release$shared_ext$major'
2486 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
2487 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)'
2488 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"'
2491 shlibpath_var=LIBPATH
2498 # Since July 2007 AmigaOS4 officially supports .so libraries.
2499 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2500 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2503 library_names_spec='$libname.ixlibrary $libname.a'
2504 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2505 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'
2511 library_names_spec='$libname$shared_ext'
2512 dynamic_linker="$host_os ld.so"
2513 shlibpath_var=LIBRARY_PATH
2517 version_type=linux # correct to gnu/linux during the next big refactor
2519 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2520 soname_spec='$libname$release$shared_ext$major'
2521 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2522 shlibpath_var=LD_LIBRARY_PATH
2523 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2524 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2525 # the default ld.so.conf also contains /usr/contrib/lib and
2526 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2527 # libtool to hard-code these into programs
2530 cygwin* | mingw* | pw32* | cegcc*)
2531 version_type=windows
2536 case $GCC,$cc_basename in
2539 library_names_spec='$libname.dll.a'
2540 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2541 postinstall_cmds='base_file=`basename \$file`~
2542 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2543 dldir=$destdir/`dirname \$dlpath`~
2544 test -d \$dldir || mkdir -p \$dldir~
2545 $install_prog $dir/$dlname \$dldir/$dlname~
2546 chmod a+x \$dldir/$dlname~
2547 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2548 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2550 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2551 dlpath=$dir/\$dldll~
2553 shlibpath_overrides_runpath=yes
2557 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2558 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2560 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2563 # MinGW DLLs use traditional 'lib' prefix
2564 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2567 # pw32 DLLs use 'pw' prefix rather than 'lib'
2568 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2571 dynamic_linker='Win32 ld.exe'
2576 libname_spec='$name'
2577 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2578 library_names_spec='$libname.dll.lib'
2582 sys_lib_search_path_spec=
2588 # Let DOS variable expansion print the short 8.3 style file name.
2589 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2590 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2593 # Convert to MSYS style.
2594 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2597 # Convert to unix form, then to dos form, then back to unix form
2598 # but this time dos style (no spaces!) so that the unix form looks
2599 # like /cygdrive/c/PROGRA~1:/cygdr...
2600 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2601 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2602 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2605 sys_lib_search_path_spec=$LIB
2606 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2607 # It is most probably a Windows format PATH.
2608 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2610 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2612 # FIXME: find the short name or the path components, as spaces are
2613 # common. (e.g. "Program Files" -> "PROGRA~1")
2617 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2618 postinstall_cmds='base_file=`basename \$file`~
2619 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2620 dldir=$destdir/`dirname \$dlpath`~
2621 test -d \$dldir || mkdir -p \$dldir~
2622 $install_prog $dir/$dlname \$dldir/$dlname'
2623 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2624 dlpath=$dir/\$dldll~
2626 shlibpath_overrides_runpath=yes
2627 dynamic_linker='Win32 link.exe'
2631 # Assume MSVC wrapper
2632 library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
2633 dynamic_linker='Win32 ld.exe'
2636 # FIXME: first we should search . and the directory the executable is in
2640 darwin* | rhapsody*)
2641 dynamic_linker="$host_os dyld"
2645 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
2646 soname_spec='$libname$release$major$shared_ext'
2647 shlibpath_overrides_runpath=yes
2648 shlibpath_var=DYLD_LIBRARY_PATH
2649 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2651 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2652 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2656 version_type=linux # correct to gnu/linux during the next big refactor
2659 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2660 soname_spec='$libname$release$shared_ext$major'
2661 shlibpath_var=LD_LIBRARY_PATH
2664 freebsd* | dragonfly*)
2665 # DragonFly does not have aout. When/if they implement a new
2666 # versioning mechanism, adjust this.
2667 if test -x /usr/bin/objformat; then
2668 objformat=`/usr/bin/objformat`
2671 freebsd[[23]].*) objformat=aout ;;
2675 version_type=freebsd-$objformat
2676 case $version_type in
2678 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2679 soname_spec='$libname$release$shared_ext$major'
2684 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2688 shlibpath_var=LD_LIBRARY_PATH
2691 shlibpath_overrides_runpath=yes
2693 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2694 shlibpath_overrides_runpath=yes
2695 hardcode_into_libs=yes
2697 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2698 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2699 shlibpath_overrides_runpath=no
2700 hardcode_into_libs=yes
2702 *) # from 4.6 on, and DragonFly
2703 shlibpath_overrides_runpath=yes
2704 hardcode_into_libs=yes
2710 version_type=linux # correct to gnu/linux during the next big refactor
2713 dynamic_linker="$host_os runtime_loader"
2714 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2715 soname_spec='$libname$release$shared_ext$major'
2716 shlibpath_var=LIBRARY_PATH
2717 shlibpath_overrides_runpath=no
2718 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2719 hardcode_into_libs=yes
2722 hpux9* | hpux10* | hpux11*)
2723 # Give a soname corresponding to the major version so that dld.sl refuses to
2724 # link against other versions.
2731 hardcode_into_libs=yes
2732 dynamic_linker="$host_os dld.so"
2733 shlibpath_var=LD_LIBRARY_PATH
2734 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2735 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2736 soname_spec='$libname$release$shared_ext$major'
2737 if test 32 = "$HPUX_IA64_MODE"; then
2738 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2739 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
2741 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2742 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
2747 hardcode_into_libs=yes
2748 dynamic_linker="$host_os dld.sl"
2749 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2750 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2751 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2752 soname_spec='$libname$release$shared_ext$major'
2753 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2754 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2758 dynamic_linker="$host_os dld.sl"
2759 shlibpath_var=SHLIB_PATH
2760 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2761 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2762 soname_spec='$libname$release$shared_ext$major'
2765 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2766 postinstall_cmds='chmod 555 $lib'
2767 # or fails outright, so override atomically:
2768 install_override_mode=555
2772 version_type=linux # correct to gnu/linux during the next big refactor
2775 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2776 soname_spec='$libname$release$shared_ext$major'
2777 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2778 shlibpath_var=LD_LIBRARY_PATH
2779 shlibpath_overrides_runpath=no
2780 hardcode_into_libs=yes
2783 irix5* | irix6* | nonstopux*)
2785 nonstopux*) version_type=nonstopux ;;
2787 if test yes = "$lt_cv_prog_gnu_ld"; then
2788 version_type=linux # correct to gnu/linux during the next big refactor
2795 soname_spec='$libname$release$shared_ext$major'
2796 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
2798 irix5* | nonstopux*)
2802 case $LD in # libtool.m4 will add one of these switches to LD
2803 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2804 libsuff= shlibsuff= libmagic=32-bit;;
2805 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2806 libsuff=32 shlibsuff=N32 libmagic=N32;;
2807 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2808 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2809 *) libsuff= shlibsuff= libmagic=never-match;;
2813 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2814 shlibpath_overrides_runpath=no
2815 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
2816 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
2817 hardcode_into_libs=yes
2820 # No shared lib support for Linux oldld, aout, or coff.
2821 linux*oldld* | linux*aout* | linux*coff*)
2826 version_type=none # Android doesn't support versioned libraries.
2829 library_names_spec='$libname$release$shared_ext'
2830 soname_spec='$libname$release$shared_ext'
2832 shlibpath_var=LD_LIBRARY_PATH
2833 shlibpath_overrides_runpath=yes
2835 # This implies no fast_install, which is unacceptable.
2836 # Some rework will be needed to allow for fast_install
2837 # before this can be enabled.
2838 hardcode_into_libs=yes
2840 dynamic_linker='Android linker'
2841 # Don't embed -rpath directories since the linker doesn't support them.
2842 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2845 # This must be glibc/ELF.
2846 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
2847 version_type=linux # correct to gnu/linux during the next big refactor
2850 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2851 soname_spec='$libname$release$shared_ext$major'
2852 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2853 shlibpath_var=LD_LIBRARY_PATH
2854 shlibpath_overrides_runpath=no
2856 # Some binutils ld are patched to set DT_RUNPATH
2857 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2858 [lt_cv_shlibpath_overrides_runpath=no
2859 save_LDFLAGS=$LDFLAGS
2861 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2862 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2863 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2864 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2865 [lt_cv_shlibpath_overrides_runpath=yes])])
2866 LDFLAGS=$save_LDFLAGS
2869 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2871 # This implies no fast_install, which is unacceptable.
2872 # Some rework will be needed to allow for fast_install
2873 # before this can be enabled.
2874 hardcode_into_libs=yes
2876 # Add ABI-specific directories to the system library path.
2877 sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
2879 # Ideally, we could use ldconfig to report *all* directores which are
2880 # searched for libraries, however this is still not possible. Aside from not
2881 # being certain /sbin/ldconfig is available, command
2882 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
2883 # even though it is searched at run-time. Try to do the best guess by
2884 # appending ld.so.conf contents (and includes) to the search path.
2885 if test -f /etc/ld.so.conf; then
2886 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' ' '`
2887 sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
2890 # We used to test for /lib/ld.so.1 and disable shared libraries on
2891 # powerpc, because MkLinux only supported shared libraries with the
2892 # GNU dynamic linker. Since this was broken with cross compilers,
2893 # most powerpc-linux boxes support dynamic linking these days and
2894 # people can always --disable-shared, the test was removed, and we
2895 # assume the GNU/Linux dynamic linker is in use.
2896 dynamic_linker='GNU/Linux ld.so'
2903 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2904 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2905 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2906 dynamic_linker='NetBSD (a.out) ld.so'
2908 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2909 soname_spec='$libname$release$shared_ext$major'
2910 dynamic_linker='NetBSD ld.elf_so'
2912 shlibpath_var=LD_LIBRARY_PATH
2913 shlibpath_overrides_runpath=yes
2914 hardcode_into_libs=yes
2918 version_type=linux # correct to gnu/linux during the next big refactor
2919 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2920 shlibpath_var=LD_LIBRARY_PATH
2921 shlibpath_overrides_runpath=yes
2928 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2929 soname_spec='$libname$release$shared_ext$major'
2930 shlibpath_var=LD_LIBRARY_PATH
2931 shlibpath_overrides_runpath=no
2932 hardcode_into_libs=yes
2933 dynamic_linker='ldqnx.so'
2938 sys_lib_dlsearch_path_spec=/usr/lib
2940 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
2945 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2946 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2947 shlibpath_var=LD_LIBRARY_PATH
2948 shlibpath_overrides_runpath=yes
2952 libname_spec='$name'
2953 version_type=windows
2957 # OS/2 can only load a DLL with a base name of 8 characters or less.
2958 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
2959 v=$($ECHO $release$versuffix | tr -d .-);
2960 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
2961 $ECHO $n$v`$shared_ext'
2962 library_names_spec='${libname}_dll.$libext'
2963 dynamic_linker='OS/2 ld.exe'
2964 shlibpath_var=BEGINLIBPATH
2965 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2966 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2967 postinstall_cmds='base_file=`basename \$file`~
2968 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
2969 dldir=$destdir/`dirname \$dlpath`~
2970 test -d \$dldir || mkdir -p \$dldir~
2971 $install_prog $dir/$dlname \$dldir/$dlname~
2972 chmod a+x \$dldir/$dlname~
2973 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2974 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2976 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
2977 dlpath=$dir/\$dldll~
2981 osf3* | osf4* | osf5*)
2985 soname_spec='$libname$release$shared_ext$major'
2986 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2987 shlibpath_var=LD_LIBRARY_PATH
2988 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2989 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2997 version_type=linux # correct to gnu/linux during the next big refactor
3000 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3001 soname_spec='$libname$release$shared_ext$major'
3002 shlibpath_var=LD_LIBRARY_PATH
3003 shlibpath_overrides_runpath=yes
3004 hardcode_into_libs=yes
3005 # ldd complains unless libraries are executable
3006 postinstall_cmds='chmod +x $lib'
3011 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
3012 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
3013 shlibpath_var=LD_LIBRARY_PATH
3014 shlibpath_overrides_runpath=yes
3015 if test yes = "$with_gnu_ld"; then
3022 version_type=linux # correct to gnu/linux during the next big refactor
3023 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3024 soname_spec='$libname$release$shared_ext$major'
3025 shlibpath_var=LD_LIBRARY_PATH
3026 case $host_vendor in
3028 shlibpath_overrides_runpath=no
3030 runpath_var=LD_RUN_PATH
3038 shlibpath_overrides_runpath=no
3039 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
3045 if test -d /usr/nec; then
3046 version_type=linux # correct to gnu/linux during the next big refactor
3047 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
3048 soname_spec='$libname$shared_ext.$major'
3049 shlibpath_var=LD_LIBRARY_PATH
3053 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3057 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
3058 soname_spec='$libname$release$shared_ext$major'
3059 shlibpath_var=LD_LIBRARY_PATH
3060 shlibpath_overrides_runpath=yes
3061 hardcode_into_libs=yes
3062 if test yes = "$with_gnu_ld"; then
3063 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
3065 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
3068 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
3072 sys_lib_dlsearch_path_spec='/usr/lib'
3076 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
3077 version_type=linux # correct to gnu/linux during the next big refactor
3080 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3081 shlibpath_var=LD_LIBRARY_PATH
3082 shlibpath_overrides_runpath=no
3083 hardcode_into_libs=yes
3087 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 soname_spec='$libname$release$shared_ext$major'
3090 shlibpath_var=LD_LIBRARY_PATH
3097 AC_MSG_RESULT([$dynamic_linker])
3098 test no = "$dynamic_linker" && can_build_shared=no
3100 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
3101 if test yes = "$GCC"; then
3102 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3105 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
3106 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
3109 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
3110 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
3113 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
3114 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
3116 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
3117 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
3119 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
3120 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
3122 _LT_DECL([], [variables_saved_for_relink], [1],
3123 [Variables whose values should be saved in libtool wrapper scripts and
3124 restored at link time])
3125 _LT_DECL([], [need_lib_prefix], [0],
3126 [Do we need the "lib" prefix for modules?])
3127 _LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
3128 _LT_DECL([], [version_type], [0], [Library versioning type])
3129 _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
3130 _LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
3131 _LT_DECL([], [shlibpath_overrides_runpath], [0],
3132 [Is shlibpath searched before the hard-coded library search path?])
3133 _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
3134 _LT_DECL([], [library_names_spec], [1],
3135 [[List of archive names. First name is the real one, the rest are links.
3136 The last name is the one that the linker finds with -lNAME]])
3137 _LT_DECL([], [soname_spec], [1],
3138 [[The coded name of the library, if different from the real name]])
3139 _LT_DECL([], [install_override_mode], [1],
3140 [Permission mode override for installation of shared libraries])
3141 _LT_DECL([], [postinstall_cmds], [2],
3142 [Command to use after installation of a shared archive])
3143 _LT_DECL([], [postuninstall_cmds], [2],
3144 [Command to use after uninstallation of a shared archive])
3145 _LT_DECL([], [finish_cmds], [2],
3146 [Commands used to finish a libtool library installation in a directory])
3147 _LT_DECL([], [finish_eval], [1],
3148 [[As "finish_cmds", except a single script fragment to be evaled but
3150 _LT_DECL([], [hardcode_into_libs], [0],
3151 [Whether we should hardcode library paths into libraries])
3152 _LT_DECL([], [sys_lib_search_path_spec], [2],
3153 [Compile-time system search path for libraries])
3154 _LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
3155 [Detected run-time system search path for libraries])
3156 _LT_DECL([], [configure_time_lt_sys_library_path], [2],
3157 [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
3158 ])# _LT_SYS_DYNAMIC_LINKER
3161 # _LT_PATH_TOOL_PREFIX(TOOL)
3162 # --------------------------
3163 # find a file program that can recognize shared library
3164 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
3165 [m4_require([_LT_DECL_EGREP])dnl
3166 AC_MSG_CHECKING([for $1])
3167 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3169 [[\\/*] | ?:[\\/]*])
3170 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
3173 lt_save_MAGIC_CMD=$MAGIC_CMD
3174 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3175 dnl $ac_dummy forces splitting on constant user-supplied paths.
3176 dnl POSIX.2 word splitting is done only on the output of word expansions,
3177 dnl not every word. This closes a longstanding sh security hole.
3178 ac_dummy="m4_if([$2], , $PATH, [$2])"
3179 for ac_dir in $ac_dummy; do
3181 test -z "$ac_dir" && ac_dir=.
3182 if test -f "$ac_dir/$1"; then
3183 lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
3184 if test -n "$file_magic_test_file"; then
3185 case $deplibs_check_method in
3187 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
3188 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3189 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3190 $EGREP "$file_magic_regex" > /dev/null; then
3195 *** Warning: the command libtool uses to detect shared libraries,
3196 *** $file_magic_cmd, produces output that libtool cannot recognize.
3197 *** The result is that libtool may fail to recognize shared libraries
3198 *** as such. This will affect the creation of libtool libraries that
3199 *** depend on shared libraries, but programs linked with such libtool
3200 *** libraries will work regardless of this problem. Nevertheless, you
3201 *** may want to report the problem to your system manager and/or to
3202 *** bug-libtool@gnu.org
3212 MAGIC_CMD=$lt_save_MAGIC_CMD
3215 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3216 if test -n "$MAGIC_CMD"; then
3217 AC_MSG_RESULT($MAGIC_CMD)
3221 _LT_DECL([], [MAGIC_CMD], [0],
3222 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3223 ])# _LT_PATH_TOOL_PREFIX
3226 AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3227 dnl aclocal-1.4 backwards compatibility:
3228 dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
3233 # find a file program that can recognize a shared library
3234 m4_defun([_LT_PATH_MAGIC],
3235 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
3236 if test -z "$lt_cv_path_MAGIC_CMD"; then
3237 if test -n "$ac_tool_prefix"; then
3238 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
3248 # find the pathname to the GNU or non-GNU linker
3249 AC_DEFUN([LT_PATH_LD],
3250 [AC_REQUIRE([AC_PROG_CC])dnl
3251 AC_REQUIRE([AC_CANONICAL_HOST])dnl
3252 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3253 m4_require([_LT_DECL_SED])dnl
3254 m4_require([_LT_DECL_EGREP])dnl
3255 m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
3257 AC_ARG_WITH([gnu-ld],
3258 [AS_HELP_STRING([--with-gnu-ld],
3259 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
3260 [test no = "$withval" || with_gnu_ld=yes],
3261 [with_gnu_ld=no])dnl
3264 if test yes = "$GCC"; then
3265 # Check if gcc -print-prog-name=ld gives a path.
3266 AC_MSG_CHECKING([for ld used by $CC])
3269 # gcc leaves a trailing carriage return, which upsets mingw
3270 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3272 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3275 # Accept absolute paths.
3276 [[\\/]]* | ?:[[\\/]]*)
3277 re_direlt='/[[^/]][[^/]]*/\.\./'
3278 # Canonicalize the pathname of ld
3279 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3280 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3281 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3283 test -z "$LD" && LD=$ac_prog
3286 # If it fails, then pretend we aren't using GCC.
3290 # If it is relative, then search for the first ld in PATH.
3294 elif test yes = "$with_gnu_ld"; then
3295 AC_MSG_CHECKING([for GNU ld])
3297 AC_MSG_CHECKING([for non-GNU ld])
3299 AC_CACHE_VAL(lt_cv_path_LD,
3300 [if test -z "$LD"; then
3301 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3302 for ac_dir in $PATH; do
3304 test -z "$ac_dir" && ac_dir=.
3305 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3306 lt_cv_path_LD=$ac_dir/$ac_prog
3307 # Check to see if the program is GNU ld. I'd rather use --version,
3308 # but apparently some variants of GNU ld only accept -v.
3309 # Break only if it was the GNU/non-GNU ld that we prefer.
3310 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3311 *GNU* | *'with BFD'*)
3312 test no != "$with_gnu_ld" && break
3315 test yes != "$with_gnu_ld" && break
3322 lt_cv_path_LD=$LD # Let the user override the test with a path.
3325 if test -n "$LD"; then
3330 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3334 _LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3338 AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3339 AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3340 dnl aclocal-1.4 backwards compatibility:
3341 dnl AC_DEFUN([AM_PROG_LD], [])
3342 dnl AC_DEFUN([AC_PROG_LD], [])
3347 m4_defun([_LT_PATH_LD_GNU],
3348 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3349 [# I'd rather use --version here, but apparently some GNU lds only accept -v.
3350 case `$LD -v 2>&1 </dev/null` in
3351 *GNU* | *'with BFD'*)
3352 lt_cv_prog_gnu_ld=yes
3355 lt_cv_prog_gnu_ld=no
3358 with_gnu_ld=$lt_cv_prog_gnu_ld
3364 # find reload flag for linker
3365 # -- PORTME Some linkers may need a different reload flag.
3366 m4_defun([_LT_CMD_RELOAD],
3367 [AC_CACHE_CHECK([for $LD option to reload object files],
3368 lt_cv_ld_reload_flag,
3369 [lt_cv_ld_reload_flag='-r'])
3370 reload_flag=$lt_cv_ld_reload_flag
3371 case $reload_flag in
3373 *) reload_flag=" $reload_flag" ;;
3375 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3377 cygwin* | mingw* | pw32* | cegcc*)
3378 if test yes != "$GCC"; then
3383 if test yes = "$GCC"; then
3384 reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
3386 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3390 _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3391 _LT_TAGDECL([], [reload_cmds], [2])dnl
3398 m4_defun([_LT_PATH_DD],
3399 [AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
3400 [printf 0123456789abcdef0123456789abcdef >conftest.i
3401 cat conftest.i conftest.i >conftest2.i
3403 AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
3404 [if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3405 cmp -s conftest.i conftest.out \
3406 && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
3408 rm -f conftest.i conftest2.i conftest.out])
3414 # find command to truncate a binary pipe
3415 m4_defun([_LT_CMD_TRUNCATE],
3416 [m4_require([_LT_PATH_DD])
3417 AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
3418 [printf 0123456789abcdef0123456789abcdef >conftest.i
3419 cat conftest.i conftest.i >conftest2.i
3421 if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3422 cmp -s conftest.i conftest.out \
3423 && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
3425 rm -f conftest.i conftest2.i conftest.out
3426 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
3427 _LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
3428 [Command to truncate a binary pipe])
3429 ])# _LT_CMD_TRUNCATE
3432 # _LT_CHECK_MAGIC_METHOD
3433 # ----------------------
3434 # how to check for library dependencies
3435 # -- PORTME fill in with the dynamic library characteristics
3436 m4_defun([_LT_CHECK_MAGIC_METHOD],
3437 [m4_require([_LT_DECL_EGREP])
3438 m4_require([_LT_DECL_OBJDUMP])
3439 AC_CACHE_CHECK([how to recognize dependent libraries],
3440 lt_cv_deplibs_check_method,
3441 [lt_cv_file_magic_cmd='$MAGIC_CMD'
3442 lt_cv_file_magic_test_file=
3443 lt_cv_deplibs_check_method='unknown'
3444 # Need to set the preceding variable on all platforms that support
3445 # interlibrary dependencies.
3446 # 'none' -- dependencies not supported.
3447 # 'unknown' -- same as none, but documents that we really don't know.
3448 # 'pass_all' -- all dependencies passed with no checks.
3449 # 'test_compile' -- check by making test program.
3450 # 'file_magic [[regex]]' -- check by looking for files in library path
3451 # that responds to the $file_magic_cmd with a given extended regex.
3452 # If you have 'file' or equivalent on your system and you're not sure
3453 # whether 'pass_all' will *always* work, you probably want this one.
3457 lt_cv_deplibs_check_method=pass_all
3461 lt_cv_deplibs_check_method=pass_all
3465 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3466 lt_cv_file_magic_cmd='/usr/bin/file -L'
3467 lt_cv_file_magic_test_file=/shlib/libc.so
3471 # func_win32_libid is a shell function defined in ltmain.sh
3472 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3473 lt_cv_file_magic_cmd='func_win32_libid'
3477 # Base MSYS/MinGW do not provide the 'file' command needed by
3478 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3479 # unless we find 'file', for example because we are cross-compiling.
3480 if ( file / ) >/dev/null 2>&1; then
3481 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3482 lt_cv_file_magic_cmd='func_win32_libid'
3484 # Keep this pattern in sync with the one in func_win32_libid.
3485 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3486 lt_cv_file_magic_cmd='$OBJDUMP -f'
3491 # use the weaker test based on 'objdump'. See mingw*.
3492 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3493 lt_cv_file_magic_cmd='$OBJDUMP -f'
3496 darwin* | rhapsody*)
3497 lt_cv_deplibs_check_method=pass_all
3500 freebsd* | dragonfly*)
3501 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3504 # Not sure whether the presence of OpenBSD here was a mistake.
3505 # Let's accept both of them until this is cleared up.
3506 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3507 lt_cv_file_magic_cmd=/usr/bin/file
3508 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3512 lt_cv_deplibs_check_method=pass_all
3517 lt_cv_deplibs_check_method=pass_all
3520 hpux10.20* | hpux11*)
3521 lt_cv_file_magic_cmd=/usr/bin/file
3524 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3525 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3528 [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]']
3529 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3532 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3533 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3539 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3540 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3543 irix5* | irix6* | nonstopux*)
3545 *-32|*"-32 ") libmagic=32-bit;;
3546 *-n32|*"-n32 ") libmagic=N32;;
3547 *-64|*"-64 ") libmagic=64-bit;;
3548 *) libmagic=never-match;;
3550 lt_cv_deplibs_check_method=pass_all
3553 # This must be glibc/ELF.
3554 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
3555 lt_cv_deplibs_check_method=pass_all
3559 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3560 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3562 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3567 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3568 lt_cv_file_magic_cmd=/usr/bin/file
3569 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3573 lt_cv_deplibs_check_method=pass_all
3577 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
3578 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3580 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3584 osf3* | osf4* | osf5*)
3585 lt_cv_deplibs_check_method=pass_all
3589 lt_cv_deplibs_check_method=pass_all
3593 lt_cv_deplibs_check_method=pass_all
3596 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3597 lt_cv_deplibs_check_method=pass_all
3601 case $host_vendor in
3603 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]]'
3604 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3607 lt_cv_deplibs_check_method=pass_all
3610 lt_cv_file_magic_cmd='/bin/file'
3611 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3614 lt_cv_file_magic_cmd='/bin/file'
3615 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3616 lt_cv_file_magic_test_file=/lib/libc.so
3619 lt_cv_deplibs_check_method=pass_all
3622 lt_cv_deplibs_check_method=pass_all
3628 lt_cv_deplibs_check_method=pass_all
3631 lt_cv_deplibs_check_method=pass_all
3638 if test "$build" = "$host"; then
3641 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3644 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3650 file_magic_cmd=$lt_cv_file_magic_cmd
3651 deplibs_check_method=$lt_cv_deplibs_check_method
3652 test -z "$deplibs_check_method" && deplibs_check_method=unknown
3654 _LT_DECL([], [deplibs_check_method], [1],
3655 [Method to check whether dependent libraries are shared objects])
3656 _LT_DECL([], [file_magic_cmd], [1],
3657 [Command to use when deplibs_check_method = "file_magic"])
3658 _LT_DECL([], [file_magic_glob], [1],
3659 [How to find potential files when deplibs_check_method = "file_magic"])
3660 _LT_DECL([], [want_nocaseglob], [1],
3661 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3662 ])# _LT_CHECK_MAGIC_METHOD
3667 # find the pathname to a BSD- or MS-compatible name lister
3668 AC_DEFUN([LT_PATH_NM],
3669 [AC_REQUIRE([AC_PROG_CC])dnl
3670 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3671 [if test -n "$NM"; then
3672 # Let the user override the test.
3675 lt_nm_to_check=${ac_tool_prefix}nm
3676 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3677 lt_nm_to_check="$lt_nm_to_check nm"
3679 for lt_tmp_nm in $lt_nm_to_check; do
3680 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3681 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3683 test -z "$ac_dir" && ac_dir=.
3684 tmp_nm=$ac_dir/$lt_tmp_nm
3685 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
3686 # Check to see if the nm accepts a BSD-compat flag.
3687 # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
3688 # nm: unknown option "B" ignored
3689 # Tru64's nm complains that /dev/null is an invalid object file
3690 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
3692 mingw*) lt_bad_file=conftest.nm/nofile ;;
3693 *) lt_bad_file=/dev/null ;;
3695 case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
3696 *$lt_bad_file* | *'Invalid file or object type'*)
3697 lt_cv_path_NM="$tmp_nm -B"
3701 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3703 lt_cv_path_NM="$tmp_nm -p"
3707 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3708 continue # so that we can try to find one that supports BSD flags
3717 : ${lt_cv_path_NM=no}
3719 if test no != "$lt_cv_path_NM"; then
3722 # Didn't find any BSD compatible name lister, look for dumpbin.
3723 if test -n "$DUMPBIN"; then :
3724 # Let the user override the test.
3726 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3727 case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
3729 DUMPBIN="$DUMPBIN -symbols -headers"
3737 if test : != "$DUMPBIN"; then
3741 test -z "$NM" && NM=nm
3743 _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3745 AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3746 [lt_cv_nm_interface="BSD nm"
3747 echo "int some_variable = 0;" > conftest.$ac_ext
3748 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3749 (eval "$ac_compile" 2>conftest.err)
3750 cat conftest.err >&AS_MESSAGE_LOG_FD
3751 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3752 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3753 cat conftest.err >&AS_MESSAGE_LOG_FD
3754 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3755 cat conftest.out >&AS_MESSAGE_LOG_FD
3756 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3757 lt_cv_nm_interface="MS dumpbin"
3763 AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3764 AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3765 dnl aclocal-1.4 backwards compatibility:
3766 dnl AC_DEFUN([AM_PROG_NM], [])
3767 dnl AC_DEFUN([AC_PROG_NM], [])
3769 # _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3770 # --------------------------------
3771 # how to determine the name of the shared library
3772 # associated with a specific link library.
3773 # -- PORTME fill in with the dynamic library characteristics
3774 m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3775 [m4_require([_LT_DECL_EGREP])
3776 m4_require([_LT_DECL_OBJDUMP])
3777 m4_require([_LT_DECL_DLLTOOL])
3778 AC_CACHE_CHECK([how to associate runtime and link libraries],
3779 lt_cv_sharedlib_from_linklib_cmd,
3780 [lt_cv_sharedlib_from_linklib_cmd='unknown'
3783 cygwin* | mingw* | pw32* | cegcc*)
3784 # two different shell functions defined in ltmain.sh;
3785 # decide which one to use based on capabilities of $DLLTOOL
3786 case `$DLLTOOL --help 2>&1` in
3787 *--identify-strict*)
3788 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3791 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3796 # fallback: assume linklib IS sharedlib
3797 lt_cv_sharedlib_from_linklib_cmd=$ECHO
3801 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3802 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3804 _LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3805 [Command to associate shared and link libraries])
3806 ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3809 # _LT_PATH_MANIFEST_TOOL
3810 # ----------------------
3811 # locate the manifest tool
3812 m4_defun([_LT_PATH_MANIFEST_TOOL],
3813 [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3814 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3815 AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3816 [lt_cv_path_mainfest_tool=no
3817 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3818 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3819 cat conftest.err >&AS_MESSAGE_LOG_FD
3820 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3821 lt_cv_path_mainfest_tool=yes
3824 if test yes != "$lt_cv_path_mainfest_tool"; then
3827 _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3828 ])# _LT_PATH_MANIFEST_TOOL
3831 # _LT_DLL_DEF_P([FILE])
3832 # ---------------------
3833 # True iff FILE is a Windows DLL '.def' file.
3834 # Keep in sync with func_dll_def_p in the libtool script
3835 AC_DEFUN([_LT_DLL_DEF_P],
3837 test DEF = "`$SED -n dnl
3838 -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace
3839 -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments
3840 -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl
3841 -e q dnl Only consider the first "real" line
3848 # check for math library
3849 AC_DEFUN([LT_LIB_M],
3850 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3853 *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3854 # These system don't have libm, or don't need it
3857 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
3858 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3861 AC_CHECK_LIB(m, cos, LIBM=-lm)
3868 AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3869 dnl aclocal-1.4 backwards compatibility:
3870 dnl AC_DEFUN([AC_CHECK_LIBM], [])
3873 # _LT_COMPILER_NO_RTTI([TAGNAME])
3874 # -------------------------------
3875 m4_defun([_LT_COMPILER_NO_RTTI],
3876 [m4_require([_LT_TAG_COMPILER])dnl
3878 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3880 if test yes = "$GCC"; then
3881 case $cc_basename in
3883 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3885 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3888 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3889 lt_cv_prog_compiler_rtti_exceptions,
3890 [-fno-rtti -fno-exceptions], [],
3891 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3893 _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3894 [Compiler flag to turn off builtin functions])
3895 ])# _LT_COMPILER_NO_RTTI
3898 # _LT_CMD_GLOBAL_SYMBOLS
3899 # ----------------------
3900 m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3901 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3902 AC_REQUIRE([AC_PROG_CC])dnl
3903 AC_REQUIRE([AC_PROG_AWK])dnl
3904 AC_REQUIRE([LT_PATH_NM])dnl
3905 AC_REQUIRE([LT_PATH_LD])dnl
3906 m4_require([_LT_DECL_SED])dnl
3907 m4_require([_LT_DECL_EGREP])dnl
3908 m4_require([_LT_TAG_COMPILER])dnl
3910 # Check for command to grab the raw symbol name followed by C symbol from nm.
3911 AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3912 AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3914 # These are sane defaults that work on at least a few old systems.
3915 # [They come from Ultrix. What could be older than Ultrix?!! ;)]
3917 # Character class describing NM global symbol codes.
3918 symcode='[[BCDEGRST]]'
3920 # Regexp to match symbols that can be accessed directly from C.
3921 sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3923 # Define system-specific variables.
3928 cygwin* | mingw* | pw32* | cegcc*)
3929 symcode='[[ABCDGISTW]]'
3932 if test ia64 = "$host_cpu"; then
3933 symcode='[[ABCDEGRST]]'
3937 symcode='[[BCDEGRST]]'
3940 symcode='[[BCDEGQRST]]'
3951 sysv5* | sco5v6* | unixware* | OpenUNIX*)
3955 symcode='[[DFNSTU]]'
3959 # If we're using GNU nm, then use its standard symbol codes.
3960 case `$NM -V 2>&1` in
3961 *GNU* | *'with BFD'*)
3962 symcode='[[ABCDGIRSTW]]' ;;
3965 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3966 # Gets list of data symbols to import.
3967 lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
3968 # Adjust the below global symbol transforms to fixup imported variables.
3969 lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
3970 lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
3971 lt_c_name_lib_hook="\
3972 -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
3973 -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
3975 # Disable hooks by default.
3976 lt_cv_sys_global_symbol_to_import=
3982 # Transform an extracted symbol line into a proper C declaration.
3983 # Some systems (esp. on ia64) link data and code symbols differently,
3984 # so use this general approach.
3985 lt_cv_sys_global_symbol_to_cdecl="sed -n"\
3987 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\
3988 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
3990 # Transform an extracted symbol line into symbol name and symbol address
3991 lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
3993 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
3994 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
3996 # Transform an extracted symbol line into symbol name with lib prefix and
3998 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
3999 $lt_c_name_lib_hook\
4000 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
4001 " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
4002 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
4004 # Handle CRLF in mingw tool chain
4008 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
4012 # Try without a prefix underscore, then with it.
4013 for ac_symprfx in "" "_"; do
4015 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
4016 symxfrm="\\1 $ac_symprfx\\2 \\2"
4018 # Write the raw and C identifiers.
4019 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4020 # Fake it for dumpbin and say T for any non-static function,
4021 # D for any global variable and I for any imported variable.
4022 # Also find C++ and __fastcall symbols from MSVC++,
4023 # which start with @ or ?.
4024 lt_cv_sys_global_symbol_pipe="$AWK ['"\
4025 " {last_section=section; section=\$ 3};"\
4026 " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
4027 " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
4028 " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
4029 " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
4030 " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
4031 " \$ 0!~/External *\|/{next};"\
4032 " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
4033 " {if(hide[section]) next};"\
4034 " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
4035 " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
4036 " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
4037 " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
4038 " ' prfx=^$ac_symprfx]"
4040 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
4042 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
4044 # Check to see that the pipe works correctly.
4048 cat > conftest.$ac_ext <<_LT_EOF
4053 void nm_test_func(void);
4054 void nm_test_func(void){}
4058 int main(){nm_test_var='a';nm_test_func();return(0);}
4061 if AC_TRY_EVAL(ac_compile); then
4062 # Now try to grab the symbols.
4064 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
4065 # Try sorting and uniquifying the output.
4066 if sort "$nlist" | uniq > "$nlist"T; then
4067 mv -f "$nlist"T "$nlist"
4072 # Make sure that we snagged all the symbols we need.
4073 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4074 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4075 cat <<_LT_EOF > conftest.$ac_ext
4076 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
4077 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4078 /* DATA imports from DLLs on WIN32 can't be const, because runtime
4079 relocations are performed -- see ld's documentation on pseudo-relocs. */
4080 # define LT@&t@_DLSYM_CONST
4081 #elif defined __osf__
4082 /* This system does not cope well with relocations in const data. */
4083 # define LT@&t@_DLSYM_CONST
4085 # define LT@&t@_DLSYM_CONST const
4093 # Now generate the symbol file.
4094 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
4096 cat <<_LT_EOF >> conftest.$ac_ext
4098 /* The mapping between symbol names and symbols. */
4099 LT@&t@_DLSYM_CONST struct {
4103 lt__PROGRAM__LTX_preloaded_symbols[[]] =
4105 { "@PROGRAM@", (void *) 0 },
4107 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
4108 cat <<\_LT_EOF >> conftest.$ac_ext
4112 /* This works around a problem in FreeBSD linker */
4113 #ifdef FREEBSD_WORKAROUND
4114 static const void *lt_preloaded_setup() {
4115 return lt__PROGRAM__LTX_preloaded_symbols;
4123 # Now try linking the two files.
4124 mv conftest.$ac_objext conftstm.$ac_objext
4125 lt_globsym_save_LIBS=$LIBS
4126 lt_globsym_save_CFLAGS=$CFLAGS
4127 LIBS=conftstm.$ac_objext
4128 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4129 if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
4132 LIBS=$lt_globsym_save_LIBS
4133 CFLAGS=$lt_globsym_save_CFLAGS
4135 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4138 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4141 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4144 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4145 cat conftest.$ac_ext >&5
4147 rm -rf conftest* conftst*
4149 # Do not use the global_symbol_pipe unless it works.
4150 if test yes = "$pipe_works"; then
4153 lt_cv_sys_global_symbol_pipe=
4157 if test -z "$lt_cv_sys_global_symbol_pipe"; then
4158 lt_cv_sys_global_symbol_to_cdecl=
4160 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4161 AC_MSG_RESULT(failed)
4166 # Response file support.
4167 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4168 nm_file_list_spec='@'
4169 elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4170 nm_file_list_spec='@'
4173 _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
4174 [Take the output of nm and produce a listing of raw symbols and C names])
4175 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4176 [Transform the output of nm in a proper C declaration])
4177 _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
4178 [Transform the output of nm into a list of symbols to manually relocate])
4179 _LT_DECL([global_symbol_to_c_name_address],
4180 [lt_cv_sys_global_symbol_to_c_name_address], [1],
4181 [Transform the output of nm in a C name address pair])
4182 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4183 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4184 [Transform the output of nm in a C name address pair when lib prefix is needed])
4185 _LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4186 [The name lister interface])
4187 _LT_DECL([], [nm_file_list_spec], [1],
4188 [Specify filename containing input files for $NM])
4189 ]) # _LT_CMD_GLOBAL_SYMBOLS
4192 # _LT_COMPILER_PIC([TAGNAME])
4193 # ---------------------------
4194 m4_defun([_LT_COMPILER_PIC],
4195 [m4_require([_LT_TAG_COMPILER])dnl
4196 _LT_TAGVAR(lt_prog_compiler_wl, $1)=
4197 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4198 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4200 m4_if([$1], [CXX], [
4201 # C++ specific cases for pic, static, wl, etc.
4202 if test yes = "$GXX"; then
4203 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4204 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4208 # All AIX code is PIC.
4209 if test ia64 = "$host_cpu"; then
4210 # AIX 5 now supports IA64 processor
4211 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4213 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4219 # see comment about AmigaOS4 .so support
4220 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4223 # FIXME: we need at least 68020 code to build shared libraries, but
4224 # adding the '-m68020' flag to GCC prevents building anything better,
4226 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4231 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4232 # PIC is the default for these OSes.
4234 mingw* | cygwin* | os2* | pw32* | cegcc*)
4235 # This hack is so that the source file can tell whether it is being
4236 # built for inclusion in a dll (and should export symbols for example).
4237 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4238 # (--disable-auto-import) libraries
4239 m4_if([$1], [GCJ], [],
4240 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4243 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4247 darwin* | rhapsody*)
4248 # PIC is the default on this platform
4249 # Common symbols not allowed in MH_DYLIB files
4250 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4253 # DJGPP does not support shared libraries at all
4254 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4257 # PIC is the default for Haiku.
4258 # The "-static" flag exists, but is broken.
4259 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4262 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4263 # Instead, we relocate shared libraries at runtime.
4266 if test -d /usr/nec; then
4267 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4271 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4272 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4273 # sets the default TLS model and affects inlining.
4278 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4283 # QNX uses GNU C++, but need to define -shared option too, otherwise
4285 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4288 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4294 # All AIX code is PIC.
4295 if test ia64 = "$host_cpu"; then
4296 # AIX 5 now supports IA64 processor
4297 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4299 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4303 case $cc_basename in
4305 # Green Hills C++ Compiler
4306 # _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"
4310 mingw* | cygwin* | os2* | pw32* | cegcc*)
4311 # This hack is so that the source file can tell whether it is being
4312 # built for inclusion in a dll (and should export symbols for example).
4313 m4_if([$1], [GCJ], [],
4314 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4317 case $cc_basename in
4319 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4322 # Green Hills C++ Compiler
4323 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4329 freebsd* | dragonfly*)
4330 # FreeBSD uses GNU C++
4332 hpux9* | hpux10* | hpux11*)
4333 case $cc_basename in
4335 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4336 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4337 if test ia64 != "$host_cpu"; then
4338 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4342 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4343 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4349 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4358 # This is c89, which is MS Visual C++ (no shared libs)
4359 # Anyone wants to do a port?
4361 irix5* | irix6* | nonstopux*)
4362 case $cc_basename in
4364 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4365 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4366 # CC pic flag -KPIC is the default.
4372 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4373 case $cc_basename in
4376 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4377 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4380 # old Intel C++ for x86_64, which still supported -KPIC.
4381 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4382 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4383 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4386 # Intel C++, used to be incompatible with GCC.
4387 # ICC 10 doesn't accept -KPIC any more.
4388 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4389 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4390 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4393 # Portland Group C++ compiler
4394 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4395 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4396 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4400 # Make sure the PIC flag is empty. It appears that all Alpha
4401 # Linux and Compaq Tru64 Unix objects are PIC.
4402 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4403 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4405 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4406 # IBM XL 8.0, 9.0 on PPC and BlueGene
4407 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4408 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4409 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4412 case `$CC -V 2>&1 | sed 5q` in
4415 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4416 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4417 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4428 case $cc_basename in
4430 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4439 # QNX uses GNU C++, but need to define -shared option too, otherwise
4441 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4443 osf3* | osf4* | osf5*)
4444 case $cc_basename in
4446 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4449 # Rational C++ 2.4.1
4450 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4453 # Digital/Compaq C++
4454 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4455 # Make sure the PIC flag is empty. It appears that all Alpha
4456 # Linux and Compaq Tru64 Unix objects are PIC.
4457 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4458 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4467 case $cc_basename in
4469 # Sun C++ 4.2, 5.x and Centerline C++
4470 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4471 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4472 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4475 # Green Hills C++ Compiler
4476 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4483 case $cc_basename in
4486 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4487 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4491 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4497 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4498 case $cc_basename in
4500 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4501 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4502 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4507 case $cc_basename in
4509 # NonStop-UX NCC 3.20
4510 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4519 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4525 if test yes = "$GCC"; then
4526 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4527 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4531 # All AIX code is PIC.
4532 if test ia64 = "$host_cpu"; then
4533 # AIX 5 now supports IA64 processor
4534 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4536 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4542 # see comment about AmigaOS4 .so support
4543 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4546 # FIXME: we need at least 68020 code to build shared libraries, but
4547 # adding the '-m68020' flag to GCC prevents building anything better,
4549 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4554 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4555 # PIC is the default for these OSes.
4558 mingw* | cygwin* | pw32* | os2* | cegcc*)
4559 # This hack is so that the source file can tell whether it is being
4560 # built for inclusion in a dll (and should export symbols for example).
4561 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4562 # (--disable-auto-import) libraries
4563 m4_if([$1], [GCJ], [],
4564 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4567 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4572 darwin* | rhapsody*)
4573 # PIC is the default on this platform
4574 # Common symbols not allowed in MH_DYLIB files
4575 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4579 # PIC is the default for Haiku.
4580 # The "-static" flag exists, but is broken.
4581 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4585 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4586 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4587 # sets the default TLS model and affects inlining.
4593 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4599 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4600 # Instead, we relocate shared libraries at runtime.
4604 # Just because we use GCC doesn't mean we suddenly get shared libraries
4605 # on systems that don't support them.
4606 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4611 # QNX uses GNU C++, but need to define -shared option too, otherwise
4613 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4617 if test -d /usr/nec; then
4618 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4623 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4627 case $cc_basename in
4628 nvcc*) # Cuda Compiler Driver 2.2
4629 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4630 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4631 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4636 # PORTME Check for flag to pass linker flags through the system compiler.
4639 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4640 if test ia64 = "$host_cpu"; then
4641 # AIX 5 now supports IA64 processor
4642 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4644 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4648 darwin* | rhapsody*)
4649 # PIC is the default on this platform
4650 # Common symbols not allowed in MH_DYLIB files
4651 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4652 case $cc_basename in
4654 # NAG Fortran compiler
4655 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4656 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4657 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4662 mingw* | cygwin* | pw32* | os2* | cegcc*)
4663 # This hack is so that the source file can tell whether it is being
4664 # built for inclusion in a dll (and should export symbols for example).
4665 m4_if([$1], [GCJ], [],
4666 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4669 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4674 hpux9* | hpux10* | hpux11*)
4675 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4676 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4683 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4686 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4687 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4690 irix5* | irix6* | nonstopux*)
4691 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4692 # PIC (with -KPIC) is the default.
4693 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4696 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4697 case $cc_basename in
4698 # old Intel for x86_64, which still supported -KPIC.
4700 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4701 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4702 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4704 # icc used to be incompatible with GCC.
4705 # ICC 10 doesn't accept -KPIC any more.
4707 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4708 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4709 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4711 # Lahey Fortran 8.1.
4713 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4714 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4715 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4718 # NAG Fortran compiler
4719 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4720 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4721 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4724 # Fabrice Bellard et al's Tiny C Compiler
4725 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4726 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4727 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4729 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4730 # Portland Group compilers (*not* the Pentium gcc compiler,
4731 # which looks to be a dead project)
4732 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4733 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4734 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4737 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4738 # All Alpha code is PIC.
4739 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4741 xl* | bgxl* | bgf* | mpixl*)
4742 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4743 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4744 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4745 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4748 case `$CC -V 2>&1 | sed 5q` in
4749 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4750 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4751 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4752 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4753 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4755 *Sun\ F* | *Sun*Fortran*)
4756 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4757 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4758 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4762 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4763 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4764 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4766 *Intel*\ [[CF]]*Compiler*)
4767 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4768 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4769 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4772 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4773 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4774 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4782 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4783 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4787 # QNX uses GNU C++, but need to define -shared option too, otherwise
4789 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4792 osf3* | osf4* | osf5*)
4793 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4794 # All OSF/1 code is PIC.
4795 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4799 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4803 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4804 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4805 case $cc_basename in
4806 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4807 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4809 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4814 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4815 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4816 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4819 sysv4 | sysv4.2uw2* | sysv4.3*)
4820 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4821 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4822 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4826 if test -d /usr/nec; then
4827 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4828 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4832 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4833 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4834 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4835 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4839 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4840 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4844 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4845 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4849 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4855 # For platforms that do not support PIC, -DPIC is meaningless:
4857 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4860 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4864 AC_CACHE_CHECK([for $compiler option to produce PIC],
4865 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4866 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4867 _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4870 # Check to make sure the PIC flag actually works.
4872 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4873 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4874 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4875 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4876 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4878 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4880 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4881 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4883 _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4884 [Additional compiler flags for building library objects])
4886 _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4887 [How to pass a linker flag through the compiler])
4889 # Check to make sure the static flag actually works.
4891 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4892 _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4893 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4894 $lt_tmp_static_flag,
4896 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4897 _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4898 [Compiler flag to prevent dynamic linking])
4899 ])# _LT_COMPILER_PIC
4902 # _LT_LINKER_SHLIBS([TAGNAME])
4903 # ----------------------------
4904 # See if the linker supports building shared libraries.
4905 m4_defun([_LT_LINKER_SHLIBS],
4906 [AC_REQUIRE([LT_PATH_LD])dnl
4907 AC_REQUIRE([LT_PATH_NM])dnl
4908 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4909 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4910 m4_require([_LT_DECL_EGREP])dnl
4911 m4_require([_LT_DECL_SED])dnl
4912 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4913 m4_require([_LT_TAG_COMPILER])dnl
4914 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4915 m4_if([$1], [CXX], [
4916 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4917 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4920 # If we're using GNU nm, then we don't want the "-C" option.
4921 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
4922 # Without the "-l" option, or with the "-B" option, AIX nm treats
4923 # weak defined symbols like other global defined symbols, whereas
4924 # GNU nm marks them as "W".
4925 # While the 'weak' keyword is ignored in the Export File, we need
4926 # it in the Import File for the 'aix-soname' feature, so we have
4927 # to replace the "-B" option with "-P" for AIX nm.
4928 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4929 _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'
4931 _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'
4935 _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
4937 cygwin* | mingw* | cegcc*)
4938 case $cc_basename in
4940 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4943 _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'
4944 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4949 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4954 _LT_TAGVAR(allow_undefined_flag, $1)=
4955 _LT_TAGVAR(always_export_symbols, $1)=no
4956 _LT_TAGVAR(archive_cmds, $1)=
4957 _LT_TAGVAR(archive_expsym_cmds, $1)=
4958 _LT_TAGVAR(compiler_needs_object, $1)=no
4959 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4960 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4961 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4962 _LT_TAGVAR(hardcode_automatic, $1)=no
4963 _LT_TAGVAR(hardcode_direct, $1)=no
4964 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4965 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4966 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4967 _LT_TAGVAR(hardcode_minus_L, $1)=no
4968 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4969 _LT_TAGVAR(inherit_rpath, $1)=no
4970 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4971 _LT_TAGVAR(module_cmds, $1)=
4972 _LT_TAGVAR(module_expsym_cmds, $1)=
4973 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4974 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4975 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4976 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4977 # include_expsyms should be a list of space-separated symbols to be *always*
4978 # included in the symbol list
4979 _LT_TAGVAR(include_expsyms, $1)=
4980 # exclude_expsyms can be an extended regexp of symbols to exclude
4981 # it will be wrapped by ' (' and ')$', so one must not match beginning or
4982 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
4983 # as well as any symbol that contains 'd'.
4984 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4985 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4986 # platforms (ab)use it in PIC code, but their linkers get confused if
4987 # the symbol is explicitly referenced. Since portable code cannot
4988 # rely on this symbol name, it's probably fine to never include it in
4989 # preloaded symbol tables.
4990 # Exclude shared library initialization/finalization symbols.
4991 dnl Note also adjust exclude_expsyms for C++ above.
4992 extract_expsyms_cmds=
4995 cygwin* | mingw* | pw32* | cegcc*)
4996 # FIXME: the MSVC++ port hasn't been tested in a loooong time
4997 # When not using gcc, we currently assume that we are using
4998 # Microsoft Visual C++.
4999 if test yes != "$GCC"; then
5004 # we just hope/assume this is gcc and not c89 (= MSVC++)
5012 _LT_TAGVAR(ld_shlibs, $1)=yes
5014 # On some targets, GNU ld is compatible enough with the native linker
5015 # that we're better off using the native interface for both.
5016 lt_use_gnu_ld_interface=no
5017 if test yes = "$with_gnu_ld"; then
5020 # The AIX port of GNU ld has always aspired to compatibility
5021 # with the native linker. However, as the warning in the GNU ld
5022 # block says, versions before 2.19.5* couldn't really create working
5023 # shared libraries, regardless of the interface used.
5024 case `$LD -v 2>&1` in
5025 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5026 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5027 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5029 lt_use_gnu_ld_interface=yes
5034 lt_use_gnu_ld_interface=yes
5039 if test yes = "$lt_use_gnu_ld_interface"; then
5040 # If archive_cmds runs LD, not CC, wlarc should be empty
5043 # Set some defaults for GNU ld with shared library support. These
5044 # are reset later if shared libraries are not supported. Putting them
5045 # here allows them to be overridden if necessary.
5046 runpath_var=LD_RUN_PATH
5047 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5048 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5049 # ancient GNU ld didn't support --whole-archive et. al.
5050 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
5051 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5053 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5055 supports_anon_versioning=no
5056 case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
5057 *GNU\ gold*) supports_anon_versioning=yes ;;
5058 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5059 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5060 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5061 *\ 2.11.*) ;; # other 2.11 versions
5062 *) supports_anon_versioning=yes ;;
5065 # See if GNU ld supports shared libraries.
5068 # On AIX/PPC, the GNU linker is very broken
5069 if test ia64 != "$host_cpu"; then
5070 _LT_TAGVAR(ld_shlibs, $1)=no
5073 *** Warning: the GNU linker, at least up to release 2.19, is reported
5074 *** to be unable to reliably create shared libraries on AIX.
5075 *** Therefore, libtool is disabling shared libraries support. If you
5076 *** really care for shared libraries, you may want to install binutils
5077 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5078 *** You will then need to restart the configuration process.
5087 # see comment about AmigaOS4 .so support
5088 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5089 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5092 _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)'
5093 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5094 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5100 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5101 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5102 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5103 # support --undefined. This deserves some investigation. FIXME
5104 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5106 _LT_TAGVAR(ld_shlibs, $1)=no
5110 cygwin* | mingw* | pw32* | cegcc*)
5111 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5112 # as there is no search path for DLLs.
5113 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5114 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
5115 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5116 _LT_TAGVAR(always_export_symbols, $1)=no
5117 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5118 _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'
5119 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5121 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5122 _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'
5123 # If the export-symbols file already is a .def file, use it as
5124 # is; otherwise, prepend EXPORTS...
5125 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5126 cp $export_symbols $output_objdir/$soname.def;
5128 echo EXPORTS > $output_objdir/$soname.def;
5129 cat $export_symbols >> $output_objdir/$soname.def;
5131 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5133 _LT_TAGVAR(ld_shlibs, $1)=no
5138 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5139 _LT_TAGVAR(link_all_deplibs, $1)=yes
5143 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5144 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5145 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5147 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5148 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5149 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5150 $ECHO EXPORTS >> $output_objdir/$libname.def~
5151 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5152 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5153 emximp -o $lib $output_objdir/$libname.def'
5154 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5155 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5156 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5157 $ECHO EXPORTS >> $output_objdir/$libname.def~
5159 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5160 prefix_cmds="$prefix_cmds -e 1d";
5162 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5163 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5164 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5165 emximp -o $lib $output_objdir/$libname.def'
5166 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5167 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5171 _LT_TAGVAR(hardcode_direct, $1)=no
5172 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5173 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5174 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5175 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5176 # Instead, shared libraries are loaded at an image base (0x10000000 by
5177 # default) and relocated if they conflict, which is a slow very memory
5178 # consuming and fragmenting process. To avoid this, we pick a random,
5179 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5180 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
5181 _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'
5182 _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'
5185 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5187 if test linux-dietlibc = "$host_os"; then
5188 case $cc_basename in
5189 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
5192 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
5193 && test no = "$tmp_diet"
5195 tmp_addflag=' $pic_flag'
5196 tmp_sharedflag='-shared'
5197 case $cc_basename,$host_cpu in
5198 pgcc*) # Portland Group C compiler
5199 _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'
5200 tmp_addflag=' $pic_flag'
5202 pgf77* | pgf90* | pgf95* | pgfortran*)
5203 # Portland Group f77 and f90 compilers
5204 _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'
5205 tmp_addflag=' $pic_flag -Mnomain' ;;
5206 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
5207 tmp_addflag=' -i_dynamic' ;;
5208 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
5209 tmp_addflag=' -i_dynamic -nofor_main' ;;
5210 ifc* | ifort*) # Intel Fortran compiler
5211 tmp_addflag=' -nofor_main' ;;
5212 lf95*) # Lahey Fortran 8.1
5213 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5214 tmp_sharedflag='--shared' ;;
5215 nagfor*) # NAGFOR 5.3
5216 tmp_sharedflag='-Wl,-shared' ;;
5217 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5218 tmp_sharedflag='-qmkshrobj'
5220 nvcc*) # Cuda Compiler Driver 2.2
5221 _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'
5222 _LT_TAGVAR(compiler_needs_object, $1)=yes
5225 case `$CC -V 2>&1 | sed 5q` in
5226 *Sun\ C*) # Sun C 5.9
5227 _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'
5228 _LT_TAGVAR(compiler_needs_object, $1)=yes
5229 tmp_sharedflag='-G' ;;
5230 *Sun\ F*) # Sun Fortran 8.3
5231 tmp_sharedflag='-G' ;;
5233 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5235 if test yes = "$supports_anon_versioning"; then
5236 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5237 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5238 echo "local: *; };" >> $output_objdir/$libname.ver~
5239 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
5242 case $cc_basename in
5244 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5246 xlf* | bgf* | bgxlf* | mpixlf*)
5247 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5248 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
5249 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5250 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5251 if test yes = "$supports_anon_versioning"; then
5252 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5253 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5254 echo "local: *; };" >> $output_objdir/$libname.ver~
5255 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5260 _LT_TAGVAR(ld_shlibs, $1)=no
5265 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5266 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5269 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5270 _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'
5275 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5276 _LT_TAGVAR(ld_shlibs, $1)=no
5279 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
5280 *** create shared libraries on Solaris systems. Therefore, libtool
5281 *** is disabling shared libraries support. We urge you to upgrade GNU
5282 *** binutils to release 2.9.1 or newer. Another option is to modify
5283 *** your PATH or compiler configuration so that the native linker is
5284 *** used, and then restart.
5287 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5288 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5289 _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'
5291 _LT_TAGVAR(ld_shlibs, $1)=no
5295 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5296 case `$LD -v 2>&1` in
5297 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5298 _LT_TAGVAR(ld_shlibs, $1)=no
5301 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
5302 *** reliably create shared libraries on SCO systems. Therefore, libtool
5303 *** is disabling shared libraries support. We urge you to upgrade GNU
5304 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
5305 *** your PATH or compiler configuration so that the native linker is
5306 *** used, and then restart.
5311 # For security reasons, it is highly recommended that you always
5312 # use absolute paths for naming shared libraries, and exclude the
5313 # DT_RUNPATH tag from executables and libraries. But doing so
5314 # requires that you compile everything twice, which is a pain.
5315 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5316 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5317 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5318 _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'
5320 _LT_TAGVAR(ld_shlibs, $1)=no
5327 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5329 _LT_TAGVAR(hardcode_direct, $1)=yes
5330 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5334 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5335 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5336 _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'
5338 _LT_TAGVAR(ld_shlibs, $1)=no
5343 if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
5345 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5346 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5347 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5350 # PORTME fill in a description of your system's linker (not GNU ld)
5353 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5354 _LT_TAGVAR(always_export_symbols, $1)=yes
5355 _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'
5356 # Note: this linker hardcodes the directories in LIBPATH if there
5357 # are no directories specified by -L.
5358 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5359 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
5360 # Neither direct hardcoding nor static linking is supported with a
5362 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5367 if test ia64 = "$host_cpu"; then
5368 # On IA64, the linker does run time linking by default, so we don't
5369 # have to do anything special.
5370 aix_use_runtimelinking=no
5371 exp_sym_flag='-Bexport'
5374 # If we're using GNU nm, then we don't want the "-C" option.
5375 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
5376 # Without the "-l" option, or with the "-B" option, AIX nm treats
5377 # weak defined symbols like other global defined symbols, whereas
5378 # GNU nm marks them as "W".
5379 # While the 'weak' keyword is ignored in the Export File, we need
5380 # it in the Import File for the 'aix-soname' feature, so we have
5381 # to replace the "-B" option with "-P" for AIX nm.
5382 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5383 _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'
5385 _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'
5387 aix_use_runtimelinking=no
5389 # Test if we are trying to use run time linking or normal
5390 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5391 # have runtime linking enabled, and use it for executables.
5392 # For shared libraries, we enable/disable runtime linking
5393 # depending on the kind of the shared library created -
5394 # when "with_aix_soname,aix_use_runtimelinking" is:
5395 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
5396 # "aix,yes" lib.so shared, rtl:yes, for executables
5397 # lib.a static archive
5398 # "both,no" lib.so.V(shr.o) shared, rtl:yes
5399 # lib.a(lib.so.V) shared, rtl:no, for executables
5400 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
5401 # lib.a(lib.so.V) shared, rtl:no
5402 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
5403 # lib.a static archive
5404 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5405 for ld_flag in $LDFLAGS; do
5406 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
5407 aix_use_runtimelinking=yes
5411 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
5412 # With aix-soname=svr4, we create the lib.so.V shared archives only,
5413 # so we don't have lib.a shared libs to link our executables.
5414 # We have to force runtime linking in this case.
5415 aix_use_runtimelinking=yes
5416 LDFLAGS="$LDFLAGS -Wl,-brtl"
5421 exp_sym_flag='-bexport'
5422 no_entry_flag='-bnoentry'
5425 # When large executables or shared objects are built, AIX ld can
5426 # have problems creating the table of contents. If linking a library
5427 # or program results in "error TOC overflow" add -mminimal-toc to
5428 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5429 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5431 _LT_TAGVAR(archive_cmds, $1)=''
5432 _LT_TAGVAR(hardcode_direct, $1)=yes
5433 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5434 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5435 _LT_TAGVAR(link_all_deplibs, $1)=yes
5436 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
5437 case $with_aix_soname,$aix_use_runtimelinking in
5438 aix,*) ;; # traditional, no import file
5439 svr4,* | *,yes) # use import file
5440 # The Import File defines what to hardcode.
5441 _LT_TAGVAR(hardcode_direct, $1)=no
5442 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
5446 if test yes = "$GCC"; then
5447 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5448 # We only want to do this on AIX 4.2 and lower, the check
5449 # below for broken collect2 doesn't work under 4.3+
5450 collect2name=`$CC -print-prog-name=collect2`
5451 if test -f "$collect2name" &&
5452 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5454 # We have reworked collect2
5457 # We have old collect2
5458 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5459 # It fails to find uninstalled libraries when the uninstalled
5460 # path is not listed in the libpath. Setting hardcode_minus_L
5461 # to unsupported forces relinking
5462 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5463 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5464 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5468 shared_flag='-shared'
5469 if test yes = "$aix_use_runtimelinking"; then
5470 shared_flag="$shared_flag "'$wl-G'
5472 # Need to ensure runtime linking is disabled for the traditional
5473 # shared library, or the linker may eventually find shared libraries
5474 # /with/ Import File - we do not want to mix them.
5475 shared_flag_aix='-shared'
5476 shared_flag_svr4='-shared $wl-G'
5479 if test ia64 = "$host_cpu"; then
5480 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5481 # chokes on -Wl,-G. The following line is correct:
5484 if test yes = "$aix_use_runtimelinking"; then
5487 shared_flag='$wl-bM:SRE'
5489 shared_flag_aix='$wl-bM:SRE'
5490 shared_flag_svr4='$wl-G'
5494 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5495 # It seems that -bexpall does not export symbols beginning with
5496 # underscore (_), so it is better to generate a list of symbols to export.
5497 _LT_TAGVAR(always_export_symbols, $1)=yes
5498 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5499 # Warning - without using the other runtime loading flags (-brtl),
5500 # -berok will link without error, but may produce a broken library.
5501 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5502 # Determine the default libpath from the value encoded in an
5504 _LT_SYS_MODULE_PATH_AIX([$1])
5505 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5506 _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
5508 if test ia64 = "$host_cpu"; then
5509 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5510 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5511 _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"
5513 # Determine the default libpath from the value encoded in an
5515 _LT_SYS_MODULE_PATH_AIX([$1])
5516 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5517 # Warning - without using the other run time loading flags,
5518 # -berok will link without error, but may produce a broken library.
5519 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
5520 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
5521 if test yes = "$with_gnu_ld"; then
5522 # We only use this code for GNU lds that support --whole-archive.
5523 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
5525 # Exported symbols can be pulled into shared objects from archives
5526 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5528 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5529 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
5530 # -brtl affects multiple linker settings, -berok does not and is overridden later
5531 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
5532 if test svr4 != "$with_aix_soname"; then
5533 # This is similar to how AIX traditionally builds its shared libraries.
5534 _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'
5536 if test aix != "$with_aix_soname"; then
5537 _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'
5539 # used by -dlpreopen to get the symbols
5540 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
5542 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
5550 # see comment about AmigaOS4 .so support
5551 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5552 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5555 _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)'
5556 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5557 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5563 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5566 cygwin* | mingw* | pw32* | cegcc*)
5567 # When not using gcc, we currently assume that we are using
5568 # Microsoft Visual C++.
5569 # hardcode_libdir_flag_spec is actually meaningless, as there is
5570 # no search path for DLLs.
5571 case $cc_basename in
5574 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5575 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5576 _LT_TAGVAR(always_export_symbols, $1)=yes
5577 _LT_TAGVAR(file_list_spec, $1)='@'
5578 # Tell ltmain to make .lib files, not .a files.
5580 # Tell ltmain to make .dll files, not .so files.
5582 # FIXME: Setting linknames here is a bad hack.
5583 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
5584 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5585 cp "$export_symbols" "$output_objdir/$soname.def";
5586 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
5588 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
5590 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5592 # The linker will not automatically build a static lib if we build a DLL.
5593 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5594 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5595 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5596 _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'
5598 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5599 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5600 lt_tool_outputfile="@TOOL_OUTPUT@"~
5601 case $lt_outputfile in
5604 lt_outputfile=$lt_outputfile.exe
5605 lt_tool_outputfile=$lt_tool_outputfile.exe
5608 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
5609 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5610 $RM "$lt_outputfile.manifest";
5614 # Assume MSVC wrapper
5615 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5616 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5617 # Tell ltmain to make .lib files, not .a files.
5619 # Tell ltmain to make .dll files, not .so files.
5621 # FIXME: Setting linknames here is a bad hack.
5622 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5623 # The linker will automatically build a .lib file if we build a DLL.
5624 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5625 # FIXME: Should let the user specify the lib program.
5626 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5627 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5632 darwin* | rhapsody*)
5633 _LT_DARWIN_LINKER_FEATURES($1)
5637 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5638 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5639 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5642 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5643 # support. Future versions do this automatically, but an explicit c++rt0.o
5644 # does not break anything, and helps significantly (at the cost of a little
5647 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5648 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5649 _LT_TAGVAR(hardcode_direct, $1)=yes
5650 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5653 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5655 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5656 _LT_TAGVAR(hardcode_direct, $1)=yes
5657 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5658 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5661 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5662 freebsd* | dragonfly*)
5663 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5664 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5665 _LT_TAGVAR(hardcode_direct, $1)=yes
5666 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5670 if test yes = "$GCC"; then
5671 _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'
5673 _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'
5675 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5676 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5677 _LT_TAGVAR(hardcode_direct, $1)=yes
5679 # hardcode_minus_L: Not really in the search PATH,
5680 # but as the default location of the library.
5681 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5682 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5686 if test yes,no = "$GCC,$with_gnu_ld"; then
5687 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5689 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5691 if test no = "$with_gnu_ld"; then
5692 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5693 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5694 _LT_TAGVAR(hardcode_direct, $1)=yes
5695 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5696 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5697 # hardcode_minus_L: Not really in the search PATH,
5698 # but as the default location of the library.
5699 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5704 if test yes,no = "$GCC,$with_gnu_ld"; then
5707 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5710 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5713 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5719 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5722 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5726 # Older versions of the 11.00 compiler do not understand -b yet
5727 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5728 _LT_LINKER_OPTION([if $CC understands -b],
5729 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5730 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5731 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5732 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5736 if test no = "$with_gnu_ld"; then
5737 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5738 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5742 _LT_TAGVAR(hardcode_direct, $1)=no
5743 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5746 _LT_TAGVAR(hardcode_direct, $1)=yes
5747 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5748 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5750 # hardcode_minus_L: Not really in the search PATH,
5751 # but as the default location of the library.
5752 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5758 irix5* | irix6* | nonstopux*)
5759 if test yes = "$GCC"; then
5760 _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'
5761 # Try to use the -exported_symbol ld option, if it does not
5762 # work, assume that -exports_file does not work either and
5763 # implicitly export all symbols.
5764 # This should be the same for all languages, so no per-tag cache variable.
5765 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5766 [lt_cv_irix_exported_symbol],
5767 [save_LDFLAGS=$LDFLAGS
5768 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
5771 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5772 [C++], [[int foo (void) { return 0; }]],
5779 [lt_cv_irix_exported_symbol=yes],
5780 [lt_cv_irix_exported_symbol=no])
5781 LDFLAGS=$save_LDFLAGS])
5782 if test yes = "$lt_cv_irix_exported_symbol"; then
5783 _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'
5786 _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'
5787 _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'
5789 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5790 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5791 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5792 _LT_TAGVAR(inherit_rpath, $1)=yes
5793 _LT_TAGVAR(link_all_deplibs, $1)=yes
5797 case $cc_basename in
5799 # Fabrice Bellard et al's Tiny C Compiler
5800 _LT_TAGVAR(ld_shlibs, $1)=yes
5801 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5807 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5808 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5810 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5812 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5813 _LT_TAGVAR(hardcode_direct, $1)=yes
5814 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5818 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5819 _LT_TAGVAR(hardcode_direct, $1)=yes
5820 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5821 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5822 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5829 if test -f /usr/libexec/ld.so; then
5830 _LT_TAGVAR(hardcode_direct, $1)=yes
5831 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5832 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5833 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5834 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5835 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
5836 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5837 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5839 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5840 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5843 _LT_TAGVAR(ld_shlibs, $1)=no
5848 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5849 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5850 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5852 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5853 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5854 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5855 $ECHO EXPORTS >> $output_objdir/$libname.def~
5856 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5857 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5858 emximp -o $lib $output_objdir/$libname.def'
5859 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5860 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5861 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5862 $ECHO EXPORTS >> $output_objdir/$libname.def~
5864 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5865 prefix_cmds="$prefix_cmds -e 1d";
5867 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5868 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5869 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5870 emximp -o $lib $output_objdir/$libname.def'
5871 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5872 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5876 if test yes = "$GCC"; then
5877 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5878 _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'
5880 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5881 _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'
5883 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5884 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5885 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5888 osf4* | osf5*) # as osf3* with the addition of -msym flag
5889 if test yes = "$GCC"; then
5890 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5891 _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'
5892 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5894 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5895 _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'
5896 _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~
5897 $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'
5899 # Both c and cxx compiler support -rpath directly
5900 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5902 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5903 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5907 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5908 if test yes = "$GCC"; then
5910 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5911 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5912 $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'
5914 case `$CC -V 2>&1` in
5917 _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
5918 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5919 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5923 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5924 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5925 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5929 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5930 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5932 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5934 # The compiler driver will combine and reorder linker options,
5935 # but understands '-z linker_flag'. GCC discards it without '$wl',
5936 # but is careful enough not to reorder.
5937 # Supported since Solaris 2.6 (maybe 2.5.1?)
5938 if test yes = "$GCC"; then
5939 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5941 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5945 _LT_TAGVAR(link_all_deplibs, $1)=yes
5949 if test sequent = "$host_vendor"; then
5950 # Use $CC to link under sequent, because it throws in some extra .o
5951 # files that make .init and .fini sections work.
5952 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5954 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5956 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5957 _LT_TAGVAR(hardcode_direct, $1)=yes
5958 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5959 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5963 case $host_vendor in
5965 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5966 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5969 ## LD is ld it makes a PLAMLIB
5970 ## CC just makes a GrossModule.
5971 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5972 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5973 _LT_TAGVAR(hardcode_direct, $1)=no
5976 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5977 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5980 runpath_var='LD_RUN_PATH'
5981 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5985 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5986 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5987 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5991 if test -d /usr/nec; then
5992 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5993 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5994 runpath_var=LD_RUN_PATH
5995 hardcode_runpath_var=yes
5996 _LT_TAGVAR(ld_shlibs, $1)=yes
6000 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6001 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6002 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6003 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6004 runpath_var='LD_RUN_PATH'
6006 if test yes = "$GCC"; then
6007 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6008 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6010 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6011 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6015 sysv5* | sco3.2v5* | sco5v6*)
6016 # Note: We CANNOT use -z defs as we might desire, because we do not
6017 # link with -lc, and that would cause any symbols used from libc to
6018 # always be unresolved, which means just about no library would
6019 # ever link correctly. If we're not using GNU ld we use -z text
6020 # though, which does catch some bad symbols but isn't as heavy-handed
6022 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6023 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
6024 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6025 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6026 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
6027 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6028 _LT_TAGVAR(link_all_deplibs, $1)=yes
6029 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
6030 runpath_var='LD_RUN_PATH'
6032 if test yes = "$GCC"; then
6033 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6034 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6036 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6037 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6042 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6043 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6044 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6048 _LT_TAGVAR(ld_shlibs, $1)=no
6052 if test sni = "$host_vendor"; then
6054 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6055 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
6061 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6062 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
6064 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
6066 _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6067 _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6068 _LT_DECL([], [extract_expsyms_cmds], [2],
6069 [The commands to extract the exported symbol list from a shared archive])
6072 # Do we need to explicitly link libc?
6074 case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6076 # Assume -lc should be added
6077 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6079 if test yes,yes = "$GCC,$enable_shared"; then
6080 case $_LT_TAGVAR(archive_cmds, $1) in
6082 # FIXME: we may have to deal with multi-command sequences.
6085 # Test whether the compiler implicitly links with -lc since on some
6086 # systems, -lgcc has to come before -lc. If gcc already passes -lc
6087 # to ld, don't add -lc before -lgcc.
6088 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6089 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6091 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6093 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6096 libobjs=conftest.$ac_objext
6098 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6099 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6105 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6106 _LT_TAGVAR(allow_undefined_flag, $1)=
6107 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6109 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6111 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6113 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6115 cat conftest.err 1>&5
6119 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
6126 _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6127 [Whether or not to add -lc for building shared libraries])
6128 _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6129 [enable_shared_with_static_runtimes], [0],
6130 [Whether or not to disallow shared libs when runtime libs are static])
6131 _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6132 [Compiler flag to allow reflexive dlopens])
6133 _LT_TAGDECL([], [whole_archive_flag_spec], [1],
6134 [Compiler flag to generate shared objects directly from archives])
6135 _LT_TAGDECL([], [compiler_needs_object], [1],
6136 [Whether the compiler copes with passing no objects directly])
6137 _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6138 [Create an old-style archive from a shared archive])
6139 _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6140 [Create a temporary old-style archive to link instead of a shared archive])
6141 _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6142 _LT_TAGDECL([], [archive_expsym_cmds], [2])
6143 _LT_TAGDECL([], [module_cmds], [2],
6144 [Commands used to build a loadable module if different from building
6146 _LT_TAGDECL([], [module_expsym_cmds], [2])
6147 _LT_TAGDECL([], [with_gnu_ld], [1],
6148 [Whether we are building with GNU ld or not])
6149 _LT_TAGDECL([], [allow_undefined_flag], [1],
6150 [Flag that allows shared libraries with undefined symbols to be built])
6151 _LT_TAGDECL([], [no_undefined_flag], [1],
6152 [Flag that enforces no undefined symbols])
6153 _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6154 [Flag to hardcode $libdir into a binary during linking.
6155 This must work even if $libdir does not exist])
6156 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
6157 [Whether we need a single "-rpath" flag with a separated argument])
6158 _LT_TAGDECL([], [hardcode_direct], [0],
6159 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6160 DIR into the resulting binary])
6161 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
6162 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6163 DIR into the resulting binary and the resulting library dependency is
6164 "absolute", i.e impossible to change by setting $shlibpath_var if the
6165 library is relocated])
6166 _LT_TAGDECL([], [hardcode_minus_L], [0],
6167 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6168 into the resulting binary])
6169 _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6170 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6171 into the resulting binary])
6172 _LT_TAGDECL([], [hardcode_automatic], [0],
6173 [Set to "yes" if building a shared library automatically hardcodes DIR
6174 into the library and all subsequent libraries and executables linked
6176 _LT_TAGDECL([], [inherit_rpath], [0],
6177 [Set to yes if linker adds runtime paths of dependent libraries
6178 to runtime path list])
6179 _LT_TAGDECL([], [link_all_deplibs], [0],
6180 [Whether libtool must link a program against all its dependency libraries])
6181 _LT_TAGDECL([], [always_export_symbols], [0],
6182 [Set to "yes" if exported symbols are required])
6183 _LT_TAGDECL([], [export_symbols_cmds], [2],
6184 [The commands to list exported symbols])
6185 _LT_TAGDECL([], [exclude_expsyms], [1],
6186 [Symbols that should not be listed in the preloaded symbols])
6187 _LT_TAGDECL([], [include_expsyms], [1],
6188 [Symbols that must always be exported])
6189 _LT_TAGDECL([], [prelink_cmds], [2],
6190 [Commands necessary for linking programs (against libraries) with templates])
6191 _LT_TAGDECL([], [postlink_cmds], [2],
6192 [Commands necessary for finishing linking programs])
6193 _LT_TAGDECL([], [file_list_spec], [1],
6194 [Specify filename containing input files])
6195 dnl FIXME: Not yet implemented
6196 dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6197 dnl [Compiler flag to generate thread safe objects])
6198 ])# _LT_LINKER_SHLIBS
6201 # _LT_LANG_C_CONFIG([TAG])
6202 # ------------------------
6203 # Ensure that the configuration variables for a C compiler are suitably
6204 # defined. These variables are subsequently used by _LT_CONFIG to write
6205 # the compiler configuration to 'libtool'.
6206 m4_defun([_LT_LANG_C_CONFIG],
6207 [m4_require([_LT_DECL_EGREP])dnl
6211 # Source file extension for C test sources.
6214 # Object file extension for compiled C test sources.
6216 _LT_TAGVAR(objext, $1)=$objext
6218 # Code to be used in simple compile tests
6219 lt_simple_compile_test_code="int some_variable = 0;"
6221 # Code to be used in simple link tests
6222 lt_simple_link_test_code='int main(){return(0);}'
6225 # Save the default compiler, since it gets overwritten when the other
6226 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6227 compiler_DEFAULT=$CC
6229 # save warnings/boilerplate of simple test code
6230 _LT_COMPILER_BOILERPLATE
6231 _LT_LINKER_BOILERPLATE
6233 if test -n "$compiler"; then
6234 _LT_COMPILER_NO_RTTI($1)
6235 _LT_COMPILER_PIC($1)
6236 _LT_COMPILER_C_O($1)
6237 _LT_COMPILER_FILE_LOCKS($1)
6238 _LT_LINKER_SHLIBS($1)
6239 _LT_SYS_DYNAMIC_LINKER($1)
6240 _LT_LINKER_HARDCODE_LIBPATH($1)
6244 # Report what library types will actually be built
6245 AC_MSG_CHECKING([if libtool supports shared libraries])
6246 AC_MSG_RESULT([$can_build_shared])
6248 AC_MSG_CHECKING([whether to build shared libraries])
6249 test no = "$can_build_shared" && enable_shared=no
6251 # On AIX, shared libraries and static libraries use the same namespace, and
6252 # are all built from PIC.
6255 test yes = "$enable_shared" && enable_static=no
6256 if test -n "$RANLIB"; then
6257 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6258 postinstall_cmds='$RANLIB $lib'
6263 if test ia64 != "$host_cpu"; then
6264 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
6265 yes,aix,yes) ;; # shared object as lib.so file only
6266 yes,svr4,*) ;; # shared object as lib.so archive member only
6267 yes,*) enable_static=no ;; # shared object in lib.a archive as well
6272 AC_MSG_RESULT([$enable_shared])
6274 AC_MSG_CHECKING([whether to build static libraries])
6275 # Make sure either enable_shared or enable_static is yes.
6276 test yes = "$enable_shared" || enable_static=yes
6277 AC_MSG_RESULT([$enable_static])
6283 ])# _LT_LANG_C_CONFIG
6286 # _LT_LANG_CXX_CONFIG([TAG])
6287 # --------------------------
6288 # Ensure that the configuration variables for a C++ compiler are suitably
6289 # defined. These variables are subsequently used by _LT_CONFIG to write
6290 # the compiler configuration to 'libtool'.
6291 m4_defun([_LT_LANG_CXX_CONFIG],
6292 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6293 m4_require([_LT_DECL_EGREP])dnl
6294 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6295 if test -n "$CXX" && ( test no != "$CXX" &&
6296 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6297 (test g++ != "$CXX"))); then
6300 _lt_caught_CXX_error=yes
6304 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6305 _LT_TAGVAR(allow_undefined_flag, $1)=
6306 _LT_TAGVAR(always_export_symbols, $1)=no
6307 _LT_TAGVAR(archive_expsym_cmds, $1)=
6308 _LT_TAGVAR(compiler_needs_object, $1)=no
6309 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
6310 _LT_TAGVAR(hardcode_direct, $1)=no
6311 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6312 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6313 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6314 _LT_TAGVAR(hardcode_minus_L, $1)=no
6315 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6316 _LT_TAGVAR(hardcode_automatic, $1)=no
6317 _LT_TAGVAR(inherit_rpath, $1)=no
6318 _LT_TAGVAR(module_cmds, $1)=
6319 _LT_TAGVAR(module_expsym_cmds, $1)=
6320 _LT_TAGVAR(link_all_deplibs, $1)=unknown
6321 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6322 _LT_TAGVAR(reload_flag, $1)=$reload_flag
6323 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6324 _LT_TAGVAR(no_undefined_flag, $1)=
6325 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6326 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6328 # Source file extension for C++ test sources.
6331 # Object file extension for compiled C++ test sources.
6333 _LT_TAGVAR(objext, $1)=$objext
6335 # No sense in running all these tests if we already determined that
6336 # the CXX compiler isn't working. Some variables (like enable_shared)
6337 # are currently assumed to apply to all compilers on this platform,
6338 # and will be corrupted by setting them based on a non-working compiler.
6339 if test yes != "$_lt_caught_CXX_error"; then
6340 # Code to be used in simple compile tests
6341 lt_simple_compile_test_code="int some_variable = 0;"
6343 # Code to be used in simple link tests
6344 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6346 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6349 # save warnings/boilerplate of simple test code
6350 _LT_COMPILER_BOILERPLATE
6351 _LT_LINKER_BOILERPLATE
6353 # Allow CC to be a program name with arguments.
6355 lt_save_CFLAGS=$CFLAGS
6359 lt_save_with_gnu_ld=$with_gnu_ld
6360 lt_save_path_LD=$lt_cv_path_LD
6361 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6362 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6364 $as_unset lt_cv_prog_gnu_ld
6366 if test -n "${lt_cv_path_LDCXX+set}"; then
6367 lt_cv_path_LD=$lt_cv_path_LDCXX
6369 $as_unset lt_cv_path_LD
6371 test -z "${LDCXX+set}" || LD=$LDCXX
6375 _LT_TAGVAR(compiler, $1)=$CC
6376 _LT_CC_BASENAME([$compiler])
6378 if test -n "$compiler"; then
6379 # We don't want -fno-exception when compiling C++ code, so set the
6380 # no_builtin_flag separately
6381 if test yes = "$GXX"; then
6382 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6384 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6387 if test yes = "$GXX"; then
6388 # Set up default GNU C++ configuration
6392 # Check if GNU C++ uses GNU ld as the underlying linker, since the
6393 # archiving commands below assume that GNU ld is being used.
6394 if test yes = "$with_gnu_ld"; then
6395 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6396 _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'
6398 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6399 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6401 # If archive_cmds runs LD, not CC, wlarc should be empty
6402 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6403 # investigate it a little bit more. (MM)
6406 # ancient GNU ld didn't support --whole-archive et. al.
6407 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6408 $GREP 'no-whole-archive' > /dev/null; then
6409 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
6411 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6417 # A generic and very simple default shared library creation
6418 # command for GNU C++ for the case where it uses the native
6419 # linker, instead of GNU ld. If possible, this setting should
6420 # overridden to take advantage of the native linker features on
6421 # the platform it is being used on.
6422 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6425 # Commands to make compiler produce verbose output that lists
6426 # what "hidden" libraries, object files and flags are used when
6427 # linking a shared library.
6428 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6436 # PORTME: fill in a description of your system's C++ link characteristics
6437 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
6438 _LT_TAGVAR(ld_shlibs, $1)=yes
6441 # FIXME: insert proper C++ library support
6442 _LT_TAGVAR(ld_shlibs, $1)=no
6445 if test ia64 = "$host_cpu"; then
6446 # On IA64, the linker does run time linking by default, so we don't
6447 # have to do anything special.
6448 aix_use_runtimelinking=no
6449 exp_sym_flag='-Bexport'
6452 aix_use_runtimelinking=no
6454 # Test if we are trying to use run time linking or normal
6455 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6456 # have runtime linking enabled, and use it for executables.
6457 # For shared libraries, we enable/disable runtime linking
6458 # depending on the kind of the shared library created -
6459 # when "with_aix_soname,aix_use_runtimelinking" is:
6460 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
6461 # "aix,yes" lib.so shared, rtl:yes, for executables
6462 # lib.a static archive
6463 # "both,no" lib.so.V(shr.o) shared, rtl:yes
6464 # lib.a(lib.so.V) shared, rtl:no, for executables
6465 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
6466 # lib.a(lib.so.V) shared, rtl:no
6467 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
6468 # lib.a static archive
6469 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6470 for ld_flag in $LDFLAGS; do
6473 aix_use_runtimelinking=yes
6478 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
6479 # With aix-soname=svr4, we create the lib.so.V shared archives only,
6480 # so we don't have lib.a shared libs to link our executables.
6481 # We have to force runtime linking in this case.
6482 aix_use_runtimelinking=yes
6483 LDFLAGS="$LDFLAGS -Wl,-brtl"
6488 exp_sym_flag='-bexport'
6489 no_entry_flag='-bnoentry'
6492 # When large executables or shared objects are built, AIX ld can
6493 # have problems creating the table of contents. If linking a library
6494 # or program results in "error TOC overflow" add -mminimal-toc to
6495 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6496 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6498 _LT_TAGVAR(archive_cmds, $1)=''
6499 _LT_TAGVAR(hardcode_direct, $1)=yes
6500 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6501 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6502 _LT_TAGVAR(link_all_deplibs, $1)=yes
6503 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
6504 case $with_aix_soname,$aix_use_runtimelinking in
6505 aix,*) ;; # no import file
6506 svr4,* | *,yes) # use import file
6507 # The Import File defines what to hardcode.
6508 _LT_TAGVAR(hardcode_direct, $1)=no
6509 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6513 if test yes = "$GXX"; then
6514 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6515 # We only want to do this on AIX 4.2 and lower, the check
6516 # below for broken collect2 doesn't work under 4.3+
6517 collect2name=`$CC -print-prog-name=collect2`
6518 if test -f "$collect2name" &&
6519 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6521 # We have reworked collect2
6524 # We have old collect2
6525 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6526 # It fails to find uninstalled libraries when the uninstalled
6527 # path is not listed in the libpath. Setting hardcode_minus_L
6528 # to unsupported forces relinking
6529 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6530 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6531 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6534 shared_flag='-shared'
6535 if test yes = "$aix_use_runtimelinking"; then
6536 shared_flag=$shared_flag' $wl-G'
6538 # Need to ensure runtime linking is disabled for the traditional
6539 # shared library, or the linker may eventually find shared libraries
6540 # /with/ Import File - we do not want to mix them.
6541 shared_flag_aix='-shared'
6542 shared_flag_svr4='-shared $wl-G'
6545 if test ia64 = "$host_cpu"; then
6546 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6547 # chokes on -Wl,-G. The following line is correct:
6550 if test yes = "$aix_use_runtimelinking"; then
6553 shared_flag='$wl-bM:SRE'
6555 shared_flag_aix='$wl-bM:SRE'
6556 shared_flag_svr4='$wl-G'
6560 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
6561 # It seems that -bexpall does not export symbols beginning with
6562 # underscore (_), so it is better to generate a list of symbols to
6564 _LT_TAGVAR(always_export_symbols, $1)=yes
6565 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
6566 # Warning - without using the other runtime loading flags (-brtl),
6567 # -berok will link without error, but may produce a broken library.
6568 # The "-G" linker flag allows undefined symbols.
6569 _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
6570 # Determine the default libpath from the value encoded in an empty
6572 _LT_SYS_MODULE_PATH_AIX([$1])
6573 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6575 _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
6577 if test ia64 = "$host_cpu"; then
6578 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
6579 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6580 _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"
6582 # Determine the default libpath from the value encoded in an
6584 _LT_SYS_MODULE_PATH_AIX([$1])
6585 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6586 # Warning - without using the other run time loading flags,
6587 # -berok will link without error, but may produce a broken library.
6588 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
6589 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
6590 if test yes = "$with_gnu_ld"; then
6591 # We only use this code for GNU lds that support --whole-archive.
6592 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
6594 # Exported symbols can be pulled into shared objects from archives
6595 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6597 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6598 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
6599 # -brtl affects multiple linker settings, -berok does not and is overridden later
6600 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
6601 if test svr4 != "$with_aix_soname"; then
6602 # This is similar to how AIX traditionally builds its shared
6603 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
6604 _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'
6606 if test aix != "$with_aix_soname"; then
6607 _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'
6609 # used by -dlpreopen to get the symbols
6610 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
6612 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
6618 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6619 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6620 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6621 # support --undefined. This deserves some investigation. FIXME
6622 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6624 _LT_TAGVAR(ld_shlibs, $1)=no
6629 case $cc_basename in
6631 # FIXME: insert proper C++ library support
6632 _LT_TAGVAR(ld_shlibs, $1)=no
6637 cygwin* | mingw* | pw32* | cegcc*)
6638 case $GXX,$cc_basename in
6641 # hardcode_libdir_flag_spec is actually meaningless, as there is
6642 # no search path for DLLs.
6643 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6644 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6645 _LT_TAGVAR(always_export_symbols, $1)=yes
6646 _LT_TAGVAR(file_list_spec, $1)='@'
6647 # Tell ltmain to make .lib files, not .a files.
6649 # Tell ltmain to make .dll files, not .so files.
6651 # FIXME: Setting linknames here is a bad hack.
6652 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
6653 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6654 cp "$export_symbols" "$output_objdir/$soname.def";
6655 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
6657 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
6659 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6661 # The linker will not automatically build a static lib if we build a DLL.
6662 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6663 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6665 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6666 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6667 lt_tool_outputfile="@TOOL_OUTPUT@"~
6668 case $lt_outputfile in
6671 lt_outputfile=$lt_outputfile.exe
6672 lt_tool_outputfile=$lt_tool_outputfile.exe
6675 func_to_tool_file "$lt_outputfile"~
6676 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
6677 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6678 $RM "$lt_outputfile.manifest";
6683 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6684 # as there is no search path for DLLs.
6685 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6686 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
6687 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6688 _LT_TAGVAR(always_export_symbols, $1)=no
6689 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6691 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6692 _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'
6693 # If the export-symbols file already is a .def file, use it as
6694 # is; otherwise, prepend EXPORTS...
6695 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6696 cp $export_symbols $output_objdir/$soname.def;
6698 echo EXPORTS > $output_objdir/$soname.def;
6699 cat $export_symbols >> $output_objdir/$soname.def;
6701 $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'
6703 _LT_TAGVAR(ld_shlibs, $1)=no
6708 darwin* | rhapsody*)
6709 _LT_DARWIN_LINKER_FEATURES($1)
6713 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6714 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6715 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6717 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6718 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6719 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6720 $ECHO EXPORTS >> $output_objdir/$libname.def~
6721 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
6722 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6723 emximp -o $lib $output_objdir/$libname.def'
6724 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6725 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6726 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6727 $ECHO EXPORTS >> $output_objdir/$libname.def~
6729 if test EXPORTS = "`$SED 1q $export_symbols`"; then
6730 prefix_cmds="$prefix_cmds -e 1d";
6732 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
6733 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
6734 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6735 emximp -o $lib $output_objdir/$libname.def'
6736 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
6737 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6741 case $cc_basename in
6743 # FIXME: insert proper C++ library support
6744 _LT_TAGVAR(ld_shlibs, $1)=no
6747 # Green Hills C++ Compiler
6748 # FIXME: insert proper C++ library support
6749 _LT_TAGVAR(ld_shlibs, $1)=no
6752 # FIXME: insert proper C++ library support
6753 _LT_TAGVAR(ld_shlibs, $1)=no
6759 # C++ shared libraries reported to be fairly broken before
6761 _LT_TAGVAR(ld_shlibs, $1)=no
6765 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6768 freebsd* | dragonfly*)
6769 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6771 _LT_TAGVAR(ld_shlibs, $1)=yes
6775 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6776 _LT_TAGVAR(link_all_deplibs, $1)=yes
6780 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6781 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6782 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6783 _LT_TAGVAR(hardcode_direct, $1)=yes
6784 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6785 # but as the default
6786 # location of the library.
6788 case $cc_basename in
6790 # FIXME: insert proper C++ library support
6791 _LT_TAGVAR(ld_shlibs, $1)=no
6794 _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'
6795 # Commands to make compiler produce verbose output that lists
6796 # what "hidden" libraries, object files and flags are used when
6797 # linking a shared library.
6799 # There doesn't appear to be a way to prevent this compiler from
6800 # explicitly linking system object files so we need to strip them
6801 # from the output so that they don't get included in the library
6803 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"'
6806 if test yes = "$GXX"; then
6807 _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'
6809 # FIXME: insert proper C++ library support
6810 _LT_TAGVAR(ld_shlibs, $1)=no
6817 if test no = "$with_gnu_ld"; then
6818 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6819 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6825 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6831 _LT_TAGVAR(hardcode_direct, $1)=no
6832 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6835 _LT_TAGVAR(hardcode_direct, $1)=yes
6836 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6837 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6838 # but as the default
6839 # location of the library.
6843 case $cc_basename in
6845 # FIXME: insert proper C++ library support
6846 _LT_TAGVAR(ld_shlibs, $1)=no
6851 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6854 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6857 _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'
6860 # Commands to make compiler produce verbose output that lists
6861 # what "hidden" libraries, object files and flags are used when
6862 # linking a shared library.
6864 # There doesn't appear to be a way to prevent this compiler from
6865 # explicitly linking system object files so we need to strip them
6866 # from the output so that they don't get included in the library
6868 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"'
6871 if test yes = "$GXX"; then
6872 if test no = "$with_gnu_ld"; then
6875 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6878 _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'
6881 _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'
6886 # FIXME: insert proper C++ library support
6887 _LT_TAGVAR(ld_shlibs, $1)=no
6894 _LT_TAGVAR(hardcode_direct, $1)=no
6895 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6896 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6897 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6898 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6899 # Instead, shared libraries are loaded at an image base (0x10000000 by
6900 # default) and relocated if they conflict, which is a slow very memory
6901 # consuming and fragmenting process. To avoid this, we pick a random,
6902 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6903 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6904 _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'
6905 _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'
6908 case $cc_basename in
6911 _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'
6913 # Archives containing C++ object files must be created using
6914 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6915 # necessary to make sure instantiated templates are included
6917 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6920 if test yes = "$GXX"; then
6921 if test no = "$with_gnu_ld"; then
6922 _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'
6924 _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'
6927 _LT_TAGVAR(link_all_deplibs, $1)=yes
6930 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6931 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6932 _LT_TAGVAR(inherit_rpath, $1)=yes
6935 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6936 case $cc_basename in
6938 # Kuck and Associates, Inc. (KAI) C++ Compiler
6940 # KCC will only create a shared library if the output file
6941 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6942 # to its proper name (with version) after linking.
6943 _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'
6944 _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'
6945 # Commands to make compiler produce verbose output that lists
6946 # what "hidden" libraries, object files and flags are used when
6947 # linking a shared library.
6949 # There doesn't appear to be a way to prevent this compiler from
6950 # explicitly linking system object files so we need to strip them
6951 # from the output so that they don't get included in the library
6953 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"'
6955 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6956 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6958 # Archives containing C++ object files must be created using
6959 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6960 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6965 # version 8.0 and above of icpc choke on multiply defined symbols
6966 # if we add $predep_objects and $postdep_objects, however 7.1 and
6967 # earlier do not add the objects themselves.
6968 case `$CC -V 2>&1` in
6970 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6971 _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'
6973 *) # Version 8.0 or newer
6976 ia64*) tmp_idyn=' -i_dynamic';;
6978 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6979 _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'
6982 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6983 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6984 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6985 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
6988 # Portland Group C++ compiler
6990 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
6991 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6993 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
6994 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
6995 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6997 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
6998 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7000 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
7002 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7003 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7004 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
7006 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7007 $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'
7009 *) # Version 6 and above use weak symbols
7010 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7011 _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'
7015 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
7016 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7017 _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'
7021 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7022 _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'
7024 runpath_var=LD_RUN_PATH
7025 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7026 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7028 # Commands to make compiler produce verbose output that lists
7029 # what "hidden" libraries, object files and flags are used when
7030 # linking a shared library.
7032 # There doesn't appear to be a way to prevent this compiler from
7033 # explicitly linking system object files so we need to strip them
7034 # from the output so that they don't get included in the library
7036 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'
7038 xl* | mpixl* | bgxl*)
7039 # IBM XL 8.0 on PPC, with GNU ld
7040 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7041 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7042 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7043 if test yes = "$supports_anon_versioning"; then
7044 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
7045 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7046 echo "local: *; };" >> $output_objdir/$libname.ver~
7047 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7051 case `$CC -V 2>&1 | sed 5q` in
7054 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7055 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7056 _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'
7057 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7058 _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'
7059 _LT_TAGVAR(compiler_needs_object, $1)=yes
7061 # Not sure whether something based on
7062 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7064 output_verbose_link_cmd='func_echo_all'
7066 # Archives containing C++ object files must be created using
7067 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7068 # necessary to make sure instantiated templates are included
7070 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7078 # FIXME: insert proper C++ library support
7079 _LT_TAGVAR(ld_shlibs, $1)=no
7083 # FIXME: insert proper C++ library support
7084 _LT_TAGVAR(ld_shlibs, $1)=no
7088 case $cc_basename in
7090 # FIXME: insert proper C++ library support
7091 _LT_TAGVAR(ld_shlibs, $1)=no
7094 # FIXME: insert proper C++ library support
7095 _LT_TAGVAR(ld_shlibs, $1)=no
7101 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7102 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7104 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7105 _LT_TAGVAR(hardcode_direct, $1)=yes
7106 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7108 # Workaround some broken pre-1.5 toolchains
7109 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7113 _LT_TAGVAR(ld_shlibs, $1)=yes
7117 if test -f /usr/libexec/ld.so; then
7118 _LT_TAGVAR(hardcode_direct, $1)=yes
7119 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7120 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7121 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7122 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7123 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
7124 _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'
7125 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7126 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7128 output_verbose_link_cmd=func_echo_all
7130 _LT_TAGVAR(ld_shlibs, $1)=no
7134 osf3* | osf4* | osf5*)
7135 case $cc_basename in
7137 # Kuck and Associates, Inc. (KAI) C++ Compiler
7139 # KCC will only create a shared library if the output file
7140 # ends with ".so" (or ".sl" for HP-UX), so rename the library
7141 # to its proper name (with version) after linking.
7142 _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'
7144 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7145 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7147 # Archives containing C++ object files must be created using
7148 # the KAI C++ compiler.
7150 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7151 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7155 # Rational C++ 2.4.1
7156 # FIXME: insert proper C++ library support
7157 _LT_TAGVAR(ld_shlibs, $1)=no
7162 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7163 _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'
7164 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7167 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
7168 _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'
7169 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
7170 echo "-hidden">> $lib.exp~
7171 $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~
7173 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7177 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7179 # Commands to make compiler produce verbose output that lists
7180 # what "hidden" libraries, object files and flags are used when
7181 # linking a shared library.
7183 # There doesn't appear to be a way to prevent this compiler from
7184 # explicitly linking system object files so we need to strip them
7185 # from the output so that they don't get included in the library
7187 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"'
7190 if test yes,no = "$GXX,$with_gnu_ld"; then
7191 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7194 _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'
7197 _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'
7201 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7202 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7204 # Commands to make compiler produce verbose output that lists
7205 # what "hidden" libraries, object files and flags are used when
7206 # linking a shared library.
7207 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7210 # FIXME: insert proper C++ library support
7211 _LT_TAGVAR(ld_shlibs, $1)=no
7218 # FIXME: insert proper C++ library support
7219 _LT_TAGVAR(ld_shlibs, $1)=no
7223 case $cc_basename in
7226 # FIXME: insert proper C++ library support
7227 _LT_TAGVAR(ld_shlibs, $1)=no
7231 # FIXME: insert proper C++ library support
7232 _LT_TAGVAR(ld_shlibs, $1)=no
7235 # FIXME: insert proper C++ library support
7236 _LT_TAGVAR(ld_shlibs, $1)=no
7242 case $cc_basename in
7244 # Sun C++ 4.2, 5.x and Centerline C++
7245 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7246 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7247 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7248 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7249 $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'
7251 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7252 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7254 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7256 # The compiler driver will combine and reorder linker options,
7257 # but understands '-z linker_flag'.
7258 # Supported since Solaris 2.6 (maybe 2.5.1?)
7259 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7262 _LT_TAGVAR(link_all_deplibs, $1)=yes
7264 output_verbose_link_cmd='func_echo_all'
7266 # Archives containing C++ object files must be created using
7267 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7268 # necessary to make sure instantiated templates are included
7270 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7273 # Green Hills C++ Compiler
7274 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7276 # The C++ compiler must be used to create the archive.
7277 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
7280 # GNU C++ compiler with Solaris linker
7281 if test yes,no = "$GXX,$with_gnu_ld"; then
7282 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
7283 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
7284 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7285 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7286 $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'
7288 # Commands to make compiler produce verbose output that lists
7289 # what "hidden" libraries, object files and flags are used when
7290 # linking a shared library.
7291 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7293 # g++ 2.7 appears to require '-G' NOT '-shared' on this
7295 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7296 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7297 $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'
7299 # Commands to make compiler produce verbose output that lists
7300 # what "hidden" libraries, object files and flags are used when
7301 # linking a shared library.
7302 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7305 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
7307 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7309 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7317 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
7318 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7319 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7320 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7321 runpath_var='LD_RUN_PATH'
7323 case $cc_basename in
7325 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7326 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7329 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7330 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7335 sysv5* | sco3.2v5* | sco5v6*)
7336 # Note: We CANNOT use -z defs as we might desire, because we do not
7337 # link with -lc, and that would cause any symbols used from libc to
7338 # always be unresolved, which means just about no library would
7339 # ever link correctly. If we're not using GNU ld we use -z text
7340 # though, which does catch some bad symbols but isn't as heavy-handed
7342 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7343 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7344 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7345 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7346 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7347 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7348 _LT_TAGVAR(link_all_deplibs, $1)=yes
7349 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7350 runpath_var='LD_RUN_PATH'
7352 case $cc_basename in
7354 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7355 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7356 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
7357 '"$_LT_TAGVAR(old_archive_cmds, $1)"
7358 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
7359 '"$_LT_TAGVAR(reload_cmds, $1)"
7362 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7363 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7369 case $cc_basename in
7371 # NonStop-UX NCC 3.20
7372 # FIXME: insert proper C++ library support
7373 _LT_TAGVAR(ld_shlibs, $1)=no
7376 # FIXME: insert proper C++ library support
7377 _LT_TAGVAR(ld_shlibs, $1)=no
7383 # FIXME: insert proper C++ library support
7384 _LT_TAGVAR(ld_shlibs, $1)=no
7388 # FIXME: insert proper C++ library support
7389 _LT_TAGVAR(ld_shlibs, $1)=no
7393 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
7394 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
7396 _LT_TAGVAR(GCC, $1)=$GXX
7397 _LT_TAGVAR(LD, $1)=$LD
7400 ## There is no encapsulation within the following macros, do not change
7401 ## the running order or otherwise move them around unless you know exactly
7402 ## what you are doing...
7403 _LT_SYS_HIDDEN_LIBDEPS($1)
7404 _LT_COMPILER_PIC($1)
7405 _LT_COMPILER_C_O($1)
7406 _LT_COMPILER_FILE_LOCKS($1)
7407 _LT_LINKER_SHLIBS($1)
7408 _LT_SYS_DYNAMIC_LINKER($1)
7409 _LT_LINKER_HARDCODE_LIBPATH($1)
7412 fi # test -n "$compiler"
7415 CFLAGS=$lt_save_CFLAGS
7419 with_gnu_ld=$lt_save_with_gnu_ld
7420 lt_cv_path_LDCXX=$lt_cv_path_LD
7421 lt_cv_path_LD=$lt_save_path_LD
7422 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7423 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
7424 fi # test yes != "$_lt_caught_CXX_error"
7427 ])# _LT_LANG_CXX_CONFIG
7430 # _LT_FUNC_STRIPNAME_CNF
7431 # ----------------------
7432 # func_stripname_cnf prefix suffix name
7433 # strip PREFIX and SUFFIX off of NAME.
7434 # PREFIX and SUFFIX must not contain globbing or regex special
7435 # characters, hashes, percent signs, but SUFFIX may contain a leading
7436 # dot (in which case that matches only a dot).
7438 # This function is identical to the (non-XSI) version of func_stripname,
7439 # except this one can be used by m4 code that may be executed by configure,
7440 # rather than the libtool script.
7441 m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7442 AC_REQUIRE([_LT_DECL_SED])
7443 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7444 func_stripname_cnf ()
7447 .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
7448 *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
7450 } # func_stripname_cnf
7451 ])# _LT_FUNC_STRIPNAME_CNF
7454 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7455 # ---------------------------------
7456 # Figure out "hidden" library dependencies from verbose
7457 # compiler output when linking a shared library.
7458 # Parse the compiler output and extract the necessary
7459 # objects, libraries and library flags.
7460 m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7461 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7462 AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7463 # Dependencies to place before and after the object being linked:
7464 _LT_TAGVAR(predep_objects, $1)=
7465 _LT_TAGVAR(postdep_objects, $1)=
7466 _LT_TAGVAR(predeps, $1)=
7467 _LT_TAGVAR(postdeps, $1)=
7468 _LT_TAGVAR(compiler_lib_search_path, $1)=
7470 dnl we can't use the lt_simple_compile_test_code here,
7471 dnl because it contains code intended for an executable,
7472 dnl not a library. It's possible we should let each
7473 dnl tag define a new lt_????_link_test_code variable,
7474 dnl but it's only used here...
7475 m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7477 void foo (void) { a = 0; }
7479 ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7483 Foo (void) { a = 0; }
7488 ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
7496 ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
7504 ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
7507 public void bar (void) {
7512 ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7519 _lt_libdeps_save_CFLAGS=$CFLAGS
7520 case "$CC $CFLAGS " in #(
7521 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7522 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7523 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7526 dnl Parse the compiler output and extract the necessary
7527 dnl objects, libraries and library flags.
7528 if AC_TRY_EVAL(ac_compile); then
7529 # Parse the compiler output and extract the necessary
7530 # objects, libraries and library flags.
7532 # Sentinel used to keep track of whether or not we are before
7533 # the conftest object file.
7534 pre_test_object_deps_done=no
7536 for p in `eval "$output_verbose_link_cmd"`; do
7540 # Some compilers place space between "-{L,R}" and the path.
7542 if test x-L = "$p" ||
7543 test x-R = "$p"; then
7548 # Expand the sysroot to ease extracting the directories later.
7549 if test -z "$prev"; then
7551 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7552 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7553 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7557 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7559 if test no = "$pre_test_object_deps_done"; then
7562 # Internal compiler library paths should come after those
7563 # provided the user. The postdeps already come after the
7564 # user supplied libs so there is no need to process them.
7565 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7566 _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
7568 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
7571 # The "-l" case would never come before the object being
7572 # linked, so don't bother handling this case.
7575 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7576 _LT_TAGVAR(postdeps, $1)=$prev$p
7578 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
7584 *.lto.$objext) ;; # Ignore GCC LTO objects
7586 # This assumes that the test object file only shows up
7587 # once in the compiler output.
7588 if test "$p" = "conftest.$objext"; then
7589 pre_test_object_deps_done=yes
7593 if test no = "$pre_test_object_deps_done"; then
7594 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7595 _LT_TAGVAR(predep_objects, $1)=$p
7597 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7600 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7601 _LT_TAGVAR(postdep_objects, $1)=$p
7603 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7608 *) ;; # Ignore the rest.
7616 echo "libtool.m4: error: problem compiling $1 test program"
7619 $RM -f confest.$objext
7620 CFLAGS=$_lt_libdeps_save_CFLAGS
7622 # PORTME: override above test on systems where it is broken
7626 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7627 # hack all around it, let's just trust "g++" to DTRT.
7628 _LT_TAGVAR(predep_objects,$1)=
7629 _LT_TAGVAR(postdep_objects,$1)=
7630 _LT_TAGVAR(postdeps,$1)=
7635 case " $_LT_TAGVAR(postdeps, $1) " in
7636 *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7638 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7639 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7640 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
7642 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7643 [The directories searched by this compiler when creating a shared library])
7644 _LT_TAGDECL([], [predep_objects], [1],
7645 [Dependencies to place before and after the objects being linked to
7646 create a shared library])
7647 _LT_TAGDECL([], [postdep_objects], [1])
7648 _LT_TAGDECL([], [predeps], [1])
7649 _LT_TAGDECL([], [postdeps], [1])
7650 _LT_TAGDECL([], [compiler_lib_search_path], [1],
7651 [The library search path used internally by the compiler when linking
7653 ])# _LT_SYS_HIDDEN_LIBDEPS
7656 # _LT_LANG_F77_CONFIG([TAG])
7657 # --------------------------
7658 # Ensure that the configuration variables for a Fortran 77 compiler are
7659 # suitably defined. These variables are subsequently used by _LT_CONFIG
7660 # to write the compiler configuration to 'libtool'.
7661 m4_defun([_LT_LANG_F77_CONFIG],
7662 [AC_LANG_PUSH(Fortran 77)
7663 if test -z "$F77" || test no = "$F77"; then
7667 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7668 _LT_TAGVAR(allow_undefined_flag, $1)=
7669 _LT_TAGVAR(always_export_symbols, $1)=no
7670 _LT_TAGVAR(archive_expsym_cmds, $1)=
7671 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7672 _LT_TAGVAR(hardcode_direct, $1)=no
7673 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7674 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7675 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7676 _LT_TAGVAR(hardcode_minus_L, $1)=no
7677 _LT_TAGVAR(hardcode_automatic, $1)=no
7678 _LT_TAGVAR(inherit_rpath, $1)=no
7679 _LT_TAGVAR(module_cmds, $1)=
7680 _LT_TAGVAR(module_expsym_cmds, $1)=
7681 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7682 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7683 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7684 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7685 _LT_TAGVAR(no_undefined_flag, $1)=
7686 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7687 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7689 # Source file extension for f77 test sources.
7692 # Object file extension for compiled f77 test sources.
7694 _LT_TAGVAR(objext, $1)=$objext
7696 # No sense in running all these tests if we already determined that
7697 # the F77 compiler isn't working. Some variables (like enable_shared)
7698 # are currently assumed to apply to all compilers on this platform,
7699 # and will be corrupted by setting them based on a non-working compiler.
7700 if test yes != "$_lt_disable_F77"; then
7701 # Code to be used in simple compile tests
7702 lt_simple_compile_test_code="\
7708 # Code to be used in simple link tests
7709 lt_simple_link_test_code="\
7714 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7717 # save warnings/boilerplate of simple test code
7718 _LT_COMPILER_BOILERPLATE
7719 _LT_LINKER_BOILERPLATE
7721 # Allow CC to be a program name with arguments.
7724 lt_save_CFLAGS=$CFLAGS
7728 _LT_TAGVAR(compiler, $1)=$CC
7729 _LT_CC_BASENAME([$compiler])
7731 if test -n "$compiler"; then
7732 AC_MSG_CHECKING([if libtool supports shared libraries])
7733 AC_MSG_RESULT([$can_build_shared])
7735 AC_MSG_CHECKING([whether to build shared libraries])
7736 test no = "$can_build_shared" && enable_shared=no
7738 # On AIX, shared libraries and static libraries use the same namespace, and
7739 # are all built from PIC.
7742 test yes = "$enable_shared" && enable_static=no
7743 if test -n "$RANLIB"; then
7744 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7745 postinstall_cmds='$RANLIB $lib'
7749 if test ia64 != "$host_cpu"; then
7750 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7751 yes,aix,yes) ;; # shared object as lib.so file only
7752 yes,svr4,*) ;; # shared object as lib.so archive member only
7753 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7758 AC_MSG_RESULT([$enable_shared])
7760 AC_MSG_CHECKING([whether to build static libraries])
7761 # Make sure either enable_shared or enable_static is yes.
7762 test yes = "$enable_shared" || enable_static=yes
7763 AC_MSG_RESULT([$enable_static])
7765 _LT_TAGVAR(GCC, $1)=$G77
7766 _LT_TAGVAR(LD, $1)=$LD
7769 ## There is no encapsulation within the following macros, do not change
7770 ## the running order or otherwise move them around unless you know exactly
7771 ## what you are doing...
7772 _LT_COMPILER_PIC($1)
7773 _LT_COMPILER_C_O($1)
7774 _LT_COMPILER_FILE_LOCKS($1)
7775 _LT_LINKER_SHLIBS($1)
7776 _LT_SYS_DYNAMIC_LINKER($1)
7777 _LT_LINKER_HARDCODE_LIBPATH($1)
7780 fi # test -n "$compiler"
7784 CFLAGS=$lt_save_CFLAGS
7785 fi # test yes != "$_lt_disable_F77"
7788 ])# _LT_LANG_F77_CONFIG
7791 # _LT_LANG_FC_CONFIG([TAG])
7792 # -------------------------
7793 # Ensure that the configuration variables for a Fortran compiler are
7794 # suitably defined. These variables are subsequently used by _LT_CONFIG
7795 # to write the compiler configuration to 'libtool'.
7796 m4_defun([_LT_LANG_FC_CONFIG],
7797 [AC_LANG_PUSH(Fortran)
7799 if test -z "$FC" || test no = "$FC"; then
7803 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7804 _LT_TAGVAR(allow_undefined_flag, $1)=
7805 _LT_TAGVAR(always_export_symbols, $1)=no
7806 _LT_TAGVAR(archive_expsym_cmds, $1)=
7807 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7808 _LT_TAGVAR(hardcode_direct, $1)=no
7809 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7810 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7811 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7812 _LT_TAGVAR(hardcode_minus_L, $1)=no
7813 _LT_TAGVAR(hardcode_automatic, $1)=no
7814 _LT_TAGVAR(inherit_rpath, $1)=no
7815 _LT_TAGVAR(module_cmds, $1)=
7816 _LT_TAGVAR(module_expsym_cmds, $1)=
7817 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7818 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7819 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7820 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7821 _LT_TAGVAR(no_undefined_flag, $1)=
7822 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7823 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7825 # Source file extension for fc test sources.
7826 ac_ext=${ac_fc_srcext-f}
7828 # Object file extension for compiled fc test sources.
7830 _LT_TAGVAR(objext, $1)=$objext
7832 # No sense in running all these tests if we already determined that
7833 # the FC compiler isn't working. Some variables (like enable_shared)
7834 # are currently assumed to apply to all compilers on this platform,
7835 # and will be corrupted by setting them based on a non-working compiler.
7836 if test yes != "$_lt_disable_FC"; then
7837 # Code to be used in simple compile tests
7838 lt_simple_compile_test_code="\
7844 # Code to be used in simple link tests
7845 lt_simple_link_test_code="\
7850 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7853 # save warnings/boilerplate of simple test code
7854 _LT_COMPILER_BOILERPLATE
7855 _LT_LINKER_BOILERPLATE
7857 # Allow CC to be a program name with arguments.
7860 lt_save_CFLAGS=$CFLAGS
7864 GCC=$ac_cv_fc_compiler_gnu
7866 _LT_TAGVAR(compiler, $1)=$CC
7867 _LT_CC_BASENAME([$compiler])
7869 if test -n "$compiler"; then
7870 AC_MSG_CHECKING([if libtool supports shared libraries])
7871 AC_MSG_RESULT([$can_build_shared])
7873 AC_MSG_CHECKING([whether to build shared libraries])
7874 test no = "$can_build_shared" && enable_shared=no
7876 # On AIX, shared libraries and static libraries use the same namespace, and
7877 # are all built from PIC.
7880 test yes = "$enable_shared" && enable_static=no
7881 if test -n "$RANLIB"; then
7882 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7883 postinstall_cmds='$RANLIB $lib'
7887 if test ia64 != "$host_cpu"; then
7888 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7889 yes,aix,yes) ;; # shared object as lib.so file only
7890 yes,svr4,*) ;; # shared object as lib.so archive member only
7891 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7896 AC_MSG_RESULT([$enable_shared])
7898 AC_MSG_CHECKING([whether to build static libraries])
7899 # Make sure either enable_shared or enable_static is yes.
7900 test yes = "$enable_shared" || enable_static=yes
7901 AC_MSG_RESULT([$enable_static])
7903 _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7904 _LT_TAGVAR(LD, $1)=$LD
7907 ## There is no encapsulation within the following macros, do not change
7908 ## the running order or otherwise move them around unless you know exactly
7909 ## what you are doing...
7910 _LT_SYS_HIDDEN_LIBDEPS($1)
7911 _LT_COMPILER_PIC($1)
7912 _LT_COMPILER_C_O($1)
7913 _LT_COMPILER_FILE_LOCKS($1)
7914 _LT_LINKER_SHLIBS($1)
7915 _LT_SYS_DYNAMIC_LINKER($1)
7916 _LT_LINKER_HARDCODE_LIBPATH($1)
7919 fi # test -n "$compiler"
7923 CFLAGS=$lt_save_CFLAGS
7924 fi # test yes != "$_lt_disable_FC"
7927 ])# _LT_LANG_FC_CONFIG
7930 # _LT_LANG_GCJ_CONFIG([TAG])
7931 # --------------------------
7932 # Ensure that the configuration variables for the GNU Java Compiler compiler
7933 # are suitably defined. These variables are subsequently used by _LT_CONFIG
7934 # to write the compiler configuration to 'libtool'.
7935 m4_defun([_LT_LANG_GCJ_CONFIG],
7936 [AC_REQUIRE([LT_PROG_GCJ])dnl
7939 # Source file extension for Java test sources.
7942 # Object file extension for compiled Java test sources.
7944 _LT_TAGVAR(objext, $1)=$objext
7946 # Code to be used in simple compile tests
7947 lt_simple_compile_test_code="class foo {}"
7949 # Code to be used in simple link tests
7950 lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7952 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7955 # save warnings/boilerplate of simple test code
7956 _LT_COMPILER_BOILERPLATE
7957 _LT_LINKER_BOILERPLATE
7959 # Allow CC to be a program name with arguments.
7961 lt_save_CFLAGS=$CFLAGS
7967 _LT_TAGVAR(compiler, $1)=$CC
7968 _LT_TAGVAR(LD, $1)=$LD
7969 _LT_CC_BASENAME([$compiler])
7971 # GCJ did not exist at the time GCC didn't implicitly link libc in.
7972 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7974 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7975 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7976 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7978 if test -n "$compiler"; then
7979 _LT_COMPILER_NO_RTTI($1)
7980 _LT_COMPILER_PIC($1)
7981 _LT_COMPILER_C_O($1)
7982 _LT_COMPILER_FILE_LOCKS($1)
7983 _LT_LINKER_SHLIBS($1)
7984 _LT_LINKER_HARDCODE_LIBPATH($1)
7993 CFLAGS=$lt_save_CFLAGS
7994 ])# _LT_LANG_GCJ_CONFIG
7997 # _LT_LANG_GO_CONFIG([TAG])
7998 # --------------------------
7999 # Ensure that the configuration variables for the GNU Go compiler
8000 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8001 # to write the compiler configuration to 'libtool'.
8002 m4_defun([_LT_LANG_GO_CONFIG],
8003 [AC_REQUIRE([LT_PROG_GO])dnl
8006 # Source file extension for Go test sources.
8009 # Object file extension for compiled Go test sources.
8011 _LT_TAGVAR(objext, $1)=$objext
8013 # Code to be used in simple compile tests
8014 lt_simple_compile_test_code="package main; func main() { }"
8016 # Code to be used in simple link tests
8017 lt_simple_link_test_code='package main; func main() { }'
8019 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8022 # save warnings/boilerplate of simple test code
8023 _LT_COMPILER_BOILERPLATE
8024 _LT_LINKER_BOILERPLATE
8026 # Allow CC to be a program name with arguments.
8028 lt_save_CFLAGS=$CFLAGS
8034 _LT_TAGVAR(compiler, $1)=$CC
8035 _LT_TAGVAR(LD, $1)=$LD
8036 _LT_CC_BASENAME([$compiler])
8038 # Go did not exist at the time GCC didn't implicitly link libc in.
8039 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
8041 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8042 _LT_TAGVAR(reload_flag, $1)=$reload_flag
8043 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8045 if test -n "$compiler"; then
8046 _LT_COMPILER_NO_RTTI($1)
8047 _LT_COMPILER_PIC($1)
8048 _LT_COMPILER_C_O($1)
8049 _LT_COMPILER_FILE_LOCKS($1)
8050 _LT_LINKER_SHLIBS($1)
8051 _LT_LINKER_HARDCODE_LIBPATH($1)
8060 CFLAGS=$lt_save_CFLAGS
8061 ])# _LT_LANG_GO_CONFIG
8064 # _LT_LANG_RC_CONFIG([TAG])
8065 # -------------------------
8066 # Ensure that the configuration variables for the Windows resource compiler
8067 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8068 # to write the compiler configuration to 'libtool'.
8069 m4_defun([_LT_LANG_RC_CONFIG],
8070 [AC_REQUIRE([LT_PROG_RC])dnl
8073 # Source file extension for RC test sources.
8076 # Object file extension for compiled RC test sources.
8078 _LT_TAGVAR(objext, $1)=$objext
8080 # Code to be used in simple compile tests
8081 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8083 # Code to be used in simple link tests
8084 lt_simple_link_test_code=$lt_simple_compile_test_code
8086 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8089 # save warnings/boilerplate of simple test code
8090 _LT_COMPILER_BOILERPLATE
8091 _LT_LINKER_BOILERPLATE
8093 # Allow CC to be a program name with arguments.
8095 lt_save_CFLAGS=$CFLAGS
8101 _LT_TAGVAR(compiler, $1)=$CC
8102 _LT_CC_BASENAME([$compiler])
8103 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8105 if test -n "$compiler"; then
8113 CFLAGS=$lt_save_CFLAGS
8114 ])# _LT_LANG_RC_CONFIG
8119 AC_DEFUN([LT_PROG_GCJ],
8120 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8121 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8122 [AC_CHECK_TOOL(GCJ, gcj,)
8123 test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
8124 AC_SUBST(GCJFLAGS)])])[]dnl
8128 AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8129 dnl aclocal-1.4 backwards compatibility:
8130 dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
8135 AC_DEFUN([LT_PROG_GO],
8136 [AC_CHECK_TOOL(GOC, gccgo,)
8142 AC_DEFUN([LT_PROG_RC],
8143 [AC_CHECK_TOOL(RC, windres,)
8147 AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8148 dnl aclocal-1.4 backwards compatibility:
8149 dnl AC_DEFUN([LT_AC_PROG_RC], [])
8154 # If we don't have a new enough Autoconf to choose the best grep
8155 # available, choose the one first in the user's PATH.
8156 m4_defun([_LT_DECL_EGREP],
8157 [AC_REQUIRE([AC_PROG_EGREP])dnl
8158 AC_REQUIRE([AC_PROG_FGREP])dnl
8159 test -z "$GREP" && GREP=grep
8160 _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8161 _LT_DECL([], [EGREP], [1], [An ERE matcher])
8162 _LT_DECL([], [FGREP], [1], [A literal string matcher])
8163 dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8170 # If we don't have a new enough Autoconf to choose the best objdump
8171 # available, choose the one first in the user's PATH.
8172 m4_defun([_LT_DECL_OBJDUMP],
8173 [AC_CHECK_TOOL(OBJDUMP, objdump, false)
8174 test -z "$OBJDUMP" && OBJDUMP=objdump
8175 _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8181 # Ensure DLLTOOL variable is set.
8182 m4_defun([_LT_DECL_DLLTOOL],
8183 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8184 test -z "$DLLTOOL" && DLLTOOL=dlltool
8185 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8191 # Check for a fully-functional sed program, that truncates
8192 # as few characters as possible. Prefer GNU sed if found.
8193 m4_defun([_LT_DECL_SED],
8195 test -z "$SED" && SED=sed
8196 Xsed="$SED -e 1s/^X//"
8197 _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8198 _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8199 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
8202 m4_ifndef([AC_PROG_SED], [
8203 # NOTE: This macro has been submitted for inclusion into #
8204 # GNU Autoconf as AC_PROG_SED. When it is available in #
8205 # a released version of Autoconf we should remove this #
8206 # macro and use it instead. #
8208 m4_defun([AC_PROG_SED],
8209 [AC_MSG_CHECKING([for a sed that does not truncate output])
8210 AC_CACHE_VAL(lt_cv_path_SED,
8211 [# Loop through the user's path and test for sed and gsed.
8212 # Then use that list of sed's as ones to test for truncation.
8213 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8217 test -z "$as_dir" && as_dir=.
8218 for lt_ac_prog in sed gsed; do
8219 for ac_exec_ext in '' $ac_executable_extensions; do
8220 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8221 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8229 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
8230 # along with /bin/sed that truncates output.
8231 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
8232 test ! -f "$lt_ac_sed" && continue
8233 cat /dev/null > conftest.in
8235 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8236 # Check for GNU sed and select it if it is found.
8237 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8238 lt_cv_path_SED=$lt_ac_sed
8242 cat conftest.in conftest.in >conftest.tmp
8243 mv conftest.tmp conftest.in
8244 cp conftest.in conftest.nl
8246 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8247 cmp -s conftest.out conftest.nl || break
8248 # 10000 chars as input seems more than enough
8249 test 10 -lt "$lt_ac_count" && break
8250 lt_ac_count=`expr $lt_ac_count + 1`
8251 if test "$lt_ac_count" -gt "$lt_ac_max"; then
8252 lt_ac_max=$lt_ac_count
8253 lt_cv_path_SED=$lt_ac_sed
8260 AC_MSG_RESULT([$SED])
8265 AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8266 dnl aclocal-1.4 backwards compatibility:
8267 dnl AC_DEFUN([LT_AC_PROG_SED], [])
8270 # _LT_CHECK_SHELL_FEATURES
8271 # ------------------------
8272 # Find out whether the shell is Bourne or XSI compatible,
8273 # or has some other useful features.
8274 m4_defun([_LT_CHECK_SHELL_FEATURES],
8275 [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
8280 _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8282 # test EBCDIC or ASCII
8283 case `echo X|tr X '\101'` in
8284 A) # ASCII based system
8285 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8286 lt_SP2NL='tr \040 \012'
8287 lt_NL2SP='tr \015\012 \040\040'
8289 *) # EBCDIC based system
8290 lt_SP2NL='tr \100 \n'
8291 lt_NL2SP='tr \r\n \100\100'
8294 _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8295 _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8296 ])# _LT_CHECK_SHELL_FEATURES
8299 # _LT_PATH_CONVERSION_FUNCTIONS
8300 # -----------------------------
8301 # Determine what file name conversion functions should be used by
8302 # func_to_host_file (and, implicitly, by func_to_host_path). These are needed
8303 # for certain cross-compile configurations and native mingw.
8304 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8305 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8306 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8307 AC_MSG_CHECKING([how to convert $build file names to $host format])
8308 AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8312 *-*-mingw* ) # actually msys
8313 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8316 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8318 * ) # otherwise, assume *nix
8319 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8325 *-*-mingw* ) # actually msys
8326 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8329 lt_cv_to_host_file_cmd=func_convert_file_noop
8331 * ) # otherwise, assume *nix
8332 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
8336 * ) # unhandled hosts (and "normal" native builds)
8337 lt_cv_to_host_file_cmd=func_convert_file_noop
8341 to_host_file_cmd=$lt_cv_to_host_file_cmd
8342 AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
8343 _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
8344 [0], [convert $build file names to $host format])dnl
8346 AC_MSG_CHECKING([how to convert $build file names to toolchain format])
8347 AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
8348 [#assume ordinary cross tools, or native build.
8349 lt_cv_to_tool_file_cmd=func_convert_file_noop
8353 *-*-mingw* ) # actually msys
8354 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
8360 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
8361 AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
8362 _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8363 [0], [convert $build files to toolchain format])dnl
8364 ])# _LT_PATH_CONVERSION_FUNCTIONS
8366 # Helper functions for option handling. -*- Autoconf -*-
8368 # Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8370 # Written by Gary V. Vaughan, 2004
8372 # This file is free software; the Free Software Foundation gives
8373 # unlimited permission to copy and/or distribute it, with or without
8374 # modifications, as long as this notice is preserved.
8376 # serial 8 ltoptions.m4
8378 # This is to help aclocal find these macros, as it can't see m4_define.
8379 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8382 # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8383 # ------------------------------------------
8384 m4_define([_LT_MANGLE_OPTION],
8385 [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8388 # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8389 # ---------------------------------------
8390 # Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8391 # matching handler defined, dispatch to it. Other OPTION-NAMEs are
8393 m4_define([_LT_SET_OPTION],
8394 [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8395 m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8396 _LT_MANGLE_DEFUN([$1], [$2]),
8397 [m4_warning([Unknown $1 option '$2'])])[]dnl
8401 # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8402 # ------------------------------------------------------------
8403 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8404 m4_define([_LT_IF_OPTION],
8405 [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8408 # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8409 # -------------------------------------------------------
8410 # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8412 m4_define([_LT_UNLESS_OPTIONS],
8413 [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8414 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8415 [m4_define([$0_found])])])[]dnl
8416 m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8421 # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8422 # ----------------------------------------
8423 # OPTION-LIST is a space-separated list of Libtool options associated
8424 # with MACRO-NAME. If any OPTION has a matching handler declared with
8425 # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8426 # the unknown option and exit.
8427 m4_defun([_LT_SET_OPTIONS],
8429 m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8430 [_LT_SET_OPTION([$1], _LT_Option)])
8432 m4_if([$1],[LT_INIT],[
8434 dnl Simply set some default values (i.e off) if boolean options were not
8436 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8438 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8441 dnl If no reference was made to various pairs of opposing options, then
8442 dnl we run the default mode handler for the pair. For example, if neither
8443 dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
8444 dnl archives by default:
8445 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8446 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8447 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8448 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8449 [_LT_ENABLE_FAST_INSTALL])
8450 _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
8451 [_LT_WITH_AIX_SONAME([aix])])
8457 # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8458 # -----------------------------------------
8459 m4_define([_LT_MANGLE_DEFUN],
8460 [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8463 # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8464 # -----------------------------------------------
8465 m4_define([LT_OPTION_DEFINE],
8466 [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8467 ])# LT_OPTION_DEFINE
8472 LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8475 AU_DEFUN([AC_LIBTOOL_DLOPEN],
8476 [_LT_SET_OPTION([LT_INIT], [dlopen])
8477 AC_DIAGNOSE([obsolete],
8478 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8479 put the 'dlopen' option into LT_INIT's first parameter.])
8482 dnl aclocal-1.4 backwards compatibility:
8483 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8488 # Declare package support for building win32 dll's.
8489 LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8490 [enable_win32_dll=yes
8493 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8494 AC_CHECK_TOOL(AS, as, false)
8495 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8496 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8500 test -z "$AS" && AS=as
8501 _LT_DECL([], [AS], [1], [Assembler program])dnl
8503 test -z "$DLLTOOL" && DLLTOOL=dlltool
8504 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8506 test -z "$OBJDUMP" && OBJDUMP=objdump
8507 _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8510 AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8511 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8512 _LT_SET_OPTION([LT_INIT], [win32-dll])
8513 AC_DIAGNOSE([obsolete],
8514 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8515 put the 'win32-dll' option into LT_INIT's first parameter.])
8518 dnl aclocal-1.4 backwards compatibility:
8519 dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8522 # _LT_ENABLE_SHARED([DEFAULT])
8523 # ----------------------------
8524 # implement the --enable-shared flag, and supports the 'shared' and
8525 # 'disable-shared' LT_INIT options.
8526 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8527 m4_define([_LT_ENABLE_SHARED],
8528 [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8529 AC_ARG_ENABLE([shared],
8530 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8531 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8532 [p=${PACKAGE-default}
8534 yes) enable_shared=yes ;;
8535 no) enable_shared=no ;;
8538 # Look at the argument we got. We use all the common list separators.
8539 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8540 for pkg in $enableval; do
8542 if test "X$pkg" = "X$p"; then
8549 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8551 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8552 [Whether or not to build shared libraries])
8553 ])# _LT_ENABLE_SHARED
8555 LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8556 LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8559 AC_DEFUN([AC_ENABLE_SHARED],
8560 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8563 AC_DEFUN([AC_DISABLE_SHARED],
8564 [_LT_SET_OPTION([LT_INIT], [disable-shared])
8567 AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8568 AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8570 dnl aclocal-1.4 backwards compatibility:
8571 dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8572 dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8576 # _LT_ENABLE_STATIC([DEFAULT])
8577 # ----------------------------
8578 # implement the --enable-static flag, and support the 'static' and
8579 # 'disable-static' LT_INIT options.
8580 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8581 m4_define([_LT_ENABLE_STATIC],
8582 [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8583 AC_ARG_ENABLE([static],
8584 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8585 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8586 [p=${PACKAGE-default}
8588 yes) enable_static=yes ;;
8589 no) enable_static=no ;;
8592 # Look at the argument we got. We use all the common list separators.
8593 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8594 for pkg in $enableval; do
8596 if test "X$pkg" = "X$p"; then
8603 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8605 _LT_DECL([build_old_libs], [enable_static], [0],
8606 [Whether or not to build static libraries])
8607 ])# _LT_ENABLE_STATIC
8609 LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8610 LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8613 AC_DEFUN([AC_ENABLE_STATIC],
8614 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8617 AC_DEFUN([AC_DISABLE_STATIC],
8618 [_LT_SET_OPTION([LT_INIT], [disable-static])
8621 AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8622 AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8624 dnl aclocal-1.4 backwards compatibility:
8625 dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8626 dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8630 # _LT_ENABLE_FAST_INSTALL([DEFAULT])
8631 # ----------------------------------
8632 # implement the --enable-fast-install flag, and support the 'fast-install'
8633 # and 'disable-fast-install' LT_INIT options.
8634 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8635 m4_define([_LT_ENABLE_FAST_INSTALL],
8636 [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8637 AC_ARG_ENABLE([fast-install],
8638 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8639 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8640 [p=${PACKAGE-default}
8642 yes) enable_fast_install=yes ;;
8643 no) enable_fast_install=no ;;
8645 enable_fast_install=no
8646 # Look at the argument we got. We use all the common list separators.
8647 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8648 for pkg in $enableval; do
8650 if test "X$pkg" = "X$p"; then
8651 enable_fast_install=yes
8657 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8659 _LT_DECL([fast_install], [enable_fast_install], [0],
8660 [Whether or not to optimize for fast installation])dnl
8661 ])# _LT_ENABLE_FAST_INSTALL
8663 LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8664 LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8667 AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8668 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8669 AC_DIAGNOSE([obsolete],
8670 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8671 the 'fast-install' option into LT_INIT's first parameter.])
8674 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8675 [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8676 AC_DIAGNOSE([obsolete],
8677 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8678 the 'disable-fast-install' option into LT_INIT's first parameter.])
8681 dnl aclocal-1.4 backwards compatibility:
8682 dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8683 dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8686 # _LT_WITH_AIX_SONAME([DEFAULT])
8687 # ----------------------------------
8688 # implement the --with-aix-soname flag, and support the `aix-soname=aix'
8689 # and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
8690 # is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
8691 m4_define([_LT_WITH_AIX_SONAME],
8692 [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
8693 shared_archive_member_spec=
8694 case $host,$enable_shared in
8695 power*-*-aix[[5-9]]*,yes)
8696 AC_MSG_CHECKING([which variant of shared library versioning to provide])
8697 AC_ARG_WITH([aix-soname],
8698 [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
8699 [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
8704 AC_MSG_ERROR([Unknown argument to --with-aix-soname])
8707 lt_cv_with_aix_soname=$with_aix_soname],
8708 [AC_CACHE_VAL([lt_cv_with_aix_soname],
8709 [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
8710 with_aix_soname=$lt_cv_with_aix_soname])
8711 AC_MSG_RESULT([$with_aix_soname])
8712 if test aix != "$with_aix_soname"; then
8713 # For the AIX way of multilib, we name the shared archive member
8714 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8715 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8716 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8717 # the AIX toolchain works better with OBJECT_MODE set (default 32).
8718 if test 64 = "${OBJECT_MODE-32}"; then
8719 shared_archive_member_spec=shr_64
8721 shared_archive_member_spec=shr
8730 _LT_DECL([], [shared_archive_member_spec], [0],
8731 [Shared archive member basename, for filename based shared library versioning on AIX])dnl
8732 ])# _LT_WITH_AIX_SONAME
8734 LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
8735 LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
8736 LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
8739 # _LT_WITH_PIC([MODE])
8740 # --------------------
8741 # implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
8743 # MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
8744 m4_define([_LT_WITH_PIC],
8746 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8747 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8748 [lt_p=${PACKAGE-default}
8750 yes|no) pic_mode=$withval ;;
8753 # Look at the argument we got. We use all the common list separators.
8754 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8755 for lt_pkg in $withval; do
8757 if test "X$lt_pkg" = "X$lt_p"; then
8764 [pic_mode=m4_default([$1], [default])])
8766 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8769 LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8770 LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8773 AU_DEFUN([AC_LIBTOOL_PICMODE],
8774 [_LT_SET_OPTION([LT_INIT], [pic-only])
8775 AC_DIAGNOSE([obsolete],
8776 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8777 put the 'pic-only' option into LT_INIT's first parameter.])
8780 dnl aclocal-1.4 backwards compatibility:
8781 dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8784 m4_define([_LTDL_MODE], [])
8785 LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8786 [m4_define([_LTDL_MODE], [nonrecursive])])
8787 LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8788 [m4_define([_LTDL_MODE], [recursive])])
8789 LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8790 [m4_define([_LTDL_MODE], [subproject])])
8792 m4_define([_LTDL_TYPE], [])
8793 LT_OPTION_DEFINE([LTDL_INIT], [installable],
8794 [m4_define([_LTDL_TYPE], [installable])])
8795 LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8796 [m4_define([_LTDL_TYPE], [convenience])])
8798 # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8800 # Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8802 # Written by Gary V. Vaughan, 2004
8804 # This file is free software; the Free Software Foundation gives
8805 # unlimited permission to copy and/or distribute it, with or without
8806 # modifications, as long as this notice is preserved.
8808 # serial 6 ltsugar.m4
8810 # This is to help aclocal find these macros, as it can't see m4_define.
8811 AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8814 # lt_join(SEP, ARG1, [ARG2...])
8815 # -----------------------------
8816 # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8817 # associated separator.
8818 # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8819 # versions in m4sugar had bugs.
8820 m4_define([lt_join],
8821 [m4_if([$#], [1], [],
8823 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8824 m4_define([_lt_join],
8825 [m4_if([$#$2], [2], [],
8826 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8832 # Manipulate m4 lists.
8833 # These macros are necessary as long as will still need to support
8834 # Autoconf-2.59, which quotes differently.
8835 m4_define([lt_car], [[$1]])
8837 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8839 [m4_dquote(m4_shift($@))])])
8840 m4_define([lt_unquote], $1)
8843 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
8844 # ------------------------------------------
8845 # Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
8846 # Note that neither SEPARATOR nor STRING are expanded; they are appended
8847 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8848 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
8849 # than defined and empty).
8851 # This macro is needed until we can rely on Autoconf 2.62, since earlier
8852 # versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8853 m4_define([lt_append],
8855 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8859 # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8860 # ----------------------------------------------------------
8861 # Produce a SEP delimited list of all paired combinations of elements of
8862 # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8863 # has the form PREFIXmINFIXSUFFIXn.
8864 # Needed until we can rely on m4_combine added in Autoconf 2.62.
8865 m4_define([lt_combine],
8866 [m4_if(m4_eval([$# > 3]), [1],
8867 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8868 [[m4_foreach([_Lt_prefix], [$2],
8869 [m4_foreach([_Lt_suffix],
8870 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8871 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8874 # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8875 # -----------------------------------------------------------------------
8876 # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8877 # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8878 m4_define([lt_if_append_uniq],
8880 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8881 [lt_append([$1], [$2], [$3])$4],
8883 [lt_append([$1], [$2], [$3])$4])])
8886 # lt_dict_add(DICT, KEY, VALUE)
8887 # -----------------------------
8888 m4_define([lt_dict_add],
8889 [m4_define([$1($2)], [$3])])
8892 # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8893 # --------------------------------------------
8894 m4_define([lt_dict_add_subkey],
8895 [m4_define([$1($2:$3)], [$4])])
8898 # lt_dict_fetch(DICT, KEY, [SUBKEY])
8899 # ----------------------------------
8900 m4_define([lt_dict_fetch],
8902 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8903 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8906 # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8907 # -----------------------------------------------------------------
8908 m4_define([lt_if_dict_fetch],
8909 [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8914 # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8915 # --------------------------------------------------------------
8916 m4_define([lt_dict_filter],
8917 [m4_if([$5], [], [],
8918 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8919 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8920 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8923 # ltversion.m4 -- version numbers -*- Autoconf -*-
8925 # Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
8926 # Written by Scott James Remnant, 2004
8928 # This file is free software; the Free Software Foundation gives
8929 # unlimited permission to copy and/or distribute it, with or without
8930 # modifications, as long as this notice is preserved.
8934 # serial 4179 ltversion.m4
8935 # This file is part of GNU Libtool
8937 m4_define([LT_PACKAGE_VERSION], [2.4.6])
8938 m4_define([LT_PACKAGE_REVISION], [2.4.6])
8940 AC_DEFUN([LTVERSION_VERSION],
8941 [macro_version='2.4.6'
8942 macro_revision='2.4.6'
8943 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8944 _LT_DECL(, macro_revision, 0)
8947 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8949 # Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8951 # Written by Scott James Remnant, 2004.
8953 # This file is free software; the Free Software Foundation gives
8954 # unlimited permission to copy and/or distribute it, with or without
8955 # modifications, as long as this notice is preserved.
8957 # serial 5 lt~obsolete.m4
8959 # These exist entirely to fool aclocal when bootstrapping libtool.
8961 # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
8962 # which have later been changed to m4_define as they aren't part of the
8963 # exported API, or moved to Autoconf or Automake where they belong.
8965 # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8966 # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8967 # using a macro with the same name in our local m4/libtool.m4 it'll
8968 # pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8969 # and doesn't know about Autoconf macros at all.)
8971 # So we provide this file, which has a silly filename so it's always
8972 # included after everything else. This provides aclocal with the
8973 # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8974 # because those macros already exist, or will be overwritten later.
8975 # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8977 # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8978 # Yes, that means every name once taken will need to remain here until
8979 # we give up compatibility with versions before 1.7, at which point
8980 # we need to keep only those names which we still refer to.
8982 # This is to help aclocal find these macros, as it can't see m4_define.
8983 AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8985 m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8986 m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8987 m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8988 m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8989 m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8990 m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8991 m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8992 m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8993 m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8994 m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
8995 m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
8996 m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8997 m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8998 m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8999 m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9000 m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9001 m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
9002 m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9003 m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9004 m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
9005 m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
9006 m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9007 m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9008 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9009 m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9010 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9011 m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9012 m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9013 m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
9014 m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
9015 m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
9016 m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9017 m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9018 m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
9019 m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
9020 m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9021 m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9022 m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
9023 m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9024 m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
9025 m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
9026 m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
9027 m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9028 m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9029 m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9030 m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9031 m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9032 m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9033 m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9034 m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9035 m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9036 m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9037 m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
9038 m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
9039 m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9040 m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9041 m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9042 m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9043 m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
9044 m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
9045 m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
9047 # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
9048 # serial 11 (pkg-config-0.29.1)
9050 dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
9051 dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
9053 dnl This program is free software; you can redistribute it and/or modify
9054 dnl it under the terms of the GNU General Public License as published by
9055 dnl the Free Software Foundation; either version 2 of the License, or
9056 dnl (at your option) any later version.
9058 dnl This program is distributed in the hope that it will be useful, but
9059 dnl WITHOUT ANY WARRANTY; without even the implied warranty of
9060 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9061 dnl General Public License for more details.
9063 dnl You should have received a copy of the GNU General Public License
9064 dnl along with this program; if not, write to the Free Software
9065 dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
9066 dnl 02111-1307, USA.
9068 dnl As a special exception to the GNU General Public License, if you
9069 dnl distribute this file as part of a program that contains a
9070 dnl configuration script generated by Autoconf, you may include it under
9071 dnl the same distribution terms that you use for the rest of that
9074 dnl PKG_PREREQ(MIN-VERSION)
9075 dnl -----------------------
9078 dnl Verify that the version of the pkg-config macros are at least
9079 dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
9080 dnl installed version of pkg-config, this checks the developer's version
9081 dnl of pkg.m4 when generating configure.
9083 dnl To ensure that this macro is defined, also add:
9084 dnl m4_ifndef([PKG_PREREQ],
9085 dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
9087 dnl See the "Since" comment for each macro you use to see what version
9088 dnl of the macros you require.
9089 m4_defun([PKG_PREREQ],
9090 [m4_define([PKG_MACROS_VERSION], [0.29.1])
9091 m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
9092 [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
9095 dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
9096 dnl ----------------------------------
9099 dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
9100 dnl first found in the path. Checks that the version of pkg-config found
9101 dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
9102 dnl used since that's the first version where most current features of
9103 dnl pkg-config existed.
9104 AC_DEFUN([PKG_PROG_PKG_CONFIG],
9105 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
9106 m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
9107 m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
9108 AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
9109 AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
9110 AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
9112 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
9113 AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
9115 if test -n "$PKG_CONFIG"; then
9116 _pkg_min_version=m4_default([$1], [0.9.0])
9117 AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
9118 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
9119 AC_MSG_RESULT([yes])
9125 ])dnl PKG_PROG_PKG_CONFIG
9127 dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9128 dnl -------------------------------------------------------------------
9131 dnl Check to see whether a particular set of modules exists. Similar to
9132 dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
9134 dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9135 dnl only at the first occurence in configure.ac, so if the first place
9136 dnl it's called might be skipped (such as if it is within an "if", you
9137 dnl have to call PKG_CHECK_EXISTS manually
9138 AC_DEFUN([PKG_CHECK_EXISTS],
9139 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9140 if test -n "$PKG_CONFIG" && \
9141 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
9142 m4_default([$2], [:])
9143 m4_ifvaln([$3], [else
9147 dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
9148 dnl ---------------------------------------------
9149 dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
9150 dnl pkg_failed based on the result.
9151 m4_define([_PKG_CONFIG],
9152 [if test -n "$$1"; then
9154 elif test -n "$PKG_CONFIG"; then
9155 PKG_CHECK_EXISTS([$3],
9156 [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
9157 test "x$?" != "x0" && pkg_failed=yes ],
9164 dnl _PKG_SHORT_ERRORS_SUPPORTED
9165 dnl ---------------------------
9166 dnl Internal check to see if pkg-config supports short errors.
9167 AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
9168 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9169 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
9170 _pkg_short_errors_supported=yes
9172 _pkg_short_errors_supported=no
9174 ])dnl _PKG_SHORT_ERRORS_SUPPORTED
9177 dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9178 dnl [ACTION-IF-NOT-FOUND])
9179 dnl --------------------------------------------------------------
9182 dnl Note that if there is a possibility the first call to
9183 dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
9184 dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
9185 AC_DEFUN([PKG_CHECK_MODULES],
9186 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9187 AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
9188 AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
9191 AC_MSG_CHECKING([for $1])
9193 _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
9194 _PKG_CONFIG([$1][_LIBS], [libs], [$2])
9196 m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
9197 and $1[]_LIBS to avoid the need to call pkg-config.
9198 See the pkg-config man page for more details.])
9200 if test $pkg_failed = yes; then
9202 _PKG_SHORT_ERRORS_SUPPORTED
9203 if test $_pkg_short_errors_supported = yes; then
9204 $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
9206 $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
9208 # Put the nasty error message in config.log where it belongs
9209 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
9211 m4_default([$4], [AC_MSG_ERROR(
9212 [Package requirements ($2) were not met:
9216 Consider adjusting the PKG_CONFIG_PATH environment variable if you
9217 installed software in a non-standard prefix.
9221 elif test $pkg_failed = untried; then
9223 m4_default([$4], [AC_MSG_FAILURE(
9224 [The pkg-config script could not be found or is too old. Make sure it
9225 is in your PATH or set the PKG_CONFIG environment variable to the full
9230 To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
9233 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
9234 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
9235 AC_MSG_RESULT([yes])
9238 ])dnl PKG_CHECK_MODULES
9241 dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9242 dnl [ACTION-IF-NOT-FOUND])
9243 dnl ---------------------------------------------------------------------
9246 dnl Checks for existence of MODULES and gathers its build flags with
9247 dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
9248 dnl and VARIABLE-PREFIX_LIBS from --libs.
9250 dnl Note that if there is a possibility the first call to
9251 dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
9252 dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
9254 AC_DEFUN([PKG_CHECK_MODULES_STATIC],
9255 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9256 _save_PKG_CONFIG=$PKG_CONFIG
9257 PKG_CONFIG="$PKG_CONFIG --static"
9258 PKG_CHECK_MODULES($@)
9259 PKG_CONFIG=$_save_PKG_CONFIG[]dnl
9260 ])dnl PKG_CHECK_MODULES_STATIC
9263 dnl PKG_INSTALLDIR([DIRECTORY])
9264 dnl -------------------------
9267 dnl Substitutes the variable pkgconfigdir as the location where a module
9268 dnl should install pkg-config .pc files. By default the directory is
9269 dnl $libdir/pkgconfig, but the default can be changed by passing
9270 dnl DIRECTORY. The user can override through the --with-pkgconfigdir
9272 AC_DEFUN([PKG_INSTALLDIR],
9273 [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
9274 m4_pushdef([pkg_description],
9275 [pkg-config installation directory @<:@]pkg_default[@:>@])
9276 AC_ARG_WITH([pkgconfigdir],
9277 [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
9278 [with_pkgconfigdir=]pkg_default)
9279 AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
9280 m4_popdef([pkg_default])
9281 m4_popdef([pkg_description])
9282 ])dnl PKG_INSTALLDIR
9285 dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
9286 dnl --------------------------------
9289 dnl Substitutes the variable noarch_pkgconfigdir as the location where a
9290 dnl module should install arch-independent pkg-config .pc files. By
9291 dnl default the directory is $datadir/pkgconfig, but the default can be
9292 dnl changed by passing DIRECTORY. The user can override through the
9293 dnl --with-noarch-pkgconfigdir parameter.
9294 AC_DEFUN([PKG_NOARCH_INSTALLDIR],
9295 [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
9296 m4_pushdef([pkg_description],
9297 [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
9298 AC_ARG_WITH([noarch-pkgconfigdir],
9299 [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
9300 [with_noarch_pkgconfigdir=]pkg_default)
9301 AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
9302 m4_popdef([pkg_default])
9303 m4_popdef([pkg_description])
9304 ])dnl PKG_NOARCH_INSTALLDIR
9307 dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
9308 dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9309 dnl -------------------------------------------
9312 dnl Retrieves the value of the pkg-config variable for the given module.
9313 AC_DEFUN([PKG_CHECK_VAR],
9314 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9315 AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
9317 _PKG_CONFIG([$1], [variable="][$3]["], [$2])
9318 AS_VAR_COPY([$1], [pkg_cv_][$1])
9320 AS_VAR_IF([$1], [""], [$5], [$4])dnl
9323 dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES,
9324 dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND],
9325 dnl [DESCRIPTION], [DEFAULT])
9326 dnl ------------------------------------------
9328 dnl Prepare a "--with-" configure option using the lowercase
9329 dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and
9330 dnl PKG_CHECK_MODULES in a single macro.
9331 AC_DEFUN([PKG_WITH_MODULES],
9333 m4_pushdef([with_arg], m4_tolower([$1]))
9335 m4_pushdef([description],
9336 [m4_default([$5], [build with ]with_arg[ support])])
9338 m4_pushdef([def_arg], [m4_default([$6], [auto])])
9339 m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes])
9340 m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no])
9343 [yes],[m4_pushdef([with_without], [--without-]with_arg)],
9344 [m4_pushdef([with_without],[--with-]with_arg)])
9346 AC_ARG_WITH(with_arg,
9347 AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),,
9348 [AS_TR_SH([with_]with_arg)=def_arg])
9350 AS_CASE([$AS_TR_SH([with_]with_arg)],
9351 [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)],
9352 [auto],[PKG_CHECK_MODULES([$1],[$2],
9353 [m4_n([def_action_if_found]) $3],
9354 [m4_n([def_action_if_not_found]) $4])])
9356 m4_popdef([with_arg])
9357 m4_popdef([description])
9358 m4_popdef([def_arg])
9360 ])dnl PKG_WITH_MODULES
9362 dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES,
9363 dnl [DESCRIPTION], [DEFAULT])
9364 dnl -----------------------------------------------
9366 dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES
9367 dnl check._[VARIABLE-PREFIX] is exported as make variable.
9368 AC_DEFUN([PKG_HAVE_WITH_MODULES],
9370 PKG_WITH_MODULES([$1],[$2],,,[$3],[$4])
9372 AM_CONDITIONAL([HAVE_][$1],
9373 [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"])
9374 ])dnl PKG_HAVE_WITH_MODULES
9376 dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES,
9377 dnl [DESCRIPTION], [DEFAULT])
9378 dnl ------------------------------------------------------
9380 dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after
9381 dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make
9382 dnl and preprocessor variable.
9383 AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES],
9385 PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4])
9387 AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"],
9388 [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])])
9389 ])dnl PKG_HAVE_DEFINE_WITH_MODULES
9391 # AM_CONDITIONAL -*- Autoconf -*-
9393 # Copyright (C) 1997-2018 Free Software Foundation, Inc.
9395 # This file is free software; the Free Software Foundation
9396 # gives unlimited permission to copy and/or distribute it,
9397 # with or without modifications, as long as this notice is preserved.
9399 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
9400 # -------------------------------------
9401 # Define a conditional.
9402 AC_DEFUN([AM_CONDITIONAL],
9403 [AC_PREREQ([2.52])dnl
9404 m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
9405 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
9406 AC_SUBST([$1_TRUE])dnl
9407 AC_SUBST([$1_FALSE])dnl
9408 _AM_SUBST_NOTMAKE([$1_TRUE])dnl
9409 _AM_SUBST_NOTMAKE([$1_FALSE])dnl
9410 m4_define([_AM_COND_VALUE_$1], [$2])dnl
9418 AC_CONFIG_COMMANDS_PRE(
9419 [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
9420 AC_MSG_ERROR([[conditional "$1" was never defined.
9421 Usually this means the macro was only invoked conditionally.]])
9424 # Copyright (C) 2006-2018 Free Software Foundation, Inc.
9426 # This file is free software; the Free Software Foundation
9427 # gives unlimited permission to copy and/or distribute it,
9428 # with or without modifications, as long as this notice is preserved.
9430 # _AM_SUBST_NOTMAKE(VARIABLE)
9431 # ---------------------------
9432 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
9433 # This macro is traced by Automake.
9434 AC_DEFUN([_AM_SUBST_NOTMAKE])
9436 # AM_SUBST_NOTMAKE(VARIABLE)
9437 # --------------------------
9438 # Public sister of _AM_SUBST_NOTMAKE.
9439 AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])