12d19872aSmrg# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- 22d19872aSmrg# 32f76b07dSmrg# Copyright (C) 1996-2001, 2003-2019, 2021-2024 Free Software 42d19872aSmrg# Foundation, Inc. 52d19872aSmrg# Written by Gordon Matzigkeit, 1996 62d19872aSmrg# 72d19872aSmrg# This file is free software; the Free Software Foundation gives 82d19872aSmrg# unlimited permission to copy and/or distribute it, with or without 92d19872aSmrg# modifications, as long as this notice is preserved. 102d19872aSmrg 112d19872aSmrgm4_define([_LT_COPYING], [dnl 122f76b07dSmrg# Copyright (C) 2024 Free Software Foundation, Inc. 132d19872aSmrg# This is free software; see the source for copying conditions. There is NO 142d19872aSmrg# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 152d19872aSmrg 162d19872aSmrg# GNU Libtool is free software; you can redistribute it and/or modify 172d19872aSmrg# it under the terms of the GNU General Public License as published by 182f76b07dSmrg# the Free Software Foundation; either version 2 of the License, or 192d19872aSmrg# (at your option) any later version. 202d19872aSmrg# 212d19872aSmrg# As a special exception to the GNU General Public License, if you 222d19872aSmrg# distribute this file as part of a program or library that is built 232d19872aSmrg# using GNU Libtool, you may include this file under the same 242d19872aSmrg# distribution terms that you use for the rest of that program. 252d19872aSmrg# 262d19872aSmrg# GNU Libtool is distributed in the hope that it will be useful, but 272d19872aSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of 282d19872aSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 292d19872aSmrg# GNU General Public License for more details. 302d19872aSmrg# 312d19872aSmrg# You should have received a copy of the GNU General Public License 322d19872aSmrg# along with this program. If not, see <http://www.gnu.org/licenses/>. 332d19872aSmrg]) 342d19872aSmrg 352f76b07dSmrg# serial 63 LT_INIT 362d19872aSmrg 372d19872aSmrg 382d19872aSmrg# LT_PREREQ(VERSION) 392d19872aSmrg# ------------------ 402d19872aSmrg# Complain and exit if this libtool version is less that VERSION. 412d19872aSmrgm4_defun([LT_PREREQ], 422d19872aSmrg[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, 432d19872aSmrg [m4_default([$3], 442d19872aSmrg [m4_fatal([Libtool version $1 or higher is required], 452d19872aSmrg 63)])], 462d19872aSmrg [$2])]) 472d19872aSmrg 482d19872aSmrg 492d19872aSmrg# _LT_CHECK_BUILDDIR 502d19872aSmrg# ------------------ 512d19872aSmrg# Complain if the absolute build directory name contains unusual characters 522d19872aSmrgm4_defun([_LT_CHECK_BUILDDIR], 532d19872aSmrg[case `pwd` in 542d19872aSmrg *\ * | *\ *) 552d19872aSmrg AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; 562d19872aSmrgesac 572d19872aSmrg]) 582d19872aSmrg 592d19872aSmrg 602d19872aSmrg# LT_INIT([OPTIONS]) 612d19872aSmrg# ------------------ 622d19872aSmrgAC_DEFUN([LT_INIT], 632f76b07dSmrg[AC_PREREQ([2.64])dnl We use AC_PATH_PROGS_FEATURE_CHECK 642d19872aSmrgAC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl 652d19872aSmrgAC_BEFORE([$0], [LT_LANG])dnl 662d19872aSmrgAC_BEFORE([$0], [LT_OUTPUT])dnl 672d19872aSmrgAC_BEFORE([$0], [LTDL_INIT])dnl 682d19872aSmrgm4_require([_LT_CHECK_BUILDDIR])dnl 692d19872aSmrg 702d19872aSmrgdnl Autoconf doesn't catch unexpanded LT_ macros by default: 712d19872aSmrgm4_pattern_forbid([^_?LT_[A-Z_]+$])dnl 722d19872aSmrgm4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl 732d19872aSmrgdnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 742d19872aSmrgdnl unless we require an AC_DEFUNed macro: 752d19872aSmrgAC_REQUIRE([LTOPTIONS_VERSION])dnl 762d19872aSmrgAC_REQUIRE([LTSUGAR_VERSION])dnl 772d19872aSmrgAC_REQUIRE([LTVERSION_VERSION])dnl 782d19872aSmrgAC_REQUIRE([LTOBSOLETE_VERSION])dnl 792d19872aSmrgm4_require([_LT_PROG_LTMAIN])dnl 802d19872aSmrg 812d19872aSmrg_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) 822d19872aSmrg 832d19872aSmrgdnl Parse OPTIONS 842d19872aSmrg_LT_SET_OPTIONS([$0], [$1]) 852d19872aSmrg 862d19872aSmrg# This can be used to rebuild libtool when needed 872d19872aSmrgLIBTOOL_DEPS=$ltmain 882d19872aSmrg 892d19872aSmrg# Always use our own libtool. 902d19872aSmrgLIBTOOL='$(SHELL) $(top_builddir)/libtool' 912d19872aSmrgAC_SUBST(LIBTOOL)dnl 922d19872aSmrg 932d19872aSmrg_LT_SETUP 942d19872aSmrg 952d19872aSmrg# Only expand once: 962d19872aSmrgm4_define([LT_INIT]) 972d19872aSmrg])# LT_INIT 982d19872aSmrg 992d19872aSmrg# Old names: 1002d19872aSmrgAU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) 1012d19872aSmrgAU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) 1022d19872aSmrgdnl aclocal-1.4 backwards compatibility: 1032d19872aSmrgdnl AC_DEFUN([AC_PROG_LIBTOOL], []) 1042d19872aSmrgdnl AC_DEFUN([AM_PROG_LIBTOOL], []) 1052d19872aSmrg 1062d19872aSmrg 1072d19872aSmrg# _LT_PREPARE_CC_BASENAME 1082d19872aSmrg# ----------------------- 1092d19872aSmrgm4_defun([_LT_PREPARE_CC_BASENAME], [ 1102d19872aSmrg# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. 1112d19872aSmrgfunc_cc_basename () 1122d19872aSmrg{ 1132d19872aSmrg for cc_temp in @S|@*""; do 1142d19872aSmrg case $cc_temp in 1152d19872aSmrg compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; 1162d19872aSmrg distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; 1172d19872aSmrg \-*) ;; 1182d19872aSmrg *) break;; 1192d19872aSmrg esac 1202d19872aSmrg done 1212d19872aSmrg func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` 1222d19872aSmrg} 1232d19872aSmrg])# _LT_PREPARE_CC_BASENAME 1242d19872aSmrg 1252d19872aSmrg 1262d19872aSmrg# _LT_CC_BASENAME(CC) 1272d19872aSmrg# ------------------- 1282d19872aSmrg# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, 1292d19872aSmrg# but that macro is also expanded into generated libtool script, which 1302d19872aSmrg# arranges for $SED and $ECHO to be set by different means. 1312d19872aSmrgm4_defun([_LT_CC_BASENAME], 1322d19872aSmrg[m4_require([_LT_PREPARE_CC_BASENAME])dnl 1332d19872aSmrgAC_REQUIRE([_LT_DECL_SED])dnl 1342d19872aSmrgAC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl 1352d19872aSmrgfunc_cc_basename $1 1362d19872aSmrgcc_basename=$func_cc_basename_result 1372d19872aSmrg]) 1382d19872aSmrg 1392d19872aSmrg 1402d19872aSmrg# _LT_FILEUTILS_DEFAULTS 1412d19872aSmrg# ---------------------- 1422d19872aSmrg# It is okay to use these file commands and assume they have been set 1432d19872aSmrg# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'. 1442d19872aSmrgm4_defun([_LT_FILEUTILS_DEFAULTS], 1452d19872aSmrg[: ${CP="cp -f"} 1462d19872aSmrg: ${MV="mv -f"} 1472d19872aSmrg: ${RM="rm -f"} 1482d19872aSmrg])# _LT_FILEUTILS_DEFAULTS 1492d19872aSmrg 1502d19872aSmrg 1512d19872aSmrg# _LT_SETUP 1522d19872aSmrg# --------- 1532d19872aSmrgm4_defun([_LT_SETUP], 1542d19872aSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl 1552d19872aSmrgAC_REQUIRE([AC_CANONICAL_BUILD])dnl 1562d19872aSmrgAC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl 1572d19872aSmrgAC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl 1582d19872aSmrg 1592d19872aSmrg_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl 1602d19872aSmrgdnl 1612d19872aSmrg_LT_DECL([], [host_alias], [0], [The host system])dnl 1622d19872aSmrg_LT_DECL([], [host], [0])dnl 1632d19872aSmrg_LT_DECL([], [host_os], [0])dnl 1642d19872aSmrgdnl 1652d19872aSmrg_LT_DECL([], [build_alias], [0], [The build system])dnl 1662d19872aSmrg_LT_DECL([], [build], [0])dnl 1672d19872aSmrg_LT_DECL([], [build_os], [0])dnl 1682d19872aSmrgdnl 1692d19872aSmrgAC_REQUIRE([AC_PROG_CC])dnl 1702d19872aSmrgAC_REQUIRE([LT_PATH_LD])dnl 1712d19872aSmrgAC_REQUIRE([LT_PATH_NM])dnl 1722d19872aSmrgdnl 1732d19872aSmrgAC_REQUIRE([AC_PROG_LN_S])dnl 1742d19872aSmrgtest -z "$LN_S" && LN_S="ln -s" 1752d19872aSmrg_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl 1762d19872aSmrgdnl 1772d19872aSmrgAC_REQUIRE([LT_CMD_MAX_LEN])dnl 1782d19872aSmrg_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl 1792d19872aSmrg_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl 1802d19872aSmrgdnl 1812d19872aSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl 1822d19872aSmrgm4_require([_LT_CHECK_SHELL_FEATURES])dnl 1832d19872aSmrgm4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl 1842d19872aSmrgm4_require([_LT_CMD_RELOAD])dnl 1852d19872aSmrgm4_require([_LT_DECL_FILECMD])dnl 1862d19872aSmrgm4_require([_LT_CHECK_MAGIC_METHOD])dnl 1872d19872aSmrgm4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl 1882d19872aSmrgm4_require([_LT_CMD_OLD_ARCHIVE])dnl 1892d19872aSmrgm4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl 1902d19872aSmrgm4_require([_LT_WITH_SYSROOT])dnl 1912d19872aSmrgm4_require([_LT_CMD_TRUNCATE])dnl 1922d19872aSmrg 1932d19872aSmrg_LT_CONFIG_LIBTOOL_INIT([ 1942d19872aSmrg# See if we are running on zsh, and set the options that allow our 1952d19872aSmrg# commands through without removal of \ escapes INIT. 1962d19872aSmrgif test -n "\${ZSH_VERSION+set}"; then 1972d19872aSmrg setopt NO_GLOB_SUBST 1982d19872aSmrgfi 1992d19872aSmrg]) 2002d19872aSmrgif test -n "${ZSH_VERSION+set}"; then 2012d19872aSmrg setopt NO_GLOB_SUBST 2022d19872aSmrgfi 2032d19872aSmrg 2042d19872aSmrg_LT_CHECK_OBJDIR 2052d19872aSmrg 2062d19872aSmrgm4_require([_LT_TAG_COMPILER])dnl 2072d19872aSmrg 2082d19872aSmrgcase $host_os in 2092d19872aSmrgaix3*) 2102d19872aSmrg # AIX sometimes has problems with the GCC collect2 program. For some 2112d19872aSmrg # reason, if we set the COLLECT_NAMES environment variable, the problems 2122d19872aSmrg # vanish in a puff of smoke. 2132d19872aSmrg if test set != "${COLLECT_NAMES+set}"; then 2142d19872aSmrg COLLECT_NAMES= 2152d19872aSmrg export COLLECT_NAMES 2162d19872aSmrg fi 2172d19872aSmrg ;; 2182d19872aSmrgesac 2192d19872aSmrg 2202d19872aSmrg# Global variables: 2212d19872aSmrgofile=libtool 2222d19872aSmrgcan_build_shared=yes 2232d19872aSmrg 2242d19872aSmrg# All known linkers require a '.a' archive for static linking (except MSVC and 2252d19872aSmrg# ICC, which need '.lib'). 2262d19872aSmrglibext=a 2272d19872aSmrg 2282d19872aSmrgwith_gnu_ld=$lt_cv_prog_gnu_ld 2292d19872aSmrg 2302d19872aSmrgold_CC=$CC 2312d19872aSmrgold_CFLAGS=$CFLAGS 2322d19872aSmrg 2332d19872aSmrg# Set sane defaults for various variables 2342d19872aSmrgtest -z "$CC" && CC=cc 2352d19872aSmrgtest -z "$LTCC" && LTCC=$CC 2362d19872aSmrgtest -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS 2372d19872aSmrgtest -z "$LD" && LD=ld 2382d19872aSmrgtest -z "$ac_objext" && ac_objext=o 2392d19872aSmrg 2402d19872aSmrg_LT_CC_BASENAME([$compiler]) 2412d19872aSmrg 2422d19872aSmrg# Only perform the check for file, if the check method requires it 2432d19872aSmrgtest -z "$MAGIC_CMD" && MAGIC_CMD=file 2442d19872aSmrgcase $deplibs_check_method in 2452d19872aSmrgfile_magic*) 2462d19872aSmrg if test "$file_magic_cmd" = '$MAGIC_CMD'; then 2472d19872aSmrg _LT_PATH_MAGIC 2482d19872aSmrg fi 2492d19872aSmrg ;; 2502d19872aSmrgesac 2512d19872aSmrg 2522d19872aSmrg# Use C for the default configuration in the libtool script 2532d19872aSmrgLT_SUPPORTED_TAG([CC]) 2542d19872aSmrg_LT_LANG_C_CONFIG 2552d19872aSmrg_LT_LANG_DEFAULT_CONFIG 2562d19872aSmrg_LT_CONFIG_COMMANDS 2572d19872aSmrg])# _LT_SETUP 2582d19872aSmrg 2592d19872aSmrg 2602d19872aSmrg# _LT_PREPARE_SED_QUOTE_VARS 2612d19872aSmrg# -------------------------- 2622d19872aSmrg# Define a few sed substitution that help us do robust quoting. 2632d19872aSmrgm4_defun([_LT_PREPARE_SED_QUOTE_VARS], 2642d19872aSmrg[# Backslashify metacharacters that are still active within 2652d19872aSmrg# double-quoted strings. 2662d19872aSmrgsed_quote_subst='s/\([["`$\\]]\)/\\\1/g' 2672d19872aSmrg 2682d19872aSmrg# Same as above, but do not quote variable references. 2692d19872aSmrgdouble_quote_subst='s/\([["`\\]]\)/\\\1/g' 2702d19872aSmrg 2712d19872aSmrg# Sed substitution to delay expansion of an escaped shell variable in a 2722d19872aSmrg# double_quote_subst'ed string. 2732d19872aSmrgdelay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' 2742d19872aSmrg 2752d19872aSmrg# Sed substitution to delay expansion of an escaped single quote. 2762d19872aSmrgdelay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' 2772d19872aSmrg 2782d19872aSmrg# Sed substitution to avoid accidental globbing in evaled expressions 2792d19872aSmrgno_glob_subst='s/\*/\\\*/g' 2802d19872aSmrg]) 2812d19872aSmrg 2822d19872aSmrg# _LT_PROG_LTMAIN 2832d19872aSmrg# --------------- 2842d19872aSmrg# Note that this code is called both from 'configure', and 'config.status' 2852d19872aSmrg# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, 2862d19872aSmrg# 'config.status' has no value for ac_aux_dir unless we are using Automake, 2872d19872aSmrg# so we pass a copy along to make sure it has a sensible value anyway. 2882d19872aSmrgm4_defun([_LT_PROG_LTMAIN], 2892d19872aSmrg[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl 2902d19872aSmrg_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) 2912d19872aSmrgltmain=$ac_aux_dir/ltmain.sh 2922d19872aSmrg])# _LT_PROG_LTMAIN 2932d19872aSmrg 2942d19872aSmrg 2952d19872aSmrg## ------------------------------------- ## 2962d19872aSmrg## Accumulate code for creating libtool. ## 2972d19872aSmrg## ------------------------------------- ## 2982d19872aSmrg 2992d19872aSmrg# So that we can recreate a full libtool script including additional 3002d19872aSmrg# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS 3012d19872aSmrg# in macros and then make a single call at the end using the 'libtool' 3022d19872aSmrg# label. 3032d19872aSmrg 3042d19872aSmrg 3052d19872aSmrg# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) 3062d19872aSmrg# ---------------------------------------- 3072d19872aSmrg# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. 3082d19872aSmrgm4_define([_LT_CONFIG_LIBTOOL_INIT], 3092d19872aSmrg[m4_ifval([$1], 3102d19872aSmrg [m4_append([_LT_OUTPUT_LIBTOOL_INIT], 3112d19872aSmrg [$1 3122d19872aSmrg])])]) 3132d19872aSmrg 3142d19872aSmrg# Initialize. 3152d19872aSmrgm4_define([_LT_OUTPUT_LIBTOOL_INIT]) 3162d19872aSmrg 3172d19872aSmrg 3182d19872aSmrg# _LT_CONFIG_LIBTOOL([COMMANDS]) 3192d19872aSmrg# ------------------------------ 3202d19872aSmrg# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. 3212d19872aSmrgm4_define([_LT_CONFIG_LIBTOOL], 3222d19872aSmrg[m4_ifval([$1], 3232d19872aSmrg [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], 3242d19872aSmrg [$1 3252d19872aSmrg])])]) 3262d19872aSmrg 3272d19872aSmrg# Initialize. 3282d19872aSmrgm4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) 3292d19872aSmrg 3302d19872aSmrg 3312d19872aSmrg# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) 3322d19872aSmrg# ----------------------------------------------------- 3332d19872aSmrgm4_defun([_LT_CONFIG_SAVE_COMMANDS], 3342d19872aSmrg[_LT_CONFIG_LIBTOOL([$1]) 3352d19872aSmrg_LT_CONFIG_LIBTOOL_INIT([$2]) 3362d19872aSmrg]) 3372d19872aSmrg 3382d19872aSmrg 3392d19872aSmrg# _LT_FORMAT_COMMENT([COMMENT]) 3402d19872aSmrg# ----------------------------- 3412d19872aSmrg# Add leading comment marks to the start of each line, and a trailing 3422d19872aSmrg# full-stop to the whole comment if one is not present already. 3432d19872aSmrgm4_define([_LT_FORMAT_COMMENT], 3442d19872aSmrg[m4_ifval([$1], [ 3452d19872aSmrgm4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], 3462d19872aSmrg [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) 3472d19872aSmrg)]) 3482d19872aSmrg 3492d19872aSmrg 3502d19872aSmrg 3512d19872aSmrg## ------------------------ ## 3522d19872aSmrg## FIXME: Eliminate VARNAME ## 3532d19872aSmrg## ------------------------ ## 3542d19872aSmrg 3552d19872aSmrg 3562d19872aSmrg# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) 3572d19872aSmrg# ------------------------------------------------------------------- 3582d19872aSmrg# CONFIGNAME is the name given to the value in the libtool script. 3592d19872aSmrg# VARNAME is the (base) name used in the configure script. 3602d19872aSmrg# VALUE may be 0, 1 or 2 for a computed quote escaped value based on 3612d19872aSmrg# VARNAME. Any other value will be used directly. 3622d19872aSmrgm4_define([_LT_DECL], 3632d19872aSmrg[lt_if_append_uniq([lt_decl_varnames], [$2], [, ], 3642d19872aSmrg [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], 3652d19872aSmrg [m4_ifval([$1], [$1], [$2])]) 3662d19872aSmrg lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) 3672d19872aSmrg m4_ifval([$4], 3682d19872aSmrg [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) 3692d19872aSmrg lt_dict_add_subkey([lt_decl_dict], [$2], 3702d19872aSmrg [tagged?], [m4_ifval([$5], [yes], [no])])]) 3712d19872aSmrg]) 3722d19872aSmrg 3732d19872aSmrg 3742d19872aSmrg# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) 3752d19872aSmrg# -------------------------------------------------------- 3762d19872aSmrgm4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) 3772d19872aSmrg 3782d19872aSmrg 3792d19872aSmrg# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) 3802d19872aSmrg# ------------------------------------------------ 3812d19872aSmrgm4_define([lt_decl_tag_varnames], 3822d19872aSmrg[_lt_decl_filter([tagged?], [yes], $@)]) 3832d19872aSmrg 3842d19872aSmrg 3852d19872aSmrg# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) 3862d19872aSmrg# --------------------------------------------------------- 3872d19872aSmrgm4_define([_lt_decl_filter], 3882d19872aSmrg[m4_case([$#], 3892d19872aSmrg [0], [m4_fatal([$0: too few arguments: $#])], 3902d19872aSmrg [1], [m4_fatal([$0: too few arguments: $#: $1])], 3912d19872aSmrg [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], 3922d19872aSmrg [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], 3932d19872aSmrg [lt_dict_filter([lt_decl_dict], $@)])[]dnl 3942d19872aSmrg]) 3952d19872aSmrg 3962d19872aSmrg 3972d19872aSmrg# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) 3982d19872aSmrg# -------------------------------------------------- 3992d19872aSmrgm4_define([lt_decl_quote_varnames], 4002d19872aSmrg[_lt_decl_filter([value], [1], $@)]) 4012d19872aSmrg 4022d19872aSmrg 4032d19872aSmrg# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) 4042d19872aSmrg# --------------------------------------------------- 4052d19872aSmrgm4_define([lt_decl_dquote_varnames], 4062d19872aSmrg[_lt_decl_filter([value], [2], $@)]) 4072d19872aSmrg 4082d19872aSmrg 4092d19872aSmrg# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) 4102d19872aSmrg# --------------------------------------------------- 4112d19872aSmrgm4_define([lt_decl_varnames_tagged], 4122d19872aSmrg[m4_assert([$# <= 2])dnl 4132d19872aSmrg_$0(m4_quote(m4_default([$1], [[, ]])), 4142d19872aSmrg m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), 4152d19872aSmrg m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) 4162d19872aSmrgm4_define([_lt_decl_varnames_tagged], 4172d19872aSmrg[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) 4182d19872aSmrg 4192d19872aSmrg 4202d19872aSmrg# lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) 4212d19872aSmrg# ------------------------------------------------ 4222d19872aSmrgm4_define([lt_decl_all_varnames], 4232d19872aSmrg[_$0(m4_quote(m4_default([$1], [[, ]])), 4242d19872aSmrg m4_if([$2], [], 4252d19872aSmrg m4_quote(lt_decl_varnames), 4262d19872aSmrg m4_quote(m4_shift($@))))[]dnl 4272d19872aSmrg]) 4282d19872aSmrgm4_define([_lt_decl_all_varnames], 4292d19872aSmrg[lt_join($@, lt_decl_varnames_tagged([$1], 4302d19872aSmrg lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl 4312d19872aSmrg]) 4322d19872aSmrg 4332d19872aSmrg 4342d19872aSmrg# _LT_CONFIG_STATUS_DECLARE([VARNAME]) 4352d19872aSmrg# ------------------------------------ 4362d19872aSmrg# Quote a variable value, and forward it to 'config.status' so that its 4372d19872aSmrg# declaration there will have the same value as in 'configure'. VARNAME 4382d19872aSmrg# must have a single quote delimited value for this to work. 4392d19872aSmrgm4_define([_LT_CONFIG_STATUS_DECLARE], 4402d19872aSmrg[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) 4412d19872aSmrg 4422d19872aSmrg 4432d19872aSmrg# _LT_CONFIG_STATUS_DECLARATIONS 4442d19872aSmrg# ------------------------------ 4452d19872aSmrg# We delimit libtool config variables with single quotes, so when 4462d19872aSmrg# we write them to config.status, we have to be sure to quote all 4472d19872aSmrg# embedded single quotes properly. In configure, this macro expands 4482d19872aSmrg# each variable declared with _LT_DECL (and _LT_TAGDECL) into: 4492d19872aSmrg# 4502d19872aSmrg# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`' 4512d19872aSmrgm4_defun([_LT_CONFIG_STATUS_DECLARATIONS], 4522d19872aSmrg[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), 4532d19872aSmrg [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) 4542d19872aSmrg 4552d19872aSmrg 4562d19872aSmrg# _LT_LIBTOOL_TAGS 4572d19872aSmrg# ---------------- 4582d19872aSmrg# Output comment and list of tags supported by the script 4592d19872aSmrgm4_defun([_LT_LIBTOOL_TAGS], 4602d19872aSmrg[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl 4612d19872aSmrgavailable_tags='_LT_TAGS'dnl 4622d19872aSmrg]) 4632d19872aSmrg 4642d19872aSmrg 4652d19872aSmrg# _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) 4662d19872aSmrg# ----------------------------------- 4672d19872aSmrg# Extract the dictionary values for VARNAME (optionally with TAG) and 4682d19872aSmrg# expand to a commented shell variable setting: 4692d19872aSmrg# 4702d19872aSmrg# # Some comment about what VAR is for. 4712d19872aSmrg# visible_name=$lt_internal_name 4722d19872aSmrgm4_define([_LT_LIBTOOL_DECLARE], 4732d19872aSmrg[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], 4742d19872aSmrg [description])))[]dnl 4752d19872aSmrgm4_pushdef([_libtool_name], 4762d19872aSmrg m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl 4772d19872aSmrgm4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), 4782d19872aSmrg [0], [_libtool_name=[$]$1], 4792d19872aSmrg [1], [_libtool_name=$lt_[]$1], 4802d19872aSmrg [2], [_libtool_name=$lt_[]$1], 4812d19872aSmrg [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl 4822d19872aSmrgm4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl 4832d19872aSmrg]) 4842d19872aSmrg 4852d19872aSmrg 4862d19872aSmrg# _LT_LIBTOOL_CONFIG_VARS 4872d19872aSmrg# ----------------------- 4882d19872aSmrg# Produce commented declarations of non-tagged libtool config variables 4892d19872aSmrg# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool' 4902d19872aSmrg# script. Tagged libtool config variables (even for the LIBTOOL CONFIG 4912d19872aSmrg# section) are produced by _LT_LIBTOOL_TAG_VARS. 4922d19872aSmrgm4_defun([_LT_LIBTOOL_CONFIG_VARS], 4932d19872aSmrg[m4_foreach([_lt_var], 4942d19872aSmrg m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), 4952d19872aSmrg [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) 4962d19872aSmrg 4972d19872aSmrg 4982d19872aSmrg# _LT_LIBTOOL_TAG_VARS(TAG) 4992d19872aSmrg# ------------------------- 5002d19872aSmrgm4_define([_LT_LIBTOOL_TAG_VARS], 5012d19872aSmrg[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), 5022d19872aSmrg [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) 5032d19872aSmrg 5042d19872aSmrg 5052d19872aSmrg# _LT_TAGVAR(VARNAME, [TAGNAME]) 5062d19872aSmrg# ------------------------------ 5072d19872aSmrgm4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) 5082d19872aSmrg 5092d19872aSmrg 5102d19872aSmrg# _LT_CONFIG_COMMANDS 5112d19872aSmrg# ------------------- 5122d19872aSmrg# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of 5132d19872aSmrg# variables for single and double quote escaping we saved from calls 5142d19872aSmrg# to _LT_DECL, we can put quote escaped variables declarations 5152d19872aSmrg# into 'config.status', and then the shell code to quote escape them in 5162d19872aSmrg# for loops in 'config.status'. Finally, any additional code accumulated 5172d19872aSmrg# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. 5182d19872aSmrgm4_defun([_LT_CONFIG_COMMANDS], 5192d19872aSmrg[AC_PROVIDE_IFELSE([LT_OUTPUT], 5202d19872aSmrg dnl If the libtool generation code has been placed in $CONFIG_LT, 5212d19872aSmrg dnl instead of duplicating it all over again into config.status, 5222d19872aSmrg dnl then we will have config.status run $CONFIG_LT later, so it 5232d19872aSmrg dnl needs to know what name is stored there: 5242d19872aSmrg [AC_CONFIG_COMMANDS([libtool], 5252d19872aSmrg [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], 5262d19872aSmrg dnl If the libtool generation code is destined for config.status, 5272d19872aSmrg dnl expand the accumulated commands and init code now: 5282d19872aSmrg [AC_CONFIG_COMMANDS([libtool], 5292d19872aSmrg [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) 5302d19872aSmrg])#_LT_CONFIG_COMMANDS 5312d19872aSmrg 5322d19872aSmrg 5332d19872aSmrg# Initialize. 5342d19872aSmrgm4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], 5352d19872aSmrg[ 5362d19872aSmrg 5372d19872aSmrg# The HP-UX ksh and POSIX shell print the target directory to stdout 5382d19872aSmrg# if CDPATH is set. 5392d19872aSmrg(unset CDPATH) >/dev/null 2>&1 && unset CDPATH 5402d19872aSmrg 5412d19872aSmrgsed_quote_subst='$sed_quote_subst' 5422d19872aSmrgdouble_quote_subst='$double_quote_subst' 5432d19872aSmrgdelay_variable_subst='$delay_variable_subst' 5442d19872aSmrg_LT_CONFIG_STATUS_DECLARATIONS 5452d19872aSmrgLTCC='$LTCC' 5462d19872aSmrgLTCFLAGS='$LTCFLAGS' 5472d19872aSmrgcompiler='$compiler_DEFAULT' 5482d19872aSmrg 5492d19872aSmrg# A function that is used when there is no print builtin or printf. 5502d19872aSmrgfunc_fallback_echo () 5512d19872aSmrg{ 5522d19872aSmrg eval 'cat <<_LTECHO_EOF 5532d19872aSmrg\$[]1 5542d19872aSmrg_LTECHO_EOF' 5552d19872aSmrg} 5562d19872aSmrg 5572d19872aSmrg# Quote evaled strings. 5582d19872aSmrgfor var in lt_decl_all_varnames([[ \ 5592d19872aSmrg]], lt_decl_quote_varnames); do 5602d19872aSmrg case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in 5612d19872aSmrg *[[\\\\\\\`\\"\\\$]]*) 5622d19872aSmrg eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes 5632d19872aSmrg ;; 5642d19872aSmrg *) 5652d19872aSmrg eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" 5662d19872aSmrg ;; 5672d19872aSmrg esac 5682d19872aSmrgdone 5692d19872aSmrg 5702d19872aSmrg# Double-quote double-evaled strings. 5712d19872aSmrgfor var in lt_decl_all_varnames([[ \ 5722d19872aSmrg]], lt_decl_dquote_varnames); do 5732d19872aSmrg case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in 5742d19872aSmrg *[[\\\\\\\`\\"\\\$]]*) 5752d19872aSmrg eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes 5762d19872aSmrg ;; 5772d19872aSmrg *) 5782d19872aSmrg eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" 5792d19872aSmrg ;; 5802d19872aSmrg esac 5812d19872aSmrgdone 5822d19872aSmrg 5832d19872aSmrg_LT_OUTPUT_LIBTOOL_INIT 5842d19872aSmrg]) 5852d19872aSmrg 5862d19872aSmrg# _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) 5872d19872aSmrg# ------------------------------------ 5882d19872aSmrg# Generate a child script FILE with all initialization necessary to 5892d19872aSmrg# reuse the environment learned by the parent script, and make the 5902d19872aSmrg# file executable. If COMMENT is supplied, it is inserted after the 5912d19872aSmrg# '#!' sequence but before initialization text begins. After this 5922d19872aSmrg# macro, additional text can be appended to FILE to form the body of 5932d19872aSmrg# the child script. The macro ends with non-zero status if the 5942d19872aSmrg# file could not be fully written (such as if the disk is full). 5952d19872aSmrgm4_ifdef([AS_INIT_GENERATED], 5962d19872aSmrg[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], 5972d19872aSmrg[m4_defun([_LT_GENERATED_FILE_INIT], 5982d19872aSmrg[m4_require([AS_PREPARE])]dnl 5992d19872aSmrg[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl 6002d19872aSmrg[lt_write_fail=0 6012d19872aSmrgcat >$1 <<_ASEOF || lt_write_fail=1 6022d19872aSmrg#! $SHELL 6032d19872aSmrg# Generated by $as_me. 6042d19872aSmrg$2 6052d19872aSmrgSHELL=\${CONFIG_SHELL-$SHELL} 6062d19872aSmrgexport SHELL 6072d19872aSmrg_ASEOF 6082d19872aSmrgcat >>$1 <<\_ASEOF || lt_write_fail=1 6092d19872aSmrgAS_SHELL_SANITIZE 6102d19872aSmrg_AS_PREPARE 6112d19872aSmrgexec AS_MESSAGE_FD>&1 6122d19872aSmrg_ASEOF 6132d19872aSmrgtest 0 = "$lt_write_fail" && chmod +x $1[]dnl 6142d19872aSmrgm4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT 6152d19872aSmrg 6162d19872aSmrg# LT_OUTPUT 6172d19872aSmrg# --------- 6182d19872aSmrg# This macro allows early generation of the libtool script (before 6192f76b07dSmrg# AC_OUTPUT is called), in case it is used in configure for compilation 6202d19872aSmrg# tests. 6212d19872aSmrgAC_DEFUN([LT_OUTPUT], 6222d19872aSmrg[: ${CONFIG_LT=./config.lt} 6232d19872aSmrgAC_MSG_NOTICE([creating $CONFIG_LT]) 6242d19872aSmrg_LT_GENERATED_FILE_INIT(["$CONFIG_LT"], 6252d19872aSmrg[# Run this file to recreate a libtool stub with the current configuration.]) 6262d19872aSmrg 6272d19872aSmrgcat >>"$CONFIG_LT" <<\_LTEOF 6282d19872aSmrglt_cl_silent=false 6292d19872aSmrgexec AS_MESSAGE_LOG_FD>>config.log 6302d19872aSmrg{ 6312d19872aSmrg echo 6322d19872aSmrg AS_BOX([Running $as_me.]) 6332d19872aSmrg} >&AS_MESSAGE_LOG_FD 6342d19872aSmrg 6352d19872aSmrglt_cl_help="\ 6362d19872aSmrg'$as_me' creates a local libtool stub from the current configuration, 6372d19872aSmrgfor use in further configure time tests before the real libtool is 6382d19872aSmrggenerated. 6392d19872aSmrg 6402d19872aSmrgUsage: $[0] [[OPTIONS]] 6412d19872aSmrg 6422d19872aSmrg -h, --help print this help, then exit 6432d19872aSmrg -V, --version print version number, then exit 6442d19872aSmrg -q, --quiet do not print progress messages 6452d19872aSmrg -d, --debug don't remove temporary files 6462d19872aSmrg 6472d19872aSmrgReport bugs to <bug-libtool@gnu.org>." 6482d19872aSmrg 6492d19872aSmrglt_cl_version="\ 6502d19872aSmrgm4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl 6512d19872aSmrgm4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) 6522d19872aSmrgconfigured by $[0], generated by m4_PACKAGE_STRING. 6532d19872aSmrg 6542f76b07dSmrgCopyright (C) 2024 Free Software Foundation, Inc. 6552d19872aSmrgThis config.lt script is free software; the Free Software Foundation 6562f76b07dSmrggives unlimited permission to copy, distribute and modify it." 6572d19872aSmrg 6582d19872aSmrgwhile test 0 != $[#] 6592d19872aSmrgdo 6602d19872aSmrg case $[1] in 6612d19872aSmrg --version | --v* | -V ) 6622d19872aSmrg echo "$lt_cl_version"; exit 0 ;; 6632d19872aSmrg --help | --h* | -h ) 6642d19872aSmrg echo "$lt_cl_help"; exit 0 ;; 6652d19872aSmrg --debug | --d* | -d ) 6662d19872aSmrg debug=: ;; 6672d19872aSmrg --quiet | --q* | --silent | --s* | -q ) 6682d19872aSmrg lt_cl_silent=: ;; 6692d19872aSmrg 6702d19872aSmrg -*) AC_MSG_ERROR([unrecognized option: $[1] 6712d19872aSmrgTry '$[0] --help' for more information.]) ;; 6722d19872aSmrg 6732d19872aSmrg *) AC_MSG_ERROR([unrecognized argument: $[1] 6742d19872aSmrgTry '$[0] --help' for more information.]) ;; 6752d19872aSmrg esac 6762d19872aSmrg shift 6772d19872aSmrgdone 6782d19872aSmrg 6792d19872aSmrgif $lt_cl_silent; then 6802d19872aSmrg exec AS_MESSAGE_FD>/dev/null 6812d19872aSmrgfi 6822d19872aSmrg_LTEOF 6832d19872aSmrg 6842d19872aSmrgcat >>"$CONFIG_LT" <<_LTEOF 6852d19872aSmrg_LT_OUTPUT_LIBTOOL_COMMANDS_INIT 6862d19872aSmrg_LTEOF 6872d19872aSmrg 6882d19872aSmrgcat >>"$CONFIG_LT" <<\_LTEOF 6892d19872aSmrgAC_MSG_NOTICE([creating $ofile]) 6902d19872aSmrg_LT_OUTPUT_LIBTOOL_COMMANDS 6912d19872aSmrgAS_EXIT(0) 6922d19872aSmrg_LTEOF 6932d19872aSmrgchmod +x "$CONFIG_LT" 6942d19872aSmrg 6952d19872aSmrg# configure is writing to config.log, but config.lt does its own redirection, 6962d19872aSmrg# appending to config.log, which fails on DOS, as config.log is still kept 6972d19872aSmrg# open by configure. Here we exec the FD to /dev/null, effectively closing 6982d19872aSmrg# config.log, so it can be properly (re)opened and appended to by config.lt. 6992d19872aSmrglt_cl_success=: 7002d19872aSmrgtest yes = "$silent" && 7012d19872aSmrg lt_config_lt_args="$lt_config_lt_args --quiet" 7022d19872aSmrgexec AS_MESSAGE_LOG_FD>/dev/null 7032d19872aSmrg$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false 7042d19872aSmrgexec AS_MESSAGE_LOG_FD>>config.log 7052d19872aSmrg$lt_cl_success || AS_EXIT(1) 7062d19872aSmrg])# LT_OUTPUT 7072d19872aSmrg 7082d19872aSmrg 7092d19872aSmrg# _LT_CONFIG(TAG) 7102d19872aSmrg# --------------- 7112d19872aSmrg# If TAG is the built-in tag, create an initial libtool script with a 7122d19872aSmrg# default configuration from the untagged config vars. Otherwise add code 7132d19872aSmrg# to config.status for appending the configuration named by TAG from the 7142d19872aSmrg# matching tagged config vars. 7152d19872aSmrgm4_defun([_LT_CONFIG], 7162d19872aSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 7172d19872aSmrg_LT_CONFIG_SAVE_COMMANDS([ 7182d19872aSmrg m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl 7192d19872aSmrg m4_if(_LT_TAG, [C], [ 7202d19872aSmrg # See if we are running on zsh, and set the options that allow our 7212d19872aSmrg # commands through without removal of \ escapes. 7222d19872aSmrg if test -n "${ZSH_VERSION+set}"; then 7232d19872aSmrg setopt NO_GLOB_SUBST 7242d19872aSmrg fi 7252d19872aSmrg 7262d19872aSmrg cfgfile=${ofile}T 7272d19872aSmrg trap "$RM \"$cfgfile\"; exit 1" 1 2 15 7282d19872aSmrg $RM "$cfgfile" 7292d19872aSmrg 7302d19872aSmrg cat <<_LT_EOF >> "$cfgfile" 7312d19872aSmrg#! $SHELL 7322d19872aSmrg# Generated automatically by $as_me ($PACKAGE) $VERSION 7332d19872aSmrg# NOTE: Changes made to this file will be lost: look at ltmain.sh. 7342d19872aSmrg 7352d19872aSmrg# Provide generalized library-building support services. 7362d19872aSmrg# Written by Gordon Matzigkeit, 1996 7372d19872aSmrg 7382d19872aSmrg_LT_COPYING 7392d19872aSmrg_LT_LIBTOOL_TAGS 7402d19872aSmrg 7412d19872aSmrg# Configured defaults for sys_lib_dlsearch_path munging. 7422d19872aSmrg: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} 7432d19872aSmrg 7442d19872aSmrg# ### BEGIN LIBTOOL CONFIG 7452d19872aSmrg_LT_LIBTOOL_CONFIG_VARS 7462d19872aSmrg_LT_LIBTOOL_TAG_VARS 7472d19872aSmrg# ### END LIBTOOL CONFIG 7482d19872aSmrg 7492d19872aSmrg_LT_EOF 7502d19872aSmrg 7512d19872aSmrg cat <<'_LT_EOF' >> "$cfgfile" 7522d19872aSmrg 7532d19872aSmrg# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE 7542d19872aSmrg 7552d19872aSmrg_LT_PREPARE_MUNGE_PATH_LIST 7562d19872aSmrg_LT_PREPARE_CC_BASENAME 7572d19872aSmrg 7582d19872aSmrg# ### END FUNCTIONS SHARED WITH CONFIGURE 7592d19872aSmrg 7602d19872aSmrg_LT_EOF 7612d19872aSmrg 7622d19872aSmrg case $host_os in 7632d19872aSmrg aix3*) 7642d19872aSmrg cat <<\_LT_EOF >> "$cfgfile" 7652d19872aSmrg# AIX sometimes has problems with the GCC collect2 program. For some 7662d19872aSmrg# reason, if we set the COLLECT_NAMES environment variable, the problems 7672d19872aSmrg# vanish in a puff of smoke. 7682d19872aSmrgif test set != "${COLLECT_NAMES+set}"; then 7692d19872aSmrg COLLECT_NAMES= 7702d19872aSmrg export COLLECT_NAMES 7712d19872aSmrgfi 7722d19872aSmrg_LT_EOF 7732d19872aSmrg ;; 7742d19872aSmrg esac 7752d19872aSmrg 7762d19872aSmrg _LT_PROG_LTMAIN 7772d19872aSmrg 7782d19872aSmrg # We use sed instead of cat because bash on DJGPP gets confused if 7792d19872aSmrg # if finds mixed CR/LF and LF-only lines. Since sed operates in 7802d19872aSmrg # text mode, it properly converts lines to CR/LF. This bash problem 7812d19872aSmrg # is reportedly fixed, but why not run on old versions too? 7822d19872aSmrg $SED '$q' "$ltmain" >> "$cfgfile" \ 7832d19872aSmrg || (rm -f "$cfgfile"; exit 1) 7842d19872aSmrg 7852d19872aSmrg mv -f "$cfgfile" "$ofile" || 7862d19872aSmrg (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") 7872d19872aSmrg chmod +x "$ofile" 7882d19872aSmrg], 7892d19872aSmrg[cat <<_LT_EOF >> "$ofile" 7902d19872aSmrg 7912d19872aSmrgdnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded 7922d19872aSmrgdnl in a comment (ie after a #). 7932d19872aSmrg# ### BEGIN LIBTOOL TAG CONFIG: $1 7942d19872aSmrg_LT_LIBTOOL_TAG_VARS(_LT_TAG) 7952d19872aSmrg# ### END LIBTOOL TAG CONFIG: $1 7962d19872aSmrg_LT_EOF 7972d19872aSmrg])dnl /m4_if 7982d19872aSmrg], 7992d19872aSmrg[m4_if([$1], [], [ 8002d19872aSmrg PACKAGE='$PACKAGE' 8012d19872aSmrg VERSION='$VERSION' 8022d19872aSmrg RM='$RM' 8032d19872aSmrg ofile='$ofile'], []) 8042d19872aSmrg])dnl /_LT_CONFIG_SAVE_COMMANDS 8052d19872aSmrg])# _LT_CONFIG 8062d19872aSmrg 8072d19872aSmrg 8082d19872aSmrg# LT_SUPPORTED_TAG(TAG) 8092d19872aSmrg# --------------------- 8102d19872aSmrg# Trace this macro to discover what tags are supported by the libtool 8112d19872aSmrg# --tag option, using: 8122d19872aSmrg# autoconf --trace 'LT_SUPPORTED_TAG:$1' 8132d19872aSmrgAC_DEFUN([LT_SUPPORTED_TAG], []) 8142d19872aSmrg 8152d19872aSmrg 8162d19872aSmrg# C support is built-in for now 8172d19872aSmrgm4_define([_LT_LANG_C_enabled], []) 8182d19872aSmrgm4_define([_LT_TAGS], []) 8192d19872aSmrg 8202d19872aSmrg 8212d19872aSmrg# LT_LANG(LANG) 8222d19872aSmrg# ------------- 8232d19872aSmrg# Enable libtool support for the given language if not already enabled. 8242d19872aSmrgAC_DEFUN([LT_LANG], 8252d19872aSmrg[AC_BEFORE([$0], [LT_OUTPUT])dnl 8262d19872aSmrgm4_case([$1], 8272d19872aSmrg [C], [_LT_LANG(C)], 8282d19872aSmrg [C++], [_LT_LANG(CXX)], 8292d19872aSmrg [Go], [_LT_LANG(GO)], 8302d19872aSmrg [Java], [_LT_LANG(GCJ)], 8312d19872aSmrg [Fortran 77], [_LT_LANG(F77)], 8322d19872aSmrg [Fortran], [_LT_LANG(FC)], 8332d19872aSmrg [Windows Resource], [_LT_LANG(RC)], 8342d19872aSmrg [m4_ifdef([_LT_LANG_]$1[_CONFIG], 8352d19872aSmrg [_LT_LANG($1)], 8362d19872aSmrg [m4_fatal([$0: unsupported language: "$1"])])])dnl 8372d19872aSmrg])# LT_LANG 8382d19872aSmrg 8392d19872aSmrg 8402d19872aSmrg# _LT_LANG(LANGNAME) 8412d19872aSmrg# ------------------ 8422d19872aSmrgm4_defun([_LT_LANG], 8432d19872aSmrg[m4_ifdef([_LT_LANG_]$1[_enabled], [], 8442d19872aSmrg [LT_SUPPORTED_TAG([$1])dnl 8452d19872aSmrg m4_append([_LT_TAGS], [$1 ])dnl 8462d19872aSmrg m4_define([_LT_LANG_]$1[_enabled], [])dnl 8472d19872aSmrg _LT_LANG_$1_CONFIG($1)])dnl 8482d19872aSmrg])# _LT_LANG 8492d19872aSmrg 8502d19872aSmrg 8512d19872aSmrgm4_ifndef([AC_PROG_GO], [ 8522d19872aSmrg############################################################ 8532d19872aSmrg# NOTE: This macro has been submitted for inclusion into # 8542d19872aSmrg# GNU Autoconf as AC_PROG_GO. When it is available in # 8552d19872aSmrg# a released version of Autoconf we should remove this # 8562d19872aSmrg# macro and use it instead. # 8572d19872aSmrg############################################################ 8582d19872aSmrgm4_defun([AC_PROG_GO], 8592d19872aSmrg[AC_LANG_PUSH(Go)dnl 8602d19872aSmrgAC_ARG_VAR([GOC], [Go compiler command])dnl 8612d19872aSmrgAC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl 8622d19872aSmrg_AC_ARG_VAR_LDFLAGS()dnl 8632d19872aSmrgAC_CHECK_TOOL(GOC, gccgo) 8642d19872aSmrgif test -z "$GOC"; then 8652d19872aSmrg if test -n "$ac_tool_prefix"; then 8662d19872aSmrg AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) 8672d19872aSmrg fi 8682d19872aSmrgfi 8692d19872aSmrgif test -z "$GOC"; then 8702d19872aSmrg AC_CHECK_PROG(GOC, gccgo, gccgo, false) 8712d19872aSmrgfi 8722d19872aSmrg])#m4_defun 8732d19872aSmrg])#m4_ifndef 8742d19872aSmrg 8752d19872aSmrg 8762d19872aSmrg# _LT_LANG_DEFAULT_CONFIG 8772d19872aSmrg# ----------------------- 8782d19872aSmrgm4_defun([_LT_LANG_DEFAULT_CONFIG], 8792d19872aSmrg[AC_PROVIDE_IFELSE([AC_PROG_CXX], 8802d19872aSmrg [LT_LANG(CXX)], 8812d19872aSmrg [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) 8822d19872aSmrg 8832d19872aSmrgAC_PROVIDE_IFELSE([AC_PROG_F77], 8842d19872aSmrg [LT_LANG(F77)], 8852d19872aSmrg [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) 8862d19872aSmrg 8872d19872aSmrgAC_PROVIDE_IFELSE([AC_PROG_FC], 8882d19872aSmrg [LT_LANG(FC)], 8892d19872aSmrg [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) 8902d19872aSmrg 8912d19872aSmrgdnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal 8922d19872aSmrgdnl pulling things in needlessly. 8932d19872aSmrgAC_PROVIDE_IFELSE([AC_PROG_GCJ], 8942d19872aSmrg [LT_LANG(GCJ)], 8952d19872aSmrg [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], 8962d19872aSmrg [LT_LANG(GCJ)], 8972d19872aSmrg [AC_PROVIDE_IFELSE([LT_PROG_GCJ], 8982d19872aSmrg [LT_LANG(GCJ)], 8992d19872aSmrg [m4_ifdef([AC_PROG_GCJ], 9002d19872aSmrg [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) 9012d19872aSmrg m4_ifdef([A][M_PROG_GCJ], 9022d19872aSmrg [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) 9032d19872aSmrg m4_ifdef([LT_PROG_GCJ], 9042d19872aSmrg [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) 9052d19872aSmrg 9062d19872aSmrgAC_PROVIDE_IFELSE([AC_PROG_GO], 9072d19872aSmrg [LT_LANG(GO)], 9082d19872aSmrg [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) 9092d19872aSmrg 9102d19872aSmrgAC_PROVIDE_IFELSE([LT_PROG_RC], 9112d19872aSmrg [LT_LANG(RC)], 9122d19872aSmrg [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) 9132d19872aSmrg])# _LT_LANG_DEFAULT_CONFIG 9142d19872aSmrg 9152d19872aSmrg# Obsolete macros: 9162d19872aSmrgAU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) 9172d19872aSmrgAU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) 9182d19872aSmrgAU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) 9192d19872aSmrgAU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) 9202d19872aSmrgAU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) 9212d19872aSmrgdnl aclocal-1.4 backwards compatibility: 9222d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_CXX], []) 9232d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_F77], []) 9242d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_FC], []) 9252d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_GCJ], []) 9262d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_RC], []) 9272d19872aSmrg 9282d19872aSmrg 9292d19872aSmrg# _LT_TAG_COMPILER 9302d19872aSmrg# ---------------- 9312d19872aSmrgm4_defun([_LT_TAG_COMPILER], 9322d19872aSmrg[AC_REQUIRE([AC_PROG_CC])dnl 9332d19872aSmrg 9342d19872aSmrg_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl 9352d19872aSmrg_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl 9362d19872aSmrg_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl 9372d19872aSmrg_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl 9382d19872aSmrg 9392d19872aSmrg# If no C compiler was specified, use CC. 9402d19872aSmrgLTCC=${LTCC-"$CC"} 9412d19872aSmrg 9422d19872aSmrg# If no C compiler flags were specified, use CFLAGS. 9432d19872aSmrgLTCFLAGS=${LTCFLAGS-"$CFLAGS"} 9442d19872aSmrg 9452d19872aSmrg# Allow CC to be a program name with arguments. 9462d19872aSmrgcompiler=$CC 9472d19872aSmrg])# _LT_TAG_COMPILER 9482d19872aSmrg 9492d19872aSmrg 9502d19872aSmrg# _LT_COMPILER_BOILERPLATE 9512d19872aSmrg# ------------------------ 9522d19872aSmrg# Check for compiler boilerplate output or warnings with 9532d19872aSmrg# the simple compiler test code. 9542d19872aSmrgm4_defun([_LT_COMPILER_BOILERPLATE], 9552d19872aSmrg[m4_require([_LT_DECL_SED])dnl 9562d19872aSmrgac_outfile=conftest.$ac_objext 9572d19872aSmrgecho "$lt_simple_compile_test_code" >conftest.$ac_ext 9582d19872aSmrgeval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err 9592d19872aSmrg_lt_compiler_boilerplate=`cat conftest.err` 9602d19872aSmrg$RM conftest* 9612d19872aSmrg])# _LT_COMPILER_BOILERPLATE 9622d19872aSmrg 9632d19872aSmrg 9642d19872aSmrg# _LT_LINKER_BOILERPLATE 9652d19872aSmrg# ---------------------- 9662d19872aSmrg# Check for linker boilerplate output or warnings with 9672d19872aSmrg# the simple link test code. 9682d19872aSmrgm4_defun([_LT_LINKER_BOILERPLATE], 9692d19872aSmrg[m4_require([_LT_DECL_SED])dnl 9702d19872aSmrgac_outfile=conftest.$ac_objext 9712d19872aSmrgecho "$lt_simple_link_test_code" >conftest.$ac_ext 9722d19872aSmrgeval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err 9732d19872aSmrg_lt_linker_boilerplate=`cat conftest.err` 9742d19872aSmrg$RM -r conftest* 9752d19872aSmrg])# _LT_LINKER_BOILERPLATE 9762d19872aSmrg 9772f76b07dSmrg 9782d19872aSmrg# _LT_REQUIRED_DARWIN_CHECKS 9792d19872aSmrg# ------------------------- 9802d19872aSmrgm4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ 9812d19872aSmrg case $host_os in 9822d19872aSmrg rhapsody* | darwin*) 9832d19872aSmrg AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) 9842d19872aSmrg AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) 9852d19872aSmrg AC_CHECK_TOOL([LIPO], [lipo], [:]) 9862d19872aSmrg AC_CHECK_TOOL([OTOOL], [otool], [:]) 9872d19872aSmrg AC_CHECK_TOOL([OTOOL64], [otool64], [:]) 9882d19872aSmrg _LT_DECL([], [DSYMUTIL], [1], 9892d19872aSmrg [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) 9902d19872aSmrg _LT_DECL([], [NMEDIT], [1], 9912d19872aSmrg [Tool to change global to local symbols on Mac OS X]) 9922d19872aSmrg _LT_DECL([], [LIPO], [1], 9932d19872aSmrg [Tool to manipulate fat objects and archives on Mac OS X]) 9942d19872aSmrg _LT_DECL([], [OTOOL], [1], 9952d19872aSmrg [ldd/readelf like tool for Mach-O binaries on Mac OS X]) 9962d19872aSmrg _LT_DECL([], [OTOOL64], [1], 9972d19872aSmrg [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) 9982d19872aSmrg 9992d19872aSmrg AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], 10002d19872aSmrg [lt_cv_apple_cc_single_mod=no 10012d19872aSmrg if test -z "$LT_MULTI_MODULE"; then 10022d19872aSmrg # By default we will add the -single_module flag. You can override 10032d19872aSmrg # by either setting the environment variable LT_MULTI_MODULE 10042d19872aSmrg # non-empty at configure time, or by adding -multi_module to the 10052d19872aSmrg # link flags. 10062d19872aSmrg rm -rf libconftest.dylib* 10072d19872aSmrg echo "int foo(void){return 1;}" > conftest.c 10082d19872aSmrg echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ 10092d19872aSmrg-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD 10102d19872aSmrg $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ 10112d19872aSmrg -dynamiclib -Wl,-single_module conftest.c 2>conftest.err 10122d19872aSmrg _lt_result=$? 10132d19872aSmrg # If there is a non-empty error log, and "single_module" 10142d19872aSmrg # appears in it, assume the flag caused a linker warning 10152d19872aSmrg if test -s conftest.err && $GREP single_module conftest.err; then 10162d19872aSmrg cat conftest.err >&AS_MESSAGE_LOG_FD 10172d19872aSmrg # Otherwise, if the output was created with a 0 exit code from 10182d19872aSmrg # the compiler, it worked. 10192d19872aSmrg elif test -f libconftest.dylib && test 0 = "$_lt_result"; then 10202d19872aSmrg lt_cv_apple_cc_single_mod=yes 10212d19872aSmrg else 10222d19872aSmrg cat conftest.err >&AS_MESSAGE_LOG_FD 10232d19872aSmrg fi 10242d19872aSmrg rm -rf libconftest.dylib* 10252d19872aSmrg rm -f conftest.* 10262d19872aSmrg fi]) 10272d19872aSmrg 10282f76b07dSmrg # Feature test to disable chained fixups since it is not 10292f76b07dSmrg # compatible with '-undefined dynamic_lookup' 10302f76b07dSmrg AC_CACHE_CHECK([for -no_fixup_chains linker flag], 10312f76b07dSmrg [lt_cv_support_no_fixup_chains], 10322f76b07dSmrg [ save_LDFLAGS=$LDFLAGS 10332f76b07dSmrg LDFLAGS="$LDFLAGS -Wl,-no_fixup_chains" 10342f76b07dSmrg AC_LINK_IFELSE( 10352f76b07dSmrg [AC_LANG_PROGRAM([],[])], 10362f76b07dSmrg lt_cv_support_no_fixup_chains=yes, 10372f76b07dSmrg lt_cv_support_no_fixup_chains=no 10382f76b07dSmrg ) 10392f76b07dSmrg LDFLAGS=$save_LDFLAGS 10402f76b07dSmrg ] 10412f76b07dSmrg ) 10422f76b07dSmrg 10432d19872aSmrg AC_CACHE_CHECK([for -exported_symbols_list linker flag], 10442d19872aSmrg [lt_cv_ld_exported_symbols_list], 10452d19872aSmrg [lt_cv_ld_exported_symbols_list=no 10462d19872aSmrg save_LDFLAGS=$LDFLAGS 10472d19872aSmrg echo "_main" > conftest.sym 10482d19872aSmrg LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" 10492d19872aSmrg AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], 10502d19872aSmrg [lt_cv_ld_exported_symbols_list=yes], 10512d19872aSmrg [lt_cv_ld_exported_symbols_list=no]) 10522d19872aSmrg LDFLAGS=$save_LDFLAGS 10532d19872aSmrg ]) 10542d19872aSmrg 10552d19872aSmrg AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], 10562d19872aSmrg [lt_cv_ld_force_load=no 10572d19872aSmrg cat > conftest.c << _LT_EOF 10582d19872aSmrgint forced_loaded() { return 2;} 10592d19872aSmrg_LT_EOF 10602d19872aSmrg echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD 10612d19872aSmrg $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD 10622d19872aSmrg echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD 10632d19872aSmrg $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD 10642d19872aSmrg echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD 10652d19872aSmrg $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD 10662d19872aSmrg cat > conftest.c << _LT_EOF 10672f76b07dSmrgint main(void) { return 0;} 10682d19872aSmrg_LT_EOF 10692d19872aSmrg echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD 10702d19872aSmrg $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err 10712d19872aSmrg _lt_result=$? 10722d19872aSmrg if test -s conftest.err && $GREP force_load conftest.err; then 10732d19872aSmrg cat conftest.err >&AS_MESSAGE_LOG_FD 10742d19872aSmrg elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then 10752d19872aSmrg lt_cv_ld_force_load=yes 10762d19872aSmrg else 10772d19872aSmrg cat conftest.err >&AS_MESSAGE_LOG_FD 10782d19872aSmrg fi 10792d19872aSmrg rm -f conftest.err libconftest.a conftest conftest.c 10802d19872aSmrg rm -rf conftest.dSYM 10812d19872aSmrg ]) 10822d19872aSmrg case $host_os in 10832d19872aSmrg rhapsody* | darwin1.[[012]]) 10842d19872aSmrg _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; 10852d19872aSmrg darwin1.*) 10862d19872aSmrg _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 10872d19872aSmrg darwin*) 10882d19872aSmrg case $MACOSX_DEPLOYMENT_TARGET,$host in 10892d19872aSmrg 10.[[012]],*|,*powerpc*-darwin[[5-8]]*) 10902d19872aSmrg _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 10912d19872aSmrg *) 10922f76b07dSmrg _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' 10932f76b07dSmrg if test yes = "$lt_cv_support_no_fixup_chains"; then 10942f76b07dSmrg AS_VAR_APPEND([_lt_dar_allow_undefined], [' $wl-no_fixup_chains']) 10952f76b07dSmrg fi 10962f76b07dSmrg ;; 10972d19872aSmrg esac 10982d19872aSmrg ;; 10992d19872aSmrg esac 11002d19872aSmrg if test yes = "$lt_cv_apple_cc_single_mod"; then 11012d19872aSmrg _lt_dar_single_mod='$single_module' 11022d19872aSmrg fi 11032f76b07dSmrg _lt_dar_needs_single_mod=no 11042f76b07dSmrg case $host_os in 11052f76b07dSmrg rhapsody* | darwin1.*) 11062f76b07dSmrg _lt_dar_needs_single_mod=yes ;; 11072f76b07dSmrg darwin*) 11082f76b07dSmrg # When targeting Mac OS X 10.4 (darwin 8) or later, 11092f76b07dSmrg # -single_module is the default and -multi_module is unsupported. 11102f76b07dSmrg # The toolchain on macOS 10.14 (darwin 18) and later cannot 11112f76b07dSmrg # target any OS version that needs -single_module. 11122f76b07dSmrg case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 11132f76b07dSmrg 10.0,*-darwin[[567]].*|10.[[0-3]],*-darwin[[5-9]].*|10.[[0-3]],*-darwin1[[0-7]].*) 11142f76b07dSmrg _lt_dar_needs_single_mod=yes ;; 11152f76b07dSmrg esac 11162f76b07dSmrg ;; 11172f76b07dSmrg esac 11182d19872aSmrg if test yes = "$lt_cv_ld_exported_symbols_list"; then 11192d19872aSmrg _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' 11202d19872aSmrg else 11212d19872aSmrg _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' 11222d19872aSmrg fi 11232d19872aSmrg if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then 11242d19872aSmrg _lt_dsymutil='~$DSYMUTIL $lib || :' 11252d19872aSmrg else 11262d19872aSmrg _lt_dsymutil= 11272d19872aSmrg fi 11282d19872aSmrg ;; 11292d19872aSmrg esac 11302d19872aSmrg]) 11312d19872aSmrg 11322d19872aSmrg 11332d19872aSmrg# _LT_DARWIN_LINKER_FEATURES([TAG]) 11342d19872aSmrg# --------------------------------- 11352d19872aSmrg# Checks for linker and compiler features on darwin 11362d19872aSmrgm4_defun([_LT_DARWIN_LINKER_FEATURES], 11372d19872aSmrg[ 11382d19872aSmrg m4_require([_LT_REQUIRED_DARWIN_CHECKS]) 11392d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 11402d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 11412d19872aSmrg _LT_TAGVAR(hardcode_automatic, $1)=yes 11422d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 11432d19872aSmrg if test yes = "$lt_cv_ld_force_load"; then 11442d19872aSmrg _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\"`' 11452d19872aSmrg m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], 11462d19872aSmrg [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) 11472d19872aSmrg else 11482d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='' 11492d19872aSmrg fi 11502d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 11512d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined 11522d19872aSmrg case $cc_basename in 11532d19872aSmrg ifort*|nagfor*) _lt_dar_can_shared=yes ;; 11542d19872aSmrg *) _lt_dar_can_shared=$GCC ;; 11552d19872aSmrg esac 11562d19872aSmrg if test yes = "$_lt_dar_can_shared"; then 11572d19872aSmrg output_verbose_link_cmd=func_echo_all 11582d19872aSmrg _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" 11592d19872aSmrg _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" 11602d19872aSmrg _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" 11612d19872aSmrg _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" 11622d19872aSmrg m4_if([$1], [CXX], 11632f76b07dSmrg[ if test yes = "$_lt_dar_needs_single_mod" -a yes != "$lt_cv_apple_cc_single_mod"; then 11642d19872aSmrg _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" 11652d19872aSmrg _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" 11662d19872aSmrg fi 11672d19872aSmrg],[]) 11682d19872aSmrg else 11692d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 11702d19872aSmrg fi 11712d19872aSmrg]) 11722d19872aSmrg 11732d19872aSmrg# _LT_SYS_MODULE_PATH_AIX([TAGNAME]) 11742d19872aSmrg# ---------------------------------- 11752d19872aSmrg# Links a minimal program and checks the executable 11762d19872aSmrg# for the system default hardcoded library path. In most cases, 11772d19872aSmrg# this is /usr/lib:/lib, but when the MPI compilers are used 11782d19872aSmrg# the location of the communication and MPI libs are included too. 11792d19872aSmrg# If we don't find anything, use the default library path according 11802d19872aSmrg# to the aix ld manual. 11812d19872aSmrg# Store the results from the different compilers for each TAGNAME. 11822d19872aSmrg# Allow to override them for all tags through lt_cv_aix_libpath. 11832d19872aSmrgm4_defun([_LT_SYS_MODULE_PATH_AIX], 11842d19872aSmrg[m4_require([_LT_DECL_SED])dnl 11852d19872aSmrgif test set = "${lt_cv_aix_libpath+set}"; then 11862d19872aSmrg aix_libpath=$lt_cv_aix_libpath 11872d19872aSmrgelse 11882d19872aSmrg AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], 11892d19872aSmrg [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ 11902d19872aSmrg lt_aix_libpath_sed='[ 11912d19872aSmrg /Import File Strings/,/^$/ { 11922d19872aSmrg /^0/ { 11932d19872aSmrg s/^0 *\([^ ]*\) *$/\1/ 11942d19872aSmrg p 11952d19872aSmrg } 11962d19872aSmrg }]' 11972d19872aSmrg _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` 11982d19872aSmrg # Check for a 64-bit object if we didn't find anything. 11992d19872aSmrg if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then 12002d19872aSmrg _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` 12012d19872aSmrg fi],[]) 12022d19872aSmrg if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then 12032d19872aSmrg _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib 12042d19872aSmrg fi 12052d19872aSmrg ]) 12062d19872aSmrg aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) 12072d19872aSmrgfi 12082d19872aSmrg])# _LT_SYS_MODULE_PATH_AIX 12092d19872aSmrg 12102d19872aSmrg 12112d19872aSmrg# _LT_SHELL_INIT(ARG) 12122d19872aSmrg# ------------------- 12132d19872aSmrgm4_define([_LT_SHELL_INIT], 12142d19872aSmrg[m4_divert_text([M4SH-INIT], [$1 12152d19872aSmrg])])# _LT_SHELL_INIT 12162d19872aSmrg 12172d19872aSmrg 12182d19872aSmrg 12192d19872aSmrg# _LT_PROG_ECHO_BACKSLASH 12202d19872aSmrg# ----------------------- 12212d19872aSmrg# Find how we can fake an echo command that does not interpret backslash. 12222d19872aSmrg# In particular, with Autoconf 2.60 or later we add some code to the start 12232d19872aSmrg# of the generated configure script that will find a shell with a builtin 12242d19872aSmrg# printf (that we can use as an echo command). 12252d19872aSmrgm4_defun([_LT_PROG_ECHO_BACKSLASH], 12262d19872aSmrg[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 12272d19872aSmrgECHO=$ECHO$ECHO$ECHO$ECHO$ECHO 12282d19872aSmrgECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO 12292d19872aSmrg 12302d19872aSmrgAC_MSG_CHECKING([how to print strings]) 12312d19872aSmrg# Test print first, because it will be a builtin if present. 12322d19872aSmrgif test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ 12332d19872aSmrg test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then 12342d19872aSmrg ECHO='print -r --' 12352d19872aSmrgelif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then 12362d19872aSmrg ECHO='printf %s\n' 12372d19872aSmrgelse 12382d19872aSmrg # Use this function as a fallback that always works. 12392d19872aSmrg func_fallback_echo () 12402d19872aSmrg { 12412d19872aSmrg eval 'cat <<_LTECHO_EOF 12422d19872aSmrg$[]1 12432d19872aSmrg_LTECHO_EOF' 12442d19872aSmrg } 12452d19872aSmrg ECHO='func_fallback_echo' 12462d19872aSmrgfi 12472d19872aSmrg 12482d19872aSmrg# func_echo_all arg... 12492d19872aSmrg# Invoke $ECHO with all args, space-separated. 12502d19872aSmrgfunc_echo_all () 12512d19872aSmrg{ 12522d19872aSmrg $ECHO "$*" 12532d19872aSmrg} 12542d19872aSmrg 12552d19872aSmrgcase $ECHO in 12562d19872aSmrg printf*) AC_MSG_RESULT([printf]) ;; 12572d19872aSmrg print*) AC_MSG_RESULT([print -r]) ;; 12582d19872aSmrg *) AC_MSG_RESULT([cat]) ;; 12592d19872aSmrgesac 12602d19872aSmrg 12612d19872aSmrgm4_ifdef([_AS_DETECT_SUGGESTED], 12622d19872aSmrg[_AS_DETECT_SUGGESTED([ 12632d19872aSmrg test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( 12642d19872aSmrg ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 12652d19872aSmrg ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO 12662d19872aSmrg ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO 12672d19872aSmrg PATH=/empty FPATH=/empty; export PATH FPATH 12682d19872aSmrg test "X`printf %s $ECHO`" = "X$ECHO" \ 12692d19872aSmrg || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) 12702d19872aSmrg 12712d19872aSmrg_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) 12722d19872aSmrg_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) 12732d19872aSmrg])# _LT_PROG_ECHO_BACKSLASH 12742d19872aSmrg 12752d19872aSmrg 12762d19872aSmrg# _LT_WITH_SYSROOT 12772d19872aSmrg# ---------------- 12782d19872aSmrgAC_DEFUN([_LT_WITH_SYSROOT], 12792d19872aSmrg[m4_require([_LT_DECL_SED])dnl 12802d19872aSmrgAC_MSG_CHECKING([for sysroot]) 12812d19872aSmrgAC_ARG_WITH([sysroot], 12822d19872aSmrg[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], 12832d19872aSmrg [Search for dependent libraries within DIR (or the compiler's sysroot 12842d19872aSmrg if not specified).])], 12852d19872aSmrg[], [with_sysroot=no]) 12862d19872aSmrg 12872d19872aSmrgdnl lt_sysroot will always be passed unquoted. We quote it here 12882d19872aSmrgdnl in case the user passed a directory name. 12892d19872aSmrglt_sysroot= 12902d19872aSmrgcase $with_sysroot in #( 12912d19872aSmrg yes) 12922d19872aSmrg if test yes = "$GCC"; then 12932f76b07dSmrg # Trim trailing / since we'll always append absolute paths and we want 12942f76b07dSmrg # to avoid //, if only for less confusing output for the user. 12952f76b07dSmrg lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'` 12962d19872aSmrg fi 12972d19872aSmrg ;; #( 12982d19872aSmrg /*) 12992d19872aSmrg lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` 13002d19872aSmrg ;; #( 13012d19872aSmrg no|'') 13022d19872aSmrg ;; #( 13032d19872aSmrg *) 13042d19872aSmrg AC_MSG_RESULT([$with_sysroot]) 13052d19872aSmrg AC_MSG_ERROR([The sysroot must be an absolute path.]) 13062d19872aSmrg ;; 13072d19872aSmrgesac 13082d19872aSmrg 13092d19872aSmrg AC_MSG_RESULT([${lt_sysroot:-no}]) 13102d19872aSmrg_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl 13112d19872aSmrg[dependent libraries, and where our libraries should be installed.])]) 13122d19872aSmrg 13132d19872aSmrg# _LT_ENABLE_LOCK 13142d19872aSmrg# --------------- 13152d19872aSmrgm4_defun([_LT_ENABLE_LOCK], 13162d19872aSmrg[AC_ARG_ENABLE([libtool-lock], 13172d19872aSmrg [AS_HELP_STRING([--disable-libtool-lock], 13182d19872aSmrg [avoid locking (might break parallel builds)])]) 13192d19872aSmrgtest no = "$enable_libtool_lock" || enable_libtool_lock=yes 13202d19872aSmrg 13212d19872aSmrg# Some flags need to be propagated to the compiler or linker for good 13222d19872aSmrg# libtool support. 13232d19872aSmrgcase $host in 13242d19872aSmrgia64-*-hpux*) 13252d19872aSmrg # Find out what ABI is being produced by ac_compile, and set mode 13262d19872aSmrg # options accordingly. 13272d19872aSmrg echo 'int i;' > conftest.$ac_ext 13282d19872aSmrg if AC_TRY_EVAL(ac_compile); then 13292d19872aSmrg case `$FILECMD conftest.$ac_objext` in 13302d19872aSmrg *ELF-32*) 13312d19872aSmrg HPUX_IA64_MODE=32 13322d19872aSmrg ;; 13332d19872aSmrg *ELF-64*) 13342d19872aSmrg HPUX_IA64_MODE=64 13352d19872aSmrg ;; 13362d19872aSmrg esac 13372d19872aSmrg fi 13382d19872aSmrg rm -rf conftest* 13392d19872aSmrg ;; 13402d19872aSmrg*-*-irix6*) 13412d19872aSmrg # Find out what ABI is being produced by ac_compile, and set linker 13422d19872aSmrg # options accordingly. 13432d19872aSmrg echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext 13442d19872aSmrg if AC_TRY_EVAL(ac_compile); then 13452d19872aSmrg if test yes = "$lt_cv_prog_gnu_ld"; then 13462d19872aSmrg case `$FILECMD conftest.$ac_objext` in 13472d19872aSmrg *32-bit*) 13482d19872aSmrg LD="${LD-ld} -melf32bsmip" 13492d19872aSmrg ;; 13502d19872aSmrg *N32*) 13512d19872aSmrg LD="${LD-ld} -melf32bmipn32" 13522d19872aSmrg ;; 13532d19872aSmrg *64-bit*) 13542d19872aSmrg LD="${LD-ld} -melf64bmip" 13552d19872aSmrg ;; 13562d19872aSmrg esac 13572d19872aSmrg else 13582d19872aSmrg case `$FILECMD conftest.$ac_objext` in 13592d19872aSmrg *32-bit*) 13602d19872aSmrg LD="${LD-ld} -32" 13612d19872aSmrg ;; 13622d19872aSmrg *N32*) 13632d19872aSmrg LD="${LD-ld} -n32" 13642d19872aSmrg ;; 13652d19872aSmrg *64-bit*) 13662d19872aSmrg LD="${LD-ld} -64" 13672d19872aSmrg ;; 13682d19872aSmrg esac 13692d19872aSmrg fi 13702d19872aSmrg fi 13712d19872aSmrg rm -rf conftest* 13722d19872aSmrg ;; 13732d19872aSmrg 13742d19872aSmrgmips64*-*linux*) 13752d19872aSmrg # Find out what ABI is being produced by ac_compile, and set linker 13762d19872aSmrg # options accordingly. 13772d19872aSmrg echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext 13782d19872aSmrg if AC_TRY_EVAL(ac_compile); then 13792d19872aSmrg emul=elf 13802d19872aSmrg case `$FILECMD conftest.$ac_objext` in 13812d19872aSmrg *32-bit*) 13822d19872aSmrg emul="${emul}32" 13832d19872aSmrg ;; 13842d19872aSmrg *64-bit*) 13852d19872aSmrg emul="${emul}64" 13862d19872aSmrg ;; 13872d19872aSmrg esac 13882d19872aSmrg case `$FILECMD conftest.$ac_objext` in 13892d19872aSmrg *MSB*) 13902d19872aSmrg emul="${emul}btsmip" 13912d19872aSmrg ;; 13922d19872aSmrg *LSB*) 13932d19872aSmrg emul="${emul}ltsmip" 13942d19872aSmrg ;; 13952d19872aSmrg esac 13962d19872aSmrg case `$FILECMD conftest.$ac_objext` in 13972d19872aSmrg *N32*) 13982d19872aSmrg emul="${emul}n32" 13992d19872aSmrg ;; 14002d19872aSmrg esac 14012d19872aSmrg LD="${LD-ld} -m $emul" 14022d19872aSmrg fi 14032d19872aSmrg rm -rf conftest* 14042d19872aSmrg ;; 14052d19872aSmrg 14062d19872aSmrgx86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ 14072f76b07dSmrgs390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-gnu*) 14082d19872aSmrg # Find out what ABI is being produced by ac_compile, and set linker 14092d19872aSmrg # options accordingly. Note that the listed cases only cover the 14102d19872aSmrg # situations where additional linker options are needed (such as when 14112d19872aSmrg # doing 32-bit compilation for a host where ld defaults to 64-bit, or 14122d19872aSmrg # vice versa); the common cases where no linker options are needed do 14132d19872aSmrg # not appear in the list. 14142d19872aSmrg echo 'int i;' > conftest.$ac_ext 14152d19872aSmrg if AC_TRY_EVAL(ac_compile); then 14162d19872aSmrg case `$FILECMD conftest.o` in 14172d19872aSmrg *32-bit*) 14182d19872aSmrg case $host in 14192d19872aSmrg x86_64-*kfreebsd*-gnu) 14202d19872aSmrg LD="${LD-ld} -m elf_i386_fbsd" 14212d19872aSmrg ;; 14222f76b07dSmrg x86_64-*linux*|x86_64-gnu*) 14232d19872aSmrg case `$FILECMD conftest.o` in 14242d19872aSmrg *x86-64*) 14252d19872aSmrg LD="${LD-ld} -m elf32_x86_64" 14262d19872aSmrg ;; 14272d19872aSmrg *) 14282d19872aSmrg LD="${LD-ld} -m elf_i386" 14292d19872aSmrg ;; 14302d19872aSmrg esac 14312d19872aSmrg ;; 14322d19872aSmrg powerpc64le-*linux*) 14332d19872aSmrg LD="${LD-ld} -m elf32lppclinux" 14342d19872aSmrg ;; 14352d19872aSmrg powerpc64-*linux*) 14362d19872aSmrg LD="${LD-ld} -m elf32ppclinux" 14372d19872aSmrg ;; 14382d19872aSmrg s390x-*linux*) 14392d19872aSmrg LD="${LD-ld} -m elf_s390" 14402d19872aSmrg ;; 14412d19872aSmrg sparc64-*linux*) 14422d19872aSmrg LD="${LD-ld} -m elf32_sparc" 14432d19872aSmrg ;; 14442d19872aSmrg esac 14452d19872aSmrg ;; 14462d19872aSmrg *64-bit*) 14472d19872aSmrg case $host in 14482d19872aSmrg x86_64-*kfreebsd*-gnu) 14492d19872aSmrg LD="${LD-ld} -m elf_x86_64_fbsd" 14502d19872aSmrg ;; 14512f76b07dSmrg x86_64-*linux*|x86_64-gnu*) 14522d19872aSmrg LD="${LD-ld} -m elf_x86_64" 14532d19872aSmrg ;; 145459ca590cSmrg powerpcle-*linux*) 14552d19872aSmrg LD="${LD-ld} -m elf64lppc" 14562d19872aSmrg ;; 145759ca590cSmrg powerpc-*linux*) 14582d19872aSmrg LD="${LD-ld} -m elf64ppc" 14592d19872aSmrg ;; 14602d19872aSmrg s390*-*linux*|s390*-*tpf*) 14612d19872aSmrg LD="${LD-ld} -m elf64_s390" 14622d19872aSmrg ;; 14632d19872aSmrg sparc*-*linux*) 14642d19872aSmrg LD="${LD-ld} -m elf64_sparc" 14652d19872aSmrg ;; 14662d19872aSmrg esac 14672d19872aSmrg ;; 14682d19872aSmrg esac 14692d19872aSmrg fi 14702d19872aSmrg rm -rf conftest* 14712d19872aSmrg ;; 14722d19872aSmrg 14732d19872aSmrg*-*-sco3.2v5*) 14742d19872aSmrg # On SCO OpenServer 5, we need -belf to get full-featured binaries. 14752d19872aSmrg SAVE_CFLAGS=$CFLAGS 14762d19872aSmrg CFLAGS="$CFLAGS -belf" 14772d19872aSmrg AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, 14782d19872aSmrg [AC_LANG_PUSH(C) 14792d19872aSmrg AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) 14802d19872aSmrg AC_LANG_POP]) 14812d19872aSmrg if test yes != "$lt_cv_cc_needs_belf"; then 14822d19872aSmrg # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf 14832d19872aSmrg CFLAGS=$SAVE_CFLAGS 14842d19872aSmrg fi 14852d19872aSmrg ;; 14862d19872aSmrg*-*solaris*) 14872d19872aSmrg # Find out what ABI is being produced by ac_compile, and set linker 14882d19872aSmrg # options accordingly. 14892d19872aSmrg echo 'int i;' > conftest.$ac_ext 14902d19872aSmrg if AC_TRY_EVAL(ac_compile); then 14912d19872aSmrg case `$FILECMD conftest.o` in 14922d19872aSmrg *64-bit*) 14932d19872aSmrg case $lt_cv_prog_gnu_ld in 14942d19872aSmrg yes*) 14952d19872aSmrg case $host in 14962d19872aSmrg i?86-*-solaris*|x86_64-*-solaris*) 14972d19872aSmrg LD="${LD-ld} -m elf_x86_64" 14982d19872aSmrg ;; 14992d19872aSmrg sparc*-*-solaris*) 15002d19872aSmrg LD="${LD-ld} -m elf64_sparc" 15012d19872aSmrg ;; 15022d19872aSmrg esac 15032d19872aSmrg # GNU ld 2.21 introduced _sol2 emulations. Use them if available. 15042d19872aSmrg if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then 15052d19872aSmrg LD=${LD-ld}_sol2 15062d19872aSmrg fi 15072d19872aSmrg ;; 15082d19872aSmrg *) 15092d19872aSmrg if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then 15102d19872aSmrg LD="${LD-ld} -64" 15112d19872aSmrg fi 15122d19872aSmrg ;; 15132d19872aSmrg esac 15142d19872aSmrg ;; 15152d19872aSmrg esac 15162d19872aSmrg fi 15172d19872aSmrg rm -rf conftest* 15182d19872aSmrg ;; 15192d19872aSmrgesac 15202d19872aSmrg 15212d19872aSmrgneed_locks=$enable_libtool_lock 15222d19872aSmrg])# _LT_ENABLE_LOCK 15232d19872aSmrg 15242d19872aSmrg 15252d19872aSmrg# _LT_PROG_AR 15262d19872aSmrg# ----------- 15272d19872aSmrgm4_defun([_LT_PROG_AR], 15282d19872aSmrg[AC_CHECK_TOOLS(AR, [ar], false) 15292d19872aSmrg: ${AR=ar} 15302d19872aSmrg_LT_DECL([], [AR], [1], [The archiver]) 15312d19872aSmrg 15322d19872aSmrg# Use ARFLAGS variable as AR's operation code to sync the variable naming with 15332d19872aSmrg# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have 15342f76b07dSmrg# higher priority because that's what people were doing historically (setting 15352d19872aSmrg# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS 15362d19872aSmrg# variable obsoleted/removed. 15372d19872aSmrg 15382d19872aSmrgtest ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} 15392d19872aSmrglt_ar_flags=$AR_FLAGS 15402d19872aSmrg_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)]) 15412d19872aSmrg 15422d19872aSmrg# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override 15432d19872aSmrg# by AR_FLAGS because that was never working and AR_FLAGS is about to die. 15442d19872aSmrg_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}], 15452d19872aSmrg [Flags to create an archive]) 15462d19872aSmrg 15472d19872aSmrgAC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], 15482d19872aSmrg [lt_cv_ar_at_file=no 15492d19872aSmrg AC_COMPILE_IFELSE([AC_LANG_PROGRAM], 15502d19872aSmrg [echo conftest.$ac_objext > conftest.lst 15512d19872aSmrg lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' 15522d19872aSmrg AC_TRY_EVAL([lt_ar_try]) 15532d19872aSmrg if test 0 -eq "$ac_status"; then 15542d19872aSmrg # Ensure the archiver fails upon bogus file names. 15552d19872aSmrg rm -f conftest.$ac_objext libconftest.a 15562d19872aSmrg AC_TRY_EVAL([lt_ar_try]) 15572d19872aSmrg if test 0 -ne "$ac_status"; then 15582d19872aSmrg lt_cv_ar_at_file=@ 15592d19872aSmrg fi 15602d19872aSmrg fi 15612d19872aSmrg rm -f conftest.* libconftest.a 15622d19872aSmrg ]) 15632d19872aSmrg ]) 15642d19872aSmrg 15652d19872aSmrgif test no = "$lt_cv_ar_at_file"; then 15662d19872aSmrg archiver_list_spec= 15672d19872aSmrgelse 15682d19872aSmrg archiver_list_spec=$lt_cv_ar_at_file 15692d19872aSmrgfi 15702d19872aSmrg_LT_DECL([], [archiver_list_spec], [1], 15712d19872aSmrg [How to feed a file listing to the archiver]) 15722d19872aSmrg])# _LT_PROG_AR 15732d19872aSmrg 15742d19872aSmrg 15752d19872aSmrg# _LT_CMD_OLD_ARCHIVE 15762d19872aSmrg# ------------------- 15772d19872aSmrgm4_defun([_LT_CMD_OLD_ARCHIVE], 15782d19872aSmrg[_LT_PROG_AR 15792d19872aSmrg 15802d19872aSmrgAC_CHECK_TOOL(STRIP, strip, :) 15812d19872aSmrgtest -z "$STRIP" && STRIP=: 15822d19872aSmrg_LT_DECL([], [STRIP], [1], [A symbol stripping program]) 15832d19872aSmrg 15842f76b07dSmrgAC_REQUIRE([AC_PROG_RANLIB]) 15852d19872aSmrgtest -z "$RANLIB" && RANLIB=: 15862d19872aSmrg_LT_DECL([], [RANLIB], [1], 15872d19872aSmrg [Commands used to install an old-style archive]) 15882d19872aSmrg 15892d19872aSmrg# Determine commands to create old-style static archives. 15902d19872aSmrgold_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' 15912d19872aSmrgold_postinstall_cmds='chmod 644 $oldlib' 15922d19872aSmrgold_postuninstall_cmds= 15932d19872aSmrg 15942d19872aSmrgif test -n "$RANLIB"; then 15952d19872aSmrg old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" 15962f76b07dSmrg old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" 15972d19872aSmrgfi 15982d19872aSmrg 15992d19872aSmrgcase $host_os in 16002d19872aSmrg darwin*) 16012d19872aSmrg lock_old_archive_extraction=yes ;; 16022d19872aSmrg *) 16032d19872aSmrg lock_old_archive_extraction=no ;; 16042d19872aSmrgesac 16052d19872aSmrg_LT_DECL([], [old_postinstall_cmds], [2]) 16062d19872aSmrg_LT_DECL([], [old_postuninstall_cmds], [2]) 16072d19872aSmrg_LT_TAGDECL([], [old_archive_cmds], [2], 16082d19872aSmrg [Commands used to build an old-style archive]) 16092d19872aSmrg_LT_DECL([], [lock_old_archive_extraction], [0], 16102d19872aSmrg [Whether to use a lock for old archive extraction]) 16112d19872aSmrg])# _LT_CMD_OLD_ARCHIVE 16122d19872aSmrg 16132d19872aSmrg 16142d19872aSmrg# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, 16152d19872aSmrg# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) 16162d19872aSmrg# ---------------------------------------------------------------- 16172d19872aSmrg# Check whether the given compiler option works 16182d19872aSmrgAC_DEFUN([_LT_COMPILER_OPTION], 16192d19872aSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 16202d19872aSmrgm4_require([_LT_DECL_SED])dnl 16212d19872aSmrgAC_CACHE_CHECK([$1], [$2], 16222d19872aSmrg [$2=no 16232d19872aSmrg m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) 16242d19872aSmrg echo "$lt_simple_compile_test_code" > conftest.$ac_ext 16252d19872aSmrg lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment 16262d19872aSmrg # Insert the option either (1) after the last *FLAGS variable, or 16272d19872aSmrg # (2) before a word containing "conftest.", or (3) at the end. 16282d19872aSmrg # Note that $ac_compile itself does not contain backslashes and begins 16292d19872aSmrg # with a dollar sign (not a hyphen), so the echo should work correctly. 16302d19872aSmrg # The option is referenced via a variable to avoid confusing sed. 16312d19872aSmrg lt_compile=`echo "$ac_compile" | $SED \ 16322d19872aSmrg -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ 16332d19872aSmrg -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ 16342d19872aSmrg -e 's:$: $lt_compiler_flag:'` 16352d19872aSmrg (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) 16362d19872aSmrg (eval "$lt_compile" 2>conftest.err) 16372d19872aSmrg ac_status=$? 16382d19872aSmrg cat conftest.err >&AS_MESSAGE_LOG_FD 16392d19872aSmrg echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD 16402d19872aSmrg if (exit $ac_status) && test -s "$ac_outfile"; then 16412d19872aSmrg # The compiler can only warn and ignore the option if not recognized 16422d19872aSmrg # So say no if there are warnings other than the usual output. 16432d19872aSmrg $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp 16442d19872aSmrg $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 16452d19872aSmrg if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then 16462d19872aSmrg $2=yes 16472d19872aSmrg fi 16482d19872aSmrg fi 16492d19872aSmrg $RM conftest* 16502d19872aSmrg]) 16512d19872aSmrg 16522d19872aSmrgif test yes = "[$]$2"; then 16532d19872aSmrg m4_if([$5], , :, [$5]) 16542d19872aSmrgelse 16552d19872aSmrg m4_if([$6], , :, [$6]) 16562d19872aSmrgfi 16572d19872aSmrg])# _LT_COMPILER_OPTION 16582d19872aSmrg 16592d19872aSmrg# Old name: 16602d19872aSmrgAU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) 16612d19872aSmrgdnl aclocal-1.4 backwards compatibility: 16622d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) 16632d19872aSmrg 16642d19872aSmrg 16652d19872aSmrg# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, 16662d19872aSmrg# [ACTION-SUCCESS], [ACTION-FAILURE]) 16672d19872aSmrg# ---------------------------------------------------- 16682d19872aSmrg# Check whether the given linker option works 16692d19872aSmrgAC_DEFUN([_LT_LINKER_OPTION], 16702d19872aSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 16712d19872aSmrgm4_require([_LT_DECL_SED])dnl 16722d19872aSmrgAC_CACHE_CHECK([$1], [$2], 16732d19872aSmrg [$2=no 16742d19872aSmrg save_LDFLAGS=$LDFLAGS 16752d19872aSmrg LDFLAGS="$LDFLAGS $3" 16762d19872aSmrg echo "$lt_simple_link_test_code" > conftest.$ac_ext 16772d19872aSmrg if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then 16782d19872aSmrg # The linker can only warn and ignore the option if not recognized 16792d19872aSmrg # So say no if there are warnings 16802d19872aSmrg if test -s conftest.err; then 16812d19872aSmrg # Append any errors to the config.log. 16822d19872aSmrg cat conftest.err 1>&AS_MESSAGE_LOG_FD 16832d19872aSmrg $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp 16842d19872aSmrg $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 16852d19872aSmrg if diff conftest.exp conftest.er2 >/dev/null; then 16862d19872aSmrg $2=yes 16872d19872aSmrg fi 16882d19872aSmrg else 16892d19872aSmrg $2=yes 16902d19872aSmrg fi 16912d19872aSmrg fi 16922d19872aSmrg $RM -r conftest* 16932d19872aSmrg LDFLAGS=$save_LDFLAGS 16942d19872aSmrg]) 16952d19872aSmrg 16962d19872aSmrgif test yes = "[$]$2"; then 16972d19872aSmrg m4_if([$4], , :, [$4]) 16982d19872aSmrgelse 16992d19872aSmrg m4_if([$5], , :, [$5]) 17002d19872aSmrgfi 17012d19872aSmrg])# _LT_LINKER_OPTION 17022d19872aSmrg 17032d19872aSmrg# Old name: 17042d19872aSmrgAU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) 17052d19872aSmrgdnl aclocal-1.4 backwards compatibility: 17062d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) 17072d19872aSmrg 17082d19872aSmrg 17092d19872aSmrg# LT_CMD_MAX_LEN 17102d19872aSmrg#--------------- 17112d19872aSmrgAC_DEFUN([LT_CMD_MAX_LEN], 17122d19872aSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl 17132d19872aSmrg# find the maximum length of command line arguments 17142d19872aSmrgAC_MSG_CHECKING([the maximum length of command line arguments]) 17152d19872aSmrgAC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl 17162d19872aSmrg i=0 17172d19872aSmrg teststring=ABCD 17182d19872aSmrg 17192d19872aSmrg case $build_os in 17202d19872aSmrg msdosdjgpp*) 17212d19872aSmrg # On DJGPP, this test can blow up pretty badly due to problems in libc 17222d19872aSmrg # (any single argument exceeding 2000 bytes causes a buffer overrun 17232d19872aSmrg # during glob expansion). Even if it were fixed, the result of this 17242d19872aSmrg # check would be larger than it should be. 17252d19872aSmrg lt_cv_sys_max_cmd_len=12288; # 12K is about right 17262d19872aSmrg ;; 17272d19872aSmrg 17282f76b07dSmrg gnu* | ironclad*) 17292f76b07dSmrg # Under GNU Hurd and Ironclad, this test is not required because there 17302f76b07dSmrg # is no limit to the length of command line arguments. 17312d19872aSmrg # Libtool will interpret -1 as no limit whatsoever 17322d19872aSmrg lt_cv_sys_max_cmd_len=-1; 17332d19872aSmrg ;; 17342d19872aSmrg 17352f76b07dSmrg cygwin* | mingw* | windows* | cegcc*) 17362d19872aSmrg # On Win9x/ME, this test blows up -- it succeeds, but takes 17372d19872aSmrg # about 5 minutes as the teststring grows exponentially. 17382d19872aSmrg # Worse, since 9x/ME are not pre-emptively multitasking, 17392d19872aSmrg # you end up with a "frozen" computer, even though with patience 17402d19872aSmrg # the test eventually succeeds (with a max line length of 256k). 17412d19872aSmrg # Instead, let's just punt: use the minimum linelength reported by 17422d19872aSmrg # all of the supported platforms: 8192 (on NT/2K/XP). 17432d19872aSmrg lt_cv_sys_max_cmd_len=8192; 17442d19872aSmrg ;; 17452d19872aSmrg 17462d19872aSmrg mint*) 17472d19872aSmrg # On MiNT this can take a long time and run out of memory. 17482d19872aSmrg lt_cv_sys_max_cmd_len=8192; 17492d19872aSmrg ;; 17502d19872aSmrg 17512d19872aSmrg amigaos*) 17522d19872aSmrg # On AmigaOS with pdksh, this test takes hours, literally. 17532d19872aSmrg # So we just punt and use a minimum line length of 8192. 17542d19872aSmrg lt_cv_sys_max_cmd_len=8192; 17552d19872aSmrg ;; 17562d19872aSmrg 17572f76b07dSmrg darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) 17582d19872aSmrg # This has been around since 386BSD, at least. Likely further. 17592d19872aSmrg if test -x /sbin/sysctl; then 17602d19872aSmrg lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` 17612d19872aSmrg elif test -x /usr/sbin/sysctl; then 17622d19872aSmrg lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` 17632d19872aSmrg else 17642d19872aSmrg lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs 17652d19872aSmrg fi 17662d19872aSmrg # And add a safety zone 17672d19872aSmrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` 17682d19872aSmrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` 17692d19872aSmrg ;; 17702d19872aSmrg 17712d19872aSmrg interix*) 17722d19872aSmrg # We know the value 262144 and hardcode it with a safety zone (like BSD) 17732d19872aSmrg lt_cv_sys_max_cmd_len=196608 17742d19872aSmrg ;; 17752d19872aSmrg 17762d19872aSmrg os2*) 17772d19872aSmrg # The test takes a long time on OS/2. 17782d19872aSmrg lt_cv_sys_max_cmd_len=8192 17792d19872aSmrg ;; 17802d19872aSmrg 17812d19872aSmrg osf*) 17822d19872aSmrg # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure 17832d19872aSmrg # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not 17842d19872aSmrg # nice to cause kernel panics so lets avoid the loop below. 17852d19872aSmrg # First set a reasonable default. 17862d19872aSmrg lt_cv_sys_max_cmd_len=16384 17872d19872aSmrg # 17882d19872aSmrg if test -x /sbin/sysconfig; then 17892d19872aSmrg case `/sbin/sysconfig -q proc exec_disable_arg_limit` in 17902d19872aSmrg *1*) lt_cv_sys_max_cmd_len=-1 ;; 17912d19872aSmrg esac 17922d19872aSmrg fi 17932d19872aSmrg ;; 17942d19872aSmrg sco3.2v5*) 17952d19872aSmrg lt_cv_sys_max_cmd_len=102400 17962d19872aSmrg ;; 17972d19872aSmrg sysv5* | sco5v6* | sysv4.2uw2*) 17982d19872aSmrg kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` 17992d19872aSmrg if test -n "$kargmax"; then 18002d19872aSmrg lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'` 18012d19872aSmrg else 18022d19872aSmrg lt_cv_sys_max_cmd_len=32768 18032d19872aSmrg fi 18042d19872aSmrg ;; 18052d19872aSmrg *) 18062d19872aSmrg lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` 18072d19872aSmrg if test -n "$lt_cv_sys_max_cmd_len" && \ 18082d19872aSmrg test undefined != "$lt_cv_sys_max_cmd_len"; then 18092d19872aSmrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` 18102d19872aSmrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` 18112d19872aSmrg else 18122d19872aSmrg # Make teststring a little bigger before we do anything with it. 18132d19872aSmrg # a 1K string should be a reasonable start. 18142d19872aSmrg for i in 1 2 3 4 5 6 7 8; do 18152d19872aSmrg teststring=$teststring$teststring 18162d19872aSmrg done 18172d19872aSmrg SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} 18182d19872aSmrg # If test is not a shell built-in, we'll probably end up computing a 18192d19872aSmrg # maximum length that is only half of the actual maximum length, but 18202d19872aSmrg # we can't tell. 18212d19872aSmrg while { test X`env echo "$teststring$teststring" 2>/dev/null` \ 18222d19872aSmrg = "X$teststring$teststring"; } >/dev/null 2>&1 && 18232d19872aSmrg test 17 != "$i" # 1/2 MB should be enough 18242d19872aSmrg do 18252d19872aSmrg i=`expr $i + 1` 18262d19872aSmrg teststring=$teststring$teststring 18272d19872aSmrg done 18282d19872aSmrg # Only check the string length outside the loop. 18292d19872aSmrg lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` 18302d19872aSmrg teststring= 18312d19872aSmrg # Add a significant safety factor because C++ compilers can tack on 18322d19872aSmrg # massive amounts of additional arguments before passing them to the 18332d19872aSmrg # linker. It appears as though 1/2 is a usable value. 18342d19872aSmrg lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` 18352d19872aSmrg fi 18362d19872aSmrg ;; 18372d19872aSmrg esac 18382d19872aSmrg]) 18392d19872aSmrgif test -n "$lt_cv_sys_max_cmd_len"; then 18402d19872aSmrg AC_MSG_RESULT($lt_cv_sys_max_cmd_len) 18412d19872aSmrgelse 18422d19872aSmrg AC_MSG_RESULT(none) 18432d19872aSmrgfi 18442d19872aSmrgmax_cmd_len=$lt_cv_sys_max_cmd_len 18452d19872aSmrg_LT_DECL([], [max_cmd_len], [0], 18462d19872aSmrg [What is the maximum length of a command?]) 18472d19872aSmrg])# LT_CMD_MAX_LEN 18482d19872aSmrg 18492d19872aSmrg# Old name: 18502d19872aSmrgAU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) 18512d19872aSmrgdnl aclocal-1.4 backwards compatibility: 18522d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) 18532d19872aSmrg 18542d19872aSmrg 18552d19872aSmrg# _LT_HEADER_DLFCN 18562d19872aSmrg# ---------------- 18572d19872aSmrgm4_defun([_LT_HEADER_DLFCN], 18582d19872aSmrg[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl 18592d19872aSmrg])# _LT_HEADER_DLFCN 18602d19872aSmrg 18612d19872aSmrg 18622d19872aSmrg# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, 18632d19872aSmrg# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) 18642d19872aSmrg# ---------------------------------------------------------------- 18652d19872aSmrgm4_defun([_LT_TRY_DLOPEN_SELF], 18662d19872aSmrg[m4_require([_LT_HEADER_DLFCN])dnl 18672d19872aSmrgif test yes = "$cross_compiling"; then : 18682d19872aSmrg [$4] 18692d19872aSmrgelse 18702d19872aSmrg lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 18712d19872aSmrg lt_status=$lt_dlunknown 18722d19872aSmrg cat > conftest.$ac_ext <<_LT_EOF 18732d19872aSmrg[#line $LINENO "configure" 18742d19872aSmrg#include "confdefs.h" 18752d19872aSmrg 18762d19872aSmrg#if HAVE_DLFCN_H 18772d19872aSmrg#include <dlfcn.h> 18782d19872aSmrg#endif 18792d19872aSmrg 18802d19872aSmrg#include <stdio.h> 18812d19872aSmrg 18822d19872aSmrg#ifdef RTLD_GLOBAL 18832d19872aSmrg# define LT_DLGLOBAL RTLD_GLOBAL 18842d19872aSmrg#else 18852d19872aSmrg# ifdef DL_GLOBAL 18862d19872aSmrg# define LT_DLGLOBAL DL_GLOBAL 18872d19872aSmrg# else 18882d19872aSmrg# define LT_DLGLOBAL 0 18892d19872aSmrg# endif 18902d19872aSmrg#endif 18912d19872aSmrg 18922d19872aSmrg/* We may have to define LT_DLLAZY_OR_NOW in the command line if we 18932d19872aSmrg find out it does not work in some platform. */ 18942d19872aSmrg#ifndef LT_DLLAZY_OR_NOW 18952d19872aSmrg# ifdef RTLD_LAZY 18962d19872aSmrg# define LT_DLLAZY_OR_NOW RTLD_LAZY 18972d19872aSmrg# else 18982d19872aSmrg# ifdef DL_LAZY 18992d19872aSmrg# define LT_DLLAZY_OR_NOW DL_LAZY 19002d19872aSmrg# else 19012d19872aSmrg# ifdef RTLD_NOW 19022d19872aSmrg# define LT_DLLAZY_OR_NOW RTLD_NOW 19032d19872aSmrg# else 19042d19872aSmrg# ifdef DL_NOW 19052d19872aSmrg# define LT_DLLAZY_OR_NOW DL_NOW 19062d19872aSmrg# else 19072d19872aSmrg# define LT_DLLAZY_OR_NOW 0 19082d19872aSmrg# endif 19092d19872aSmrg# endif 19102d19872aSmrg# endif 19112d19872aSmrg# endif 19122d19872aSmrg#endif 19132d19872aSmrg 19142d19872aSmrg/* When -fvisibility=hidden is used, assume the code has been annotated 19152d19872aSmrg correspondingly for the symbols needed. */ 19162d19872aSmrg#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) 19172f76b07dSmrgint fnord (void) __attribute__((visibility("default"))); 19182d19872aSmrg#endif 19192d19872aSmrg 19202f76b07dSmrgint fnord (void) { return 42; } 19212f76b07dSmrgint main (void) 19222d19872aSmrg{ 19232d19872aSmrg void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); 19242d19872aSmrg int status = $lt_dlunknown; 19252d19872aSmrg 19262d19872aSmrg if (self) 19272d19872aSmrg { 19282d19872aSmrg if (dlsym (self,"fnord")) status = $lt_dlno_uscore; 19292d19872aSmrg else 19302d19872aSmrg { 19312d19872aSmrg if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; 19322d19872aSmrg else puts (dlerror ()); 19332d19872aSmrg } 19342d19872aSmrg /* dlclose (self); */ 19352d19872aSmrg } 19362d19872aSmrg else 19372d19872aSmrg puts (dlerror ()); 19382d19872aSmrg 19392d19872aSmrg return status; 19402d19872aSmrg}] 19412d19872aSmrg_LT_EOF 19422d19872aSmrg if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then 19432d19872aSmrg (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null 19442d19872aSmrg lt_status=$? 19452d19872aSmrg case x$lt_status in 19462d19872aSmrg x$lt_dlno_uscore) $1 ;; 19472d19872aSmrg x$lt_dlneed_uscore) $2 ;; 19482d19872aSmrg x$lt_dlunknown|x*) $3 ;; 19492d19872aSmrg esac 19502d19872aSmrg else : 19512d19872aSmrg # compilation failed 19522d19872aSmrg $3 19532d19872aSmrg fi 19542d19872aSmrgfi 19552d19872aSmrgrm -fr conftest* 19562d19872aSmrg])# _LT_TRY_DLOPEN_SELF 19572d19872aSmrg 19582d19872aSmrg 19592d19872aSmrg# LT_SYS_DLOPEN_SELF 19602d19872aSmrg# ------------------ 19612d19872aSmrgAC_DEFUN([LT_SYS_DLOPEN_SELF], 19622d19872aSmrg[m4_require([_LT_HEADER_DLFCN])dnl 19632d19872aSmrgif test yes != "$enable_dlopen"; then 19642d19872aSmrg enable_dlopen=unknown 19652d19872aSmrg enable_dlopen_self=unknown 19662d19872aSmrg enable_dlopen_self_static=unknown 19672d19872aSmrgelse 19682d19872aSmrg lt_cv_dlopen=no 19692d19872aSmrg lt_cv_dlopen_libs= 19702d19872aSmrg 19712d19872aSmrg case $host_os in 19722d19872aSmrg beos*) 19732d19872aSmrg lt_cv_dlopen=load_add_on 19742d19872aSmrg lt_cv_dlopen_libs= 19752d19872aSmrg lt_cv_dlopen_self=yes 19762d19872aSmrg ;; 19772d19872aSmrg 19782f76b07dSmrg mingw* | windows* | pw32* | cegcc*) 19792d19872aSmrg lt_cv_dlopen=LoadLibrary 19802d19872aSmrg lt_cv_dlopen_libs= 19812d19872aSmrg ;; 19822d19872aSmrg 19832d19872aSmrg cygwin*) 19842d19872aSmrg lt_cv_dlopen=dlopen 19852d19872aSmrg lt_cv_dlopen_libs= 19862d19872aSmrg ;; 19872d19872aSmrg 19882d19872aSmrg darwin*) 19892d19872aSmrg # if libdl is installed we need to link against it 19902d19872aSmrg AC_CHECK_LIB([dl], [dlopen], 19912d19872aSmrg [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[ 19922d19872aSmrg lt_cv_dlopen=dyld 19932d19872aSmrg lt_cv_dlopen_libs= 19942d19872aSmrg lt_cv_dlopen_self=yes 19952d19872aSmrg ]) 19962d19872aSmrg ;; 19972d19872aSmrg 19982d19872aSmrg tpf*) 19992d19872aSmrg # Don't try to run any link tests for TPF. We know it's impossible 20002d19872aSmrg # because TPF is a cross-compiler, and we know how we open DSOs. 20012d19872aSmrg lt_cv_dlopen=dlopen 20022d19872aSmrg lt_cv_dlopen_libs= 20032d19872aSmrg lt_cv_dlopen_self=no 20042d19872aSmrg ;; 20052d19872aSmrg 20062d19872aSmrg *) 20072d19872aSmrg AC_CHECK_FUNC([shl_load], 20082d19872aSmrg [lt_cv_dlopen=shl_load], 20092d19872aSmrg [AC_CHECK_LIB([dld], [shl_load], 20102d19872aSmrg [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld], 20112d19872aSmrg [AC_CHECK_FUNC([dlopen], 20122d19872aSmrg [lt_cv_dlopen=dlopen], 20132d19872aSmrg [AC_CHECK_LIB([dl], [dlopen], 20142d19872aSmrg [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl], 20152d19872aSmrg [AC_CHECK_LIB([svld], [dlopen], 20162d19872aSmrg [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld], 20172d19872aSmrg [AC_CHECK_LIB([dld], [dld_link], 20182d19872aSmrg [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld]) 20192d19872aSmrg ]) 20202d19872aSmrg ]) 20212d19872aSmrg ]) 20222d19872aSmrg ]) 20232d19872aSmrg ]) 20242d19872aSmrg ;; 20252d19872aSmrg esac 20262d19872aSmrg 20272d19872aSmrg if test no = "$lt_cv_dlopen"; then 20282d19872aSmrg enable_dlopen=no 20292d19872aSmrg else 20302d19872aSmrg enable_dlopen=yes 20312d19872aSmrg fi 20322d19872aSmrg 20332d19872aSmrg case $lt_cv_dlopen in 20342d19872aSmrg dlopen) 20352d19872aSmrg save_CPPFLAGS=$CPPFLAGS 20362d19872aSmrg test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" 20372d19872aSmrg 20382d19872aSmrg save_LDFLAGS=$LDFLAGS 20392d19872aSmrg wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" 20402d19872aSmrg 20412d19872aSmrg save_LIBS=$LIBS 20422d19872aSmrg LIBS="$lt_cv_dlopen_libs $LIBS" 20432d19872aSmrg 20442d19872aSmrg AC_CACHE_CHECK([whether a program can dlopen itself], 20452d19872aSmrg lt_cv_dlopen_self, [dnl 20462d19872aSmrg _LT_TRY_DLOPEN_SELF( 20472d19872aSmrg lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, 20482d19872aSmrg lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) 20492d19872aSmrg ]) 20502d19872aSmrg 20512d19872aSmrg if test yes = "$lt_cv_dlopen_self"; then 20522d19872aSmrg wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" 20532d19872aSmrg AC_CACHE_CHECK([whether a statically linked program can dlopen itself], 20542d19872aSmrg lt_cv_dlopen_self_static, [dnl 20552d19872aSmrg _LT_TRY_DLOPEN_SELF( 20562d19872aSmrg lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, 20572d19872aSmrg lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) 20582d19872aSmrg ]) 20592d19872aSmrg fi 20602d19872aSmrg 20612d19872aSmrg CPPFLAGS=$save_CPPFLAGS 20622d19872aSmrg LDFLAGS=$save_LDFLAGS 20632d19872aSmrg LIBS=$save_LIBS 20642d19872aSmrg ;; 20652d19872aSmrg esac 20662d19872aSmrg 20672d19872aSmrg case $lt_cv_dlopen_self in 20682d19872aSmrg yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; 20692d19872aSmrg *) enable_dlopen_self=unknown ;; 20702d19872aSmrg esac 20712d19872aSmrg 20722d19872aSmrg case $lt_cv_dlopen_self_static in 20732d19872aSmrg yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; 20742d19872aSmrg *) enable_dlopen_self_static=unknown ;; 20752d19872aSmrg esac 20762d19872aSmrgfi 20772d19872aSmrg_LT_DECL([dlopen_support], [enable_dlopen], [0], 20782d19872aSmrg [Whether dlopen is supported]) 20792d19872aSmrg_LT_DECL([dlopen_self], [enable_dlopen_self], [0], 20802d19872aSmrg [Whether dlopen of programs is supported]) 20812d19872aSmrg_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], 20822d19872aSmrg [Whether dlopen of statically linked programs is supported]) 20832d19872aSmrg])# LT_SYS_DLOPEN_SELF 20842d19872aSmrg 20852d19872aSmrg# Old name: 20862d19872aSmrgAU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) 20872d19872aSmrgdnl aclocal-1.4 backwards compatibility: 20882d19872aSmrgdnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) 20892d19872aSmrg 20902d19872aSmrg 20912d19872aSmrg# _LT_COMPILER_C_O([TAGNAME]) 20922d19872aSmrg# --------------------------- 20932d19872aSmrg# Check to see if options -c and -o are simultaneously supported by compiler. 20942d19872aSmrg# This macro does not hard code the compiler like AC_PROG_CC_C_O. 20952d19872aSmrgm4_defun([_LT_COMPILER_C_O], 20962d19872aSmrg[m4_require([_LT_DECL_SED])dnl 20972d19872aSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl 20982d19872aSmrgm4_require([_LT_TAG_COMPILER])dnl 20992d19872aSmrgAC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], 21002d19872aSmrg [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], 21012d19872aSmrg [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no 21022d19872aSmrg $RM -r conftest 2>/dev/null 21032d19872aSmrg mkdir conftest 21042d19872aSmrg cd conftest 21052d19872aSmrg mkdir out 21062d19872aSmrg echo "$lt_simple_compile_test_code" > conftest.$ac_ext 21072d19872aSmrg 21082d19872aSmrg lt_compiler_flag="-o out/conftest2.$ac_objext" 21092d19872aSmrg # Insert the option either (1) after the last *FLAGS variable, or 21102d19872aSmrg # (2) before a word containing "conftest.", or (3) at the end. 21112d19872aSmrg # Note that $ac_compile itself does not contain backslashes and begins 21122d19872aSmrg # with a dollar sign (not a hyphen), so the echo should work correctly. 21132d19872aSmrg lt_compile=`echo "$ac_compile" | $SED \ 21142d19872aSmrg -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ 21152d19872aSmrg -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ 21162d19872aSmrg -e 's:$: $lt_compiler_flag:'` 21172d19872aSmrg (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) 21182d19872aSmrg (eval "$lt_compile" 2>out/conftest.err) 21192d19872aSmrg ac_status=$? 21202d19872aSmrg cat out/conftest.err >&AS_MESSAGE_LOG_FD 21212d19872aSmrg echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD 21222d19872aSmrg if (exit $ac_status) && test -s out/conftest2.$ac_objext 21232d19872aSmrg then 21242d19872aSmrg # The compiler can only warn and ignore the option if not recognized 21252d19872aSmrg # So say no if there are warnings 21262d19872aSmrg $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp 21272d19872aSmrg $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 21282d19872aSmrg if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then 21292d19872aSmrg _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes 21302d19872aSmrg fi 21312d19872aSmrg fi 21322d19872aSmrg chmod u+w . 2>&AS_MESSAGE_LOG_FD 21332d19872aSmrg $RM conftest* 21342d19872aSmrg # SGI C++ compiler will create directory out/ii_files/ for 21352d19872aSmrg # template instantiation 21362d19872aSmrg test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files 21372d19872aSmrg $RM out/* && rmdir out 21382d19872aSmrg cd .. 21392d19872aSmrg $RM -r conftest 21402d19872aSmrg $RM conftest* 21412d19872aSmrg]) 21422d19872aSmrg_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], 21432d19872aSmrg [Does compiler simultaneously support -c and -o options?]) 21442d19872aSmrg])# _LT_COMPILER_C_O 21452d19872aSmrg 21462d19872aSmrg 21472d19872aSmrg# _LT_COMPILER_FILE_LOCKS([TAGNAME]) 21482d19872aSmrg# ---------------------------------- 21492d19872aSmrg# Check to see if we can do hard links to lock some files if needed 21502d19872aSmrgm4_defun([_LT_COMPILER_FILE_LOCKS], 21512d19872aSmrg[m4_require([_LT_ENABLE_LOCK])dnl 21522d19872aSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl 21532d19872aSmrg_LT_COMPILER_C_O([$1]) 21542d19872aSmrg 21552d19872aSmrghard_links=nottested 21562d19872aSmrgif test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then 21572d19872aSmrg # do not overwrite the value of need_locks provided by the user 21582d19872aSmrg AC_MSG_CHECKING([if we can lock with hard links]) 21592d19872aSmrg hard_links=yes 21602d19872aSmrg $RM conftest* 21612d19872aSmrg ln conftest.a conftest.b 2>/dev/null && hard_links=no 21622d19872aSmrg touch conftest.a 21632d19872aSmrg ln conftest.a conftest.b 2>&5 || hard_links=no 21642d19872aSmrg ln conftest.a conftest.b 2>/dev/null && hard_links=no 21652d19872aSmrg AC_MSG_RESULT([$hard_links]) 21662d19872aSmrg if test no = "$hard_links"; then 21672d19872aSmrg AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe]) 21682d19872aSmrg need_locks=warn 21692d19872aSmrg fi 21702d19872aSmrgelse 21712d19872aSmrg need_locks=no 21722d19872aSmrgfi 21732d19872aSmrg_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) 21742d19872aSmrg])# _LT_COMPILER_FILE_LOCKS 21752d19872aSmrg 21762d19872aSmrg 21772d19872aSmrg# _LT_CHECK_OBJDIR 21782d19872aSmrg# ---------------- 21792d19872aSmrgm4_defun([_LT_CHECK_OBJDIR], 21802d19872aSmrg[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], 21812d19872aSmrg[rm -f .libs 2>/dev/null 21822d19872aSmrgmkdir .libs 2>/dev/null 21832d19872aSmrgif test -d .libs; then 21842d19872aSmrg lt_cv_objdir=.libs 21852d19872aSmrgelse 21862d19872aSmrg # MS-DOS does not allow filenames that begin with a dot. 21872d19872aSmrg lt_cv_objdir=_libs 21882d19872aSmrgfi 21892d19872aSmrgrmdir .libs 2>/dev/null]) 21902d19872aSmrgobjdir=$lt_cv_objdir 21912d19872aSmrg_LT_DECL([], [objdir], [0], 21922d19872aSmrg [The name of the directory that contains temporary libtool files])dnl 21932d19872aSmrgm4_pattern_allow([LT_OBJDIR])dnl 21942d19872aSmrgAC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/", 21952d19872aSmrg [Define to the sub-directory where libtool stores uninstalled libraries.]) 21962d19872aSmrg])# _LT_CHECK_OBJDIR 21972d19872aSmrg 21982d19872aSmrg 21992d19872aSmrg# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) 22002d19872aSmrg# -------------------------------------- 22012d19872aSmrg# Check hardcoding attributes. 22022d19872aSmrgm4_defun([_LT_LINKER_HARDCODE_LIBPATH], 22032d19872aSmrg[AC_MSG_CHECKING([how to hardcode library paths into programs]) 22042d19872aSmrg_LT_TAGVAR(hardcode_action, $1)= 22052d19872aSmrgif test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || 22062d19872aSmrg test -n "$_LT_TAGVAR(runpath_var, $1)" || 22072d19872aSmrg test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then 22082d19872aSmrg 22092d19872aSmrg # We can hardcode non-existent directories. 22102d19872aSmrg if test no != "$_LT_TAGVAR(hardcode_direct, $1)" && 22112d19872aSmrg # If the only mechanism to avoid hardcoding is shlibpath_var, we 22122d19872aSmrg # have to relink, otherwise we might link with an installed library 22132d19872aSmrg # when we should be linking with a yet-to-be-installed one 22142d19872aSmrg ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" && 22152d19872aSmrg test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then 22162d19872aSmrg # Linking always hardcodes the temporary library directory. 22172d19872aSmrg _LT_TAGVAR(hardcode_action, $1)=relink 22182d19872aSmrg else 22192d19872aSmrg # We can link without hardcoding, and we can hardcode nonexisting dirs. 22202d19872aSmrg _LT_TAGVAR(hardcode_action, $1)=immediate 22212d19872aSmrg fi 22222d19872aSmrgelse 22232d19872aSmrg # We cannot hardcode anything, or else we can only hardcode existing 22242d19872aSmrg # directories. 22252d19872aSmrg _LT_TAGVAR(hardcode_action, $1)=unsupported 22262d19872aSmrgfi 22272d19872aSmrgAC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) 22282d19872aSmrg 22292d19872aSmrgif test relink = "$_LT_TAGVAR(hardcode_action, $1)" || 22302d19872aSmrg test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then 22312d19872aSmrg # Fast installation is not supported 22322d19872aSmrg enable_fast_install=no 22332d19872aSmrgelif test yes = "$shlibpath_overrides_runpath" || 22342d19872aSmrg test no = "$enable_shared"; then 22352d19872aSmrg # Fast installation is not necessary 22362d19872aSmrg enable_fast_install=needless 22372d19872aSmrgfi 22382d19872aSmrg_LT_TAGDECL([], [hardcode_action], [0], 22392d19872aSmrg [How to hardcode a shared library path into an executable]) 22402d19872aSmrg])# _LT_LINKER_HARDCODE_LIBPATH 22412d19872aSmrg 22422d19872aSmrg 22432d19872aSmrg# _LT_CMD_STRIPLIB 22442d19872aSmrg# ---------------- 22452d19872aSmrgm4_defun([_LT_CMD_STRIPLIB], 22462d19872aSmrg[m4_require([_LT_DECL_EGREP]) 22472d19872aSmrgstriplib= 22482d19872aSmrgold_striplib= 22492d19872aSmrgAC_MSG_CHECKING([whether stripping libraries is possible]) 22502d19872aSmrgif test -z "$STRIP"; then 22512d19872aSmrg AC_MSG_RESULT([no]) 22522d19872aSmrgelse 22532d19872aSmrg if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then 22542d19872aSmrg old_striplib="$STRIP --strip-debug" 22552d19872aSmrg striplib="$STRIP --strip-unneeded" 22562d19872aSmrg AC_MSG_RESULT([yes]) 22572d19872aSmrg else 22582d19872aSmrg case $host_os in 22592d19872aSmrg darwin*) 22602d19872aSmrg # FIXME - insert some real tests, host_os isn't really good enough 22612d19872aSmrg striplib="$STRIP -x" 22622d19872aSmrg old_striplib="$STRIP -S" 22632d19872aSmrg AC_MSG_RESULT([yes]) 22642d19872aSmrg ;; 22652d19872aSmrg freebsd*) 22662d19872aSmrg if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then 22672d19872aSmrg old_striplib="$STRIP --strip-debug" 22682d19872aSmrg striplib="$STRIP --strip-unneeded" 22692d19872aSmrg AC_MSG_RESULT([yes]) 22702d19872aSmrg else 22712d19872aSmrg AC_MSG_RESULT([no]) 22722d19872aSmrg fi 22732d19872aSmrg ;; 22742d19872aSmrg *) 22752d19872aSmrg AC_MSG_RESULT([no]) 22762d19872aSmrg ;; 22772d19872aSmrg esac 22782d19872aSmrg fi 22792d19872aSmrgfi 22802d19872aSmrg_LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) 22812d19872aSmrg_LT_DECL([], [striplib], [1]) 22822d19872aSmrg])# _LT_CMD_STRIPLIB 22832d19872aSmrg 22842d19872aSmrg 22852d19872aSmrg# _LT_PREPARE_MUNGE_PATH_LIST 22862d19872aSmrg# --------------------------- 22872d19872aSmrg# Make sure func_munge_path_list() is defined correctly. 22882d19872aSmrgm4_defun([_LT_PREPARE_MUNGE_PATH_LIST], 22892d19872aSmrg[[# func_munge_path_list VARIABLE PATH 22902d19872aSmrg# ----------------------------------- 22912d19872aSmrg# VARIABLE is name of variable containing _space_ separated list of 22922d19872aSmrg# directories to be munged by the contents of PATH, which is string 22932d19872aSmrg# having a format: 22942d19872aSmrg# "DIR[:DIR]:" 22952d19872aSmrg# string "DIR[ DIR]" will be prepended to VARIABLE 22962d19872aSmrg# ":DIR[:DIR]" 22972d19872aSmrg# string "DIR[ DIR]" will be appended to VARIABLE 22982d19872aSmrg# "DIRP[:DIRP]::[DIRA:]DIRA" 22992d19872aSmrg# string "DIRP[ DIRP]" will be prepended to VARIABLE and string 23002d19872aSmrg# "DIRA[ DIRA]" will be appended to VARIABLE 23012d19872aSmrg# "DIR[:DIR]" 23022d19872aSmrg# VARIABLE will be replaced by "DIR[ DIR]" 23032d19872aSmrgfunc_munge_path_list () 23042d19872aSmrg{ 23052d19872aSmrg case x@S|@2 in 23062d19872aSmrg x) 23072d19872aSmrg ;; 23082d19872aSmrg *:) 23092d19872aSmrg eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" 23102d19872aSmrg ;; 23112d19872aSmrg x:*) 23122d19872aSmrg eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" 23132d19872aSmrg ;; 23142d19872aSmrg *::*) 23152d19872aSmrg eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" 23162d19872aSmrg eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" 23172d19872aSmrg ;; 23182d19872aSmrg *) 23192d19872aSmrg eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" 23202d19872aSmrg ;; 23212d19872aSmrg esac 23222d19872aSmrg} 23232d19872aSmrg]])# _LT_PREPARE_PATH_LIST 23242d19872aSmrg 23252d19872aSmrg 23262d19872aSmrg# _LT_SYS_DYNAMIC_LINKER([TAG]) 23272d19872aSmrg# ----------------------------- 23282d19872aSmrg# PORTME Fill in your ld.so characteristics 23292d19872aSmrgm4_defun([_LT_SYS_DYNAMIC_LINKER], 23302d19872aSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl 23312d19872aSmrgm4_require([_LT_DECL_EGREP])dnl 23322d19872aSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl 23332d19872aSmrgm4_require([_LT_DECL_OBJDUMP])dnl 23342d19872aSmrgm4_require([_LT_DECL_SED])dnl 23352d19872aSmrgm4_require([_LT_CHECK_SHELL_FEATURES])dnl 23362d19872aSmrgm4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl 23372d19872aSmrgAC_MSG_CHECKING([dynamic linker characteristics]) 23382d19872aSmrgm4_if([$1], 23392d19872aSmrg [], [ 23402d19872aSmrgif test yes = "$GCC"; then 23412d19872aSmrg case $host_os in 23422d19872aSmrg darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; 23432d19872aSmrg *) lt_awk_arg='/^libraries:/' ;; 23442d19872aSmrg esac 23452d19872aSmrg case $host_os in 23462f76b07dSmrg mingw* | windows* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;; 23472d19872aSmrg *) lt_sed_strip_eq='s|=/|/|g' ;; 23482d19872aSmrg esac 23492d19872aSmrg lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` 23502d19872aSmrg case $lt_search_path_spec in 23512d19872aSmrg *\;*) 23522d19872aSmrg # if the path contains ";" then we assume it to be the separator 23532d19872aSmrg # otherwise default to the standard path separator (i.e. ":") - it is 23542d19872aSmrg # assumed that no part of a normal pathname contains ";" but that should 23552d19872aSmrg # okay in the real world where ";" in dirpaths is itself problematic. 23562d19872aSmrg lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` 23572d19872aSmrg ;; 23582d19872aSmrg *) 23592d19872aSmrg lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` 23602d19872aSmrg ;; 23612d19872aSmrg esac 23622d19872aSmrg # Ok, now we have the path, separated by spaces, we can step through it 23632d19872aSmrg # and add multilib dir if necessary... 23642d19872aSmrg lt_tmp_lt_search_path_spec= 23652d19872aSmrg lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` 23662d19872aSmrg # ...but if some path component already ends with the multilib dir we assume 23672d19872aSmrg # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). 23682d19872aSmrg case "$lt_multi_os_dir; $lt_search_path_spec " in 23692d19872aSmrg "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) 23702d19872aSmrg lt_multi_os_dir= 23712d19872aSmrg ;; 23722d19872aSmrg esac 23732d19872aSmrg for lt_sys_path in $lt_search_path_spec; do 23742d19872aSmrg if test -d "$lt_sys_path$lt_multi_os_dir"; then 23752d19872aSmrg lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" 23762d19872aSmrg elif test -n "$lt_multi_os_dir"; then 23772d19872aSmrg test -d "$lt_sys_path" && \ 23782d19872aSmrg lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" 23792d19872aSmrg fi 23802d19872aSmrg done 23812d19872aSmrg lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' 23822d19872aSmrgBEGIN {RS = " "; FS = "/|\n";} { 23832d19872aSmrg lt_foo = ""; 23842d19872aSmrg lt_count = 0; 23852d19872aSmrg for (lt_i = NF; lt_i > 0; lt_i--) { 23862d19872aSmrg if ($lt_i != "" && $lt_i != ".") { 23872d19872aSmrg if ($lt_i == "..") { 23882d19872aSmrg lt_count++; 23892d19872aSmrg } else { 23902d19872aSmrg if (lt_count == 0) { 23912d19872aSmrg lt_foo = "/" $lt_i lt_foo; 23922d19872aSmrg } else { 23932d19872aSmrg lt_count--; 23942d19872aSmrg } 23952d19872aSmrg } 23962d19872aSmrg } 23972d19872aSmrg } 23982d19872aSmrg if (lt_foo != "") { lt_freq[[lt_foo]]++; } 23992d19872aSmrg if (lt_freq[[lt_foo]] == 1) { print lt_foo; } 24002d19872aSmrg}'` 24012d19872aSmrg # AWK program above erroneously prepends '/' to C:/dos/paths 24022d19872aSmrg # for these hosts. 24032d19872aSmrg case $host_os in 24042f76b07dSmrg mingw* | windows* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ 24052d19872aSmrg $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;; 24062d19872aSmrg esac 24072d19872aSmrg sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` 24082d19872aSmrgelse 24092d19872aSmrg sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" 24102d19872aSmrgfi]) 24112d19872aSmrglibrary_names_spec= 24122d19872aSmrglibname_spec='lib$name' 24132d19872aSmrgsoname_spec= 24142d19872aSmrgshrext_cmds=.so 24152d19872aSmrgpostinstall_cmds= 24162d19872aSmrgpostuninstall_cmds= 24172d19872aSmrgfinish_cmds= 24182d19872aSmrgfinish_eval= 24192d19872aSmrgshlibpath_var= 24202d19872aSmrgshlibpath_overrides_runpath=unknown 24212d19872aSmrgversion_type=none 24222d19872aSmrgdynamic_linker="$host_os ld.so" 24232d19872aSmrgsys_lib_dlsearch_path_spec="/lib /usr/lib" 24242d19872aSmrgneed_lib_prefix=unknown 24252d19872aSmrghardcode_into_libs=no 24262d19872aSmrg 24272d19872aSmrg# when you set need_version to no, make sure it does not cause -set_version 24282d19872aSmrg# flags to be left without arguments 24292d19872aSmrgneed_version=unknown 24302d19872aSmrg 24312d19872aSmrgAC_ARG_VAR([LT_SYS_LIBRARY_PATH], 24322d19872aSmrg[User-defined run-time library search path.]) 24332d19872aSmrg 24342d19872aSmrgcase $host_os in 24352d19872aSmrgaix3*) 24362d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 24372d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname.a' 24382d19872aSmrg shlibpath_var=LIBPATH 24392d19872aSmrg 24402d19872aSmrg # AIX 3 has no versioning support, so we append a major version to the name. 24412d19872aSmrg soname_spec='$libname$release$shared_ext$major' 24422d19872aSmrg ;; 24432d19872aSmrg 24442d19872aSmrgaix[[4-9]]*) 24452d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 24462d19872aSmrg need_lib_prefix=no 24472d19872aSmrg need_version=no 24482d19872aSmrg hardcode_into_libs=yes 24492d19872aSmrg if test ia64 = "$host_cpu"; then 24502d19872aSmrg # AIX 5 supports IA64 24512d19872aSmrg library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' 24522d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 24532d19872aSmrg else 24542d19872aSmrg # With GCC up to 2.95.x, collect2 would create an import file 24552d19872aSmrg # for dependence libraries. The import file would start with 24562d19872aSmrg # the line '#! .'. This would cause the generated library to 24572d19872aSmrg # depend on '.', always an invalid library. This was fixed in 24582d19872aSmrg # development snapshots of GCC prior to 3.0. 24592d19872aSmrg case $host_os in 24602d19872aSmrg aix4 | aix4.[[01]] | aix4.[[01]].*) 24612d19872aSmrg if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' 24622d19872aSmrg echo ' yes ' 24632d19872aSmrg echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then 24642d19872aSmrg : 24652d19872aSmrg else 24662d19872aSmrg can_build_shared=no 24672d19872aSmrg fi 24682d19872aSmrg ;; 24692d19872aSmrg esac 24702d19872aSmrg # Using Import Files as archive members, it is possible to support 24712d19872aSmrg # filename-based versioning of shared library archives on AIX. While 24722d19872aSmrg # this would work for both with and without runtime linking, it will 24732d19872aSmrg # prevent static linking of such archives. So we do filename-based 24742d19872aSmrg # shared library versioning with .so extension only, which is used 24752d19872aSmrg # when both runtime linking and shared linking is enabled. 24762d19872aSmrg # Unfortunately, runtime linking may impact performance, so we do 24772d19872aSmrg # not want this to be the default eventually. Also, we use the 24782d19872aSmrg # versioned .so libs for executables only if there is the -brtl 24792f76b07dSmrg # linker flag in LDFLAGS as well, or --enable-aix-soname=svr4 only. 24802d19872aSmrg # To allow for filename-based versioning support, we need to create 24812d19872aSmrg # libNAME.so.V as an archive file, containing: 24822d19872aSmrg # *) an Import File, referring to the versioned filename of the 24832d19872aSmrg # archive as well as the shared archive member, telling the 24842d19872aSmrg # bitwidth (32 or 64) of that shared object, and providing the 24852d19872aSmrg # list of exported symbols of that shared object, eventually 24862d19872aSmrg # decorated with the 'weak' keyword 24872d19872aSmrg # *) the shared object with the F_LOADONLY flag set, to really avoid 24882d19872aSmrg # it being seen by the linker. 24892d19872aSmrg # At run time we better use the real file rather than another symlink, 24902d19872aSmrg # but for link time we create the symlink libNAME.so -> libNAME.so.V 24912d19872aSmrg 24922d19872aSmrg case $with_aix_soname,$aix_use_runtimelinking in 24932d19872aSmrg # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct 24942d19872aSmrg # soname into executable. Probably we can add versioning support to 24952d19872aSmrg # collect2, so additional links can be useful in future. 24962d19872aSmrg aix,yes) # traditional libtool 24972d19872aSmrg dynamic_linker='AIX unversionable lib.so' 24982d19872aSmrg # If using run time linking (on AIX 4.2 or later) use lib<name>.so 24992d19872aSmrg # instead of lib<name>.a to let people know that these are not 25002d19872aSmrg # typical AIX shared libraries. 25012d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 25022d19872aSmrg ;; 25032d19872aSmrg aix,no) # traditional AIX only 25042d19872aSmrg dynamic_linker='AIX lib.a[(]lib.so.V[)]' 25052d19872aSmrg # We preserve .a as extension for shared libraries through AIX4.2 25062d19872aSmrg # and later when we are not doing run time linking. 25072d19872aSmrg library_names_spec='$libname$release.a $libname.a' 25082d19872aSmrg soname_spec='$libname$release$shared_ext$major' 25092d19872aSmrg ;; 25102d19872aSmrg svr4,*) # full svr4 only 25112d19872aSmrg dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]" 25122d19872aSmrg library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' 25132d19872aSmrg # We do not specify a path in Import Files, so LIBPATH fires. 25142d19872aSmrg shlibpath_overrides_runpath=yes 25152d19872aSmrg ;; 25162d19872aSmrg *,yes) # both, prefer svr4 25172d19872aSmrg dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]" 25182d19872aSmrg library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' 25192d19872aSmrg # unpreferred sharedlib libNAME.a needs extra handling 25202d19872aSmrg 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"' 25212d19872aSmrg 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"' 25222d19872aSmrg # We do not specify a path in Import Files, so LIBPATH fires. 25232d19872aSmrg shlibpath_overrides_runpath=yes 25242d19872aSmrg ;; 25252d19872aSmrg *,no) # both, prefer aix 25262d19872aSmrg dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]" 25272d19872aSmrg library_names_spec='$libname$release.a $libname.a' 25282d19872aSmrg soname_spec='$libname$release$shared_ext$major' 25292d19872aSmrg # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling 25302d19872aSmrg 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)' 25312d19872aSmrg 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"' 25322d19872aSmrg ;; 25332d19872aSmrg esac 25342d19872aSmrg shlibpath_var=LIBPATH 25352d19872aSmrg fi 25362d19872aSmrg ;; 25372d19872aSmrg 25382d19872aSmrgamigaos*) 25392d19872aSmrg case $host_cpu in 25402d19872aSmrg powerpc) 25412d19872aSmrg # Since July 2007 AmigaOS4 officially supports .so libraries. 25422d19872aSmrg # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. 25432d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 25442d19872aSmrg ;; 25452d19872aSmrg m68k) 25462d19872aSmrg library_names_spec='$libname.ixlibrary $libname.a' 25472d19872aSmrg # Create ${libname}_ixlibrary.a entries in /sys/libs. 25482d19872aSmrg 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' 25492d19872aSmrg ;; 25502d19872aSmrg esac 25512d19872aSmrg ;; 25522d19872aSmrg 25532d19872aSmrgbeos*) 25542d19872aSmrg library_names_spec='$libname$shared_ext' 25552d19872aSmrg dynamic_linker="$host_os ld.so" 25562d19872aSmrg shlibpath_var=LIBRARY_PATH 25572d19872aSmrg ;; 25582d19872aSmrg 25592d19872aSmrgbsdi[[45]]*) 25602d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 25612d19872aSmrg need_version=no 25622d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 25632d19872aSmrg soname_spec='$libname$release$shared_ext$major' 25642d19872aSmrg finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' 25652d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 25662d19872aSmrg sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" 25672d19872aSmrg sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" 25682d19872aSmrg # the default ld.so.conf also contains /usr/contrib/lib and 25692d19872aSmrg # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow 25702d19872aSmrg # libtool to hard-code these into programs 25712d19872aSmrg ;; 25722d19872aSmrg 25732f76b07dSmrgcygwin* | mingw* | windows* | pw32* | cegcc*) 25742d19872aSmrg version_type=windows 25752d19872aSmrg shrext_cmds=.dll 25762d19872aSmrg need_version=no 25772d19872aSmrg need_lib_prefix=no 25782d19872aSmrg 25792d19872aSmrg case $GCC,$cc_basename in 25802d19872aSmrg yes,*) 25812d19872aSmrg # gcc 25822d19872aSmrg library_names_spec='$libname.dll.a' 25832d19872aSmrg # DLL is installed to $(libdir)/../bin by postinstall_cmds 25842f76b07dSmrg # If user builds GCC with multilib enabled, 25852f76b07dSmrg # it should just install on $(libdir) 25862f76b07dSmrg # not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones. 25872f76b07dSmrg if test xyes = x"$multilib"; then 25882f76b07dSmrg postinstall_cmds='base_file=`basename \$file`~ 25892f76b07dSmrg dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ 25902f76b07dSmrg dldir=$destdir/`dirname \$dlpath`~ 25912f76b07dSmrg $install_prog $dir/$dlname $destdir/$dlname~ 25922f76b07dSmrg chmod a+x $destdir/$dlname~ 25932f76b07dSmrg if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then 25942f76b07dSmrg eval '\''$striplib $destdir/$dlname'\'' || exit \$?; 25952f76b07dSmrg fi' 25962f76b07dSmrg else 25972f76b07dSmrg postinstall_cmds='base_file=`basename \$file`~ 25982f76b07dSmrg dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ 25992f76b07dSmrg dldir=$destdir/`dirname \$dlpath`~ 26002f76b07dSmrg test -d \$dldir || mkdir -p \$dldir~ 26012f76b07dSmrg $install_prog $dir/$dlname \$dldir/$dlname~ 26022f76b07dSmrg chmod a+x \$dldir/$dlname~ 26032f76b07dSmrg if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then 26042f76b07dSmrg eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; 26052f76b07dSmrg fi' 26062f76b07dSmrg fi 26072d19872aSmrg postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ 26082d19872aSmrg dlpath=$dir/\$dldll~ 26092d19872aSmrg $RM \$dlpath' 26102d19872aSmrg shlibpath_overrides_runpath=yes 26112d19872aSmrg 26122d19872aSmrg case $host_os in 26132d19872aSmrg cygwin*) 26142d19872aSmrg # Cygwin DLLs use 'cyg' prefix rather than 'lib' 26152d19872aSmrg soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' 26162d19872aSmrgm4_if([$1], [],[ 26172d19872aSmrg sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) 26182d19872aSmrg ;; 26192f76b07dSmrg mingw* | windows* | cegcc*) 26202d19872aSmrg # MinGW DLLs use traditional 'lib' prefix 26212d19872aSmrg soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' 26222d19872aSmrg ;; 26232d19872aSmrg pw32*) 26242d19872aSmrg # pw32 DLLs use 'pw' prefix rather than 'lib' 26252d19872aSmrg library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' 26262d19872aSmrg ;; 26272d19872aSmrg esac 26282d19872aSmrg dynamic_linker='Win32 ld.exe' 26292d19872aSmrg ;; 26302d19872aSmrg 26312d19872aSmrg *,cl* | *,icl*) 26322d19872aSmrg # Native MSVC or ICC 26332d19872aSmrg libname_spec='$name' 26342d19872aSmrg soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' 26352d19872aSmrg library_names_spec='$libname.dll.lib' 26362d19872aSmrg 26372d19872aSmrg case $build_os in 26382f76b07dSmrg mingw* | windows*) 26392d19872aSmrg sys_lib_search_path_spec= 26402d19872aSmrg lt_save_ifs=$IFS 26412d19872aSmrg IFS=';' 26422d19872aSmrg for lt_path in $LIB 26432d19872aSmrg do 26442d19872aSmrg IFS=$lt_save_ifs 26452d19872aSmrg # Let DOS variable expansion print the short 8.3 style file name. 26462d19872aSmrg lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` 26472d19872aSmrg sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" 26482d19872aSmrg done 26492d19872aSmrg IFS=$lt_save_ifs 26502d19872aSmrg # Convert to MSYS style. 26512d19872aSmrg sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` 26522d19872aSmrg ;; 26532d19872aSmrg cygwin*) 26542d19872aSmrg # Convert to unix form, then to dos form, then back to unix form 26552d19872aSmrg # but this time dos style (no spaces!) so that the unix form looks 26562d19872aSmrg # like /cygdrive/c/PROGRA~1:/cygdr... 26572d19872aSmrg sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` 26582d19872aSmrg sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` 26592d19872aSmrg sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` 26602d19872aSmrg ;; 26612d19872aSmrg *) 26622d19872aSmrg sys_lib_search_path_spec=$LIB 26632d19872aSmrg if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then 26642d19872aSmrg # It is most probably a Windows format PATH. 26652d19872aSmrg sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` 26662d19872aSmrg else 26672d19872aSmrg sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` 26682d19872aSmrg fi 26692d19872aSmrg # FIXME: find the short name or the path components, as spaces are 26702d19872aSmrg # common. (e.g. "Program Files" -> "PROGRA~1") 26712d19872aSmrg ;; 26722d19872aSmrg esac 26732d19872aSmrg 26742d19872aSmrg # DLL is installed to $(libdir)/../bin by postinstall_cmds 26752d19872aSmrg postinstall_cmds='base_file=`basename \$file`~ 26762d19872aSmrg dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ 26772d19872aSmrg dldir=$destdir/`dirname \$dlpath`~ 26782d19872aSmrg test -d \$dldir || mkdir -p \$dldir~ 26792d19872aSmrg $install_prog $dir/$dlname \$dldir/$dlname' 26802d19872aSmrg postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ 26812d19872aSmrg dlpath=$dir/\$dldll~ 26822d19872aSmrg $RM \$dlpath' 26832d19872aSmrg shlibpath_overrides_runpath=yes 26842d19872aSmrg dynamic_linker='Win32 link.exe' 26852d19872aSmrg ;; 26862d19872aSmrg 26872d19872aSmrg *) 26882d19872aSmrg # Assume MSVC and ICC wrapper 26892d19872aSmrg library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' 26902d19872aSmrg dynamic_linker='Win32 ld.exe' 26912d19872aSmrg ;; 26922d19872aSmrg esac 26932d19872aSmrg # FIXME: first we should search . and the directory the executable is in 26942d19872aSmrg shlibpath_var=PATH 26952d19872aSmrg ;; 26962d19872aSmrg 26972d19872aSmrgdarwin* | rhapsody*) 26982d19872aSmrg dynamic_linker="$host_os dyld" 26992d19872aSmrg version_type=darwin 27002d19872aSmrg need_lib_prefix=no 27012d19872aSmrg need_version=no 270259ca590cSmrg library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' 27032d19872aSmrg soname_spec='$libname$release$major$shared_ext' 27042d19872aSmrg shlibpath_overrides_runpath=yes 27052d19872aSmrg shlibpath_var=DYLD_LIBRARY_PATH 270659ca590cSmrg shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' 27072d19872aSmrgm4_if([$1], [],[ 27082d19872aSmrg sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) 27092d19872aSmrg sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' 27102d19872aSmrg ;; 27112d19872aSmrg 27122d19872aSmrgdgux*) 27132d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 27142d19872aSmrg need_lib_prefix=no 27152d19872aSmrg need_version=no 27162d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 27172d19872aSmrg soname_spec='$libname$release$shared_ext$major' 27182d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 27192d19872aSmrg ;; 27202d19872aSmrg 27212d19872aSmrgfreebsd* | dragonfly* | midnightbsd*) 27222d19872aSmrg # DragonFly does not have aout. When/if they implement a new 27232d19872aSmrg # versioning mechanism, adjust this. 27242d19872aSmrg if test -x /usr/bin/objformat; then 27252d19872aSmrg objformat=`/usr/bin/objformat` 27262d19872aSmrg else 27272d19872aSmrg case $host_os in 27282d19872aSmrg freebsd[[23]].*) objformat=aout ;; 27292d19872aSmrg *) objformat=elf ;; 27302d19872aSmrg esac 27312d19872aSmrg fi 273259ca590cSmrg version_type=freebsd-$objformat 27332d19872aSmrg case $version_type in 27342d19872aSmrg freebsd-elf*) 27352d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 27362d19872aSmrg soname_spec='$libname$release$shared_ext$major' 27372d19872aSmrg need_version=no 27382d19872aSmrg need_lib_prefix=no 27392d19872aSmrg ;; 27402d19872aSmrg freebsd-*) 27412d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' 27422d19872aSmrg need_version=yes 27432d19872aSmrg ;; 27442d19872aSmrg esac 27452f76b07dSmrg case $host_cpu in 27462f76b07dSmrg powerpc64) 27472f76b07dSmrg # On FreeBSD bi-arch platforms, a different variable is used for 32-bit 27482f76b07dSmrg # binaries. See <https://man.freebsd.org/cgi/man.cgi?query=ld.so>. 27492f76b07dSmrg AC_COMPILE_IFELSE( 27502f76b07dSmrg [AC_LANG_SOURCE( 27512f76b07dSmrg [[int test_pointer_size[sizeof (void *) - 5]; 27522f76b07dSmrg ]])], 27532f76b07dSmrg [shlibpath_var=LD_LIBRARY_PATH], 27542f76b07dSmrg [shlibpath_var=LD_32_LIBRARY_PATH]) 27552f76b07dSmrg ;; 27562f76b07dSmrg *) 27572f76b07dSmrg shlibpath_var=LD_LIBRARY_PATH 27582f76b07dSmrg ;; 27592f76b07dSmrg esac 27602d19872aSmrg case $host_os in 27612d19872aSmrg freebsd2.*) 27622d19872aSmrg shlibpath_overrides_runpath=yes 27632d19872aSmrg ;; 27642d19872aSmrg freebsd3.[[01]]* | freebsdelf3.[[01]]*) 27652d19872aSmrg shlibpath_overrides_runpath=yes 27662d19872aSmrg hardcode_into_libs=yes 27672d19872aSmrg ;; 27682d19872aSmrg freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ 27692d19872aSmrg freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) 27702d19872aSmrg shlibpath_overrides_runpath=no 27712d19872aSmrg hardcode_into_libs=yes 27722d19872aSmrg ;; 27732d19872aSmrg *) # from 4.6 on, and DragonFly 27742d19872aSmrg shlibpath_overrides_runpath=yes 27752d19872aSmrg hardcode_into_libs=yes 27762d19872aSmrg ;; 27772d19872aSmrg esac 27782d19872aSmrg ;; 27792d19872aSmrg 27802d19872aSmrghaiku*) 27812d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 27822d19872aSmrg need_lib_prefix=no 27832d19872aSmrg need_version=no 27842d19872aSmrg dynamic_linker="$host_os runtime_loader" 27852d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 27862d19872aSmrg soname_spec='$libname$release$shared_ext$major' 27872d19872aSmrg shlibpath_var=LIBRARY_PATH 27882d19872aSmrg shlibpath_overrides_runpath=no 27892f76b07dSmrg sys_lib_search_path_spec='/boot/system/non-packaged/develop/lib /boot/system/develop/lib' 27902f76b07dSmrg sys_lib_dlsearch_path_spec='/boot/home/config/non-packaged/lib /boot/home/config/lib /boot/system/non-packaged/lib /boot/system/lib' 27912f76b07dSmrg hardcode_into_libs=no 27922d19872aSmrg ;; 27932d19872aSmrg 27942d19872aSmrghpux9* | hpux10* | hpux11*) 27952d19872aSmrg # Give a soname corresponding to the major version so that dld.sl refuses to 27962d19872aSmrg # link against other versions. 27972d19872aSmrg version_type=sunos 27982d19872aSmrg need_lib_prefix=no 27992d19872aSmrg need_version=no 28002d19872aSmrg case $host_cpu in 28012d19872aSmrg ia64*) 28022d19872aSmrg shrext_cmds='.so' 28032d19872aSmrg hardcode_into_libs=yes 28042d19872aSmrg dynamic_linker="$host_os dld.so" 28052d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 28062d19872aSmrg shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. 28072d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 28082d19872aSmrg soname_spec='$libname$release$shared_ext$major' 28092d19872aSmrg if test 32 = "$HPUX_IA64_MODE"; then 28102d19872aSmrg sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" 28112d19872aSmrg sys_lib_dlsearch_path_spec=/usr/lib/hpux32 28122d19872aSmrg else 28132d19872aSmrg sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" 28142d19872aSmrg sys_lib_dlsearch_path_spec=/usr/lib/hpux64 28152d19872aSmrg fi 28162d19872aSmrg ;; 28172d19872aSmrg hppa*64*) 28182d19872aSmrg shrext_cmds='.sl' 28192d19872aSmrg hardcode_into_libs=yes 28202d19872aSmrg dynamic_linker="$host_os dld.sl" 28212d19872aSmrg shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH 28222d19872aSmrg shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. 28232d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 28242d19872aSmrg soname_spec='$libname$release$shared_ext$major' 28252d19872aSmrg sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" 28262d19872aSmrg sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 28272d19872aSmrg ;; 28282d19872aSmrg *) 28292d19872aSmrg shrext_cmds='.sl' 28302d19872aSmrg dynamic_linker="$host_os dld.sl" 28312d19872aSmrg shlibpath_var=SHLIB_PATH 28322d19872aSmrg shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH 28332d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 28342d19872aSmrg soname_spec='$libname$release$shared_ext$major' 28352d19872aSmrg ;; 28362d19872aSmrg esac 28372d19872aSmrg # HP-UX runs *really* slowly unless shared libraries are mode 555, ... 28382d19872aSmrg postinstall_cmds='chmod 555 $lib' 28392d19872aSmrg # or fails outright, so override atomically: 28402d19872aSmrg install_override_mode=555 28412d19872aSmrg ;; 28422d19872aSmrg 28432d19872aSmrginterix[[3-9]]*) 28442d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 28452d19872aSmrg need_lib_prefix=no 28462d19872aSmrg need_version=no 28472d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 28482d19872aSmrg soname_spec='$libname$release$shared_ext$major' 28492d19872aSmrg dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' 28502d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 28512d19872aSmrg shlibpath_overrides_runpath=no 28522d19872aSmrg hardcode_into_libs=yes 28532d19872aSmrg ;; 28542d19872aSmrg 28552d19872aSmrgirix5* | irix6* | nonstopux*) 28562d19872aSmrg case $host_os in 28572d19872aSmrg nonstopux*) version_type=nonstopux ;; 28582d19872aSmrg *) 28592d19872aSmrg if test yes = "$lt_cv_prog_gnu_ld"; then 28602d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 28612d19872aSmrg else 28622d19872aSmrg version_type=irix 28632d19872aSmrg fi ;; 28642d19872aSmrg esac 28652d19872aSmrg need_lib_prefix=no 28662d19872aSmrg need_version=no 28672d19872aSmrg soname_spec='$libname$release$shared_ext$major' 28682d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' 28692d19872aSmrg case $host_os in 28702d19872aSmrg irix5* | nonstopux*) 28712d19872aSmrg libsuff= shlibsuff= 28722d19872aSmrg ;; 28732d19872aSmrg *) 28742d19872aSmrg case $LD in # libtool.m4 will add one of these switches to LD 28752d19872aSmrg *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") 28762d19872aSmrg libsuff= shlibsuff= libmagic=32-bit;; 28772d19872aSmrg *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") 28782d19872aSmrg libsuff=32 shlibsuff=N32 libmagic=N32;; 28792d19872aSmrg *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") 28802d19872aSmrg libsuff=64 shlibsuff=64 libmagic=64-bit;; 28812d19872aSmrg *) libsuff= shlibsuff= libmagic=never-match;; 28822d19872aSmrg esac 28832d19872aSmrg ;; 28842d19872aSmrg esac 28852d19872aSmrg shlibpath_var=LD_LIBRARY${shlibsuff}_PATH 28862d19872aSmrg shlibpath_overrides_runpath=no 28872d19872aSmrg sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" 28882d19872aSmrg sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" 28892d19872aSmrg hardcode_into_libs=yes 28902d19872aSmrg ;; 28912d19872aSmrg 28922d19872aSmrg# No shared lib support for Linux oldld, aout, or coff. 28932d19872aSmrglinux*oldld* | linux*aout* | linux*coff*) 28942d19872aSmrg dynamic_linker=no 28952d19872aSmrg ;; 28962d19872aSmrg 28972d19872aSmrglinux*android*) 28982d19872aSmrg version_type=none # Android doesn't support versioned libraries. 28992d19872aSmrg need_lib_prefix=no 29002d19872aSmrg need_version=no 29012f76b07dSmrg library_names_spec='$libname$release$shared_ext $libname$shared_ext' 29022d19872aSmrg soname_spec='$libname$release$shared_ext' 29032d19872aSmrg finish_cmds= 29042d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 29052d19872aSmrg shlibpath_overrides_runpath=yes 29062d19872aSmrg 29072d19872aSmrg # This implies no fast_install, which is unacceptable. 29082d19872aSmrg # Some rework will be needed to allow for fast_install 29092d19872aSmrg # before this can be enabled. 29102d19872aSmrg hardcode_into_libs=yes 29112d19872aSmrg 29122d19872aSmrg dynamic_linker='Android linker' 29132f76b07dSmrg # -rpath works at least for libraries that are not overridden by 29142f76b07dSmrg # libraries installed in system locations. 29152f76b07dSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 29162d19872aSmrg ;; 29172d19872aSmrg 29182d19872aSmrg# This must be glibc/ELF. 29192d19872aSmrglinux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 29202d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 29212d19872aSmrg need_lib_prefix=no 29222d19872aSmrg need_version=no 29232d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 29242d19872aSmrg soname_spec='$libname$release$shared_ext$major' 29252d19872aSmrg finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' 29262d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 29272d19872aSmrg shlibpath_overrides_runpath=no 29282d19872aSmrg 29292d19872aSmrg # Some binutils ld are patched to set DT_RUNPATH 29302d19872aSmrg AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], 29312d19872aSmrg [lt_cv_shlibpath_overrides_runpath=no 29322d19872aSmrg save_LDFLAGS=$LDFLAGS 29332d19872aSmrg save_libdir=$libdir 29342d19872aSmrg eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ 29352d19872aSmrg LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" 29362d19872aSmrg AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], 29372d19872aSmrg [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], 29382d19872aSmrg [lt_cv_shlibpath_overrides_runpath=yes])]) 29392d19872aSmrg LDFLAGS=$save_LDFLAGS 29402d19872aSmrg libdir=$save_libdir 29412d19872aSmrg ]) 29422d19872aSmrg shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath 29432d19872aSmrg 29442d19872aSmrg # This implies no fast_install, which is unacceptable. 29452d19872aSmrg # Some rework will be needed to allow for fast_install 29462d19872aSmrg # before this can be enabled. 29472d19872aSmrg hardcode_into_libs=yes 29482d19872aSmrg 294959ca590cSmrg # Add ABI-specific directories to the system library path. 295059ca590cSmrg sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" 295159ca590cSmrg 29522f76b07dSmrg # Ideally, we could use ldconfig to report *all* directories which are 29532d19872aSmrg # searched for libraries, however this is still not possible. Aside from not 29542d19872aSmrg # being certain /sbin/ldconfig is available, command 29552d19872aSmrg # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, 29562d19872aSmrg # even though it is searched at run-time. Try to do the best guess by 29572d19872aSmrg # appending ld.so.conf contents (and includes) to the search path. 29582d19872aSmrg if test -f /etc/ld.so.conf; then 29592d19872aSmrg 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' ' '` 296059ca590cSmrg sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" 29612d19872aSmrg fi 29622d19872aSmrg 29632d19872aSmrg # We used to test for /lib/ld.so.1 and disable shared libraries on 29642d19872aSmrg # powerpc, because MkLinux only supported shared libraries with the 29652d19872aSmrg # GNU dynamic linker. Since this was broken with cross compilers, 29662d19872aSmrg # most powerpc-linux boxes support dynamic linking these days and 29672d19872aSmrg # people can always --disable-shared, the test was removed, and we 29682d19872aSmrg # assume the GNU/Linux dynamic linker is in use. 29692d19872aSmrg dynamic_linker='GNU/Linux ld.so' 29702d19872aSmrg ;; 29712d19872aSmrg 29722f76b07dSmrgnetbsdelf*-gnu) 29732f76b07dSmrg version_type=linux 29742f76b07dSmrg need_lib_prefix=no 29752f76b07dSmrg need_version=no 29762f76b07dSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 29772f76b07dSmrg soname_spec='$libname$release$shared_ext$major' 29782f76b07dSmrg shlibpath_var=LD_LIBRARY_PATH 29792f76b07dSmrg shlibpath_overrides_runpath=no 29802f76b07dSmrg hardcode_into_libs=yes 29812f76b07dSmrg dynamic_linker='NetBSD ld.elf_so' 29822f76b07dSmrg ;; 29832f76b07dSmrg 29842d19872aSmrgnetbsd*) 29852d19872aSmrg version_type=sunos 29862d19872aSmrg need_lib_prefix=no 29872d19872aSmrg need_version=no 29882d19872aSmrg if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 29892d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' 29902d19872aSmrg finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' 29912d19872aSmrg dynamic_linker='NetBSD (a.out) ld.so' 29922d19872aSmrg else 29932d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 29942d19872aSmrg soname_spec='$libname$release$shared_ext$major' 29952d19872aSmrg dynamic_linker='NetBSD ld.elf_so' 29962d19872aSmrg fi 29972d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 29982d19872aSmrg shlibpath_overrides_runpath=yes 29992d19872aSmrg hardcode_into_libs=yes 30002d19872aSmrg ;; 30012d19872aSmrg 30022f76b07dSmrg*-mlibc) 30032f76b07dSmrg version_type=linux # correct to gnu/linux during the next big refactor 30042f76b07dSmrg need_lib_prefix=no 30052f76b07dSmrg need_version=no 30062f76b07dSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 30072f76b07dSmrg soname_spec='$libname$release$shared_ext$major' 30082f76b07dSmrg dynamic_linker='mlibc ld.so' 30092f76b07dSmrg shlibpath_var=LD_LIBRARY_PATH 30102f76b07dSmrg shlibpath_overrides_runpath=no 30112f76b07dSmrg hardcode_into_libs=yes 30122f76b07dSmrg ;; 30132f76b07dSmrg 30142d19872aSmrgnewsos6) 30152d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 30162d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 30172d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 30182d19872aSmrg shlibpath_overrides_runpath=yes 30192d19872aSmrg ;; 30202d19872aSmrg 30212d19872aSmrg*nto* | *qnx*) 30222d19872aSmrg version_type=qnx 30232d19872aSmrg need_lib_prefix=no 30242d19872aSmrg need_version=no 30252d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 30262d19872aSmrg soname_spec='$libname$release$shared_ext$major' 30272d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 30282d19872aSmrg shlibpath_overrides_runpath=no 30292d19872aSmrg hardcode_into_libs=yes 30302d19872aSmrg dynamic_linker='ldqnx.so' 30312d19872aSmrg ;; 30322d19872aSmrg 30332f76b07dSmrgopenbsd*) 30342d19872aSmrg version_type=sunos 30352d19872aSmrg sys_lib_dlsearch_path_spec=/usr/lib 30362d19872aSmrg need_lib_prefix=no 30372d19872aSmrg if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then 30382d19872aSmrg need_version=no 30392d19872aSmrg else 30402d19872aSmrg need_version=yes 30412d19872aSmrg fi 30422d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' 30432d19872aSmrg finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' 30442d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 30452d19872aSmrg shlibpath_overrides_runpath=yes 30462d19872aSmrg ;; 30472d19872aSmrg 30482d19872aSmrgos2*) 30492d19872aSmrg libname_spec='$name' 30502d19872aSmrg version_type=windows 30512d19872aSmrg shrext_cmds=.dll 30522d19872aSmrg need_version=no 30532d19872aSmrg need_lib_prefix=no 30542d19872aSmrg # OS/2 can only load a DLL with a base name of 8 characters or less. 30552d19872aSmrg soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; 30562d19872aSmrg v=$($ECHO $release$versuffix | tr -d .-); 30572d19872aSmrg n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); 30582d19872aSmrg $ECHO $n$v`$shared_ext' 30592d19872aSmrg library_names_spec='${libname}_dll.$libext' 30602d19872aSmrg dynamic_linker='OS/2 ld.exe' 30612d19872aSmrg shlibpath_var=BEGINLIBPATH 30622d19872aSmrg sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" 30632d19872aSmrg sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 30642d19872aSmrg postinstall_cmds='base_file=`basename \$file`~ 30652d19872aSmrg dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ 30662d19872aSmrg dldir=$destdir/`dirname \$dlpath`~ 30672d19872aSmrg test -d \$dldir || mkdir -p \$dldir~ 30682d19872aSmrg $install_prog $dir/$dlname \$dldir/$dlname~ 30692d19872aSmrg chmod a+x \$dldir/$dlname~ 30702d19872aSmrg if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then 30712d19872aSmrg eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; 30722d19872aSmrg fi' 30732d19872aSmrg postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ 30742d19872aSmrg dlpath=$dir/\$dldll~ 30752d19872aSmrg $RM \$dlpath' 30762d19872aSmrg ;; 30772d19872aSmrg 30782d19872aSmrgosf3* | osf4* | osf5*) 30792d19872aSmrg version_type=osf 30802d19872aSmrg need_lib_prefix=no 30812d19872aSmrg need_version=no 30822d19872aSmrg soname_spec='$libname$release$shared_ext$major' 30832d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 30842d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 30852d19872aSmrg sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" 30862d19872aSmrg sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec 30872d19872aSmrg ;; 30882d19872aSmrg 30892d19872aSmrgrdos*) 30902d19872aSmrg dynamic_linker=no 30912d19872aSmrg ;; 30922d19872aSmrg 30932f76b07dSmrgserenity*) 30942f76b07dSmrg version_type=linux # correct to gnu/linux during the next big refactor 30952f76b07dSmrg need_lib_prefix=no 30962f76b07dSmrg need_version=no 30972f76b07dSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 30982f76b07dSmrg soname_spec='$libname$release$shared_ext$major' 30992f76b07dSmrg shlibpath_var=LD_LIBRARY_PATH 31002f76b07dSmrg shlibpath_overrides_runpath=no 31012f76b07dSmrg dynamic_linker='SerenityOS LibELF' 31022f76b07dSmrg ;; 31032f76b07dSmrg 31042d19872aSmrgsolaris*) 31052d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 31062d19872aSmrg need_lib_prefix=no 31072d19872aSmrg need_version=no 31082d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 31092d19872aSmrg soname_spec='$libname$release$shared_ext$major' 31102d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 31112d19872aSmrg shlibpath_overrides_runpath=yes 31122d19872aSmrg hardcode_into_libs=yes 31132d19872aSmrg # ldd complains unless libraries are executable 31142d19872aSmrg postinstall_cmds='chmod +x $lib' 31152d19872aSmrg ;; 31162d19872aSmrg 31172d19872aSmrgsunos4*) 31182d19872aSmrg version_type=sunos 31192d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' 31202d19872aSmrg finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' 31212d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 31222d19872aSmrg shlibpath_overrides_runpath=yes 31232d19872aSmrg if test yes = "$with_gnu_ld"; then 31242d19872aSmrg need_lib_prefix=no 31252d19872aSmrg fi 31262d19872aSmrg need_version=yes 31272d19872aSmrg ;; 31282d19872aSmrg 31292d19872aSmrgsysv4 | sysv4.3*) 31302d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 31312d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 31322d19872aSmrg soname_spec='$libname$release$shared_ext$major' 31332d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 31342d19872aSmrg case $host_vendor in 31352d19872aSmrg sni) 31362d19872aSmrg shlibpath_overrides_runpath=no 31372d19872aSmrg need_lib_prefix=no 31382d19872aSmrg runpath_var=LD_RUN_PATH 31392d19872aSmrg ;; 31402d19872aSmrg siemens) 31412d19872aSmrg need_lib_prefix=no 31422d19872aSmrg ;; 31432d19872aSmrg motorola) 31442d19872aSmrg need_lib_prefix=no 31452d19872aSmrg need_version=no 31462d19872aSmrg shlibpath_overrides_runpath=no 31472d19872aSmrg sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' 31482d19872aSmrg ;; 31492d19872aSmrg esac 31502d19872aSmrg ;; 31512d19872aSmrg 31522d19872aSmrgsysv4*MP*) 31532d19872aSmrg if test -d /usr/nec; then 31542d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 31552d19872aSmrg library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' 31562d19872aSmrg soname_spec='$libname$shared_ext.$major' 31572d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 31582d19872aSmrg fi 31592d19872aSmrg ;; 31602d19872aSmrg 31612d19872aSmrgsysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) 31622d19872aSmrg version_type=sco 31632d19872aSmrg need_lib_prefix=no 31642d19872aSmrg need_version=no 31652d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' 31662d19872aSmrg soname_spec='$libname$release$shared_ext$major' 31672d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 31682d19872aSmrg shlibpath_overrides_runpath=yes 31692d19872aSmrg hardcode_into_libs=yes 31702d19872aSmrg if test yes = "$with_gnu_ld"; then 31712d19872aSmrg sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' 31722d19872aSmrg else 31732d19872aSmrg sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' 31742d19872aSmrg case $host_os in 31752d19872aSmrg sco3.2v5*) 31762d19872aSmrg sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" 31772d19872aSmrg ;; 31782d19872aSmrg esac 31792d19872aSmrg fi 31802d19872aSmrg sys_lib_dlsearch_path_spec='/usr/lib' 31812d19872aSmrg ;; 31822d19872aSmrg 31832d19872aSmrgtpf*) 31842d19872aSmrg # TPF is a cross-target only. Preferred cross-host = GNU/Linux. 31852d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 31862d19872aSmrg need_lib_prefix=no 31872d19872aSmrg need_version=no 31882d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 31892d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 31902d19872aSmrg shlibpath_overrides_runpath=no 31912d19872aSmrg hardcode_into_libs=yes 31922d19872aSmrg ;; 31932d19872aSmrg 31942d19872aSmrguts4*) 31952d19872aSmrg version_type=linux # correct to gnu/linux during the next big refactor 31962d19872aSmrg library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' 31972d19872aSmrg soname_spec='$libname$release$shared_ext$major' 31982d19872aSmrg shlibpath_var=LD_LIBRARY_PATH 31992d19872aSmrg ;; 32002d19872aSmrg 32012f76b07dSmrgemscripten*) 32022f76b07dSmrg version_type=none 32032f76b07dSmrg need_lib_prefix=no 32042f76b07dSmrg need_version=no 32052f76b07dSmrg library_names_spec='$libname$release$shared_ext' 32062f76b07dSmrg soname_spec='$libname$release$shared_ext' 32072f76b07dSmrg finish_cmds= 32082f76b07dSmrg dynamic_linker="Emscripten linker" 32092f76b07dSmrg _LT_COMPILER_PIC($1)='-fPIC' 32102f76b07dSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib' 32112f76b07dSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib -s EXPORTED_FUNCTIONS=@$output_objdir/$soname.expsym' 32122f76b07dSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 32132f76b07dSmrg _LT_TAGVAR(no_undefined_flag, $1)= 32142f76b07dSmrg ;; 32152f76b07dSmrg 32162d19872aSmrg*) 32172d19872aSmrg dynamic_linker=no 32182d19872aSmrg ;; 32192d19872aSmrgesac 32202d19872aSmrgAC_MSG_RESULT([$dynamic_linker]) 32212d19872aSmrgtest no = "$dynamic_linker" && can_build_shared=no 32222d19872aSmrg 32232d19872aSmrgvariables_saved_for_relink="PATH $shlibpath_var $runpath_var" 32242d19872aSmrgif test yes = "$GCC"; then 32252d19872aSmrg variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" 32262d19872aSmrgfi 32272d19872aSmrg 32282d19872aSmrgif test set = "${lt_cv_sys_lib_search_path_spec+set}"; then 32292d19872aSmrg sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec 32302d19872aSmrgfi 32312d19872aSmrg 32322d19872aSmrgif test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then 32332d19872aSmrg sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec 32342d19872aSmrgfi 32352d19872aSmrg 32362d19872aSmrg# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... 32372d19872aSmrgconfigure_time_dlsearch_path=$sys_lib_dlsearch_path_spec 32382d19872aSmrg 32392d19872aSmrg# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code 32402d19872aSmrgfunc_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" 32412d19872aSmrg 32422d19872aSmrg# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool 32432d19872aSmrgconfigure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH 32442d19872aSmrg 32452d19872aSmrg_LT_DECL([], [variables_saved_for_relink], [1], 32462d19872aSmrg [Variables whose values should be saved in libtool wrapper scripts and 32472d19872aSmrg restored at link time]) 32482d19872aSmrg_LT_DECL([], [need_lib_prefix], [0], 32492d19872aSmrg [Do we need the "lib" prefix for modules?]) 32502d19872aSmrg_LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) 32512d19872aSmrg_LT_DECL([], [version_type], [0], [Library versioning type]) 32522d19872aSmrg_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) 32532d19872aSmrg_LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) 32542d19872aSmrg_LT_DECL([], [shlibpath_overrides_runpath], [0], 32552d19872aSmrg [Is shlibpath searched before the hard-coded library search path?]) 32562d19872aSmrg_LT_DECL([], [libname_spec], [1], [Format of library name prefix]) 32572d19872aSmrg_LT_DECL([], [library_names_spec], [1], 32582d19872aSmrg [[List of archive names. First name is the real one, the rest are links. 32592d19872aSmrg The last name is the one that the linker finds with -lNAME]]) 32602d19872aSmrg_LT_DECL([], [soname_spec], [1], 32612d19872aSmrg [[The coded name of the library, if different from the real name]]) 32622d19872aSmrg_LT_DECL([], [install_override_mode], [1], 32632d19872aSmrg [Permission mode override for installation of shared libraries]) 32642d19872aSmrg_LT_DECL([], [postinstall_cmds], [2], 32652d19872aSmrg [Command to use after installation of a shared archive]) 32662d19872aSmrg_LT_DECL([], [postuninstall_cmds], [2], 32672d19872aSmrg [Command to use after uninstallation of a shared archive]) 32682d19872aSmrg_LT_DECL([], [finish_cmds], [2], 32692d19872aSmrg [Commands used to finish a libtool library installation in a directory]) 32702d19872aSmrg_LT_DECL([], [finish_eval], [1], 32712d19872aSmrg [[As "finish_cmds", except a single script fragment to be evaled but 32722d19872aSmrg not shown]]) 32732d19872aSmrg_LT_DECL([], [hardcode_into_libs], [0], 32742d19872aSmrg [Whether we should hardcode library paths into libraries]) 32752d19872aSmrg_LT_DECL([], [sys_lib_search_path_spec], [2], 32762d19872aSmrg [Compile-time system search path for libraries]) 32772d19872aSmrg_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2], 32782d19872aSmrg [Detected run-time system search path for libraries]) 32792d19872aSmrg_LT_DECL([], [configure_time_lt_sys_library_path], [2], 32802d19872aSmrg [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) 32812d19872aSmrg])# _LT_SYS_DYNAMIC_LINKER 32822d19872aSmrg 32832d19872aSmrg 32842d19872aSmrg# _LT_PATH_TOOL_PREFIX(TOOL) 32852d19872aSmrg# -------------------------- 32862d19872aSmrg# find a file program that can recognize shared library 32872d19872aSmrgAC_DEFUN([_LT_PATH_TOOL_PREFIX], 32882d19872aSmrg[m4_require([_LT_DECL_EGREP])dnl 32892d19872aSmrgAC_MSG_CHECKING([for $1]) 32902d19872aSmrgAC_CACHE_VAL(lt_cv_path_MAGIC_CMD, 32912d19872aSmrg[case $MAGIC_CMD in 32922d19872aSmrg[[\\/*] | ?:[\\/]*]) 32932d19872aSmrg lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. 32942d19872aSmrg ;; 32952d19872aSmrg*) 32962d19872aSmrg lt_save_MAGIC_CMD=$MAGIC_CMD 32972d19872aSmrg lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR 32982d19872aSmrgdnl $ac_dummy forces splitting on constant user-supplied paths. 32992d19872aSmrgdnl POSIX.2 word splitting is done only on the output of word expansions, 33002d19872aSmrgdnl not every word. This closes a longstanding sh security hole. 33012d19872aSmrg ac_dummy="m4_if([$2], , $PATH, [$2])" 33022d19872aSmrg for ac_dir in $ac_dummy; do 33032d19872aSmrg IFS=$lt_save_ifs 33042d19872aSmrg test -z "$ac_dir" && ac_dir=. 33052d19872aSmrg if test -f "$ac_dir/$1"; then 33062d19872aSmrg lt_cv_path_MAGIC_CMD=$ac_dir/"$1" 33072d19872aSmrg if test -n "$file_magic_test_file"; then 33082d19872aSmrg case $deplibs_check_method in 33092d19872aSmrg "file_magic "*) 33102d19872aSmrg file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` 33112d19872aSmrg MAGIC_CMD=$lt_cv_path_MAGIC_CMD 33122d19872aSmrg if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | 33132d19872aSmrg $EGREP "$file_magic_regex" > /dev/null; then 33142d19872aSmrg : 33152d19872aSmrg else 33162d19872aSmrg cat <<_LT_EOF 1>&2 33172d19872aSmrg 33182d19872aSmrg*** Warning: the command libtool uses to detect shared libraries, 33192d19872aSmrg*** $file_magic_cmd, produces output that libtool cannot recognize. 33202d19872aSmrg*** The result is that libtool may fail to recognize shared libraries 33212d19872aSmrg*** as such. This will affect the creation of libtool libraries that 33222d19872aSmrg*** depend on shared libraries, but programs linked with such libtool 33232d19872aSmrg*** libraries will work regardless of this problem. Nevertheless, you 33242d19872aSmrg*** may want to report the problem to your system manager and/or to 33252d19872aSmrg*** bug-libtool@gnu.org 33262d19872aSmrg 33272d19872aSmrg_LT_EOF 33282d19872aSmrg fi ;; 33292d19872aSmrg esac 33302d19872aSmrg fi 33312d19872aSmrg break 33322d19872aSmrg fi 33332d19872aSmrg done 33342d19872aSmrg IFS=$lt_save_ifs 33352d19872aSmrg MAGIC_CMD=$lt_save_MAGIC_CMD 33362d19872aSmrg ;; 33372d19872aSmrgesac]) 33382d19872aSmrgMAGIC_CMD=$lt_cv_path_MAGIC_CMD 33392d19872aSmrgif test -n "$MAGIC_CMD"; then 33402d19872aSmrg AC_MSG_RESULT($MAGIC_CMD) 33412d19872aSmrgelse 33422d19872aSmrg AC_MSG_RESULT(no) 33432d19872aSmrgfi 33442d19872aSmrg_LT_DECL([], [MAGIC_CMD], [0], 33452d19872aSmrg [Used to examine libraries when file_magic_cmd begins with "file"])dnl 33462d19872aSmrg])# _LT_PATH_TOOL_PREFIX 33472d19872aSmrg 33482d19872aSmrg# Old name: 33492d19872aSmrgAU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) 33502d19872aSmrgdnl aclocal-1.4 backwards compatibility: 33512d19872aSmrgdnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) 33522d19872aSmrg 33532d19872aSmrg 33542d19872aSmrg# _LT_PATH_MAGIC 33552d19872aSmrg# -------------- 33562d19872aSmrg# find a file program that can recognize a shared library 33572d19872aSmrgm4_defun([_LT_PATH_MAGIC], 33582d19872aSmrg[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) 33592d19872aSmrgif test -z "$lt_cv_path_MAGIC_CMD"; then 33602d19872aSmrg if test -n "$ac_tool_prefix"; then 33612d19872aSmrg _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) 33622d19872aSmrg else 33632d19872aSmrg MAGIC_CMD=: 33642d19872aSmrg fi 33652d19872aSmrgfi 33662d19872aSmrg])# _LT_PATH_MAGIC 33672d19872aSmrg 33682d19872aSmrg 33692d19872aSmrg# LT_PATH_LD 33702d19872aSmrg# ---------- 33712d19872aSmrg# find the pathname to the GNU or non-GNU linker 33722d19872aSmrgAC_DEFUN([LT_PATH_LD], 33732d19872aSmrg[AC_REQUIRE([AC_PROG_CC])dnl 33742d19872aSmrgAC_REQUIRE([AC_CANONICAL_HOST])dnl 33752d19872aSmrgAC_REQUIRE([AC_CANONICAL_BUILD])dnl 33762d19872aSmrgm4_require([_LT_DECL_SED])dnl 33772d19872aSmrgm4_require([_LT_DECL_EGREP])dnl 33782d19872aSmrgm4_require([_LT_PROG_ECHO_BACKSLASH])dnl 33792d19872aSmrg 33802d19872aSmrgAC_ARG_WITH([gnu-ld], 33812d19872aSmrg [AS_HELP_STRING([--with-gnu-ld], 33822d19872aSmrg [assume the C compiler uses GNU ld @<:@default=no@:>@])], 33832d19872aSmrg [test no = "$withval" || with_gnu_ld=yes], 33842d19872aSmrg [with_gnu_ld=no])dnl 33852d19872aSmrg 33862d19872aSmrgac_prog=ld 33872d19872aSmrgif test yes = "$GCC"; then 33882d19872aSmrg # Check if gcc -print-prog-name=ld gives a path. 33892d19872aSmrg AC_MSG_CHECKING([for ld used by $CC]) 33902d19872aSmrg case $host in 33912f76b07dSmrg *-*-mingw* | *-*-windows*) 33922d19872aSmrg # gcc leaves a trailing carriage return, which upsets mingw 33932d19872aSmrg ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; 33942d19872aSmrg *) 33952d19872aSmrg ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; 33962d19872aSmrg esac 33972d19872aSmrg case $ac_prog in 33982d19872aSmrg # Accept absolute paths. 33992d19872aSmrg [[\\/]]* | ?:[[\\/]]*) 34002d19872aSmrg re_direlt='/[[^/]][[^/]]*/\.\./' 34012d19872aSmrg # Canonicalize the pathname of ld 34022d19872aSmrg ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` 34032d19872aSmrg while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do 34042d19872aSmrg ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` 34052d19872aSmrg done 34062d19872aSmrg test -z "$LD" && LD=$ac_prog 34072d19872aSmrg ;; 34082d19872aSmrg "") 34092d19872aSmrg # If it fails, then pretend we aren't using GCC. 34102d19872aSmrg ac_prog=ld 34112d19872aSmrg ;; 34122d19872aSmrg *) 34132d19872aSmrg # If it is relative, then search for the first ld in PATH. 34142d19872aSmrg with_gnu_ld=unknown 34152d19872aSmrg ;; 34162d19872aSmrg esac 34172d19872aSmrgelif test yes = "$with_gnu_ld"; then 34182d19872aSmrg AC_MSG_CHECKING([for GNU ld]) 34192d19872aSmrgelse 34202d19872aSmrg AC_MSG_CHECKING([for non-GNU ld]) 34212d19872aSmrgfi 34222d19872aSmrgAC_CACHE_VAL(lt_cv_path_LD, 34232d19872aSmrg[if test -z "$LD"; then 34242d19872aSmrg lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR 34252d19872aSmrg for ac_dir in $PATH; do 34262d19872aSmrg IFS=$lt_save_ifs 34272d19872aSmrg test -z "$ac_dir" && ac_dir=. 34282d19872aSmrg if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then 34292d19872aSmrg lt_cv_path_LD=$ac_dir/$ac_prog 34302d19872aSmrg # Check to see if the program is GNU ld. I'd rather use --version, 34312d19872aSmrg # but apparently some variants of GNU ld only accept -v. 34322d19872aSmrg # Break only if it was the GNU/non-GNU ld that we prefer. 34332d19872aSmrg case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in 34342d19872aSmrg *GNU* | *'with BFD'*) 34352d19872aSmrg test no != "$with_gnu_ld" && break 34362d19872aSmrg ;; 34372d19872aSmrg *) 34382d19872aSmrg test yes != "$with_gnu_ld" && break 34392d19872aSmrg ;; 34402d19872aSmrg esac 34412d19872aSmrg fi 34422d19872aSmrg done 34432d19872aSmrg IFS=$lt_save_ifs 34442d19872aSmrgelse 34452d19872aSmrg lt_cv_path_LD=$LD # Let the user override the test with a path. 34462d19872aSmrgfi]) 34472d19872aSmrgLD=$lt_cv_path_LD 34482d19872aSmrgif test -n "$LD"; then 34492d19872aSmrg AC_MSG_RESULT($LD) 34502d19872aSmrgelse 34512d19872aSmrg AC_MSG_RESULT(no) 34522d19872aSmrgfi 34532d19872aSmrgtest -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) 34542d19872aSmrg_LT_PATH_LD_GNU 34552d19872aSmrgAC_SUBST([LD]) 34562d19872aSmrg 34572d19872aSmrg_LT_TAGDECL([], [LD], [1], [The linker used to build libraries]) 34582d19872aSmrg])# LT_PATH_LD 34592d19872aSmrg 34602d19872aSmrg# Old names: 34612d19872aSmrgAU_ALIAS([AM_PROG_LD], [LT_PATH_LD]) 34622d19872aSmrgAU_ALIAS([AC_PROG_LD], [LT_PATH_LD]) 34632d19872aSmrgdnl aclocal-1.4 backwards compatibility: 34642d19872aSmrgdnl AC_DEFUN([AM_PROG_LD], []) 34652d19872aSmrgdnl AC_DEFUN([AC_PROG_LD], []) 34662d19872aSmrg 34672d19872aSmrg 34682d19872aSmrg# _LT_PATH_LD_GNU 34692d19872aSmrg#- -------------- 34702d19872aSmrgm4_defun([_LT_PATH_LD_GNU], 34712d19872aSmrg[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, 34722d19872aSmrg[# I'd rather use --version here, but apparently some GNU lds only accept -v. 34732d19872aSmrgcase `$LD -v 2>&1 </dev/null` in 34742d19872aSmrg*GNU* | *'with BFD'*) 34752d19872aSmrg lt_cv_prog_gnu_ld=yes 34762d19872aSmrg ;; 34772d19872aSmrg*) 34782d19872aSmrg lt_cv_prog_gnu_ld=no 34792d19872aSmrg ;; 34802d19872aSmrgesac]) 34812d19872aSmrgwith_gnu_ld=$lt_cv_prog_gnu_ld 34822d19872aSmrg])# _LT_PATH_LD_GNU 34832d19872aSmrg 34842d19872aSmrg 34852d19872aSmrg# _LT_CMD_RELOAD 34862d19872aSmrg# -------------- 34872d19872aSmrg# find reload flag for linker 34882d19872aSmrg# -- PORTME Some linkers may need a different reload flag. 34892d19872aSmrgm4_defun([_LT_CMD_RELOAD], 34902d19872aSmrg[AC_CACHE_CHECK([for $LD option to reload object files], 34912d19872aSmrg lt_cv_ld_reload_flag, 34922d19872aSmrg [lt_cv_ld_reload_flag='-r']) 34932d19872aSmrgreload_flag=$lt_cv_ld_reload_flag 34942d19872aSmrgcase $reload_flag in 34952d19872aSmrg"" | " "*) ;; 34962d19872aSmrg*) reload_flag=" $reload_flag" ;; 34972d19872aSmrgesac 34982d19872aSmrgreload_cmds='$LD$reload_flag -o $output$reload_objs' 34992d19872aSmrgcase $host_os in 35002f76b07dSmrg cygwin* | mingw* | windows* | pw32* | cegcc*) 35012d19872aSmrg if test yes != "$GCC"; then 35022d19872aSmrg reload_cmds=false 35032d19872aSmrg fi 35042d19872aSmrg ;; 35052d19872aSmrg darwin*) 35062d19872aSmrg if test yes = "$GCC"; then 35072d19872aSmrg reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' 35082d19872aSmrg else 35092d19872aSmrg reload_cmds='$LD$reload_flag -o $output$reload_objs' 35102d19872aSmrg fi 35112d19872aSmrg ;; 35122d19872aSmrgesac 35132d19872aSmrg_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl 35142d19872aSmrg_LT_TAGDECL([], [reload_cmds], [2])dnl 35152d19872aSmrg])# _LT_CMD_RELOAD 35162d19872aSmrg 35172d19872aSmrg 35182d19872aSmrg# _LT_PATH_DD 35192d19872aSmrg# ----------- 35202d19872aSmrg# find a working dd 35212d19872aSmrgm4_defun([_LT_PATH_DD], 35222d19872aSmrg[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD], 35232d19872aSmrg[printf 0123456789abcdef0123456789abcdef >conftest.i 35242d19872aSmrgcat conftest.i conftest.i >conftest2.i 35252d19872aSmrg: ${lt_DD:=$DD} 35262d19872aSmrgAC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd], 35272d19872aSmrg[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then 35282d19872aSmrg cmp -s conftest.i conftest.out \ 35292d19872aSmrg && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: 35302d19872aSmrgfi]) 35312d19872aSmrgrm -f conftest.i conftest2.i conftest.out]) 35322d19872aSmrg])# _LT_PATH_DD 35332d19872aSmrg 35342d19872aSmrg 35352d19872aSmrg# _LT_CMD_TRUNCATE 35362d19872aSmrg# ---------------- 35372d19872aSmrg# find command to truncate a binary pipe 35382d19872aSmrgm4_defun([_LT_CMD_TRUNCATE], 35392d19872aSmrg[m4_require([_LT_PATH_DD]) 35402d19872aSmrgAC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin], 35412d19872aSmrg[printf 0123456789abcdef0123456789abcdef >conftest.i 35422d19872aSmrgcat conftest.i conftest.i >conftest2.i 35432d19872aSmrglt_cv_truncate_bin= 35442d19872aSmrgif "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then 35452d19872aSmrg cmp -s conftest.i conftest.out \ 35462d19872aSmrg && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" 35472d19872aSmrgfi 35482d19872aSmrgrm -f conftest.i conftest2.i conftest.out 35492d19872aSmrgtest -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"]) 35502d19872aSmrg_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1], 35512d19872aSmrg [Command to truncate a binary pipe]) 35522d19872aSmrg])# _LT_CMD_TRUNCATE 35532d19872aSmrg 35542d19872aSmrg 35552d19872aSmrg# _LT_CHECK_MAGIC_METHOD 35562d19872aSmrg# ---------------------- 35572d19872aSmrg# how to check for library dependencies 35582d19872aSmrg# -- PORTME fill in with the dynamic library characteristics 35592d19872aSmrgm4_defun([_LT_CHECK_MAGIC_METHOD], 35602d19872aSmrg[m4_require([_LT_DECL_EGREP]) 35612d19872aSmrgm4_require([_LT_DECL_OBJDUMP]) 35622d19872aSmrgAC_CACHE_CHECK([how to recognize dependent libraries], 35632d19872aSmrglt_cv_deplibs_check_method, 35642d19872aSmrg[lt_cv_file_magic_cmd='$MAGIC_CMD' 35652d19872aSmrglt_cv_file_magic_test_file= 35662d19872aSmrglt_cv_deplibs_check_method='unknown' 35672d19872aSmrg# Need to set the preceding variable on all platforms that support 35682d19872aSmrg# interlibrary dependencies. 35692d19872aSmrg# 'none' -- dependencies not supported. 35702d19872aSmrg# 'unknown' -- same as none, but documents that we really don't know. 35712d19872aSmrg# 'pass_all' -- all dependencies passed with no checks. 35722d19872aSmrg# 'file_magic [[regex]]' -- check by looking for files in library path 35732d19872aSmrg# that responds to the $file_magic_cmd with a given extended regex. 35742d19872aSmrg# If you have 'file' or equivalent on your system and you're not sure 35752d19872aSmrg# whether 'pass_all' will *always* work, you probably want this one. 35762d19872aSmrg 35772d19872aSmrgcase $host_os in 35782d19872aSmrgaix[[4-9]]*) 35792d19872aSmrg lt_cv_deplibs_check_method=pass_all 35802d19872aSmrg ;; 35812d19872aSmrg 35822d19872aSmrgbeos*) 35832d19872aSmrg lt_cv_deplibs_check_method=pass_all 35842d19872aSmrg ;; 35852d19872aSmrg 35862d19872aSmrgbsdi[[45]]*) 35872d19872aSmrg lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' 35882d19872aSmrg lt_cv_file_magic_cmd='$FILECMD -L' 35892d19872aSmrg lt_cv_file_magic_test_file=/shlib/libc.so 35902d19872aSmrg ;; 35912d19872aSmrg 35922d19872aSmrgcygwin*) 35932d19872aSmrg # func_win32_libid is a shell function defined in ltmain.sh 35942d19872aSmrg lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' 35952d19872aSmrg lt_cv_file_magic_cmd='func_win32_libid' 35962d19872aSmrg ;; 35972d19872aSmrg 35982f76b07dSmrgmingw* | windows* | pw32*) 35992d19872aSmrg # Base MSYS/MinGW do not provide the 'file' command needed by 36002d19872aSmrg # func_win32_libid shell function, so use a weaker test based on 'objdump', 36012d19872aSmrg # unless we find 'file', for example because we are cross-compiling. 36022d19872aSmrg if ( file / ) >/dev/null 2>&1; then 36032d19872aSmrg lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' 36042d19872aSmrg lt_cv_file_magic_cmd='func_win32_libid' 36052d19872aSmrg else 36062d19872aSmrg # Keep this pattern in sync with the one in func_win32_libid. 36072f76b07dSmrg lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)' 36082d19872aSmrg lt_cv_file_magic_cmd='$OBJDUMP -f' 36092d19872aSmrg fi 36102d19872aSmrg ;; 36112d19872aSmrg 36122d19872aSmrgcegcc*) 36132d19872aSmrg # use the weaker test based on 'objdump'. See mingw*. 36142d19872aSmrg lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' 36152d19872aSmrg lt_cv_file_magic_cmd='$OBJDUMP -f' 36162d19872aSmrg ;; 36172d19872aSmrg 36182d19872aSmrgdarwin* | rhapsody*) 36192d19872aSmrg lt_cv_deplibs_check_method=pass_all 36202d19872aSmrg ;; 36212d19872aSmrg 36222d19872aSmrgfreebsd* | dragonfly* | midnightbsd*) 36232d19872aSmrg if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then 36242d19872aSmrg case $host_cpu in 36252d19872aSmrg i*86 ) 36262d19872aSmrg # Not sure whether the presence of OpenBSD here was a mistake. 36272d19872aSmrg # Let's accept both of them until this is cleared up. 36282d19872aSmrg lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' 36292d19872aSmrg lt_cv_file_magic_cmd=$FILECMD 36302d19872aSmrg lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` 36312d19872aSmrg ;; 36322d19872aSmrg esac 36332d19872aSmrg else 36342d19872aSmrg lt_cv_deplibs_check_method=pass_all 36352d19872aSmrg fi 36362d19872aSmrg ;; 36372d19872aSmrg 36382d19872aSmrghaiku*) 36392d19872aSmrg lt_cv_deplibs_check_method=pass_all 36402d19872aSmrg ;; 36412d19872aSmrg 36422d19872aSmrghpux10.20* | hpux11*) 36432d19872aSmrg lt_cv_file_magic_cmd=$FILECMD 36442d19872aSmrg case $host_cpu in 36452d19872aSmrg ia64*) 36462d19872aSmrg lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' 36472d19872aSmrg lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so 36482d19872aSmrg ;; 36492d19872aSmrg hppa*64*) 36502d19872aSmrg [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]'] 36512d19872aSmrg lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl 36522d19872aSmrg ;; 36532d19872aSmrg *) 36542d19872aSmrg lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library' 36552d19872aSmrg lt_cv_file_magic_test_file=/usr/lib/libc.sl 36562d19872aSmrg ;; 36572d19872aSmrg esac 36582d19872aSmrg ;; 36592d19872aSmrg 36602d19872aSmrginterix[[3-9]]*) 36612d19872aSmrg # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here 36622d19872aSmrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' 36632d19872aSmrg ;; 36642d19872aSmrg 36652d19872aSmrgirix5* | irix6* | nonstopux*) 36662d19872aSmrg case $LD in 36672d19872aSmrg *-32|*"-32 ") libmagic=32-bit;; 36682d19872aSmrg *-n32|*"-n32 ") libmagic=N32;; 36692d19872aSmrg *-64|*"-64 ") libmagic=64-bit;; 36702d19872aSmrg *) libmagic=never-match;; 36712d19872aSmrg esac 36722d19872aSmrg lt_cv_deplibs_check_method=pass_all 36732d19872aSmrg ;; 36742d19872aSmrg 36752d19872aSmrg# This must be glibc/ELF. 36762d19872aSmrglinux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 36772d19872aSmrg lt_cv_deplibs_check_method=pass_all 36782d19872aSmrg ;; 36792d19872aSmrg 36802f76b07dSmrg*-mlibc) 36812f76b07dSmrg lt_cv_deplibs_check_method=pass_all 36822f76b07dSmrg ;; 36832f76b07dSmrg 36842f76b07dSmrgnetbsd* | netbsdelf*-gnu) 36852d19872aSmrg if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then 36862d19872aSmrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' 36872d19872aSmrg else 36882d19872aSmrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' 36892d19872aSmrg fi 36902d19872aSmrg ;; 36912d19872aSmrg 36922d19872aSmrgnewos6*) 36932d19872aSmrg lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' 36942d19872aSmrg lt_cv_file_magic_cmd=$FILECMD 36952d19872aSmrg lt_cv_file_magic_test_file=/usr/lib/libnls.so 36962d19872aSmrg ;; 36972d19872aSmrg 36982d19872aSmrg*nto* | *qnx*) 36992d19872aSmrg lt_cv_deplibs_check_method=pass_all 37002d19872aSmrg ;; 37012d19872aSmrg 37022f76b07dSmrgopenbsd*) 37032d19872aSmrg if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then 37042d19872aSmrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' 37052d19872aSmrg else 37062d19872aSmrg lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' 37072d19872aSmrg fi 37082d19872aSmrg ;; 37092d19872aSmrg 37102d19872aSmrgosf3* | osf4* | osf5*) 37112d19872aSmrg lt_cv_deplibs_check_method=pass_all 37122d19872aSmrg ;; 37132d19872aSmrg 37142d19872aSmrgrdos*) 37152d19872aSmrg lt_cv_deplibs_check_method=pass_all 37162d19872aSmrg ;; 37172d19872aSmrg 37182f76b07dSmrgserenity*) 37192f76b07dSmrg lt_cv_deplibs_check_method=pass_all 37202f76b07dSmrg ;; 37212f76b07dSmrg 37222d19872aSmrgsolaris*) 37232d19872aSmrg lt_cv_deplibs_check_method=pass_all 37242d19872aSmrg ;; 37252d19872aSmrg 37262d19872aSmrgsysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) 37272d19872aSmrg lt_cv_deplibs_check_method=pass_all 37282d19872aSmrg ;; 37292d19872aSmrg 37302d19872aSmrgsysv4 | sysv4.3*) 37312d19872aSmrg case $host_vendor in 37322d19872aSmrg motorola) 37332d19872aSmrg 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]]' 37342d19872aSmrg lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` 37352d19872aSmrg ;; 37362d19872aSmrg ncr) 37372d19872aSmrg lt_cv_deplibs_check_method=pass_all 37382d19872aSmrg ;; 37392d19872aSmrg sequent) 37402d19872aSmrg lt_cv_file_magic_cmd='/bin/file' 37412d19872aSmrg lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' 37422d19872aSmrg ;; 37432d19872aSmrg sni) 37442d19872aSmrg lt_cv_file_magic_cmd='/bin/file' 37452d19872aSmrg lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" 37462d19872aSmrg lt_cv_file_magic_test_file=/lib/libc.so 37472d19872aSmrg ;; 37482d19872aSmrg siemens) 37492d19872aSmrg lt_cv_deplibs_check_method=pass_all 37502d19872aSmrg ;; 37512d19872aSmrg pc) 37522d19872aSmrg lt_cv_deplibs_check_method=pass_all 37532d19872aSmrg ;; 37542d19872aSmrg esac 37552d19872aSmrg ;; 37562d19872aSmrg 37572d19872aSmrgtpf*) 37582d19872aSmrg lt_cv_deplibs_check_method=pass_all 37592d19872aSmrg ;; 37602d19872aSmrgos2*) 37612d19872aSmrg lt_cv_deplibs_check_method=pass_all 37622d19872aSmrg ;; 37632d19872aSmrgesac 37642d19872aSmrg]) 37652d19872aSmrg 37662d19872aSmrgfile_magic_glob= 37672d19872aSmrgwant_nocaseglob=no 37682d19872aSmrgif test "$build" = "$host"; then 37692d19872aSmrg case $host_os in 37702f76b07dSmrg mingw* | windows* | pw32*) 37712d19872aSmrg if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then 37722d19872aSmrg want_nocaseglob=yes 37732d19872aSmrg else 37742d19872aSmrg file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` 37752d19872aSmrg fi 37762d19872aSmrg ;; 37772d19872aSmrg esac 37782d19872aSmrgfi 37792d19872aSmrg 37802d19872aSmrgfile_magic_cmd=$lt_cv_file_magic_cmd 37812d19872aSmrgdeplibs_check_method=$lt_cv_deplibs_check_method 37822d19872aSmrgtest -z "$deplibs_check_method" && deplibs_check_method=unknown 37832d19872aSmrg 37842d19872aSmrg_LT_DECL([], [deplibs_check_method], [1], 37852d19872aSmrg [Method to check whether dependent libraries are shared objects]) 37862d19872aSmrg_LT_DECL([], [file_magic_cmd], [1], 37872d19872aSmrg [Command to use when deplibs_check_method = "file_magic"]) 37882d19872aSmrg_LT_DECL([], [file_magic_glob], [1], 37892d19872aSmrg [How to find potential files when deplibs_check_method = "file_magic"]) 37902d19872aSmrg_LT_DECL([], [want_nocaseglob], [1], 37912d19872aSmrg [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) 37922d19872aSmrg])# _LT_CHECK_MAGIC_METHOD 37932d19872aSmrg 37942d19872aSmrg 37952d19872aSmrg# LT_PATH_NM 37962d19872aSmrg# ---------- 37972d19872aSmrg# find the pathname to a BSD- or MS-compatible name lister 37982d19872aSmrgAC_DEFUN([LT_PATH_NM], 37992d19872aSmrg[AC_REQUIRE([AC_PROG_CC])dnl 38002d19872aSmrgAC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, 38012d19872aSmrg[if test -n "$NM"; then 38022d19872aSmrg # Let the user override the test. 38032d19872aSmrg lt_cv_path_NM=$NM 38042d19872aSmrgelse 38052d19872aSmrg lt_nm_to_check=${ac_tool_prefix}nm 38062d19872aSmrg if test -n "$ac_tool_prefix" && test "$build" = "$host"; then 38072d19872aSmrg lt_nm_to_check="$lt_nm_to_check nm" 38082d19872aSmrg fi 38092d19872aSmrg for lt_tmp_nm in $lt_nm_to_check; do 38102d19872aSmrg lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR 38112d19872aSmrg for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do 38122d19872aSmrg IFS=$lt_save_ifs 38132d19872aSmrg test -z "$ac_dir" && ac_dir=. 38142d19872aSmrg tmp_nm=$ac_dir/$lt_tmp_nm 38152d19872aSmrg if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then 38162d19872aSmrg # Check to see if the nm accepts a BSD-compat flag. 38172d19872aSmrg # Adding the 'sed 1q' prevents false positives on HP-UX, which says: 38182d19872aSmrg # nm: unknown option "B" ignored 38192d19872aSmrg # Tru64's nm complains that /dev/null is an invalid object file 38202d19872aSmrg # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty 38212d19872aSmrg case $build_os in 38222f76b07dSmrg mingw* | windows*) lt_bad_file=conftest.nm/nofile ;; 38232d19872aSmrg *) lt_bad_file=/dev/null ;; 38242d19872aSmrg esac 38252d19872aSmrg case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in 38262d19872aSmrg *$lt_bad_file* | *'Invalid file or object type'*) 38272d19872aSmrg lt_cv_path_NM="$tmp_nm -B" 38282d19872aSmrg break 2 38292d19872aSmrg ;; 38302d19872aSmrg *) 38312d19872aSmrg case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in 38322d19872aSmrg */dev/null*) 38332d19872aSmrg lt_cv_path_NM="$tmp_nm -p" 38342d19872aSmrg break 2 38352d19872aSmrg ;; 38362d19872aSmrg *) 38372d19872aSmrg lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but 38382d19872aSmrg continue # so that we can try to find one that supports BSD flags 38392d19872aSmrg ;; 38402d19872aSmrg esac 38412d19872aSmrg ;; 38422d19872aSmrg esac 38432d19872aSmrg fi 38442d19872aSmrg done 38452d19872aSmrg IFS=$lt_save_ifs 38462d19872aSmrg done 38472d19872aSmrg : ${lt_cv_path_NM=no} 38482d19872aSmrgfi]) 38492d19872aSmrgif test no != "$lt_cv_path_NM"; then 38502d19872aSmrg NM=$lt_cv_path_NM 38512d19872aSmrgelse 38522d19872aSmrg # Didn't find any BSD compatible name lister, look for dumpbin. 38532d19872aSmrg if test -n "$DUMPBIN"; then : 38542d19872aSmrg # Let the user override the test. 38552d19872aSmrg else 38562d19872aSmrg AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) 38572d19872aSmrg case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in 38582d19872aSmrg *COFF*) 38592d19872aSmrg DUMPBIN="$DUMPBIN -symbols -headers" 38602d19872aSmrg ;; 38612d19872aSmrg *) 38622d19872aSmrg DUMPBIN=: 38632d19872aSmrg ;; 38642d19872aSmrg esac 38652d19872aSmrg fi 38662d19872aSmrg AC_SUBST([DUMPBIN]) 38672d19872aSmrg if test : != "$DUMPBIN"; then 38682d19872aSmrg NM=$DUMPBIN 38692d19872aSmrg fi 38702d19872aSmrgfi 38712d19872aSmrgtest -z "$NM" && NM=nm 38722d19872aSmrgAC_SUBST([NM]) 38732d19872aSmrg_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl 38742d19872aSmrg 38752d19872aSmrgAC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], 38762d19872aSmrg [lt_cv_nm_interface="BSD nm" 38772d19872aSmrg echo "int some_variable = 0;" > conftest.$ac_ext 38782d19872aSmrg (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) 38792d19872aSmrg (eval "$ac_compile" 2>conftest.err) 38802d19872aSmrg cat conftest.err >&AS_MESSAGE_LOG_FD 38812d19872aSmrg (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) 38822d19872aSmrg (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) 38832d19872aSmrg cat conftest.err >&AS_MESSAGE_LOG_FD 38842d19872aSmrg (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) 38852d19872aSmrg cat conftest.out >&AS_MESSAGE_LOG_FD 38862d19872aSmrg if $GREP 'External.*some_variable' conftest.out > /dev/null; then 38872d19872aSmrg lt_cv_nm_interface="MS dumpbin" 38882d19872aSmrg fi 38892d19872aSmrg rm -f conftest*]) 38902d19872aSmrg])# LT_PATH_NM 38912d19872aSmrg 38922d19872aSmrg# Old names: 38932d19872aSmrgAU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) 38942d19872aSmrgAU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) 38952d19872aSmrgdnl aclocal-1.4 backwards compatibility: 38962d19872aSmrgdnl AC_DEFUN([AM_PROG_NM], []) 38972d19872aSmrgdnl AC_DEFUN([AC_PROG_NM], []) 38982d19872aSmrg 38992d19872aSmrg# _LT_CHECK_SHAREDLIB_FROM_LINKLIB 39002d19872aSmrg# -------------------------------- 39012d19872aSmrg# how to determine the name of the shared library 39022d19872aSmrg# associated with a specific link library. 39032d19872aSmrg# -- PORTME fill in with the dynamic library characteristics 39042d19872aSmrgm4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], 39052d19872aSmrg[m4_require([_LT_DECL_EGREP]) 39062d19872aSmrgm4_require([_LT_DECL_OBJDUMP]) 39072d19872aSmrgm4_require([_LT_DECL_DLLTOOL]) 39082d19872aSmrgAC_CACHE_CHECK([how to associate runtime and link libraries], 39092d19872aSmrglt_cv_sharedlib_from_linklib_cmd, 39102d19872aSmrg[lt_cv_sharedlib_from_linklib_cmd='unknown' 39112d19872aSmrg 39122d19872aSmrgcase $host_os in 39132f76b07dSmrgcygwin* | mingw* | windows* | pw32* | cegcc*) 39142d19872aSmrg # two different shell functions defined in ltmain.sh; 39152d19872aSmrg # decide which one to use based on capabilities of $DLLTOOL 39162d19872aSmrg case `$DLLTOOL --help 2>&1` in 39172d19872aSmrg *--identify-strict*) 39182d19872aSmrg lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib 39192d19872aSmrg ;; 39202d19872aSmrg *) 39212d19872aSmrg lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback 39222d19872aSmrg ;; 39232d19872aSmrg esac 39242d19872aSmrg ;; 39252d19872aSmrg*) 39262d19872aSmrg # fallback: assume linklib IS sharedlib 39272d19872aSmrg lt_cv_sharedlib_from_linklib_cmd=$ECHO 39282d19872aSmrg ;; 39292d19872aSmrgesac 39302d19872aSmrg]) 39312d19872aSmrgsharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd 39322d19872aSmrgtest -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO 39332d19872aSmrg 39342d19872aSmrg_LT_DECL([], [sharedlib_from_linklib_cmd], [1], 39352d19872aSmrg [Command to associate shared and link libraries]) 39362d19872aSmrg])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB 39372d19872aSmrg 39382d19872aSmrg 39392d19872aSmrg# _LT_PATH_MANIFEST_TOOL 39402d19872aSmrg# ---------------------- 39412d19872aSmrg# locate the manifest tool 39422d19872aSmrgm4_defun([_LT_PATH_MANIFEST_TOOL], 39432d19872aSmrg[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) 39442d19872aSmrgtest -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt 39452f76b07dSmrgAC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_manifest_tool], 39462f76b07dSmrg [lt_cv_path_manifest_tool=no 39472d19872aSmrg echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD 39482d19872aSmrg $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out 39492d19872aSmrg cat conftest.err >&AS_MESSAGE_LOG_FD 39502d19872aSmrg if $GREP 'Manifest Tool' conftest.out > /dev/null; then 39512f76b07dSmrg lt_cv_path_manifest_tool=yes 39522d19872aSmrg fi 39532d19872aSmrg rm -f conftest*]) 39542f76b07dSmrgif test yes != "$lt_cv_path_manifest_tool"; then 39552d19872aSmrg MANIFEST_TOOL=: 39562d19872aSmrgfi 39572d19872aSmrg_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl 39582d19872aSmrg])# _LT_PATH_MANIFEST_TOOL 39592d19872aSmrg 39602d19872aSmrg 39612d19872aSmrg# _LT_DLL_DEF_P([FILE]) 39622d19872aSmrg# --------------------- 39632d19872aSmrg# True iff FILE is a Windows DLL '.def' file. 39642d19872aSmrg# Keep in sync with func_dll_def_p in the libtool script 39652d19872aSmrgAC_DEFUN([_LT_DLL_DEF_P], 39662d19872aSmrg[dnl 39672d19872aSmrg test DEF = "`$SED -n dnl 39682d19872aSmrg -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace 39692d19872aSmrg -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments 39702d19872aSmrg -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl 39712d19872aSmrg -e q dnl Only consider the first "real" line 39722d19872aSmrg $1`" dnl 39732d19872aSmrg])# _LT_DLL_DEF_P 39742d19872aSmrg 39752d19872aSmrg 39762d19872aSmrg# LT_LIB_M 39772d19872aSmrg# -------- 39782d19872aSmrg# check for math library 39792d19872aSmrgAC_DEFUN([LT_LIB_M], 39802d19872aSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl 39812d19872aSmrgLIBM= 39822d19872aSmrgcase $host in 39832f76b07dSmrg*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-mingw* | *-*-pw32* | *-*-darwin*) 39842d19872aSmrg # These system don't have libm, or don't need it 39852d19872aSmrg ;; 39862d19872aSmrg*-ncr-sysv4.3*) 39872d19872aSmrg AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw) 39882d19872aSmrg AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") 39892d19872aSmrg ;; 39902d19872aSmrg*) 39912d19872aSmrg AC_CHECK_LIB(m, cos, LIBM=-lm) 39922d19872aSmrg ;; 39932d19872aSmrgesac 39942d19872aSmrgAC_SUBST([LIBM]) 39952d19872aSmrg])# LT_LIB_M 39962d19872aSmrg 39972d19872aSmrg# Old name: 39982d19872aSmrgAU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) 39992d19872aSmrgdnl aclocal-1.4 backwards compatibility: 40002d19872aSmrgdnl AC_DEFUN([AC_CHECK_LIBM], []) 40012d19872aSmrg 40022d19872aSmrg 40032d19872aSmrg# _LT_COMPILER_NO_RTTI([TAGNAME]) 40042d19872aSmrg# ------------------------------- 40052d19872aSmrgm4_defun([_LT_COMPILER_NO_RTTI], 40062d19872aSmrg[m4_require([_LT_TAG_COMPILER])dnl 40072d19872aSmrg 40082d19872aSmrg_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= 40092d19872aSmrg 40102d19872aSmrgif test yes = "$GCC"; then 40112d19872aSmrg case $cc_basename in 40122d19872aSmrg nvcc*) 40132d19872aSmrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; 40142d19872aSmrg *) 40152d19872aSmrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; 40162d19872aSmrg esac 40172d19872aSmrg 40182d19872aSmrg _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], 40192d19872aSmrg lt_cv_prog_compiler_rtti_exceptions, 40202d19872aSmrg [-fno-rtti -fno-exceptions], [], 40212d19872aSmrg [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) 40222d19872aSmrgfi 40232d19872aSmrg_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], 40242d19872aSmrg [Compiler flag to turn off builtin functions]) 40252d19872aSmrg])# _LT_COMPILER_NO_RTTI 40262d19872aSmrg 40272d19872aSmrg 40282d19872aSmrg# _LT_CMD_GLOBAL_SYMBOLS 40292d19872aSmrg# ---------------------- 40302d19872aSmrgm4_defun([_LT_CMD_GLOBAL_SYMBOLS], 40312d19872aSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl 40322d19872aSmrgAC_REQUIRE([AC_PROG_CC])dnl 40332d19872aSmrgAC_REQUIRE([AC_PROG_AWK])dnl 40342d19872aSmrgAC_REQUIRE([LT_PATH_NM])dnl 40352d19872aSmrgAC_REQUIRE([LT_PATH_LD])dnl 40362d19872aSmrgm4_require([_LT_DECL_SED])dnl 40372d19872aSmrgm4_require([_LT_DECL_EGREP])dnl 40382d19872aSmrgm4_require([_LT_TAG_COMPILER])dnl 40392d19872aSmrg 40402d19872aSmrg# Check for command to grab the raw symbol name followed by C symbol from nm. 40412d19872aSmrgAC_MSG_CHECKING([command to parse $NM output from $compiler object]) 40422d19872aSmrgAC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], 40432d19872aSmrg[ 40442d19872aSmrg# These are sane defaults that work on at least a few old systems. 40452d19872aSmrg# [They come from Ultrix. What could be older than Ultrix?!! ;)] 40462d19872aSmrg 40472d19872aSmrg# Character class describing NM global symbol codes. 40482d19872aSmrgsymcode='[[BCDEGRST]]' 40492d19872aSmrg 40502d19872aSmrg# Regexp to match symbols that can be accessed directly from C. 40512d19872aSmrgsympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' 40522d19872aSmrg 40532d19872aSmrg# Define system-specific variables. 40542d19872aSmrgcase $host_os in 40552d19872aSmrgaix*) 40562d19872aSmrg symcode='[[BCDT]]' 40572d19872aSmrg ;; 40582f76b07dSmrgcygwin* | mingw* | windows* | pw32* | cegcc*) 40592d19872aSmrg symcode='[[ABCDGISTW]]' 40602d19872aSmrg ;; 40612d19872aSmrghpux*) 40622d19872aSmrg if test ia64 = "$host_cpu"; then 40632d19872aSmrg symcode='[[ABCDEGRST]]' 40642d19872aSmrg fi 40652d19872aSmrg ;; 40662d19872aSmrgirix* | nonstopux*) 40672d19872aSmrg symcode='[[BCDEGRST]]' 40682d19872aSmrg ;; 40692d19872aSmrgosf*) 40702d19872aSmrg symcode='[[BCDEGQRST]]' 40712d19872aSmrg ;; 40722d19872aSmrgsolaris*) 40732f76b07dSmrg symcode='[[BCDRT]]' 40742d19872aSmrg ;; 40752d19872aSmrgsco3.2v5*) 40762d19872aSmrg symcode='[[DT]]' 40772d19872aSmrg ;; 40782d19872aSmrgsysv4.2uw2*) 40792d19872aSmrg symcode='[[DT]]' 40802d19872aSmrg ;; 40812d19872aSmrgsysv5* | sco5v6* | unixware* | OpenUNIX*) 40822d19872aSmrg symcode='[[ABDT]]' 40832d19872aSmrg ;; 40842d19872aSmrgsysv4) 40852d19872aSmrg symcode='[[DFNSTU]]' 40862d19872aSmrg ;; 40872d19872aSmrgesac 40882d19872aSmrg 40892d19872aSmrg# If we're using GNU nm, then use its standard symbol codes. 40902d19872aSmrgcase `$NM -V 2>&1` in 40912d19872aSmrg*GNU* | *'with BFD'*) 40922d19872aSmrg symcode='[[ABCDGIRSTW]]' ;; 40932d19872aSmrgesac 40942d19872aSmrg 40952d19872aSmrgif test "$lt_cv_nm_interface" = "MS dumpbin"; then 40962d19872aSmrg # Gets list of data symbols to import. 40972d19872aSmrg lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" 40982d19872aSmrg # Adjust the below global symbol transforms to fixup imported variables. 40992d19872aSmrg lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" 41002d19872aSmrg lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" 41012d19872aSmrg lt_c_name_lib_hook="\ 41022d19872aSmrg -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ 41032d19872aSmrg -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" 41042d19872aSmrgelse 41052d19872aSmrg # Disable hooks by default. 41062d19872aSmrg lt_cv_sys_global_symbol_to_import= 41072d19872aSmrg lt_cdecl_hook= 41082d19872aSmrg lt_c_name_hook= 41092d19872aSmrg lt_c_name_lib_hook= 41102d19872aSmrgfi 41112d19872aSmrg 41122d19872aSmrg# Transform an extracted symbol line into a proper C declaration. 41132d19872aSmrg# Some systems (esp. on ia64) link data and code symbols differently, 41142d19872aSmrg# so use this general approach. 41152d19872aSmrglt_cv_sys_global_symbol_to_cdecl="$SED -n"\ 41162d19872aSmrg$lt_cdecl_hook\ 41172d19872aSmrg" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ 41182d19872aSmrg" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" 41192d19872aSmrg 41202d19872aSmrg# Transform an extracted symbol line into symbol name and symbol address 41212d19872aSmrglt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ 41222d19872aSmrg$lt_c_name_hook\ 41232d19872aSmrg" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ 41242d19872aSmrg" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" 41252d19872aSmrg 41262d19872aSmrg# Transform an extracted symbol line into symbol name with lib prefix and 41272d19872aSmrg# symbol address. 41282d19872aSmrglt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ 41292d19872aSmrg$lt_c_name_lib_hook\ 41302d19872aSmrg" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ 41312d19872aSmrg" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ 41322d19872aSmrg" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" 41332d19872aSmrg 41342d19872aSmrg# Handle CRLF in mingw tool chain 41352d19872aSmrgopt_cr= 41362d19872aSmrgcase $build_os in 41372f76b07dSmrgmingw* | windows*) 41382d19872aSmrg opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp 41392d19872aSmrg ;; 41402d19872aSmrgesac 41412d19872aSmrg 41422d19872aSmrg# Try without a prefix underscore, then with it. 41432d19872aSmrgfor ac_symprfx in "" "_"; do 41442d19872aSmrg 41452d19872aSmrg # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. 41462d19872aSmrg symxfrm="\\1 $ac_symprfx\\2 \\2" 41472d19872aSmrg 41482d19872aSmrg # Write the raw and C identifiers. 41492d19872aSmrg if test "$lt_cv_nm_interface" = "MS dumpbin"; then 41502d19872aSmrg # Fake it for dumpbin and say T for any non-static function, 41512d19872aSmrg # D for any global variable and I for any imported variable. 41522d19872aSmrg # Also find C++ and __fastcall symbols from MSVC++ or ICC, 41532d19872aSmrg # which start with @ or ?. 41542d19872aSmrg lt_cv_sys_global_symbol_pipe="$AWK ['"\ 41552d19872aSmrg" {last_section=section; section=\$ 3};"\ 41562d19872aSmrg" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ 41572d19872aSmrg" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ 41582d19872aSmrg" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ 41592d19872aSmrg" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ 41602d19872aSmrg" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ 41612d19872aSmrg" \$ 0!~/External *\|/{next};"\ 41622d19872aSmrg" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ 41632d19872aSmrg" {if(hide[section]) next};"\ 41642d19872aSmrg" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ 41652d19872aSmrg" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ 41662d19872aSmrg" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ 41672d19872aSmrg" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ 41682d19872aSmrg" ' prfx=^$ac_symprfx]" 41692d19872aSmrg else 41702d19872aSmrg lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" 41712d19872aSmrg fi 41722d19872aSmrg lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" 41732d19872aSmrg 41742d19872aSmrg # Check to see that the pipe works correctly. 41752d19872aSmrg pipe_works=no 41762d19872aSmrg 41772d19872aSmrg rm -f conftest* 41782d19872aSmrg cat > conftest.$ac_ext <<_LT_EOF 41792d19872aSmrg#ifdef __cplusplus 41802d19872aSmrgextern "C" { 41812d19872aSmrg#endif 41822d19872aSmrgchar nm_test_var; 41832d19872aSmrgvoid nm_test_func(void); 41842d19872aSmrgvoid nm_test_func(void){} 41852d19872aSmrg#ifdef __cplusplus 41862d19872aSmrg} 41872d19872aSmrg#endif 41882f76b07dSmrgint main(void){nm_test_var='a';nm_test_func();return(0);} 41892d19872aSmrg_LT_EOF 41902d19872aSmrg 41912d19872aSmrg if AC_TRY_EVAL(ac_compile); then 41922d19872aSmrg # Now try to grab the symbols. 41932d19872aSmrg nlist=conftest.nm 41942f76b07dSmrg $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD 41952f76b07dSmrg if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then 41962d19872aSmrg # Try sorting and uniquifying the output. 41972d19872aSmrg if sort "$nlist" | uniq > "$nlist"T; then 41982d19872aSmrg mv -f "$nlist"T "$nlist" 41992d19872aSmrg else 42002d19872aSmrg rm -f "$nlist"T 42012d19872aSmrg fi 42022d19872aSmrg 42032d19872aSmrg # Make sure that we snagged all the symbols we need. 42042d19872aSmrg if $GREP ' nm_test_var$' "$nlist" >/dev/null; then 42052d19872aSmrg if $GREP ' nm_test_func$' "$nlist" >/dev/null; then 42062d19872aSmrg cat <<_LT_EOF > conftest.$ac_ext 42072d19872aSmrg/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ 42082d19872aSmrg#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE 42092d19872aSmrg/* DATA imports from DLLs on WIN32 can't be const, because runtime 42102d19872aSmrg relocations are performed -- see ld's documentation on pseudo-relocs. */ 42112d19872aSmrg# define LT@&t@_DLSYM_CONST 42122d19872aSmrg#elif defined __osf__ 42132d19872aSmrg/* This system does not cope well with relocations in const data. */ 42142d19872aSmrg# define LT@&t@_DLSYM_CONST 42152d19872aSmrg#else 42162d19872aSmrg# define LT@&t@_DLSYM_CONST const 42172d19872aSmrg#endif 42182d19872aSmrg 42192d19872aSmrg#ifdef __cplusplus 42202d19872aSmrgextern "C" { 42212d19872aSmrg#endif 42222d19872aSmrg 42232d19872aSmrg_LT_EOF 42242d19872aSmrg # Now generate the symbol file. 42252d19872aSmrg eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' 42262d19872aSmrg 42272d19872aSmrg cat <<_LT_EOF >> conftest.$ac_ext 42282d19872aSmrg 42292d19872aSmrg/* The mapping between symbol names and symbols. */ 42302d19872aSmrgLT@&t@_DLSYM_CONST struct { 42312d19872aSmrg const char *name; 42322d19872aSmrg void *address; 42332d19872aSmrg} 42342d19872aSmrglt__PROGRAM__LTX_preloaded_symbols[[]] = 42352d19872aSmrg{ 42362d19872aSmrg { "@PROGRAM@", (void *) 0 }, 42372d19872aSmrg_LT_EOF 42382d19872aSmrg $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext 42392d19872aSmrg cat <<\_LT_EOF >> conftest.$ac_ext 42402d19872aSmrg {0, (void *) 0} 42412d19872aSmrg}; 42422d19872aSmrg 42432d19872aSmrg/* This works around a problem in FreeBSD linker */ 42442d19872aSmrg#ifdef FREEBSD_WORKAROUND 42452d19872aSmrgstatic const void *lt_preloaded_setup() { 42462d19872aSmrg return lt__PROGRAM__LTX_preloaded_symbols; 42472d19872aSmrg} 42482d19872aSmrg#endif 42492d19872aSmrg 42502d19872aSmrg#ifdef __cplusplus 42512d19872aSmrg} 42522d19872aSmrg#endif 42532d19872aSmrg_LT_EOF 42542d19872aSmrg # Now try linking the two files. 42552d19872aSmrg mv conftest.$ac_objext conftstm.$ac_objext 42562d19872aSmrg lt_globsym_save_LIBS=$LIBS 42572d19872aSmrg lt_globsym_save_CFLAGS=$CFLAGS 42582d19872aSmrg LIBS=conftstm.$ac_objext 42592d19872aSmrg CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" 42602d19872aSmrg if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then 42612d19872aSmrg pipe_works=yes 42622d19872aSmrg fi 42632d19872aSmrg LIBS=$lt_globsym_save_LIBS 42642d19872aSmrg CFLAGS=$lt_globsym_save_CFLAGS 42652d19872aSmrg else 42662d19872aSmrg echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD 42672d19872aSmrg fi 42682d19872aSmrg else 42692d19872aSmrg echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD 42702d19872aSmrg fi 42712d19872aSmrg else 42722d19872aSmrg echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD 42732d19872aSmrg fi 42742d19872aSmrg else 42752d19872aSmrg echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD 42762d19872aSmrg cat conftest.$ac_ext >&5 42772d19872aSmrg fi 42782d19872aSmrg rm -rf conftest* conftst* 42792d19872aSmrg 42802d19872aSmrg # Do not use the global_symbol_pipe unless it works. 42812d19872aSmrg if test yes = "$pipe_works"; then 42822d19872aSmrg break 42832d19872aSmrg else 42842d19872aSmrg lt_cv_sys_global_symbol_pipe= 42852d19872aSmrg fi 42862d19872aSmrgdone 42872d19872aSmrg]) 42882d19872aSmrgif test -z "$lt_cv_sys_global_symbol_pipe"; then 42892d19872aSmrg lt_cv_sys_global_symbol_to_cdecl= 42902d19872aSmrgfi 42912d19872aSmrgif test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then 42922d19872aSmrg AC_MSG_RESULT(failed) 42932d19872aSmrgelse 42942d19872aSmrg AC_MSG_RESULT(ok) 42952d19872aSmrgfi 42962d19872aSmrg 42972d19872aSmrg# Response file support. 42982d19872aSmrgif test "$lt_cv_nm_interface" = "MS dumpbin"; then 42992d19872aSmrg nm_file_list_spec='@' 43002d19872aSmrgelif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then 43012d19872aSmrg nm_file_list_spec='@' 43022d19872aSmrgfi 43032d19872aSmrg 43042d19872aSmrg_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], 43052d19872aSmrg [Take the output of nm and produce a listing of raw symbols and C names]) 43062d19872aSmrg_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], 43072d19872aSmrg [Transform the output of nm in a proper C declaration]) 43082d19872aSmrg_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1], 43092d19872aSmrg [Transform the output of nm into a list of symbols to manually relocate]) 43102d19872aSmrg_LT_DECL([global_symbol_to_c_name_address], 43112d19872aSmrg [lt_cv_sys_global_symbol_to_c_name_address], [1], 43122d19872aSmrg [Transform the output of nm in a C name address pair]) 43132d19872aSmrg_LT_DECL([global_symbol_to_c_name_address_lib_prefix], 43142d19872aSmrg [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], 43152d19872aSmrg [Transform the output of nm in a C name address pair when lib prefix is needed]) 43162d19872aSmrg_LT_DECL([nm_interface], [lt_cv_nm_interface], [1], 43172d19872aSmrg [The name lister interface]) 43182d19872aSmrg_LT_DECL([], [nm_file_list_spec], [1], 43192d19872aSmrg [Specify filename containing input files for $NM]) 43202d19872aSmrg]) # _LT_CMD_GLOBAL_SYMBOLS 43212d19872aSmrg 43222d19872aSmrg 43232d19872aSmrg# _LT_COMPILER_PIC([TAGNAME]) 43242d19872aSmrg# --------------------------- 43252d19872aSmrgm4_defun([_LT_COMPILER_PIC], 43262d19872aSmrg[m4_require([_LT_TAG_COMPILER])dnl 43272d19872aSmrg_LT_TAGVAR(lt_prog_compiler_wl, $1)= 43282d19872aSmrg_LT_TAGVAR(lt_prog_compiler_pic, $1)= 43292d19872aSmrg_LT_TAGVAR(lt_prog_compiler_static, $1)= 43302d19872aSmrg 43312d19872aSmrgm4_if([$1], [CXX], [ 43322d19872aSmrg # C++ specific cases for pic, static, wl, etc. 43332d19872aSmrg if test yes = "$GXX"; then 43342d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 43352d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 43362d19872aSmrg 43372d19872aSmrg case $host_os in 43382d19872aSmrg aix*) 43392d19872aSmrg # All AIX code is PIC. 43402d19872aSmrg if test ia64 = "$host_cpu"; then 43412d19872aSmrg # AIX 5 now supports IA64 processor 43422d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 43432d19872aSmrg fi 43442d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 43452d19872aSmrg ;; 43462d19872aSmrg 43472d19872aSmrg amigaos*) 43482d19872aSmrg case $host_cpu in 43492d19872aSmrg powerpc) 43502d19872aSmrg # see comment about AmigaOS4 .so support 43512d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 43522d19872aSmrg ;; 43532d19872aSmrg m68k) 43542d19872aSmrg # FIXME: we need at least 68020 code to build shared libraries, but 43552d19872aSmrg # adding the '-m68020' flag to GCC prevents building anything better, 43562d19872aSmrg # like '-m68040'. 43572d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' 43582d19872aSmrg ;; 43592d19872aSmrg esac 43602d19872aSmrg ;; 43612d19872aSmrg 43622d19872aSmrg beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) 43632d19872aSmrg # PIC is the default for these OSes. 43642d19872aSmrg ;; 43652f76b07dSmrg mingw* | windows* | cygwin* | os2* | pw32* | cegcc*) 43662d19872aSmrg # This hack is so that the source file can tell whether it is being 43672d19872aSmrg # built for inclusion in a dll (and should export symbols for example). 43682d19872aSmrg # Although the cygwin gcc ignores -fPIC, still need this for old-style 43692d19872aSmrg # (--disable-auto-import) libraries 43702d19872aSmrg m4_if([$1], [GCJ], [], 43712d19872aSmrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 43722d19872aSmrg case $host_os in 43732d19872aSmrg os2*) 43742d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' 43752d19872aSmrg ;; 43762d19872aSmrg esac 43772d19872aSmrg ;; 43782d19872aSmrg darwin* | rhapsody*) 43792d19872aSmrg # PIC is the default on this platform 43802d19872aSmrg # Common symbols not allowed in MH_DYLIB files 43812d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' 43822d19872aSmrg ;; 43832d19872aSmrg *djgpp*) 43842d19872aSmrg # DJGPP does not support shared libraries at all 43852d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 43862d19872aSmrg ;; 43872d19872aSmrg haiku*) 43882d19872aSmrg # PIC is the default for Haiku. 43892d19872aSmrg # The "-static" flag exists, but is broken. 43902d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)= 43912d19872aSmrg ;; 43922d19872aSmrg interix[[3-9]]*) 43932d19872aSmrg # Interix 3.x gcc -fpic/-fPIC options generate broken code. 43942d19872aSmrg # Instead, we relocate shared libraries at runtime. 43952d19872aSmrg ;; 43962d19872aSmrg sysv4*MP*) 43972d19872aSmrg if test -d /usr/nec; then 43982d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic 43992d19872aSmrg fi 44002d19872aSmrg ;; 44012d19872aSmrg hpux*) 44022d19872aSmrg # PIC is the default for 64-bit PA HP-UX, but not for 32-bit 44032d19872aSmrg # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag 44042d19872aSmrg # sets the default TLS model and affects inlining. 44052d19872aSmrg case $host_cpu in 44062d19872aSmrg hppa*64*) 44072d19872aSmrg ;; 44082d19872aSmrg *) 44092d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 44102d19872aSmrg ;; 44112d19872aSmrg esac 44122d19872aSmrg ;; 44132d19872aSmrg *qnx* | *nto*) 44142d19872aSmrg # QNX uses GNU C++, but need to define -shared option too, otherwise 44152d19872aSmrg # it will coredump. 44162d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 44172d19872aSmrg ;; 44182d19872aSmrg *) 44192d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 44202d19872aSmrg ;; 44212d19872aSmrg esac 44222d19872aSmrg else 44232d19872aSmrg case $host_os in 44242d19872aSmrg aix[[4-9]]*) 44252d19872aSmrg # All AIX code is PIC. 44262d19872aSmrg if test ia64 = "$host_cpu"; then 44272d19872aSmrg # AIX 5 now supports IA64 processor 44282d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 44292d19872aSmrg else 44302d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' 44312d19872aSmrg fi 44322d19872aSmrg ;; 44332d19872aSmrg chorus*) 44342d19872aSmrg case $cc_basename in 44352d19872aSmrg cxch68*) 44362d19872aSmrg # Green Hills C++ Compiler 44372d19872aSmrg # _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" 44382d19872aSmrg ;; 44392d19872aSmrg esac 44402d19872aSmrg ;; 44412f76b07dSmrg mingw* | windows* | cygwin* | os2* | pw32* | cegcc*) 44422d19872aSmrg # This hack is so that the source file can tell whether it is being 44432d19872aSmrg # built for inclusion in a dll (and should export symbols for example). 44442d19872aSmrg m4_if([$1], [GCJ], [], 44452d19872aSmrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 44462d19872aSmrg ;; 44472d19872aSmrg dgux*) 44482d19872aSmrg case $cc_basename in 44492d19872aSmrg ec++*) 44502d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 44512d19872aSmrg ;; 44522d19872aSmrg ghcx*) 44532d19872aSmrg # Green Hills C++ Compiler 44542d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 44552d19872aSmrg ;; 44562d19872aSmrg *) 44572d19872aSmrg ;; 44582d19872aSmrg esac 44592d19872aSmrg ;; 44602d19872aSmrg freebsd* | dragonfly* | midnightbsd*) 44612d19872aSmrg # FreeBSD uses GNU C++ 44622d19872aSmrg ;; 44632d19872aSmrg hpux9* | hpux10* | hpux11*) 44642d19872aSmrg case $cc_basename in 44652d19872aSmrg CC*) 44662d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 44672d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' 44682d19872aSmrg if test ia64 != "$host_cpu"; then 44692d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 44702d19872aSmrg fi 44712d19872aSmrg ;; 44722d19872aSmrg aCC*) 44732d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 44742d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' 44752d19872aSmrg case $host_cpu in 44762d19872aSmrg hppa*64*|ia64*) 44772d19872aSmrg # +Z the default 44782d19872aSmrg ;; 44792d19872aSmrg *) 44802d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 44812d19872aSmrg ;; 44822d19872aSmrg esac 44832d19872aSmrg ;; 44842d19872aSmrg *) 44852d19872aSmrg ;; 44862d19872aSmrg esac 44872d19872aSmrg ;; 44882d19872aSmrg interix*) 44892d19872aSmrg # This is c89, which is MS Visual C++ (no shared libs) 44902d19872aSmrg # Anyone wants to do a port? 44912d19872aSmrg ;; 44922d19872aSmrg irix5* | irix6* | nonstopux*) 44932d19872aSmrg case $cc_basename in 44942d19872aSmrg CC*) 44952d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 44962d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 44972d19872aSmrg # CC pic flag -KPIC is the default. 44982d19872aSmrg ;; 44992d19872aSmrg *) 45002d19872aSmrg ;; 45012d19872aSmrg esac 45022d19872aSmrg ;; 45032d19872aSmrg linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 45042d19872aSmrg case $cc_basename in 45052d19872aSmrg KCC*) 45062d19872aSmrg # KAI C++ Compiler 45072d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' 45082d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 45092d19872aSmrg ;; 45102d19872aSmrg ecpc* ) 45112d19872aSmrg # old Intel C++ for x86_64, which still supported -KPIC. 45122d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 45132d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 45142d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 45152d19872aSmrg ;; 45162d19872aSmrg icpc* ) 45172d19872aSmrg # Intel C++, used to be incompatible with GCC. 45182d19872aSmrg # ICC 10 doesn't accept -KPIC any more. 45192d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 45202d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 45212d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 45222d19872aSmrg ;; 45232d19872aSmrg pgCC* | pgcpp*) 45242d19872aSmrg # Portland Group C++ compiler 45252d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 45262d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 45272d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 45282d19872aSmrg ;; 45292d19872aSmrg cxx*) 45302d19872aSmrg # Compaq C++ 45312d19872aSmrg # Make sure the PIC flag is empty. It appears that all Alpha 45322d19872aSmrg # Linux and Compaq Tru64 Unix objects are PIC. 45332d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 45342d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 45352d19872aSmrg ;; 45362d19872aSmrg xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) 45372d19872aSmrg # IBM XL 8.0, 9.0 on PPC and BlueGene 45382d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 45392d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' 45402d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' 45412d19872aSmrg ;; 45422d19872aSmrg *) 45432d19872aSmrg case `$CC -V 2>&1 | $SED 5q` in 45442d19872aSmrg *Sun\ C*) 45452d19872aSmrg # Sun C++ 5.9 45462d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 45472d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 45482d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 45492d19872aSmrg ;; 45502d19872aSmrg esac 45512d19872aSmrg ;; 45522d19872aSmrg esac 45532d19872aSmrg ;; 45542d19872aSmrg lynxos*) 45552d19872aSmrg ;; 45562d19872aSmrg m88k*) 45572d19872aSmrg ;; 45582d19872aSmrg mvs*) 45592d19872aSmrg case $cc_basename in 45602d19872aSmrg cxx*) 45612d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' 45622d19872aSmrg ;; 45632d19872aSmrg *) 45642d19872aSmrg ;; 45652d19872aSmrg esac 45662d19872aSmrg ;; 45672f76b07dSmrg netbsd* | netbsdelf*-gnu) 45682f76b07dSmrg ;; 45692f76b07dSmrg *-mlibc) 45702d19872aSmrg ;; 45712d19872aSmrg *qnx* | *nto*) 45722d19872aSmrg # QNX uses GNU C++, but need to define -shared option too, otherwise 45732d19872aSmrg # it will coredump. 45742d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 45752d19872aSmrg ;; 45762d19872aSmrg osf3* | osf4* | osf5*) 45772d19872aSmrg case $cc_basename in 45782d19872aSmrg KCC*) 45792d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' 45802d19872aSmrg ;; 45812d19872aSmrg RCC*) 45822d19872aSmrg # Rational C++ 2.4.1 45832d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 45842d19872aSmrg ;; 45852d19872aSmrg cxx*) 45862d19872aSmrg # Digital/Compaq C++ 45872d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 45882d19872aSmrg # Make sure the PIC flag is empty. It appears that all Alpha 45892d19872aSmrg # Linux and Compaq Tru64 Unix objects are PIC. 45902d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 45912d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 45922d19872aSmrg ;; 45932d19872aSmrg *) 45942d19872aSmrg ;; 45952d19872aSmrg esac 45962d19872aSmrg ;; 45972d19872aSmrg psos*) 45982d19872aSmrg ;; 45992f76b07dSmrg serenity*) 46002f76b07dSmrg ;; 46012d19872aSmrg solaris*) 46022d19872aSmrg case $cc_basename in 46032d19872aSmrg CC* | sunCC*) 46042d19872aSmrg # Sun C++ 4.2, 5.x and Centerline C++ 46052d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 46062d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 46072d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 46082d19872aSmrg ;; 46092d19872aSmrg gcx*) 46102d19872aSmrg # Green Hills C++ Compiler 46112d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 46122d19872aSmrg ;; 46132d19872aSmrg *) 46142d19872aSmrg ;; 46152d19872aSmrg esac 46162d19872aSmrg ;; 46172d19872aSmrg sunos4*) 46182d19872aSmrg case $cc_basename in 46192d19872aSmrg CC*) 46202d19872aSmrg # Sun C++ 4.x 46212d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 46222d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 46232d19872aSmrg ;; 46242d19872aSmrg lcc*) 46252d19872aSmrg # Lucid 46262d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 46272d19872aSmrg ;; 46282d19872aSmrg *) 46292d19872aSmrg ;; 46302d19872aSmrg esac 46312d19872aSmrg ;; 46322d19872aSmrg sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) 46332d19872aSmrg case $cc_basename in 46342d19872aSmrg CC*) 46352d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 46362d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 46372d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 46382d19872aSmrg ;; 46392d19872aSmrg esac 46402d19872aSmrg ;; 46412d19872aSmrg tandem*) 46422d19872aSmrg case $cc_basename in 46432d19872aSmrg NCC*) 46442d19872aSmrg # NonStop-UX NCC 3.20 46452d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 46462d19872aSmrg ;; 46472d19872aSmrg *) 46482d19872aSmrg ;; 46492d19872aSmrg esac 46502d19872aSmrg ;; 46512d19872aSmrg vxworks*) 46522d19872aSmrg ;; 46532d19872aSmrg *) 46542d19872aSmrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 46552d19872aSmrg ;; 46562d19872aSmrg esac 46572d19872aSmrg fi 46582d19872aSmrg], 46592d19872aSmrg[ 46602d19872aSmrg if test yes = "$GCC"; then 46612d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 46622d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 46632d19872aSmrg 46642d19872aSmrg case $host_os in 46652d19872aSmrg aix*) 46662d19872aSmrg # All AIX code is PIC. 46672d19872aSmrg if test ia64 = "$host_cpu"; then 46682d19872aSmrg # AIX 5 now supports IA64 processor 46692d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 46702d19872aSmrg fi 46712d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 46722d19872aSmrg ;; 46732d19872aSmrg 46742d19872aSmrg amigaos*) 46752d19872aSmrg case $host_cpu in 46762d19872aSmrg powerpc) 46772d19872aSmrg # see comment about AmigaOS4 .so support 46782d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 46792d19872aSmrg ;; 46802d19872aSmrg m68k) 46812d19872aSmrg # FIXME: we need at least 68020 code to build shared libraries, but 46822d19872aSmrg # adding the '-m68020' flag to GCC prevents building anything better, 46832d19872aSmrg # like '-m68040'. 46842d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' 46852d19872aSmrg ;; 46862d19872aSmrg esac 46872d19872aSmrg ;; 46882d19872aSmrg 46892d19872aSmrg beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) 46902d19872aSmrg # PIC is the default for these OSes. 46912d19872aSmrg ;; 46922d19872aSmrg 46932f76b07dSmrg mingw* | windows* | cygwin* | pw32* | os2* | cegcc*) 46942d19872aSmrg # This hack is so that the source file can tell whether it is being 46952d19872aSmrg # built for inclusion in a dll (and should export symbols for example). 46962d19872aSmrg # Although the cygwin gcc ignores -fPIC, still need this for old-style 46972d19872aSmrg # (--disable-auto-import) libraries 46982d19872aSmrg m4_if([$1], [GCJ], [], 46992d19872aSmrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 47002d19872aSmrg case $host_os in 47012d19872aSmrg os2*) 47022d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' 47032d19872aSmrg ;; 47042d19872aSmrg esac 47052d19872aSmrg ;; 47062d19872aSmrg 47072d19872aSmrg darwin* | rhapsody*) 47082d19872aSmrg # PIC is the default on this platform 47092d19872aSmrg # Common symbols not allowed in MH_DYLIB files 47102d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' 47112d19872aSmrg ;; 47122d19872aSmrg 47132d19872aSmrg haiku*) 47142d19872aSmrg # PIC is the default for Haiku. 47152d19872aSmrg # The "-static" flag exists, but is broken. 47162d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)= 47172d19872aSmrg ;; 47182d19872aSmrg 47192d19872aSmrg hpux*) 47202d19872aSmrg # PIC is the default for 64-bit PA HP-UX, but not for 32-bit 47212d19872aSmrg # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag 47222d19872aSmrg # sets the default TLS model and affects inlining. 47232d19872aSmrg case $host_cpu in 47242d19872aSmrg hppa*64*) 47252d19872aSmrg # +Z the default 47262d19872aSmrg ;; 47272d19872aSmrg *) 47282d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 47292d19872aSmrg ;; 47302d19872aSmrg esac 47312d19872aSmrg ;; 47322d19872aSmrg 47332d19872aSmrg interix[[3-9]]*) 47342d19872aSmrg # Interix 3.x gcc -fpic/-fPIC options generate broken code. 47352d19872aSmrg # Instead, we relocate shared libraries at runtime. 47362d19872aSmrg ;; 47372d19872aSmrg 47382d19872aSmrg msdosdjgpp*) 47392d19872aSmrg # Just because we use GCC doesn't mean we suddenly get shared libraries 47402d19872aSmrg # on systems that don't support them. 47412d19872aSmrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 47422d19872aSmrg enable_shared=no 47432d19872aSmrg ;; 47442d19872aSmrg 47452d19872aSmrg *nto* | *qnx*) 47462d19872aSmrg # QNX uses GNU C++, but need to define -shared option too, otherwise 47472d19872aSmrg # it will coredump. 47482d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 47492d19872aSmrg ;; 47502d19872aSmrg 47512d19872aSmrg sysv4*MP*) 47522d19872aSmrg if test -d /usr/nec; then 47532d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic 47542d19872aSmrg fi 47552d19872aSmrg ;; 47562d19872aSmrg 47572d19872aSmrg *) 47582d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 47592d19872aSmrg ;; 47602d19872aSmrg esac 47612d19872aSmrg 47622d19872aSmrg case $cc_basename in 47632d19872aSmrg nvcc*) # Cuda Compiler Driver 2.2 47642d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' 47652d19872aSmrg if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then 47662d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" 47672d19872aSmrg fi 47682d19872aSmrg ;; 47692d19872aSmrg esac 47702d19872aSmrg else 47712d19872aSmrg # PORTME Check for flag to pass linker flags through the system compiler. 47722d19872aSmrg case $host_os in 47732d19872aSmrg aix*) 47742d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 47752d19872aSmrg if test ia64 = "$host_cpu"; then 47762d19872aSmrg # AIX 5 now supports IA64 processor 47772d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 47782d19872aSmrg else 47792d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' 47802d19872aSmrg fi 47812d19872aSmrg ;; 47822d19872aSmrg 47832d19872aSmrg darwin* | rhapsody*) 47842d19872aSmrg # PIC is the default on this platform 47852d19872aSmrg # Common symbols not allowed in MH_DYLIB files 47862d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' 47872d19872aSmrg case $cc_basename in 47882d19872aSmrg nagfor*) 47892d19872aSmrg # NAG Fortran compiler 47902d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' 47912d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 47922d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 47932d19872aSmrg ;; 47942d19872aSmrg esac 47952d19872aSmrg ;; 47962d19872aSmrg 47972f76b07dSmrg mingw* | windows* | cygwin* | pw32* | os2* | cegcc*) 47982d19872aSmrg # This hack is so that the source file can tell whether it is being 47992d19872aSmrg # built for inclusion in a dll (and should export symbols for example). 48002d19872aSmrg m4_if([$1], [GCJ], [], 48012d19872aSmrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) 48022d19872aSmrg case $host_os in 48032d19872aSmrg os2*) 48042d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' 48052d19872aSmrg ;; 48062d19872aSmrg esac 48072d19872aSmrg ;; 48082d19872aSmrg 48092d19872aSmrg hpux9* | hpux10* | hpux11*) 48102d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48112d19872aSmrg # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but 48122d19872aSmrg # not for PA HP-UX. 48132d19872aSmrg case $host_cpu in 48142d19872aSmrg hppa*64*|ia64*) 48152d19872aSmrg # +Z the default 48162d19872aSmrg ;; 48172d19872aSmrg *) 48182d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' 48192d19872aSmrg ;; 48202d19872aSmrg esac 48212d19872aSmrg # Is there a better lt_prog_compiler_static that works with the bundled CC? 48222d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' 48232d19872aSmrg ;; 48242d19872aSmrg 48252d19872aSmrg irix5* | irix6* | nonstopux*) 48262d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48272d19872aSmrg # PIC (with -KPIC) is the default. 48282d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 48292d19872aSmrg ;; 48302d19872aSmrg 48312d19872aSmrg linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 48322d19872aSmrg case $cc_basename in 48332d19872aSmrg # old Intel for x86_64, which still supported -KPIC. 48342d19872aSmrg ecc*) 48352d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48362d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 48372d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 48382d19872aSmrg ;; 48392f76b07dSmrg *flang* | ftn | f18* | f95*) 48402f76b07dSmrg # Flang compiler. 48412f76b07dSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48422f76b07dSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 48432f76b07dSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 48442f76b07dSmrg ;; 48452d19872aSmrg # icc used to be incompatible with GCC. 48462d19872aSmrg # ICC 10 doesn't accept -KPIC any more. 48472d19872aSmrg icc* | ifort*) 48482d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48492d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 48502d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 48512d19872aSmrg ;; 48522d19872aSmrg # Lahey Fortran 8.1. 48532d19872aSmrg lf95*) 48542d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48552d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' 48562d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' 48572d19872aSmrg ;; 48582d19872aSmrg nagfor*) 48592d19872aSmrg # NAG Fortran compiler 48602d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' 48612d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 48622d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 48632d19872aSmrg ;; 48642d19872aSmrg tcc*) 48652d19872aSmrg # Fabrice Bellard et al's Tiny C Compiler 48662d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48672d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 48682d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 48692d19872aSmrg ;; 48702d19872aSmrg pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) 48712d19872aSmrg # Portland Group compilers (*not* the Pentium gcc compiler, 48722d19872aSmrg # which looks to be a dead project) 48732d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48742d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 48752d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 48762d19872aSmrg ;; 48772d19872aSmrg ccc*) 48782d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48792d19872aSmrg # All Alpha code is PIC. 48802d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 48812d19872aSmrg ;; 48822d19872aSmrg xl* | bgxl* | bgf* | mpixl*) 48832d19872aSmrg # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene 48842d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 48852d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' 48862d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' 48872d19872aSmrg ;; 48882d19872aSmrg *) 48892d19872aSmrg case `$CC -V 2>&1 | $SED 5q` in 48902d19872aSmrg *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) 48912d19872aSmrg # Sun Fortran 8.3 passes all unrecognized flags to the linker 48922d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 48932d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 48942d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='' 48952d19872aSmrg ;; 48962d19872aSmrg *Sun\ F* | *Sun*Fortran*) 48972d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 48982d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 48992d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 49002d19872aSmrg ;; 49012d19872aSmrg *Sun\ C*) 49022d19872aSmrg # Sun C 5.9 49032d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 49042d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49052d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 49062d19872aSmrg ;; 49072d19872aSmrg *Intel*\ [[CF]]*Compiler*) 49082d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 49092d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 49102d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 49112d19872aSmrg ;; 49122d19872aSmrg *Portland\ Group*) 49132d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 49142d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' 49152d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49162d19872aSmrg ;; 49172d19872aSmrg esac 49182d19872aSmrg ;; 49192d19872aSmrg esac 49202d19872aSmrg ;; 49212d19872aSmrg 49222d19872aSmrg newsos6) 49232d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 49242d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49252d19872aSmrg ;; 49262d19872aSmrg 49272f76b07dSmrg *-mlibc) 49282f76b07dSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 49292f76b07dSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' 49302f76b07dSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' 49312f76b07dSmrg ;; 49322f76b07dSmrg 49332d19872aSmrg *nto* | *qnx*) 49342d19872aSmrg # QNX uses GNU C++, but need to define -shared option too, otherwise 49352d19872aSmrg # it will coredump. 49362d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' 49372d19872aSmrg ;; 49382d19872aSmrg 49392d19872aSmrg osf3* | osf4* | osf5*) 49402d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 49412d19872aSmrg # All OSF/1 code is PIC. 49422d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 49432d19872aSmrg ;; 49442d19872aSmrg 49452d19872aSmrg rdos*) 49462d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' 49472d19872aSmrg ;; 49482d19872aSmrg 49492f76b07dSmrg serenity*) 49502f76b07dSmrg ;; 49512f76b07dSmrg 49522d19872aSmrg solaris*) 49532d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 49542d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49552d19872aSmrg case $cc_basename in 49562d19872aSmrg f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) 49572d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; 49582d19872aSmrg *) 49592d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; 49602d19872aSmrg esac 49612d19872aSmrg ;; 49622d19872aSmrg 49632d19872aSmrg sunos4*) 49642d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' 49652d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' 49662d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49672d19872aSmrg ;; 49682d19872aSmrg 49692d19872aSmrg sysv4 | sysv4.2uw2* | sysv4.3*) 49702d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 49712d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 49722d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49732d19872aSmrg ;; 49742d19872aSmrg 49752d19872aSmrg sysv4*MP*) 49762d19872aSmrg if test -d /usr/nec; then 49772d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' 49782d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49792d19872aSmrg fi 49802d19872aSmrg ;; 49812d19872aSmrg 49822d19872aSmrg sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) 49832d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 49842d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' 49852d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49862d19872aSmrg ;; 49872d19872aSmrg 49882d19872aSmrg unicos*) 49892d19872aSmrg _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' 49902d19872aSmrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 49912d19872aSmrg ;; 49922d19872aSmrg 49932d19872aSmrg uts4*) 49942d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' 49952d19872aSmrg _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' 49962d19872aSmrg ;; 49972d19872aSmrg 49982d19872aSmrg *) 49992d19872aSmrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no 50002d19872aSmrg ;; 50012d19872aSmrg esac 50022d19872aSmrg fi 50032d19872aSmrg]) 50042d19872aSmrgcase $host_os in 50052d19872aSmrg # For platforms that do not support PIC, -DPIC is meaningless: 50062d19872aSmrg *djgpp*) 50072d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)= 50082d19872aSmrg ;; 50092d19872aSmrg *) 50102d19872aSmrg _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" 50112d19872aSmrg ;; 50122d19872aSmrgesac 50132d19872aSmrg 50142d19872aSmrgAC_CACHE_CHECK([for $compiler option to produce PIC], 50152d19872aSmrg [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], 50162d19872aSmrg [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) 50172d19872aSmrg_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) 50182d19872aSmrg 50192d19872aSmrg# 50202d19872aSmrg# Check to make sure the PIC flag actually works. 50212d19872aSmrg# 50222d19872aSmrgif test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then 50232d19872aSmrg _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], 50242d19872aSmrg [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], 50252d19872aSmrg [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], 50262d19872aSmrg [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in 50272d19872aSmrg "" | " "*) ;; 50282d19872aSmrg *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; 50292d19872aSmrg esac], 50302d19872aSmrg [_LT_TAGVAR(lt_prog_compiler_pic, $1)= 50312d19872aSmrg _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) 50322d19872aSmrgfi 50332d19872aSmrg_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], 50342d19872aSmrg [Additional compiler flags for building library objects]) 50352d19872aSmrg 50362d19872aSmrg_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], 50372d19872aSmrg [How to pass a linker flag through the compiler]) 50382d19872aSmrg# 50392d19872aSmrg# Check to make sure the static flag actually works. 50402d19872aSmrg# 50412d19872aSmrgwl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" 50422d19872aSmrg_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], 50432d19872aSmrg _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), 50442d19872aSmrg $lt_tmp_static_flag, 50452d19872aSmrg [], 50462d19872aSmrg [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) 50472d19872aSmrg_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], 50482d19872aSmrg [Compiler flag to prevent dynamic linking]) 50492d19872aSmrg])# _LT_COMPILER_PIC 50502d19872aSmrg 50512d19872aSmrg 50522d19872aSmrg# _LT_LINKER_SHLIBS([TAGNAME]) 50532d19872aSmrg# ---------------------------- 50542d19872aSmrg# See if the linker supports building shared libraries. 50552d19872aSmrgm4_defun([_LT_LINKER_SHLIBS], 50562d19872aSmrg[AC_REQUIRE([LT_PATH_LD])dnl 50572d19872aSmrgAC_REQUIRE([LT_PATH_NM])dnl 50582d19872aSmrgm4_require([_LT_PATH_MANIFEST_TOOL])dnl 50592d19872aSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl 50602d19872aSmrgm4_require([_LT_DECL_EGREP])dnl 50612d19872aSmrgm4_require([_LT_DECL_SED])dnl 50622d19872aSmrgm4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl 50632d19872aSmrgm4_require([_LT_TAG_COMPILER])dnl 50642d19872aSmrgAC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) 50652d19872aSmrgm4_if([$1], [CXX], [ 50662d19872aSmrg _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 50672d19872aSmrg _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] 50682d19872aSmrg case $host_os in 50692d19872aSmrg aix[[4-9]]*) 50702d19872aSmrg # If we're using GNU nm, then we don't want the "-C" option. 50712d19872aSmrg # -C means demangle to GNU nm, but means don't demangle to AIX nm. 50722d19872aSmrg # Without the "-l" option, or with the "-B" option, AIX nm treats 50732d19872aSmrg # weak defined symbols like other global defined symbols, whereas 50742d19872aSmrg # GNU nm marks them as "W". 50752d19872aSmrg # While the 'weak' keyword is ignored in the Export File, we need 50762d19872aSmrg # it in the Import File for the 'aix-soname' feature, so we have 50772d19872aSmrg # to replace the "-B" option with "-P" for AIX nm. 50782d19872aSmrg if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then 50792d19872aSmrg _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' 50802d19872aSmrg else 50812d19872aSmrg _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 == "L") || (\$ 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' 50822d19872aSmrg fi 50832d19872aSmrg ;; 50842d19872aSmrg pw32*) 50852d19872aSmrg _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds 50862d19872aSmrg ;; 50872f76b07dSmrg cygwin* | mingw* | windows* | cegcc*) 50882d19872aSmrg case $cc_basename in 50892d19872aSmrg cl* | icl*) 50902d19872aSmrg _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' 50912d19872aSmrg ;; 50922d19872aSmrg *) 50932d19872aSmrg _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' 50942d19872aSmrg _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] 50952d19872aSmrg ;; 50962d19872aSmrg esac 50972d19872aSmrg ;; 50982d19872aSmrg *) 50992d19872aSmrg _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 51002d19872aSmrg ;; 51012d19872aSmrg esac 51022d19872aSmrg], [ 51032d19872aSmrg runpath_var= 51042d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)= 51052d19872aSmrg _LT_TAGVAR(always_export_symbols, $1)=no 51062d19872aSmrg _LT_TAGVAR(archive_cmds, $1)= 51072d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)= 51082d19872aSmrg _LT_TAGVAR(compiler_needs_object, $1)=no 51092d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 51102d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)= 51112d19872aSmrg _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' 51122d19872aSmrg _LT_TAGVAR(hardcode_automatic, $1)=no 51132d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 51142d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 51152d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 51162d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 51172d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=no 51182d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 51192d19872aSmrg _LT_TAGVAR(inherit_rpath, $1)=no 51202d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=unknown 51212d19872aSmrg _LT_TAGVAR(module_cmds, $1)= 51222d19872aSmrg _LT_TAGVAR(module_expsym_cmds, $1)= 51232d19872aSmrg _LT_TAGVAR(old_archive_from_new_cmds, $1)= 51242d19872aSmrg _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= 51252d19872aSmrg _LT_TAGVAR(thread_safe_flag_spec, $1)= 51262d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 51272d19872aSmrg # include_expsyms should be a list of space-separated symbols to be *always* 51282d19872aSmrg # included in the symbol list 51292d19872aSmrg _LT_TAGVAR(include_expsyms, $1)= 51302d19872aSmrg # exclude_expsyms can be an extended regexp of symbols to exclude 51312d19872aSmrg # it will be wrapped by ' (' and ')$', so one must not match beginning or 51322d19872aSmrg # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', 51332d19872aSmrg # as well as any symbol that contains 'd'. 51342d19872aSmrg _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] 51352d19872aSmrg # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out 51362d19872aSmrg # platforms (ab)use it in PIC code, but their linkers get confused if 51372d19872aSmrg # the symbol is explicitly referenced. Since portable code cannot 51382d19872aSmrg # rely on this symbol name, it's probably fine to never include it in 51392d19872aSmrg # preloaded symbol tables. 51402d19872aSmrg # Exclude shared library initialization/finalization symbols. 51412d19872aSmrgdnl Note also adjust exclude_expsyms for C++ above. 51422d19872aSmrg extract_expsyms_cmds= 51432d19872aSmrg 51442d19872aSmrg case $host_os in 51452f76b07dSmrg cygwin* | mingw* | windows* | pw32* | cegcc*) 51462d19872aSmrg # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time 51472d19872aSmrg # When not using gcc, we currently assume that we are using 51482d19872aSmrg # Microsoft Visual C++ or Intel C++ Compiler. 51492d19872aSmrg if test yes != "$GCC"; then 51502d19872aSmrg with_gnu_ld=no 51512d19872aSmrg fi 51522d19872aSmrg ;; 51532d19872aSmrg interix*) 51542d19872aSmrg # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) 51552d19872aSmrg with_gnu_ld=yes 51562d19872aSmrg ;; 51572d19872aSmrg esac 51582d19872aSmrg 51592d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=yes 51602d19872aSmrg 51612d19872aSmrg # On some targets, GNU ld is compatible enough with the native linker 51622d19872aSmrg # that we're better off using the native interface for both. 51632d19872aSmrg lt_use_gnu_ld_interface=no 51642d19872aSmrg if test yes = "$with_gnu_ld"; then 51652d19872aSmrg case $host_os in 51662d19872aSmrg aix*) 51672d19872aSmrg # The AIX port of GNU ld has always aspired to compatibility 51682d19872aSmrg # with the native linker. However, as the warning in the GNU ld 51692d19872aSmrg # block says, versions before 2.19.5* couldn't really create working 51702d19872aSmrg # shared libraries, regardless of the interface used. 51712d19872aSmrg case `$LD -v 2>&1` in 51722d19872aSmrg *\ \(GNU\ Binutils\)\ 2.19.5*) ;; 51732d19872aSmrg *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; 51742d19872aSmrg *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; 51752d19872aSmrg *) 51762d19872aSmrg lt_use_gnu_ld_interface=yes 51772d19872aSmrg ;; 51782d19872aSmrg esac 51792d19872aSmrg ;; 51802d19872aSmrg *) 51812d19872aSmrg lt_use_gnu_ld_interface=yes 51822d19872aSmrg ;; 51832d19872aSmrg esac 51842d19872aSmrg fi 51852d19872aSmrg 51862d19872aSmrg if test yes = "$lt_use_gnu_ld_interface"; then 51872d19872aSmrg # If archive_cmds runs LD, not CC, wlarc should be empty 51882d19872aSmrg wlarc='$wl' 51892d19872aSmrg 51902d19872aSmrg # Set some defaults for GNU ld with shared library support. These 51912d19872aSmrg # are reset later if shared libraries are not supported. Putting them 51922d19872aSmrg # here allows them to be overridden if necessary. 51932d19872aSmrg runpath_var=LD_RUN_PATH 51942d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 51952d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 51962d19872aSmrg # ancient GNU ld didn't support --whole-archive et. al. 51972d19872aSmrg if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then 51982d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' 51992d19872aSmrg else 52002d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 52012d19872aSmrg fi 52022d19872aSmrg supports_anon_versioning=no 52032d19872aSmrg case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in 52042d19872aSmrg *GNU\ gold*) supports_anon_versioning=yes ;; 52052d19872aSmrg *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 52062d19872aSmrg *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... 52072d19872aSmrg *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... 52082d19872aSmrg *\ 2.11.*) ;; # other 2.11 versions 52092d19872aSmrg *) supports_anon_versioning=yes ;; 52102d19872aSmrg esac 52112d19872aSmrg 52122d19872aSmrg # See if GNU ld supports shared libraries. 52132d19872aSmrg case $host_os in 52142d19872aSmrg aix[[3-9]]*) 52152d19872aSmrg # On AIX/PPC, the GNU linker is very broken 52162d19872aSmrg if test ia64 != "$host_cpu"; then 52172d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 52182d19872aSmrg cat <<_LT_EOF 1>&2 52192d19872aSmrg 52202d19872aSmrg*** Warning: the GNU linker, at least up to release 2.19, is reported 52212d19872aSmrg*** to be unable to reliably create shared libraries on AIX. 52222d19872aSmrg*** Therefore, libtool is disabling shared libraries support. If you 52232d19872aSmrg*** really care for shared libraries, you may want to install binutils 52242d19872aSmrg*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. 52252d19872aSmrg*** You will then need to restart the configuration process. 52262d19872aSmrg 52272d19872aSmrg_LT_EOF 52282d19872aSmrg fi 52292d19872aSmrg ;; 52302d19872aSmrg 52312d19872aSmrg amigaos*) 52322d19872aSmrg case $host_cpu in 52332d19872aSmrg powerpc) 52342d19872aSmrg # see comment about AmigaOS4 .so support 52352d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 52362d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='' 52372d19872aSmrg ;; 52382d19872aSmrg m68k) 52392d19872aSmrg _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)' 52402d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 52412d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 52422d19872aSmrg ;; 52432d19872aSmrg esac 52442d19872aSmrg ;; 52452d19872aSmrg 52462d19872aSmrg beos*) 52472d19872aSmrg if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 52482d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 52492d19872aSmrg # Joseph Beckenbach <jrb3@best.com> says some releases of gcc 52502d19872aSmrg # support --undefined. This deserves some investigation. FIXME 52512d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 52522d19872aSmrg else 52532d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 52542d19872aSmrg fi 52552d19872aSmrg ;; 52562d19872aSmrg 52572f76b07dSmrg cygwin* | mingw* | windows* | pw32* | cegcc*) 52582d19872aSmrg # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, 52592d19872aSmrg # as there is no search path for DLLs. 52602d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 52612d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' 52622d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 52632d19872aSmrg _LT_TAGVAR(always_export_symbols, $1)=no 52642d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 52652d19872aSmrg _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' 52662d19872aSmrg _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] 52672f76b07dSmrg _LT_TAGVAR(file_list_spec, $1)='@' 52682d19872aSmrg 52692d19872aSmrg if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then 52702d19872aSmrg _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' 52712d19872aSmrg # If the export-symbols file already is a .def file, use it as 52722d19872aSmrg # is; otherwise, prepend EXPORTS... 52732d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then 52742d19872aSmrg cp $export_symbols $output_objdir/$soname.def; 52752d19872aSmrg else 52762d19872aSmrg echo EXPORTS > $output_objdir/$soname.def; 52772d19872aSmrg cat $export_symbols >> $output_objdir/$soname.def; 52782d19872aSmrg fi~ 52792d19872aSmrg $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' 52802d19872aSmrg else 52812d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 52822d19872aSmrg fi 52832d19872aSmrg ;; 52842d19872aSmrg 52852d19872aSmrg haiku*) 52862d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 52872f76b07dSmrg _LT_TAGVAR(link_all_deplibs, $1)=no 52882d19872aSmrg ;; 52892d19872aSmrg 52902d19872aSmrg os2*) 52912d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 52922d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 52932d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 52942d19872aSmrg shrext_cmds=.dll 52952d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 52962d19872aSmrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 52972d19872aSmrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 52982d19872aSmrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 52992d19872aSmrg emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ 53002d19872aSmrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 53012d19872aSmrg emximp -o $lib $output_objdir/$libname.def' 53022d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 53032d19872aSmrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 53042d19872aSmrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 53052d19872aSmrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 53062d19872aSmrg prefix_cmds="$SED"~ 53072d19872aSmrg if test EXPORTS = "`$SED 1q $export_symbols`"; then 53082d19872aSmrg prefix_cmds="$prefix_cmds -e 1d"; 53092d19872aSmrg fi~ 53102d19872aSmrg prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ 53112d19872aSmrg cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 53122d19872aSmrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 53132d19872aSmrg emximp -o $lib $output_objdir/$libname.def' 53142f76b07dSmrg _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' 53152d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 53162d19872aSmrg _LT_TAGVAR(file_list_spec, $1)='@' 53172d19872aSmrg ;; 53182d19872aSmrg 53192d19872aSmrg interix[[3-9]]*) 53202d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 53212d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 53222d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 53232d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 53242d19872aSmrg # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. 53252d19872aSmrg # Instead, shared libraries are loaded at an image base (0x10000000 by 53262d19872aSmrg # default) and relocated if they conflict, which is a slow very memory 53272d19872aSmrg # consuming and fragmenting process. To avoid this, we pick a random, 53282d19872aSmrg # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link 53292d19872aSmrg # time. Moving up from 0x10000000 also allows more sbrk(2) space. 53302d19872aSmrg _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' 53312d19872aSmrg _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' 53322d19872aSmrg ;; 53332d19872aSmrg 53342d19872aSmrg gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) 53352d19872aSmrg tmp_diet=no 53362d19872aSmrg if test linux-dietlibc = "$host_os"; then 53372d19872aSmrg case $cc_basename in 53382d19872aSmrg diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) 53392d19872aSmrg esac 53402d19872aSmrg fi 53412d19872aSmrg if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ 53422d19872aSmrg && test no = "$tmp_diet" 53432d19872aSmrg then 53442d19872aSmrg tmp_addflag=' $pic_flag' 53452d19872aSmrg tmp_sharedflag='-shared' 53462d19872aSmrg case $cc_basename,$host_cpu in 53472d19872aSmrg pgcc*) # Portland Group C compiler 53482d19872aSmrg _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' 53492d19872aSmrg tmp_addflag=' $pic_flag' 53502d19872aSmrg ;; 53512d19872aSmrg pgf77* | pgf90* | pgf95* | pgfortran*) 53522d19872aSmrg # Portland Group f77 and f90 compilers 53532d19872aSmrg _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' 53542d19872aSmrg tmp_addflag=' $pic_flag -Mnomain' ;; 53552d19872aSmrg ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 53562d19872aSmrg tmp_addflag=' -i_dynamic' ;; 53572d19872aSmrg efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 53582d19872aSmrg tmp_addflag=' -i_dynamic -nofor_main' ;; 53592d19872aSmrg ifc* | ifort*) # Intel Fortran compiler 53602d19872aSmrg tmp_addflag=' -nofor_main' ;; 53612d19872aSmrg lf95*) # Lahey Fortran 8.1 53622d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 53632d19872aSmrg tmp_sharedflag='--shared' ;; 53642d19872aSmrg nagfor*) # NAGFOR 5.3 53652d19872aSmrg tmp_sharedflag='-Wl,-shared' ;; 53662d19872aSmrg xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) 53672d19872aSmrg tmp_sharedflag='-qmkshrobj' 53682d19872aSmrg tmp_addflag= ;; 53692d19872aSmrg nvcc*) # Cuda Compiler Driver 2.2 53702d19872aSmrg _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' 53712d19872aSmrg _LT_TAGVAR(compiler_needs_object, $1)=yes 53722d19872aSmrg ;; 53732d19872aSmrg esac 53742d19872aSmrg case `$CC -V 2>&1 | $SED 5q` in 53752d19872aSmrg *Sun\ C*) # Sun C 5.9 53762d19872aSmrg _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' 53772d19872aSmrg _LT_TAGVAR(compiler_needs_object, $1)=yes 53782d19872aSmrg tmp_sharedflag='-G' ;; 53792d19872aSmrg *Sun\ F*) # Sun Fortran 8.3 53802d19872aSmrg tmp_sharedflag='-G' ;; 53812d19872aSmrg esac 53822d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 53832d19872aSmrg 53842d19872aSmrg if test yes = "$supports_anon_versioning"; then 53852d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 53862d19872aSmrg cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 53872d19872aSmrg echo "local: *; };" >> $output_objdir/$libname.ver~ 53882d19872aSmrg $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' 53892d19872aSmrg fi 53902d19872aSmrg 53912d19872aSmrg case $cc_basename in 53922d19872aSmrg tcc*) 53932f76b07dSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 53942d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' 53952d19872aSmrg ;; 53962d19872aSmrg xlf* | bgf* | bgxlf* | mpixlf*) 53972d19872aSmrg # IBM XL Fortran 10.1 on PPC cannot create shared libs itself 53982d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' 53992d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 54002d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' 54012d19872aSmrg if test yes = "$supports_anon_versioning"; then 54022d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 54032d19872aSmrg cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 54042d19872aSmrg echo "local: *; };" >> $output_objdir/$libname.ver~ 54052d19872aSmrg $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' 54062d19872aSmrg fi 54072d19872aSmrg ;; 54082d19872aSmrg esac 54092d19872aSmrg else 54102d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 54112d19872aSmrg fi 54122d19872aSmrg ;; 54132d19872aSmrg 54142f76b07dSmrg *-mlibc) 54152f76b07dSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 54162f76b07dSmrg _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' 54172f76b07dSmrg ;; 54182f76b07dSmrg 54192f76b07dSmrg netbsd* | netbsdelf*-gnu) 54202d19872aSmrg if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 54212d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' 54222d19872aSmrg wlarc= 54232d19872aSmrg else 54242d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 54252d19872aSmrg _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' 54262d19872aSmrg fi 54272d19872aSmrg ;; 54282d19872aSmrg 54292d19872aSmrg solaris*) 54302d19872aSmrg if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then 54312d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 54322d19872aSmrg cat <<_LT_EOF 1>&2 54332d19872aSmrg 54342d19872aSmrg*** Warning: The releases 2.8.* of the GNU linker cannot reliably 54352d19872aSmrg*** create shared libraries on Solaris systems. Therefore, libtool 54362d19872aSmrg*** is disabling shared libraries support. We urge you to upgrade GNU 54372d19872aSmrg*** binutils to release 2.9.1 or newer. Another option is to modify 54382d19872aSmrg*** your PATH or compiler configuration so that the native linker is 54392d19872aSmrg*** used, and then restart. 54402d19872aSmrg 54412d19872aSmrg_LT_EOF 54422d19872aSmrg elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 54432d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 54442d19872aSmrg _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' 54452d19872aSmrg else 54462d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 54472d19872aSmrg fi 54482d19872aSmrg ;; 54492d19872aSmrg 54502d19872aSmrg sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) 54512d19872aSmrg case `$LD -v 2>&1` in 54522d19872aSmrg *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) 54532d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 54542d19872aSmrg cat <<_LT_EOF 1>&2 54552d19872aSmrg 54562d19872aSmrg*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot 54572d19872aSmrg*** reliably create shared libraries on SCO systems. Therefore, libtool 54582d19872aSmrg*** is disabling shared libraries support. We urge you to upgrade GNU 54592d19872aSmrg*** binutils to release 2.16.91.0.3 or newer. Another option is to modify 54602d19872aSmrg*** your PATH or compiler configuration so that the native linker is 54612d19872aSmrg*** used, and then restart. 54622d19872aSmrg 54632d19872aSmrg_LT_EOF 54642d19872aSmrg ;; 54652d19872aSmrg *) 54662d19872aSmrg # For security reasons, it is highly recommended that you always 54672d19872aSmrg # use absolute paths for naming shared libraries, and exclude the 54682d19872aSmrg # DT_RUNPATH tag from executables and libraries. But doing so 54692d19872aSmrg # requires that you compile everything twice, which is a pain. 54702d19872aSmrg if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 54712d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 54722d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 54732d19872aSmrg _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' 54742d19872aSmrg else 54752d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 54762d19872aSmrg fi 54772d19872aSmrg ;; 54782d19872aSmrg esac 54792d19872aSmrg ;; 54802d19872aSmrg 54812d19872aSmrg sunos4*) 54822d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' 54832d19872aSmrg wlarc= 54842d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 54852d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 54862d19872aSmrg ;; 54872d19872aSmrg 54882d19872aSmrg *) 54892d19872aSmrg if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 54902d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 54912d19872aSmrg _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' 54922d19872aSmrg else 54932d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 54942d19872aSmrg fi 54952d19872aSmrg ;; 54962d19872aSmrg esac 54972d19872aSmrg 54982d19872aSmrg if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then 54992d19872aSmrg runpath_var= 55002d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 55012d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)= 55022d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 55032d19872aSmrg fi 55042d19872aSmrg else 55052d19872aSmrg # PORTME fill in a description of your system's linker (not GNU ld) 55062d19872aSmrg case $host_os in 55072d19872aSmrg aix3*) 55082d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 55092d19872aSmrg _LT_TAGVAR(always_export_symbols, $1)=yes 55102d19872aSmrg _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' 55112d19872aSmrg # Note: this linker hardcodes the directories in LIBPATH if there 55122d19872aSmrg # are no directories specified by -L. 55132d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 55142d19872aSmrg if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then 55152d19872aSmrg # Neither direct hardcoding nor static linking is supported with a 55162d19872aSmrg # broken collect2. 55172d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=unsupported 55182d19872aSmrg fi 55192d19872aSmrg ;; 55202d19872aSmrg 55212d19872aSmrg aix[[4-9]]*) 55222d19872aSmrg if test ia64 = "$host_cpu"; then 55232d19872aSmrg # On IA64, the linker does run time linking by default, so we don't 55242d19872aSmrg # have to do anything special. 55252d19872aSmrg aix_use_runtimelinking=no 55262d19872aSmrg exp_sym_flag='-Bexport' 55272d19872aSmrg no_entry_flag= 55282d19872aSmrg else 55292d19872aSmrg # If we're using GNU nm, then we don't want the "-C" option. 55302d19872aSmrg # -C means demangle to GNU nm, but means don't demangle to AIX nm. 55312d19872aSmrg # Without the "-l" option, or with the "-B" option, AIX nm treats 55322d19872aSmrg # weak defined symbols like other global defined symbols, whereas 55332d19872aSmrg # GNU nm marks them as "W". 55342d19872aSmrg # While the 'weak' keyword is ignored in the Export File, we need 55352d19872aSmrg # it in the Import File for the 'aix-soname' feature, so we have 55362d19872aSmrg # to replace the "-B" option with "-P" for AIX nm. 55372d19872aSmrg if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then 55382d19872aSmrg _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' 55392d19872aSmrg else 55402d19872aSmrg _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 == "L") || (\$ 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' 55412d19872aSmrg fi 55422d19872aSmrg aix_use_runtimelinking=no 55432d19872aSmrg 55442d19872aSmrg # Test if we are trying to use run time linking or normal 55452d19872aSmrg # AIX style linking. If -brtl is somewhere in LDFLAGS, we 55462d19872aSmrg # have runtime linking enabled, and use it for executables. 55472d19872aSmrg # For shared libraries, we enable/disable runtime linking 55482d19872aSmrg # depending on the kind of the shared library created - 55492d19872aSmrg # when "with_aix_soname,aix_use_runtimelinking" is: 55502d19872aSmrg # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables 55512d19872aSmrg # "aix,yes" lib.so shared, rtl:yes, for executables 55522d19872aSmrg # lib.a static archive 55532d19872aSmrg # "both,no" lib.so.V(shr.o) shared, rtl:yes 55542d19872aSmrg # lib.a(lib.so.V) shared, rtl:no, for executables 55552d19872aSmrg # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables 55562d19872aSmrg # lib.a(lib.so.V) shared, rtl:no 55572d19872aSmrg # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables 55582d19872aSmrg # lib.a static archive 55592d19872aSmrg case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) 55602d19872aSmrg for ld_flag in $LDFLAGS; do 55612d19872aSmrg if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then 55622d19872aSmrg aix_use_runtimelinking=yes 55632d19872aSmrg break 55642d19872aSmrg fi 55652d19872aSmrg done 55662d19872aSmrg if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then 55672d19872aSmrg # With aix-soname=svr4, we create the lib.so.V shared archives only, 55682d19872aSmrg # so we don't have lib.a shared libs to link our executables. 55692d19872aSmrg # We have to force runtime linking in this case. 55702d19872aSmrg aix_use_runtimelinking=yes 55712d19872aSmrg LDFLAGS="$LDFLAGS -Wl,-brtl" 55722d19872aSmrg fi 55732d19872aSmrg ;; 55742d19872aSmrg esac 55752d19872aSmrg 55762d19872aSmrg exp_sym_flag='-bexport' 55772d19872aSmrg no_entry_flag='-bnoentry' 55782d19872aSmrg fi 55792d19872aSmrg 55802d19872aSmrg # When large executables or shared objects are built, AIX ld can 55812d19872aSmrg # have problems creating the table of contents. If linking a library 55822d19872aSmrg # or program results in "error TOC overflow" add -mminimal-toc to 55832d19872aSmrg # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not 55842d19872aSmrg # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. 55852d19872aSmrg 55862d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='' 55872d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 55882d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 55892d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 55902d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 55912d19872aSmrg _LT_TAGVAR(file_list_spec, $1)='$wl-f,' 55922d19872aSmrg case $with_aix_soname,$aix_use_runtimelinking in 55932d19872aSmrg aix,*) ;; # traditional, no import file 55942d19872aSmrg svr4,* | *,yes) # use import file 55952d19872aSmrg # The Import File defines what to hardcode. 55962d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 55972d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 55982d19872aSmrg ;; 55992d19872aSmrg esac 56002d19872aSmrg 56012d19872aSmrg if test yes = "$GCC"; then 56022d19872aSmrg case $host_os in aix4.[[012]]|aix4.[[012]].*) 56032d19872aSmrg # We only want to do this on AIX 4.2 and lower, the check 56042d19872aSmrg # below for broken collect2 doesn't work under 4.3+ 56052d19872aSmrg collect2name=`$CC -print-prog-name=collect2` 56062d19872aSmrg if test -f "$collect2name" && 56072d19872aSmrg strings "$collect2name" | $GREP resolve_lib_name >/dev/null 56082d19872aSmrg then 56092d19872aSmrg # We have reworked collect2 56102d19872aSmrg : 56112d19872aSmrg else 56122d19872aSmrg # We have old collect2 56132d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=unsupported 56142d19872aSmrg # It fails to find uninstalled libraries when the uninstalled 56152d19872aSmrg # path is not listed in the libpath. Setting hardcode_minus_L 56162d19872aSmrg # to unsupported forces relinking 56172d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 56182d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 56192d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 56202d19872aSmrg fi 56212d19872aSmrg ;; 56222d19872aSmrg esac 56232d19872aSmrg shared_flag='-shared' 56242d19872aSmrg if test yes = "$aix_use_runtimelinking"; then 56252d19872aSmrg shared_flag="$shared_flag "'$wl-G' 56262d19872aSmrg fi 56272d19872aSmrg # Need to ensure runtime linking is disabled for the traditional 56282d19872aSmrg # shared library, or the linker may eventually find shared libraries 56292d19872aSmrg # /with/ Import File - we do not want to mix them. 56302d19872aSmrg shared_flag_aix='-shared' 56312d19872aSmrg shared_flag_svr4='-shared $wl-G' 56322d19872aSmrg else 56332d19872aSmrg # not using gcc 56342d19872aSmrg if test ia64 = "$host_cpu"; then 56352d19872aSmrg # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release 56362d19872aSmrg # chokes on -Wl,-G. The following line is correct: 56372d19872aSmrg shared_flag='-G' 56382d19872aSmrg else 56392d19872aSmrg if test yes = "$aix_use_runtimelinking"; then 56402d19872aSmrg shared_flag='$wl-G' 56412d19872aSmrg else 56422d19872aSmrg shared_flag='$wl-bM:SRE' 56432d19872aSmrg fi 56442d19872aSmrg shared_flag_aix='$wl-bM:SRE' 56452d19872aSmrg shared_flag_svr4='$wl-G' 56462d19872aSmrg fi 56472d19872aSmrg fi 56482d19872aSmrg 56492d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' 56502d19872aSmrg # It seems that -bexpall does not export symbols beginning with 56512d19872aSmrg # underscore (_), so it is better to generate a list of symbols to export. 56522d19872aSmrg _LT_TAGVAR(always_export_symbols, $1)=yes 56532d19872aSmrg if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then 56542d19872aSmrg # Warning - without using the other runtime loading flags (-brtl), 56552d19872aSmrg # -berok will link without error, but may produce a broken library. 56562d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)='-berok' 56572d19872aSmrg # Determine the default libpath from the value encoded in an 56582d19872aSmrg # empty executable. 56592d19872aSmrg _LT_SYS_MODULE_PATH_AIX([$1]) 56602d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" 56612d19872aSmrg _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 56622d19872aSmrg else 56632d19872aSmrg if test ia64 = "$host_cpu"; then 56642d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' 56652d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" 56662d19872aSmrg _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" 56672d19872aSmrg else 56682d19872aSmrg # Determine the default libpath from the value encoded in an 56692d19872aSmrg # empty executable. 56702d19872aSmrg _LT_SYS_MODULE_PATH_AIX([$1]) 56712d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" 56722d19872aSmrg # Warning - without using the other run time loading flags, 56732d19872aSmrg # -berok will link without error, but may produce a broken library. 56742d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' 56752d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' 56762d19872aSmrg if test yes = "$with_gnu_ld"; then 56772d19872aSmrg # We only use this code for GNU lds that support --whole-archive. 56782d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' 56792d19872aSmrg else 56802d19872aSmrg # Exported symbols can be pulled into shared objects from archives 56812d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' 56822d19872aSmrg fi 56832d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 56842d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' 56852d19872aSmrg # -brtl affects multiple linker settings, -berok does not and is overridden later 56862d19872aSmrg compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' 56872d19872aSmrg if test svr4 != "$with_aix_soname"; then 56882d19872aSmrg # This is similar to how AIX traditionally builds its shared libraries. 56892d19872aSmrg _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' 56902d19872aSmrg fi 56912d19872aSmrg if test aix != "$with_aix_soname"; then 56922d19872aSmrg _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' 56932d19872aSmrg else 56942d19872aSmrg # used by -dlpreopen to get the symbols 56952d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' 56962d19872aSmrg fi 56972d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' 56982d19872aSmrg fi 56992d19872aSmrg fi 57002d19872aSmrg ;; 57012d19872aSmrg 57022d19872aSmrg amigaos*) 57032d19872aSmrg case $host_cpu in 57042d19872aSmrg powerpc) 57052d19872aSmrg # see comment about AmigaOS4 .so support 57062d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 57072d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='' 57082d19872aSmrg ;; 57092d19872aSmrg m68k) 57102d19872aSmrg _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)' 57112d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 57122d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 57132d19872aSmrg ;; 57142d19872aSmrg esac 57152d19872aSmrg ;; 57162d19872aSmrg 57172d19872aSmrg bsdi[[45]]*) 57182d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic 57192d19872aSmrg ;; 57202d19872aSmrg 57212f76b07dSmrg cygwin* | mingw* | windows* | pw32* | cegcc*) 57222d19872aSmrg # When not using gcc, we currently assume that we are using 57232d19872aSmrg # Microsoft Visual C++ or Intel C++ Compiler. 57242d19872aSmrg # hardcode_libdir_flag_spec is actually meaningless, as there is 57252d19872aSmrg # no search path for DLLs. 57262d19872aSmrg case $cc_basename in 57272d19872aSmrg cl* | icl*) 57282d19872aSmrg # Native MSVC or ICC 57292d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 57302d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 57312d19872aSmrg _LT_TAGVAR(always_export_symbols, $1)=yes 57322d19872aSmrg _LT_TAGVAR(file_list_spec, $1)='@' 57332d19872aSmrg # Tell ltmain to make .lib files, not .a files. 57342d19872aSmrg libext=lib 57352d19872aSmrg # Tell ltmain to make .dll files, not .so files. 57362d19872aSmrg shrext_cmds=.dll 57372d19872aSmrg # FIXME: Setting linknames here is a bad hack. 57382f76b07dSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -Fe$output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' 57392d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then 57402d19872aSmrg cp "$export_symbols" "$output_objdir/$soname.def"; 57412d19872aSmrg echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; 57422d19872aSmrg else 57432d19872aSmrg $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; 57442d19872aSmrg fi~ 57452f76b07dSmrg $CC -Fe$tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ 57462d19872aSmrg linknames=' 57472d19872aSmrg # The linker will not automatically build a static lib if we build a DLL. 57482d19872aSmrg # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 57492d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 57502d19872aSmrg _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' 57512d19872aSmrg _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' 57522d19872aSmrg # Don't use ranlib 57532d19872aSmrg _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' 57542d19872aSmrg _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ 57552d19872aSmrg lt_tool_outputfile="@TOOL_OUTPUT@"~ 57562d19872aSmrg case $lt_outputfile in 57572d19872aSmrg *.exe|*.EXE) ;; 57582d19872aSmrg *) 57592d19872aSmrg lt_outputfile=$lt_outputfile.exe 57602d19872aSmrg lt_tool_outputfile=$lt_tool_outputfile.exe 57612d19872aSmrg ;; 57622d19872aSmrg esac~ 57632d19872aSmrg if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then 57642d19872aSmrg $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; 57652d19872aSmrg $RM "$lt_outputfile.manifest"; 57662d19872aSmrg fi' 57672d19872aSmrg ;; 57682d19872aSmrg *) 57692d19872aSmrg # Assume MSVC and ICC wrapper 57702d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 57712d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 57722d19872aSmrg # Tell ltmain to make .lib files, not .a files. 57732d19872aSmrg libext=lib 57742d19872aSmrg # Tell ltmain to make .dll files, not .so files. 57752d19872aSmrg shrext_cmds=.dll 57762d19872aSmrg # FIXME: Setting linknames here is a bad hack. 57772d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' 57782d19872aSmrg # The linker will automatically build a .lib file if we build a DLL. 57792d19872aSmrg _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 57802d19872aSmrg # FIXME: Should let the user specify the lib program. 57812d19872aSmrg _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' 57822d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 57832d19872aSmrg ;; 57842d19872aSmrg esac 57852d19872aSmrg ;; 57862d19872aSmrg 57872d19872aSmrg darwin* | rhapsody*) 57882d19872aSmrg _LT_DARWIN_LINKER_FEATURES($1) 57892d19872aSmrg ;; 57902d19872aSmrg 57912d19872aSmrg dgux*) 57922d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 57932d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 57942d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 57952d19872aSmrg ;; 57962d19872aSmrg 57972d19872aSmrg # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor 57982d19872aSmrg # support. Future versions do this automatically, but an explicit c++rt0.o 57992d19872aSmrg # does not break anything, and helps significantly (at the cost of a little 58002d19872aSmrg # extra space). 58012d19872aSmrg freebsd2.2*) 58022d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' 58032d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 58042d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 58052d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 58062d19872aSmrg ;; 58072d19872aSmrg 58082d19872aSmrg # Unfortunately, older versions of FreeBSD 2 do not have this feature. 58092d19872aSmrg freebsd2.*) 58102d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' 58112d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 58122d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 58132d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 58142d19872aSmrg ;; 58152d19872aSmrg 58162d19872aSmrg # FreeBSD 3 and greater uses gcc -shared to do shared libraries. 58172d19872aSmrg freebsd* | dragonfly* | midnightbsd*) 58182d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 58192d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 58202d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 58212d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 58222d19872aSmrg ;; 58232d19872aSmrg 58242d19872aSmrg hpux9*) 58252d19872aSmrg if test yes = "$GCC"; then 58262d19872aSmrg _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' 58272d19872aSmrg else 58282d19872aSmrg _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' 58292d19872aSmrg fi 58302d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 58312d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 58322d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 58332d19872aSmrg 58342d19872aSmrg # hardcode_minus_L: Not really in the search PATH, 58352d19872aSmrg # but as the default location of the library. 58362d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 58372d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 58382d19872aSmrg ;; 58392d19872aSmrg 58402d19872aSmrg hpux10*) 58412d19872aSmrg if test yes,no = "$GCC,$with_gnu_ld"; then 58422d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' 58432d19872aSmrg else 58442d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' 58452d19872aSmrg fi 58462d19872aSmrg if test no = "$with_gnu_ld"; then 58472d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 58482d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 58492d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 58502d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 58512d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 58522d19872aSmrg # hardcode_minus_L: Not really in the search PATH, 58532d19872aSmrg # but as the default location of the library. 58542d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 58552d19872aSmrg fi 58562d19872aSmrg ;; 58572d19872aSmrg 58582d19872aSmrg hpux11*) 58592d19872aSmrg if test yes,no = "$GCC,$with_gnu_ld"; then 58602d19872aSmrg case $host_cpu in 58612d19872aSmrg hppa*64*) 58622d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' 58632d19872aSmrg ;; 58642d19872aSmrg ia64*) 58652d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' 58662d19872aSmrg ;; 58672d19872aSmrg *) 58682d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' 58692d19872aSmrg ;; 58702d19872aSmrg esac 58712d19872aSmrg else 58722d19872aSmrg case $host_cpu in 58732d19872aSmrg hppa*64*) 58742d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' 58752d19872aSmrg ;; 58762d19872aSmrg ia64*) 58772d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' 58782d19872aSmrg ;; 58792d19872aSmrg *) 58802d19872aSmrg m4_if($1, [], [ 58812d19872aSmrg # Older versions of the 11.00 compiler do not understand -b yet 58822d19872aSmrg # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) 58832d19872aSmrg _LT_LINKER_OPTION([if $CC understands -b], 58842d19872aSmrg _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], 58852d19872aSmrg [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], 58862d19872aSmrg [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], 58872d19872aSmrg [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) 58882d19872aSmrg ;; 58892d19872aSmrg esac 58902d19872aSmrg fi 58912d19872aSmrg if test no = "$with_gnu_ld"; then 58922d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 58932d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 58942d19872aSmrg 58952d19872aSmrg case $host_cpu in 58962d19872aSmrg hppa*64*|ia64*) 58972d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 58982d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 58992d19872aSmrg ;; 59002d19872aSmrg *) 59012d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 59022d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 59032d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 59042d19872aSmrg 59052d19872aSmrg # hardcode_minus_L: Not really in the search PATH, 59062d19872aSmrg # but as the default location of the library. 59072d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 59082d19872aSmrg ;; 59092d19872aSmrg esac 59102d19872aSmrg fi 59112d19872aSmrg ;; 59122d19872aSmrg 59132d19872aSmrg irix5* | irix6* | nonstopux*) 59142d19872aSmrg if test yes = "$GCC"; then 59152d19872aSmrg _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' 59162d19872aSmrg # Try to use the -exported_symbol ld option, if it does not 59172d19872aSmrg # work, assume that -exports_file does not work either and 59182d19872aSmrg # implicitly export all symbols. 59192d19872aSmrg # This should be the same for all languages, so no per-tag cache variable. 59202d19872aSmrg AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], 59212d19872aSmrg [lt_cv_irix_exported_symbol], 59222d19872aSmrg [save_LDFLAGS=$LDFLAGS 59232d19872aSmrg LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" 59242d19872aSmrg AC_LINK_IFELSE( 59252d19872aSmrg [AC_LANG_SOURCE( 59262d19872aSmrg [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], 59272d19872aSmrg [C++], [[int foo (void) { return 0; }]], 59282d19872aSmrg [Fortran 77], [[ 59292d19872aSmrg subroutine foo 59302d19872aSmrg end]], 59312d19872aSmrg [Fortran], [[ 59322d19872aSmrg subroutine foo 59332d19872aSmrg end]])])], 59342d19872aSmrg [lt_cv_irix_exported_symbol=yes], 59352d19872aSmrg [lt_cv_irix_exported_symbol=no]) 59362d19872aSmrg LDFLAGS=$save_LDFLAGS]) 59372d19872aSmrg if test yes = "$lt_cv_irix_exported_symbol"; then 59382d19872aSmrg _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' 59392d19872aSmrg fi 59402d19872aSmrg else 59412d19872aSmrg _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' 59422d19872aSmrg _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' 59432d19872aSmrg fi 59442d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 59452d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 59462d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 59472d19872aSmrg _LT_TAGVAR(inherit_rpath, $1)=yes 59482d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 59492d19872aSmrg ;; 59502d19872aSmrg 59512d19872aSmrg linux*) 59522d19872aSmrg case $cc_basename in 59532d19872aSmrg tcc*) 59542d19872aSmrg # Fabrice Bellard et al's Tiny C Compiler 59552d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=yes 59562d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 59572f76b07dSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 59582d19872aSmrg ;; 59592d19872aSmrg esac 59602d19872aSmrg ;; 59612d19872aSmrg 59622f76b07dSmrg *-mlibc) 59632f76b07dSmrg ;; 59642f76b07dSmrg 59652f76b07dSmrg netbsd* | netbsdelf*-gnu) 59662d19872aSmrg if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 59672d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out 59682d19872aSmrg else 59692d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF 59702d19872aSmrg fi 59712d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 59722d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 59732d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 59742d19872aSmrg ;; 59752d19872aSmrg 59762d19872aSmrg newsos6) 59772d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 59782d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 59792d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 59802d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 59812d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 59822d19872aSmrg ;; 59832d19872aSmrg 59842d19872aSmrg *nto* | *qnx*) 59852d19872aSmrg ;; 59862d19872aSmrg 59872f76b07dSmrg openbsd*) 59882d19872aSmrg if test -f /usr/libexec/ld.so; then 59892d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 59902d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 59912d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 59922d19872aSmrg if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then 59932d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 59942d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' 59952d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 59962d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 59972d19872aSmrg else 59982d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' 59992d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 60002d19872aSmrg fi 60012d19872aSmrg else 60022d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 60032d19872aSmrg fi 60042d19872aSmrg ;; 60052d19872aSmrg 60062d19872aSmrg os2*) 60072d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 60082d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 60092d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 60102d19872aSmrg shrext_cmds=.dll 60112d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 60122d19872aSmrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 60132d19872aSmrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 60142d19872aSmrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 60152d19872aSmrg emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ 60162d19872aSmrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 60172d19872aSmrg emximp -o $lib $output_objdir/$libname.def' 60182d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 60192d19872aSmrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 60202d19872aSmrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 60212d19872aSmrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 60222d19872aSmrg prefix_cmds="$SED"~ 60232d19872aSmrg if test EXPORTS = "`$SED 1q $export_symbols`"; then 60242d19872aSmrg prefix_cmds="$prefix_cmds -e 1d"; 60252d19872aSmrg fi~ 60262d19872aSmrg prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ 60272d19872aSmrg cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 60282d19872aSmrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 60292d19872aSmrg emximp -o $lib $output_objdir/$libname.def' 60302f76b07dSmrg _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' 60312d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 60322d19872aSmrg _LT_TAGVAR(file_list_spec, $1)='@' 60332d19872aSmrg ;; 60342d19872aSmrg 60352d19872aSmrg osf3*) 60362d19872aSmrg if test yes = "$GCC"; then 60372d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' 60382d19872aSmrg _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' 60392d19872aSmrg else 60402d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 60412d19872aSmrg _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' 60422d19872aSmrg fi 60432d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 60442d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 60452d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 60462d19872aSmrg ;; 60472d19872aSmrg 60482d19872aSmrg osf4* | osf5*) # as osf3* with the addition of -msym flag 60492d19872aSmrg if test yes = "$GCC"; then 60502d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' 60512d19872aSmrg _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' 60522d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 60532d19872aSmrg else 60542d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 60552d19872aSmrg _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' 60562d19872aSmrg _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~ 60572d19872aSmrg $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' 60582d19872aSmrg 60592d19872aSmrg # Both c and cxx compiler support -rpath directly 60602d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 60612d19872aSmrg fi 60622d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)='no' 60632d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 60642d19872aSmrg ;; 60652d19872aSmrg 60662f76b07dSmrg serenity*) 60672f76b07dSmrg ;; 60682f76b07dSmrg 60692d19872aSmrg solaris*) 60702d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' 60712d19872aSmrg if test yes = "$GCC"; then 60722d19872aSmrg wlarc='$wl' 60732d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' 60742d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 60752d19872aSmrg $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' 60762d19872aSmrg else 60772d19872aSmrg case `$CC -V 2>&1` in 60782d19872aSmrg *"Compilers 5.0"*) 60792d19872aSmrg wlarc='' 60802d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' 60812d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 60822d19872aSmrg $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' 60832d19872aSmrg ;; 60842d19872aSmrg *) 60852d19872aSmrg wlarc='$wl' 60862d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' 60872d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 60882d19872aSmrg $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' 60892d19872aSmrg ;; 60902d19872aSmrg esac 60912d19872aSmrg fi 60922d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 60932d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 60942d19872aSmrg case $host_os in 60952d19872aSmrg solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 60962d19872aSmrg *) 60972d19872aSmrg # The compiler driver will combine and reorder linker options, 60982d19872aSmrg # but understands '-z linker_flag'. GCC discards it without '$wl', 60992d19872aSmrg # but is careful enough not to reorder. 61002d19872aSmrg # Supported since Solaris 2.6 (maybe 2.5.1?) 61012d19872aSmrg if test yes = "$GCC"; then 61022d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' 61032d19872aSmrg else 61042d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' 61052d19872aSmrg fi 61062d19872aSmrg ;; 61072d19872aSmrg esac 61082d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 61092d19872aSmrg ;; 61102d19872aSmrg 61112d19872aSmrg sunos4*) 61122d19872aSmrg if test sequent = "$host_vendor"; then 61132d19872aSmrg # Use $CC to link under sequent, because it throws in some extra .o 61142d19872aSmrg # files that make .init and .fini sections work. 61152d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' 61162d19872aSmrg else 61172d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' 61182d19872aSmrg fi 61192d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 61202d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 61212d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 61222d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 61232d19872aSmrg ;; 61242d19872aSmrg 61252d19872aSmrg sysv4) 61262d19872aSmrg case $host_vendor in 61272d19872aSmrg sni) 61282d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 61292d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? 61302d19872aSmrg ;; 61312d19872aSmrg siemens) 61322d19872aSmrg ## LD is ld it makes a PLAMLIB 61332d19872aSmrg ## CC just makes a GrossModule. 61342d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' 61352d19872aSmrg _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' 61362d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 61372d19872aSmrg ;; 61382d19872aSmrg motorola) 61392d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 61402d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie 61412d19872aSmrg ;; 61422d19872aSmrg esac 61432d19872aSmrg runpath_var='LD_RUN_PATH' 61442d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 61452d19872aSmrg ;; 61462d19872aSmrg 61472d19872aSmrg sysv4.3*) 61482d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 61492d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 61502d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' 61512d19872aSmrg ;; 61522d19872aSmrg 61532d19872aSmrg sysv4*MP*) 61542d19872aSmrg if test -d /usr/nec; then 61552d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 61562d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 61572d19872aSmrg runpath_var=LD_RUN_PATH 61582d19872aSmrg hardcode_runpath_var=yes 61592d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=yes 61602d19872aSmrg fi 61612d19872aSmrg ;; 61622d19872aSmrg 61632d19872aSmrg sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) 61642d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' 61652d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 61662d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 61672d19872aSmrg runpath_var='LD_RUN_PATH' 61682d19872aSmrg 61692d19872aSmrg if test yes = "$GCC"; then 61702d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 61712d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 61722d19872aSmrg else 61732d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 61742d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 61752d19872aSmrg fi 61762d19872aSmrg ;; 61772d19872aSmrg 61782d19872aSmrg sysv5* | sco3.2v5* | sco5v6*) 61792d19872aSmrg # Note: We CANNOT use -z defs as we might desire, because we do not 61802d19872aSmrg # link with -lc, and that would cause any symbols used from libc to 61812d19872aSmrg # always be unresolved, which means just about no library would 61822d19872aSmrg # ever link correctly. If we're not using GNU ld we use -z text 61832d19872aSmrg # though, which does catch some bad symbols but isn't as heavy-handed 61842d19872aSmrg # as -z defs. 61852d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' 61862d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' 61872d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 61882d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 61892d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' 61902d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 61912d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 61922d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' 61932d19872aSmrg runpath_var='LD_RUN_PATH' 61942d19872aSmrg 61952d19872aSmrg if test yes = "$GCC"; then 61962d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 61972d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 61982d19872aSmrg else 61992d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 62002d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 62012d19872aSmrg fi 62022d19872aSmrg ;; 62032d19872aSmrg 62042d19872aSmrg uts4*) 62052d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' 62062d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 62072d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 62082d19872aSmrg ;; 62092d19872aSmrg 62102d19872aSmrg *) 62112d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 62122d19872aSmrg ;; 62132d19872aSmrg esac 62142d19872aSmrg 62152d19872aSmrg if test sni = "$host_vendor"; then 62162d19872aSmrg case $host in 62172d19872aSmrg sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) 62182d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym' 62192d19872aSmrg ;; 62202d19872aSmrg esac 62212d19872aSmrg fi 62222d19872aSmrg fi 62232d19872aSmrg]) 62242d19872aSmrgAC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) 62252d19872aSmrgtest no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no 62262d19872aSmrg 62272d19872aSmrg_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld 62282d19872aSmrg 62292d19872aSmrg_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl 62302d19872aSmrg_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl 62312d19872aSmrg_LT_DECL([], [extract_expsyms_cmds], [2], 62322d19872aSmrg [The commands to extract the exported symbol list from a shared archive]) 62332d19872aSmrg 62342d19872aSmrg# 62352d19872aSmrg# Do we need to explicitly link libc? 62362d19872aSmrg# 62372d19872aSmrgcase "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in 62382d19872aSmrgx|xyes) 62392d19872aSmrg # Assume -lc should be added 62402d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 62412d19872aSmrg 62422d19872aSmrg if test yes,yes = "$GCC,$enable_shared"; then 62432d19872aSmrg case $_LT_TAGVAR(archive_cmds, $1) in 62442d19872aSmrg *'~'*) 62452d19872aSmrg # FIXME: we may have to deal with multi-command sequences. 62462d19872aSmrg ;; 62472d19872aSmrg '$CC '*) 62482d19872aSmrg # Test whether the compiler implicitly links with -lc since on some 62492d19872aSmrg # systems, -lgcc has to come before -lc. If gcc already passes -lc 62502d19872aSmrg # to ld, don't add -lc before -lgcc. 62512d19872aSmrg AC_CACHE_CHECK([whether -lc should be explicitly linked in], 62522d19872aSmrg [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), 62532d19872aSmrg [$RM conftest* 62542d19872aSmrg echo "$lt_simple_compile_test_code" > conftest.$ac_ext 62552d19872aSmrg 62562d19872aSmrg if AC_TRY_EVAL(ac_compile) 2>conftest.err; then 62572d19872aSmrg soname=conftest 62582d19872aSmrg lib=conftest 62592d19872aSmrg libobjs=conftest.$ac_objext 62602d19872aSmrg deplibs= 62612d19872aSmrg wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) 62622d19872aSmrg pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) 62632d19872aSmrg compiler_flags=-v 62642d19872aSmrg linker_flags=-v 62652d19872aSmrg verstring= 62662d19872aSmrg output_objdir=. 62672d19872aSmrg libname=conftest 62682d19872aSmrg lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) 62692d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)= 62702d19872aSmrg if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 62712d19872aSmrg then 62722d19872aSmrg lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no 62732d19872aSmrg else 62742d19872aSmrg lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes 62752d19872aSmrg fi 62762d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag 62772d19872aSmrg else 62782d19872aSmrg cat conftest.err 1>&5 62792d19872aSmrg fi 62802d19872aSmrg $RM conftest* 62812d19872aSmrg ]) 62822d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) 62832d19872aSmrg ;; 62842d19872aSmrg esac 62852d19872aSmrg fi 62862d19872aSmrg ;; 62872d19872aSmrgesac 62882d19872aSmrg 62892d19872aSmrg_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], 62902d19872aSmrg [Whether or not to add -lc for building shared libraries]) 62912d19872aSmrg_LT_TAGDECL([allow_libtool_libs_with_static_runtimes], 62922d19872aSmrg [enable_shared_with_static_runtimes], [0], 62932d19872aSmrg [Whether or not to disallow shared libs when runtime libs are static]) 62942d19872aSmrg_LT_TAGDECL([], [export_dynamic_flag_spec], [1], 62952d19872aSmrg [Compiler flag to allow reflexive dlopens]) 62962d19872aSmrg_LT_TAGDECL([], [whole_archive_flag_spec], [1], 62972d19872aSmrg [Compiler flag to generate shared objects directly from archives]) 62982d19872aSmrg_LT_TAGDECL([], [compiler_needs_object], [1], 62992d19872aSmrg [Whether the compiler copes with passing no objects directly]) 63002d19872aSmrg_LT_TAGDECL([], [old_archive_from_new_cmds], [2], 63012d19872aSmrg [Create an old-style archive from a shared archive]) 63022d19872aSmrg_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], 63032d19872aSmrg [Create a temporary old-style archive to link instead of a shared archive]) 63042d19872aSmrg_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) 63052d19872aSmrg_LT_TAGDECL([], [archive_expsym_cmds], [2]) 63062d19872aSmrg_LT_TAGDECL([], [module_cmds], [2], 63072d19872aSmrg [Commands used to build a loadable module if different from building 63082d19872aSmrg a shared archive.]) 63092d19872aSmrg_LT_TAGDECL([], [module_expsym_cmds], [2]) 63102d19872aSmrg_LT_TAGDECL([], [with_gnu_ld], [1], 63112d19872aSmrg [Whether we are building with GNU ld or not]) 63122d19872aSmrg_LT_TAGDECL([], [allow_undefined_flag], [1], 63132d19872aSmrg [Flag that allows shared libraries with undefined symbols to be built]) 63142d19872aSmrg_LT_TAGDECL([], [no_undefined_flag], [1], 63152d19872aSmrg [Flag that enforces no undefined symbols]) 63162d19872aSmrg_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], 63172d19872aSmrg [Flag to hardcode $libdir into a binary during linking. 63182d19872aSmrg This must work even if $libdir does not exist]) 63192d19872aSmrg_LT_TAGDECL([], [hardcode_libdir_separator], [1], 63202d19872aSmrg [Whether we need a single "-rpath" flag with a separated argument]) 63212d19872aSmrg_LT_TAGDECL([], [hardcode_direct], [0], 63222d19872aSmrg [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes 63232d19872aSmrg DIR into the resulting binary]) 63242d19872aSmrg_LT_TAGDECL([], [hardcode_direct_absolute], [0], 63252d19872aSmrg [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes 63262d19872aSmrg DIR into the resulting binary and the resulting library dependency is 63272f76b07dSmrg "absolute", i.e. impossible to change by setting $shlibpath_var if the 63282d19872aSmrg library is relocated]) 63292d19872aSmrg_LT_TAGDECL([], [hardcode_minus_L], [0], 63302d19872aSmrg [Set to "yes" if using the -LDIR flag during linking hardcodes DIR 63312d19872aSmrg into the resulting binary]) 63322d19872aSmrg_LT_TAGDECL([], [hardcode_shlibpath_var], [0], 63332d19872aSmrg [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR 63342d19872aSmrg into the resulting binary]) 63352d19872aSmrg_LT_TAGDECL([], [hardcode_automatic], [0], 63362d19872aSmrg [Set to "yes" if building a shared library automatically hardcodes DIR 63372d19872aSmrg into the library and all subsequent libraries and executables linked 63382d19872aSmrg against it]) 63392d19872aSmrg_LT_TAGDECL([], [inherit_rpath], [0], 63402d19872aSmrg [Set to yes if linker adds runtime paths of dependent libraries 63412d19872aSmrg to runtime path list]) 63422d19872aSmrg_LT_TAGDECL([], [link_all_deplibs], [0], 63432d19872aSmrg [Whether libtool must link a program against all its dependency libraries]) 63442d19872aSmrg_LT_TAGDECL([], [always_export_symbols], [0], 63452d19872aSmrg [Set to "yes" if exported symbols are required]) 63462d19872aSmrg_LT_TAGDECL([], [export_symbols_cmds], [2], 63472d19872aSmrg [The commands to list exported symbols]) 63482d19872aSmrg_LT_TAGDECL([], [exclude_expsyms], [1], 63492d19872aSmrg [Symbols that should not be listed in the preloaded symbols]) 63502d19872aSmrg_LT_TAGDECL([], [include_expsyms], [1], 63512d19872aSmrg [Symbols that must always be exported]) 63522d19872aSmrg_LT_TAGDECL([], [prelink_cmds], [2], 63532d19872aSmrg [Commands necessary for linking programs (against libraries) with templates]) 63542d19872aSmrg_LT_TAGDECL([], [postlink_cmds], [2], 63552d19872aSmrg [Commands necessary for finishing linking programs]) 63562d19872aSmrg_LT_TAGDECL([], [file_list_spec], [1], 63572d19872aSmrg [Specify filename containing input files]) 63582d19872aSmrgdnl FIXME: Not yet implemented 63592d19872aSmrgdnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], 63602d19872aSmrgdnl [Compiler flag to generate thread safe objects]) 63612d19872aSmrg])# _LT_LINKER_SHLIBS 63622d19872aSmrg 63632d19872aSmrg 63642d19872aSmrg# _LT_LANG_C_CONFIG([TAG]) 63652d19872aSmrg# ------------------------ 63662d19872aSmrg# Ensure that the configuration variables for a C compiler are suitably 63672d19872aSmrg# defined. These variables are subsequently used by _LT_CONFIG to write 63682d19872aSmrg# the compiler configuration to 'libtool'. 63692d19872aSmrgm4_defun([_LT_LANG_C_CONFIG], 63702d19872aSmrg[m4_require([_LT_DECL_EGREP])dnl 63712d19872aSmrglt_save_CC=$CC 63722d19872aSmrgAC_LANG_PUSH(C) 63732d19872aSmrg 63742d19872aSmrg# Source file extension for C test sources. 63752d19872aSmrgac_ext=c 63762d19872aSmrg 63772d19872aSmrg# Object file extension for compiled C test sources. 63782d19872aSmrgobjext=o 63792d19872aSmrg_LT_TAGVAR(objext, $1)=$objext 63802d19872aSmrg 63812d19872aSmrg# Code to be used in simple compile tests 63822d19872aSmrglt_simple_compile_test_code="int some_variable = 0;" 63832d19872aSmrg 63842d19872aSmrg# Code to be used in simple link tests 63852f76b07dSmrglt_simple_link_test_code='int main(void){return(0);}' 63862d19872aSmrg 63872d19872aSmrg_LT_TAG_COMPILER 63882d19872aSmrg# Save the default compiler, since it gets overwritten when the other 63892d19872aSmrg# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. 63902d19872aSmrgcompiler_DEFAULT=$CC 63912d19872aSmrg 63922d19872aSmrg# save warnings/boilerplate of simple test code 63932d19872aSmrg_LT_COMPILER_BOILERPLATE 63942d19872aSmrg_LT_LINKER_BOILERPLATE 63952d19872aSmrg 63962d19872aSmrg## CAVEAT EMPTOR: 63972d19872aSmrg## There is no encapsulation within the following macros, do not change 63982d19872aSmrg## the running order or otherwise move them around unless you know exactly 63992d19872aSmrg## what you are doing... 64002d19872aSmrgif test -n "$compiler"; then 64012d19872aSmrg _LT_COMPILER_NO_RTTI($1) 64022d19872aSmrg _LT_COMPILER_PIC($1) 64032d19872aSmrg _LT_COMPILER_C_O($1) 64042d19872aSmrg _LT_COMPILER_FILE_LOCKS($1) 64052d19872aSmrg _LT_LINKER_SHLIBS($1) 64062d19872aSmrg _LT_SYS_DYNAMIC_LINKER($1) 64072d19872aSmrg _LT_LINKER_HARDCODE_LIBPATH($1) 64082d19872aSmrg LT_SYS_DLOPEN_SELF 64092d19872aSmrg _LT_CMD_STRIPLIB 64102d19872aSmrg 64112d19872aSmrg # Report what library types will actually be built 64122d19872aSmrg AC_MSG_CHECKING([if libtool supports shared libraries]) 64132d19872aSmrg AC_MSG_RESULT([$can_build_shared]) 64142d19872aSmrg 64152d19872aSmrg AC_MSG_CHECKING([whether to build shared libraries]) 64162d19872aSmrg test no = "$can_build_shared" && enable_shared=no 64172d19872aSmrg 64182d19872aSmrg # On AIX, shared libraries and static libraries use the same namespace, and 64192d19872aSmrg # are all built from PIC. 64202d19872aSmrg case $host_os in 64212d19872aSmrg aix3*) 64222d19872aSmrg test yes = "$enable_shared" && enable_static=no 64232d19872aSmrg if test -n "$RANLIB"; then 64242d19872aSmrg archive_cmds="$archive_cmds~\$RANLIB \$lib" 64252d19872aSmrg postinstall_cmds='$RANLIB $lib' 64262d19872aSmrg fi 64272d19872aSmrg ;; 64282d19872aSmrg 64292d19872aSmrg aix[[4-9]]*) 64302d19872aSmrg if test ia64 != "$host_cpu"; then 64312d19872aSmrg case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in 64322d19872aSmrg yes,aix,yes) ;; # shared object as lib.so file only 64332d19872aSmrg yes,svr4,*) ;; # shared object as lib.so archive member only 64342d19872aSmrg yes,*) enable_static=no ;; # shared object in lib.a archive as well 64352d19872aSmrg esac 64362d19872aSmrg fi 64372d19872aSmrg ;; 64382d19872aSmrg esac 64392d19872aSmrg AC_MSG_RESULT([$enable_shared]) 64402d19872aSmrg 64412d19872aSmrg AC_MSG_CHECKING([whether to build static libraries]) 64422d19872aSmrg # Make sure either enable_shared or enable_static is yes. 64432d19872aSmrg test yes = "$enable_shared" || enable_static=yes 64442d19872aSmrg AC_MSG_RESULT([$enable_static]) 64452d19872aSmrg 64462d19872aSmrg _LT_CONFIG($1) 64472d19872aSmrgfi 64482d19872aSmrgAC_LANG_POP 64492d19872aSmrgCC=$lt_save_CC 64502d19872aSmrg])# _LT_LANG_C_CONFIG 64512d19872aSmrg 64522d19872aSmrg 64532d19872aSmrg# _LT_LANG_CXX_CONFIG([TAG]) 64542d19872aSmrg# -------------------------- 64552d19872aSmrg# Ensure that the configuration variables for a C++ compiler are suitably 64562d19872aSmrg# defined. These variables are subsequently used by _LT_CONFIG to write 64572d19872aSmrg# the compiler configuration to 'libtool'. 64582d19872aSmrgm4_defun([_LT_LANG_CXX_CONFIG], 64592d19872aSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 64602d19872aSmrgm4_require([_LT_DECL_EGREP])dnl 64612d19872aSmrgm4_require([_LT_PATH_MANIFEST_TOOL])dnl 64622d19872aSmrgif test -n "$CXX" && ( test no != "$CXX" && 64632d19872aSmrg ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || 64642d19872aSmrg (test g++ != "$CXX"))); then 64652d19872aSmrg AC_PROG_CXXCPP 64662d19872aSmrgelse 64672d19872aSmrg _lt_caught_CXX_error=yes 64682d19872aSmrgfi 64692d19872aSmrg 64702d19872aSmrgAC_LANG_PUSH(C++) 64712d19872aSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no 64722d19872aSmrg_LT_TAGVAR(allow_undefined_flag, $1)= 64732d19872aSmrg_LT_TAGVAR(always_export_symbols, $1)=no 64742d19872aSmrg_LT_TAGVAR(archive_expsym_cmds, $1)= 64752d19872aSmrg_LT_TAGVAR(compiler_needs_object, $1)=no 64762d19872aSmrg_LT_TAGVAR(export_dynamic_flag_spec, $1)= 64772d19872aSmrg_LT_TAGVAR(hardcode_direct, $1)=no 64782d19872aSmrg_LT_TAGVAR(hardcode_direct_absolute, $1)=no 64792d19872aSmrg_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 64802d19872aSmrg_LT_TAGVAR(hardcode_libdir_separator, $1)= 64812d19872aSmrg_LT_TAGVAR(hardcode_minus_L, $1)=no 64822d19872aSmrg_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported 64832d19872aSmrg_LT_TAGVAR(hardcode_automatic, $1)=no 64842d19872aSmrg_LT_TAGVAR(inherit_rpath, $1)=no 64852d19872aSmrg_LT_TAGVAR(module_cmds, $1)= 64862d19872aSmrg_LT_TAGVAR(module_expsym_cmds, $1)= 64872d19872aSmrg_LT_TAGVAR(link_all_deplibs, $1)=unknown 64882d19872aSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 64892d19872aSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag 64902d19872aSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 64912d19872aSmrg_LT_TAGVAR(no_undefined_flag, $1)= 64922d19872aSmrg_LT_TAGVAR(whole_archive_flag_spec, $1)= 64932d19872aSmrg_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 64942d19872aSmrg 64952d19872aSmrg# Source file extension for C++ test sources. 64962d19872aSmrgac_ext=cpp 64972d19872aSmrg 64982d19872aSmrg# Object file extension for compiled C++ test sources. 64992d19872aSmrgobjext=o 65002d19872aSmrg_LT_TAGVAR(objext, $1)=$objext 65012d19872aSmrg 65022d19872aSmrg# No sense in running all these tests if we already determined that 65032d19872aSmrg# the CXX compiler isn't working. Some variables (like enable_shared) 65042d19872aSmrg# are currently assumed to apply to all compilers on this platform, 65052d19872aSmrg# and will be corrupted by setting them based on a non-working compiler. 65062d19872aSmrgif test yes != "$_lt_caught_CXX_error"; then 65072d19872aSmrg # Code to be used in simple compile tests 65082d19872aSmrg lt_simple_compile_test_code="int some_variable = 0;" 65092d19872aSmrg 65102d19872aSmrg # Code to be used in simple link tests 65112d19872aSmrg lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' 65122d19872aSmrg 65132d19872aSmrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 65142d19872aSmrg _LT_TAG_COMPILER 65152d19872aSmrg 65162d19872aSmrg # save warnings/boilerplate of simple test code 65172d19872aSmrg _LT_COMPILER_BOILERPLATE 65182d19872aSmrg _LT_LINKER_BOILERPLATE 65192d19872aSmrg 65202d19872aSmrg # Allow CC to be a program name with arguments. 65212d19872aSmrg lt_save_CC=$CC 65222d19872aSmrg lt_save_CFLAGS=$CFLAGS 65232d19872aSmrg lt_save_LD=$LD 65242d19872aSmrg lt_save_GCC=$GCC 65252d19872aSmrg GCC=$GXX 65262d19872aSmrg lt_save_with_gnu_ld=$with_gnu_ld 65272d19872aSmrg lt_save_path_LD=$lt_cv_path_LD 65282d19872aSmrg if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then 65292d19872aSmrg lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx 65302d19872aSmrg else 65312d19872aSmrg $as_unset lt_cv_prog_gnu_ld 65322d19872aSmrg fi 65332d19872aSmrg if test -n "${lt_cv_path_LDCXX+set}"; then 65342d19872aSmrg lt_cv_path_LD=$lt_cv_path_LDCXX 65352d19872aSmrg else 65362d19872aSmrg $as_unset lt_cv_path_LD 65372d19872aSmrg fi 65382d19872aSmrg test -z "${LDCXX+set}" || LD=$LDCXX 65392d19872aSmrg CC=${CXX-"c++"} 65402d19872aSmrg CFLAGS=$CXXFLAGS 65412d19872aSmrg compiler=$CC 65422d19872aSmrg _LT_TAGVAR(compiler, $1)=$CC 65432d19872aSmrg _LT_CC_BASENAME([$compiler]) 65442d19872aSmrg 65452d19872aSmrg if test -n "$compiler"; then 65462d19872aSmrg # We don't want -fno-exception when compiling C++ code, so set the 65472d19872aSmrg # no_builtin_flag separately 65482d19872aSmrg if test yes = "$GXX"; then 65492d19872aSmrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' 65502d19872aSmrg else 65512d19872aSmrg _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= 65522d19872aSmrg fi 65532d19872aSmrg 65542d19872aSmrg if test yes = "$GXX"; then 65552d19872aSmrg # Set up default GNU C++ configuration 65562d19872aSmrg 65572d19872aSmrg LT_PATH_LD 65582d19872aSmrg 65592d19872aSmrg # Check if GNU C++ uses GNU ld as the underlying linker, since the 65602d19872aSmrg # archiving commands below assume that GNU ld is being used. 65612d19872aSmrg if test yes = "$with_gnu_ld"; then 65622d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 65632d19872aSmrg _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' 65642d19872aSmrg 65652d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 65662d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 65672d19872aSmrg 65682d19872aSmrg # If archive_cmds runs LD, not CC, wlarc should be empty 65692d19872aSmrg # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to 65702d19872aSmrg # investigate it a little bit more. (MM) 65712d19872aSmrg wlarc='$wl' 65722d19872aSmrg 65732d19872aSmrg # ancient GNU ld didn't support --whole-archive et. al. 65742f76b07dSmrg if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then 65752d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' 65762d19872aSmrg else 65772d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)= 65782d19872aSmrg fi 65792d19872aSmrg else 65802d19872aSmrg with_gnu_ld=no 65812d19872aSmrg wlarc= 65822d19872aSmrg 65832d19872aSmrg # A generic and very simple default shared library creation 65842d19872aSmrg # command for GNU C++ for the case where it uses the native 65852d19872aSmrg # linker, instead of GNU ld. If possible, this setting should 65862d19872aSmrg # overridden to take advantage of the native linker features on 65872d19872aSmrg # the platform it is being used on. 65882d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' 65892d19872aSmrg fi 65902d19872aSmrg 65912d19872aSmrg # Commands to make compiler produce verbose output that lists 65922d19872aSmrg # what "hidden" libraries, object files and flags are used when 65932d19872aSmrg # linking a shared library. 65942f76b07dSmrg output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"' 65952d19872aSmrg 65962d19872aSmrg else 65972d19872aSmrg GXX=no 65982d19872aSmrg with_gnu_ld=no 65992d19872aSmrg wlarc= 66002d19872aSmrg fi 66012d19872aSmrg 66022d19872aSmrg # PORTME: fill in a description of your system's C++ link characteristics 66032d19872aSmrg AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) 66042d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=yes 66052d19872aSmrg case $host_os in 66062d19872aSmrg aix3*) 66072d19872aSmrg # FIXME: insert proper C++ library support 66082d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 66092d19872aSmrg ;; 66102d19872aSmrg aix[[4-9]]*) 66112d19872aSmrg if test ia64 = "$host_cpu"; then 66122d19872aSmrg # On IA64, the linker does run time linking by default, so we don't 66132d19872aSmrg # have to do anything special. 66142d19872aSmrg aix_use_runtimelinking=no 66152d19872aSmrg exp_sym_flag='-Bexport' 66162d19872aSmrg no_entry_flag= 66172d19872aSmrg else 66182d19872aSmrg aix_use_runtimelinking=no 66192d19872aSmrg 66202d19872aSmrg # Test if we are trying to use run time linking or normal 66212d19872aSmrg # AIX style linking. If -brtl is somewhere in LDFLAGS, we 66222d19872aSmrg # have runtime linking enabled, and use it for executables. 66232d19872aSmrg # For shared libraries, we enable/disable runtime linking 66242d19872aSmrg # depending on the kind of the shared library created - 66252d19872aSmrg # when "with_aix_soname,aix_use_runtimelinking" is: 66262d19872aSmrg # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables 66272d19872aSmrg # "aix,yes" lib.so shared, rtl:yes, for executables 66282d19872aSmrg # lib.a static archive 66292d19872aSmrg # "both,no" lib.so.V(shr.o) shared, rtl:yes 66302d19872aSmrg # lib.a(lib.so.V) shared, rtl:no, for executables 66312d19872aSmrg # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables 66322d19872aSmrg # lib.a(lib.so.V) shared, rtl:no 66332d19872aSmrg # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables 66342d19872aSmrg # lib.a static archive 66352d19872aSmrg case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) 66362d19872aSmrg for ld_flag in $LDFLAGS; do 66372d19872aSmrg case $ld_flag in 66382d19872aSmrg *-brtl*) 66392d19872aSmrg aix_use_runtimelinking=yes 66402d19872aSmrg break 66412d19872aSmrg ;; 66422d19872aSmrg esac 66432d19872aSmrg done 66442d19872aSmrg if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then 66452d19872aSmrg # With aix-soname=svr4, we create the lib.so.V shared archives only, 66462d19872aSmrg # so we don't have lib.a shared libs to link our executables. 66472d19872aSmrg # We have to force runtime linking in this case. 66482d19872aSmrg aix_use_runtimelinking=yes 66492d19872aSmrg LDFLAGS="$LDFLAGS -Wl,-brtl" 66502d19872aSmrg fi 66512d19872aSmrg ;; 66522d19872aSmrg esac 66532d19872aSmrg 66542d19872aSmrg exp_sym_flag='-bexport' 66552d19872aSmrg no_entry_flag='-bnoentry' 66562d19872aSmrg fi 66572d19872aSmrg 66582d19872aSmrg # When large executables or shared objects are built, AIX ld can 66592d19872aSmrg # have problems creating the table of contents. If linking a library 66602d19872aSmrg # or program results in "error TOC overflow" add -mminimal-toc to 66612d19872aSmrg # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not 66622d19872aSmrg # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. 66632d19872aSmrg 66642d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='' 66652d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 66662d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 66672d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 66682d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 66692d19872aSmrg _LT_TAGVAR(file_list_spec, $1)='$wl-f,' 66702d19872aSmrg case $with_aix_soname,$aix_use_runtimelinking in 66712d19872aSmrg aix,*) ;; # no import file 66722d19872aSmrg svr4,* | *,yes) # use import file 66732d19872aSmrg # The Import File defines what to hardcode. 66742d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 66752d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=no 66762d19872aSmrg ;; 66772d19872aSmrg esac 66782d19872aSmrg 66792d19872aSmrg if test yes = "$GXX"; then 66802d19872aSmrg case $host_os in aix4.[[012]]|aix4.[[012]].*) 66812d19872aSmrg # We only want to do this on AIX 4.2 and lower, the check 66822d19872aSmrg # below for broken collect2 doesn't work under 4.3+ 66832d19872aSmrg collect2name=`$CC -print-prog-name=collect2` 66842d19872aSmrg if test -f "$collect2name" && 66852d19872aSmrg strings "$collect2name" | $GREP resolve_lib_name >/dev/null 66862d19872aSmrg then 66872d19872aSmrg # We have reworked collect2 66882d19872aSmrg : 66892d19872aSmrg else 66902d19872aSmrg # We have old collect2 66912d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=unsupported 66922d19872aSmrg # It fails to find uninstalled libraries when the uninstalled 66932d19872aSmrg # path is not listed in the libpath. Setting hardcode_minus_L 66942d19872aSmrg # to unsupported forces relinking 66952d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 66962d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 66972d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)= 66982d19872aSmrg fi 66992d19872aSmrg esac 67002d19872aSmrg shared_flag='-shared' 67012d19872aSmrg if test yes = "$aix_use_runtimelinking"; then 67022d19872aSmrg shared_flag=$shared_flag' $wl-G' 67032d19872aSmrg fi 67042d19872aSmrg # Need to ensure runtime linking is disabled for the traditional 67052d19872aSmrg # shared library, or the linker may eventually find shared libraries 67062d19872aSmrg # /with/ Import File - we do not want to mix them. 67072d19872aSmrg shared_flag_aix='-shared' 67082d19872aSmrg shared_flag_svr4='-shared $wl-G' 67092d19872aSmrg else 67102d19872aSmrg # not using gcc 67112d19872aSmrg if test ia64 = "$host_cpu"; then 67122d19872aSmrg # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release 67132d19872aSmrg # chokes on -Wl,-G. The following line is correct: 67142d19872aSmrg shared_flag='-G' 67152d19872aSmrg else 67162d19872aSmrg if test yes = "$aix_use_runtimelinking"; then 67172d19872aSmrg shared_flag='$wl-G' 67182d19872aSmrg else 67192d19872aSmrg shared_flag='$wl-bM:SRE' 67202d19872aSmrg fi 67212d19872aSmrg shared_flag_aix='$wl-bM:SRE' 67222d19872aSmrg shared_flag_svr4='$wl-G' 67232d19872aSmrg fi 67242d19872aSmrg fi 67252d19872aSmrg 67262d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' 67272d19872aSmrg # It seems that -bexpall does not export symbols beginning with 67282d19872aSmrg # underscore (_), so it is better to generate a list of symbols to 67292d19872aSmrg # export. 67302d19872aSmrg _LT_TAGVAR(always_export_symbols, $1)=yes 67312d19872aSmrg if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then 67322d19872aSmrg # Warning - without using the other runtime loading flags (-brtl), 67332d19872aSmrg # -berok will link without error, but may produce a broken library. 67342d19872aSmrg # The "-G" linker flag allows undefined symbols. 67352d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)='-bernotok' 67362d19872aSmrg # Determine the default libpath from the value encoded in an empty 67372d19872aSmrg # executable. 67382d19872aSmrg _LT_SYS_MODULE_PATH_AIX([$1]) 67392d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" 67402d19872aSmrg 67412d19872aSmrg _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 67422d19872aSmrg else 67432d19872aSmrg if test ia64 = "$host_cpu"; then 67442d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' 67452d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" 67462d19872aSmrg _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" 67472d19872aSmrg else 67482d19872aSmrg # Determine the default libpath from the value encoded in an 67492d19872aSmrg # empty executable. 67502d19872aSmrg _LT_SYS_MODULE_PATH_AIX([$1]) 67512d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" 67522d19872aSmrg # Warning - without using the other run time loading flags, 67532d19872aSmrg # -berok will link without error, but may produce a broken library. 67542d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' 67552d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' 67562d19872aSmrg if test yes = "$with_gnu_ld"; then 67572d19872aSmrg # We only use this code for GNU lds that support --whole-archive. 67582d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' 67592d19872aSmrg else 67602d19872aSmrg # Exported symbols can be pulled into shared objects from archives 67612d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' 67622d19872aSmrg fi 67632d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=yes 67642d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' 67652d19872aSmrg # -brtl affects multiple linker settings, -berok does not and is overridden later 67662d19872aSmrg compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' 67672d19872aSmrg if test svr4 != "$with_aix_soname"; then 67682d19872aSmrg # This is similar to how AIX traditionally builds its shared 67692d19872aSmrg # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. 67702d19872aSmrg _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' 67712d19872aSmrg fi 67722d19872aSmrg if test aix != "$with_aix_soname"; then 67732d19872aSmrg _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' 67742d19872aSmrg else 67752d19872aSmrg # used by -dlpreopen to get the symbols 67762d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' 67772d19872aSmrg fi 67782d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' 67792d19872aSmrg fi 67802d19872aSmrg fi 67812d19872aSmrg ;; 67822d19872aSmrg 67832d19872aSmrg beos*) 67842d19872aSmrg if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then 67852d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 67862d19872aSmrg # Joseph Beckenbach <jrb3@best.com> says some releases of gcc 67872d19872aSmrg # support --undefined. This deserves some investigation. FIXME 67882d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 67892d19872aSmrg else 67902d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 67912d19872aSmrg fi 67922d19872aSmrg ;; 67932d19872aSmrg 67942d19872aSmrg chorus*) 67952d19872aSmrg case $cc_basename in 67962d19872aSmrg *) 67972d19872aSmrg # FIXME: insert proper C++ library support 67982d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 67992d19872aSmrg ;; 68002d19872aSmrg esac 68012d19872aSmrg ;; 68022d19872aSmrg 68032f76b07dSmrg cygwin* | mingw* | windows* | pw32* | cegcc*) 68042d19872aSmrg case $GXX,$cc_basename in 68052d19872aSmrg ,cl* | no,cl* | ,icl* | no,icl*) 68062d19872aSmrg # Native MSVC or ICC 68072d19872aSmrg # hardcode_libdir_flag_spec is actually meaningless, as there is 68082d19872aSmrg # no search path for DLLs. 68092d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' 68102d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 68112d19872aSmrg _LT_TAGVAR(always_export_symbols, $1)=yes 68122d19872aSmrg _LT_TAGVAR(file_list_spec, $1)='@' 68132d19872aSmrg # Tell ltmain to make .lib files, not .a files. 68142d19872aSmrg libext=lib 68152d19872aSmrg # Tell ltmain to make .dll files, not .so files. 68162d19872aSmrg shrext_cmds=.dll 68172d19872aSmrg # FIXME: Setting linknames here is a bad hack. 68182d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' 68192d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then 68202d19872aSmrg cp "$export_symbols" "$output_objdir/$soname.def"; 68212d19872aSmrg echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; 68222d19872aSmrg else 68232d19872aSmrg $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; 68242d19872aSmrg fi~ 68252d19872aSmrg $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ 68262d19872aSmrg linknames=' 68272d19872aSmrg # The linker will not automatically build a static lib if we build a DLL. 68282d19872aSmrg # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' 68292d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 68302d19872aSmrg # Don't use ranlib 68312d19872aSmrg _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' 68322d19872aSmrg _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ 68332d19872aSmrg lt_tool_outputfile="@TOOL_OUTPUT@"~ 68342d19872aSmrg case $lt_outputfile in 68352d19872aSmrg *.exe|*.EXE) ;; 68362d19872aSmrg *) 68372d19872aSmrg lt_outputfile=$lt_outputfile.exe 68382d19872aSmrg lt_tool_outputfile=$lt_tool_outputfile.exe 68392d19872aSmrg ;; 68402d19872aSmrg esac~ 68412d19872aSmrg func_to_tool_file "$lt_outputfile"~ 68422d19872aSmrg if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then 68432d19872aSmrg $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; 68442d19872aSmrg $RM "$lt_outputfile.manifest"; 68452d19872aSmrg fi' 68462d19872aSmrg ;; 68472d19872aSmrg *) 68482d19872aSmrg # g++ 68492d19872aSmrg # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, 68502d19872aSmrg # as there is no search path for DLLs. 68512d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 68522d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' 68532d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 68542d19872aSmrg _LT_TAGVAR(always_export_symbols, $1)=no 68552d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 68562f76b07dSmrg _LT_TAGVAR(file_list_spec, $1)='@' 68572d19872aSmrg 68582d19872aSmrg if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then 68592d19872aSmrg _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' 68602d19872aSmrg # If the export-symbols file already is a .def file, use it as 68612d19872aSmrg # is; otherwise, prepend EXPORTS... 68622d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then 68632d19872aSmrg cp $export_symbols $output_objdir/$soname.def; 68642d19872aSmrg else 68652d19872aSmrg echo EXPORTS > $output_objdir/$soname.def; 68662d19872aSmrg cat $export_symbols >> $output_objdir/$soname.def; 68672d19872aSmrg fi~ 68682d19872aSmrg $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' 68692d19872aSmrg else 68702d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 68712d19872aSmrg fi 68722d19872aSmrg ;; 68732d19872aSmrg esac 68742d19872aSmrg ;; 68752d19872aSmrg darwin* | rhapsody*) 68762d19872aSmrg _LT_DARWIN_LINKER_FEATURES($1) 68772d19872aSmrg ;; 68782d19872aSmrg 68792d19872aSmrg os2*) 68802d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' 68812d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes 68822d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=unsupported 68832d19872aSmrg shrext_cmds=.dll 68842d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 68852d19872aSmrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 68862d19872aSmrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 68872d19872aSmrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 68882d19872aSmrg emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ 68892d19872aSmrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 68902d19872aSmrg emximp -o $lib $output_objdir/$libname.def' 68912d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ 68922d19872aSmrg $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ 68932d19872aSmrg $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ 68942d19872aSmrg $ECHO EXPORTS >> $output_objdir/$libname.def~ 68952d19872aSmrg prefix_cmds="$SED"~ 68962d19872aSmrg if test EXPORTS = "`$SED 1q $export_symbols`"; then 68972d19872aSmrg prefix_cmds="$prefix_cmds -e 1d"; 68982d19872aSmrg fi~ 68992d19872aSmrg prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ 69002d19872aSmrg cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ 69012d19872aSmrg $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ 69022d19872aSmrg emximp -o $lib $output_objdir/$libname.def' 69032f76b07dSmrg _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' 69042d19872aSmrg _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes 69052d19872aSmrg _LT_TAGVAR(file_list_spec, $1)='@' 69062d19872aSmrg ;; 69072d19872aSmrg 69082d19872aSmrg dgux*) 69092d19872aSmrg case $cc_basename in 69102d19872aSmrg ec++*) 69112d19872aSmrg # FIXME: insert proper C++ library support 69122d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 69132d19872aSmrg ;; 69142d19872aSmrg ghcx*) 69152d19872aSmrg # Green Hills C++ Compiler 69162d19872aSmrg # FIXME: insert proper C++ library support 69172d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 69182d19872aSmrg ;; 69192d19872aSmrg *) 69202d19872aSmrg # FIXME: insert proper C++ library support 69212d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 69222d19872aSmrg ;; 69232d19872aSmrg esac 69242d19872aSmrg ;; 69252d19872aSmrg 69262d19872aSmrg freebsd2.*) 69272d19872aSmrg # C++ shared libraries reported to be fairly broken before 69282d19872aSmrg # switch to ELF 69292d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 69302d19872aSmrg ;; 69312d19872aSmrg 69322d19872aSmrg freebsd-elf*) 69332d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 69342d19872aSmrg ;; 69352d19872aSmrg 69362d19872aSmrg freebsd* | dragonfly* | midnightbsd*) 69372d19872aSmrg # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF 69382d19872aSmrg # conventions 69392d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=yes 69402d19872aSmrg ;; 69412d19872aSmrg 69422d19872aSmrg haiku*) 69432d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 69442f76b07dSmrg _LT_TAGVAR(link_all_deplibs, $1)=no 69452d19872aSmrg ;; 69462d19872aSmrg 69472d19872aSmrg hpux9*) 69482d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 69492d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 69502d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 69512d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 69522d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, 69532d19872aSmrg # but as the default 69542d19872aSmrg # location of the library. 69552d19872aSmrg 69562d19872aSmrg case $cc_basename in 69572d19872aSmrg CC*) 69582d19872aSmrg # FIXME: insert proper C++ library support 69592d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 69602d19872aSmrg ;; 69612d19872aSmrg aCC*) 69622d19872aSmrg _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' 69632d19872aSmrg # Commands to make compiler produce verbose output that lists 69642d19872aSmrg # what "hidden" libraries, object files and flags are used when 69652d19872aSmrg # linking a shared library. 69662d19872aSmrg # 69672d19872aSmrg # There doesn't appear to be a way to prevent this compiler from 69682d19872aSmrg # explicitly linking system object files so we need to strip them 69692d19872aSmrg # from the output so that they don't get included in the library 69702d19872aSmrg # dependencies. 69712f76b07dSmrg 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"' 69722d19872aSmrg ;; 69732d19872aSmrg *) 69742d19872aSmrg if test yes = "$GXX"; then 69752d19872aSmrg _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' 69762d19872aSmrg else 69772d19872aSmrg # FIXME: insert proper C++ library support 69782d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 69792d19872aSmrg fi 69802d19872aSmrg ;; 69812d19872aSmrg esac 69822d19872aSmrg ;; 69832d19872aSmrg 69842d19872aSmrg hpux10*|hpux11*) 69852d19872aSmrg if test no = "$with_gnu_ld"; then 69862d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' 69872d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 69882d19872aSmrg 69892d19872aSmrg case $host_cpu in 69902d19872aSmrg hppa*64*|ia64*) 69912d19872aSmrg ;; 69922d19872aSmrg *) 69932d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 69942d19872aSmrg ;; 69952d19872aSmrg esac 69962d19872aSmrg fi 69972d19872aSmrg case $host_cpu in 69982d19872aSmrg hppa*64*|ia64*) 69992d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 70002d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 70012d19872aSmrg ;; 70022d19872aSmrg *) 70032d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 70042d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 70052d19872aSmrg _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, 70062d19872aSmrg # but as the default 70072d19872aSmrg # location of the library. 70082d19872aSmrg ;; 70092d19872aSmrg esac 70102d19872aSmrg 70112d19872aSmrg case $cc_basename in 70122d19872aSmrg CC*) 70132d19872aSmrg # FIXME: insert proper C++ library support 70142d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 70152d19872aSmrg ;; 70162d19872aSmrg aCC*) 70172d19872aSmrg case $host_cpu in 70182d19872aSmrg hppa*64*) 70192d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 70202d19872aSmrg ;; 70212d19872aSmrg ia64*) 70222d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 70232d19872aSmrg ;; 70242d19872aSmrg *) 70252d19872aSmrg _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' 70262d19872aSmrg ;; 70272d19872aSmrg esac 70282d19872aSmrg # Commands to make compiler produce verbose output that lists 70292d19872aSmrg # what "hidden" libraries, object files and flags are used when 70302d19872aSmrg # linking a shared library. 70312d19872aSmrg # 70322d19872aSmrg # There doesn't appear to be a way to prevent this compiler from 70332d19872aSmrg # explicitly linking system object files so we need to strip them 70342d19872aSmrg # from the output so that they don't get included in the library 70352d19872aSmrg # dependencies. 70362f76b07dSmrg 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"' 70372d19872aSmrg ;; 70382d19872aSmrg *) 70392d19872aSmrg if test yes = "$GXX"; then 70402d19872aSmrg if test no = "$with_gnu_ld"; then 70412d19872aSmrg case $host_cpu in 70422d19872aSmrg hppa*64*) 70432d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 70442d19872aSmrg ;; 70452d19872aSmrg ia64*) 70462d19872aSmrg _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' 70472d19872aSmrg ;; 70482d19872aSmrg *) 70492d19872aSmrg _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' 70502d19872aSmrg ;; 70512d19872aSmrg esac 70522d19872aSmrg fi 70532d19872aSmrg else 70542d19872aSmrg # FIXME: insert proper C++ library support 70552d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 70562d19872aSmrg fi 70572d19872aSmrg ;; 70582d19872aSmrg esac 70592d19872aSmrg ;; 70602d19872aSmrg 70612d19872aSmrg interix[[3-9]]*) 70622d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=no 70632d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 70642d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 70652d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 70662d19872aSmrg # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. 70672d19872aSmrg # Instead, shared libraries are loaded at an image base (0x10000000 by 70682d19872aSmrg # default) and relocated if they conflict, which is a slow very memory 70692d19872aSmrg # consuming and fragmenting process. To avoid this, we pick a random, 70702d19872aSmrg # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link 70712d19872aSmrg # time. Moving up from 0x10000000 also allows more sbrk(2) space. 70722d19872aSmrg _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' 70732d19872aSmrg _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' 70742d19872aSmrg ;; 70752d19872aSmrg irix5* | irix6*) 70762d19872aSmrg case $cc_basename in 70772d19872aSmrg CC*) 70782d19872aSmrg # SGI C++ 70792d19872aSmrg _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' 70802d19872aSmrg 70812d19872aSmrg # Archives containing C++ object files must be created using 70822d19872aSmrg # "CC -ar", where "CC" is the IRIX C++ compiler. This is 70832d19872aSmrg # necessary to make sure instantiated templates are included 70842d19872aSmrg # in the archive. 70852d19872aSmrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' 70862d19872aSmrg ;; 70872d19872aSmrg *) 70882d19872aSmrg if test yes = "$GXX"; then 70892d19872aSmrg if test no = "$with_gnu_ld"; then 70902d19872aSmrg _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' 70912d19872aSmrg else 70922d19872aSmrg _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' 70932d19872aSmrg fi 70942d19872aSmrg fi 70952d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 70962d19872aSmrg ;; 70972d19872aSmrg esac 70982d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 70992d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 71002d19872aSmrg _LT_TAGVAR(inherit_rpath, $1)=yes 71012d19872aSmrg ;; 71022d19872aSmrg 71032d19872aSmrg linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) 71042d19872aSmrg case $cc_basename in 71052d19872aSmrg KCC*) 71062d19872aSmrg # Kuck and Associates, Inc. (KAI) C++ Compiler 71072d19872aSmrg 71082d19872aSmrg # KCC will only create a shared library if the output file 71092d19872aSmrg # ends with ".so" (or ".sl" for HP-UX), so rename the library 71102d19872aSmrg # to its proper name (with version) after linking. 71112d19872aSmrg _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' 71122d19872aSmrg _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' 71132d19872aSmrg # Commands to make compiler produce verbose output that lists 71142d19872aSmrg # what "hidden" libraries, object files and flags are used when 71152d19872aSmrg # linking a shared library. 71162d19872aSmrg # 71172d19872aSmrg # There doesn't appear to be a way to prevent this compiler from 71182d19872aSmrg # explicitly linking system object files so we need to strip them 71192d19872aSmrg # from the output so that they don't get included in the library 71202d19872aSmrg # dependencies. 71212d19872aSmrg 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"' 71222d19872aSmrg 71232d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 71242d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 71252d19872aSmrg 71262d19872aSmrg # Archives containing C++ object files must be created using 71272d19872aSmrg # "CC -Bstatic", where "CC" is the KAI C++ compiler. 71282d19872aSmrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' 71292d19872aSmrg ;; 71302d19872aSmrg icpc* | ecpc* ) 71312d19872aSmrg # Intel C++ 71322d19872aSmrg with_gnu_ld=yes 71332d19872aSmrg # version 8.0 and above of icpc choke on multiply defined symbols 71342d19872aSmrg # if we add $predep_objects and $postdep_objects, however 7.1 and 71352d19872aSmrg # earlier do not add the objects themselves. 71362d19872aSmrg case `$CC -V 2>&1` in 71372d19872aSmrg *"Version 7."*) 71382d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 71392d19872aSmrg _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' 71402d19872aSmrg ;; 71412d19872aSmrg *) # Version 8.0 or newer 71422d19872aSmrg tmp_idyn= 71432d19872aSmrg case $host_cpu in 71442d19872aSmrg ia64*) tmp_idyn=' -i_dynamic';; 71452d19872aSmrg esac 71462d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 71472d19872aSmrg _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' 71482d19872aSmrg ;; 71492d19872aSmrg esac 71502d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 71512d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 71522d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 71532d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' 71542d19872aSmrg ;; 71552d19872aSmrg pgCC* | pgcpp*) 71562d19872aSmrg # Portland Group C++ compiler 71572d19872aSmrg case `$CC -V` in 71582d19872aSmrg *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) 71592d19872aSmrg _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ 71602d19872aSmrg rm -rf $tpldir~ 71612d19872aSmrg $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ 71622d19872aSmrg compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' 71632d19872aSmrg _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ 71642d19872aSmrg rm -rf $tpldir~ 71652d19872aSmrg $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ 71662d19872aSmrg $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ 71672d19872aSmrg $RANLIB $oldlib' 71682d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ 71692d19872aSmrg rm -rf $tpldir~ 71702d19872aSmrg $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ 71712d19872aSmrg $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 71722d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ 71732d19872aSmrg rm -rf $tpldir~ 71742d19872aSmrg $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ 71752d19872aSmrg $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' 71762d19872aSmrg ;; 71772d19872aSmrg *) # Version 6 and above use weak symbols 71782d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 71792d19872aSmrg _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' 71802d19872aSmrg ;; 71812d19872aSmrg esac 71822d19872aSmrg 71832d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir' 71842d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 71852d19872aSmrg _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' 71862d19872aSmrg ;; 71872d19872aSmrg cxx*) 71882d19872aSmrg # Compaq C++ 71892d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' 71902d19872aSmrg _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' 71912d19872aSmrg 71922d19872aSmrg runpath_var=LD_RUN_PATH 71932d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 71942d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 71952d19872aSmrg 71962d19872aSmrg # Commands to make compiler produce verbose output that lists 71972d19872aSmrg # what "hidden" libraries, object files and flags are used when 71982d19872aSmrg # linking a shared library. 71992d19872aSmrg # 72002d19872aSmrg # There doesn't appear to be a way to prevent this compiler from 72012d19872aSmrg # explicitly linking system object files so we need to strip them 72022d19872aSmrg # from the output so that they don't get included in the library 72032d19872aSmrg # dependencies. 72042d19872aSmrg 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' 72052d19872aSmrg ;; 72062d19872aSmrg xl* | mpixl* | bgxl*) 72072d19872aSmrg # IBM XL 8.0 on PPC, with GNU ld 72082d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 72092d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' 72102d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' 72112d19872aSmrg if test yes = "$supports_anon_versioning"; then 72122d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ 72132d19872aSmrg cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ 72142d19872aSmrg echo "local: *; };" >> $output_objdir/$libname.ver~ 72152d19872aSmrg $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' 72162d19872aSmrg fi 72172d19872aSmrg ;; 72182d19872aSmrg *) 72192d19872aSmrg case `$CC -V 2>&1 | $SED 5q` in 72202d19872aSmrg *Sun\ C*) 72212d19872aSmrg # Sun C++ 5.9 72222d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' 72232d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 72242d19872aSmrg _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' 72252d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 72262d19872aSmrg _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' 72272d19872aSmrg _LT_TAGVAR(compiler_needs_object, $1)=yes 72282d19872aSmrg 72292d19872aSmrg # Not sure whether something based on 72302d19872aSmrg # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 72312d19872aSmrg # would be better. 72322d19872aSmrg output_verbose_link_cmd='func_echo_all' 72332d19872aSmrg 72342d19872aSmrg # Archives containing C++ object files must be created using 72352d19872aSmrg # "CC -xar", where "CC" is the Sun C++ compiler. This is 72362d19872aSmrg # necessary to make sure instantiated templates are included 72372d19872aSmrg # in the archive. 72382d19872aSmrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' 72392d19872aSmrg ;; 72402d19872aSmrg esac 72412d19872aSmrg ;; 72422d19872aSmrg esac 72432d19872aSmrg ;; 72442d19872aSmrg 72452d19872aSmrg lynxos*) 72462d19872aSmrg # FIXME: insert proper C++ library support 72472d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 72482d19872aSmrg ;; 72492d19872aSmrg 72502d19872aSmrg m88k*) 72512d19872aSmrg # FIXME: insert proper C++ library support 72522d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 72532d19872aSmrg ;; 72542d19872aSmrg 72552d19872aSmrg mvs*) 72562d19872aSmrg case $cc_basename in 72572d19872aSmrg cxx*) 72582d19872aSmrg # FIXME: insert proper C++ library support 72592d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 72602d19872aSmrg ;; 72612d19872aSmrg *) 72622d19872aSmrg # FIXME: insert proper C++ library support 72632d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 72642d19872aSmrg ;; 72652d19872aSmrg esac 72662d19872aSmrg ;; 72672d19872aSmrg 72682f76b07dSmrg *-mlibc) 72692f76b07dSmrg _LT_TAGVAR(ld_shlibs, $1)=yes 72702f76b07dSmrg ;; 72712f76b07dSmrg 72722d19872aSmrg netbsd*) 72732d19872aSmrg if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then 72742d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' 72752d19872aSmrg wlarc= 72762d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 72772d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 72782d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 72792d19872aSmrg fi 72802d19872aSmrg # Workaround some broken pre-1.5 toolchains 72812d19872aSmrg output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' 72822d19872aSmrg ;; 72832d19872aSmrg 72842d19872aSmrg *nto* | *qnx*) 72852d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=yes 72862d19872aSmrg ;; 72872d19872aSmrg 72882f76b07dSmrg openbsd*) 72892d19872aSmrg if test -f /usr/libexec/ld.so; then 72902d19872aSmrg _LT_TAGVAR(hardcode_direct, $1)=yes 72912d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 72922d19872aSmrg _LT_TAGVAR(hardcode_direct_absolute, $1)=yes 72932d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' 72942d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 72952d19872aSmrg if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then 72962d19872aSmrg _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' 72972d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' 72982d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' 72992d19872aSmrg fi 73002d19872aSmrg output_verbose_link_cmd=func_echo_all 73012d19872aSmrg else 73022d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 73032d19872aSmrg fi 73042d19872aSmrg ;; 73052d19872aSmrg 73062d19872aSmrg osf3* | osf4* | osf5*) 73072d19872aSmrg case $cc_basename in 73082d19872aSmrg KCC*) 73092d19872aSmrg # Kuck and Associates, Inc. (KAI) C++ Compiler 73102d19872aSmrg 73112d19872aSmrg # KCC will only create a shared library if the output file 73122d19872aSmrg # ends with ".so" (or ".sl" for HP-UX), so rename the library 73132d19872aSmrg # to its proper name (with version) after linking. 73142d19872aSmrg _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' 73152d19872aSmrg 73162d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' 73172d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 73182d19872aSmrg 73192d19872aSmrg # Archives containing C++ object files must be created using 73202d19872aSmrg # the KAI C++ compiler. 73212d19872aSmrg case $host in 73222d19872aSmrg osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; 73232d19872aSmrg *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; 73242d19872aSmrg esac 73252d19872aSmrg ;; 73262d19872aSmrg RCC*) 73272d19872aSmrg # Rational C++ 2.4.1 73282d19872aSmrg # FIXME: insert proper C++ library support 73292d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 73302d19872aSmrg ;; 73312d19872aSmrg cxx*) 73322d19872aSmrg case $host in 73332d19872aSmrg osf3*) 73342d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' 73352d19872aSmrg _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' 73362d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 73372d19872aSmrg ;; 73382d19872aSmrg *) 73392d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' 73402d19872aSmrg _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' 73412d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ 73422d19872aSmrg echo "-hidden">> $lib.exp~ 73432d19872aSmrg $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~ 73442d19872aSmrg $RM $lib.exp' 73452d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' 73462d19872aSmrg ;; 73472d19872aSmrg esac 73482d19872aSmrg 73492d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 73502d19872aSmrg 73512d19872aSmrg # Commands to make compiler produce verbose output that lists 73522d19872aSmrg # what "hidden" libraries, object files and flags are used when 73532d19872aSmrg # linking a shared library. 73542d19872aSmrg # 73552d19872aSmrg # There doesn't appear to be a way to prevent this compiler from 73562d19872aSmrg # explicitly linking system object files so we need to strip them 73572d19872aSmrg # from the output so that they don't get included in the library 73582d19872aSmrg # dependencies. 73592d19872aSmrg 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"' 73602d19872aSmrg ;; 73612d19872aSmrg *) 73622d19872aSmrg if test yes,no = "$GXX,$with_gnu_ld"; then 73632d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' 73642d19872aSmrg case $host in 73652d19872aSmrg osf3*) 73662d19872aSmrg _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' 73672d19872aSmrg ;; 73682d19872aSmrg *) 73692d19872aSmrg _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' 73702d19872aSmrg ;; 73712d19872aSmrg esac 73722d19872aSmrg 73732d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' 73742d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=: 73752d19872aSmrg 73762d19872aSmrg # Commands to make compiler produce verbose output that lists 73772d19872aSmrg # what "hidden" libraries, object files and flags are used when 73782d19872aSmrg # linking a shared library. 73792f76b07dSmrg output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"' 73802d19872aSmrg 73812d19872aSmrg else 73822d19872aSmrg # FIXME: insert proper C++ library support 73832d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 73842d19872aSmrg fi 73852d19872aSmrg ;; 73862d19872aSmrg esac 73872d19872aSmrg ;; 73882d19872aSmrg 73892d19872aSmrg psos*) 73902d19872aSmrg # FIXME: insert proper C++ library support 73912d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 73922d19872aSmrg ;; 73932d19872aSmrg 73942f76b07dSmrg serenity*) 73952f76b07dSmrg ;; 73962f76b07dSmrg 73972d19872aSmrg sunos4*) 73982d19872aSmrg case $cc_basename in 73992d19872aSmrg CC*) 74002d19872aSmrg # Sun C++ 4.x 74012d19872aSmrg # FIXME: insert proper C++ library support 74022d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 74032d19872aSmrg ;; 74042d19872aSmrg lcc*) 74052d19872aSmrg # Lucid 74062d19872aSmrg # FIXME: insert proper C++ library support 74072d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 74082d19872aSmrg ;; 74092d19872aSmrg *) 74102d19872aSmrg # FIXME: insert proper C++ library support 74112d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 74122d19872aSmrg ;; 74132d19872aSmrg esac 74142d19872aSmrg ;; 74152d19872aSmrg 74162d19872aSmrg solaris*) 74172d19872aSmrg case $cc_basename in 74182d19872aSmrg CC* | sunCC*) 74192d19872aSmrg # Sun C++ 4.2, 5.x and Centerline C++ 74202d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc,$1)=yes 74212d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' 74222d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' 74232d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 74242d19872aSmrg $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' 74252d19872aSmrg 74262d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' 74272d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 74282d19872aSmrg case $host_os in 74292d19872aSmrg solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 74302d19872aSmrg *) 74312d19872aSmrg # The compiler driver will combine and reorder linker options, 74322d19872aSmrg # but understands '-z linker_flag'. 74332d19872aSmrg # Supported since Solaris 2.6 (maybe 2.5.1?) 74342d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' 74352d19872aSmrg ;; 74362d19872aSmrg esac 74372d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 74382d19872aSmrg 74392d19872aSmrg output_verbose_link_cmd='func_echo_all' 74402d19872aSmrg 74412d19872aSmrg # Archives containing C++ object files must be created using 74422d19872aSmrg # "CC -xar", where "CC" is the Sun C++ compiler. This is 74432d19872aSmrg # necessary to make sure instantiated templates are included 74442d19872aSmrg # in the archive. 74452d19872aSmrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' 74462d19872aSmrg ;; 74472d19872aSmrg gcx*) 74482d19872aSmrg # Green Hills C++ Compiler 74492d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' 74502d19872aSmrg 74512d19872aSmrg # The C++ compiler must be used to create the archive. 74522d19872aSmrg _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' 74532d19872aSmrg ;; 74542d19872aSmrg *) 74552d19872aSmrg # GNU C++ compiler with Solaris linker 74562d19872aSmrg if test yes,no = "$GXX,$with_gnu_ld"; then 74572d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs' 74582d19872aSmrg if $CC --version | $GREP -v '^2\.7' > /dev/null; then 74592d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' 74602d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 74612d19872aSmrg $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' 74622d19872aSmrg 74632d19872aSmrg # Commands to make compiler produce verbose output that lists 74642d19872aSmrg # what "hidden" libraries, object files and flags are used when 74652d19872aSmrg # linking a shared library. 74662f76b07dSmrg output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"' 74672d19872aSmrg else 74682d19872aSmrg # g++ 2.7 appears to require '-G' NOT '-shared' on this 74692d19872aSmrg # platform. 74702d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' 74712d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ 74722d19872aSmrg $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' 74732d19872aSmrg 74742d19872aSmrg # Commands to make compiler produce verbose output that lists 74752d19872aSmrg # what "hidden" libraries, object files and flags are used when 74762d19872aSmrg # linking a shared library. 74772f76b07dSmrg output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"' 74782d19872aSmrg fi 74792d19872aSmrg 74802d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' 74812d19872aSmrg case $host_os in 74822d19872aSmrg solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; 74832d19872aSmrg *) 74842d19872aSmrg _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' 74852d19872aSmrg ;; 74862d19872aSmrg esac 74872d19872aSmrg fi 74882d19872aSmrg ;; 74892d19872aSmrg esac 74902d19872aSmrg ;; 74912d19872aSmrg 74922d19872aSmrg sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) 74932d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' 74942d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 74952d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 74962d19872aSmrg runpath_var='LD_RUN_PATH' 74972d19872aSmrg 74982d19872aSmrg case $cc_basename in 74992d19872aSmrg CC*) 75002d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 75012d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 75022d19872aSmrg ;; 75032d19872aSmrg *) 75042d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 75052d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 75062d19872aSmrg ;; 75072d19872aSmrg esac 75082d19872aSmrg ;; 75092d19872aSmrg 75102d19872aSmrg sysv5* | sco3.2v5* | sco5v6*) 75112d19872aSmrg # Note: We CANNOT use -z defs as we might desire, because we do not 75122d19872aSmrg # link with -lc, and that would cause any symbols used from libc to 75132d19872aSmrg # always be unresolved, which means just about no library would 75142d19872aSmrg # ever link correctly. If we're not using GNU ld we use -z text 75152d19872aSmrg # though, which does catch some bad symbols but isn't as heavy-handed 75162d19872aSmrg # as -z defs. 75172d19872aSmrg _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' 75182d19872aSmrg _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' 75192d19872aSmrg _LT_TAGVAR(archive_cmds_need_lc, $1)=no 75202d19872aSmrg _LT_TAGVAR(hardcode_shlibpath_var, $1)=no 75212d19872aSmrg _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' 75222d19872aSmrg _LT_TAGVAR(hardcode_libdir_separator, $1)=':' 75232d19872aSmrg _LT_TAGVAR(link_all_deplibs, $1)=yes 75242d19872aSmrg _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' 75252d19872aSmrg runpath_var='LD_RUN_PATH' 75262d19872aSmrg 75272d19872aSmrg case $cc_basename in 75282d19872aSmrg CC*) 75292d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 75302d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 75312d19872aSmrg _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ 75322d19872aSmrg '"$_LT_TAGVAR(old_archive_cmds, $1)" 75332d19872aSmrg _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ 75342d19872aSmrg '"$_LT_TAGVAR(reload_cmds, $1)" 75352d19872aSmrg ;; 75362d19872aSmrg *) 75372d19872aSmrg _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 75382d19872aSmrg _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' 75392d19872aSmrg ;; 75402d19872aSmrg esac 75412d19872aSmrg ;; 75422d19872aSmrg 75432d19872aSmrg tandem*) 75442d19872aSmrg case $cc_basename in 75452d19872aSmrg NCC*) 75462d19872aSmrg # NonStop-UX NCC 3.20 75472d19872aSmrg # FIXME: insert proper C++ library support 75482d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 75492d19872aSmrg ;; 75502d19872aSmrg *) 75512d19872aSmrg # FIXME: insert proper C++ library support 75522d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 75532d19872aSmrg ;; 75542d19872aSmrg esac 75552d19872aSmrg ;; 75562d19872aSmrg 75572d19872aSmrg vxworks*) 75582d19872aSmrg # FIXME: insert proper C++ library support 75592d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 75602d19872aSmrg ;; 75612d19872aSmrg 75622d19872aSmrg *) 75632d19872aSmrg # FIXME: insert proper C++ library support 75642d19872aSmrg _LT_TAGVAR(ld_shlibs, $1)=no 75652d19872aSmrg ;; 75662d19872aSmrg esac 75672d19872aSmrg 75682d19872aSmrg AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) 75692d19872aSmrg test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no 75702d19872aSmrg 75712d19872aSmrg _LT_TAGVAR(GCC, $1)=$GXX 75722d19872aSmrg _LT_TAGVAR(LD, $1)=$LD 75732d19872aSmrg 75742d19872aSmrg ## CAVEAT EMPTOR: 75752d19872aSmrg ## There is no encapsulation within the following macros, do not change 75762d19872aSmrg ## the running order or otherwise move them around unless you know exactly 75772d19872aSmrg ## what you are doing... 75782d19872aSmrg _LT_SYS_HIDDEN_LIBDEPS($1) 75792d19872aSmrg _LT_COMPILER_PIC($1) 75802d19872aSmrg _LT_COMPILER_C_O($1) 75812d19872aSmrg _LT_COMPILER_FILE_LOCKS($1) 75822d19872aSmrg _LT_LINKER_SHLIBS($1) 75832d19872aSmrg _LT_SYS_DYNAMIC_LINKER($1) 75842d19872aSmrg _LT_LINKER_HARDCODE_LIBPATH($1) 75852d19872aSmrg 75862d19872aSmrg _LT_CONFIG($1) 75872d19872aSmrg fi # test -n "$compiler" 75882d19872aSmrg 75892d19872aSmrg CC=$lt_save_CC 75902d19872aSmrg CFLAGS=$lt_save_CFLAGS 75912d19872aSmrg LDCXX=$LD 75922d19872aSmrg LD=$lt_save_LD 75932d19872aSmrg GCC=$lt_save_GCC 75942d19872aSmrg with_gnu_ld=$lt_save_with_gnu_ld 75952d19872aSmrg lt_cv_path_LDCXX=$lt_cv_path_LD 75962d19872aSmrg lt_cv_path_LD=$lt_save_path_LD 75972d19872aSmrg lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld 75982d19872aSmrg lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld 75992d19872aSmrgfi # test yes != "$_lt_caught_CXX_error" 76002d19872aSmrg 76012d19872aSmrgAC_LANG_POP 76022d19872aSmrg])# _LT_LANG_CXX_CONFIG 76032d19872aSmrg 76042d19872aSmrg 76052d19872aSmrg# _LT_FUNC_STRIPNAME_CNF 76062d19872aSmrg# ---------------------- 76072d19872aSmrg# func_stripname_cnf prefix suffix name 76082d19872aSmrg# strip PREFIX and SUFFIX off of NAME. 76092d19872aSmrg# PREFIX and SUFFIX must not contain globbing or regex special 76102d19872aSmrg# characters, hashes, percent signs, but SUFFIX may contain a leading 76112d19872aSmrg# dot (in which case that matches only a dot). 76122d19872aSmrg# 76132d19872aSmrg# This function is identical to the (non-XSI) version of func_stripname, 76142d19872aSmrg# except this one can be used by m4 code that may be executed by configure, 76152d19872aSmrg# rather than the libtool script. 76162d19872aSmrgm4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl 76172d19872aSmrgAC_REQUIRE([_LT_DECL_SED]) 76182d19872aSmrgAC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) 76192d19872aSmrgfunc_stripname_cnf () 76202d19872aSmrg{ 76212d19872aSmrg case @S|@2 in 76222d19872aSmrg .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;; 76232d19872aSmrg *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;; 76242d19872aSmrg esac 76252d19872aSmrg} # func_stripname_cnf 76262d19872aSmrg])# _LT_FUNC_STRIPNAME_CNF 76272d19872aSmrg 76282d19872aSmrg 76292d19872aSmrg# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) 76302d19872aSmrg# --------------------------------- 76312d19872aSmrg# Figure out "hidden" library dependencies from verbose 76322d19872aSmrg# compiler output when linking a shared library. 76332d19872aSmrg# Parse the compiler output and extract the necessary 76342d19872aSmrg# objects, libraries and library flags. 76352d19872aSmrgm4_defun([_LT_SYS_HIDDEN_LIBDEPS], 76362d19872aSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl 76372d19872aSmrgAC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl 76382d19872aSmrg# Dependencies to place before and after the object being linked: 76392d19872aSmrg_LT_TAGVAR(predep_objects, $1)= 76402d19872aSmrg_LT_TAGVAR(postdep_objects, $1)= 76412d19872aSmrg_LT_TAGVAR(predeps, $1)= 76422d19872aSmrg_LT_TAGVAR(postdeps, $1)= 76432d19872aSmrg_LT_TAGVAR(compiler_lib_search_path, $1)= 76442d19872aSmrg 76452d19872aSmrgdnl we can't use the lt_simple_compile_test_code here, 76462d19872aSmrgdnl because it contains code intended for an executable, 76472d19872aSmrgdnl not a library. It's possible we should let each 76482d19872aSmrgdnl tag define a new lt_????_link_test_code variable, 76492d19872aSmrgdnl but it's only used here... 76502d19872aSmrgm4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF 76512d19872aSmrgint a; 76522d19872aSmrgvoid foo (void) { a = 0; } 76532d19872aSmrg_LT_EOF 76542d19872aSmrg], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF 76552d19872aSmrgclass Foo 76562d19872aSmrg{ 76572d19872aSmrgpublic: 76582d19872aSmrg Foo (void) { a = 0; } 76592d19872aSmrgprivate: 76602d19872aSmrg int a; 76612d19872aSmrg}; 76622d19872aSmrg_LT_EOF 76632d19872aSmrg], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF 76642d19872aSmrg subroutine foo 76652d19872aSmrg implicit none 76662d19872aSmrg integer*4 a 76672d19872aSmrg a=0 76682d19872aSmrg return 76692d19872aSmrg end 76702d19872aSmrg_LT_EOF 76712d19872aSmrg], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF 76722d19872aSmrg subroutine foo 76732d19872aSmrg implicit none 76742d19872aSmrg integer a 76752d19872aSmrg a=0 76762d19872aSmrg return 76772d19872aSmrg end 76782d19872aSmrg_LT_EOF 76792d19872aSmrg], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF 76802d19872aSmrgpublic class foo { 76812d19872aSmrg private int a; 76822d19872aSmrg public void bar (void) { 76832d19872aSmrg a = 0; 76842d19872aSmrg } 76852d19872aSmrg}; 76862d19872aSmrg_LT_EOF 76872d19872aSmrg], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF 76882d19872aSmrgpackage foo 76892d19872aSmrgfunc foo() { 76902d19872aSmrg} 76912d19872aSmrg_LT_EOF 76922d19872aSmrg]) 76932d19872aSmrg 76942d19872aSmrg_lt_libdeps_save_CFLAGS=$CFLAGS 76952d19872aSmrgcase "$CC $CFLAGS " in #( 76962d19872aSmrg*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; 76972d19872aSmrg*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; 76982d19872aSmrg*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; 76992d19872aSmrgesac 77002d19872aSmrg 77012d19872aSmrgdnl Parse the compiler output and extract the necessary 77022d19872aSmrgdnl objects, libraries and library flags. 77032d19872aSmrgif AC_TRY_EVAL(ac_compile); then 77042d19872aSmrg # Parse the compiler output and extract the necessary 77052d19872aSmrg # objects, libraries and library flags. 77062d19872aSmrg 77072d19872aSmrg # Sentinel used to keep track of whether or not we are before 77082d19872aSmrg # the conftest object file. 77092d19872aSmrg pre_test_object_deps_done=no 77102d19872aSmrg 77112d19872aSmrg for p in `eval "$output_verbose_link_cmd"`; do 77122d19872aSmrg case $prev$p in 77132d19872aSmrg 77142d19872aSmrg -L* | -R* | -l*) 77152f76b07dSmrg # Some compilers place space between "-{L,R,l}" and the path. 77162d19872aSmrg # Remove the space. 77172f76b07dSmrg if test x-L = x"$p" || 77182f76b07dSmrg test x-R = x"$p" || 77192f76b07dSmrg test x-l = x"$p"; then 77202d19872aSmrg prev=$p 77212d19872aSmrg continue 77222d19872aSmrg fi 77232d19872aSmrg 77242d19872aSmrg # Expand the sysroot to ease extracting the directories later. 77252d19872aSmrg if test -z "$prev"; then 77262d19872aSmrg case $p in 77272d19872aSmrg -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; 77282d19872aSmrg -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; 77292d19872aSmrg -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; 77302d19872aSmrg esac 77312d19872aSmrg fi 77322d19872aSmrg case $p in 77332d19872aSmrg =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; 77342d19872aSmrg esac 77352d19872aSmrg if test no = "$pre_test_object_deps_done"; then 77362d19872aSmrg case $prev in 77372d19872aSmrg -L | -R) 77382d19872aSmrg # Internal compiler library paths should come after those 77392d19872aSmrg # provided the user. The postdeps already come after the 77402d19872aSmrg # user supplied libs so there is no need to process them. 77412d19872aSmrg if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then 77422d19872aSmrg _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p 77432d19872aSmrg else 77442d19872aSmrg _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p" 77452d19872aSmrg fi 77462d19872aSmrg ;; 77472d19872aSmrg # The "-l" case would never come before the object being 77482d19872aSmrg # linked, so don't bother handling this case. 77492d19872aSmrg esac 77502d19872aSmrg else 77512d19872aSmrg if test -z "$_LT_TAGVAR(postdeps, $1)"; then 77522d19872aSmrg _LT_TAGVAR(postdeps, $1)=$prev$p 77532d19872aSmrg else 77542d19872aSmrg _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p" 77552d19872aSmrg fi 77562d19872aSmrg fi 77572d19872aSmrg prev= 77582d19872aSmrg ;; 77592d19872aSmrg 77602d19872aSmrg *.lto.$objext) ;; # Ignore GCC LTO objects 77612d19872aSmrg *.$objext) 77622d19872aSmrg # This assumes that the test object file only shows up 77632d19872aSmrg # once in the compiler output. 77642d19872aSmrg if test "$p" = "conftest.$objext"; then 77652d19872aSmrg pre_test_object_deps_done=yes 77662d19872aSmrg continue 77672d19872aSmrg fi 77682d19872aSmrg 77692d19872aSmrg if test no = "$pre_test_object_deps_done"; then 77702d19872aSmrg if test -z "$_LT_TAGVAR(predep_objects, $1)"; then 77712d19872aSmrg _LT_TAGVAR(predep_objects, $1)=$p 77722d19872aSmrg else 77732d19872aSmrg _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" 77742d19872aSmrg fi 77752d19872aSmrg else 77762d19872aSmrg if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then 77772d19872aSmrg _LT_TAGVAR(postdep_objects, $1)=$p 77782d19872aSmrg else 77792d19872aSmrg _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" 77802d19872aSmrg fi 77812d19872aSmrg fi 77822d19872aSmrg ;; 77832d19872aSmrg 77842d19872aSmrg *) ;; # Ignore the rest. 77852d19872aSmrg 77862d19872aSmrg esac 77872d19872aSmrg done 77882d19872aSmrg 77892d19872aSmrg # Clean up. 77902d19872aSmrg rm -f a.out a.exe 77912d19872aSmrgelse 77922d19872aSmrg echo "libtool.m4: error: problem compiling $1 test program" 77932d19872aSmrgfi 77942d19872aSmrg 77952d19872aSmrg$RM -f confest.$objext 77962d19872aSmrgCFLAGS=$_lt_libdeps_save_CFLAGS 77972d19872aSmrg 77982d19872aSmrg# PORTME: override above test on systems where it is broken 77992d19872aSmrgm4_if([$1], [CXX], 78002d19872aSmrg[case $host_os in 78012d19872aSmrginterix[[3-9]]*) 78022d19872aSmrg # Interix 3.5 installs completely hosed .la files for C++, so rather than 78032d19872aSmrg # hack all around it, let's just trust "g++" to DTRT. 78042d19872aSmrg _LT_TAGVAR(predep_objects,$1)= 78052d19872aSmrg _LT_TAGVAR(postdep_objects,$1)= 78062d19872aSmrg _LT_TAGVAR(postdeps,$1)= 78072d19872aSmrg ;; 78082d19872aSmrgesac 78092d19872aSmrg]) 78102d19872aSmrg 78112d19872aSmrgcase " $_LT_TAGVAR(postdeps, $1) " in 78122d19872aSmrg*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; 78132d19872aSmrgesac 78142d19872aSmrg _LT_TAGVAR(compiler_lib_search_dirs, $1)= 78152d19872aSmrgif test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then 78162d19872aSmrg _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'` 78172d19872aSmrgfi 78182d19872aSmrg_LT_TAGDECL([], [compiler_lib_search_dirs], [1], 78192d19872aSmrg [The directories searched by this compiler when creating a shared library]) 78202d19872aSmrg_LT_TAGDECL([], [predep_objects], [1], 78212d19872aSmrg [Dependencies to place before and after the objects being linked to 78222d19872aSmrg create a shared library]) 78232d19872aSmrg_LT_TAGDECL([], [postdep_objects], [1]) 78242d19872aSmrg_LT_TAGDECL([], [predeps], [1]) 78252d19872aSmrg_LT_TAGDECL([], [postdeps], [1]) 78262d19872aSmrg_LT_TAGDECL([], [compiler_lib_search_path], [1], 78272d19872aSmrg [The library search path used internally by the compiler when linking 78282d19872aSmrg a shared library]) 78292d19872aSmrg])# _LT_SYS_HIDDEN_LIBDEPS 78302d19872aSmrg 78312d19872aSmrg 78322d19872aSmrg# _LT_LANG_F77_CONFIG([TAG]) 78332d19872aSmrg# -------------------------- 78342d19872aSmrg# Ensure that the configuration variables for a Fortran 77 compiler are 78352d19872aSmrg# suitably defined. These variables are subsequently used by _LT_CONFIG 78362d19872aSmrg# to write the compiler configuration to 'libtool'. 78372d19872aSmrgm4_defun([_LT_LANG_F77_CONFIG], 78382d19872aSmrg[AC_LANG_PUSH(Fortran 77) 78392d19872aSmrgif test -z "$F77" || test no = "$F77"; then 78402d19872aSmrg _lt_disable_F77=yes 78412d19872aSmrgfi 78422d19872aSmrg 78432d19872aSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no 78442d19872aSmrg_LT_TAGVAR(allow_undefined_flag, $1)= 78452d19872aSmrg_LT_TAGVAR(always_export_symbols, $1)=no 78462d19872aSmrg_LT_TAGVAR(archive_expsym_cmds, $1)= 78472d19872aSmrg_LT_TAGVAR(export_dynamic_flag_spec, $1)= 78482d19872aSmrg_LT_TAGVAR(hardcode_direct, $1)=no 78492d19872aSmrg_LT_TAGVAR(hardcode_direct_absolute, $1)=no 78502d19872aSmrg_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 78512d19872aSmrg_LT_TAGVAR(hardcode_libdir_separator, $1)= 78522d19872aSmrg_LT_TAGVAR(hardcode_minus_L, $1)=no 78532d19872aSmrg_LT_TAGVAR(hardcode_automatic, $1)=no 78542d19872aSmrg_LT_TAGVAR(inherit_rpath, $1)=no 78552d19872aSmrg_LT_TAGVAR(module_cmds, $1)= 78562d19872aSmrg_LT_TAGVAR(module_expsym_cmds, $1)= 78572d19872aSmrg_LT_TAGVAR(link_all_deplibs, $1)=unknown 78582d19872aSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 78592d19872aSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag 78602d19872aSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 78612d19872aSmrg_LT_TAGVAR(no_undefined_flag, $1)= 78622d19872aSmrg_LT_TAGVAR(whole_archive_flag_spec, $1)= 78632d19872aSmrg_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 78642d19872aSmrg 78652d19872aSmrg# Source file extension for f77 test sources. 78662d19872aSmrgac_ext=f 78672d19872aSmrg 78682d19872aSmrg# Object file extension for compiled f77 test sources. 78692d19872aSmrgobjext=o 78702d19872aSmrg_LT_TAGVAR(objext, $1)=$objext 78712d19872aSmrg 78722d19872aSmrg# No sense in running all these tests if we already determined that 78732d19872aSmrg# the F77 compiler isn't working. Some variables (like enable_shared) 78742d19872aSmrg# are currently assumed to apply to all compilers on this platform, 78752d19872aSmrg# and will be corrupted by setting them based on a non-working compiler. 78762d19872aSmrgif test yes != "$_lt_disable_F77"; then 78772d19872aSmrg # Code to be used in simple compile tests 78782d19872aSmrg lt_simple_compile_test_code="\ 78792d19872aSmrg subroutine t 78802d19872aSmrg return 78812d19872aSmrg end 78822d19872aSmrg" 78832d19872aSmrg 78842d19872aSmrg # Code to be used in simple link tests 78852d19872aSmrg lt_simple_link_test_code="\ 78862d19872aSmrg program t 78872d19872aSmrg end 78882d19872aSmrg" 78892d19872aSmrg 78902d19872aSmrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 78912d19872aSmrg _LT_TAG_COMPILER 78922d19872aSmrg 78932d19872aSmrg # save warnings/boilerplate of simple test code 78942d19872aSmrg _LT_COMPILER_BOILERPLATE 78952d19872aSmrg _LT_LINKER_BOILERPLATE 78962d19872aSmrg 78972d19872aSmrg # Allow CC to be a program name with arguments. 78982d19872aSmrg lt_save_CC=$CC 78992d19872aSmrg lt_save_GCC=$GCC 79002d19872aSmrg lt_save_CFLAGS=$CFLAGS 79012d19872aSmrg CC=${F77-"f77"} 79022d19872aSmrg CFLAGS=$FFLAGS 79032d19872aSmrg compiler=$CC 79042d19872aSmrg _LT_TAGVAR(compiler, $1)=$CC 79052d19872aSmrg _LT_CC_BASENAME([$compiler]) 79062d19872aSmrg GCC=$G77 79072d19872aSmrg if test -n "$compiler"; then 79082d19872aSmrg AC_MSG_CHECKING([if libtool supports shared libraries]) 79092d19872aSmrg AC_MSG_RESULT([$can_build_shared]) 79102d19872aSmrg 79112d19872aSmrg AC_MSG_CHECKING([whether to build shared libraries]) 79122d19872aSmrg test no = "$can_build_shared" && enable_shared=no 79132d19872aSmrg 79142d19872aSmrg # On AIX, shared libraries and static libraries use the same namespace, and 79152d19872aSmrg # are all built from PIC. 79162d19872aSmrg case $host_os in 79172d19872aSmrg aix3*) 79182d19872aSmrg test yes = "$enable_shared" && enable_static=no 79192d19872aSmrg if test -n "$RANLIB"; then 79202d19872aSmrg archive_cmds="$archive_cmds~\$RANLIB \$lib" 79212d19872aSmrg postinstall_cmds='$RANLIB $lib' 79222d19872aSmrg fi 79232d19872aSmrg ;; 79242d19872aSmrg aix[[4-9]]*) 79252d19872aSmrg if test ia64 != "$host_cpu"; then 79262d19872aSmrg case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in 79272d19872aSmrg yes,aix,yes) ;; # shared object as lib.so file only 79282d19872aSmrg yes,svr4,*) ;; # shared object as lib.so archive member only 79292d19872aSmrg yes,*) enable_static=no ;; # shared object in lib.a archive as well 79302d19872aSmrg esac 79312d19872aSmrg fi 79322d19872aSmrg ;; 79332d19872aSmrg esac 79342d19872aSmrg AC_MSG_RESULT([$enable_shared]) 79352d19872aSmrg 79362d19872aSmrg AC_MSG_CHECKING([whether to build static libraries]) 79372d19872aSmrg # Make sure either enable_shared or enable_static is yes. 79382d19872aSmrg test yes = "$enable_shared" || enable_static=yes 79392d19872aSmrg AC_MSG_RESULT([$enable_static]) 79402d19872aSmrg 79412d19872aSmrg _LT_TAGVAR(GCC, $1)=$G77 79422d19872aSmrg _LT_TAGVAR(LD, $1)=$LD 79432d19872aSmrg 79442d19872aSmrg ## CAVEAT EMPTOR: 79452d19872aSmrg ## There is no encapsulation within the following macros, do not change 79462d19872aSmrg ## the running order or otherwise move them around unless you know exactly 79472d19872aSmrg ## what you are doing... 79482d19872aSmrg _LT_COMPILER_PIC($1) 79492d19872aSmrg _LT_COMPILER_C_O($1) 79502d19872aSmrg _LT_COMPILER_FILE_LOCKS($1) 79512d19872aSmrg _LT_LINKER_SHLIBS($1) 79522d19872aSmrg _LT_SYS_DYNAMIC_LINKER($1) 79532d19872aSmrg _LT_LINKER_HARDCODE_LIBPATH($1) 79542d19872aSmrg 79552d19872aSmrg _LT_CONFIG($1) 79562d19872aSmrg fi # test -n "$compiler" 79572d19872aSmrg 79582d19872aSmrg GCC=$lt_save_GCC 79592d19872aSmrg CC=$lt_save_CC 79602d19872aSmrg CFLAGS=$lt_save_CFLAGS 79612d19872aSmrgfi # test yes != "$_lt_disable_F77" 79622d19872aSmrg 79632d19872aSmrgAC_LANG_POP 79642d19872aSmrg])# _LT_LANG_F77_CONFIG 79652d19872aSmrg 79662d19872aSmrg 79672d19872aSmrg# _LT_LANG_FC_CONFIG([TAG]) 79682d19872aSmrg# ------------------------- 79692d19872aSmrg# Ensure that the configuration variables for a Fortran compiler are 79702d19872aSmrg# suitably defined. These variables are subsequently used by _LT_CONFIG 79712d19872aSmrg# to write the compiler configuration to 'libtool'. 79722d19872aSmrgm4_defun([_LT_LANG_FC_CONFIG], 79732d19872aSmrg[AC_LANG_PUSH(Fortran) 79742d19872aSmrg 79752d19872aSmrgif test -z "$FC" || test no = "$FC"; then 79762d19872aSmrg _lt_disable_FC=yes 79772d19872aSmrgfi 79782d19872aSmrg 79792d19872aSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no 79802d19872aSmrg_LT_TAGVAR(allow_undefined_flag, $1)= 79812d19872aSmrg_LT_TAGVAR(always_export_symbols, $1)=no 79822d19872aSmrg_LT_TAGVAR(archive_expsym_cmds, $1)= 79832d19872aSmrg_LT_TAGVAR(export_dynamic_flag_spec, $1)= 79842d19872aSmrg_LT_TAGVAR(hardcode_direct, $1)=no 79852d19872aSmrg_LT_TAGVAR(hardcode_direct_absolute, $1)=no 79862d19872aSmrg_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= 79872d19872aSmrg_LT_TAGVAR(hardcode_libdir_separator, $1)= 79882d19872aSmrg_LT_TAGVAR(hardcode_minus_L, $1)=no 79892d19872aSmrg_LT_TAGVAR(hardcode_automatic, $1)=no 79902d19872aSmrg_LT_TAGVAR(inherit_rpath, $1)=no 79912d19872aSmrg_LT_TAGVAR(module_cmds, $1)= 79922d19872aSmrg_LT_TAGVAR(module_expsym_cmds, $1)= 79932d19872aSmrg_LT_TAGVAR(link_all_deplibs, $1)=unknown 79942d19872aSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 79952d19872aSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag 79962d19872aSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 79972d19872aSmrg_LT_TAGVAR(no_undefined_flag, $1)= 79982d19872aSmrg_LT_TAGVAR(whole_archive_flag_spec, $1)= 79992d19872aSmrg_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no 80002d19872aSmrg 80012d19872aSmrg# Source file extension for fc test sources. 80022d19872aSmrgac_ext=${ac_fc_srcext-f} 80032d19872aSmrg 80042d19872aSmrg# Object file extension for compiled fc test sources. 80052d19872aSmrgobjext=o 80062d19872aSmrg_LT_TAGVAR(objext, $1)=$objext 80072d19872aSmrg 80082d19872aSmrg# No sense in running all these tests if we already determined that 80092d19872aSmrg# the FC compiler isn't working. Some variables (like enable_shared) 80102d19872aSmrg# are currently assumed to apply to all compilers on this platform, 80112d19872aSmrg# and will be corrupted by setting them based on a non-working compiler. 80122d19872aSmrgif test yes != "$_lt_disable_FC"; then 80132d19872aSmrg # Code to be used in simple compile tests 80142d19872aSmrg lt_simple_compile_test_code="\ 80152d19872aSmrg subroutine t 80162d19872aSmrg return 80172d19872aSmrg end 80182d19872aSmrg" 80192d19872aSmrg 80202d19872aSmrg # Code to be used in simple link tests 80212d19872aSmrg lt_simple_link_test_code="\ 80222d19872aSmrg program t 80232d19872aSmrg end 80242d19872aSmrg" 80252d19872aSmrg 80262d19872aSmrg # ltmain only uses $CC for tagged configurations so make sure $CC is set. 80272d19872aSmrg _LT_TAG_COMPILER 80282d19872aSmrg 80292d19872aSmrg # save warnings/boilerplate of simple test code 80302d19872aSmrg _LT_COMPILER_BOILERPLATE 80312d19872aSmrg _LT_LINKER_BOILERPLATE 80322d19872aSmrg 80332d19872aSmrg # Allow CC to be a program name with arguments. 80342d19872aSmrg lt_save_CC=$CC 80352d19872aSmrg lt_save_GCC=$GCC 80362d19872aSmrg lt_save_CFLAGS=$CFLAGS 80372d19872aSmrg CC=${FC-"f95"} 80382d19872aSmrg CFLAGS=$FCFLAGS 80392d19872aSmrg compiler=$CC 80402d19872aSmrg GCC=$ac_cv_fc_compiler_gnu 80412d19872aSmrg 80422d19872aSmrg _LT_TAGVAR(compiler, $1)=$CC 80432d19872aSmrg _LT_CC_BASENAME([$compiler]) 80442d19872aSmrg 80452d19872aSmrg if test -n "$compiler"; then 80462d19872aSmrg AC_MSG_CHECKING([if libtool supports shared libraries]) 80472d19872aSmrg AC_MSG_RESULT([$can_build_shared]) 80482d19872aSmrg 80492d19872aSmrg AC_MSG_CHECKING([whether to build shared libraries]) 80502d19872aSmrg test no = "$can_build_shared" && enable_shared=no 80512d19872aSmrg 80522d19872aSmrg # On AIX, shared libraries and static libraries use the same namespace, and 80532d19872aSmrg # are all built from PIC. 80542d19872aSmrg case $host_os in 80552d19872aSmrg aix3*) 80562d19872aSmrg test yes = "$enable_shared" && enable_static=no 80572d19872aSmrg if test -n "$RANLIB"; then 80582d19872aSmrg archive_cmds="$archive_cmds~\$RANLIB \$lib" 80592d19872aSmrg postinstall_cmds='$RANLIB $lib' 80602d19872aSmrg fi 80612d19872aSmrg ;; 80622d19872aSmrg aix[[4-9]]*) 80632d19872aSmrg if test ia64 != "$host_cpu"; then 80642d19872aSmrg case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in 80652d19872aSmrg yes,aix,yes) ;; # shared object as lib.so file only 80662d19872aSmrg yes,svr4,*) ;; # shared object as lib.so archive member only 80672d19872aSmrg yes,*) enable_static=no ;; # shared object in lib.a archive as well 80682d19872aSmrg esac 80692d19872aSmrg fi 80702d19872aSmrg ;; 80712d19872aSmrg esac 80722d19872aSmrg AC_MSG_RESULT([$enable_shared]) 80732d19872aSmrg 80742d19872aSmrg AC_MSG_CHECKING([whether to build static libraries]) 80752d19872aSmrg # Make sure either enable_shared or enable_static is yes. 80762d19872aSmrg test yes = "$enable_shared" || enable_static=yes 80772d19872aSmrg AC_MSG_RESULT([$enable_static]) 80782d19872aSmrg 80792d19872aSmrg _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu 80802d19872aSmrg _LT_TAGVAR(LD, $1)=$LD 80812d19872aSmrg 80822d19872aSmrg ## CAVEAT EMPTOR: 80832d19872aSmrg ## There is no encapsulation within the following macros, do not change 80842d19872aSmrg ## the running order or otherwise move them around unless you know exactly 80852d19872aSmrg ## what you are doing... 80862d19872aSmrg _LT_SYS_HIDDEN_LIBDEPS($1) 80872d19872aSmrg _LT_COMPILER_PIC($1) 80882d19872aSmrg _LT_COMPILER_C_O($1) 80892d19872aSmrg _LT_COMPILER_FILE_LOCKS($1) 80902d19872aSmrg _LT_LINKER_SHLIBS($1) 80912d19872aSmrg _LT_SYS_DYNAMIC_LINKER($1) 80922d19872aSmrg _LT_LINKER_HARDCODE_LIBPATH($1) 80932d19872aSmrg 80942d19872aSmrg _LT_CONFIG($1) 80952d19872aSmrg fi # test -n "$compiler" 80962d19872aSmrg 80972d19872aSmrg GCC=$lt_save_GCC 80982d19872aSmrg CC=$lt_save_CC 80992d19872aSmrg CFLAGS=$lt_save_CFLAGS 81002d19872aSmrgfi # test yes != "$_lt_disable_FC" 81012d19872aSmrg 81022d19872aSmrgAC_LANG_POP 81032d19872aSmrg])# _LT_LANG_FC_CONFIG 81042d19872aSmrg 81052d19872aSmrg 81062d19872aSmrg# _LT_LANG_GCJ_CONFIG([TAG]) 81072d19872aSmrg# -------------------------- 81082d19872aSmrg# Ensure that the configuration variables for the GNU Java Compiler compiler 81092d19872aSmrg# are suitably defined. These variables are subsequently used by _LT_CONFIG 81102d19872aSmrg# to write the compiler configuration to 'libtool'. 81112d19872aSmrgm4_defun([_LT_LANG_GCJ_CONFIG], 81122d19872aSmrg[AC_REQUIRE([LT_PROG_GCJ])dnl 81132d19872aSmrgAC_LANG_SAVE 81142d19872aSmrg 81152d19872aSmrg# Source file extension for Java test sources. 81162d19872aSmrgac_ext=java 81172d19872aSmrg 81182d19872aSmrg# Object file extension for compiled Java test sources. 81192d19872aSmrgobjext=o 81202d19872aSmrg_LT_TAGVAR(objext, $1)=$objext 81212d19872aSmrg 81222d19872aSmrg# Code to be used in simple compile tests 81232d19872aSmrglt_simple_compile_test_code="class foo {}" 81242d19872aSmrg 81252d19872aSmrg# Code to be used in simple link tests 81262d19872aSmrglt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' 81272d19872aSmrg 81282d19872aSmrg# ltmain only uses $CC for tagged configurations so make sure $CC is set. 81292d19872aSmrg_LT_TAG_COMPILER 81302d19872aSmrg 81312d19872aSmrg# save warnings/boilerplate of simple test code 81322d19872aSmrg_LT_COMPILER_BOILERPLATE 81332d19872aSmrg_LT_LINKER_BOILERPLATE 81342d19872aSmrg 81352d19872aSmrg# Allow CC to be a program name with arguments. 81362d19872aSmrglt_save_CC=$CC 81372d19872aSmrglt_save_CFLAGS=$CFLAGS 81382d19872aSmrglt_save_GCC=$GCC 81392d19872aSmrgGCC=yes 81402d19872aSmrgCC=${GCJ-"gcj"} 81412d19872aSmrgCFLAGS=$GCJFLAGS 81422d19872aSmrgcompiler=$CC 81432d19872aSmrg_LT_TAGVAR(compiler, $1)=$CC 81442d19872aSmrg_LT_TAGVAR(LD, $1)=$LD 81452d19872aSmrg_LT_CC_BASENAME([$compiler]) 81462d19872aSmrg 81472d19872aSmrg# GCJ did not exist at the time GCC didn't implicitly link libc in. 81482d19872aSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no 81492d19872aSmrg 81502d19872aSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 81512d19872aSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag 81522d19872aSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 81532d19872aSmrg 81542d19872aSmrg## CAVEAT EMPTOR: 81552d19872aSmrg## There is no encapsulation within the following macros, do not change 81562d19872aSmrg## the running order or otherwise move them around unless you know exactly 81572d19872aSmrg## what you are doing... 81582d19872aSmrgif test -n "$compiler"; then 81592d19872aSmrg _LT_COMPILER_NO_RTTI($1) 81602d19872aSmrg _LT_COMPILER_PIC($1) 81612d19872aSmrg _LT_COMPILER_C_O($1) 81622d19872aSmrg _LT_COMPILER_FILE_LOCKS($1) 81632d19872aSmrg _LT_LINKER_SHLIBS($1) 81642d19872aSmrg _LT_LINKER_HARDCODE_LIBPATH($1) 81652d19872aSmrg 81662d19872aSmrg _LT_CONFIG($1) 81672d19872aSmrgfi 81682d19872aSmrg 81692d19872aSmrgAC_LANG_RESTORE 81702d19872aSmrg 81712d19872aSmrgGCC=$lt_save_GCC 81722d19872aSmrgCC=$lt_save_CC 81732d19872aSmrgCFLAGS=$lt_save_CFLAGS 81742d19872aSmrg])# _LT_LANG_GCJ_CONFIG 81752d19872aSmrg 81762d19872aSmrg 81772d19872aSmrg# _LT_LANG_GO_CONFIG([TAG]) 81782d19872aSmrg# -------------------------- 81792d19872aSmrg# Ensure that the configuration variables for the GNU Go compiler 81802d19872aSmrg# are suitably defined. These variables are subsequently used by _LT_CONFIG 81812d19872aSmrg# to write the compiler configuration to 'libtool'. 81822d19872aSmrgm4_defun([_LT_LANG_GO_CONFIG], 81832d19872aSmrg[AC_REQUIRE([LT_PROG_GO])dnl 81842d19872aSmrgAC_LANG_SAVE 81852d19872aSmrg 81862d19872aSmrg# Source file extension for Go test sources. 81872d19872aSmrgac_ext=go 81882d19872aSmrg 81892d19872aSmrg# Object file extension for compiled Go test sources. 81902d19872aSmrgobjext=o 81912d19872aSmrg_LT_TAGVAR(objext, $1)=$objext 81922d19872aSmrg 81932d19872aSmrg# Code to be used in simple compile tests 81942d19872aSmrglt_simple_compile_test_code="package main; func main() { }" 81952d19872aSmrg 81962d19872aSmrg# Code to be used in simple link tests 81972d19872aSmrglt_simple_link_test_code='package main; func main() { }' 81982d19872aSmrg 81992d19872aSmrg# ltmain only uses $CC for tagged configurations so make sure $CC is set. 82002d19872aSmrg_LT_TAG_COMPILER 82012d19872aSmrg 82022d19872aSmrg# save warnings/boilerplate of simple test code 82032d19872aSmrg_LT_COMPILER_BOILERPLATE 82042d19872aSmrg_LT_LINKER_BOILERPLATE 82052d19872aSmrg 82062d19872aSmrg# Allow CC to be a program name with arguments. 82072d19872aSmrglt_save_CC=$CC 82082d19872aSmrglt_save_CFLAGS=$CFLAGS 82092d19872aSmrglt_save_GCC=$GCC 82102d19872aSmrgGCC=yes 82112d19872aSmrgCC=${GOC-"gccgo"} 82122d19872aSmrgCFLAGS=$GOFLAGS 82132d19872aSmrgcompiler=$CC 82142d19872aSmrg_LT_TAGVAR(compiler, $1)=$CC 82152d19872aSmrg_LT_TAGVAR(LD, $1)=$LD 82162d19872aSmrg_LT_CC_BASENAME([$compiler]) 82172d19872aSmrg 82182d19872aSmrg# Go did not exist at the time GCC didn't implicitly link libc in. 82192d19872aSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no 82202d19872aSmrg 82212d19872aSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds 82222d19872aSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag 82232d19872aSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds 82242d19872aSmrg 82252d19872aSmrg## CAVEAT EMPTOR: 82262d19872aSmrg## There is no encapsulation within the following macros, do not change 82272d19872aSmrg## the running order or otherwise move them around unless you know exactly 82282d19872aSmrg## what you are doing... 82292d19872aSmrgif test -n "$compiler"; then 82302d19872aSmrg _LT_COMPILER_NO_RTTI($1) 82312d19872aSmrg _LT_COMPILER_PIC($1) 82322d19872aSmrg _LT_COMPILER_C_O($1) 82332d19872aSmrg _LT_COMPILER_FILE_LOCKS($1) 82342d19872aSmrg _LT_LINKER_SHLIBS($1) 82352d19872aSmrg _LT_LINKER_HARDCODE_LIBPATH($1) 82362d19872aSmrg 82372d19872aSmrg _LT_CONFIG($1) 82382d19872aSmrgfi 82392d19872aSmrg 82402d19872aSmrgAC_LANG_RESTORE 82412d19872aSmrg 82422d19872aSmrgGCC=$lt_save_GCC 82432d19872aSmrgCC=$lt_save_CC 82442d19872aSmrgCFLAGS=$lt_save_CFLAGS 82452d19872aSmrg])# _LT_LANG_GO_CONFIG 82462d19872aSmrg 82472d19872aSmrg 82482d19872aSmrg# _LT_LANG_RC_CONFIG([TAG]) 82492d19872aSmrg# ------------------------- 82502d19872aSmrg# Ensure that the configuration variables for the Windows resource compiler 82512d19872aSmrg# are suitably defined. These variables are subsequently used by _LT_CONFIG 82522d19872aSmrg# to write the compiler configuration to 'libtool'. 82532d19872aSmrgm4_defun([_LT_LANG_RC_CONFIG], 82542d19872aSmrg[AC_REQUIRE([LT_PROG_RC])dnl 82552d19872aSmrgAC_LANG_SAVE 82562d19872aSmrg 82572d19872aSmrg# Source file extension for RC test sources. 82582d19872aSmrgac_ext=rc 82592d19872aSmrg 82602d19872aSmrg# Object file extension for compiled RC test sources. 82612d19872aSmrgobjext=o 82622d19872aSmrg_LT_TAGVAR(objext, $1)=$objext 82632d19872aSmrg 82642d19872aSmrg# Code to be used in simple compile tests 82652d19872aSmrglt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' 82662d19872aSmrg 82672d19872aSmrg# Code to be used in simple link tests 82682d19872aSmrglt_simple_link_test_code=$lt_simple_compile_test_code 82692d19872aSmrg 82702d19872aSmrg# ltmain only uses $CC for tagged configurations so make sure $CC is set. 82712d19872aSmrg_LT_TAG_COMPILER 82722d19872aSmrg 82732d19872aSmrg# save warnings/boilerplate of simple test code 82742d19872aSmrg_LT_COMPILER_BOILERPLATE 82752d19872aSmrg_LT_LINKER_BOILERPLATE 82762d19872aSmrg 82772d19872aSmrg# Allow CC to be a program name with arguments. 82782d19872aSmrglt_save_CC=$CC 82792d19872aSmrglt_save_CFLAGS=$CFLAGS 82802d19872aSmrglt_save_GCC=$GCC 82812d19872aSmrgGCC= 82822d19872aSmrgCC=${RC-"windres"} 82832d19872aSmrgCFLAGS= 82842d19872aSmrgcompiler=$CC 82852d19872aSmrg_LT_TAGVAR(compiler, $1)=$CC 82862d19872aSmrg_LT_CC_BASENAME([$compiler]) 82872d19872aSmrg_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes 82882d19872aSmrg 82892d19872aSmrgif test -n "$compiler"; then 82902d19872aSmrg : 82912d19872aSmrg _LT_CONFIG($1) 82922d19872aSmrgfi 82932d19872aSmrg 82942d19872aSmrgGCC=$lt_save_GCC 82952d19872aSmrgAC_LANG_RESTORE 82962d19872aSmrgCC=$lt_save_CC 82972d19872aSmrgCFLAGS=$lt_save_CFLAGS 82982d19872aSmrg])# _LT_LANG_RC_CONFIG 82992d19872aSmrg 83002d19872aSmrg 83012d19872aSmrg# LT_PROG_GCJ 83022d19872aSmrg# ----------- 83032d19872aSmrgAC_DEFUN([LT_PROG_GCJ], 83042d19872aSmrg[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], 83052d19872aSmrg [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], 83062d19872aSmrg [AC_CHECK_TOOL(GCJ, gcj,) 83072d19872aSmrg test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2" 83082d19872aSmrg AC_SUBST(GCJFLAGS)])])[]dnl 83092d19872aSmrg]) 83102d19872aSmrg 83112d19872aSmrg# Old name: 83122d19872aSmrgAU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) 83132d19872aSmrgdnl aclocal-1.4 backwards compatibility: 83142d19872aSmrgdnl AC_DEFUN([LT_AC_PROG_GCJ], []) 83152d19872aSmrg 83162d19872aSmrg 83172d19872aSmrg# LT_PROG_GO 83182d19872aSmrg# ---------- 83192d19872aSmrgAC_DEFUN([LT_PROG_GO], 83202d19872aSmrg[AC_CHECK_TOOL(GOC, gccgo,) 83212d19872aSmrg]) 83222d19872aSmrg 83232d19872aSmrg 83242d19872aSmrg# LT_PROG_RC 83252d19872aSmrg# ---------- 83262d19872aSmrgAC_DEFUN([LT_PROG_RC], 83272d19872aSmrg[AC_CHECK_TOOL(RC, windres,) 83282d19872aSmrg]) 83292d19872aSmrg 83302d19872aSmrg# Old name: 83312d19872aSmrgAU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) 83322d19872aSmrgdnl aclocal-1.4 backwards compatibility: 83332d19872aSmrgdnl AC_DEFUN([LT_AC_PROG_RC], []) 83342d19872aSmrg 83352d19872aSmrg 83362d19872aSmrg# _LT_DECL_EGREP 83372d19872aSmrg# -------------- 83382d19872aSmrg# If we don't have a new enough Autoconf to choose the best grep 83392d19872aSmrg# available, choose the one first in the user's PATH. 83402d19872aSmrgm4_defun([_LT_DECL_EGREP], 83412d19872aSmrg[AC_REQUIRE([AC_PROG_EGREP])dnl 83422d19872aSmrgAC_REQUIRE([AC_PROG_FGREP])dnl 83432d19872aSmrgtest -z "$GREP" && GREP=grep 83442d19872aSmrg_LT_DECL([], [GREP], [1], [A grep program that handles long lines]) 83452d19872aSmrg_LT_DECL([], [EGREP], [1], [An ERE matcher]) 83462d19872aSmrg_LT_DECL([], [FGREP], [1], [A literal string matcher]) 83472d19872aSmrgdnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too 83482d19872aSmrgAC_SUBST([GREP]) 83492d19872aSmrg]) 83502d19872aSmrg 83512d19872aSmrg 83522d19872aSmrg# _LT_DECL_OBJDUMP 83532d19872aSmrg# -------------- 83542d19872aSmrg# If we don't have a new enough Autoconf to choose the best objdump 83552d19872aSmrg# available, choose the one first in the user's PATH. 83562d19872aSmrgm4_defun([_LT_DECL_OBJDUMP], 83572d19872aSmrg[AC_CHECK_TOOL(OBJDUMP, objdump, false) 83582d19872aSmrgtest -z "$OBJDUMP" && OBJDUMP=objdump 83592d19872aSmrg_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) 83602d19872aSmrgAC_SUBST([OBJDUMP]) 83612d19872aSmrg]) 83622d19872aSmrg 83632d19872aSmrg# _LT_DECL_DLLTOOL 83642d19872aSmrg# ---------------- 83652d19872aSmrg# Ensure DLLTOOL variable is set. 83662d19872aSmrgm4_defun([_LT_DECL_DLLTOOL], 83672d19872aSmrg[AC_CHECK_TOOL(DLLTOOL, dlltool, false) 83682d19872aSmrgtest -z "$DLLTOOL" && DLLTOOL=dlltool 83692d19872aSmrg_LT_DECL([], [DLLTOOL], [1], [DLL creation program]) 83702d19872aSmrgAC_SUBST([DLLTOOL]) 83712d19872aSmrg]) 83722d19872aSmrg 83732d19872aSmrg# _LT_DECL_FILECMD 83742d19872aSmrg# ---------------- 83752d19872aSmrg# Check for a file(cmd) program that can be used to detect file type and magic 83762d19872aSmrgm4_defun([_LT_DECL_FILECMD], 83772f76b07dSmrg[AC_CHECK_PROG([FILECMD], [file], [file], [:]) 83782d19872aSmrg_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) 83792d19872aSmrg])# _LD_DECL_FILECMD 83802d19872aSmrg 83812d19872aSmrg# _LT_DECL_SED 83822d19872aSmrg# ------------ 83832d19872aSmrg# Check for a fully-functional sed program, that truncates 83842d19872aSmrg# as few characters as possible. Prefer GNU sed if found. 83852d19872aSmrgm4_defun([_LT_DECL_SED], 83862d19872aSmrg[AC_PROG_SED 83872d19872aSmrgtest -z "$SED" && SED=sed 83882d19872aSmrgXsed="$SED -e 1s/^X//" 83892d19872aSmrg_LT_DECL([], [SED], [1], [A sed program that does not truncate output]) 83902d19872aSmrg_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], 83912d19872aSmrg [Sed that helps us avoid accidentally triggering echo(1) options like -n]) 83922d19872aSmrg])# _LT_DECL_SED 83932d19872aSmrgdnl aclocal-1.4 backwards compatibility: 83942d19872aSmrgdnl AC_DEFUN([LT_AC_PROG_SED], []) 83952d19872aSmrg 83962d19872aSmrg 83972d19872aSmrg# _LT_CHECK_SHELL_FEATURES 83982d19872aSmrg# ------------------------ 83992d19872aSmrg# Find out whether the shell is Bourne or XSI compatible, 84002d19872aSmrg# or has some other useful features. 84012d19872aSmrgm4_defun([_LT_CHECK_SHELL_FEATURES], 84022d19872aSmrg[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then 84032d19872aSmrg lt_unset=unset 84042d19872aSmrgelse 84052d19872aSmrg lt_unset=false 84062d19872aSmrgfi 84072d19872aSmrg_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl 84082d19872aSmrg 84092d19872aSmrg# test EBCDIC or ASCII 84102d19872aSmrgcase `echo X|tr X '\101'` in 84112d19872aSmrg A) # ASCII based system 84122d19872aSmrg # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr 84132d19872aSmrg lt_SP2NL='tr \040 \012' 84142d19872aSmrg lt_NL2SP='tr \015\012 \040\040' 84152d19872aSmrg ;; 84162d19872aSmrg *) # EBCDIC based system 84172d19872aSmrg lt_SP2NL='tr \100 \n' 84182d19872aSmrg lt_NL2SP='tr \r\n \100\100' 84192d19872aSmrg ;; 84202d19872aSmrgesac 84212d19872aSmrg_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl 84222d19872aSmrg_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl 84232d19872aSmrg])# _LT_CHECK_SHELL_FEATURES 84242d19872aSmrg 84252d19872aSmrg 84262d19872aSmrg# _LT_PATH_CONVERSION_FUNCTIONS 84272d19872aSmrg# ----------------------------- 84282d19872aSmrg# Determine what file name conversion functions should be used by 84292d19872aSmrg# func_to_host_file (and, implicitly, by func_to_host_path). These are needed 84302d19872aSmrg# for certain cross-compile configurations and native mingw. 84312d19872aSmrgm4_defun([_LT_PATH_CONVERSION_FUNCTIONS], 84322d19872aSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl 84332d19872aSmrgAC_REQUIRE([AC_CANONICAL_BUILD])dnl 84342d19872aSmrgAC_MSG_CHECKING([how to convert $build file names to $host format]) 84352d19872aSmrgAC_CACHE_VAL(lt_cv_to_host_file_cmd, 84362d19872aSmrg[case $host in 84372d19872aSmrg *-*-mingw* ) 84382d19872aSmrg case $build in 84392f76b07dSmrg *-*-mingw* | *-*-windows* ) # actually msys 84402d19872aSmrg lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 84412d19872aSmrg ;; 84422d19872aSmrg *-*-cygwin* ) 84432d19872aSmrg lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 84442d19872aSmrg ;; 84452d19872aSmrg * ) # otherwise, assume *nix 84462d19872aSmrg lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 84472d19872aSmrg ;; 84482d19872aSmrg esac 84492d19872aSmrg ;; 84502d19872aSmrg *-*-cygwin* ) 84512d19872aSmrg case $build in 84522f76b07dSmrg *-*-mingw* | *-*-windows* ) # actually msys 84532d19872aSmrg lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin 84542d19872aSmrg ;; 84552d19872aSmrg *-*-cygwin* ) 84562d19872aSmrg lt_cv_to_host_file_cmd=func_convert_file_noop 84572d19872aSmrg ;; 84582d19872aSmrg * ) # otherwise, assume *nix 84592d19872aSmrg lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin 84602d19872aSmrg ;; 84612d19872aSmrg esac 84622d19872aSmrg ;; 84632d19872aSmrg * ) # unhandled hosts (and "normal" native builds) 84642d19872aSmrg lt_cv_to_host_file_cmd=func_convert_file_noop 84652d19872aSmrg ;; 84662d19872aSmrgesac 84672d19872aSmrg]) 84682d19872aSmrgto_host_file_cmd=$lt_cv_to_host_file_cmd 84692d19872aSmrgAC_MSG_RESULT([$lt_cv_to_host_file_cmd]) 84702d19872aSmrg_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], 84712d19872aSmrg [0], [convert $build file names to $host format])dnl 84722d19872aSmrg 84732d19872aSmrgAC_MSG_CHECKING([how to convert $build file names to toolchain format]) 84742d19872aSmrgAC_CACHE_VAL(lt_cv_to_tool_file_cmd, 84752d19872aSmrg[#assume ordinary cross tools, or native build. 84762d19872aSmrglt_cv_to_tool_file_cmd=func_convert_file_noop 84772d19872aSmrgcase $host in 84782f76b07dSmrg *-*-mingw* | *-*-windows* ) 84792d19872aSmrg case $build in 84802f76b07dSmrg *-*-mingw* | *-*-windows* ) # actually msys 84812d19872aSmrg lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 84822d19872aSmrg ;; 84832d19872aSmrg esac 84842d19872aSmrg ;; 84852d19872aSmrgesac 84862d19872aSmrg]) 84872d19872aSmrgto_tool_file_cmd=$lt_cv_to_tool_file_cmd 84882d19872aSmrgAC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) 84892d19872aSmrg_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], 84902d19872aSmrg [0], [convert $build files to toolchain format])dnl 84912d19872aSmrg])# _LT_PATH_CONVERSION_FUNCTIONS 8492