16bea0e4fSmrg# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
26bea0e4fSmrg#
36bea0e4fSmrg#   Copyright (C) 1996-2001, 2003-2019, 2021-2024 Free Software
46bea0e4fSmrg#   Foundation, Inc.
56bea0e4fSmrg#   Written by Gordon Matzigkeit, 1996
66bea0e4fSmrg#
76bea0e4fSmrg# This file is free software; the Free Software Foundation gives
86bea0e4fSmrg# unlimited permission to copy and/or distribute it, with or without
96bea0e4fSmrg# modifications, as long as this notice is preserved.
106bea0e4fSmrg
116bea0e4fSmrgm4_define([_LT_COPYING], [dnl
126bea0e4fSmrg# Copyright (C) 2024 Free Software Foundation, Inc.
136bea0e4fSmrg# This is free software; see the source for copying conditions.  There is NO
146bea0e4fSmrg# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
156bea0e4fSmrg
166bea0e4fSmrg# GNU Libtool is free software; you can redistribute it and/or modify
176bea0e4fSmrg# it under the terms of the GNU General Public License as published by
186bea0e4fSmrg# the Free Software Foundation; either version 2 of the License, or
196bea0e4fSmrg# (at your option) any later version.
206bea0e4fSmrg#
216bea0e4fSmrg# As a special exception to the GNU General Public License, if you
226bea0e4fSmrg# distribute this file as part of a program or library that is built
236bea0e4fSmrg# using GNU Libtool, you may include this file under the  same
246bea0e4fSmrg# distribution terms that you use for the rest of that program.
256bea0e4fSmrg#
266bea0e4fSmrg# GNU Libtool is distributed in the hope that it will be useful, but
276bea0e4fSmrg# WITHOUT ANY WARRANTY; without even the implied warranty of
286bea0e4fSmrg# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
296bea0e4fSmrg# GNU General Public License for more details.
306bea0e4fSmrg#
316bea0e4fSmrg# You should have received a copy of the GNU General Public License
326bea0e4fSmrg# along with this program.  If not, see <http://www.gnu.org/licenses/>.
336bea0e4fSmrg])
346bea0e4fSmrg
356bea0e4fSmrg# serial 63 LT_INIT
366bea0e4fSmrg
376bea0e4fSmrg
386bea0e4fSmrg# LT_PREREQ(VERSION)
396bea0e4fSmrg# ------------------
406bea0e4fSmrg# Complain and exit if this libtool version is less that VERSION.
416bea0e4fSmrgm4_defun([LT_PREREQ],
426bea0e4fSmrg[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
436bea0e4fSmrg       [m4_default([$3],
446bea0e4fSmrg		   [m4_fatal([Libtool version $1 or higher is required],
456bea0e4fSmrg		             63)])],
466bea0e4fSmrg       [$2])])
476bea0e4fSmrg
486bea0e4fSmrg
496bea0e4fSmrg# _LT_CHECK_BUILDDIR
506bea0e4fSmrg# ------------------
516bea0e4fSmrg# Complain if the absolute build directory name contains unusual characters
526bea0e4fSmrgm4_defun([_LT_CHECK_BUILDDIR],
536bea0e4fSmrg[case `pwd` in
546bea0e4fSmrg  *\ * | *\	*)
556bea0e4fSmrg    AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
566bea0e4fSmrgesac
576bea0e4fSmrg])
586bea0e4fSmrg
596bea0e4fSmrg
606bea0e4fSmrg# LT_INIT([OPTIONS])
616bea0e4fSmrg# ------------------
626bea0e4fSmrgAC_DEFUN([LT_INIT],
636bea0e4fSmrg[AC_PREREQ([2.64])dnl We use AC_PATH_PROGS_FEATURE_CHECK
646bea0e4fSmrgAC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
656bea0e4fSmrgAC_BEFORE([$0], [LT_LANG])dnl
666bea0e4fSmrgAC_BEFORE([$0], [LT_OUTPUT])dnl
676bea0e4fSmrgAC_BEFORE([$0], [LTDL_INIT])dnl
686bea0e4fSmrgm4_require([_LT_CHECK_BUILDDIR])dnl
696bea0e4fSmrg
706bea0e4fSmrgdnl Autoconf doesn't catch unexpanded LT_ macros by default:
716bea0e4fSmrgm4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
726bea0e4fSmrgm4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
736bea0e4fSmrgdnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
746bea0e4fSmrgdnl unless we require an AC_DEFUNed macro:
756bea0e4fSmrgAC_REQUIRE([LTOPTIONS_VERSION])dnl
766bea0e4fSmrgAC_REQUIRE([LTSUGAR_VERSION])dnl
776bea0e4fSmrgAC_REQUIRE([LTVERSION_VERSION])dnl
786bea0e4fSmrgAC_REQUIRE([LTOBSOLETE_VERSION])dnl
796bea0e4fSmrgm4_require([_LT_PROG_LTMAIN])dnl
806bea0e4fSmrg
816bea0e4fSmrg_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
826bea0e4fSmrg
836bea0e4fSmrgdnl Parse OPTIONS
846bea0e4fSmrg_LT_SET_OPTIONS([$0], [$1])
856bea0e4fSmrg
866bea0e4fSmrg# This can be used to rebuild libtool when needed
876bea0e4fSmrgLIBTOOL_DEPS=$ltmain
886bea0e4fSmrg
896bea0e4fSmrg# Always use our own libtool.
906bea0e4fSmrgLIBTOOL='$(SHELL) $(top_builddir)/libtool'
916bea0e4fSmrgAC_SUBST(LIBTOOL)dnl
926bea0e4fSmrg
936bea0e4fSmrg_LT_SETUP
946bea0e4fSmrg
956bea0e4fSmrg# Only expand once:
966bea0e4fSmrgm4_define([LT_INIT])
976bea0e4fSmrg])# LT_INIT
986bea0e4fSmrg
996bea0e4fSmrg# Old names:
1006bea0e4fSmrgAU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
1016bea0e4fSmrgAU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
1026bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
1036bea0e4fSmrgdnl AC_DEFUN([AC_PROG_LIBTOOL], [])
1046bea0e4fSmrgdnl AC_DEFUN([AM_PROG_LIBTOOL], [])
1056bea0e4fSmrg
1066bea0e4fSmrg
1076bea0e4fSmrg# _LT_PREPARE_CC_BASENAME
1086bea0e4fSmrg# -----------------------
1096bea0e4fSmrgm4_defun([_LT_PREPARE_CC_BASENAME], [
1106bea0e4fSmrg# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
1116bea0e4fSmrgfunc_cc_basename ()
1126bea0e4fSmrg{
1136bea0e4fSmrg    for cc_temp in @S|@*""; do
1146bea0e4fSmrg      case $cc_temp in
1156bea0e4fSmrg        compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
1166bea0e4fSmrg        distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
1176bea0e4fSmrg        \-*) ;;
1186bea0e4fSmrg        *) break;;
1196bea0e4fSmrg      esac
1206bea0e4fSmrg    done
1216bea0e4fSmrg    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
1226bea0e4fSmrg}
1236bea0e4fSmrg])# _LT_PREPARE_CC_BASENAME
1246bea0e4fSmrg
1256bea0e4fSmrg
1266bea0e4fSmrg# _LT_CC_BASENAME(CC)
1276bea0e4fSmrg# -------------------
1286bea0e4fSmrg# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
1296bea0e4fSmrg# but that macro is also expanded into generated libtool script, which
1306bea0e4fSmrg# arranges for $SED and $ECHO to be set by different means.
1316bea0e4fSmrgm4_defun([_LT_CC_BASENAME],
1326bea0e4fSmrg[m4_require([_LT_PREPARE_CC_BASENAME])dnl
1336bea0e4fSmrgAC_REQUIRE([_LT_DECL_SED])dnl
1346bea0e4fSmrgAC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
1356bea0e4fSmrgfunc_cc_basename $1
1366bea0e4fSmrgcc_basename=$func_cc_basename_result
1376bea0e4fSmrg])
1386bea0e4fSmrg
1396bea0e4fSmrg
1406bea0e4fSmrg# _LT_FILEUTILS_DEFAULTS
1416bea0e4fSmrg# ----------------------
1426bea0e4fSmrg# It is okay to use these file commands and assume they have been set
1436bea0e4fSmrg# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
1446bea0e4fSmrgm4_defun([_LT_FILEUTILS_DEFAULTS],
1456bea0e4fSmrg[: ${CP="cp -f"}
1466bea0e4fSmrg: ${MV="mv -f"}
1476bea0e4fSmrg: ${RM="rm -f"}
1486bea0e4fSmrg])# _LT_FILEUTILS_DEFAULTS
1496bea0e4fSmrg
1506bea0e4fSmrg
1516bea0e4fSmrg# _LT_SETUP
1526bea0e4fSmrg# ---------
1536bea0e4fSmrgm4_defun([_LT_SETUP],
1546bea0e4fSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1556bea0e4fSmrgAC_REQUIRE([AC_CANONICAL_BUILD])dnl
1566bea0e4fSmrgAC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
1576bea0e4fSmrgAC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
1586bea0e4fSmrg
1596bea0e4fSmrg_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
1606bea0e4fSmrgdnl
1616bea0e4fSmrg_LT_DECL([], [host_alias], [0], [The host system])dnl
1626bea0e4fSmrg_LT_DECL([], [host], [0])dnl
1636bea0e4fSmrg_LT_DECL([], [host_os], [0])dnl
1646bea0e4fSmrgdnl
1656bea0e4fSmrg_LT_DECL([], [build_alias], [0], [The build system])dnl
1666bea0e4fSmrg_LT_DECL([], [build], [0])dnl
1676bea0e4fSmrg_LT_DECL([], [build_os], [0])dnl
1686bea0e4fSmrgdnl
1696bea0e4fSmrgAC_REQUIRE([AC_PROG_CC])dnl
1706bea0e4fSmrgAC_REQUIRE([LT_PATH_LD])dnl
1716bea0e4fSmrgAC_REQUIRE([LT_PATH_NM])dnl
1726bea0e4fSmrgdnl
1736bea0e4fSmrgAC_REQUIRE([AC_PROG_LN_S])dnl
1746bea0e4fSmrgtest -z "$LN_S" && LN_S="ln -s"
1756bea0e4fSmrg_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
1766bea0e4fSmrgdnl
1776bea0e4fSmrgAC_REQUIRE([LT_CMD_MAX_LEN])dnl
1786bea0e4fSmrg_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
1796bea0e4fSmrg_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
1806bea0e4fSmrgdnl
1816bea0e4fSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl
1826bea0e4fSmrgm4_require([_LT_CHECK_SHELL_FEATURES])dnl
1836bea0e4fSmrgm4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
1846bea0e4fSmrgm4_require([_LT_CMD_RELOAD])dnl
1856bea0e4fSmrgm4_require([_LT_DECL_FILECMD])dnl
1866bea0e4fSmrgm4_require([_LT_CHECK_MAGIC_METHOD])dnl
1876bea0e4fSmrgm4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
1886bea0e4fSmrgm4_require([_LT_CMD_OLD_ARCHIVE])dnl
1896bea0e4fSmrgm4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
1906bea0e4fSmrgm4_require([_LT_WITH_SYSROOT])dnl
1916bea0e4fSmrgm4_require([_LT_CMD_TRUNCATE])dnl
1926bea0e4fSmrg
1936bea0e4fSmrg_LT_CONFIG_LIBTOOL_INIT([
1946bea0e4fSmrg# See if we are running on zsh, and set the options that allow our
1956bea0e4fSmrg# commands through without removal of \ escapes INIT.
1966bea0e4fSmrgif test -n "\${ZSH_VERSION+set}"; then
1976bea0e4fSmrg   setopt NO_GLOB_SUBST
1986bea0e4fSmrgfi
1996bea0e4fSmrg])
2006bea0e4fSmrgif test -n "${ZSH_VERSION+set}"; then
2016bea0e4fSmrg   setopt NO_GLOB_SUBST
2026bea0e4fSmrgfi
2036bea0e4fSmrg
2046bea0e4fSmrg_LT_CHECK_OBJDIR
2056bea0e4fSmrg
2066bea0e4fSmrgm4_require([_LT_TAG_COMPILER])dnl
2076bea0e4fSmrg
2086bea0e4fSmrgcase $host_os in
2096bea0e4fSmrgaix3*)
2106bea0e4fSmrg  # AIX sometimes has problems with the GCC collect2 program.  For some
2116bea0e4fSmrg  # reason, if we set the COLLECT_NAMES environment variable, the problems
2126bea0e4fSmrg  # vanish in a puff of smoke.
2136bea0e4fSmrg  if test set != "${COLLECT_NAMES+set}"; then
2146bea0e4fSmrg    COLLECT_NAMES=
2156bea0e4fSmrg    export COLLECT_NAMES
2166bea0e4fSmrg  fi
2176bea0e4fSmrg  ;;
2186bea0e4fSmrgesac
2196bea0e4fSmrg
2206bea0e4fSmrg# Global variables:
2216bea0e4fSmrgofile=libtool
2226bea0e4fSmrgcan_build_shared=yes
2236bea0e4fSmrg
2246bea0e4fSmrg# All known linkers require a '.a' archive for static linking (except MSVC and
2256bea0e4fSmrg# ICC, which need '.lib').
2266bea0e4fSmrglibext=a
2276bea0e4fSmrg
2286bea0e4fSmrgwith_gnu_ld=$lt_cv_prog_gnu_ld
2296bea0e4fSmrg
2306bea0e4fSmrgold_CC=$CC
2316bea0e4fSmrgold_CFLAGS=$CFLAGS
2326bea0e4fSmrg
2336bea0e4fSmrg# Set sane defaults for various variables
2346bea0e4fSmrgtest -z "$CC" && CC=cc
2356bea0e4fSmrgtest -z "$LTCC" && LTCC=$CC
2366bea0e4fSmrgtest -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
2376bea0e4fSmrgtest -z "$LD" && LD=ld
2386bea0e4fSmrgtest -z "$ac_objext" && ac_objext=o
2396bea0e4fSmrg
2406bea0e4fSmrg_LT_CC_BASENAME([$compiler])
2416bea0e4fSmrg
2426bea0e4fSmrg# Only perform the check for file, if the check method requires it
2436bea0e4fSmrgtest -z "$MAGIC_CMD" && MAGIC_CMD=file
2446bea0e4fSmrgcase $deplibs_check_method in
2456bea0e4fSmrgfile_magic*)
2466bea0e4fSmrg  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
2476bea0e4fSmrg    _LT_PATH_MAGIC
2486bea0e4fSmrg  fi
2496bea0e4fSmrg  ;;
2506bea0e4fSmrgesac
2516bea0e4fSmrg
2526bea0e4fSmrg# Use C for the default configuration in the libtool script
2536bea0e4fSmrgLT_SUPPORTED_TAG([CC])
2546bea0e4fSmrg_LT_LANG_C_CONFIG
2556bea0e4fSmrg_LT_LANG_DEFAULT_CONFIG
2566bea0e4fSmrg_LT_CONFIG_COMMANDS
2576bea0e4fSmrg])# _LT_SETUP
2586bea0e4fSmrg
2596bea0e4fSmrg
2606bea0e4fSmrg# _LT_PREPARE_SED_QUOTE_VARS
2616bea0e4fSmrg# --------------------------
2626bea0e4fSmrg# Define a few sed substitution that help us do robust quoting.
2636bea0e4fSmrgm4_defun([_LT_PREPARE_SED_QUOTE_VARS],
2646bea0e4fSmrg[# Backslashify metacharacters that are still active within
2656bea0e4fSmrg# double-quoted strings.
2666bea0e4fSmrgsed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
2676bea0e4fSmrg
2686bea0e4fSmrg# Same as above, but do not quote variable references.
2696bea0e4fSmrgdouble_quote_subst='s/\([["`\\]]\)/\\\1/g'
2706bea0e4fSmrg
2716bea0e4fSmrg# Sed substitution to delay expansion of an escaped shell variable in a
2726bea0e4fSmrg# double_quote_subst'ed string.
2736bea0e4fSmrgdelay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
2746bea0e4fSmrg
2756bea0e4fSmrg# Sed substitution to delay expansion of an escaped single quote.
2766bea0e4fSmrgdelay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
2776bea0e4fSmrg
2786bea0e4fSmrg# Sed substitution to avoid accidental globbing in evaled expressions
2796bea0e4fSmrgno_glob_subst='s/\*/\\\*/g'
2806bea0e4fSmrg])
2816bea0e4fSmrg
2826bea0e4fSmrg# _LT_PROG_LTMAIN
2836bea0e4fSmrg# ---------------
2846bea0e4fSmrg# Note that this code is called both from 'configure', and 'config.status'
2856bea0e4fSmrg# now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
2866bea0e4fSmrg# 'config.status' has no value for ac_aux_dir unless we are using Automake,
2876bea0e4fSmrg# so we pass a copy along to make sure it has a sensible value anyway.
2886bea0e4fSmrgm4_defun([_LT_PROG_LTMAIN],
2896bea0e4fSmrg[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
2906bea0e4fSmrg_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
2916bea0e4fSmrgltmain=$ac_aux_dir/ltmain.sh
2926bea0e4fSmrg])# _LT_PROG_LTMAIN
2936bea0e4fSmrg
2946bea0e4fSmrg
2956bea0e4fSmrg## ------------------------------------- ##
2966bea0e4fSmrg## Accumulate code for creating libtool. ##
2976bea0e4fSmrg## ------------------------------------- ##
2986bea0e4fSmrg
2996bea0e4fSmrg# So that we can recreate a full libtool script including additional
3006bea0e4fSmrg# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
3016bea0e4fSmrg# in macros and then make a single call at the end using the 'libtool'
3026bea0e4fSmrg# label.
3036bea0e4fSmrg
3046bea0e4fSmrg
3056bea0e4fSmrg# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
3066bea0e4fSmrg# ----------------------------------------
3076bea0e4fSmrg# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
3086bea0e4fSmrgm4_define([_LT_CONFIG_LIBTOOL_INIT],
3096bea0e4fSmrg[m4_ifval([$1],
3106bea0e4fSmrg          [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
3116bea0e4fSmrg                     [$1
3126bea0e4fSmrg])])])
3136bea0e4fSmrg
3146bea0e4fSmrg# Initialize.
3156bea0e4fSmrgm4_define([_LT_OUTPUT_LIBTOOL_INIT])
3166bea0e4fSmrg
3176bea0e4fSmrg
3186bea0e4fSmrg# _LT_CONFIG_LIBTOOL([COMMANDS])
3196bea0e4fSmrg# ------------------------------
3206bea0e4fSmrg# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
3216bea0e4fSmrgm4_define([_LT_CONFIG_LIBTOOL],
3226bea0e4fSmrg[m4_ifval([$1],
3236bea0e4fSmrg          [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
3246bea0e4fSmrg                     [$1
3256bea0e4fSmrg])])])
3266bea0e4fSmrg
3276bea0e4fSmrg# Initialize.
3286bea0e4fSmrgm4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
3296bea0e4fSmrg
3306bea0e4fSmrg
3316bea0e4fSmrg# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
3326bea0e4fSmrg# -----------------------------------------------------
3336bea0e4fSmrgm4_defun([_LT_CONFIG_SAVE_COMMANDS],
3346bea0e4fSmrg[_LT_CONFIG_LIBTOOL([$1])
3356bea0e4fSmrg_LT_CONFIG_LIBTOOL_INIT([$2])
3366bea0e4fSmrg])
3376bea0e4fSmrg
3386bea0e4fSmrg
3396bea0e4fSmrg# _LT_FORMAT_COMMENT([COMMENT])
3406bea0e4fSmrg# -----------------------------
3416bea0e4fSmrg# Add leading comment marks to the start of each line, and a trailing
3426bea0e4fSmrg# full-stop to the whole comment if one is not present already.
3436bea0e4fSmrgm4_define([_LT_FORMAT_COMMENT],
3446bea0e4fSmrg[m4_ifval([$1], [
3456bea0e4fSmrgm4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
3466bea0e4fSmrg              [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
3476bea0e4fSmrg)])
3486bea0e4fSmrg
3496bea0e4fSmrg
3506bea0e4fSmrg
3516bea0e4fSmrg## ------------------------ ##
3526bea0e4fSmrg## FIXME: Eliminate VARNAME ##
3536bea0e4fSmrg## ------------------------ ##
3546bea0e4fSmrg
3556bea0e4fSmrg
3566bea0e4fSmrg# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
3576bea0e4fSmrg# -------------------------------------------------------------------
3586bea0e4fSmrg# CONFIGNAME is the name given to the value in the libtool script.
3596bea0e4fSmrg# VARNAME is the (base) name used in the configure script.
3606bea0e4fSmrg# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
3616bea0e4fSmrg# VARNAME.  Any other value will be used directly.
3626bea0e4fSmrgm4_define([_LT_DECL],
3636bea0e4fSmrg[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
3646bea0e4fSmrg    [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
3656bea0e4fSmrg	[m4_ifval([$1], [$1], [$2])])
3666bea0e4fSmrg    lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
3676bea0e4fSmrg    m4_ifval([$4],
3686bea0e4fSmrg	[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
3696bea0e4fSmrg    lt_dict_add_subkey([lt_decl_dict], [$2],
3706bea0e4fSmrg	[tagged?], [m4_ifval([$5], [yes], [no])])])
3716bea0e4fSmrg])
3726bea0e4fSmrg
3736bea0e4fSmrg
3746bea0e4fSmrg# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
3756bea0e4fSmrg# --------------------------------------------------------
3766bea0e4fSmrgm4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
3776bea0e4fSmrg
3786bea0e4fSmrg
3796bea0e4fSmrg# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
3806bea0e4fSmrg# ------------------------------------------------
3816bea0e4fSmrgm4_define([lt_decl_tag_varnames],
3826bea0e4fSmrg[_lt_decl_filter([tagged?], [yes], $@)])
3836bea0e4fSmrg
3846bea0e4fSmrg
3856bea0e4fSmrg# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
3866bea0e4fSmrg# ---------------------------------------------------------
3876bea0e4fSmrgm4_define([_lt_decl_filter],
3886bea0e4fSmrg[m4_case([$#],
3896bea0e4fSmrg  [0], [m4_fatal([$0: too few arguments: $#])],
3906bea0e4fSmrg  [1], [m4_fatal([$0: too few arguments: $#: $1])],
3916bea0e4fSmrg  [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
3926bea0e4fSmrg  [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
3936bea0e4fSmrg  [lt_dict_filter([lt_decl_dict], $@)])[]dnl
3946bea0e4fSmrg])
3956bea0e4fSmrg
3966bea0e4fSmrg
3976bea0e4fSmrg# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
3986bea0e4fSmrg# --------------------------------------------------
3996bea0e4fSmrgm4_define([lt_decl_quote_varnames],
4006bea0e4fSmrg[_lt_decl_filter([value], [1], $@)])
4016bea0e4fSmrg
4026bea0e4fSmrg
4036bea0e4fSmrg# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
4046bea0e4fSmrg# ---------------------------------------------------
4056bea0e4fSmrgm4_define([lt_decl_dquote_varnames],
4066bea0e4fSmrg[_lt_decl_filter([value], [2], $@)])
4076bea0e4fSmrg
4086bea0e4fSmrg
4096bea0e4fSmrg# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
4106bea0e4fSmrg# ---------------------------------------------------
4116bea0e4fSmrgm4_define([lt_decl_varnames_tagged],
4126bea0e4fSmrg[m4_assert([$# <= 2])dnl
4136bea0e4fSmrg_$0(m4_quote(m4_default([$1], [[, ]])),
4146bea0e4fSmrg    m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
4156bea0e4fSmrg    m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
4166bea0e4fSmrgm4_define([_lt_decl_varnames_tagged],
4176bea0e4fSmrg[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
4186bea0e4fSmrg
4196bea0e4fSmrg
4206bea0e4fSmrg# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
4216bea0e4fSmrg# ------------------------------------------------
4226bea0e4fSmrgm4_define([lt_decl_all_varnames],
4236bea0e4fSmrg[_$0(m4_quote(m4_default([$1], [[, ]])),
4246bea0e4fSmrg     m4_if([$2], [],
4256bea0e4fSmrg	   m4_quote(lt_decl_varnames),
4266bea0e4fSmrg	m4_quote(m4_shift($@))))[]dnl
4276bea0e4fSmrg])
4286bea0e4fSmrgm4_define([_lt_decl_all_varnames],
4296bea0e4fSmrg[lt_join($@, lt_decl_varnames_tagged([$1],
4306bea0e4fSmrg			lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
4316bea0e4fSmrg])
4326bea0e4fSmrg
4336bea0e4fSmrg
4346bea0e4fSmrg# _LT_CONFIG_STATUS_DECLARE([VARNAME])
4356bea0e4fSmrg# ------------------------------------
4366bea0e4fSmrg# Quote a variable value, and forward it to 'config.status' so that its
4376bea0e4fSmrg# declaration there will have the same value as in 'configure'.  VARNAME
4386bea0e4fSmrg# must have a single quote delimited value for this to work.
4396bea0e4fSmrgm4_define([_LT_CONFIG_STATUS_DECLARE],
4406bea0e4fSmrg[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
4416bea0e4fSmrg
4426bea0e4fSmrg
4436bea0e4fSmrg# _LT_CONFIG_STATUS_DECLARATIONS
4446bea0e4fSmrg# ------------------------------
4456bea0e4fSmrg# We delimit libtool config variables with single quotes, so when
4466bea0e4fSmrg# we write them to config.status, we have to be sure to quote all
4476bea0e4fSmrg# embedded single quotes properly.  In configure, this macro expands
4486bea0e4fSmrg# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
4496bea0e4fSmrg#
4506bea0e4fSmrg#    <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
4516bea0e4fSmrgm4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
4526bea0e4fSmrg[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
4536bea0e4fSmrg    [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
4546bea0e4fSmrg
4556bea0e4fSmrg
4566bea0e4fSmrg# _LT_LIBTOOL_TAGS
4576bea0e4fSmrg# ----------------
4586bea0e4fSmrg# Output comment and list of tags supported by the script
4596bea0e4fSmrgm4_defun([_LT_LIBTOOL_TAGS],
4606bea0e4fSmrg[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
4616bea0e4fSmrgavailable_tags='_LT_TAGS'dnl
4626bea0e4fSmrg])
4636bea0e4fSmrg
4646bea0e4fSmrg
4656bea0e4fSmrg# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
4666bea0e4fSmrg# -----------------------------------
4676bea0e4fSmrg# Extract the dictionary values for VARNAME (optionally with TAG) and
4686bea0e4fSmrg# expand to a commented shell variable setting:
4696bea0e4fSmrg#
4706bea0e4fSmrg#    # Some comment about what VAR is for.
4716bea0e4fSmrg#    visible_name=$lt_internal_name
4726bea0e4fSmrgm4_define([_LT_LIBTOOL_DECLARE],
4736bea0e4fSmrg[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
4746bea0e4fSmrg					   [description])))[]dnl
4756bea0e4fSmrgm4_pushdef([_libtool_name],
4766bea0e4fSmrg    m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
4776bea0e4fSmrgm4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
4786bea0e4fSmrg    [0], [_libtool_name=[$]$1],
4796bea0e4fSmrg    [1], [_libtool_name=$lt_[]$1],
4806bea0e4fSmrg    [2], [_libtool_name=$lt_[]$1],
4816bea0e4fSmrg    [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
4826bea0e4fSmrgm4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
4836bea0e4fSmrg])
4846bea0e4fSmrg
4856bea0e4fSmrg
4866bea0e4fSmrg# _LT_LIBTOOL_CONFIG_VARS
4876bea0e4fSmrg# -----------------------
4886bea0e4fSmrg# Produce commented declarations of non-tagged libtool config variables
4896bea0e4fSmrg# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
4906bea0e4fSmrg# script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
4916bea0e4fSmrg# section) are produced by _LT_LIBTOOL_TAG_VARS.
4926bea0e4fSmrgm4_defun([_LT_LIBTOOL_CONFIG_VARS],
4936bea0e4fSmrg[m4_foreach([_lt_var],
4946bea0e4fSmrg    m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
4956bea0e4fSmrg    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
4966bea0e4fSmrg
4976bea0e4fSmrg
4986bea0e4fSmrg# _LT_LIBTOOL_TAG_VARS(TAG)
4996bea0e4fSmrg# -------------------------
5006bea0e4fSmrgm4_define([_LT_LIBTOOL_TAG_VARS],
5016bea0e4fSmrg[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
5026bea0e4fSmrg    [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
5036bea0e4fSmrg
5046bea0e4fSmrg
5056bea0e4fSmrg# _LT_TAGVAR(VARNAME, [TAGNAME])
5066bea0e4fSmrg# ------------------------------
5076bea0e4fSmrgm4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
5086bea0e4fSmrg
5096bea0e4fSmrg
5106bea0e4fSmrg# _LT_CONFIG_COMMANDS
5116bea0e4fSmrg# -------------------
5126bea0e4fSmrg# Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
5136bea0e4fSmrg# variables for single and double quote escaping we saved from calls
5146bea0e4fSmrg# to _LT_DECL, we can put quote escaped variables declarations
5156bea0e4fSmrg# into 'config.status', and then the shell code to quote escape them in
5166bea0e4fSmrg# for loops in 'config.status'.  Finally, any additional code accumulated
5176bea0e4fSmrg# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
5186bea0e4fSmrgm4_defun([_LT_CONFIG_COMMANDS],
5196bea0e4fSmrg[AC_PROVIDE_IFELSE([LT_OUTPUT],
5206bea0e4fSmrg	dnl If the libtool generation code has been placed in $CONFIG_LT,
5216bea0e4fSmrg	dnl instead of duplicating it all over again into config.status,
5226bea0e4fSmrg	dnl then we will have config.status run $CONFIG_LT later, so it
5236bea0e4fSmrg	dnl needs to know what name is stored there:
5246bea0e4fSmrg        [AC_CONFIG_COMMANDS([libtool],
5256bea0e4fSmrg            [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
5266bea0e4fSmrg    dnl If the libtool generation code is destined for config.status,
5276bea0e4fSmrg    dnl expand the accumulated commands and init code now:
5286bea0e4fSmrg    [AC_CONFIG_COMMANDS([libtool],
5296bea0e4fSmrg        [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
5306bea0e4fSmrg])#_LT_CONFIG_COMMANDS
5316bea0e4fSmrg
5326bea0e4fSmrg
5336bea0e4fSmrg# Initialize.
5346bea0e4fSmrgm4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
5356bea0e4fSmrg[
5366bea0e4fSmrg
5376bea0e4fSmrg# The HP-UX ksh and POSIX shell print the target directory to stdout
5386bea0e4fSmrg# if CDPATH is set.
5396bea0e4fSmrg(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
5406bea0e4fSmrg
5416bea0e4fSmrgsed_quote_subst='$sed_quote_subst'
5426bea0e4fSmrgdouble_quote_subst='$double_quote_subst'
5436bea0e4fSmrgdelay_variable_subst='$delay_variable_subst'
5446bea0e4fSmrg_LT_CONFIG_STATUS_DECLARATIONS
5456bea0e4fSmrgLTCC='$LTCC'
5466bea0e4fSmrgLTCFLAGS='$LTCFLAGS'
5476bea0e4fSmrgcompiler='$compiler_DEFAULT'
5486bea0e4fSmrg
5496bea0e4fSmrg# A function that is used when there is no print builtin or printf.
5506bea0e4fSmrgfunc_fallback_echo ()
5516bea0e4fSmrg{
5526bea0e4fSmrg  eval 'cat <<_LTECHO_EOF
5536bea0e4fSmrg\$[]1
5546bea0e4fSmrg_LTECHO_EOF'
5556bea0e4fSmrg}
5566bea0e4fSmrg
5576bea0e4fSmrg# Quote evaled strings.
5586bea0e4fSmrgfor var in lt_decl_all_varnames([[ \
5596bea0e4fSmrg]], lt_decl_quote_varnames); do
5606bea0e4fSmrg    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
5616bea0e4fSmrg    *[[\\\\\\\`\\"\\\$]]*)
5626bea0e4fSmrg      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
5636bea0e4fSmrg      ;;
5646bea0e4fSmrg    *)
5656bea0e4fSmrg      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
5666bea0e4fSmrg      ;;
5676bea0e4fSmrg    esac
5686bea0e4fSmrgdone
5696bea0e4fSmrg
5706bea0e4fSmrg# Double-quote double-evaled strings.
5716bea0e4fSmrgfor var in lt_decl_all_varnames([[ \
5726bea0e4fSmrg]], lt_decl_dquote_varnames); do
5736bea0e4fSmrg    case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
5746bea0e4fSmrg    *[[\\\\\\\`\\"\\\$]]*)
5756bea0e4fSmrg      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
5766bea0e4fSmrg      ;;
5776bea0e4fSmrg    *)
5786bea0e4fSmrg      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
5796bea0e4fSmrg      ;;
5806bea0e4fSmrg    esac
5816bea0e4fSmrgdone
5826bea0e4fSmrg
5836bea0e4fSmrg_LT_OUTPUT_LIBTOOL_INIT
5846bea0e4fSmrg])
5856bea0e4fSmrg
5866bea0e4fSmrg# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
5876bea0e4fSmrg# ------------------------------------
5886bea0e4fSmrg# Generate a child script FILE with all initialization necessary to
5896bea0e4fSmrg# reuse the environment learned by the parent script, and make the
5906bea0e4fSmrg# file executable.  If COMMENT is supplied, it is inserted after the
5916bea0e4fSmrg# '#!' sequence but before initialization text begins.  After this
5926bea0e4fSmrg# macro, additional text can be appended to FILE to form the body of
5936bea0e4fSmrg# the child script.  The macro ends with non-zero status if the
5946bea0e4fSmrg# file could not be fully written (such as if the disk is full).
5956bea0e4fSmrgm4_ifdef([AS_INIT_GENERATED],
5966bea0e4fSmrg[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
5976bea0e4fSmrg[m4_defun([_LT_GENERATED_FILE_INIT],
5986bea0e4fSmrg[m4_require([AS_PREPARE])]dnl
5996bea0e4fSmrg[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
6006bea0e4fSmrg[lt_write_fail=0
6016bea0e4fSmrgcat >$1 <<_ASEOF || lt_write_fail=1
6026bea0e4fSmrg#! $SHELL
6036bea0e4fSmrg# Generated by $as_me.
6046bea0e4fSmrg$2
6056bea0e4fSmrgSHELL=\${CONFIG_SHELL-$SHELL}
6066bea0e4fSmrgexport SHELL
6076bea0e4fSmrg_ASEOF
6086bea0e4fSmrgcat >>$1 <<\_ASEOF || lt_write_fail=1
6096bea0e4fSmrgAS_SHELL_SANITIZE
6106bea0e4fSmrg_AS_PREPARE
6116bea0e4fSmrgexec AS_MESSAGE_FD>&1
6126bea0e4fSmrg_ASEOF
6136bea0e4fSmrgtest 0 = "$lt_write_fail" && chmod +x $1[]dnl
6146bea0e4fSmrgm4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
6156bea0e4fSmrg
6166bea0e4fSmrg# LT_OUTPUT
6176bea0e4fSmrg# ---------
6186bea0e4fSmrg# This macro allows early generation of the libtool script (before
6196bea0e4fSmrg# AC_OUTPUT is called), in case it is used in configure for compilation
6206bea0e4fSmrg# tests.
6216bea0e4fSmrgAC_DEFUN([LT_OUTPUT],
6226bea0e4fSmrg[: ${CONFIG_LT=./config.lt}
6236bea0e4fSmrgAC_MSG_NOTICE([creating $CONFIG_LT])
6246bea0e4fSmrg_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
6256bea0e4fSmrg[# Run this file to recreate a libtool stub with the current configuration.])
6266bea0e4fSmrg
6276bea0e4fSmrgcat >>"$CONFIG_LT" <<\_LTEOF
6286bea0e4fSmrglt_cl_silent=false
6296bea0e4fSmrgexec AS_MESSAGE_LOG_FD>>config.log
6306bea0e4fSmrg{
6316bea0e4fSmrg  echo
6326bea0e4fSmrg  AS_BOX([Running $as_me.])
6336bea0e4fSmrg} >&AS_MESSAGE_LOG_FD
6346bea0e4fSmrg
6356bea0e4fSmrglt_cl_help="\
6366bea0e4fSmrg'$as_me' creates a local libtool stub from the current configuration,
6376bea0e4fSmrgfor use in further configure time tests before the real libtool is
6386bea0e4fSmrggenerated.
6396bea0e4fSmrg
6406bea0e4fSmrgUsage: $[0] [[OPTIONS]]
6416bea0e4fSmrg
6426bea0e4fSmrg  -h, --help      print this help, then exit
6436bea0e4fSmrg  -V, --version   print version number, then exit
6446bea0e4fSmrg  -q, --quiet     do not print progress messages
6456bea0e4fSmrg  -d, --debug     don't remove temporary files
6466bea0e4fSmrg
6476bea0e4fSmrgReport bugs to <bug-libtool@gnu.org>."
6486bea0e4fSmrg
6496bea0e4fSmrglt_cl_version="\
6506bea0e4fSmrgm4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
6516bea0e4fSmrgm4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
6526bea0e4fSmrgconfigured by $[0], generated by m4_PACKAGE_STRING.
6536bea0e4fSmrg
6546bea0e4fSmrgCopyright (C) 2024 Free Software Foundation, Inc.
6556bea0e4fSmrgThis config.lt script is free software; the Free Software Foundation
6566bea0e4fSmrggives unlimited permission to copy, distribute and modify it."
6576bea0e4fSmrg
6586bea0e4fSmrgwhile test 0 != $[#]
6596bea0e4fSmrgdo
6606bea0e4fSmrg  case $[1] in
6616bea0e4fSmrg    --version | --v* | -V )
6626bea0e4fSmrg      echo "$lt_cl_version"; exit 0 ;;
6636bea0e4fSmrg    --help | --h* | -h )
6646bea0e4fSmrg      echo "$lt_cl_help"; exit 0 ;;
6656bea0e4fSmrg    --debug | --d* | -d )
6666bea0e4fSmrg      debug=: ;;
6676bea0e4fSmrg    --quiet | --q* | --silent | --s* | -q )
6686bea0e4fSmrg      lt_cl_silent=: ;;
6696bea0e4fSmrg
6706bea0e4fSmrg    -*) AC_MSG_ERROR([unrecognized option: $[1]
6716bea0e4fSmrgTry '$[0] --help' for more information.]) ;;
6726bea0e4fSmrg
6736bea0e4fSmrg    *) AC_MSG_ERROR([unrecognized argument: $[1]
6746bea0e4fSmrgTry '$[0] --help' for more information.]) ;;
6756bea0e4fSmrg  esac
6766bea0e4fSmrg  shift
6776bea0e4fSmrgdone
6786bea0e4fSmrg
6796bea0e4fSmrgif $lt_cl_silent; then
6806bea0e4fSmrg  exec AS_MESSAGE_FD>/dev/null
6816bea0e4fSmrgfi
6826bea0e4fSmrg_LTEOF
6836bea0e4fSmrg
6846bea0e4fSmrgcat >>"$CONFIG_LT" <<_LTEOF
6856bea0e4fSmrg_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
6866bea0e4fSmrg_LTEOF
6876bea0e4fSmrg
6886bea0e4fSmrgcat >>"$CONFIG_LT" <<\_LTEOF
6896bea0e4fSmrgAC_MSG_NOTICE([creating $ofile])
6906bea0e4fSmrg_LT_OUTPUT_LIBTOOL_COMMANDS
6916bea0e4fSmrgAS_EXIT(0)
6926bea0e4fSmrg_LTEOF
6936bea0e4fSmrgchmod +x "$CONFIG_LT"
6946bea0e4fSmrg
6956bea0e4fSmrg# configure is writing to config.log, but config.lt does its own redirection,
6966bea0e4fSmrg# appending to config.log, which fails on DOS, as config.log is still kept
6976bea0e4fSmrg# open by configure.  Here we exec the FD to /dev/null, effectively closing
6986bea0e4fSmrg# config.log, so it can be properly (re)opened and appended to by config.lt.
6996bea0e4fSmrglt_cl_success=:
7006bea0e4fSmrgtest yes = "$silent" &&
7016bea0e4fSmrg  lt_config_lt_args="$lt_config_lt_args --quiet"
7026bea0e4fSmrgexec AS_MESSAGE_LOG_FD>/dev/null
7036bea0e4fSmrg$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
7046bea0e4fSmrgexec AS_MESSAGE_LOG_FD>>config.log
7056bea0e4fSmrg$lt_cl_success || AS_EXIT(1)
7066bea0e4fSmrg])# LT_OUTPUT
7076bea0e4fSmrg
7086bea0e4fSmrg
7096bea0e4fSmrg# _LT_CONFIG(TAG)
7106bea0e4fSmrg# ---------------
7116bea0e4fSmrg# If TAG is the built-in tag, create an initial libtool script with a
7126bea0e4fSmrg# default configuration from the untagged config vars.  Otherwise add code
7136bea0e4fSmrg# to config.status for appending the configuration named by TAG from the
7146bea0e4fSmrg# matching tagged config vars.
7156bea0e4fSmrgm4_defun([_LT_CONFIG],
7166bea0e4fSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7176bea0e4fSmrg_LT_CONFIG_SAVE_COMMANDS([
7186bea0e4fSmrg  m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
7196bea0e4fSmrg  m4_if(_LT_TAG, [C], [
7206bea0e4fSmrg    # See if we are running on zsh, and set the options that allow our
7216bea0e4fSmrg    # commands through without removal of \ escapes.
7226bea0e4fSmrg    if test -n "${ZSH_VERSION+set}"; then
7236bea0e4fSmrg      setopt NO_GLOB_SUBST
7246bea0e4fSmrg    fi
7256bea0e4fSmrg
7266bea0e4fSmrg    cfgfile=${ofile}T
7276bea0e4fSmrg    trap "$RM \"$cfgfile\"; exit 1" 1 2 15
7286bea0e4fSmrg    $RM "$cfgfile"
7296bea0e4fSmrg
7306bea0e4fSmrg    cat <<_LT_EOF >> "$cfgfile"
7316bea0e4fSmrg#! $SHELL
7326bea0e4fSmrg# Generated automatically by $as_me ($PACKAGE) $VERSION
7336bea0e4fSmrg# NOTE: Changes made to this file will be lost: look at ltmain.sh.
7346bea0e4fSmrg
7356bea0e4fSmrg# Provide generalized library-building support services.
7366bea0e4fSmrg# Written by Gordon Matzigkeit, 1996
7376bea0e4fSmrg
7386bea0e4fSmrg_LT_COPYING
7396bea0e4fSmrg_LT_LIBTOOL_TAGS
7406bea0e4fSmrg
7416bea0e4fSmrg# Configured defaults for sys_lib_dlsearch_path munging.
7426bea0e4fSmrg: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
7436bea0e4fSmrg
7446bea0e4fSmrg# ### BEGIN LIBTOOL CONFIG
7456bea0e4fSmrg_LT_LIBTOOL_CONFIG_VARS
7466bea0e4fSmrg_LT_LIBTOOL_TAG_VARS
7476bea0e4fSmrg# ### END LIBTOOL CONFIG
7486bea0e4fSmrg
7496bea0e4fSmrg_LT_EOF
7506bea0e4fSmrg
7516bea0e4fSmrg    cat <<'_LT_EOF' >> "$cfgfile"
7526bea0e4fSmrg
7536bea0e4fSmrg# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
7546bea0e4fSmrg
7556bea0e4fSmrg_LT_PREPARE_MUNGE_PATH_LIST
7566bea0e4fSmrg_LT_PREPARE_CC_BASENAME
7576bea0e4fSmrg
7586bea0e4fSmrg# ### END FUNCTIONS SHARED WITH CONFIGURE
7596bea0e4fSmrg
7606bea0e4fSmrg_LT_EOF
7616bea0e4fSmrg
7626bea0e4fSmrg  case $host_os in
7636bea0e4fSmrg  aix3*)
7646bea0e4fSmrg    cat <<\_LT_EOF >> "$cfgfile"
7656bea0e4fSmrg# AIX sometimes has problems with the GCC collect2 program.  For some
7666bea0e4fSmrg# reason, if we set the COLLECT_NAMES environment variable, the problems
7676bea0e4fSmrg# vanish in a puff of smoke.
7686bea0e4fSmrgif test set != "${COLLECT_NAMES+set}"; then
7696bea0e4fSmrg  COLLECT_NAMES=
7706bea0e4fSmrg  export COLLECT_NAMES
7716bea0e4fSmrgfi
7726bea0e4fSmrg_LT_EOF
7736bea0e4fSmrg    ;;
7746bea0e4fSmrg  esac
7756bea0e4fSmrg
7766bea0e4fSmrg  _LT_PROG_LTMAIN
7776bea0e4fSmrg
7786bea0e4fSmrg  # We use sed instead of cat because bash on DJGPP gets confused if
7796bea0e4fSmrg  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
7806bea0e4fSmrg  # text mode, it properly converts lines to CR/LF.  This bash problem
7816bea0e4fSmrg  # is reportedly fixed, but why not run on old versions too?
7826bea0e4fSmrg  $SED '$q' "$ltmain" >> "$cfgfile" \
7836bea0e4fSmrg     || (rm -f "$cfgfile"; exit 1)
7846bea0e4fSmrg
7856bea0e4fSmrg   mv -f "$cfgfile" "$ofile" ||
7866bea0e4fSmrg    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
7876bea0e4fSmrg  chmod +x "$ofile"
7886bea0e4fSmrg],
7896bea0e4fSmrg[cat <<_LT_EOF >> "$ofile"
7906bea0e4fSmrg
7916bea0e4fSmrgdnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
7926bea0e4fSmrgdnl in a comment (ie after a #).
7936bea0e4fSmrg# ### BEGIN LIBTOOL TAG CONFIG: $1
7946bea0e4fSmrg_LT_LIBTOOL_TAG_VARS(_LT_TAG)
7956bea0e4fSmrg# ### END LIBTOOL TAG CONFIG: $1
7966bea0e4fSmrg_LT_EOF
7976bea0e4fSmrg])dnl /m4_if
7986bea0e4fSmrg],
7996bea0e4fSmrg[m4_if([$1], [], [
8006bea0e4fSmrg    PACKAGE='$PACKAGE'
8016bea0e4fSmrg    VERSION='$VERSION'
8026bea0e4fSmrg    RM='$RM'
8036bea0e4fSmrg    ofile='$ofile'], [])
8046bea0e4fSmrg])dnl /_LT_CONFIG_SAVE_COMMANDS
8056bea0e4fSmrg])# _LT_CONFIG
8066bea0e4fSmrg
8076bea0e4fSmrg
8086bea0e4fSmrg# LT_SUPPORTED_TAG(TAG)
8096bea0e4fSmrg# ---------------------
8106bea0e4fSmrg# Trace this macro to discover what tags are supported by the libtool
8116bea0e4fSmrg# --tag option, using:
8126bea0e4fSmrg#    autoconf --trace 'LT_SUPPORTED_TAG:$1'
8136bea0e4fSmrgAC_DEFUN([LT_SUPPORTED_TAG], [])
8146bea0e4fSmrg
8156bea0e4fSmrg
8166bea0e4fSmrg# C support is built-in for now
8176bea0e4fSmrgm4_define([_LT_LANG_C_enabled], [])
8186bea0e4fSmrgm4_define([_LT_TAGS], [])
8196bea0e4fSmrg
8206bea0e4fSmrg
8216bea0e4fSmrg# LT_LANG(LANG)
8226bea0e4fSmrg# -------------
8236bea0e4fSmrg# Enable libtool support for the given language if not already enabled.
8246bea0e4fSmrgAC_DEFUN([LT_LANG],
8256bea0e4fSmrg[AC_BEFORE([$0], [LT_OUTPUT])dnl
8266bea0e4fSmrgm4_case([$1],
8276bea0e4fSmrg  [C],			[_LT_LANG(C)],
8286bea0e4fSmrg  [C++],		[_LT_LANG(CXX)],
8296bea0e4fSmrg  [Go],			[_LT_LANG(GO)],
8306bea0e4fSmrg  [Java],		[_LT_LANG(GCJ)],
8316bea0e4fSmrg  [Fortran 77],		[_LT_LANG(F77)],
8326bea0e4fSmrg  [Fortran],		[_LT_LANG(FC)],
8336bea0e4fSmrg  [Windows Resource],	[_LT_LANG(RC)],
8346bea0e4fSmrg  [m4_ifdef([_LT_LANG_]$1[_CONFIG],
8356bea0e4fSmrg    [_LT_LANG($1)],
8366bea0e4fSmrg    [m4_fatal([$0: unsupported language: "$1"])])])dnl
8376bea0e4fSmrg])# LT_LANG
8386bea0e4fSmrg
8396bea0e4fSmrg
8406bea0e4fSmrg# _LT_LANG(LANGNAME)
8416bea0e4fSmrg# ------------------
8426bea0e4fSmrgm4_defun([_LT_LANG],
8436bea0e4fSmrg[m4_ifdef([_LT_LANG_]$1[_enabled], [],
8446bea0e4fSmrg  [LT_SUPPORTED_TAG([$1])dnl
8456bea0e4fSmrg  m4_append([_LT_TAGS], [$1 ])dnl
8466bea0e4fSmrg  m4_define([_LT_LANG_]$1[_enabled], [])dnl
8476bea0e4fSmrg  _LT_LANG_$1_CONFIG($1)])dnl
8486bea0e4fSmrg])# _LT_LANG
8496bea0e4fSmrg
8506bea0e4fSmrg
8516bea0e4fSmrgm4_ifndef([AC_PROG_GO], [
8526bea0e4fSmrg############################################################
8536bea0e4fSmrg# NOTE: This macro has been submitted for inclusion into   #
8546bea0e4fSmrg#  GNU Autoconf as AC_PROG_GO.  When it is available in    #
8556bea0e4fSmrg#  a released version of Autoconf we should remove this    #
8566bea0e4fSmrg#  macro and use it instead.                               #
8576bea0e4fSmrg############################################################
8586bea0e4fSmrgm4_defun([AC_PROG_GO],
8596bea0e4fSmrg[AC_LANG_PUSH(Go)dnl
8606bea0e4fSmrgAC_ARG_VAR([GOC],     [Go compiler command])dnl
8616bea0e4fSmrgAC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
8626bea0e4fSmrg_AC_ARG_VAR_LDFLAGS()dnl
8636bea0e4fSmrgAC_CHECK_TOOL(GOC, gccgo)
8646bea0e4fSmrgif test -z "$GOC"; then
8656bea0e4fSmrg  if test -n "$ac_tool_prefix"; then
8666bea0e4fSmrg    AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
8676bea0e4fSmrg  fi
8686bea0e4fSmrgfi
8696bea0e4fSmrgif test -z "$GOC"; then
8706bea0e4fSmrg  AC_CHECK_PROG(GOC, gccgo, gccgo, false)
8716bea0e4fSmrgfi
8726bea0e4fSmrg])#m4_defun
8736bea0e4fSmrg])#m4_ifndef
8746bea0e4fSmrg
8756bea0e4fSmrg
8766bea0e4fSmrg# _LT_LANG_DEFAULT_CONFIG
8776bea0e4fSmrg# -----------------------
8786bea0e4fSmrgm4_defun([_LT_LANG_DEFAULT_CONFIG],
8796bea0e4fSmrg[AC_PROVIDE_IFELSE([AC_PROG_CXX],
8806bea0e4fSmrg  [LT_LANG(CXX)],
8816bea0e4fSmrg  [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
8826bea0e4fSmrg
8836bea0e4fSmrgAC_PROVIDE_IFELSE([AC_PROG_F77],
8846bea0e4fSmrg  [LT_LANG(F77)],
8856bea0e4fSmrg  [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
8866bea0e4fSmrg
8876bea0e4fSmrgAC_PROVIDE_IFELSE([AC_PROG_FC],
8886bea0e4fSmrg  [LT_LANG(FC)],
8896bea0e4fSmrg  [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
8906bea0e4fSmrg
8916bea0e4fSmrgdnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
8926bea0e4fSmrgdnl pulling things in needlessly.
8936bea0e4fSmrgAC_PROVIDE_IFELSE([AC_PROG_GCJ],
8946bea0e4fSmrg  [LT_LANG(GCJ)],
8956bea0e4fSmrg  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
8966bea0e4fSmrg    [LT_LANG(GCJ)],
8976bea0e4fSmrg    [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
8986bea0e4fSmrg      [LT_LANG(GCJ)],
8996bea0e4fSmrg      [m4_ifdef([AC_PROG_GCJ],
9006bea0e4fSmrg	[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
9016bea0e4fSmrg       m4_ifdef([A][M_PROG_GCJ],
9026bea0e4fSmrg	[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
9036bea0e4fSmrg       m4_ifdef([LT_PROG_GCJ],
9046bea0e4fSmrg	[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
9056bea0e4fSmrg
9066bea0e4fSmrgAC_PROVIDE_IFELSE([AC_PROG_GO],
9076bea0e4fSmrg  [LT_LANG(GO)],
9086bea0e4fSmrg  [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
9096bea0e4fSmrg
9106bea0e4fSmrgAC_PROVIDE_IFELSE([LT_PROG_RC],
9116bea0e4fSmrg  [LT_LANG(RC)],
9126bea0e4fSmrg  [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
9136bea0e4fSmrg])# _LT_LANG_DEFAULT_CONFIG
9146bea0e4fSmrg
9156bea0e4fSmrg# Obsolete macros:
9166bea0e4fSmrgAU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
9176bea0e4fSmrgAU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
9186bea0e4fSmrgAU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
9196bea0e4fSmrgAU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
9206bea0e4fSmrgAU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
9216bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
9226bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_CXX], [])
9236bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_F77], [])
9246bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_FC], [])
9256bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
9266bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_RC], [])
9276bea0e4fSmrg
9286bea0e4fSmrg
9296bea0e4fSmrg# _LT_TAG_COMPILER
9306bea0e4fSmrg# ----------------
9316bea0e4fSmrgm4_defun([_LT_TAG_COMPILER],
9326bea0e4fSmrg[AC_REQUIRE([AC_PROG_CC])dnl
9336bea0e4fSmrg
9346bea0e4fSmrg_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
9356bea0e4fSmrg_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
9366bea0e4fSmrg_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
9376bea0e4fSmrg_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
9386bea0e4fSmrg
9396bea0e4fSmrg# If no C compiler was specified, use CC.
9406bea0e4fSmrgLTCC=${LTCC-"$CC"}
9416bea0e4fSmrg
9426bea0e4fSmrg# If no C compiler flags were specified, use CFLAGS.
9436bea0e4fSmrgLTCFLAGS=${LTCFLAGS-"$CFLAGS"}
9446bea0e4fSmrg
9456bea0e4fSmrg# Allow CC to be a program name with arguments.
9466bea0e4fSmrgcompiler=$CC
9476bea0e4fSmrg])# _LT_TAG_COMPILER
9486bea0e4fSmrg
9496bea0e4fSmrg
9506bea0e4fSmrg# _LT_COMPILER_BOILERPLATE
9516bea0e4fSmrg# ------------------------
9526bea0e4fSmrg# Check for compiler boilerplate output or warnings with
9536bea0e4fSmrg# the simple compiler test code.
9546bea0e4fSmrgm4_defun([_LT_COMPILER_BOILERPLATE],
9556bea0e4fSmrg[m4_require([_LT_DECL_SED])dnl
9566bea0e4fSmrgac_outfile=conftest.$ac_objext
9576bea0e4fSmrgecho "$lt_simple_compile_test_code" >conftest.$ac_ext
9586bea0e4fSmrgeval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
9596bea0e4fSmrg_lt_compiler_boilerplate=`cat conftest.err`
9606bea0e4fSmrg$RM conftest*
9616bea0e4fSmrg])# _LT_COMPILER_BOILERPLATE
9626bea0e4fSmrg
9636bea0e4fSmrg
9646bea0e4fSmrg# _LT_LINKER_BOILERPLATE
9656bea0e4fSmrg# ----------------------
9666bea0e4fSmrg# Check for linker boilerplate output or warnings with
9676bea0e4fSmrg# the simple link test code.
9686bea0e4fSmrgm4_defun([_LT_LINKER_BOILERPLATE],
9696bea0e4fSmrg[m4_require([_LT_DECL_SED])dnl
9706bea0e4fSmrgac_outfile=conftest.$ac_objext
9716bea0e4fSmrgecho "$lt_simple_link_test_code" >conftest.$ac_ext
9726bea0e4fSmrgeval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
9736bea0e4fSmrg_lt_linker_boilerplate=`cat conftest.err`
9746bea0e4fSmrg$RM -r conftest*
9756bea0e4fSmrg])# _LT_LINKER_BOILERPLATE
9766bea0e4fSmrg
9776bea0e4fSmrg
9786bea0e4fSmrg# _LT_REQUIRED_DARWIN_CHECKS
9796bea0e4fSmrg# -------------------------
9806bea0e4fSmrgm4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
9816bea0e4fSmrg  case $host_os in
9826bea0e4fSmrg    rhapsody* | darwin*)
9836bea0e4fSmrg    AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
9846bea0e4fSmrg    AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
9856bea0e4fSmrg    AC_CHECK_TOOL([LIPO], [lipo], [:])
9866bea0e4fSmrg    AC_CHECK_TOOL([OTOOL], [otool], [:])
9876bea0e4fSmrg    AC_CHECK_TOOL([OTOOL64], [otool64], [:])
9886bea0e4fSmrg    _LT_DECL([], [DSYMUTIL], [1],
9896bea0e4fSmrg      [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
9906bea0e4fSmrg    _LT_DECL([], [NMEDIT], [1],
9916bea0e4fSmrg      [Tool to change global to local symbols on Mac OS X])
9926bea0e4fSmrg    _LT_DECL([], [LIPO], [1],
9936bea0e4fSmrg      [Tool to manipulate fat objects and archives on Mac OS X])
9946bea0e4fSmrg    _LT_DECL([], [OTOOL], [1],
9956bea0e4fSmrg      [ldd/readelf like tool for Mach-O binaries on Mac OS X])
9966bea0e4fSmrg    _LT_DECL([], [OTOOL64], [1],
9976bea0e4fSmrg      [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
9986bea0e4fSmrg
9996bea0e4fSmrg    AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
10006bea0e4fSmrg      [lt_cv_apple_cc_single_mod=no
10016bea0e4fSmrg      if test -z "$LT_MULTI_MODULE"; then
10026bea0e4fSmrg	# By default we will add the -single_module flag. You can override
10036bea0e4fSmrg	# by either setting the environment variable LT_MULTI_MODULE
10046bea0e4fSmrg	# non-empty at configure time, or by adding -multi_module to the
10056bea0e4fSmrg	# link flags.
10066bea0e4fSmrg	rm -rf libconftest.dylib*
10076bea0e4fSmrg	echo "int foo(void){return 1;}" > conftest.c
10086bea0e4fSmrg	echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
10096bea0e4fSmrg-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
10106bea0e4fSmrg	$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
10116bea0e4fSmrg	  -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
10126bea0e4fSmrg        _lt_result=$?
10136bea0e4fSmrg	# If there is a non-empty error log, and "single_module"
10146bea0e4fSmrg	# appears in it, assume the flag caused a linker warning
10156bea0e4fSmrg        if test -s conftest.err && $GREP single_module conftest.err; then
10166bea0e4fSmrg	  cat conftest.err >&AS_MESSAGE_LOG_FD
10176bea0e4fSmrg	# Otherwise, if the output was created with a 0 exit code from
10186bea0e4fSmrg	# the compiler, it worked.
10196bea0e4fSmrg	elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
10206bea0e4fSmrg	  lt_cv_apple_cc_single_mod=yes
10216bea0e4fSmrg	else
10226bea0e4fSmrg	  cat conftest.err >&AS_MESSAGE_LOG_FD
10236bea0e4fSmrg	fi
10246bea0e4fSmrg	rm -rf libconftest.dylib*
10256bea0e4fSmrg	rm -f conftest.*
10266bea0e4fSmrg      fi])
10276bea0e4fSmrg
10286bea0e4fSmrg    # Feature test to disable chained fixups since it is not
10296bea0e4fSmrg    # compatible with '-undefined dynamic_lookup'
10306bea0e4fSmrg    AC_CACHE_CHECK([for -no_fixup_chains linker flag],
10316bea0e4fSmrg      [lt_cv_support_no_fixup_chains],
10326bea0e4fSmrg      [ save_LDFLAGS=$LDFLAGS
10336bea0e4fSmrg        LDFLAGS="$LDFLAGS -Wl,-no_fixup_chains"
10346bea0e4fSmrg        AC_LINK_IFELSE(
10356bea0e4fSmrg          [AC_LANG_PROGRAM([],[])],
10366bea0e4fSmrg          lt_cv_support_no_fixup_chains=yes,
10376bea0e4fSmrg          lt_cv_support_no_fixup_chains=no
10386bea0e4fSmrg        )
10396bea0e4fSmrg        LDFLAGS=$save_LDFLAGS
10406bea0e4fSmrg      ]
10416bea0e4fSmrg    )
10426bea0e4fSmrg
10436bea0e4fSmrg    AC_CACHE_CHECK([for -exported_symbols_list linker flag],
10446bea0e4fSmrg      [lt_cv_ld_exported_symbols_list],
10456bea0e4fSmrg      [lt_cv_ld_exported_symbols_list=no
10466bea0e4fSmrg      save_LDFLAGS=$LDFLAGS
10476bea0e4fSmrg      echo "_main" > conftest.sym
10486bea0e4fSmrg      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
10496bea0e4fSmrg      AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
10506bea0e4fSmrg	[lt_cv_ld_exported_symbols_list=yes],
10516bea0e4fSmrg	[lt_cv_ld_exported_symbols_list=no])
10526bea0e4fSmrg	LDFLAGS=$save_LDFLAGS
10536bea0e4fSmrg    ])
10546bea0e4fSmrg
10556bea0e4fSmrg    AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
10566bea0e4fSmrg      [lt_cv_ld_force_load=no
10576bea0e4fSmrg      cat > conftest.c << _LT_EOF
10586bea0e4fSmrgint forced_loaded() { return 2;}
10596bea0e4fSmrg_LT_EOF
10606bea0e4fSmrg      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
10616bea0e4fSmrg      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
10626bea0e4fSmrg      echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
10636bea0e4fSmrg      $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
10646bea0e4fSmrg      echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
10656bea0e4fSmrg      $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
10666bea0e4fSmrg      cat > conftest.c << _LT_EOF
10676bea0e4fSmrgint main(void) { return 0;}
10686bea0e4fSmrg_LT_EOF
10696bea0e4fSmrg      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
10706bea0e4fSmrg      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
10716bea0e4fSmrg      _lt_result=$?
10726bea0e4fSmrg      if test -s conftest.err && $GREP force_load conftest.err; then
10736bea0e4fSmrg	cat conftest.err >&AS_MESSAGE_LOG_FD
10746bea0e4fSmrg      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
10756bea0e4fSmrg	lt_cv_ld_force_load=yes
10766bea0e4fSmrg      else
10776bea0e4fSmrg	cat conftest.err >&AS_MESSAGE_LOG_FD
10786bea0e4fSmrg      fi
10796bea0e4fSmrg        rm -f conftest.err libconftest.a conftest conftest.c
10806bea0e4fSmrg        rm -rf conftest.dSYM
10816bea0e4fSmrg    ])
10826bea0e4fSmrg    case $host_os in
10836bea0e4fSmrg    rhapsody* | darwin1.[[012]])
10846bea0e4fSmrg      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
10856bea0e4fSmrg    darwin1.*)
10866bea0e4fSmrg      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
10876bea0e4fSmrg    darwin*)
10886bea0e4fSmrg      case $MACOSX_DEPLOYMENT_TARGET,$host in
10896bea0e4fSmrg        10.[[012]],*|,*powerpc*-darwin[[5-8]]*)
10906bea0e4fSmrg          _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
10916bea0e4fSmrg        *)
10926bea0e4fSmrg          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup'
10936bea0e4fSmrg          if test yes = "$lt_cv_support_no_fixup_chains"; then
10946bea0e4fSmrg            AS_VAR_APPEND([_lt_dar_allow_undefined], [' $wl-no_fixup_chains'])
10956bea0e4fSmrg          fi
10966bea0e4fSmrg        ;;
10976bea0e4fSmrg      esac
10986bea0e4fSmrg    ;;
10996bea0e4fSmrg  esac
11006bea0e4fSmrg    if test yes = "$lt_cv_apple_cc_single_mod"; then
11016bea0e4fSmrg      _lt_dar_single_mod='$single_module'
11026bea0e4fSmrg    fi
11036bea0e4fSmrg    _lt_dar_needs_single_mod=no
11046bea0e4fSmrg    case $host_os in
11056bea0e4fSmrg    rhapsody* | darwin1.*)
11066bea0e4fSmrg      _lt_dar_needs_single_mod=yes ;;
11076bea0e4fSmrg    darwin*)
11086bea0e4fSmrg      # When targeting Mac OS X 10.4 (darwin 8) or later,
11096bea0e4fSmrg      # -single_module is the default and -multi_module is unsupported.
11106bea0e4fSmrg      # The toolchain on macOS 10.14 (darwin 18) and later cannot
11116bea0e4fSmrg      # target any OS version that needs -single_module.
11126bea0e4fSmrg      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
11136bea0e4fSmrg      10.0,*-darwin[[567]].*|10.[[0-3]],*-darwin[[5-9]].*|10.[[0-3]],*-darwin1[[0-7]].*)
11146bea0e4fSmrg        _lt_dar_needs_single_mod=yes ;;
11156bea0e4fSmrg      esac
11166bea0e4fSmrg    ;;
11176bea0e4fSmrg    esac
11186bea0e4fSmrg    if test yes = "$lt_cv_ld_exported_symbols_list"; then
11196bea0e4fSmrg      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
11206bea0e4fSmrg    else
11216bea0e4fSmrg      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
11226bea0e4fSmrg    fi
11236bea0e4fSmrg    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
11246bea0e4fSmrg      _lt_dsymutil='~$DSYMUTIL $lib || :'
11256bea0e4fSmrg    else
11266bea0e4fSmrg      _lt_dsymutil=
11276bea0e4fSmrg    fi
11286bea0e4fSmrg    ;;
11296bea0e4fSmrg  esac
11306bea0e4fSmrg])
11316bea0e4fSmrg
11326bea0e4fSmrg
11336bea0e4fSmrg# _LT_DARWIN_LINKER_FEATURES([TAG])
11346bea0e4fSmrg# ---------------------------------
11356bea0e4fSmrg# Checks for linker and compiler features on darwin
11366bea0e4fSmrgm4_defun([_LT_DARWIN_LINKER_FEATURES],
11376bea0e4fSmrg[
11386bea0e4fSmrg  m4_require([_LT_REQUIRED_DARWIN_CHECKS])
11396bea0e4fSmrg  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
11406bea0e4fSmrg  _LT_TAGVAR(hardcode_direct, $1)=no
11416bea0e4fSmrg  _LT_TAGVAR(hardcode_automatic, $1)=yes
11426bea0e4fSmrg  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
11436bea0e4fSmrg  if test yes = "$lt_cv_ld_force_load"; then
11446bea0e4fSmrg    _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\"`'
11456bea0e4fSmrg    m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
11466bea0e4fSmrg                  [FC],  [_LT_TAGVAR(compiler_needs_object, $1)=yes])
11476bea0e4fSmrg  else
11486bea0e4fSmrg    _LT_TAGVAR(whole_archive_flag_spec, $1)=''
11496bea0e4fSmrg  fi
11506bea0e4fSmrg  _LT_TAGVAR(link_all_deplibs, $1)=yes
11516bea0e4fSmrg  _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
11526bea0e4fSmrg  case $cc_basename in
11536bea0e4fSmrg     ifort*|nagfor*) _lt_dar_can_shared=yes ;;
11546bea0e4fSmrg     *) _lt_dar_can_shared=$GCC ;;
11556bea0e4fSmrg  esac
11566bea0e4fSmrg  if test yes = "$_lt_dar_can_shared"; then
11576bea0e4fSmrg    output_verbose_link_cmd=func_echo_all
11586bea0e4fSmrg    _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"
11596bea0e4fSmrg    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
11606bea0e4fSmrg    _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"
11616bea0e4fSmrg    _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"
11626bea0e4fSmrg    m4_if([$1], [CXX],
11636bea0e4fSmrg[   if test yes = "$_lt_dar_needs_single_mod" -a yes != "$lt_cv_apple_cc_single_mod"; then
11646bea0e4fSmrg      _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"
11656bea0e4fSmrg      _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"
11666bea0e4fSmrg    fi
11676bea0e4fSmrg],[])
11686bea0e4fSmrg  else
11696bea0e4fSmrg  _LT_TAGVAR(ld_shlibs, $1)=no
11706bea0e4fSmrg  fi
11716bea0e4fSmrg])
11726bea0e4fSmrg
11736bea0e4fSmrg# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
11746bea0e4fSmrg# ----------------------------------
11756bea0e4fSmrg# Links a minimal program and checks the executable
11766bea0e4fSmrg# for the system default hardcoded library path. In most cases,
11776bea0e4fSmrg# this is /usr/lib:/lib, but when the MPI compilers are used
11786bea0e4fSmrg# the location of the communication and MPI libs are included too.
11796bea0e4fSmrg# If we don't find anything, use the default library path according
11806bea0e4fSmrg# to the aix ld manual.
11816bea0e4fSmrg# Store the results from the different compilers for each TAGNAME.
11826bea0e4fSmrg# Allow to override them for all tags through lt_cv_aix_libpath.
11836bea0e4fSmrgm4_defun([_LT_SYS_MODULE_PATH_AIX],
11846bea0e4fSmrg[m4_require([_LT_DECL_SED])dnl
11856bea0e4fSmrgif test set = "${lt_cv_aix_libpath+set}"; then
11866bea0e4fSmrg  aix_libpath=$lt_cv_aix_libpath
11876bea0e4fSmrgelse
11886bea0e4fSmrg  AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
11896bea0e4fSmrg  [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
11906bea0e4fSmrg  lt_aix_libpath_sed='[
11916bea0e4fSmrg      /Import File Strings/,/^$/ {
11926bea0e4fSmrg	  /^0/ {
11936bea0e4fSmrg	      s/^0  *\([^ ]*\) *$/\1/
11946bea0e4fSmrg	      p
11956bea0e4fSmrg	  }
11966bea0e4fSmrg      }]'
11976bea0e4fSmrg  _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
11986bea0e4fSmrg  # Check for a 64-bit object if we didn't find anything.
11996bea0e4fSmrg  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
12006bea0e4fSmrg    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
12016bea0e4fSmrg  fi],[])
12026bea0e4fSmrg  if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
12036bea0e4fSmrg    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
12046bea0e4fSmrg  fi
12056bea0e4fSmrg  ])
12066bea0e4fSmrg  aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
12076bea0e4fSmrgfi
12086bea0e4fSmrg])# _LT_SYS_MODULE_PATH_AIX
12096bea0e4fSmrg
12106bea0e4fSmrg
12116bea0e4fSmrg# _LT_SHELL_INIT(ARG)
12126bea0e4fSmrg# -------------------
12136bea0e4fSmrgm4_define([_LT_SHELL_INIT],
12146bea0e4fSmrg[m4_divert_text([M4SH-INIT], [$1
12156bea0e4fSmrg])])# _LT_SHELL_INIT
12166bea0e4fSmrg
12176bea0e4fSmrg
12186bea0e4fSmrg
12196bea0e4fSmrg# _LT_PROG_ECHO_BACKSLASH
12206bea0e4fSmrg# -----------------------
12216bea0e4fSmrg# Find how we can fake an echo command that does not interpret backslash.
12226bea0e4fSmrg# In particular, with Autoconf 2.60 or later we add some code to the start
12236bea0e4fSmrg# of the generated configure script that will find a shell with a builtin
12246bea0e4fSmrg# printf (that we can use as an echo command).
12256bea0e4fSmrgm4_defun([_LT_PROG_ECHO_BACKSLASH],
12266bea0e4fSmrg[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
12276bea0e4fSmrgECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
12286bea0e4fSmrgECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
12296bea0e4fSmrg
12306bea0e4fSmrgAC_MSG_CHECKING([how to print strings])
12316bea0e4fSmrg# Test print first, because it will be a builtin if present.
12326bea0e4fSmrgif test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
12336bea0e4fSmrg   test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
12346bea0e4fSmrg  ECHO='print -r --'
12356bea0e4fSmrgelif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
12366bea0e4fSmrg  ECHO='printf %s\n'
12376bea0e4fSmrgelse
12386bea0e4fSmrg  # Use this function as a fallback that always works.
12396bea0e4fSmrg  func_fallback_echo ()
12406bea0e4fSmrg  {
12416bea0e4fSmrg    eval 'cat <<_LTECHO_EOF
12426bea0e4fSmrg$[]1
12436bea0e4fSmrg_LTECHO_EOF'
12446bea0e4fSmrg  }
12456bea0e4fSmrg  ECHO='func_fallback_echo'
12466bea0e4fSmrgfi
12476bea0e4fSmrg
12486bea0e4fSmrg# func_echo_all arg...
12496bea0e4fSmrg# Invoke $ECHO with all args, space-separated.
12506bea0e4fSmrgfunc_echo_all ()
12516bea0e4fSmrg{
12526bea0e4fSmrg    $ECHO "$*"
12536bea0e4fSmrg}
12546bea0e4fSmrg
12556bea0e4fSmrgcase $ECHO in
12566bea0e4fSmrg  printf*) AC_MSG_RESULT([printf]) ;;
12576bea0e4fSmrg  print*) AC_MSG_RESULT([print -r]) ;;
12586bea0e4fSmrg  *) AC_MSG_RESULT([cat]) ;;
12596bea0e4fSmrgesac
12606bea0e4fSmrg
12616bea0e4fSmrgm4_ifdef([_AS_DETECT_SUGGESTED],
12626bea0e4fSmrg[_AS_DETECT_SUGGESTED([
12636bea0e4fSmrg  test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
12646bea0e4fSmrg    ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
12656bea0e4fSmrg    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
12666bea0e4fSmrg    ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
12676bea0e4fSmrg    PATH=/empty FPATH=/empty; export PATH FPATH
12686bea0e4fSmrg    test "X`printf %s $ECHO`" = "X$ECHO" \
12696bea0e4fSmrg      || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
12706bea0e4fSmrg
12716bea0e4fSmrg_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
12726bea0e4fSmrg_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
12736bea0e4fSmrg])# _LT_PROG_ECHO_BACKSLASH
12746bea0e4fSmrg
12756bea0e4fSmrg
12766bea0e4fSmrg# _LT_WITH_SYSROOT
12776bea0e4fSmrg# ----------------
12786bea0e4fSmrgAC_DEFUN([_LT_WITH_SYSROOT],
12796bea0e4fSmrg[m4_require([_LT_DECL_SED])dnl
12806bea0e4fSmrgAC_MSG_CHECKING([for sysroot])
12816bea0e4fSmrgAC_ARG_WITH([sysroot],
12826bea0e4fSmrg[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
12836bea0e4fSmrg  [Search for dependent libraries within DIR (or the compiler's sysroot
12846bea0e4fSmrg   if not specified).])],
12856bea0e4fSmrg[], [with_sysroot=no])
12866bea0e4fSmrg
12876bea0e4fSmrgdnl lt_sysroot will always be passed unquoted.  We quote it here
12886bea0e4fSmrgdnl in case the user passed a directory name.
12896bea0e4fSmrglt_sysroot=
12906bea0e4fSmrgcase $with_sysroot in #(
12916bea0e4fSmrg yes)
12926bea0e4fSmrg   if test yes = "$GCC"; then
12936bea0e4fSmrg     # Trim trailing / since we'll always append absolute paths and we want
12946bea0e4fSmrg     # to avoid //, if only for less confusing output for the user.
12956bea0e4fSmrg     lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'`
12966bea0e4fSmrg   fi
12976bea0e4fSmrg   ;; #(
12986bea0e4fSmrg /*)
12996bea0e4fSmrg   lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
13006bea0e4fSmrg   ;; #(
13016bea0e4fSmrg no|'')
13026bea0e4fSmrg   ;; #(
13036bea0e4fSmrg *)
13046bea0e4fSmrg   AC_MSG_RESULT([$with_sysroot])
13056bea0e4fSmrg   AC_MSG_ERROR([The sysroot must be an absolute path.])
13066bea0e4fSmrg   ;;
13076bea0e4fSmrgesac
13086bea0e4fSmrg
13096bea0e4fSmrg AC_MSG_RESULT([${lt_sysroot:-no}])
13106bea0e4fSmrg_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
13116bea0e4fSmrg[dependent libraries, and where our libraries should be installed.])])
13126bea0e4fSmrg
13136bea0e4fSmrg# _LT_ENABLE_LOCK
13146bea0e4fSmrg# ---------------
13156bea0e4fSmrgm4_defun([_LT_ENABLE_LOCK],
13166bea0e4fSmrg[AC_ARG_ENABLE([libtool-lock],
13176bea0e4fSmrg  [AS_HELP_STRING([--disable-libtool-lock],
13186bea0e4fSmrg    [avoid locking (might break parallel builds)])])
13196bea0e4fSmrgtest no = "$enable_libtool_lock" || enable_libtool_lock=yes
13206bea0e4fSmrg
13216bea0e4fSmrg# Some flags need to be propagated to the compiler or linker for good
13226bea0e4fSmrg# libtool support.
13236bea0e4fSmrgcase $host in
13246bea0e4fSmrgia64-*-hpux*)
13256bea0e4fSmrg  # Find out what ABI is being produced by ac_compile, and set mode
13266bea0e4fSmrg  # options accordingly.
13276bea0e4fSmrg  echo 'int i;' > conftest.$ac_ext
13286bea0e4fSmrg  if AC_TRY_EVAL(ac_compile); then
13296bea0e4fSmrg    case `$FILECMD conftest.$ac_objext` in
13306bea0e4fSmrg      *ELF-32*)
13316bea0e4fSmrg	HPUX_IA64_MODE=32
13326bea0e4fSmrg	;;
13336bea0e4fSmrg      *ELF-64*)
13346bea0e4fSmrg	HPUX_IA64_MODE=64
13356bea0e4fSmrg	;;
13366bea0e4fSmrg    esac
13376bea0e4fSmrg  fi
13386bea0e4fSmrg  rm -rf conftest*
13396bea0e4fSmrg  ;;
13406bea0e4fSmrg*-*-irix6*)
13416bea0e4fSmrg  # Find out what ABI is being produced by ac_compile, and set linker
13426bea0e4fSmrg  # options accordingly.
13436bea0e4fSmrg  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
13446bea0e4fSmrg  if AC_TRY_EVAL(ac_compile); then
13456bea0e4fSmrg    if test yes = "$lt_cv_prog_gnu_ld"; then
13466bea0e4fSmrg      case `$FILECMD conftest.$ac_objext` in
13476bea0e4fSmrg	*32-bit*)
13486bea0e4fSmrg	  LD="${LD-ld} -melf32bsmip"
13496bea0e4fSmrg	  ;;
13506bea0e4fSmrg	*N32*)
13516bea0e4fSmrg	  LD="${LD-ld} -melf32bmipn32"
13526bea0e4fSmrg	  ;;
13536bea0e4fSmrg	*64-bit*)
13546bea0e4fSmrg	  LD="${LD-ld} -melf64bmip"
13556bea0e4fSmrg	;;
13566bea0e4fSmrg      esac
13576bea0e4fSmrg    else
13586bea0e4fSmrg      case `$FILECMD conftest.$ac_objext` in
13596bea0e4fSmrg	*32-bit*)
13606bea0e4fSmrg	  LD="${LD-ld} -32"
13616bea0e4fSmrg	  ;;
13626bea0e4fSmrg	*N32*)
13636bea0e4fSmrg	  LD="${LD-ld} -n32"
13646bea0e4fSmrg	  ;;
13656bea0e4fSmrg	*64-bit*)
13666bea0e4fSmrg	  LD="${LD-ld} -64"
13676bea0e4fSmrg	  ;;
13686bea0e4fSmrg      esac
13696bea0e4fSmrg    fi
13706bea0e4fSmrg  fi
13716bea0e4fSmrg  rm -rf conftest*
13726bea0e4fSmrg  ;;
13736bea0e4fSmrg
13746bea0e4fSmrgmips64*-*linux*)
13756bea0e4fSmrg  # Find out what ABI is being produced by ac_compile, and set linker
13766bea0e4fSmrg  # options accordingly.
13776bea0e4fSmrg  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
13786bea0e4fSmrg  if AC_TRY_EVAL(ac_compile); then
13796bea0e4fSmrg    emul=elf
13806bea0e4fSmrg    case `$FILECMD conftest.$ac_objext` in
13816bea0e4fSmrg      *32-bit*)
13826bea0e4fSmrg	emul="${emul}32"
13836bea0e4fSmrg	;;
13846bea0e4fSmrg      *64-bit*)
13856bea0e4fSmrg	emul="${emul}64"
13866bea0e4fSmrg	;;
13876bea0e4fSmrg    esac
13886bea0e4fSmrg    case `$FILECMD conftest.$ac_objext` in
13896bea0e4fSmrg      *MSB*)
13906bea0e4fSmrg	emul="${emul}btsmip"
13916bea0e4fSmrg	;;
13926bea0e4fSmrg      *LSB*)
13936bea0e4fSmrg	emul="${emul}ltsmip"
13946bea0e4fSmrg	;;
13956bea0e4fSmrg    esac
13966bea0e4fSmrg    case `$FILECMD conftest.$ac_objext` in
13976bea0e4fSmrg      *N32*)
13986bea0e4fSmrg	emul="${emul}n32"
13996bea0e4fSmrg	;;
14006bea0e4fSmrg    esac
14016bea0e4fSmrg    LD="${LD-ld} -m $emul"
14026bea0e4fSmrg  fi
14036bea0e4fSmrg  rm -rf conftest*
14046bea0e4fSmrg  ;;
14056bea0e4fSmrg
14066bea0e4fSmrgx86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
14076bea0e4fSmrgs390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-gnu*)
14086bea0e4fSmrg  # Find out what ABI is being produced by ac_compile, and set linker
14096bea0e4fSmrg  # options accordingly.  Note that the listed cases only cover the
14106bea0e4fSmrg  # situations where additional linker options are needed (such as when
14116bea0e4fSmrg  # doing 32-bit compilation for a host where ld defaults to 64-bit, or
14126bea0e4fSmrg  # vice versa); the common cases where no linker options are needed do
14136bea0e4fSmrg  # not appear in the list.
14146bea0e4fSmrg  echo 'int i;' > conftest.$ac_ext
14156bea0e4fSmrg  if AC_TRY_EVAL(ac_compile); then
14166bea0e4fSmrg    case `$FILECMD conftest.o` in
14176bea0e4fSmrg      *32-bit*)
14186bea0e4fSmrg	case $host in
14196bea0e4fSmrg	  x86_64-*kfreebsd*-gnu)
14206bea0e4fSmrg	    LD="${LD-ld} -m elf_i386_fbsd"
14216bea0e4fSmrg	    ;;
14226bea0e4fSmrg	  x86_64-*linux*|x86_64-gnu*)
14236bea0e4fSmrg	    case `$FILECMD conftest.o` in
14246bea0e4fSmrg	      *x86-64*)
14256bea0e4fSmrg		LD="${LD-ld} -m elf32_x86_64"
14266bea0e4fSmrg		;;
14276bea0e4fSmrg	      *)
14286bea0e4fSmrg		LD="${LD-ld} -m elf_i386"
14296bea0e4fSmrg		;;
14306bea0e4fSmrg	    esac
14316bea0e4fSmrg	    ;;
14326bea0e4fSmrg	  powerpc64le-*linux*)
14336bea0e4fSmrg	    LD="${LD-ld} -m elf32lppclinux"
14346bea0e4fSmrg	    ;;
14356bea0e4fSmrg	  powerpc64-*linux*)
14366bea0e4fSmrg	    LD="${LD-ld} -m elf32ppclinux"
14376bea0e4fSmrg	    ;;
14386bea0e4fSmrg	  s390x-*linux*)
14396bea0e4fSmrg	    LD="${LD-ld} -m elf_s390"
14406bea0e4fSmrg	    ;;
14416bea0e4fSmrg	  sparc64-*linux*)
14426bea0e4fSmrg	    LD="${LD-ld} -m elf32_sparc"
14436bea0e4fSmrg	    ;;
14446bea0e4fSmrg	esac
14456bea0e4fSmrg	;;
14466bea0e4fSmrg      *64-bit*)
14476bea0e4fSmrg	case $host in
14486bea0e4fSmrg	  x86_64-*kfreebsd*-gnu)
14496bea0e4fSmrg	    LD="${LD-ld} -m elf_x86_64_fbsd"
14506bea0e4fSmrg	    ;;
14516bea0e4fSmrg	  x86_64-*linux*|x86_64-gnu*)
14526bea0e4fSmrg	    LD="${LD-ld} -m elf_x86_64"
14536bea0e4fSmrg	    ;;
14546bea0e4fSmrg	  powerpcle-*linux*)
14556bea0e4fSmrg	    LD="${LD-ld} -m elf64lppc"
14566bea0e4fSmrg	    ;;
14576bea0e4fSmrg	  powerpc-*linux*)
14586bea0e4fSmrg	    LD="${LD-ld} -m elf64ppc"
14596bea0e4fSmrg	    ;;
14606bea0e4fSmrg	  s390*-*linux*|s390*-*tpf*)
14616bea0e4fSmrg	    LD="${LD-ld} -m elf64_s390"
14626bea0e4fSmrg	    ;;
14636bea0e4fSmrg	  sparc*-*linux*)
14646bea0e4fSmrg	    LD="${LD-ld} -m elf64_sparc"
14656bea0e4fSmrg	    ;;
14666bea0e4fSmrg	esac
14676bea0e4fSmrg	;;
14686bea0e4fSmrg    esac
14696bea0e4fSmrg  fi
14706bea0e4fSmrg  rm -rf conftest*
14716bea0e4fSmrg  ;;
14726bea0e4fSmrg
14736bea0e4fSmrg*-*-sco3.2v5*)
14746bea0e4fSmrg  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
14756bea0e4fSmrg  SAVE_CFLAGS=$CFLAGS
14766bea0e4fSmrg  CFLAGS="$CFLAGS -belf"
14776bea0e4fSmrg  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
14786bea0e4fSmrg    [AC_LANG_PUSH(C)
14796bea0e4fSmrg     AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
14806bea0e4fSmrg     AC_LANG_POP])
14816bea0e4fSmrg  if test yes != "$lt_cv_cc_needs_belf"; then
14826bea0e4fSmrg    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
14836bea0e4fSmrg    CFLAGS=$SAVE_CFLAGS
14846bea0e4fSmrg  fi
14856bea0e4fSmrg  ;;
14866bea0e4fSmrg*-*solaris*)
14876bea0e4fSmrg  # Find out what ABI is being produced by ac_compile, and set linker
14886bea0e4fSmrg  # options accordingly.
14896bea0e4fSmrg  echo 'int i;' > conftest.$ac_ext
14906bea0e4fSmrg  if AC_TRY_EVAL(ac_compile); then
14916bea0e4fSmrg    case `$FILECMD conftest.o` in
14926bea0e4fSmrg    *64-bit*)
14936bea0e4fSmrg      case $lt_cv_prog_gnu_ld in
14946bea0e4fSmrg      yes*)
14956bea0e4fSmrg        case $host in
14966bea0e4fSmrg        i?86-*-solaris*|x86_64-*-solaris*)
14976bea0e4fSmrg          LD="${LD-ld} -m elf_x86_64"
14986bea0e4fSmrg          ;;
14996bea0e4fSmrg        sparc*-*-solaris*)
15006bea0e4fSmrg          LD="${LD-ld} -m elf64_sparc"
15016bea0e4fSmrg          ;;
15026bea0e4fSmrg        esac
15036bea0e4fSmrg        # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
15046bea0e4fSmrg        if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
15056bea0e4fSmrg          LD=${LD-ld}_sol2
15066bea0e4fSmrg        fi
15076bea0e4fSmrg        ;;
15086bea0e4fSmrg      *)
15096bea0e4fSmrg	if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
15106bea0e4fSmrg	  LD="${LD-ld} -64"
15116bea0e4fSmrg	fi
15126bea0e4fSmrg	;;
15136bea0e4fSmrg      esac
15146bea0e4fSmrg      ;;
15156bea0e4fSmrg    esac
15166bea0e4fSmrg  fi
15176bea0e4fSmrg  rm -rf conftest*
15186bea0e4fSmrg  ;;
15196bea0e4fSmrgesac
15206bea0e4fSmrg
15216bea0e4fSmrgneed_locks=$enable_libtool_lock
15226bea0e4fSmrg])# _LT_ENABLE_LOCK
15236bea0e4fSmrg
15246bea0e4fSmrg
15256bea0e4fSmrg# _LT_PROG_AR
15266bea0e4fSmrg# -----------
15276bea0e4fSmrgm4_defun([_LT_PROG_AR],
15286bea0e4fSmrg[AC_CHECK_TOOLS(AR, [ar], false)
15296bea0e4fSmrg: ${AR=ar}
15306bea0e4fSmrg_LT_DECL([], [AR], [1], [The archiver])
15316bea0e4fSmrg
15326bea0e4fSmrg# Use ARFLAGS variable as AR's operation code to sync the variable naming with
15336bea0e4fSmrg# Automake.  If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have
15346bea0e4fSmrg# higher priority because that's what people were doing historically (setting
15356bea0e4fSmrg# ARFLAGS for automake and AR_FLAGS for libtool).  FIXME: Make the AR_FLAGS
15366bea0e4fSmrg# variable obsoleted/removed.
15376bea0e4fSmrg
15386bea0e4fSmrgtest ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}
15396bea0e4fSmrglt_ar_flags=$AR_FLAGS
15406bea0e4fSmrg_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)])
15416bea0e4fSmrg
15426bea0e4fSmrg# Make AR_FLAGS overridable by 'make ARFLAGS='.  Don't try to run-time override
15436bea0e4fSmrg# by AR_FLAGS because that was never working and AR_FLAGS is about to die.
15446bea0e4fSmrg_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}],
15456bea0e4fSmrg         [Flags to create an archive])
15466bea0e4fSmrg
15476bea0e4fSmrgAC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
15486bea0e4fSmrg  [lt_cv_ar_at_file=no
15496bea0e4fSmrg   AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
15506bea0e4fSmrg     [echo conftest.$ac_objext > conftest.lst
15516bea0e4fSmrg      lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
15526bea0e4fSmrg      AC_TRY_EVAL([lt_ar_try])
15536bea0e4fSmrg      if test 0 -eq "$ac_status"; then
15546bea0e4fSmrg	# Ensure the archiver fails upon bogus file names.
15556bea0e4fSmrg	rm -f conftest.$ac_objext libconftest.a
15566bea0e4fSmrg	AC_TRY_EVAL([lt_ar_try])
15576bea0e4fSmrg	if test 0 -ne "$ac_status"; then
15586bea0e4fSmrg          lt_cv_ar_at_file=@
15596bea0e4fSmrg        fi
15606bea0e4fSmrg      fi
15616bea0e4fSmrg      rm -f conftest.* libconftest.a
15626bea0e4fSmrg     ])
15636bea0e4fSmrg  ])
15646bea0e4fSmrg
15656bea0e4fSmrgif test no = "$lt_cv_ar_at_file"; then
15666bea0e4fSmrg  archiver_list_spec=
15676bea0e4fSmrgelse
15686bea0e4fSmrg  archiver_list_spec=$lt_cv_ar_at_file
15696bea0e4fSmrgfi
15706bea0e4fSmrg_LT_DECL([], [archiver_list_spec], [1],
15716bea0e4fSmrg  [How to feed a file listing to the archiver])
15726bea0e4fSmrg])# _LT_PROG_AR
15736bea0e4fSmrg
15746bea0e4fSmrg
15756bea0e4fSmrg# _LT_CMD_OLD_ARCHIVE
15766bea0e4fSmrg# -------------------
15776bea0e4fSmrgm4_defun([_LT_CMD_OLD_ARCHIVE],
15786bea0e4fSmrg[_LT_PROG_AR
15796bea0e4fSmrg
15806bea0e4fSmrgAC_CHECK_TOOL(STRIP, strip, :)
15816bea0e4fSmrgtest -z "$STRIP" && STRIP=:
15826bea0e4fSmrg_LT_DECL([], [STRIP], [1], [A symbol stripping program])
15836bea0e4fSmrg
15846bea0e4fSmrgAC_REQUIRE([AC_PROG_RANLIB])
15856bea0e4fSmrgtest -z "$RANLIB" && RANLIB=:
15866bea0e4fSmrg_LT_DECL([], [RANLIB], [1],
15876bea0e4fSmrg    [Commands used to install an old-style archive])
15886bea0e4fSmrg
15896bea0e4fSmrg# Determine commands to create old-style static archives.
15906bea0e4fSmrgold_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
15916bea0e4fSmrgold_postinstall_cmds='chmod 644 $oldlib'
15926bea0e4fSmrgold_postuninstall_cmds=
15936bea0e4fSmrg
15946bea0e4fSmrgif test -n "$RANLIB"; then
15956bea0e4fSmrg  old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
15966bea0e4fSmrg  old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
15976bea0e4fSmrgfi
15986bea0e4fSmrg
15996bea0e4fSmrgcase $host_os in
16006bea0e4fSmrg  darwin*)
16016bea0e4fSmrg    lock_old_archive_extraction=yes ;;
16026bea0e4fSmrg  *)
16036bea0e4fSmrg    lock_old_archive_extraction=no ;;
16046bea0e4fSmrgesac
16056bea0e4fSmrg_LT_DECL([], [old_postinstall_cmds], [2])
16066bea0e4fSmrg_LT_DECL([], [old_postuninstall_cmds], [2])
16076bea0e4fSmrg_LT_TAGDECL([], [old_archive_cmds], [2],
16086bea0e4fSmrg    [Commands used to build an old-style archive])
16096bea0e4fSmrg_LT_DECL([], [lock_old_archive_extraction], [0],
16106bea0e4fSmrg    [Whether to use a lock for old archive extraction])
16116bea0e4fSmrg])# _LT_CMD_OLD_ARCHIVE
16126bea0e4fSmrg
16136bea0e4fSmrg
16146bea0e4fSmrg# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
16156bea0e4fSmrg#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
16166bea0e4fSmrg# ----------------------------------------------------------------
16176bea0e4fSmrg# Check whether the given compiler option works
16186bea0e4fSmrgAC_DEFUN([_LT_COMPILER_OPTION],
16196bea0e4fSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
16206bea0e4fSmrgm4_require([_LT_DECL_SED])dnl
16216bea0e4fSmrgAC_CACHE_CHECK([$1], [$2],
16226bea0e4fSmrg  [$2=no
16236bea0e4fSmrg   m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
16246bea0e4fSmrg   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
16256bea0e4fSmrg   lt_compiler_flag="$3"  ## exclude from sc_useless_quotes_in_assignment
16266bea0e4fSmrg   # Insert the option either (1) after the last *FLAGS variable, or
16276bea0e4fSmrg   # (2) before a word containing "conftest.", or (3) at the end.
16286bea0e4fSmrg   # Note that $ac_compile itself does not contain backslashes and begins
16296bea0e4fSmrg   # with a dollar sign (not a hyphen), so the echo should work correctly.
16306bea0e4fSmrg   # The option is referenced via a variable to avoid confusing sed.
16316bea0e4fSmrg   lt_compile=`echo "$ac_compile" | $SED \
16326bea0e4fSmrg   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
16336bea0e4fSmrg   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
16346bea0e4fSmrg   -e 's:$: $lt_compiler_flag:'`
16356bea0e4fSmrg   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
16366bea0e4fSmrg   (eval "$lt_compile" 2>conftest.err)
16376bea0e4fSmrg   ac_status=$?
16386bea0e4fSmrg   cat conftest.err >&AS_MESSAGE_LOG_FD
16396bea0e4fSmrg   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
16406bea0e4fSmrg   if (exit $ac_status) && test -s "$ac_outfile"; then
16416bea0e4fSmrg     # The compiler can only warn and ignore the option if not recognized
16426bea0e4fSmrg     # So say no if there are warnings other than the usual output.
16436bea0e4fSmrg     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
16446bea0e4fSmrg     $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
16456bea0e4fSmrg     if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
16466bea0e4fSmrg       $2=yes
16476bea0e4fSmrg     fi
16486bea0e4fSmrg   fi
16496bea0e4fSmrg   $RM conftest*
16506bea0e4fSmrg])
16516bea0e4fSmrg
16526bea0e4fSmrgif test yes = "[$]$2"; then
16536bea0e4fSmrg    m4_if([$5], , :, [$5])
16546bea0e4fSmrgelse
16556bea0e4fSmrg    m4_if([$6], , :, [$6])
16566bea0e4fSmrgfi
16576bea0e4fSmrg])# _LT_COMPILER_OPTION
16586bea0e4fSmrg
16596bea0e4fSmrg# Old name:
16606bea0e4fSmrgAU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
16616bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
16626bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
16636bea0e4fSmrg
16646bea0e4fSmrg
16656bea0e4fSmrg# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
16666bea0e4fSmrg#                  [ACTION-SUCCESS], [ACTION-FAILURE])
16676bea0e4fSmrg# ----------------------------------------------------
16686bea0e4fSmrg# Check whether the given linker option works
16696bea0e4fSmrgAC_DEFUN([_LT_LINKER_OPTION],
16706bea0e4fSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
16716bea0e4fSmrgm4_require([_LT_DECL_SED])dnl
16726bea0e4fSmrgAC_CACHE_CHECK([$1], [$2],
16736bea0e4fSmrg  [$2=no
16746bea0e4fSmrg   save_LDFLAGS=$LDFLAGS
16756bea0e4fSmrg   LDFLAGS="$LDFLAGS $3"
16766bea0e4fSmrg   echo "$lt_simple_link_test_code" > conftest.$ac_ext
16776bea0e4fSmrg   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
16786bea0e4fSmrg     # The linker can only warn and ignore the option if not recognized
16796bea0e4fSmrg     # So say no if there are warnings
16806bea0e4fSmrg     if test -s conftest.err; then
16816bea0e4fSmrg       # Append any errors to the config.log.
16826bea0e4fSmrg       cat conftest.err 1>&AS_MESSAGE_LOG_FD
16836bea0e4fSmrg       $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
16846bea0e4fSmrg       $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
16856bea0e4fSmrg       if diff conftest.exp conftest.er2 >/dev/null; then
16866bea0e4fSmrg         $2=yes
16876bea0e4fSmrg       fi
16886bea0e4fSmrg     else
16896bea0e4fSmrg       $2=yes
16906bea0e4fSmrg     fi
16916bea0e4fSmrg   fi
16926bea0e4fSmrg   $RM -r conftest*
16936bea0e4fSmrg   LDFLAGS=$save_LDFLAGS
16946bea0e4fSmrg])
16956bea0e4fSmrg
16966bea0e4fSmrgif test yes = "[$]$2"; then
16976bea0e4fSmrg    m4_if([$4], , :, [$4])
16986bea0e4fSmrgelse
16996bea0e4fSmrg    m4_if([$5], , :, [$5])
17006bea0e4fSmrgfi
17016bea0e4fSmrg])# _LT_LINKER_OPTION
17026bea0e4fSmrg
17036bea0e4fSmrg# Old name:
17046bea0e4fSmrgAU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
17056bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
17066bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
17076bea0e4fSmrg
17086bea0e4fSmrg
17096bea0e4fSmrg# LT_CMD_MAX_LEN
17106bea0e4fSmrg#---------------
17116bea0e4fSmrgAC_DEFUN([LT_CMD_MAX_LEN],
17126bea0e4fSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl
17136bea0e4fSmrg# find the maximum length of command line arguments
17146bea0e4fSmrgAC_MSG_CHECKING([the maximum length of command line arguments])
17156bea0e4fSmrgAC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
17166bea0e4fSmrg  i=0
17176bea0e4fSmrg  teststring=ABCD
17186bea0e4fSmrg
17196bea0e4fSmrg  case $build_os in
17206bea0e4fSmrg  msdosdjgpp*)
17216bea0e4fSmrg    # On DJGPP, this test can blow up pretty badly due to problems in libc
17226bea0e4fSmrg    # (any single argument exceeding 2000 bytes causes a buffer overrun
17236bea0e4fSmrg    # during glob expansion).  Even if it were fixed, the result of this
17246bea0e4fSmrg    # check would be larger than it should be.
17256bea0e4fSmrg    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
17266bea0e4fSmrg    ;;
17276bea0e4fSmrg
17286bea0e4fSmrg  gnu* | ironclad*)
17296bea0e4fSmrg    # Under GNU Hurd and Ironclad, this test is not required because there
17306bea0e4fSmrg    # is no limit to the length of command line arguments.
17316bea0e4fSmrg    # Libtool will interpret -1 as no limit whatsoever
17326bea0e4fSmrg    lt_cv_sys_max_cmd_len=-1;
17336bea0e4fSmrg    ;;
17346bea0e4fSmrg
17356bea0e4fSmrg  cygwin* | mingw* | windows* | cegcc*)
17366bea0e4fSmrg    # On Win9x/ME, this test blows up -- it succeeds, but takes
17376bea0e4fSmrg    # about 5 minutes as the teststring grows exponentially.
17386bea0e4fSmrg    # Worse, since 9x/ME are not pre-emptively multitasking,
17396bea0e4fSmrg    # you end up with a "frozen" computer, even though with patience
17406bea0e4fSmrg    # the test eventually succeeds (with a max line length of 256k).
17416bea0e4fSmrg    # Instead, let's just punt: use the minimum linelength reported by
17426bea0e4fSmrg    # all of the supported platforms: 8192 (on NT/2K/XP).
17436bea0e4fSmrg    lt_cv_sys_max_cmd_len=8192;
17446bea0e4fSmrg    ;;
17456bea0e4fSmrg
17466bea0e4fSmrg  mint*)
17476bea0e4fSmrg    # On MiNT this can take a long time and run out of memory.
17486bea0e4fSmrg    lt_cv_sys_max_cmd_len=8192;
17496bea0e4fSmrg    ;;
17506bea0e4fSmrg
17516bea0e4fSmrg  amigaos*)
17526bea0e4fSmrg    # On AmigaOS with pdksh, this test takes hours, literally.
17536bea0e4fSmrg    # So we just punt and use a minimum line length of 8192.
17546bea0e4fSmrg    lt_cv_sys_max_cmd_len=8192;
17556bea0e4fSmrg    ;;
17566bea0e4fSmrg
17576bea0e4fSmrg  darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)
17586bea0e4fSmrg    # This has been around since 386BSD, at least.  Likely further.
17596bea0e4fSmrg    if test -x /sbin/sysctl; then
17606bea0e4fSmrg      lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
17616bea0e4fSmrg    elif test -x /usr/sbin/sysctl; then
17626bea0e4fSmrg      lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
17636bea0e4fSmrg    else
17646bea0e4fSmrg      lt_cv_sys_max_cmd_len=65536	# usable default for all BSDs
17656bea0e4fSmrg    fi
17666bea0e4fSmrg    # And add a safety zone
17676bea0e4fSmrg    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
17686bea0e4fSmrg    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
17696bea0e4fSmrg    ;;
17706bea0e4fSmrg
17716bea0e4fSmrg  interix*)
17726bea0e4fSmrg    # We know the value 262144 and hardcode it with a safety zone (like BSD)
17736bea0e4fSmrg    lt_cv_sys_max_cmd_len=196608
17746bea0e4fSmrg    ;;
17756bea0e4fSmrg
17766bea0e4fSmrg  os2*)
17776bea0e4fSmrg    # The test takes a long time on OS/2.
17786bea0e4fSmrg    lt_cv_sys_max_cmd_len=8192
17796bea0e4fSmrg    ;;
17806bea0e4fSmrg
17816bea0e4fSmrg  osf*)
17826bea0e4fSmrg    # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
17836bea0e4fSmrg    # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
17846bea0e4fSmrg    # nice to cause kernel panics so lets avoid the loop below.
17856bea0e4fSmrg    # First set a reasonable default.
17866bea0e4fSmrg    lt_cv_sys_max_cmd_len=16384
17876bea0e4fSmrg    #
17886bea0e4fSmrg    if test -x /sbin/sysconfig; then
17896bea0e4fSmrg      case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
17906bea0e4fSmrg        *1*) lt_cv_sys_max_cmd_len=-1 ;;
17916bea0e4fSmrg      esac
17926bea0e4fSmrg    fi
17936bea0e4fSmrg    ;;
17946bea0e4fSmrg  sco3.2v5*)
17956bea0e4fSmrg    lt_cv_sys_max_cmd_len=102400
17966bea0e4fSmrg    ;;
17976bea0e4fSmrg  sysv5* | sco5v6* | sysv4.2uw2*)
17986bea0e4fSmrg    kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
17996bea0e4fSmrg    if test -n "$kargmax"; then
18006bea0e4fSmrg      lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[	 ]]//'`
18016bea0e4fSmrg    else
18026bea0e4fSmrg      lt_cv_sys_max_cmd_len=32768
18036bea0e4fSmrg    fi
18046bea0e4fSmrg    ;;
18056bea0e4fSmrg  *)
18066bea0e4fSmrg    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
18076bea0e4fSmrg    if test -n "$lt_cv_sys_max_cmd_len" && \
18086bea0e4fSmrg       test undefined != "$lt_cv_sys_max_cmd_len"; then
18096bea0e4fSmrg      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
18106bea0e4fSmrg      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
18116bea0e4fSmrg    else
18126bea0e4fSmrg      # Make teststring a little bigger before we do anything with it.
18136bea0e4fSmrg      # a 1K string should be a reasonable start.
18146bea0e4fSmrg      for i in 1 2 3 4 5 6 7 8; do
18156bea0e4fSmrg        teststring=$teststring$teststring
18166bea0e4fSmrg      done
18176bea0e4fSmrg      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
18186bea0e4fSmrg      # If test is not a shell built-in, we'll probably end up computing a
18196bea0e4fSmrg      # maximum length that is only half of the actual maximum length, but
18206bea0e4fSmrg      # we can't tell.
18216bea0e4fSmrg      while { test X`env echo "$teststring$teststring" 2>/dev/null` \
18226bea0e4fSmrg	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
18236bea0e4fSmrg	      test 17 != "$i" # 1/2 MB should be enough
18246bea0e4fSmrg      do
18256bea0e4fSmrg        i=`expr $i + 1`
18266bea0e4fSmrg        teststring=$teststring$teststring
18276bea0e4fSmrg      done
18286bea0e4fSmrg      # Only check the string length outside the loop.
18296bea0e4fSmrg      lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
18306bea0e4fSmrg      teststring=
18316bea0e4fSmrg      # Add a significant safety factor because C++ compilers can tack on
18326bea0e4fSmrg      # massive amounts of additional arguments before passing them to the
18336bea0e4fSmrg      # linker.  It appears as though 1/2 is a usable value.
18346bea0e4fSmrg      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
18356bea0e4fSmrg    fi
18366bea0e4fSmrg    ;;
18376bea0e4fSmrg  esac
18386bea0e4fSmrg])
18396bea0e4fSmrgif test -n "$lt_cv_sys_max_cmd_len"; then
18406bea0e4fSmrg  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
18416bea0e4fSmrgelse
18426bea0e4fSmrg  AC_MSG_RESULT(none)
18436bea0e4fSmrgfi
18446bea0e4fSmrgmax_cmd_len=$lt_cv_sys_max_cmd_len
18456bea0e4fSmrg_LT_DECL([], [max_cmd_len], [0],
18466bea0e4fSmrg    [What is the maximum length of a command?])
18476bea0e4fSmrg])# LT_CMD_MAX_LEN
18486bea0e4fSmrg
18496bea0e4fSmrg# Old name:
18506bea0e4fSmrgAU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
18516bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
18526bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
18536bea0e4fSmrg
18546bea0e4fSmrg
18556bea0e4fSmrg# _LT_HEADER_DLFCN
18566bea0e4fSmrg# ----------------
18576bea0e4fSmrgm4_defun([_LT_HEADER_DLFCN],
18586bea0e4fSmrg[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
18596bea0e4fSmrg])# _LT_HEADER_DLFCN
18606bea0e4fSmrg
18616bea0e4fSmrg
18626bea0e4fSmrg# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
18636bea0e4fSmrg#                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
18646bea0e4fSmrg# ----------------------------------------------------------------
18656bea0e4fSmrgm4_defun([_LT_TRY_DLOPEN_SELF],
18666bea0e4fSmrg[m4_require([_LT_HEADER_DLFCN])dnl
18676bea0e4fSmrgif test yes = "$cross_compiling"; then :
18686bea0e4fSmrg  [$4]
18696bea0e4fSmrgelse
18706bea0e4fSmrg  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
18716bea0e4fSmrg  lt_status=$lt_dlunknown
18726bea0e4fSmrg  cat > conftest.$ac_ext <<_LT_EOF
18736bea0e4fSmrg[#line $LINENO "configure"
18746bea0e4fSmrg#include "confdefs.h"
18756bea0e4fSmrg
18766bea0e4fSmrg#if HAVE_DLFCN_H
18776bea0e4fSmrg#include <dlfcn.h>
18786bea0e4fSmrg#endif
18796bea0e4fSmrg
18806bea0e4fSmrg#include <stdio.h>
18816bea0e4fSmrg
18826bea0e4fSmrg#ifdef RTLD_GLOBAL
18836bea0e4fSmrg#  define LT_DLGLOBAL		RTLD_GLOBAL
18846bea0e4fSmrg#else
18856bea0e4fSmrg#  ifdef DL_GLOBAL
18866bea0e4fSmrg#    define LT_DLGLOBAL		DL_GLOBAL
18876bea0e4fSmrg#  else
18886bea0e4fSmrg#    define LT_DLGLOBAL		0
18896bea0e4fSmrg#  endif
18906bea0e4fSmrg#endif
18916bea0e4fSmrg
18926bea0e4fSmrg/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
18936bea0e4fSmrg   find out it does not work in some platform. */
18946bea0e4fSmrg#ifndef LT_DLLAZY_OR_NOW
18956bea0e4fSmrg#  ifdef RTLD_LAZY
18966bea0e4fSmrg#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
18976bea0e4fSmrg#  else
18986bea0e4fSmrg#    ifdef DL_LAZY
18996bea0e4fSmrg#      define LT_DLLAZY_OR_NOW		DL_LAZY
19006bea0e4fSmrg#    else
19016bea0e4fSmrg#      ifdef RTLD_NOW
19026bea0e4fSmrg#        define LT_DLLAZY_OR_NOW	RTLD_NOW
19036bea0e4fSmrg#      else
19046bea0e4fSmrg#        ifdef DL_NOW
19056bea0e4fSmrg#          define LT_DLLAZY_OR_NOW	DL_NOW
19066bea0e4fSmrg#        else
19076bea0e4fSmrg#          define LT_DLLAZY_OR_NOW	0
19086bea0e4fSmrg#        endif
19096bea0e4fSmrg#      endif
19106bea0e4fSmrg#    endif
19116bea0e4fSmrg#  endif
19126bea0e4fSmrg#endif
19136bea0e4fSmrg
19146bea0e4fSmrg/* When -fvisibility=hidden is used, assume the code has been annotated
19156bea0e4fSmrg   correspondingly for the symbols needed.  */
19166bea0e4fSmrg#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
19176bea0e4fSmrgint fnord (void) __attribute__((visibility("default")));
19186bea0e4fSmrg#endif
19196bea0e4fSmrg
19206bea0e4fSmrgint fnord (void) { return 42; }
19216bea0e4fSmrgint main (void)
19226bea0e4fSmrg{
19236bea0e4fSmrg  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
19246bea0e4fSmrg  int status = $lt_dlunknown;
19256bea0e4fSmrg
19266bea0e4fSmrg  if (self)
19276bea0e4fSmrg    {
19286bea0e4fSmrg      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
19296bea0e4fSmrg      else
19306bea0e4fSmrg        {
19316bea0e4fSmrg	  if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
19326bea0e4fSmrg          else puts (dlerror ());
19336bea0e4fSmrg	}
19346bea0e4fSmrg      /* dlclose (self); */
19356bea0e4fSmrg    }
19366bea0e4fSmrg  else
19376bea0e4fSmrg    puts (dlerror ());
19386bea0e4fSmrg
19396bea0e4fSmrg  return status;
19406bea0e4fSmrg}]
19416bea0e4fSmrg_LT_EOF
19426bea0e4fSmrg  if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
19436bea0e4fSmrg    (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
19446bea0e4fSmrg    lt_status=$?
19456bea0e4fSmrg    case x$lt_status in
19466bea0e4fSmrg      x$lt_dlno_uscore) $1 ;;
19476bea0e4fSmrg      x$lt_dlneed_uscore) $2 ;;
19486bea0e4fSmrg      x$lt_dlunknown|x*) $3 ;;
19496bea0e4fSmrg    esac
19506bea0e4fSmrg  else :
19516bea0e4fSmrg    # compilation failed
19526bea0e4fSmrg    $3
19536bea0e4fSmrg  fi
19546bea0e4fSmrgfi
19556bea0e4fSmrgrm -fr conftest*
19566bea0e4fSmrg])# _LT_TRY_DLOPEN_SELF
19576bea0e4fSmrg
19586bea0e4fSmrg
19596bea0e4fSmrg# LT_SYS_DLOPEN_SELF
19606bea0e4fSmrg# ------------------
19616bea0e4fSmrgAC_DEFUN([LT_SYS_DLOPEN_SELF],
19626bea0e4fSmrg[m4_require([_LT_HEADER_DLFCN])dnl
19636bea0e4fSmrgif test yes != "$enable_dlopen"; then
19646bea0e4fSmrg  enable_dlopen=unknown
19656bea0e4fSmrg  enable_dlopen_self=unknown
19666bea0e4fSmrg  enable_dlopen_self_static=unknown
19676bea0e4fSmrgelse
19686bea0e4fSmrg  lt_cv_dlopen=no
19696bea0e4fSmrg  lt_cv_dlopen_libs=
19706bea0e4fSmrg
19716bea0e4fSmrg  case $host_os in
19726bea0e4fSmrg  beos*)
19736bea0e4fSmrg    lt_cv_dlopen=load_add_on
19746bea0e4fSmrg    lt_cv_dlopen_libs=
19756bea0e4fSmrg    lt_cv_dlopen_self=yes
19766bea0e4fSmrg    ;;
19776bea0e4fSmrg
19786bea0e4fSmrg  mingw* | windows* | pw32* | cegcc*)
19796bea0e4fSmrg    lt_cv_dlopen=LoadLibrary
19806bea0e4fSmrg    lt_cv_dlopen_libs=
19816bea0e4fSmrg    ;;
19826bea0e4fSmrg
19836bea0e4fSmrg  cygwin*)
19846bea0e4fSmrg    lt_cv_dlopen=dlopen
19856bea0e4fSmrg    lt_cv_dlopen_libs=
19866bea0e4fSmrg    ;;
19876bea0e4fSmrg
19886bea0e4fSmrg  darwin*)
19896bea0e4fSmrg    # if libdl is installed we need to link against it
19906bea0e4fSmrg    AC_CHECK_LIB([dl], [dlopen],
19916bea0e4fSmrg		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
19926bea0e4fSmrg    lt_cv_dlopen=dyld
19936bea0e4fSmrg    lt_cv_dlopen_libs=
19946bea0e4fSmrg    lt_cv_dlopen_self=yes
19956bea0e4fSmrg    ])
19966bea0e4fSmrg    ;;
19976bea0e4fSmrg
19986bea0e4fSmrg  tpf*)
19996bea0e4fSmrg    # Don't try to run any link tests for TPF.  We know it's impossible
20006bea0e4fSmrg    # because TPF is a cross-compiler, and we know how we open DSOs.
20016bea0e4fSmrg    lt_cv_dlopen=dlopen
20026bea0e4fSmrg    lt_cv_dlopen_libs=
20036bea0e4fSmrg    lt_cv_dlopen_self=no
20046bea0e4fSmrg    ;;
20056bea0e4fSmrg
20066bea0e4fSmrg  *)
20076bea0e4fSmrg    AC_CHECK_FUNC([shl_load],
20086bea0e4fSmrg	  [lt_cv_dlopen=shl_load],
20096bea0e4fSmrg      [AC_CHECK_LIB([dld], [shl_load],
20106bea0e4fSmrg	    [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
20116bea0e4fSmrg	[AC_CHECK_FUNC([dlopen],
20126bea0e4fSmrg	      [lt_cv_dlopen=dlopen],
20136bea0e4fSmrg	  [AC_CHECK_LIB([dl], [dlopen],
20146bea0e4fSmrg		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
20156bea0e4fSmrg	    [AC_CHECK_LIB([svld], [dlopen],
20166bea0e4fSmrg		  [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
20176bea0e4fSmrg	      [AC_CHECK_LIB([dld], [dld_link],
20186bea0e4fSmrg		    [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
20196bea0e4fSmrg	      ])
20206bea0e4fSmrg	    ])
20216bea0e4fSmrg	  ])
20226bea0e4fSmrg	])
20236bea0e4fSmrg      ])
20246bea0e4fSmrg    ;;
20256bea0e4fSmrg  esac
20266bea0e4fSmrg
20276bea0e4fSmrg  if test no = "$lt_cv_dlopen"; then
20286bea0e4fSmrg    enable_dlopen=no
20296bea0e4fSmrg  else
20306bea0e4fSmrg    enable_dlopen=yes
20316bea0e4fSmrg  fi
20326bea0e4fSmrg
20336bea0e4fSmrg  case $lt_cv_dlopen in
20346bea0e4fSmrg  dlopen)
20356bea0e4fSmrg    save_CPPFLAGS=$CPPFLAGS
20366bea0e4fSmrg    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
20376bea0e4fSmrg
20386bea0e4fSmrg    save_LDFLAGS=$LDFLAGS
20396bea0e4fSmrg    wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
20406bea0e4fSmrg
20416bea0e4fSmrg    save_LIBS=$LIBS
20426bea0e4fSmrg    LIBS="$lt_cv_dlopen_libs $LIBS"
20436bea0e4fSmrg
20446bea0e4fSmrg    AC_CACHE_CHECK([whether a program can dlopen itself],
20456bea0e4fSmrg	  lt_cv_dlopen_self, [dnl
20466bea0e4fSmrg	  _LT_TRY_DLOPEN_SELF(
20476bea0e4fSmrg	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
20486bea0e4fSmrg	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
20496bea0e4fSmrg    ])
20506bea0e4fSmrg
20516bea0e4fSmrg    if test yes = "$lt_cv_dlopen_self"; then
20526bea0e4fSmrg      wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
20536bea0e4fSmrg      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
20546bea0e4fSmrg	  lt_cv_dlopen_self_static, [dnl
20556bea0e4fSmrg	  _LT_TRY_DLOPEN_SELF(
20566bea0e4fSmrg	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
20576bea0e4fSmrg	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
20586bea0e4fSmrg      ])
20596bea0e4fSmrg    fi
20606bea0e4fSmrg
20616bea0e4fSmrg    CPPFLAGS=$save_CPPFLAGS
20626bea0e4fSmrg    LDFLAGS=$save_LDFLAGS
20636bea0e4fSmrg    LIBS=$save_LIBS
20646bea0e4fSmrg    ;;
20656bea0e4fSmrg  esac
20666bea0e4fSmrg
20676bea0e4fSmrg  case $lt_cv_dlopen_self in
20686bea0e4fSmrg  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
20696bea0e4fSmrg  *) enable_dlopen_self=unknown ;;
20706bea0e4fSmrg  esac
20716bea0e4fSmrg
20726bea0e4fSmrg  case $lt_cv_dlopen_self_static in
20736bea0e4fSmrg  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
20746bea0e4fSmrg  *) enable_dlopen_self_static=unknown ;;
20756bea0e4fSmrg  esac
20766bea0e4fSmrgfi
20776bea0e4fSmrg_LT_DECL([dlopen_support], [enable_dlopen], [0],
20786bea0e4fSmrg	 [Whether dlopen is supported])
20796bea0e4fSmrg_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
20806bea0e4fSmrg	 [Whether dlopen of programs is supported])
20816bea0e4fSmrg_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
20826bea0e4fSmrg	 [Whether dlopen of statically linked programs is supported])
20836bea0e4fSmrg])# LT_SYS_DLOPEN_SELF
20846bea0e4fSmrg
20856bea0e4fSmrg# Old name:
20866bea0e4fSmrgAU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
20876bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
20886bea0e4fSmrgdnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
20896bea0e4fSmrg
20906bea0e4fSmrg
20916bea0e4fSmrg# _LT_COMPILER_C_O([TAGNAME])
20926bea0e4fSmrg# ---------------------------
20936bea0e4fSmrg# Check to see if options -c and -o are simultaneously supported by compiler.
20946bea0e4fSmrg# This macro does not hard code the compiler like AC_PROG_CC_C_O.
20956bea0e4fSmrgm4_defun([_LT_COMPILER_C_O],
20966bea0e4fSmrg[m4_require([_LT_DECL_SED])dnl
20976bea0e4fSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl
20986bea0e4fSmrgm4_require([_LT_TAG_COMPILER])dnl
20996bea0e4fSmrgAC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
21006bea0e4fSmrg  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
21016bea0e4fSmrg  [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
21026bea0e4fSmrg   $RM -r conftest 2>/dev/null
21036bea0e4fSmrg   mkdir conftest
21046bea0e4fSmrg   cd conftest
21056bea0e4fSmrg   mkdir out
21066bea0e4fSmrg   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
21076bea0e4fSmrg
21086bea0e4fSmrg   lt_compiler_flag="-o out/conftest2.$ac_objext"
21096bea0e4fSmrg   # Insert the option either (1) after the last *FLAGS variable, or
21106bea0e4fSmrg   # (2) before a word containing "conftest.", or (3) at the end.
21116bea0e4fSmrg   # Note that $ac_compile itself does not contain backslashes and begins
21126bea0e4fSmrg   # with a dollar sign (not a hyphen), so the echo should work correctly.
21136bea0e4fSmrg   lt_compile=`echo "$ac_compile" | $SED \
21146bea0e4fSmrg   -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
21156bea0e4fSmrg   -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
21166bea0e4fSmrg   -e 's:$: $lt_compiler_flag:'`
21176bea0e4fSmrg   (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
21186bea0e4fSmrg   (eval "$lt_compile" 2>out/conftest.err)
21196bea0e4fSmrg   ac_status=$?
21206bea0e4fSmrg   cat out/conftest.err >&AS_MESSAGE_LOG_FD
21216bea0e4fSmrg   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
21226bea0e4fSmrg   if (exit $ac_status) && test -s out/conftest2.$ac_objext
21236bea0e4fSmrg   then
21246bea0e4fSmrg     # The compiler can only warn and ignore the option if not recognized
21256bea0e4fSmrg     # So say no if there are warnings
21266bea0e4fSmrg     $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
21276bea0e4fSmrg     $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
21286bea0e4fSmrg     if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
21296bea0e4fSmrg       _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
21306bea0e4fSmrg     fi
21316bea0e4fSmrg   fi
21326bea0e4fSmrg   chmod u+w . 2>&AS_MESSAGE_LOG_FD
21336bea0e4fSmrg   $RM conftest*
21346bea0e4fSmrg   # SGI C++ compiler will create directory out/ii_files/ for
21356bea0e4fSmrg   # template instantiation
21366bea0e4fSmrg   test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
21376bea0e4fSmrg   $RM out/* && rmdir out
21386bea0e4fSmrg   cd ..
21396bea0e4fSmrg   $RM -r conftest
21406bea0e4fSmrg   $RM conftest*
21416bea0e4fSmrg])
21426bea0e4fSmrg_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
21436bea0e4fSmrg	[Does compiler simultaneously support -c and -o options?])
21446bea0e4fSmrg])# _LT_COMPILER_C_O
21456bea0e4fSmrg
21466bea0e4fSmrg
21476bea0e4fSmrg# _LT_COMPILER_FILE_LOCKS([TAGNAME])
21486bea0e4fSmrg# ----------------------------------
21496bea0e4fSmrg# Check to see if we can do hard links to lock some files if needed
21506bea0e4fSmrgm4_defun([_LT_COMPILER_FILE_LOCKS],
21516bea0e4fSmrg[m4_require([_LT_ENABLE_LOCK])dnl
21526bea0e4fSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl
21536bea0e4fSmrg_LT_COMPILER_C_O([$1])
21546bea0e4fSmrg
21556bea0e4fSmrghard_links=nottested
21566bea0e4fSmrgif test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
21576bea0e4fSmrg  # do not overwrite the value of need_locks provided by the user
21586bea0e4fSmrg  AC_MSG_CHECKING([if we can lock with hard links])
21596bea0e4fSmrg  hard_links=yes
21606bea0e4fSmrg  $RM conftest*
21616bea0e4fSmrg  ln conftest.a conftest.b 2>/dev/null && hard_links=no
21626bea0e4fSmrg  touch conftest.a
21636bea0e4fSmrg  ln conftest.a conftest.b 2>&5 || hard_links=no
21646bea0e4fSmrg  ln conftest.a conftest.b 2>/dev/null && hard_links=no
21656bea0e4fSmrg  AC_MSG_RESULT([$hard_links])
21666bea0e4fSmrg  if test no = "$hard_links"; then
21676bea0e4fSmrg    AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
21686bea0e4fSmrg    need_locks=warn
21696bea0e4fSmrg  fi
21706bea0e4fSmrgelse
21716bea0e4fSmrg  need_locks=no
21726bea0e4fSmrgfi
21736bea0e4fSmrg_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
21746bea0e4fSmrg])# _LT_COMPILER_FILE_LOCKS
21756bea0e4fSmrg
21766bea0e4fSmrg
21776bea0e4fSmrg# _LT_CHECK_OBJDIR
21786bea0e4fSmrg# ----------------
21796bea0e4fSmrgm4_defun([_LT_CHECK_OBJDIR],
21806bea0e4fSmrg[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
21816bea0e4fSmrg[rm -f .libs 2>/dev/null
21826bea0e4fSmrgmkdir .libs 2>/dev/null
21836bea0e4fSmrgif test -d .libs; then
21846bea0e4fSmrg  lt_cv_objdir=.libs
21856bea0e4fSmrgelse
21866bea0e4fSmrg  # MS-DOS does not allow filenames that begin with a dot.
21876bea0e4fSmrg  lt_cv_objdir=_libs
21886bea0e4fSmrgfi
21896bea0e4fSmrgrmdir .libs 2>/dev/null])
21906bea0e4fSmrgobjdir=$lt_cv_objdir
21916bea0e4fSmrg_LT_DECL([], [objdir], [0],
21926bea0e4fSmrg         [The name of the directory that contains temporary libtool files])dnl
21936bea0e4fSmrgm4_pattern_allow([LT_OBJDIR])dnl
21946bea0e4fSmrgAC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
21956bea0e4fSmrg  [Define to the sub-directory where libtool stores uninstalled libraries.])
21966bea0e4fSmrg])# _LT_CHECK_OBJDIR
21976bea0e4fSmrg
21986bea0e4fSmrg
21996bea0e4fSmrg# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
22006bea0e4fSmrg# --------------------------------------
22016bea0e4fSmrg# Check hardcoding attributes.
22026bea0e4fSmrgm4_defun([_LT_LINKER_HARDCODE_LIBPATH],
22036bea0e4fSmrg[AC_MSG_CHECKING([how to hardcode library paths into programs])
22046bea0e4fSmrg_LT_TAGVAR(hardcode_action, $1)=
22056bea0e4fSmrgif test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
22066bea0e4fSmrg   test -n "$_LT_TAGVAR(runpath_var, $1)" ||
22076bea0e4fSmrg   test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
22086bea0e4fSmrg
22096bea0e4fSmrg  # We can hardcode non-existent directories.
22106bea0e4fSmrg  if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
22116bea0e4fSmrg     # If the only mechanism to avoid hardcoding is shlibpath_var, we
22126bea0e4fSmrg     # have to relink, otherwise we might link with an installed library
22136bea0e4fSmrg     # when we should be linking with a yet-to-be-installed one
22146bea0e4fSmrg     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
22156bea0e4fSmrg     test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
22166bea0e4fSmrg    # Linking always hardcodes the temporary library directory.
22176bea0e4fSmrg    _LT_TAGVAR(hardcode_action, $1)=relink
22186bea0e4fSmrg  else
22196bea0e4fSmrg    # We can link without hardcoding, and we can hardcode nonexisting dirs.
22206bea0e4fSmrg    _LT_TAGVAR(hardcode_action, $1)=immediate
22216bea0e4fSmrg  fi
22226bea0e4fSmrgelse
22236bea0e4fSmrg  # We cannot hardcode anything, or else we can only hardcode existing
22246bea0e4fSmrg  # directories.
22256bea0e4fSmrg  _LT_TAGVAR(hardcode_action, $1)=unsupported
22266bea0e4fSmrgfi
22276bea0e4fSmrgAC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
22286bea0e4fSmrg
22296bea0e4fSmrgif test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
22306bea0e4fSmrg   test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
22316bea0e4fSmrg  # Fast installation is not supported
22326bea0e4fSmrg  enable_fast_install=no
22336bea0e4fSmrgelif test yes = "$shlibpath_overrides_runpath" ||
22346bea0e4fSmrg     test no = "$enable_shared"; then
22356bea0e4fSmrg  # Fast installation is not necessary
22366bea0e4fSmrg  enable_fast_install=needless
22376bea0e4fSmrgfi
22386bea0e4fSmrg_LT_TAGDECL([], [hardcode_action], [0],
22396bea0e4fSmrg    [How to hardcode a shared library path into an executable])
22406bea0e4fSmrg])# _LT_LINKER_HARDCODE_LIBPATH
22416bea0e4fSmrg
22426bea0e4fSmrg
22436bea0e4fSmrg# _LT_CMD_STRIPLIB
22446bea0e4fSmrg# ----------------
22456bea0e4fSmrgm4_defun([_LT_CMD_STRIPLIB],
22466bea0e4fSmrg[m4_require([_LT_DECL_EGREP])
22476bea0e4fSmrgstriplib=
22486bea0e4fSmrgold_striplib=
22496bea0e4fSmrgAC_MSG_CHECKING([whether stripping libraries is possible])
22506bea0e4fSmrgif test -z "$STRIP"; then
22516bea0e4fSmrg  AC_MSG_RESULT([no])
22526bea0e4fSmrgelse
22536bea0e4fSmrg  if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
22546bea0e4fSmrg    old_striplib="$STRIP --strip-debug"
22556bea0e4fSmrg    striplib="$STRIP --strip-unneeded"
22566bea0e4fSmrg    AC_MSG_RESULT([yes])
22576bea0e4fSmrg  else
22586bea0e4fSmrg    case $host_os in
22596bea0e4fSmrg    darwin*)
22606bea0e4fSmrg      # FIXME - insert some real tests, host_os isn't really good enough
22616bea0e4fSmrg      striplib="$STRIP -x"
22626bea0e4fSmrg      old_striplib="$STRIP -S"
22636bea0e4fSmrg      AC_MSG_RESULT([yes])
22646bea0e4fSmrg      ;;
22656bea0e4fSmrg    freebsd*)
22666bea0e4fSmrg      if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then
22676bea0e4fSmrg        old_striplib="$STRIP --strip-debug"
22686bea0e4fSmrg        striplib="$STRIP --strip-unneeded"
22696bea0e4fSmrg        AC_MSG_RESULT([yes])
22706bea0e4fSmrg      else
22716bea0e4fSmrg        AC_MSG_RESULT([no])
22726bea0e4fSmrg      fi
22736bea0e4fSmrg      ;;
22746bea0e4fSmrg    *)
22756bea0e4fSmrg      AC_MSG_RESULT([no])
22766bea0e4fSmrg      ;;
22776bea0e4fSmrg    esac
22786bea0e4fSmrg  fi
22796bea0e4fSmrgfi
22806bea0e4fSmrg_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
22816bea0e4fSmrg_LT_DECL([], [striplib], [1])
22826bea0e4fSmrg])# _LT_CMD_STRIPLIB
22836bea0e4fSmrg
22846bea0e4fSmrg
22856bea0e4fSmrg# _LT_PREPARE_MUNGE_PATH_LIST
22866bea0e4fSmrg# ---------------------------
22876bea0e4fSmrg# Make sure func_munge_path_list() is defined correctly.
22886bea0e4fSmrgm4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
22896bea0e4fSmrg[[# func_munge_path_list VARIABLE PATH
22906bea0e4fSmrg# -----------------------------------
22916bea0e4fSmrg# VARIABLE is name of variable containing _space_ separated list of
22926bea0e4fSmrg# directories to be munged by the contents of PATH, which is string
22936bea0e4fSmrg# having a format:
22946bea0e4fSmrg# "DIR[:DIR]:"
22956bea0e4fSmrg#       string "DIR[ DIR]" will be prepended to VARIABLE
22966bea0e4fSmrg# ":DIR[:DIR]"
22976bea0e4fSmrg#       string "DIR[ DIR]" will be appended to VARIABLE
22986bea0e4fSmrg# "DIRP[:DIRP]::[DIRA:]DIRA"
22996bea0e4fSmrg#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
23006bea0e4fSmrg#       "DIRA[ DIRA]" will be appended to VARIABLE
23016bea0e4fSmrg# "DIR[:DIR]"
23026bea0e4fSmrg#       VARIABLE will be replaced by "DIR[ DIR]"
23036bea0e4fSmrgfunc_munge_path_list ()
23046bea0e4fSmrg{
23056bea0e4fSmrg    case x@S|@2 in
23066bea0e4fSmrg    x)
23076bea0e4fSmrg        ;;
23086bea0e4fSmrg    *:)
23096bea0e4fSmrg        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
23106bea0e4fSmrg        ;;
23116bea0e4fSmrg    x:*)
23126bea0e4fSmrg        eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
23136bea0e4fSmrg        ;;
23146bea0e4fSmrg    *::*)
23156bea0e4fSmrg        eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
23166bea0e4fSmrg        eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
23176bea0e4fSmrg        ;;
23186bea0e4fSmrg    *)
23196bea0e4fSmrg        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
23206bea0e4fSmrg        ;;
23216bea0e4fSmrg    esac
23226bea0e4fSmrg}
23236bea0e4fSmrg]])# _LT_PREPARE_PATH_LIST
23246bea0e4fSmrg
23256bea0e4fSmrg
23266bea0e4fSmrg# _LT_SYS_DYNAMIC_LINKER([TAG])
23276bea0e4fSmrg# -----------------------------
23286bea0e4fSmrg# PORTME Fill in your ld.so characteristics
23296bea0e4fSmrgm4_defun([_LT_SYS_DYNAMIC_LINKER],
23306bea0e4fSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl
23316bea0e4fSmrgm4_require([_LT_DECL_EGREP])dnl
23326bea0e4fSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl
23336bea0e4fSmrgm4_require([_LT_DECL_OBJDUMP])dnl
23346bea0e4fSmrgm4_require([_LT_DECL_SED])dnl
23356bea0e4fSmrgm4_require([_LT_CHECK_SHELL_FEATURES])dnl
23366bea0e4fSmrgm4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
23376bea0e4fSmrgAC_MSG_CHECKING([dynamic linker characteristics])
23386bea0e4fSmrgm4_if([$1],
23396bea0e4fSmrg	[], [
23406bea0e4fSmrgif test yes = "$GCC"; then
23416bea0e4fSmrg  case $host_os in
23426bea0e4fSmrg    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
23436bea0e4fSmrg    *) lt_awk_arg='/^libraries:/' ;;
23446bea0e4fSmrg  esac
23456bea0e4fSmrg  case $host_os in
23466bea0e4fSmrg    mingw* | windows* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
23476bea0e4fSmrg    *) lt_sed_strip_eq='s|=/|/|g' ;;
23486bea0e4fSmrg  esac
23496bea0e4fSmrg  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
23506bea0e4fSmrg  case $lt_search_path_spec in
23516bea0e4fSmrg  *\;*)
23526bea0e4fSmrg    # if the path contains ";" then we assume it to be the separator
23536bea0e4fSmrg    # otherwise default to the standard path separator (i.e. ":") - it is
23546bea0e4fSmrg    # assumed that no part of a normal pathname contains ";" but that should
23556bea0e4fSmrg    # okay in the real world where ";" in dirpaths is itself problematic.
23566bea0e4fSmrg    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
23576bea0e4fSmrg    ;;
23586bea0e4fSmrg  *)
23596bea0e4fSmrg    lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
23606bea0e4fSmrg    ;;
23616bea0e4fSmrg  esac
23626bea0e4fSmrg  # Ok, now we have the path, separated by spaces, we can step through it
23636bea0e4fSmrg  # and add multilib dir if necessary...
23646bea0e4fSmrg  lt_tmp_lt_search_path_spec=
23656bea0e4fSmrg  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
23666bea0e4fSmrg  # ...but if some path component already ends with the multilib dir we assume
23676bea0e4fSmrg  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
23686bea0e4fSmrg  case "$lt_multi_os_dir; $lt_search_path_spec " in
23696bea0e4fSmrg  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
23706bea0e4fSmrg    lt_multi_os_dir=
23716bea0e4fSmrg    ;;
23726bea0e4fSmrg  esac
23736bea0e4fSmrg  for lt_sys_path in $lt_search_path_spec; do
23746bea0e4fSmrg    if test -d "$lt_sys_path$lt_multi_os_dir"; then
23756bea0e4fSmrg      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
23766bea0e4fSmrg    elif test -n "$lt_multi_os_dir"; then
23776bea0e4fSmrg      test -d "$lt_sys_path" && \
23786bea0e4fSmrg	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
23796bea0e4fSmrg    fi
23806bea0e4fSmrg  done
23816bea0e4fSmrg  lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
23826bea0e4fSmrgBEGIN {RS = " "; FS = "/|\n";} {
23836bea0e4fSmrg  lt_foo = "";
23846bea0e4fSmrg  lt_count = 0;
23856bea0e4fSmrg  for (lt_i = NF; lt_i > 0; lt_i--) {
23866bea0e4fSmrg    if ($lt_i != "" && $lt_i != ".") {
23876bea0e4fSmrg      if ($lt_i == "..") {
23886bea0e4fSmrg        lt_count++;
23896bea0e4fSmrg      } else {
23906bea0e4fSmrg        if (lt_count == 0) {
23916bea0e4fSmrg          lt_foo = "/" $lt_i lt_foo;
23926bea0e4fSmrg        } else {
23936bea0e4fSmrg          lt_count--;
23946bea0e4fSmrg        }
23956bea0e4fSmrg      }
23966bea0e4fSmrg    }
23976bea0e4fSmrg  }
23986bea0e4fSmrg  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
23996bea0e4fSmrg  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
24006bea0e4fSmrg}'`
24016bea0e4fSmrg  # AWK program above erroneously prepends '/' to C:/dos/paths
24026bea0e4fSmrg  # for these hosts.
24036bea0e4fSmrg  case $host_os in
24046bea0e4fSmrg    mingw* | windows* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
24056bea0e4fSmrg      $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
24066bea0e4fSmrg  esac
24076bea0e4fSmrg  sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
24086bea0e4fSmrgelse
24096bea0e4fSmrg  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
24106bea0e4fSmrgfi])
24116bea0e4fSmrglibrary_names_spec=
24126bea0e4fSmrglibname_spec='lib$name'
24136bea0e4fSmrgsoname_spec=
24146bea0e4fSmrgshrext_cmds=.so
24156bea0e4fSmrgpostinstall_cmds=
24166bea0e4fSmrgpostuninstall_cmds=
24176bea0e4fSmrgfinish_cmds=
24186bea0e4fSmrgfinish_eval=
24196bea0e4fSmrgshlibpath_var=
24206bea0e4fSmrgshlibpath_overrides_runpath=unknown
24216bea0e4fSmrgversion_type=none
24226bea0e4fSmrgdynamic_linker="$host_os ld.so"
24236bea0e4fSmrgsys_lib_dlsearch_path_spec="/lib /usr/lib"
24246bea0e4fSmrgneed_lib_prefix=unknown
24256bea0e4fSmrghardcode_into_libs=no
24266bea0e4fSmrg
24276bea0e4fSmrg# when you set need_version to no, make sure it does not cause -set_version
24286bea0e4fSmrg# flags to be left without arguments
24296bea0e4fSmrgneed_version=unknown
24306bea0e4fSmrg
24316bea0e4fSmrgAC_ARG_VAR([LT_SYS_LIBRARY_PATH],
24326bea0e4fSmrg[User-defined run-time library search path.])
24336bea0e4fSmrg
24346bea0e4fSmrgcase $host_os in
24356bea0e4fSmrgaix3*)
24366bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
24376bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
24386bea0e4fSmrg  shlibpath_var=LIBPATH
24396bea0e4fSmrg
24406bea0e4fSmrg  # AIX 3 has no versioning support, so we append a major version to the name.
24416bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
24426bea0e4fSmrg  ;;
24436bea0e4fSmrg
24446bea0e4fSmrgaix[[4-9]]*)
24456bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
24466bea0e4fSmrg  need_lib_prefix=no
24476bea0e4fSmrg  need_version=no
24486bea0e4fSmrg  hardcode_into_libs=yes
24496bea0e4fSmrg  if test ia64 = "$host_cpu"; then
24506bea0e4fSmrg    # AIX 5 supports IA64
24516bea0e4fSmrg    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
24526bea0e4fSmrg    shlibpath_var=LD_LIBRARY_PATH
24536bea0e4fSmrg  else
24546bea0e4fSmrg    # With GCC up to 2.95.x, collect2 would create an import file
24556bea0e4fSmrg    # for dependence libraries.  The import file would start with
24566bea0e4fSmrg    # the line '#! .'.  This would cause the generated library to
24576bea0e4fSmrg    # depend on '.', always an invalid library.  This was fixed in
24586bea0e4fSmrg    # development snapshots of GCC prior to 3.0.
24596bea0e4fSmrg    case $host_os in
24606bea0e4fSmrg      aix4 | aix4.[[01]] | aix4.[[01]].*)
24616bea0e4fSmrg      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
24626bea0e4fSmrg	   echo ' yes '
24636bea0e4fSmrg	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
24646bea0e4fSmrg	:
24656bea0e4fSmrg      else
24666bea0e4fSmrg	can_build_shared=no
24676bea0e4fSmrg      fi
24686bea0e4fSmrg      ;;
24696bea0e4fSmrg    esac
24706bea0e4fSmrg    # Using Import Files as archive members, it is possible to support
24716bea0e4fSmrg    # filename-based versioning of shared library archives on AIX. While
24726bea0e4fSmrg    # this would work for both with and without runtime linking, it will
24736bea0e4fSmrg    # prevent static linking of such archives. So we do filename-based
24746bea0e4fSmrg    # shared library versioning with .so extension only, which is used
24756bea0e4fSmrg    # when both runtime linking and shared linking is enabled.
24766bea0e4fSmrg    # Unfortunately, runtime linking may impact performance, so we do
24776bea0e4fSmrg    # not want this to be the default eventually. Also, we use the
24786bea0e4fSmrg    # versioned .so libs for executables only if there is the -brtl
24796bea0e4fSmrg    # linker flag in LDFLAGS as well, or --enable-aix-soname=svr4 only.
24806bea0e4fSmrg    # To allow for filename-based versioning support, we need to create
24816bea0e4fSmrg    # libNAME.so.V as an archive file, containing:
24826bea0e4fSmrg    # *) an Import File, referring to the versioned filename of the
24836bea0e4fSmrg    #    archive as well as the shared archive member, telling the
24846bea0e4fSmrg    #    bitwidth (32 or 64) of that shared object, and providing the
24856bea0e4fSmrg    #    list of exported symbols of that shared object, eventually
24866bea0e4fSmrg    #    decorated with the 'weak' keyword
24876bea0e4fSmrg    # *) the shared object with the F_LOADONLY flag set, to really avoid
24886bea0e4fSmrg    #    it being seen by the linker.
24896bea0e4fSmrg    # At run time we better use the real file rather than another symlink,
24906bea0e4fSmrg    # but for link time we create the symlink libNAME.so -> libNAME.so.V
24916bea0e4fSmrg
24926bea0e4fSmrg    case $with_aix_soname,$aix_use_runtimelinking in
24936bea0e4fSmrg    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
24946bea0e4fSmrg    # soname into executable. Probably we can add versioning support to
24956bea0e4fSmrg    # collect2, so additional links can be useful in future.
24966bea0e4fSmrg    aix,yes) # traditional libtool
24976bea0e4fSmrg      dynamic_linker='AIX unversionable lib.so'
24986bea0e4fSmrg      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
24996bea0e4fSmrg      # instead of lib<name>.a to let people know that these are not
25006bea0e4fSmrg      # typical AIX shared libraries.
25016bea0e4fSmrg      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
25026bea0e4fSmrg      ;;
25036bea0e4fSmrg    aix,no) # traditional AIX only
25046bea0e4fSmrg      dynamic_linker='AIX lib.a[(]lib.so.V[)]'
25056bea0e4fSmrg      # We preserve .a as extension for shared libraries through AIX4.2
25066bea0e4fSmrg      # and later when we are not doing run time linking.
25076bea0e4fSmrg      library_names_spec='$libname$release.a $libname.a'
25086bea0e4fSmrg      soname_spec='$libname$release$shared_ext$major'
25096bea0e4fSmrg      ;;
25106bea0e4fSmrg    svr4,*) # full svr4 only
25116bea0e4fSmrg      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
25126bea0e4fSmrg      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
25136bea0e4fSmrg      # We do not specify a path in Import Files, so LIBPATH fires.
25146bea0e4fSmrg      shlibpath_overrides_runpath=yes
25156bea0e4fSmrg      ;;
25166bea0e4fSmrg    *,yes) # both, prefer svr4
25176bea0e4fSmrg      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
25186bea0e4fSmrg      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
25196bea0e4fSmrg      # unpreferred sharedlib libNAME.a needs extra handling
25206bea0e4fSmrg      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"'
25216bea0e4fSmrg      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"'
25226bea0e4fSmrg      # We do not specify a path in Import Files, so LIBPATH fires.
25236bea0e4fSmrg      shlibpath_overrides_runpath=yes
25246bea0e4fSmrg      ;;
25256bea0e4fSmrg    *,no) # both, prefer aix
25266bea0e4fSmrg      dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
25276bea0e4fSmrg      library_names_spec='$libname$release.a $libname.a'
25286bea0e4fSmrg      soname_spec='$libname$release$shared_ext$major'
25296bea0e4fSmrg      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
25306bea0e4fSmrg      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)'
25316bea0e4fSmrg      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"'
25326bea0e4fSmrg      ;;
25336bea0e4fSmrg    esac
25346bea0e4fSmrg    shlibpath_var=LIBPATH
25356bea0e4fSmrg  fi
25366bea0e4fSmrg  ;;
25376bea0e4fSmrg
25386bea0e4fSmrgamigaos*)
25396bea0e4fSmrg  case $host_cpu in
25406bea0e4fSmrg  powerpc)
25416bea0e4fSmrg    # Since July 2007 AmigaOS4 officially supports .so libraries.
25426bea0e4fSmrg    # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
25436bea0e4fSmrg    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
25446bea0e4fSmrg    ;;
25456bea0e4fSmrg  m68k)
25466bea0e4fSmrg    library_names_spec='$libname.ixlibrary $libname.a'
25476bea0e4fSmrg    # Create ${libname}_ixlibrary.a entries in /sys/libs.
25486bea0e4fSmrg    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'
25496bea0e4fSmrg    ;;
25506bea0e4fSmrg  esac
25516bea0e4fSmrg  ;;
25526bea0e4fSmrg
25536bea0e4fSmrgbeos*)
25546bea0e4fSmrg  library_names_spec='$libname$shared_ext'
25556bea0e4fSmrg  dynamic_linker="$host_os ld.so"
25566bea0e4fSmrg  shlibpath_var=LIBRARY_PATH
25576bea0e4fSmrg  ;;
25586bea0e4fSmrg
25596bea0e4fSmrgbsdi[[45]]*)
25606bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
25616bea0e4fSmrg  need_version=no
25626bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
25636bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
25646bea0e4fSmrg  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
25656bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
25666bea0e4fSmrg  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
25676bea0e4fSmrg  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
25686bea0e4fSmrg  # the default ld.so.conf also contains /usr/contrib/lib and
25696bea0e4fSmrg  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
25706bea0e4fSmrg  # libtool to hard-code these into programs
25716bea0e4fSmrg  ;;
25726bea0e4fSmrg
25736bea0e4fSmrgcygwin* | mingw* | windows* | pw32* | cegcc*)
25746bea0e4fSmrg  version_type=windows
25756bea0e4fSmrg  shrext_cmds=.dll
25766bea0e4fSmrg  need_version=no
25776bea0e4fSmrg  need_lib_prefix=no
25786bea0e4fSmrg
25796bea0e4fSmrg  case $GCC,$cc_basename in
25806bea0e4fSmrg  yes,*)
25816bea0e4fSmrg    # gcc
25826bea0e4fSmrg    library_names_spec='$libname.dll.a'
25836bea0e4fSmrg    # DLL is installed to $(libdir)/../bin by postinstall_cmds
25846bea0e4fSmrg    # If user builds GCC with multilib enabled,
25856bea0e4fSmrg    # it should just install on $(libdir)
25866bea0e4fSmrg    # not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones.
25876bea0e4fSmrg    if test xyes = x"$multilib"; then
25886bea0e4fSmrg      postinstall_cmds='base_file=`basename \$file`~
25896bea0e4fSmrg        dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
25906bea0e4fSmrg        dldir=$destdir/`dirname \$dlpath`~
25916bea0e4fSmrg        $install_prog $dir/$dlname $destdir/$dlname~
25926bea0e4fSmrg        chmod a+x $destdir/$dlname~
25936bea0e4fSmrg        if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
25946bea0e4fSmrg          eval '\''$striplib $destdir/$dlname'\'' || exit \$?;
25956bea0e4fSmrg        fi'
25966bea0e4fSmrg    else
25976bea0e4fSmrg      postinstall_cmds='base_file=`basename \$file`~
25986bea0e4fSmrg        dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
25996bea0e4fSmrg        dldir=$destdir/`dirname \$dlpath`~
26006bea0e4fSmrg        test -d \$dldir || mkdir -p \$dldir~
26016bea0e4fSmrg        $install_prog $dir/$dlname \$dldir/$dlname~
26026bea0e4fSmrg        chmod a+x \$dldir/$dlname~
26036bea0e4fSmrg        if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
26046bea0e4fSmrg          eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
26056bea0e4fSmrg        fi'
26066bea0e4fSmrg    fi
26076bea0e4fSmrg    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
26086bea0e4fSmrg      dlpath=$dir/\$dldll~
26096bea0e4fSmrg       $RM \$dlpath'
26106bea0e4fSmrg    shlibpath_overrides_runpath=yes
26116bea0e4fSmrg
26126bea0e4fSmrg    case $host_os in
26136bea0e4fSmrg    cygwin*)
26146bea0e4fSmrg      # Cygwin DLLs use 'cyg' prefix rather than 'lib'
26156bea0e4fSmrg      soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
26166bea0e4fSmrgm4_if([$1], [],[
26176bea0e4fSmrg      sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
26186bea0e4fSmrg      ;;
26196bea0e4fSmrg    mingw* | windows* | cegcc*)
26206bea0e4fSmrg      # MinGW DLLs use traditional 'lib' prefix
26216bea0e4fSmrg      soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
26226bea0e4fSmrg      ;;
26236bea0e4fSmrg    pw32*)
26246bea0e4fSmrg      # pw32 DLLs use 'pw' prefix rather than 'lib'
26256bea0e4fSmrg      library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
26266bea0e4fSmrg      ;;
26276bea0e4fSmrg    esac
26286bea0e4fSmrg    dynamic_linker='Win32 ld.exe'
26296bea0e4fSmrg    ;;
26306bea0e4fSmrg
26316bea0e4fSmrg  *,cl* | *,icl*)
26326bea0e4fSmrg    # Native MSVC or ICC
26336bea0e4fSmrg    libname_spec='$name'
26346bea0e4fSmrg    soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
26356bea0e4fSmrg    library_names_spec='$libname.dll.lib'
26366bea0e4fSmrg
26376bea0e4fSmrg    case $build_os in
26386bea0e4fSmrg    mingw* | windows*)
26396bea0e4fSmrg      sys_lib_search_path_spec=
26406bea0e4fSmrg      lt_save_ifs=$IFS
26416bea0e4fSmrg      IFS=';'
26426bea0e4fSmrg      for lt_path in $LIB
26436bea0e4fSmrg      do
26446bea0e4fSmrg        IFS=$lt_save_ifs
26456bea0e4fSmrg        # Let DOS variable expansion print the short 8.3 style file name.
26466bea0e4fSmrg        lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
26476bea0e4fSmrg        sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
26486bea0e4fSmrg      done
26496bea0e4fSmrg      IFS=$lt_save_ifs
26506bea0e4fSmrg      # Convert to MSYS style.
26516bea0e4fSmrg      sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
26526bea0e4fSmrg      ;;
26536bea0e4fSmrg    cygwin*)
26546bea0e4fSmrg      # Convert to unix form, then to dos form, then back to unix form
26556bea0e4fSmrg      # but this time dos style (no spaces!) so that the unix form looks
26566bea0e4fSmrg      # like /cygdrive/c/PROGRA~1:/cygdr...
26576bea0e4fSmrg      sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
26586bea0e4fSmrg      sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
26596bea0e4fSmrg      sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
26606bea0e4fSmrg      ;;
26616bea0e4fSmrg    *)
26626bea0e4fSmrg      sys_lib_search_path_spec=$LIB
26636bea0e4fSmrg      if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
26646bea0e4fSmrg        # It is most probably a Windows format PATH.
26656bea0e4fSmrg        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
26666bea0e4fSmrg      else
26676bea0e4fSmrg        sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
26686bea0e4fSmrg      fi
26696bea0e4fSmrg      # FIXME: find the short name or the path components, as spaces are
26706bea0e4fSmrg      # common. (e.g. "Program Files" -> "PROGRA~1")
26716bea0e4fSmrg      ;;
26726bea0e4fSmrg    esac
26736bea0e4fSmrg
26746bea0e4fSmrg    # DLL is installed to $(libdir)/../bin by postinstall_cmds
26756bea0e4fSmrg    postinstall_cmds='base_file=`basename \$file`~
26766bea0e4fSmrg      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
26776bea0e4fSmrg      dldir=$destdir/`dirname \$dlpath`~
26786bea0e4fSmrg      test -d \$dldir || mkdir -p \$dldir~
26796bea0e4fSmrg      $install_prog $dir/$dlname \$dldir/$dlname'
26806bea0e4fSmrg    postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
26816bea0e4fSmrg      dlpath=$dir/\$dldll~
26826bea0e4fSmrg       $RM \$dlpath'
26836bea0e4fSmrg    shlibpath_overrides_runpath=yes
26846bea0e4fSmrg    dynamic_linker='Win32 link.exe'
26856bea0e4fSmrg    ;;
26866bea0e4fSmrg
26876bea0e4fSmrg  *)
26886bea0e4fSmrg    # Assume MSVC and ICC wrapper
26896bea0e4fSmrg    library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
26906bea0e4fSmrg    dynamic_linker='Win32 ld.exe'
26916bea0e4fSmrg    ;;
26926bea0e4fSmrg  esac
26936bea0e4fSmrg  # FIXME: first we should search . and the directory the executable is in
26946bea0e4fSmrg  shlibpath_var=PATH
26956bea0e4fSmrg  ;;
26966bea0e4fSmrg
26976bea0e4fSmrgdarwin* | rhapsody*)
26986bea0e4fSmrg  dynamic_linker="$host_os dyld"
26996bea0e4fSmrg  version_type=darwin
27006bea0e4fSmrg  need_lib_prefix=no
27016bea0e4fSmrg  need_version=no
27026bea0e4fSmrg  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
27036bea0e4fSmrg  soname_spec='$libname$release$major$shared_ext'
27046bea0e4fSmrg  shlibpath_overrides_runpath=yes
27056bea0e4fSmrg  shlibpath_var=DYLD_LIBRARY_PATH
27066bea0e4fSmrg  shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
27076bea0e4fSmrgm4_if([$1], [],[
27086bea0e4fSmrg  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
27096bea0e4fSmrg  sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
27106bea0e4fSmrg  ;;
27116bea0e4fSmrg
27126bea0e4fSmrgdgux*)
27136bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
27146bea0e4fSmrg  need_lib_prefix=no
27156bea0e4fSmrg  need_version=no
27166bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
27176bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
27186bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
27196bea0e4fSmrg  ;;
27206bea0e4fSmrg
27216bea0e4fSmrgfreebsd* | dragonfly* | midnightbsd*)
27226bea0e4fSmrg  # DragonFly does not have aout.  When/if they implement a new
27236bea0e4fSmrg  # versioning mechanism, adjust this.
27246bea0e4fSmrg  if test -x /usr/bin/objformat; then
27256bea0e4fSmrg    objformat=`/usr/bin/objformat`
27266bea0e4fSmrg  else
27276bea0e4fSmrg    case $host_os in
27286bea0e4fSmrg    freebsd[[23]].*) objformat=aout ;;
27296bea0e4fSmrg    *) objformat=elf ;;
27306bea0e4fSmrg    esac
27316bea0e4fSmrg  fi
27326bea0e4fSmrg  version_type=freebsd-$objformat
27336bea0e4fSmrg  case $version_type in
27346bea0e4fSmrg    freebsd-elf*)
27356bea0e4fSmrg      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
27366bea0e4fSmrg      soname_spec='$libname$release$shared_ext$major'
27376bea0e4fSmrg      need_version=no
27386bea0e4fSmrg      need_lib_prefix=no
27396bea0e4fSmrg      ;;
27406bea0e4fSmrg    freebsd-*)
27416bea0e4fSmrg      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
27426bea0e4fSmrg      need_version=yes
27436bea0e4fSmrg      ;;
27446bea0e4fSmrg  esac
27456bea0e4fSmrg  case $host_cpu in
27466bea0e4fSmrg    powerpc64)
27476bea0e4fSmrg      # On FreeBSD bi-arch platforms, a different variable is used for 32-bit
27486bea0e4fSmrg      # binaries.  See <https://man.freebsd.org/cgi/man.cgi?query=ld.so>.
27496bea0e4fSmrg      AC_COMPILE_IFELSE(
27506bea0e4fSmrg        [AC_LANG_SOURCE(
27516bea0e4fSmrg           [[int test_pointer_size[sizeof (void *) - 5];
27526bea0e4fSmrg           ]])],
27536bea0e4fSmrg        [shlibpath_var=LD_LIBRARY_PATH],
27546bea0e4fSmrg        [shlibpath_var=LD_32_LIBRARY_PATH])
27556bea0e4fSmrg      ;;
27566bea0e4fSmrg    *)
27576bea0e4fSmrg      shlibpath_var=LD_LIBRARY_PATH
27586bea0e4fSmrg      ;;
27596bea0e4fSmrg  esac
27606bea0e4fSmrg  case $host_os in
27616bea0e4fSmrg  freebsd2.*)
27626bea0e4fSmrg    shlibpath_overrides_runpath=yes
27636bea0e4fSmrg    ;;
27646bea0e4fSmrg  freebsd3.[[01]]* | freebsdelf3.[[01]]*)
27656bea0e4fSmrg    shlibpath_overrides_runpath=yes
27666bea0e4fSmrg    hardcode_into_libs=yes
27676bea0e4fSmrg    ;;
27686bea0e4fSmrg  freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
27696bea0e4fSmrg  freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
27706bea0e4fSmrg    shlibpath_overrides_runpath=no
27716bea0e4fSmrg    hardcode_into_libs=yes
27726bea0e4fSmrg    ;;
27736bea0e4fSmrg  *) # from 4.6 on, and DragonFly
27746bea0e4fSmrg    shlibpath_overrides_runpath=yes
27756bea0e4fSmrg    hardcode_into_libs=yes
27766bea0e4fSmrg    ;;
27776bea0e4fSmrg  esac
27786bea0e4fSmrg  ;;
27796bea0e4fSmrg
27806bea0e4fSmrghaiku*)
27816bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
27826bea0e4fSmrg  need_lib_prefix=no
27836bea0e4fSmrg  need_version=no
27846bea0e4fSmrg  dynamic_linker="$host_os runtime_loader"
27856bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
27866bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
27876bea0e4fSmrg  shlibpath_var=LIBRARY_PATH
27886bea0e4fSmrg  shlibpath_overrides_runpath=no
27896bea0e4fSmrg  sys_lib_search_path_spec='/boot/system/non-packaged/develop/lib /boot/system/develop/lib'
27906bea0e4fSmrg  sys_lib_dlsearch_path_spec='/boot/home/config/non-packaged/lib /boot/home/config/lib /boot/system/non-packaged/lib /boot/system/lib'
27916bea0e4fSmrg  hardcode_into_libs=no
27926bea0e4fSmrg  ;;
27936bea0e4fSmrg
27946bea0e4fSmrghpux9* | hpux10* | hpux11*)
27956bea0e4fSmrg  # Give a soname corresponding to the major version so that dld.sl refuses to
27966bea0e4fSmrg  # link against other versions.
27976bea0e4fSmrg  version_type=sunos
27986bea0e4fSmrg  need_lib_prefix=no
27996bea0e4fSmrg  need_version=no
28006bea0e4fSmrg  case $host_cpu in
28016bea0e4fSmrg  ia64*)
28026bea0e4fSmrg    shrext_cmds='.so'
28036bea0e4fSmrg    hardcode_into_libs=yes
28046bea0e4fSmrg    dynamic_linker="$host_os dld.so"
28056bea0e4fSmrg    shlibpath_var=LD_LIBRARY_PATH
28066bea0e4fSmrg    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
28076bea0e4fSmrg    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
28086bea0e4fSmrg    soname_spec='$libname$release$shared_ext$major'
28096bea0e4fSmrg    if test 32 = "$HPUX_IA64_MODE"; then
28106bea0e4fSmrg      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
28116bea0e4fSmrg      sys_lib_dlsearch_path_spec=/usr/lib/hpux32
28126bea0e4fSmrg    else
28136bea0e4fSmrg      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
28146bea0e4fSmrg      sys_lib_dlsearch_path_spec=/usr/lib/hpux64
28156bea0e4fSmrg    fi
28166bea0e4fSmrg    ;;
28176bea0e4fSmrg  hppa*64*)
28186bea0e4fSmrg    shrext_cmds='.sl'
28196bea0e4fSmrg    hardcode_into_libs=yes
28206bea0e4fSmrg    dynamic_linker="$host_os dld.sl"
28216bea0e4fSmrg    shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
28226bea0e4fSmrg    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
28236bea0e4fSmrg    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
28246bea0e4fSmrg    soname_spec='$libname$release$shared_ext$major'
28256bea0e4fSmrg    sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
28266bea0e4fSmrg    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
28276bea0e4fSmrg    ;;
28286bea0e4fSmrg  *)
28296bea0e4fSmrg    shrext_cmds='.sl'
28306bea0e4fSmrg    dynamic_linker="$host_os dld.sl"
28316bea0e4fSmrg    shlibpath_var=SHLIB_PATH
28326bea0e4fSmrg    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
28336bea0e4fSmrg    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
28346bea0e4fSmrg    soname_spec='$libname$release$shared_ext$major'
28356bea0e4fSmrg    ;;
28366bea0e4fSmrg  esac
28376bea0e4fSmrg  # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
28386bea0e4fSmrg  postinstall_cmds='chmod 555 $lib'
28396bea0e4fSmrg  # or fails outright, so override atomically:
28406bea0e4fSmrg  install_override_mode=555
28416bea0e4fSmrg  ;;
28426bea0e4fSmrg
28436bea0e4fSmrginterix[[3-9]]*)
28446bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
28456bea0e4fSmrg  need_lib_prefix=no
28466bea0e4fSmrg  need_version=no
28476bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
28486bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
28496bea0e4fSmrg  dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
28506bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
28516bea0e4fSmrg  shlibpath_overrides_runpath=no
28526bea0e4fSmrg  hardcode_into_libs=yes
28536bea0e4fSmrg  ;;
28546bea0e4fSmrg
28556bea0e4fSmrgirix5* | irix6* | nonstopux*)
28566bea0e4fSmrg  case $host_os in
28576bea0e4fSmrg    nonstopux*) version_type=nonstopux ;;
28586bea0e4fSmrg    *)
28596bea0e4fSmrg	if test yes = "$lt_cv_prog_gnu_ld"; then
28606bea0e4fSmrg		version_type=linux # correct to gnu/linux during the next big refactor
28616bea0e4fSmrg	else
28626bea0e4fSmrg		version_type=irix
28636bea0e4fSmrg	fi ;;
28646bea0e4fSmrg  esac
28656bea0e4fSmrg  need_lib_prefix=no
28666bea0e4fSmrg  need_version=no
28676bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
28686bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
28696bea0e4fSmrg  case $host_os in
28706bea0e4fSmrg  irix5* | nonstopux*)
28716bea0e4fSmrg    libsuff= shlibsuff=
28726bea0e4fSmrg    ;;
28736bea0e4fSmrg  *)
28746bea0e4fSmrg    case $LD in # libtool.m4 will add one of these switches to LD
28756bea0e4fSmrg    *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
28766bea0e4fSmrg      libsuff= shlibsuff= libmagic=32-bit;;
28776bea0e4fSmrg    *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
28786bea0e4fSmrg      libsuff=32 shlibsuff=N32 libmagic=N32;;
28796bea0e4fSmrg    *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
28806bea0e4fSmrg      libsuff=64 shlibsuff=64 libmagic=64-bit;;
28816bea0e4fSmrg    *) libsuff= shlibsuff= libmagic=never-match;;
28826bea0e4fSmrg    esac
28836bea0e4fSmrg    ;;
28846bea0e4fSmrg  esac
28856bea0e4fSmrg  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
28866bea0e4fSmrg  shlibpath_overrides_runpath=no
28876bea0e4fSmrg  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
28886bea0e4fSmrg  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
28896bea0e4fSmrg  hardcode_into_libs=yes
28906bea0e4fSmrg  ;;
28916bea0e4fSmrg
28926bea0e4fSmrg# No shared lib support for Linux oldld, aout, or coff.
28936bea0e4fSmrglinux*oldld* | linux*aout* | linux*coff*)
28946bea0e4fSmrg  dynamic_linker=no
28956bea0e4fSmrg  ;;
28966bea0e4fSmrg
28976bea0e4fSmrglinux*android*)
28986bea0e4fSmrg  version_type=none # Android doesn't support versioned libraries.
28996bea0e4fSmrg  need_lib_prefix=no
29006bea0e4fSmrg  need_version=no
29016bea0e4fSmrg  library_names_spec='$libname$release$shared_ext $libname$shared_ext'
29026bea0e4fSmrg  soname_spec='$libname$release$shared_ext'
29036bea0e4fSmrg  finish_cmds=
29046bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
29056bea0e4fSmrg  shlibpath_overrides_runpath=yes
29066bea0e4fSmrg
29076bea0e4fSmrg  # This implies no fast_install, which is unacceptable.
29086bea0e4fSmrg  # Some rework will be needed to allow for fast_install
29096bea0e4fSmrg  # before this can be enabled.
29106bea0e4fSmrg  hardcode_into_libs=yes
29116bea0e4fSmrg
29126bea0e4fSmrg  dynamic_linker='Android linker'
29136bea0e4fSmrg  # -rpath works at least for libraries that are not overridden by
29146bea0e4fSmrg  # libraries installed in system locations.
29156bea0e4fSmrg  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
29166bea0e4fSmrg  ;;
29176bea0e4fSmrg
29186bea0e4fSmrg# This must be glibc/ELF.
29196bea0e4fSmrglinux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
29206bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
29216bea0e4fSmrg  need_lib_prefix=no
29226bea0e4fSmrg  need_version=no
29236bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
29246bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
29256bea0e4fSmrg  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
29266bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
29276bea0e4fSmrg  shlibpath_overrides_runpath=no
29286bea0e4fSmrg
29296bea0e4fSmrg  # Some binutils ld are patched to set DT_RUNPATH
29306bea0e4fSmrg  AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
29316bea0e4fSmrg    [lt_cv_shlibpath_overrides_runpath=no
29326bea0e4fSmrg    save_LDFLAGS=$LDFLAGS
29336bea0e4fSmrg    save_libdir=$libdir
29346bea0e4fSmrg    eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
29356bea0e4fSmrg	 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
29366bea0e4fSmrg    AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
29376bea0e4fSmrg      [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
29386bea0e4fSmrg	 [lt_cv_shlibpath_overrides_runpath=yes])])
29396bea0e4fSmrg    LDFLAGS=$save_LDFLAGS
29406bea0e4fSmrg    libdir=$save_libdir
29416bea0e4fSmrg    ])
29426bea0e4fSmrg  shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
29436bea0e4fSmrg
29446bea0e4fSmrg  # This implies no fast_install, which is unacceptable.
29456bea0e4fSmrg  # Some rework will be needed to allow for fast_install
29466bea0e4fSmrg  # before this can be enabled.
29476bea0e4fSmrg  hardcode_into_libs=yes
29486bea0e4fSmrg
29496bea0e4fSmrg  # Ideally, we could use ldconfig to report *all* directories which are
29506bea0e4fSmrg  # searched for libraries, however this is still not possible.  Aside from not
29516bea0e4fSmrg  # being certain /sbin/ldconfig is available, command
29526bea0e4fSmrg  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
29536bea0e4fSmrg  # even though it is searched at run-time.  Try to do the best guess by
29546bea0e4fSmrg  # appending ld.so.conf contents (and includes) to the search path.
29556bea0e4fSmrg  if test -f /etc/ld.so.conf; then
29566bea0e4fSmrg    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' ' '`
29576bea0e4fSmrg    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
29586bea0e4fSmrg  fi
29596bea0e4fSmrg
29606bea0e4fSmrg  # We used to test for /lib/ld.so.1 and disable shared libraries on
29616bea0e4fSmrg  # powerpc, because MkLinux only supported shared libraries with the
29626bea0e4fSmrg  # GNU dynamic linker.  Since this was broken with cross compilers,
29636bea0e4fSmrg  # most powerpc-linux boxes support dynamic linking these days and
29646bea0e4fSmrg  # people can always --disable-shared, the test was removed, and we
29656bea0e4fSmrg  # assume the GNU/Linux dynamic linker is in use.
29666bea0e4fSmrg  dynamic_linker='GNU/Linux ld.so'
29676bea0e4fSmrg  ;;
29686bea0e4fSmrg
29696bea0e4fSmrgnetbsdelf*-gnu)
29706bea0e4fSmrg  version_type=linux
29716bea0e4fSmrg  need_lib_prefix=no
29726bea0e4fSmrg  need_version=no
29736bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
29746bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
29756bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
29766bea0e4fSmrg  shlibpath_overrides_runpath=no
29776bea0e4fSmrg  hardcode_into_libs=yes
29786bea0e4fSmrg  dynamic_linker='NetBSD ld.elf_so'
29796bea0e4fSmrg  ;;
29806bea0e4fSmrg
29816bea0e4fSmrgnetbsd*)
29826bea0e4fSmrg  version_type=sunos
29836bea0e4fSmrg  need_lib_prefix=no
29846bea0e4fSmrg  need_version=no
29856bea0e4fSmrg  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
29866bea0e4fSmrg    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
29876bea0e4fSmrg    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
29886bea0e4fSmrg    dynamic_linker='NetBSD (a.out) ld.so'
29896bea0e4fSmrg  else
29906bea0e4fSmrg    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
29916bea0e4fSmrg    soname_spec='$libname$release$shared_ext$major'
29926bea0e4fSmrg    dynamic_linker='NetBSD ld.elf_so'
29936bea0e4fSmrg  fi
29946bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
29956bea0e4fSmrg  shlibpath_overrides_runpath=yes
29966bea0e4fSmrg  hardcode_into_libs=yes
29976bea0e4fSmrg  ;;
29986bea0e4fSmrg
29996bea0e4fSmrg*-mlibc)
30006bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
30016bea0e4fSmrg  need_lib_prefix=no
30026bea0e4fSmrg  need_version=no
30036bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
30046bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
30056bea0e4fSmrg  dynamic_linker='mlibc ld.so'
30066bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
30076bea0e4fSmrg  shlibpath_overrides_runpath=no
30086bea0e4fSmrg  hardcode_into_libs=yes
30096bea0e4fSmrg  ;;
30106bea0e4fSmrg
30116bea0e4fSmrgnewsos6)
30126bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
30136bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
30146bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
30156bea0e4fSmrg  shlibpath_overrides_runpath=yes
30166bea0e4fSmrg  ;;
30176bea0e4fSmrg
30186bea0e4fSmrg*nto* | *qnx*)
30196bea0e4fSmrg  version_type=qnx
30206bea0e4fSmrg  need_lib_prefix=no
30216bea0e4fSmrg  need_version=no
30226bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
30236bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
30246bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
30256bea0e4fSmrg  shlibpath_overrides_runpath=no
30266bea0e4fSmrg  hardcode_into_libs=yes
30276bea0e4fSmrg  dynamic_linker='ldqnx.so'
30286bea0e4fSmrg  ;;
30296bea0e4fSmrg
30306bea0e4fSmrgopenbsd*)
30316bea0e4fSmrg  version_type=sunos
30326bea0e4fSmrg  sys_lib_dlsearch_path_spec=/usr/lib
30336bea0e4fSmrg  need_lib_prefix=no
30346bea0e4fSmrg  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
30356bea0e4fSmrg    need_version=no
30366bea0e4fSmrg  else
30376bea0e4fSmrg    need_version=yes
30386bea0e4fSmrg  fi
30396bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
30406bea0e4fSmrg  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
30416bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
30426bea0e4fSmrg  shlibpath_overrides_runpath=yes
30436bea0e4fSmrg  ;;
30446bea0e4fSmrg
30456bea0e4fSmrgos2*)
30466bea0e4fSmrg  libname_spec='$name'
30476bea0e4fSmrg  version_type=windows
30486bea0e4fSmrg  shrext_cmds=.dll
30496bea0e4fSmrg  need_version=no
30506bea0e4fSmrg  need_lib_prefix=no
30516bea0e4fSmrg  # OS/2 can only load a DLL with a base name of 8 characters or less.
30526bea0e4fSmrg  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
30536bea0e4fSmrg    v=$($ECHO $release$versuffix | tr -d .-);
30546bea0e4fSmrg    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
30556bea0e4fSmrg    $ECHO $n$v`$shared_ext'
30566bea0e4fSmrg  library_names_spec='${libname}_dll.$libext'
30576bea0e4fSmrg  dynamic_linker='OS/2 ld.exe'
30586bea0e4fSmrg  shlibpath_var=BEGINLIBPATH
30596bea0e4fSmrg  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
30606bea0e4fSmrg  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
30616bea0e4fSmrg  postinstall_cmds='base_file=`basename \$file`~
30626bea0e4fSmrg    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
30636bea0e4fSmrg    dldir=$destdir/`dirname \$dlpath`~
30646bea0e4fSmrg    test -d \$dldir || mkdir -p \$dldir~
30656bea0e4fSmrg    $install_prog $dir/$dlname \$dldir/$dlname~
30666bea0e4fSmrg    chmod a+x \$dldir/$dlname~
30676bea0e4fSmrg    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
30686bea0e4fSmrg      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
30696bea0e4fSmrg    fi'
30706bea0e4fSmrg  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
30716bea0e4fSmrg    dlpath=$dir/\$dldll~
30726bea0e4fSmrg    $RM \$dlpath'
30736bea0e4fSmrg  ;;
30746bea0e4fSmrg
30756bea0e4fSmrgosf3* | osf4* | osf5*)
30766bea0e4fSmrg  version_type=osf
30776bea0e4fSmrg  need_lib_prefix=no
30786bea0e4fSmrg  need_version=no
30796bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
30806bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
30816bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
30826bea0e4fSmrg  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
30836bea0e4fSmrg  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
30846bea0e4fSmrg  ;;
30856bea0e4fSmrg
30866bea0e4fSmrgrdos*)
30876bea0e4fSmrg  dynamic_linker=no
30886bea0e4fSmrg  ;;
30896bea0e4fSmrg
30906bea0e4fSmrgserenity*)
30916bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
30926bea0e4fSmrg  need_lib_prefix=no
30936bea0e4fSmrg  need_version=no
30946bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
30956bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
30966bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
30976bea0e4fSmrg  shlibpath_overrides_runpath=no
30986bea0e4fSmrg  dynamic_linker='SerenityOS LibELF'
30996bea0e4fSmrg  ;;
31006bea0e4fSmrg
31016bea0e4fSmrgsolaris*)
31026bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
31036bea0e4fSmrg  need_lib_prefix=no
31046bea0e4fSmrg  need_version=no
31056bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
31066bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
31076bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
31086bea0e4fSmrg  shlibpath_overrides_runpath=yes
31096bea0e4fSmrg  hardcode_into_libs=yes
31106bea0e4fSmrg  # ldd complains unless libraries are executable
31116bea0e4fSmrg  postinstall_cmds='chmod +x $lib'
31126bea0e4fSmrg  ;;
31136bea0e4fSmrg
31146bea0e4fSmrgsunos4*)
31156bea0e4fSmrg  version_type=sunos
31166bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
31176bea0e4fSmrg  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
31186bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
31196bea0e4fSmrg  shlibpath_overrides_runpath=yes
31206bea0e4fSmrg  if test yes = "$with_gnu_ld"; then
31216bea0e4fSmrg    need_lib_prefix=no
31226bea0e4fSmrg  fi
31236bea0e4fSmrg  need_version=yes
31246bea0e4fSmrg  ;;
31256bea0e4fSmrg
31266bea0e4fSmrgsysv4 | sysv4.3*)
31276bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
31286bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
31296bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
31306bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
31316bea0e4fSmrg  case $host_vendor in
31326bea0e4fSmrg    sni)
31336bea0e4fSmrg      shlibpath_overrides_runpath=no
31346bea0e4fSmrg      need_lib_prefix=no
31356bea0e4fSmrg      runpath_var=LD_RUN_PATH
31366bea0e4fSmrg      ;;
31376bea0e4fSmrg    siemens)
31386bea0e4fSmrg      need_lib_prefix=no
31396bea0e4fSmrg      ;;
31406bea0e4fSmrg    motorola)
31416bea0e4fSmrg      need_lib_prefix=no
31426bea0e4fSmrg      need_version=no
31436bea0e4fSmrg      shlibpath_overrides_runpath=no
31446bea0e4fSmrg      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
31456bea0e4fSmrg      ;;
31466bea0e4fSmrg  esac
31476bea0e4fSmrg  ;;
31486bea0e4fSmrg
31496bea0e4fSmrgsysv4*MP*)
31506bea0e4fSmrg  if test -d /usr/nec; then
31516bea0e4fSmrg    version_type=linux # correct to gnu/linux during the next big refactor
31526bea0e4fSmrg    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
31536bea0e4fSmrg    soname_spec='$libname$shared_ext.$major'
31546bea0e4fSmrg    shlibpath_var=LD_LIBRARY_PATH
31556bea0e4fSmrg  fi
31566bea0e4fSmrg  ;;
31576bea0e4fSmrg
31586bea0e4fSmrgsysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
31596bea0e4fSmrg  version_type=sco
31606bea0e4fSmrg  need_lib_prefix=no
31616bea0e4fSmrg  need_version=no
31626bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
31636bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
31646bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
31656bea0e4fSmrg  shlibpath_overrides_runpath=yes
31666bea0e4fSmrg  hardcode_into_libs=yes
31676bea0e4fSmrg  if test yes = "$with_gnu_ld"; then
31686bea0e4fSmrg    sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
31696bea0e4fSmrg  else
31706bea0e4fSmrg    sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
31716bea0e4fSmrg    case $host_os in
31726bea0e4fSmrg      sco3.2v5*)
31736bea0e4fSmrg        sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
31746bea0e4fSmrg	;;
31756bea0e4fSmrg    esac
31766bea0e4fSmrg  fi
31776bea0e4fSmrg  sys_lib_dlsearch_path_spec='/usr/lib'
31786bea0e4fSmrg  ;;
31796bea0e4fSmrg
31806bea0e4fSmrgtpf*)
31816bea0e4fSmrg  # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
31826bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
31836bea0e4fSmrg  need_lib_prefix=no
31846bea0e4fSmrg  need_version=no
31856bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
31866bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
31876bea0e4fSmrg  shlibpath_overrides_runpath=no
31886bea0e4fSmrg  hardcode_into_libs=yes
31896bea0e4fSmrg  ;;
31906bea0e4fSmrg
31916bea0e4fSmrguts4*)
31926bea0e4fSmrg  version_type=linux # correct to gnu/linux during the next big refactor
31936bea0e4fSmrg  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
31946bea0e4fSmrg  soname_spec='$libname$release$shared_ext$major'
31956bea0e4fSmrg  shlibpath_var=LD_LIBRARY_PATH
31966bea0e4fSmrg  ;;
31976bea0e4fSmrg
31986bea0e4fSmrgemscripten*)
31996bea0e4fSmrg  version_type=none
32006bea0e4fSmrg  need_lib_prefix=no
32016bea0e4fSmrg  need_version=no
32026bea0e4fSmrg  library_names_spec='$libname$release$shared_ext'
32036bea0e4fSmrg  soname_spec='$libname$release$shared_ext'
32046bea0e4fSmrg  finish_cmds=
32056bea0e4fSmrg  dynamic_linker="Emscripten linker"
32066bea0e4fSmrg  _LT_COMPILER_PIC($1)='-fPIC'
32076bea0e4fSmrg  _LT_TAGVAR(archive_cmds, $1)='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib'
32086bea0e4fSmrg  _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'
32096bea0e4fSmrg  _LT_TAGVAR(archive_cmds_need_lc, $1)=no
32106bea0e4fSmrg  _LT_TAGVAR(no_undefined_flag, $1)=
32116bea0e4fSmrg  ;;
32126bea0e4fSmrg
32136bea0e4fSmrg*)
32146bea0e4fSmrg  dynamic_linker=no
32156bea0e4fSmrg  ;;
32166bea0e4fSmrgesac
32176bea0e4fSmrgAC_MSG_RESULT([$dynamic_linker])
32186bea0e4fSmrgtest no = "$dynamic_linker" && can_build_shared=no
32196bea0e4fSmrg
32206bea0e4fSmrgvariables_saved_for_relink="PATH $shlibpath_var $runpath_var"
32216bea0e4fSmrgif test yes = "$GCC"; then
32226bea0e4fSmrg  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
32236bea0e4fSmrgfi
32246bea0e4fSmrg
32256bea0e4fSmrgif test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
32266bea0e4fSmrg  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
32276bea0e4fSmrgfi
32286bea0e4fSmrg
32296bea0e4fSmrgif test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
32306bea0e4fSmrg  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
32316bea0e4fSmrgfi
32326bea0e4fSmrg
32336bea0e4fSmrg# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
32346bea0e4fSmrgconfigure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
32356bea0e4fSmrg
32366bea0e4fSmrg# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
32376bea0e4fSmrgfunc_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
32386bea0e4fSmrg
32396bea0e4fSmrg# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
32406bea0e4fSmrgconfigure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
32416bea0e4fSmrg
32426bea0e4fSmrg_LT_DECL([], [variables_saved_for_relink], [1],
32436bea0e4fSmrg    [Variables whose values should be saved in libtool wrapper scripts and
32446bea0e4fSmrg    restored at link time])
32456bea0e4fSmrg_LT_DECL([], [need_lib_prefix], [0],
32466bea0e4fSmrg    [Do we need the "lib" prefix for modules?])
32476bea0e4fSmrg_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
32486bea0e4fSmrg_LT_DECL([], [version_type], [0], [Library versioning type])
32496bea0e4fSmrg_LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
32506bea0e4fSmrg_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
32516bea0e4fSmrg_LT_DECL([], [shlibpath_overrides_runpath], [0],
32526bea0e4fSmrg    [Is shlibpath searched before the hard-coded library search path?])
32536bea0e4fSmrg_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
32546bea0e4fSmrg_LT_DECL([], [library_names_spec], [1],
32556bea0e4fSmrg    [[List of archive names.  First name is the real one, the rest are links.
32566bea0e4fSmrg    The last name is the one that the linker finds with -lNAME]])
32576bea0e4fSmrg_LT_DECL([], [soname_spec], [1],
32586bea0e4fSmrg    [[The coded name of the library, if different from the real name]])
32596bea0e4fSmrg_LT_DECL([], [install_override_mode], [1],
32606bea0e4fSmrg    [Permission mode override for installation of shared libraries])
32616bea0e4fSmrg_LT_DECL([], [postinstall_cmds], [2],
32626bea0e4fSmrg    [Command to use after installation of a shared archive])
32636bea0e4fSmrg_LT_DECL([], [postuninstall_cmds], [2],
32646bea0e4fSmrg    [Command to use after uninstallation of a shared archive])
32656bea0e4fSmrg_LT_DECL([], [finish_cmds], [2],
32666bea0e4fSmrg    [Commands used to finish a libtool library installation in a directory])
32676bea0e4fSmrg_LT_DECL([], [finish_eval], [1],
32686bea0e4fSmrg    [[As "finish_cmds", except a single script fragment to be evaled but
32696bea0e4fSmrg    not shown]])
32706bea0e4fSmrg_LT_DECL([], [hardcode_into_libs], [0],
32716bea0e4fSmrg    [Whether we should hardcode library paths into libraries])
32726bea0e4fSmrg_LT_DECL([], [sys_lib_search_path_spec], [2],
32736bea0e4fSmrg    [Compile-time system search path for libraries])
32746bea0e4fSmrg_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
32756bea0e4fSmrg    [Detected run-time system search path for libraries])
32766bea0e4fSmrg_LT_DECL([], [configure_time_lt_sys_library_path], [2],
32776bea0e4fSmrg    [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
32786bea0e4fSmrg])# _LT_SYS_DYNAMIC_LINKER
32796bea0e4fSmrg
32806bea0e4fSmrg
32816bea0e4fSmrg# _LT_PATH_TOOL_PREFIX(TOOL)
32826bea0e4fSmrg# --------------------------
32836bea0e4fSmrg# find a file program that can recognize shared library
32846bea0e4fSmrgAC_DEFUN([_LT_PATH_TOOL_PREFIX],
32856bea0e4fSmrg[m4_require([_LT_DECL_EGREP])dnl
32866bea0e4fSmrgAC_MSG_CHECKING([for $1])
32876bea0e4fSmrgAC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
32886bea0e4fSmrg[case $MAGIC_CMD in
32896bea0e4fSmrg[[\\/*] |  ?:[\\/]*])
32906bea0e4fSmrg  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
32916bea0e4fSmrg  ;;
32926bea0e4fSmrg*)
32936bea0e4fSmrg  lt_save_MAGIC_CMD=$MAGIC_CMD
32946bea0e4fSmrg  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
32956bea0e4fSmrgdnl $ac_dummy forces splitting on constant user-supplied paths.
32966bea0e4fSmrgdnl POSIX.2 word splitting is done only on the output of word expansions,
32976bea0e4fSmrgdnl not every word.  This closes a longstanding sh security hole.
32986bea0e4fSmrg  ac_dummy="m4_if([$2], , $PATH, [$2])"
32996bea0e4fSmrg  for ac_dir in $ac_dummy; do
33006bea0e4fSmrg    IFS=$lt_save_ifs
33016bea0e4fSmrg    test -z "$ac_dir" && ac_dir=.
33026bea0e4fSmrg    if test -f "$ac_dir/$1"; then
33036bea0e4fSmrg      lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
33046bea0e4fSmrg      if test -n "$file_magic_test_file"; then
33056bea0e4fSmrg	case $deplibs_check_method in
33066bea0e4fSmrg	"file_magic "*)
33076bea0e4fSmrg	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
33086bea0e4fSmrg	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD
33096bea0e4fSmrg	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
33106bea0e4fSmrg	    $EGREP "$file_magic_regex" > /dev/null; then
33116bea0e4fSmrg	    :
33126bea0e4fSmrg	  else
33136bea0e4fSmrg	    cat <<_LT_EOF 1>&2
33146bea0e4fSmrg
33156bea0e4fSmrg*** Warning: the command libtool uses to detect shared libraries,
33166bea0e4fSmrg*** $file_magic_cmd, produces output that libtool cannot recognize.
33176bea0e4fSmrg*** The result is that libtool may fail to recognize shared libraries
33186bea0e4fSmrg*** as such.  This will affect the creation of libtool libraries that
33196bea0e4fSmrg*** depend on shared libraries, but programs linked with such libtool
33206bea0e4fSmrg*** libraries will work regardless of this problem.  Nevertheless, you
33216bea0e4fSmrg*** may want to report the problem to your system manager and/or to
33226bea0e4fSmrg*** bug-libtool@gnu.org
33236bea0e4fSmrg
33246bea0e4fSmrg_LT_EOF
33256bea0e4fSmrg	  fi ;;
33266bea0e4fSmrg	esac
33276bea0e4fSmrg      fi
33286bea0e4fSmrg      break
33296bea0e4fSmrg    fi
33306bea0e4fSmrg  done
33316bea0e4fSmrg  IFS=$lt_save_ifs
33326bea0e4fSmrg  MAGIC_CMD=$lt_save_MAGIC_CMD
33336bea0e4fSmrg  ;;
33346bea0e4fSmrgesac])
33356bea0e4fSmrgMAGIC_CMD=$lt_cv_path_MAGIC_CMD
33366bea0e4fSmrgif test -n "$MAGIC_CMD"; then
33376bea0e4fSmrg  AC_MSG_RESULT($MAGIC_CMD)
33386bea0e4fSmrgelse
33396bea0e4fSmrg  AC_MSG_RESULT(no)
33406bea0e4fSmrgfi
33416bea0e4fSmrg_LT_DECL([], [MAGIC_CMD], [0],
33426bea0e4fSmrg	 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
33436bea0e4fSmrg])# _LT_PATH_TOOL_PREFIX
33446bea0e4fSmrg
33456bea0e4fSmrg# Old name:
33466bea0e4fSmrgAU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
33476bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
33486bea0e4fSmrgdnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
33496bea0e4fSmrg
33506bea0e4fSmrg
33516bea0e4fSmrg# _LT_PATH_MAGIC
33526bea0e4fSmrg# --------------
33536bea0e4fSmrg# find a file program that can recognize a shared library
33546bea0e4fSmrgm4_defun([_LT_PATH_MAGIC],
33556bea0e4fSmrg[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
33566bea0e4fSmrgif test -z "$lt_cv_path_MAGIC_CMD"; then
33576bea0e4fSmrg  if test -n "$ac_tool_prefix"; then
33586bea0e4fSmrg    _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
33596bea0e4fSmrg  else
33606bea0e4fSmrg    MAGIC_CMD=:
33616bea0e4fSmrg  fi
33626bea0e4fSmrgfi
33636bea0e4fSmrg])# _LT_PATH_MAGIC
33646bea0e4fSmrg
33656bea0e4fSmrg
33666bea0e4fSmrg# LT_PATH_LD
33676bea0e4fSmrg# ----------
33686bea0e4fSmrg# find the pathname to the GNU or non-GNU linker
33696bea0e4fSmrgAC_DEFUN([LT_PATH_LD],
33706bea0e4fSmrg[AC_REQUIRE([AC_PROG_CC])dnl
33716bea0e4fSmrgAC_REQUIRE([AC_CANONICAL_HOST])dnl
33726bea0e4fSmrgAC_REQUIRE([AC_CANONICAL_BUILD])dnl
33736bea0e4fSmrgm4_require([_LT_DECL_SED])dnl
33746bea0e4fSmrgm4_require([_LT_DECL_EGREP])dnl
33756bea0e4fSmrgm4_require([_LT_PROG_ECHO_BACKSLASH])dnl
33766bea0e4fSmrg
33776bea0e4fSmrgAC_ARG_WITH([gnu-ld],
33786bea0e4fSmrg    [AS_HELP_STRING([--with-gnu-ld],
33796bea0e4fSmrg	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
33806bea0e4fSmrg    [test no = "$withval" || with_gnu_ld=yes],
33816bea0e4fSmrg    [with_gnu_ld=no])dnl
33826bea0e4fSmrg
33836bea0e4fSmrgac_prog=ld
33846bea0e4fSmrgif test yes = "$GCC"; then
33856bea0e4fSmrg  # Check if gcc -print-prog-name=ld gives a path.
33866bea0e4fSmrg  AC_MSG_CHECKING([for ld used by $CC])
33876bea0e4fSmrg  case $host in
33886bea0e4fSmrg  *-*-mingw* | *-*-windows*)
33896bea0e4fSmrg    # gcc leaves a trailing carriage return, which upsets mingw
33906bea0e4fSmrg    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
33916bea0e4fSmrg  *)
33926bea0e4fSmrg    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
33936bea0e4fSmrg  esac
33946bea0e4fSmrg  case $ac_prog in
33956bea0e4fSmrg    # Accept absolute paths.
33966bea0e4fSmrg    [[\\/]]* | ?:[[\\/]]*)
33976bea0e4fSmrg      re_direlt='/[[^/]][[^/]]*/\.\./'
33986bea0e4fSmrg      # Canonicalize the pathname of ld
33996bea0e4fSmrg      ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
34006bea0e4fSmrg      while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
34016bea0e4fSmrg	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
34026bea0e4fSmrg      done
34036bea0e4fSmrg      test -z "$LD" && LD=$ac_prog
34046bea0e4fSmrg      ;;
34056bea0e4fSmrg  "")
34066bea0e4fSmrg    # If it fails, then pretend we aren't using GCC.
34076bea0e4fSmrg    ac_prog=ld
34086bea0e4fSmrg    ;;
34096bea0e4fSmrg  *)
34106bea0e4fSmrg    # If it is relative, then search for the first ld in PATH.
34116bea0e4fSmrg    with_gnu_ld=unknown
34126bea0e4fSmrg    ;;
34136bea0e4fSmrg  esac
34146bea0e4fSmrgelif test yes = "$with_gnu_ld"; then
34156bea0e4fSmrg  AC_MSG_CHECKING([for GNU ld])
34166bea0e4fSmrgelse
34176bea0e4fSmrg  AC_MSG_CHECKING([for non-GNU ld])
34186bea0e4fSmrgfi
34196bea0e4fSmrgAC_CACHE_VAL(lt_cv_path_LD,
34206bea0e4fSmrg[if test -z "$LD"; then
34216bea0e4fSmrg  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
34226bea0e4fSmrg  for ac_dir in $PATH; do
34236bea0e4fSmrg    IFS=$lt_save_ifs
34246bea0e4fSmrg    test -z "$ac_dir" && ac_dir=.
34256bea0e4fSmrg    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
34266bea0e4fSmrg      lt_cv_path_LD=$ac_dir/$ac_prog
34276bea0e4fSmrg      # Check to see if the program is GNU ld.  I'd rather use --version,
34286bea0e4fSmrg      # but apparently some variants of GNU ld only accept -v.
34296bea0e4fSmrg      # Break only if it was the GNU/non-GNU ld that we prefer.
34306bea0e4fSmrg      case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
34316bea0e4fSmrg      *GNU* | *'with BFD'*)
34326bea0e4fSmrg	test no != "$with_gnu_ld" && break
34336bea0e4fSmrg	;;
34346bea0e4fSmrg      *)
34356bea0e4fSmrg	test yes != "$with_gnu_ld" && break
34366bea0e4fSmrg	;;
34376bea0e4fSmrg      esac
34386bea0e4fSmrg    fi
34396bea0e4fSmrg  done
34406bea0e4fSmrg  IFS=$lt_save_ifs
34416bea0e4fSmrgelse
34426bea0e4fSmrg  lt_cv_path_LD=$LD # Let the user override the test with a path.
34436bea0e4fSmrgfi])
34446bea0e4fSmrgLD=$lt_cv_path_LD
34456bea0e4fSmrgif test -n "$LD"; then
34466bea0e4fSmrg  AC_MSG_RESULT($LD)
34476bea0e4fSmrgelse
34486bea0e4fSmrg  AC_MSG_RESULT(no)
34496bea0e4fSmrgfi
34506bea0e4fSmrgtest -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
34516bea0e4fSmrg_LT_PATH_LD_GNU
34526bea0e4fSmrgAC_SUBST([LD])
34536bea0e4fSmrg
34546bea0e4fSmrg_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
34556bea0e4fSmrg])# LT_PATH_LD
34566bea0e4fSmrg
34576bea0e4fSmrg# Old names:
34586bea0e4fSmrgAU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
34596bea0e4fSmrgAU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
34606bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
34616bea0e4fSmrgdnl AC_DEFUN([AM_PROG_LD], [])
34626bea0e4fSmrgdnl AC_DEFUN([AC_PROG_LD], [])
34636bea0e4fSmrg
34646bea0e4fSmrg
34656bea0e4fSmrg# _LT_PATH_LD_GNU
34666bea0e4fSmrg#- --------------
34676bea0e4fSmrgm4_defun([_LT_PATH_LD_GNU],
34686bea0e4fSmrg[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
34696bea0e4fSmrg[# I'd rather use --version here, but apparently some GNU lds only accept -v.
34706bea0e4fSmrgcase `$LD -v 2>&1 </dev/null` in
34716bea0e4fSmrg*GNU* | *'with BFD'*)
34726bea0e4fSmrg  lt_cv_prog_gnu_ld=yes
34736bea0e4fSmrg  ;;
34746bea0e4fSmrg*)
34756bea0e4fSmrg  lt_cv_prog_gnu_ld=no
34766bea0e4fSmrg  ;;
34776bea0e4fSmrgesac])
34786bea0e4fSmrgwith_gnu_ld=$lt_cv_prog_gnu_ld
34796bea0e4fSmrg])# _LT_PATH_LD_GNU
34806bea0e4fSmrg
34816bea0e4fSmrg
34826bea0e4fSmrg# _LT_CMD_RELOAD
34836bea0e4fSmrg# --------------
34846bea0e4fSmrg# find reload flag for linker
34856bea0e4fSmrg#   -- PORTME Some linkers may need a different reload flag.
34866bea0e4fSmrgm4_defun([_LT_CMD_RELOAD],
34876bea0e4fSmrg[AC_CACHE_CHECK([for $LD option to reload object files],
34886bea0e4fSmrg  lt_cv_ld_reload_flag,
34896bea0e4fSmrg  [lt_cv_ld_reload_flag='-r'])
34906bea0e4fSmrgreload_flag=$lt_cv_ld_reload_flag
34916bea0e4fSmrgcase $reload_flag in
34926bea0e4fSmrg"" | " "*) ;;
34936bea0e4fSmrg*) reload_flag=" $reload_flag" ;;
34946bea0e4fSmrgesac
34956bea0e4fSmrgreload_cmds='$LD$reload_flag -o $output$reload_objs'
34966bea0e4fSmrgcase $host_os in
34976bea0e4fSmrg  cygwin* | mingw* | windows* | pw32* | cegcc*)
34986bea0e4fSmrg    if test yes != "$GCC"; then
34996bea0e4fSmrg      reload_cmds=false
35006bea0e4fSmrg    fi
35016bea0e4fSmrg    ;;
35026bea0e4fSmrg  darwin*)
35036bea0e4fSmrg    if test yes = "$GCC"; then
35046bea0e4fSmrg      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
35056bea0e4fSmrg    else
35066bea0e4fSmrg      reload_cmds='$LD$reload_flag -o $output$reload_objs'
35076bea0e4fSmrg    fi
35086bea0e4fSmrg    ;;
35096bea0e4fSmrgesac
35106bea0e4fSmrg_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
35116bea0e4fSmrg_LT_TAGDECL([], [reload_cmds], [2])dnl
35126bea0e4fSmrg])# _LT_CMD_RELOAD
35136bea0e4fSmrg
35146bea0e4fSmrg
35156bea0e4fSmrg# _LT_PATH_DD
35166bea0e4fSmrg# -----------
35176bea0e4fSmrg# find a working dd
35186bea0e4fSmrgm4_defun([_LT_PATH_DD],
35196bea0e4fSmrg[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
35206bea0e4fSmrg[printf 0123456789abcdef0123456789abcdef >conftest.i
35216bea0e4fSmrgcat conftest.i conftest.i >conftest2.i
35226bea0e4fSmrg: ${lt_DD:=$DD}
35236bea0e4fSmrgAC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
35246bea0e4fSmrg[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
35256bea0e4fSmrg  cmp -s conftest.i conftest.out \
35266bea0e4fSmrg  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
35276bea0e4fSmrgfi])
35286bea0e4fSmrgrm -f conftest.i conftest2.i conftest.out])
35296bea0e4fSmrg])# _LT_PATH_DD
35306bea0e4fSmrg
35316bea0e4fSmrg
35326bea0e4fSmrg# _LT_CMD_TRUNCATE
35336bea0e4fSmrg# ----------------
35346bea0e4fSmrg# find command to truncate a binary pipe
35356bea0e4fSmrgm4_defun([_LT_CMD_TRUNCATE],
35366bea0e4fSmrg[m4_require([_LT_PATH_DD])
35376bea0e4fSmrgAC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
35386bea0e4fSmrg[printf 0123456789abcdef0123456789abcdef >conftest.i
35396bea0e4fSmrgcat conftest.i conftest.i >conftest2.i
35406bea0e4fSmrglt_cv_truncate_bin=
35416bea0e4fSmrgif "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
35426bea0e4fSmrg  cmp -s conftest.i conftest.out \
35436bea0e4fSmrg  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
35446bea0e4fSmrgfi
35456bea0e4fSmrgrm -f conftest.i conftest2.i conftest.out
35466bea0e4fSmrgtest -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
35476bea0e4fSmrg_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
35486bea0e4fSmrg  [Command to truncate a binary pipe])
35496bea0e4fSmrg])# _LT_CMD_TRUNCATE
35506bea0e4fSmrg
35516bea0e4fSmrg
35526bea0e4fSmrg# _LT_CHECK_MAGIC_METHOD
35536bea0e4fSmrg# ----------------------
35546bea0e4fSmrg# how to check for library dependencies
35556bea0e4fSmrg#  -- PORTME fill in with the dynamic library characteristics
35566bea0e4fSmrgm4_defun([_LT_CHECK_MAGIC_METHOD],
35576bea0e4fSmrg[m4_require([_LT_DECL_EGREP])
35586bea0e4fSmrgm4_require([_LT_DECL_OBJDUMP])
35596bea0e4fSmrgAC_CACHE_CHECK([how to recognize dependent libraries],
35606bea0e4fSmrglt_cv_deplibs_check_method,
35616bea0e4fSmrg[lt_cv_file_magic_cmd='$MAGIC_CMD'
35626bea0e4fSmrglt_cv_file_magic_test_file=
35636bea0e4fSmrglt_cv_deplibs_check_method='unknown'
35646bea0e4fSmrg# Need to set the preceding variable on all platforms that support
35656bea0e4fSmrg# interlibrary dependencies.
35666bea0e4fSmrg# 'none' -- dependencies not supported.
35676bea0e4fSmrg# 'unknown' -- same as none, but documents that we really don't know.
35686bea0e4fSmrg# 'pass_all' -- all dependencies passed with no checks.
35696bea0e4fSmrg# 'file_magic [[regex]]' -- check by looking for files in library path
35706bea0e4fSmrg# that responds to the $file_magic_cmd with a given extended regex.
35716bea0e4fSmrg# If you have 'file' or equivalent on your system and you're not sure
35726bea0e4fSmrg# whether 'pass_all' will *always* work, you probably want this one.
35736bea0e4fSmrg
35746bea0e4fSmrgcase $host_os in
35756bea0e4fSmrgaix[[4-9]]*)
35766bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
35776bea0e4fSmrg  ;;
35786bea0e4fSmrg
35796bea0e4fSmrgbeos*)
35806bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
35816bea0e4fSmrg  ;;
35826bea0e4fSmrg
35836bea0e4fSmrgbsdi[[45]]*)
35846bea0e4fSmrg  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
35856bea0e4fSmrg  lt_cv_file_magic_cmd='$FILECMD -L'
35866bea0e4fSmrg  lt_cv_file_magic_test_file=/shlib/libc.so
35876bea0e4fSmrg  ;;
35886bea0e4fSmrg
35896bea0e4fSmrgcygwin*)
35906bea0e4fSmrg  # func_win32_libid is a shell function defined in ltmain.sh
35916bea0e4fSmrg  lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
35926bea0e4fSmrg  lt_cv_file_magic_cmd='func_win32_libid'
35936bea0e4fSmrg  ;;
35946bea0e4fSmrg
35956bea0e4fSmrgmingw* | windows* | pw32*)
35966bea0e4fSmrg  # Base MSYS/MinGW do not provide the 'file' command needed by
35976bea0e4fSmrg  # func_win32_libid shell function, so use a weaker test based on 'objdump',
35986bea0e4fSmrg  # unless we find 'file', for example because we are cross-compiling.
35996bea0e4fSmrg  if ( file / ) >/dev/null 2>&1; then
36006bea0e4fSmrg    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
36016bea0e4fSmrg    lt_cv_file_magic_cmd='func_win32_libid'
36026bea0e4fSmrg  else
36036bea0e4fSmrg    # Keep this pattern in sync with the one in func_win32_libid.
36046bea0e4fSmrg    lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64|pe-aarch64)'
36056bea0e4fSmrg    lt_cv_file_magic_cmd='$OBJDUMP -f'
36066bea0e4fSmrg  fi
36076bea0e4fSmrg  ;;
36086bea0e4fSmrg
36096bea0e4fSmrgcegcc*)
36106bea0e4fSmrg  # use the weaker test based on 'objdump'. See mingw*.
36116bea0e4fSmrg  lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
36126bea0e4fSmrg  lt_cv_file_magic_cmd='$OBJDUMP -f'
36136bea0e4fSmrg  ;;
36146bea0e4fSmrg
36156bea0e4fSmrgdarwin* | rhapsody*)
36166bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
36176bea0e4fSmrg  ;;
36186bea0e4fSmrg
36196bea0e4fSmrgfreebsd* | dragonfly* | midnightbsd*)
36206bea0e4fSmrg  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
36216bea0e4fSmrg    case $host_cpu in
36226bea0e4fSmrg    i*86 )
36236bea0e4fSmrg      # Not sure whether the presence of OpenBSD here was a mistake.
36246bea0e4fSmrg      # Let's accept both of them until this is cleared up.
36256bea0e4fSmrg      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
36266bea0e4fSmrg      lt_cv_file_magic_cmd=$FILECMD
36276bea0e4fSmrg      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
36286bea0e4fSmrg      ;;
36296bea0e4fSmrg    esac
36306bea0e4fSmrg  else
36316bea0e4fSmrg    lt_cv_deplibs_check_method=pass_all
36326bea0e4fSmrg  fi
36336bea0e4fSmrg  ;;
36346bea0e4fSmrg
36356bea0e4fSmrghaiku*)
36366bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
36376bea0e4fSmrg  ;;
36386bea0e4fSmrg
36396bea0e4fSmrghpux10.20* | hpux11*)
36406bea0e4fSmrg  lt_cv_file_magic_cmd=$FILECMD
36416bea0e4fSmrg  case $host_cpu in
36426bea0e4fSmrg  ia64*)
36436bea0e4fSmrg    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
36446bea0e4fSmrg    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
36456bea0e4fSmrg    ;;
36466bea0e4fSmrg  hppa*64*)
36476bea0e4fSmrg    [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]']
36486bea0e4fSmrg    lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
36496bea0e4fSmrg    ;;
36506bea0e4fSmrg  *)
36516bea0e4fSmrg    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
36526bea0e4fSmrg    lt_cv_file_magic_test_file=/usr/lib/libc.sl
36536bea0e4fSmrg    ;;
36546bea0e4fSmrg  esac
36556bea0e4fSmrg  ;;
36566bea0e4fSmrg
36576bea0e4fSmrginterix[[3-9]]*)
36586bea0e4fSmrg  # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
36596bea0e4fSmrg  lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
36606bea0e4fSmrg  ;;
36616bea0e4fSmrg
36626bea0e4fSmrgirix5* | irix6* | nonstopux*)
36636bea0e4fSmrg  case $LD in
36646bea0e4fSmrg  *-32|*"-32 ") libmagic=32-bit;;
36656bea0e4fSmrg  *-n32|*"-n32 ") libmagic=N32;;
36666bea0e4fSmrg  *-64|*"-64 ") libmagic=64-bit;;
36676bea0e4fSmrg  *) libmagic=never-match;;
36686bea0e4fSmrg  esac
36696bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
36706bea0e4fSmrg  ;;
36716bea0e4fSmrg
36726bea0e4fSmrg# This must be glibc/ELF.
36736bea0e4fSmrglinux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
36746bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
36756bea0e4fSmrg  ;;
36766bea0e4fSmrg
36776bea0e4fSmrg*-mlibc)
36786bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
36796bea0e4fSmrg  ;;
36806bea0e4fSmrg
36816bea0e4fSmrgnetbsd* | netbsdelf*-gnu)
36826bea0e4fSmrg  if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
36836bea0e4fSmrg    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
36846bea0e4fSmrg  else
36856bea0e4fSmrg    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
36866bea0e4fSmrg  fi
36876bea0e4fSmrg  ;;
36886bea0e4fSmrg
36896bea0e4fSmrgnewos6*)
36906bea0e4fSmrg  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
36916bea0e4fSmrg  lt_cv_file_magic_cmd=$FILECMD
36926bea0e4fSmrg  lt_cv_file_magic_test_file=/usr/lib/libnls.so
36936bea0e4fSmrg  ;;
36946bea0e4fSmrg
36956bea0e4fSmrg*nto* | *qnx*)
36966bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
36976bea0e4fSmrg  ;;
36986bea0e4fSmrg
36996bea0e4fSmrgopenbsd*)
37006bea0e4fSmrg  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
37016bea0e4fSmrg    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
37026bea0e4fSmrg  else
37036bea0e4fSmrg    lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
37046bea0e4fSmrg  fi
37056bea0e4fSmrg  ;;
37066bea0e4fSmrg
37076bea0e4fSmrgosf3* | osf4* | osf5*)
37086bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
37096bea0e4fSmrg  ;;
37106bea0e4fSmrg
37116bea0e4fSmrgrdos*)
37126bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
37136bea0e4fSmrg  ;;
37146bea0e4fSmrg
37156bea0e4fSmrgserenity*)
37166bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
37176bea0e4fSmrg  ;;
37186bea0e4fSmrg
37196bea0e4fSmrgsolaris*)
37206bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
37216bea0e4fSmrg  ;;
37226bea0e4fSmrg
37236bea0e4fSmrgsysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
37246bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
37256bea0e4fSmrg  ;;
37266bea0e4fSmrg
37276bea0e4fSmrgsysv4 | sysv4.3*)
37286bea0e4fSmrg  case $host_vendor in
37296bea0e4fSmrg  motorola)
37306bea0e4fSmrg    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]]'
37316bea0e4fSmrg    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
37326bea0e4fSmrg    ;;
37336bea0e4fSmrg  ncr)
37346bea0e4fSmrg    lt_cv_deplibs_check_method=pass_all
37356bea0e4fSmrg    ;;
37366bea0e4fSmrg  sequent)
37376bea0e4fSmrg    lt_cv_file_magic_cmd='/bin/file'
37386bea0e4fSmrg    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
37396bea0e4fSmrg    ;;
37406bea0e4fSmrg  sni)
37416bea0e4fSmrg    lt_cv_file_magic_cmd='/bin/file'
37426bea0e4fSmrg    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
37436bea0e4fSmrg    lt_cv_file_magic_test_file=/lib/libc.so
37446bea0e4fSmrg    ;;
37456bea0e4fSmrg  siemens)
37466bea0e4fSmrg    lt_cv_deplibs_check_method=pass_all
37476bea0e4fSmrg    ;;
37486bea0e4fSmrg  pc)
37496bea0e4fSmrg    lt_cv_deplibs_check_method=pass_all
37506bea0e4fSmrg    ;;
37516bea0e4fSmrg  esac
37526bea0e4fSmrg  ;;
37536bea0e4fSmrg
37546bea0e4fSmrgtpf*)
37556bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
37566bea0e4fSmrg  ;;
37576bea0e4fSmrgos2*)
37586bea0e4fSmrg  lt_cv_deplibs_check_method=pass_all
37596bea0e4fSmrg  ;;
37606bea0e4fSmrgesac
37616bea0e4fSmrg])
37626bea0e4fSmrg
37636bea0e4fSmrgfile_magic_glob=
37646bea0e4fSmrgwant_nocaseglob=no
37656bea0e4fSmrgif test "$build" = "$host"; then
37666bea0e4fSmrg  case $host_os in
37676bea0e4fSmrg  mingw* | windows* | pw32*)
37686bea0e4fSmrg    if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
37696bea0e4fSmrg      want_nocaseglob=yes
37706bea0e4fSmrg    else
37716bea0e4fSmrg      file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
37726bea0e4fSmrg    fi
37736bea0e4fSmrg    ;;
37746bea0e4fSmrg  esac
37756bea0e4fSmrgfi
37766bea0e4fSmrg
37776bea0e4fSmrgfile_magic_cmd=$lt_cv_file_magic_cmd
37786bea0e4fSmrgdeplibs_check_method=$lt_cv_deplibs_check_method
37796bea0e4fSmrgtest -z "$deplibs_check_method" && deplibs_check_method=unknown
37806bea0e4fSmrg
37816bea0e4fSmrg_LT_DECL([], [deplibs_check_method], [1],
37826bea0e4fSmrg    [Method to check whether dependent libraries are shared objects])
37836bea0e4fSmrg_LT_DECL([], [file_magic_cmd], [1],
37846bea0e4fSmrg    [Command to use when deplibs_check_method = "file_magic"])
37856bea0e4fSmrg_LT_DECL([], [file_magic_glob], [1],
37866bea0e4fSmrg    [How to find potential files when deplibs_check_method = "file_magic"])
37876bea0e4fSmrg_LT_DECL([], [want_nocaseglob], [1],
37886bea0e4fSmrg    [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
37896bea0e4fSmrg])# _LT_CHECK_MAGIC_METHOD
37906bea0e4fSmrg
37916bea0e4fSmrg
37926bea0e4fSmrg# LT_PATH_NM
37936bea0e4fSmrg# ----------
37946bea0e4fSmrg# find the pathname to a BSD- or MS-compatible name lister
37956bea0e4fSmrgAC_DEFUN([LT_PATH_NM],
37966bea0e4fSmrg[AC_REQUIRE([AC_PROG_CC])dnl
37976bea0e4fSmrgAC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
37986bea0e4fSmrg[if test -n "$NM"; then
37996bea0e4fSmrg  # Let the user override the test.
38006bea0e4fSmrg  lt_cv_path_NM=$NM
38016bea0e4fSmrgelse
38026bea0e4fSmrg  lt_nm_to_check=${ac_tool_prefix}nm
38036bea0e4fSmrg  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
38046bea0e4fSmrg    lt_nm_to_check="$lt_nm_to_check nm"
38056bea0e4fSmrg  fi
38066bea0e4fSmrg  for lt_tmp_nm in $lt_nm_to_check; do
38076bea0e4fSmrg    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
38086bea0e4fSmrg    for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
38096bea0e4fSmrg      IFS=$lt_save_ifs
38106bea0e4fSmrg      test -z "$ac_dir" && ac_dir=.
38116bea0e4fSmrg      tmp_nm=$ac_dir/$lt_tmp_nm
38126bea0e4fSmrg      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
38136bea0e4fSmrg	# Check to see if the nm accepts a BSD-compat flag.
38146bea0e4fSmrg	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
38156bea0e4fSmrg	#   nm: unknown option "B" ignored
38166bea0e4fSmrg	# Tru64's nm complains that /dev/null is an invalid object file
38176bea0e4fSmrg	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
38186bea0e4fSmrg	case $build_os in
38196bea0e4fSmrg	mingw* | windows*) lt_bad_file=conftest.nm/nofile ;;
38206bea0e4fSmrg	*) lt_bad_file=/dev/null ;;
38216bea0e4fSmrg	esac
38226bea0e4fSmrg	case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in
38236bea0e4fSmrg	*$lt_bad_file* | *'Invalid file or object type'*)
38246bea0e4fSmrg	  lt_cv_path_NM="$tmp_nm -B"
38256bea0e4fSmrg	  break 2
38266bea0e4fSmrg	  ;;
38276bea0e4fSmrg	*)
38286bea0e4fSmrg	  case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in
38296bea0e4fSmrg	  */dev/null*)
38306bea0e4fSmrg	    lt_cv_path_NM="$tmp_nm -p"
38316bea0e4fSmrg	    break 2
38326bea0e4fSmrg	    ;;
38336bea0e4fSmrg	  *)
38346bea0e4fSmrg	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
38356bea0e4fSmrg	    continue # so that we can try to find one that supports BSD flags
38366bea0e4fSmrg	    ;;
38376bea0e4fSmrg	  esac
38386bea0e4fSmrg	  ;;
38396bea0e4fSmrg	esac
38406bea0e4fSmrg      fi
38416bea0e4fSmrg    done
38426bea0e4fSmrg    IFS=$lt_save_ifs
38436bea0e4fSmrg  done
38446bea0e4fSmrg  : ${lt_cv_path_NM=no}
38456bea0e4fSmrgfi])
38466bea0e4fSmrgif test no != "$lt_cv_path_NM"; then
38476bea0e4fSmrg  NM=$lt_cv_path_NM
38486bea0e4fSmrgelse
38496bea0e4fSmrg  # Didn't find any BSD compatible name lister, look for dumpbin.
38506bea0e4fSmrg  if test -n "$DUMPBIN"; then :
38516bea0e4fSmrg    # Let the user override the test.
38526bea0e4fSmrg  else
38536bea0e4fSmrg    AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
38546bea0e4fSmrg    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in
38556bea0e4fSmrg    *COFF*)
38566bea0e4fSmrg      DUMPBIN="$DUMPBIN -symbols -headers"
38576bea0e4fSmrg      ;;
38586bea0e4fSmrg    *)
38596bea0e4fSmrg      DUMPBIN=:
38606bea0e4fSmrg      ;;
38616bea0e4fSmrg    esac
38626bea0e4fSmrg  fi
38636bea0e4fSmrg  AC_SUBST([DUMPBIN])
38646bea0e4fSmrg  if test : != "$DUMPBIN"; then
38656bea0e4fSmrg    NM=$DUMPBIN
38666bea0e4fSmrg  fi
38676bea0e4fSmrgfi
38686bea0e4fSmrgtest -z "$NM" && NM=nm
38696bea0e4fSmrgAC_SUBST([NM])
38706bea0e4fSmrg_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
38716bea0e4fSmrg
38726bea0e4fSmrgAC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
38736bea0e4fSmrg  [lt_cv_nm_interface="BSD nm"
38746bea0e4fSmrg  echo "int some_variable = 0;" > conftest.$ac_ext
38756bea0e4fSmrg  (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
38766bea0e4fSmrg  (eval "$ac_compile" 2>conftest.err)
38776bea0e4fSmrg  cat conftest.err >&AS_MESSAGE_LOG_FD
38786bea0e4fSmrg  (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
38796bea0e4fSmrg  (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
38806bea0e4fSmrg  cat conftest.err >&AS_MESSAGE_LOG_FD
38816bea0e4fSmrg  (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
38826bea0e4fSmrg  cat conftest.out >&AS_MESSAGE_LOG_FD
38836bea0e4fSmrg  if $GREP 'External.*some_variable' conftest.out > /dev/null; then
38846bea0e4fSmrg    lt_cv_nm_interface="MS dumpbin"
38856bea0e4fSmrg  fi
38866bea0e4fSmrg  rm -f conftest*])
38876bea0e4fSmrg])# LT_PATH_NM
38886bea0e4fSmrg
38896bea0e4fSmrg# Old names:
38906bea0e4fSmrgAU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
38916bea0e4fSmrgAU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
38926bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
38936bea0e4fSmrgdnl AC_DEFUN([AM_PROG_NM], [])
38946bea0e4fSmrgdnl AC_DEFUN([AC_PROG_NM], [])
38956bea0e4fSmrg
38966bea0e4fSmrg# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
38976bea0e4fSmrg# --------------------------------
38986bea0e4fSmrg# how to determine the name of the shared library
38996bea0e4fSmrg# associated with a specific link library.
39006bea0e4fSmrg#  -- PORTME fill in with the dynamic library characteristics
39016bea0e4fSmrgm4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
39026bea0e4fSmrg[m4_require([_LT_DECL_EGREP])
39036bea0e4fSmrgm4_require([_LT_DECL_OBJDUMP])
39046bea0e4fSmrgm4_require([_LT_DECL_DLLTOOL])
39056bea0e4fSmrgAC_CACHE_CHECK([how to associate runtime and link libraries],
39066bea0e4fSmrglt_cv_sharedlib_from_linklib_cmd,
39076bea0e4fSmrg[lt_cv_sharedlib_from_linklib_cmd='unknown'
39086bea0e4fSmrg
39096bea0e4fSmrgcase $host_os in
39106bea0e4fSmrgcygwin* | mingw* | windows* | pw32* | cegcc*)
39116bea0e4fSmrg  # two different shell functions defined in ltmain.sh;
39126bea0e4fSmrg  # decide which one to use based on capabilities of $DLLTOOL
39136bea0e4fSmrg  case `$DLLTOOL --help 2>&1` in
39146bea0e4fSmrg  *--identify-strict*)
39156bea0e4fSmrg    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
39166bea0e4fSmrg    ;;
39176bea0e4fSmrg  *)
39186bea0e4fSmrg    lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
39196bea0e4fSmrg    ;;
39206bea0e4fSmrg  esac
39216bea0e4fSmrg  ;;
39226bea0e4fSmrg*)
39236bea0e4fSmrg  # fallback: assume linklib IS sharedlib
39246bea0e4fSmrg  lt_cv_sharedlib_from_linklib_cmd=$ECHO
39256bea0e4fSmrg  ;;
39266bea0e4fSmrgesac
39276bea0e4fSmrg])
39286bea0e4fSmrgsharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
39296bea0e4fSmrgtest -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
39306bea0e4fSmrg
39316bea0e4fSmrg_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
39326bea0e4fSmrg    [Command to associate shared and link libraries])
39336bea0e4fSmrg])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
39346bea0e4fSmrg
39356bea0e4fSmrg
39366bea0e4fSmrg# _LT_PATH_MANIFEST_TOOL
39376bea0e4fSmrg# ----------------------
39386bea0e4fSmrg# locate the manifest tool
39396bea0e4fSmrgm4_defun([_LT_PATH_MANIFEST_TOOL],
39406bea0e4fSmrg[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
39416bea0e4fSmrgtest -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
39426bea0e4fSmrgAC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_manifest_tool],
39436bea0e4fSmrg  [lt_cv_path_manifest_tool=no
39446bea0e4fSmrg  echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
39456bea0e4fSmrg  $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
39466bea0e4fSmrg  cat conftest.err >&AS_MESSAGE_LOG_FD
39476bea0e4fSmrg  if $GREP 'Manifest Tool' conftest.out > /dev/null; then
39486bea0e4fSmrg    lt_cv_path_manifest_tool=yes
39496bea0e4fSmrg  fi
39506bea0e4fSmrg  rm -f conftest*])
39516bea0e4fSmrgif test yes != "$lt_cv_path_manifest_tool"; then
39526bea0e4fSmrg  MANIFEST_TOOL=:
39536bea0e4fSmrgfi
39546bea0e4fSmrg_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
39556bea0e4fSmrg])# _LT_PATH_MANIFEST_TOOL
39566bea0e4fSmrg
39576bea0e4fSmrg
39586bea0e4fSmrg# _LT_DLL_DEF_P([FILE])
39596bea0e4fSmrg# ---------------------
39606bea0e4fSmrg# True iff FILE is a Windows DLL '.def' file.
39616bea0e4fSmrg# Keep in sync with func_dll_def_p in the libtool script
39626bea0e4fSmrgAC_DEFUN([_LT_DLL_DEF_P],
39636bea0e4fSmrg[dnl
39646bea0e4fSmrg  test DEF = "`$SED -n dnl
39656bea0e4fSmrg    -e '\''s/^[[	 ]]*//'\'' dnl Strip leading whitespace
39666bea0e4fSmrg    -e '\''/^\(;.*\)*$/d'\'' dnl      Delete empty lines and comments
39676bea0e4fSmrg    -e '\''s/^\(EXPORTS\|LIBRARY\)\([[	 ]].*\)*$/DEF/p'\'' dnl
39686bea0e4fSmrg    -e q dnl                          Only consider the first "real" line
39696bea0e4fSmrg    $1`" dnl
39706bea0e4fSmrg])# _LT_DLL_DEF_P
39716bea0e4fSmrg
39726bea0e4fSmrg
39736bea0e4fSmrg# LT_LIB_M
39746bea0e4fSmrg# --------
39756bea0e4fSmrg# check for math library
39766bea0e4fSmrgAC_DEFUN([LT_LIB_M],
39776bea0e4fSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl
39786bea0e4fSmrgLIBM=
39796bea0e4fSmrgcase $host in
39806bea0e4fSmrg*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-mingw* | *-*-pw32* | *-*-darwin*)
39816bea0e4fSmrg  # These system don't have libm, or don't need it
39826bea0e4fSmrg  ;;
39836bea0e4fSmrg*-ncr-sysv4.3*)
39846bea0e4fSmrg  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
39856bea0e4fSmrg  AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
39866bea0e4fSmrg  ;;
39876bea0e4fSmrg*)
39886bea0e4fSmrg  AC_CHECK_LIB(m, cos, LIBM=-lm)
39896bea0e4fSmrg  ;;
39906bea0e4fSmrgesac
39916bea0e4fSmrgAC_SUBST([LIBM])
39926bea0e4fSmrg])# LT_LIB_M
39936bea0e4fSmrg
39946bea0e4fSmrg# Old name:
39956bea0e4fSmrgAU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
39966bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
39976bea0e4fSmrgdnl AC_DEFUN([AC_CHECK_LIBM], [])
39986bea0e4fSmrg
39996bea0e4fSmrg
40006bea0e4fSmrg# _LT_COMPILER_NO_RTTI([TAGNAME])
40016bea0e4fSmrg# -------------------------------
40026bea0e4fSmrgm4_defun([_LT_COMPILER_NO_RTTI],
40036bea0e4fSmrg[m4_require([_LT_TAG_COMPILER])dnl
40046bea0e4fSmrg
40056bea0e4fSmrg_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
40066bea0e4fSmrg
40076bea0e4fSmrgif test yes = "$GCC"; then
40086bea0e4fSmrg  case $cc_basename in
40096bea0e4fSmrg  nvcc*)
40106bea0e4fSmrg    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
40116bea0e4fSmrg  *)
40126bea0e4fSmrg    _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
40136bea0e4fSmrg  esac
40146bea0e4fSmrg
40156bea0e4fSmrg  _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
40166bea0e4fSmrg    lt_cv_prog_compiler_rtti_exceptions,
40176bea0e4fSmrg    [-fno-rtti -fno-exceptions], [],
40186bea0e4fSmrg    [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
40196bea0e4fSmrgfi
40206bea0e4fSmrg_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
40216bea0e4fSmrg	[Compiler flag to turn off builtin functions])
40226bea0e4fSmrg])# _LT_COMPILER_NO_RTTI
40236bea0e4fSmrg
40246bea0e4fSmrg
40256bea0e4fSmrg# _LT_CMD_GLOBAL_SYMBOLS
40266bea0e4fSmrg# ----------------------
40276bea0e4fSmrgm4_defun([_LT_CMD_GLOBAL_SYMBOLS],
40286bea0e4fSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl
40296bea0e4fSmrgAC_REQUIRE([AC_PROG_CC])dnl
40306bea0e4fSmrgAC_REQUIRE([AC_PROG_AWK])dnl
40316bea0e4fSmrgAC_REQUIRE([LT_PATH_NM])dnl
40326bea0e4fSmrgAC_REQUIRE([LT_PATH_LD])dnl
40336bea0e4fSmrgm4_require([_LT_DECL_SED])dnl
40346bea0e4fSmrgm4_require([_LT_DECL_EGREP])dnl
40356bea0e4fSmrgm4_require([_LT_TAG_COMPILER])dnl
40366bea0e4fSmrg
40376bea0e4fSmrg# Check for command to grab the raw symbol name followed by C symbol from nm.
40386bea0e4fSmrgAC_MSG_CHECKING([command to parse $NM output from $compiler object])
40396bea0e4fSmrgAC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
40406bea0e4fSmrg[
40416bea0e4fSmrg# These are sane defaults that work on at least a few old systems.
40426bea0e4fSmrg# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
40436bea0e4fSmrg
40446bea0e4fSmrg# Character class describing NM global symbol codes.
40456bea0e4fSmrgsymcode='[[BCDEGRST]]'
40466bea0e4fSmrg
40476bea0e4fSmrg# Regexp to match symbols that can be accessed directly from C.
40486bea0e4fSmrgsympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
40496bea0e4fSmrg
40506bea0e4fSmrg# Define system-specific variables.
40516bea0e4fSmrgcase $host_os in
40526bea0e4fSmrgaix*)
40536bea0e4fSmrg  symcode='[[BCDT]]'
40546bea0e4fSmrg  ;;
40556bea0e4fSmrgcygwin* | mingw* | windows* | pw32* | cegcc*)
40566bea0e4fSmrg  symcode='[[ABCDGISTW]]'
40576bea0e4fSmrg  ;;
40586bea0e4fSmrghpux*)
40596bea0e4fSmrg  if test ia64 = "$host_cpu"; then
40606bea0e4fSmrg    symcode='[[ABCDEGRST]]'
40616bea0e4fSmrg  fi
40626bea0e4fSmrg  ;;
40636bea0e4fSmrgirix* | nonstopux*)
40646bea0e4fSmrg  symcode='[[BCDEGRST]]'
40656bea0e4fSmrg  ;;
40666bea0e4fSmrgosf*)
40676bea0e4fSmrg  symcode='[[BCDEGQRST]]'
40686bea0e4fSmrg  ;;
40696bea0e4fSmrgsolaris*)
40706bea0e4fSmrg  symcode='[[BCDRT]]'
40716bea0e4fSmrg  ;;
40726bea0e4fSmrgsco3.2v5*)
40736bea0e4fSmrg  symcode='[[DT]]'
40746bea0e4fSmrg  ;;
40756bea0e4fSmrgsysv4.2uw2*)
40766bea0e4fSmrg  symcode='[[DT]]'
40776bea0e4fSmrg  ;;
40786bea0e4fSmrgsysv5* | sco5v6* | unixware* | OpenUNIX*)
40796bea0e4fSmrg  symcode='[[ABDT]]'
40806bea0e4fSmrg  ;;
40816bea0e4fSmrgsysv4)
40826bea0e4fSmrg  symcode='[[DFNSTU]]'
40836bea0e4fSmrg  ;;
40846bea0e4fSmrgesac
40856bea0e4fSmrg
40866bea0e4fSmrg# If we're using GNU nm, then use its standard symbol codes.
40876bea0e4fSmrgcase `$NM -V 2>&1` in
40886bea0e4fSmrg*GNU* | *'with BFD'*)
40896bea0e4fSmrg  symcode='[[ABCDGIRSTW]]' ;;
40906bea0e4fSmrgesac
40916bea0e4fSmrg
40926bea0e4fSmrgif test "$lt_cv_nm_interface" = "MS dumpbin"; then
40936bea0e4fSmrg  # Gets list of data symbols to import.
40946bea0e4fSmrg  lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"
40956bea0e4fSmrg  # Adjust the below global symbol transforms to fixup imported variables.
40966bea0e4fSmrg  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
40976bea0e4fSmrg  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
40986bea0e4fSmrg  lt_c_name_lib_hook="\
40996bea0e4fSmrg  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
41006bea0e4fSmrg  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
41016bea0e4fSmrgelse
41026bea0e4fSmrg  # Disable hooks by default.
41036bea0e4fSmrg  lt_cv_sys_global_symbol_to_import=
41046bea0e4fSmrg  lt_cdecl_hook=
41056bea0e4fSmrg  lt_c_name_hook=
41066bea0e4fSmrg  lt_c_name_lib_hook=
41076bea0e4fSmrgfi
41086bea0e4fSmrg
41096bea0e4fSmrg# Transform an extracted symbol line into a proper C declaration.
41106bea0e4fSmrg# Some systems (esp. on ia64) link data and code symbols differently,
41116bea0e4fSmrg# so use this general approach.
41126bea0e4fSmrglt_cv_sys_global_symbol_to_cdecl="$SED -n"\
41136bea0e4fSmrg$lt_cdecl_hook\
41146bea0e4fSmrg" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
41156bea0e4fSmrg" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
41166bea0e4fSmrg
41176bea0e4fSmrg# Transform an extracted symbol line into symbol name and symbol address
41186bea0e4fSmrglt_cv_sys_global_symbol_to_c_name_address="$SED -n"\
41196bea0e4fSmrg$lt_c_name_hook\
41206bea0e4fSmrg" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
41216bea0e4fSmrg" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
41226bea0e4fSmrg
41236bea0e4fSmrg# Transform an extracted symbol line into symbol name with lib prefix and
41246bea0e4fSmrg# symbol address.
41256bea0e4fSmrglt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\
41266bea0e4fSmrg$lt_c_name_lib_hook\
41276bea0e4fSmrg" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
41286bea0e4fSmrg" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
41296bea0e4fSmrg" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
41306bea0e4fSmrg
41316bea0e4fSmrg# Handle CRLF in mingw tool chain
41326bea0e4fSmrgopt_cr=
41336bea0e4fSmrgcase $build_os in
41346bea0e4fSmrgmingw* | windows*)
41356bea0e4fSmrg  opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
41366bea0e4fSmrg  ;;
41376bea0e4fSmrgesac
41386bea0e4fSmrg
41396bea0e4fSmrg# Try without a prefix underscore, then with it.
41406bea0e4fSmrgfor ac_symprfx in "" "_"; do
41416bea0e4fSmrg
41426bea0e4fSmrg  # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
41436bea0e4fSmrg  symxfrm="\\1 $ac_symprfx\\2 \\2"
41446bea0e4fSmrg
41456bea0e4fSmrg  # Write the raw and C identifiers.
41466bea0e4fSmrg  if test "$lt_cv_nm_interface" = "MS dumpbin"; then
41476bea0e4fSmrg    # Fake it for dumpbin and say T for any non-static function,
41486bea0e4fSmrg    # D for any global variable and I for any imported variable.
41496bea0e4fSmrg    # Also find C++ and __fastcall symbols from MSVC++ or ICC,
41506bea0e4fSmrg    # which start with @ or ?.
41516bea0e4fSmrg    lt_cv_sys_global_symbol_pipe="$AWK ['"\
41526bea0e4fSmrg"     {last_section=section; section=\$ 3};"\
41536bea0e4fSmrg"     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
41546bea0e4fSmrg"     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
41556bea0e4fSmrg"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
41566bea0e4fSmrg"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
41576bea0e4fSmrg"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
41586bea0e4fSmrg"     \$ 0!~/External *\|/{next};"\
41596bea0e4fSmrg"     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
41606bea0e4fSmrg"     {if(hide[section]) next};"\
41616bea0e4fSmrg"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
41626bea0e4fSmrg"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
41636bea0e4fSmrg"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
41646bea0e4fSmrg"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
41656bea0e4fSmrg"     ' prfx=^$ac_symprfx]"
41666bea0e4fSmrg  else
41676bea0e4fSmrg    lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
41686bea0e4fSmrg  fi
41696bea0e4fSmrg  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"
41706bea0e4fSmrg
41716bea0e4fSmrg  # Check to see that the pipe works correctly.
41726bea0e4fSmrg  pipe_works=no
41736bea0e4fSmrg
41746bea0e4fSmrg  rm -f conftest*
41756bea0e4fSmrg  cat > conftest.$ac_ext <<_LT_EOF
41766bea0e4fSmrg#ifdef __cplusplus
41776bea0e4fSmrgextern "C" {
41786bea0e4fSmrg#endif
41796bea0e4fSmrgchar nm_test_var;
41806bea0e4fSmrgvoid nm_test_func(void);
41816bea0e4fSmrgvoid nm_test_func(void){}
41826bea0e4fSmrg#ifdef __cplusplus
41836bea0e4fSmrg}
41846bea0e4fSmrg#endif
41856bea0e4fSmrgint main(void){nm_test_var='a';nm_test_func();return(0);}
41866bea0e4fSmrg_LT_EOF
41876bea0e4fSmrg
41886bea0e4fSmrg  if AC_TRY_EVAL(ac_compile); then
41896bea0e4fSmrg    # Now try to grab the symbols.
41906bea0e4fSmrg    nlist=conftest.nm
41916bea0e4fSmrg    $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD
41926bea0e4fSmrg    if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then
41936bea0e4fSmrg      # Try sorting and uniquifying the output.
41946bea0e4fSmrg      if sort "$nlist" | uniq > "$nlist"T; then
41956bea0e4fSmrg	mv -f "$nlist"T "$nlist"
41966bea0e4fSmrg      else
41976bea0e4fSmrg	rm -f "$nlist"T
41986bea0e4fSmrg      fi
41996bea0e4fSmrg
42006bea0e4fSmrg      # Make sure that we snagged all the symbols we need.
42016bea0e4fSmrg      if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
42026bea0e4fSmrg	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
42036bea0e4fSmrg	  cat <<_LT_EOF > conftest.$ac_ext
42046bea0e4fSmrg/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
42056bea0e4fSmrg#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
42066bea0e4fSmrg/* DATA imports from DLLs on WIN32 can't be const, because runtime
42076bea0e4fSmrg   relocations are performed -- see ld's documentation on pseudo-relocs.  */
42086bea0e4fSmrg# define LT@&t@_DLSYM_CONST
42096bea0e4fSmrg#elif defined __osf__
42106bea0e4fSmrg/* This system does not cope well with relocations in const data.  */
42116bea0e4fSmrg# define LT@&t@_DLSYM_CONST
42126bea0e4fSmrg#else
42136bea0e4fSmrg# define LT@&t@_DLSYM_CONST const
42146bea0e4fSmrg#endif
42156bea0e4fSmrg
42166bea0e4fSmrg#ifdef __cplusplus
42176bea0e4fSmrgextern "C" {
42186bea0e4fSmrg#endif
42196bea0e4fSmrg
42206bea0e4fSmrg_LT_EOF
42216bea0e4fSmrg	  # Now generate the symbol file.
42226bea0e4fSmrg	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
42236bea0e4fSmrg
42246bea0e4fSmrg	  cat <<_LT_EOF >> conftest.$ac_ext
42256bea0e4fSmrg
42266bea0e4fSmrg/* The mapping between symbol names and symbols.  */
42276bea0e4fSmrgLT@&t@_DLSYM_CONST struct {
42286bea0e4fSmrg  const char *name;
42296bea0e4fSmrg  void       *address;
42306bea0e4fSmrg}
42316bea0e4fSmrglt__PROGRAM__LTX_preloaded_symbols[[]] =
42326bea0e4fSmrg{
42336bea0e4fSmrg  { "@PROGRAM@", (void *) 0 },
42346bea0e4fSmrg_LT_EOF
42356bea0e4fSmrg	  $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
42366bea0e4fSmrg	  cat <<\_LT_EOF >> conftest.$ac_ext
42376bea0e4fSmrg  {0, (void *) 0}
42386bea0e4fSmrg};
42396bea0e4fSmrg
42406bea0e4fSmrg/* This works around a problem in FreeBSD linker */
42416bea0e4fSmrg#ifdef FREEBSD_WORKAROUND
42426bea0e4fSmrgstatic const void *lt_preloaded_setup() {
42436bea0e4fSmrg  return lt__PROGRAM__LTX_preloaded_symbols;
42446bea0e4fSmrg}
42456bea0e4fSmrg#endif
42466bea0e4fSmrg
42476bea0e4fSmrg#ifdef __cplusplus
42486bea0e4fSmrg}
42496bea0e4fSmrg#endif
42506bea0e4fSmrg_LT_EOF
42516bea0e4fSmrg	  # Now try linking the two files.
42526bea0e4fSmrg	  mv conftest.$ac_objext conftstm.$ac_objext
42536bea0e4fSmrg	  lt_globsym_save_LIBS=$LIBS
42546bea0e4fSmrg	  lt_globsym_save_CFLAGS=$CFLAGS
42556bea0e4fSmrg	  LIBS=conftstm.$ac_objext
42566bea0e4fSmrg	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
42576bea0e4fSmrg	  if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
42586bea0e4fSmrg	    pipe_works=yes
42596bea0e4fSmrg	  fi
42606bea0e4fSmrg	  LIBS=$lt_globsym_save_LIBS
42616bea0e4fSmrg	  CFLAGS=$lt_globsym_save_CFLAGS
42626bea0e4fSmrg	else
42636bea0e4fSmrg	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
42646bea0e4fSmrg	fi
42656bea0e4fSmrg      else
42666bea0e4fSmrg	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
42676bea0e4fSmrg      fi
42686bea0e4fSmrg    else
42696bea0e4fSmrg      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
42706bea0e4fSmrg    fi
42716bea0e4fSmrg  else
42726bea0e4fSmrg    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
42736bea0e4fSmrg    cat conftest.$ac_ext >&5
42746bea0e4fSmrg  fi
42756bea0e4fSmrg  rm -rf conftest* conftst*
42766bea0e4fSmrg
42776bea0e4fSmrg  # Do not use the global_symbol_pipe unless it works.
42786bea0e4fSmrg  if test yes = "$pipe_works"; then
42796bea0e4fSmrg    break
42806bea0e4fSmrg  else
42816bea0e4fSmrg    lt_cv_sys_global_symbol_pipe=
42826bea0e4fSmrg  fi
42836bea0e4fSmrgdone
42846bea0e4fSmrg])
42856bea0e4fSmrgif test -z "$lt_cv_sys_global_symbol_pipe"; then
42866bea0e4fSmrg  lt_cv_sys_global_symbol_to_cdecl=
42876bea0e4fSmrgfi
42886bea0e4fSmrgif test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
42896bea0e4fSmrg  AC_MSG_RESULT(failed)
42906bea0e4fSmrgelse
42916bea0e4fSmrg  AC_MSG_RESULT(ok)
42926bea0e4fSmrgfi
42936bea0e4fSmrg
42946bea0e4fSmrg# Response file support.
42956bea0e4fSmrgif test "$lt_cv_nm_interface" = "MS dumpbin"; then
42966bea0e4fSmrg  nm_file_list_spec='@'
42976bea0e4fSmrgelif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
42986bea0e4fSmrg  nm_file_list_spec='@'
42996bea0e4fSmrgfi
43006bea0e4fSmrg
43016bea0e4fSmrg_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
43026bea0e4fSmrg    [Take the output of nm and produce a listing of raw symbols and C names])
43036bea0e4fSmrg_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
43046bea0e4fSmrg    [Transform the output of nm in a proper C declaration])
43056bea0e4fSmrg_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
43066bea0e4fSmrg    [Transform the output of nm into a list of symbols to manually relocate])
43076bea0e4fSmrg_LT_DECL([global_symbol_to_c_name_address],
43086bea0e4fSmrg    [lt_cv_sys_global_symbol_to_c_name_address], [1],
43096bea0e4fSmrg    [Transform the output of nm in a C name address pair])
43106bea0e4fSmrg_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
43116bea0e4fSmrg    [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
43126bea0e4fSmrg    [Transform the output of nm in a C name address pair when lib prefix is needed])
43136bea0e4fSmrg_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
43146bea0e4fSmrg    [The name lister interface])
43156bea0e4fSmrg_LT_DECL([], [nm_file_list_spec], [1],
43166bea0e4fSmrg    [Specify filename containing input files for $NM])
43176bea0e4fSmrg]) # _LT_CMD_GLOBAL_SYMBOLS
43186bea0e4fSmrg
43196bea0e4fSmrg
43206bea0e4fSmrg# _LT_COMPILER_PIC([TAGNAME])
43216bea0e4fSmrg# ---------------------------
43226bea0e4fSmrgm4_defun([_LT_COMPILER_PIC],
43236bea0e4fSmrg[m4_require([_LT_TAG_COMPILER])dnl
43246bea0e4fSmrg_LT_TAGVAR(lt_prog_compiler_wl, $1)=
43256bea0e4fSmrg_LT_TAGVAR(lt_prog_compiler_pic, $1)=
43266bea0e4fSmrg_LT_TAGVAR(lt_prog_compiler_static, $1)=
43276bea0e4fSmrg
43286bea0e4fSmrgm4_if([$1], [CXX], [
43296bea0e4fSmrg  # C++ specific cases for pic, static, wl, etc.
43306bea0e4fSmrg  if test yes = "$GXX"; then
43316bea0e4fSmrg    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
43326bea0e4fSmrg    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
43336bea0e4fSmrg
43346bea0e4fSmrg    case $host_os in
43356bea0e4fSmrg    aix*)
43366bea0e4fSmrg      # All AIX code is PIC.
43376bea0e4fSmrg      if test ia64 = "$host_cpu"; then
43386bea0e4fSmrg	# AIX 5 now supports IA64 processor
43396bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
43406bea0e4fSmrg      fi
43416bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
43426bea0e4fSmrg      ;;
43436bea0e4fSmrg
43446bea0e4fSmrg    amigaos*)
43456bea0e4fSmrg      case $host_cpu in
43466bea0e4fSmrg      powerpc)
43476bea0e4fSmrg            # see comment about AmigaOS4 .so support
43486bea0e4fSmrg            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
43496bea0e4fSmrg        ;;
43506bea0e4fSmrg      m68k)
43516bea0e4fSmrg            # FIXME: we need at least 68020 code to build shared libraries, but
43526bea0e4fSmrg            # adding the '-m68020' flag to GCC prevents building anything better,
43536bea0e4fSmrg            # like '-m68040'.
43546bea0e4fSmrg            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
43556bea0e4fSmrg        ;;
43566bea0e4fSmrg      esac
43576bea0e4fSmrg      ;;
43586bea0e4fSmrg
43596bea0e4fSmrg    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
43606bea0e4fSmrg      # PIC is the default for these OSes.
43616bea0e4fSmrg      ;;
43626bea0e4fSmrg    mingw* | windows* | cygwin* | os2* | pw32* | cegcc*)
43636bea0e4fSmrg      # This hack is so that the source file can tell whether it is being
43646bea0e4fSmrg      # built for inclusion in a dll (and should export symbols for example).
43656bea0e4fSmrg      # Although the cygwin gcc ignores -fPIC, still need this for old-style
43666bea0e4fSmrg      # (--disable-auto-import) libraries
43676bea0e4fSmrg      m4_if([$1], [GCJ], [],
43686bea0e4fSmrg	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
43696bea0e4fSmrg      case $host_os in
43706bea0e4fSmrg      os2*)
43716bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
43726bea0e4fSmrg	;;
43736bea0e4fSmrg      esac
43746bea0e4fSmrg      ;;
43756bea0e4fSmrg    darwin* | rhapsody*)
43766bea0e4fSmrg      # PIC is the default on this platform
43776bea0e4fSmrg      # Common symbols not allowed in MH_DYLIB files
43786bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
43796bea0e4fSmrg      ;;
43806bea0e4fSmrg    *djgpp*)
43816bea0e4fSmrg      # DJGPP does not support shared libraries at all
43826bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)=
43836bea0e4fSmrg      ;;
43846bea0e4fSmrg    haiku*)
43856bea0e4fSmrg      # PIC is the default for Haiku.
43866bea0e4fSmrg      # The "-static" flag exists, but is broken.
43876bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)=
43886bea0e4fSmrg      ;;
43896bea0e4fSmrg    interix[[3-9]]*)
43906bea0e4fSmrg      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
43916bea0e4fSmrg      # Instead, we relocate shared libraries at runtime.
43926bea0e4fSmrg      ;;
43936bea0e4fSmrg    sysv4*MP*)
43946bea0e4fSmrg      if test -d /usr/nec; then
43956bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
43966bea0e4fSmrg      fi
43976bea0e4fSmrg      ;;
43986bea0e4fSmrg    hpux*)
43996bea0e4fSmrg      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
44006bea0e4fSmrg      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
44016bea0e4fSmrg      # sets the default TLS model and affects inlining.
44026bea0e4fSmrg      case $host_cpu in
44036bea0e4fSmrg      hppa*64*)
44046bea0e4fSmrg	;;
44056bea0e4fSmrg      *)
44066bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
44076bea0e4fSmrg	;;
44086bea0e4fSmrg      esac
44096bea0e4fSmrg      ;;
44106bea0e4fSmrg    *qnx* | *nto*)
44116bea0e4fSmrg      # QNX uses GNU C++, but need to define -shared option too, otherwise
44126bea0e4fSmrg      # it will coredump.
44136bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
44146bea0e4fSmrg      ;;
44156bea0e4fSmrg    *)
44166bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
44176bea0e4fSmrg      ;;
44186bea0e4fSmrg    esac
44196bea0e4fSmrg  else
44206bea0e4fSmrg    case $host_os in
44216bea0e4fSmrg      aix[[4-9]]*)
44226bea0e4fSmrg	# All AIX code is PIC.
44236bea0e4fSmrg	if test ia64 = "$host_cpu"; then
44246bea0e4fSmrg	  # AIX 5 now supports IA64 processor
44256bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
44266bea0e4fSmrg	else
44276bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
44286bea0e4fSmrg	fi
44296bea0e4fSmrg	;;
44306bea0e4fSmrg      chorus*)
44316bea0e4fSmrg	case $cc_basename in
44326bea0e4fSmrg	cxch68*)
44336bea0e4fSmrg	  # Green Hills C++ Compiler
44346bea0e4fSmrg	  # _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"
44356bea0e4fSmrg	  ;;
44366bea0e4fSmrg	esac
44376bea0e4fSmrg	;;
44386bea0e4fSmrg      mingw* | windows* | cygwin* | os2* | pw32* | cegcc*)
44396bea0e4fSmrg	# This hack is so that the source file can tell whether it is being
44406bea0e4fSmrg	# built for inclusion in a dll (and should export symbols for example).
44416bea0e4fSmrg	m4_if([$1], [GCJ], [],
44426bea0e4fSmrg	  [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
44436bea0e4fSmrg	;;
44446bea0e4fSmrg      dgux*)
44456bea0e4fSmrg	case $cc_basename in
44466bea0e4fSmrg	  ec++*)
44476bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
44486bea0e4fSmrg	    ;;
44496bea0e4fSmrg	  ghcx*)
44506bea0e4fSmrg	    # Green Hills C++ Compiler
44516bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
44526bea0e4fSmrg	    ;;
44536bea0e4fSmrg	  *)
44546bea0e4fSmrg	    ;;
44556bea0e4fSmrg	esac
44566bea0e4fSmrg	;;
44576bea0e4fSmrg      freebsd* | dragonfly* | midnightbsd*)
44586bea0e4fSmrg	# FreeBSD uses GNU C++
44596bea0e4fSmrg	;;
44606bea0e4fSmrg      hpux9* | hpux10* | hpux11*)
44616bea0e4fSmrg	case $cc_basename in
44626bea0e4fSmrg	  CC*)
44636bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
44646bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
44656bea0e4fSmrg	    if test ia64 != "$host_cpu"; then
44666bea0e4fSmrg	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
44676bea0e4fSmrg	    fi
44686bea0e4fSmrg	    ;;
44696bea0e4fSmrg	  aCC*)
44706bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
44716bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
44726bea0e4fSmrg	    case $host_cpu in
44736bea0e4fSmrg	    hppa*64*|ia64*)
44746bea0e4fSmrg	      # +Z the default
44756bea0e4fSmrg	      ;;
44766bea0e4fSmrg	    *)
44776bea0e4fSmrg	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
44786bea0e4fSmrg	      ;;
44796bea0e4fSmrg	    esac
44806bea0e4fSmrg	    ;;
44816bea0e4fSmrg	  *)
44826bea0e4fSmrg	    ;;
44836bea0e4fSmrg	esac
44846bea0e4fSmrg	;;
44856bea0e4fSmrg      interix*)
44866bea0e4fSmrg	# This is c89, which is MS Visual C++ (no shared libs)
44876bea0e4fSmrg	# Anyone wants to do a port?
44886bea0e4fSmrg	;;
44896bea0e4fSmrg      irix5* | irix6* | nonstopux*)
44906bea0e4fSmrg	case $cc_basename in
44916bea0e4fSmrg	  CC*)
44926bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
44936bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
44946bea0e4fSmrg	    # CC pic flag -KPIC is the default.
44956bea0e4fSmrg	    ;;
44966bea0e4fSmrg	  *)
44976bea0e4fSmrg	    ;;
44986bea0e4fSmrg	esac
44996bea0e4fSmrg	;;
45006bea0e4fSmrg      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
45016bea0e4fSmrg	case $cc_basename in
45026bea0e4fSmrg	  KCC*)
45036bea0e4fSmrg	    # KAI C++ Compiler
45046bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
45056bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
45066bea0e4fSmrg	    ;;
45076bea0e4fSmrg	  ecpc* )
45086bea0e4fSmrg	    # old Intel C++ for x86_64, which still supported -KPIC.
45096bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
45106bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
45116bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
45126bea0e4fSmrg	    ;;
45136bea0e4fSmrg	  icpc* )
45146bea0e4fSmrg	    # Intel C++, used to be incompatible with GCC.
45156bea0e4fSmrg	    # ICC 10 doesn't accept -KPIC any more.
45166bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
45176bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
45186bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
45196bea0e4fSmrg	    ;;
45206bea0e4fSmrg	  pgCC* | pgcpp*)
45216bea0e4fSmrg	    # Portland Group C++ compiler
45226bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
45236bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
45246bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
45256bea0e4fSmrg	    ;;
45266bea0e4fSmrg	  cxx*)
45276bea0e4fSmrg	    # Compaq C++
45286bea0e4fSmrg	    # Make sure the PIC flag is empty.  It appears that all Alpha
45296bea0e4fSmrg	    # Linux and Compaq Tru64 Unix objects are PIC.
45306bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
45316bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
45326bea0e4fSmrg	    ;;
45336bea0e4fSmrg	  xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
45346bea0e4fSmrg	    # IBM XL 8.0, 9.0 on PPC and BlueGene
45356bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
45366bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
45376bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
45386bea0e4fSmrg	    ;;
45396bea0e4fSmrg	  *)
45406bea0e4fSmrg	    case `$CC -V 2>&1 | $SED 5q` in
45416bea0e4fSmrg	    *Sun\ C*)
45426bea0e4fSmrg	      # Sun C++ 5.9
45436bea0e4fSmrg	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
45446bea0e4fSmrg	      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
45456bea0e4fSmrg	      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
45466bea0e4fSmrg	      ;;
45476bea0e4fSmrg	    esac
45486bea0e4fSmrg	    ;;
45496bea0e4fSmrg	esac
45506bea0e4fSmrg	;;
45516bea0e4fSmrg      lynxos*)
45526bea0e4fSmrg	;;
45536bea0e4fSmrg      m88k*)
45546bea0e4fSmrg	;;
45556bea0e4fSmrg      mvs*)
45566bea0e4fSmrg	case $cc_basename in
45576bea0e4fSmrg	  cxx*)
45586bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
45596bea0e4fSmrg	    ;;
45606bea0e4fSmrg	  *)
45616bea0e4fSmrg	    ;;
45626bea0e4fSmrg	esac
45636bea0e4fSmrg	;;
45646bea0e4fSmrg      netbsd* | netbsdelf*-gnu)
45656bea0e4fSmrg	;;
45666bea0e4fSmrg      *-mlibc)
45676bea0e4fSmrg	;;
45686bea0e4fSmrg      *qnx* | *nto*)
45696bea0e4fSmrg        # QNX uses GNU C++, but need to define -shared option too, otherwise
45706bea0e4fSmrg        # it will coredump.
45716bea0e4fSmrg        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
45726bea0e4fSmrg        ;;
45736bea0e4fSmrg      osf3* | osf4* | osf5*)
45746bea0e4fSmrg	case $cc_basename in
45756bea0e4fSmrg	  KCC*)
45766bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
45776bea0e4fSmrg	    ;;
45786bea0e4fSmrg	  RCC*)
45796bea0e4fSmrg	    # Rational C++ 2.4.1
45806bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
45816bea0e4fSmrg	    ;;
45826bea0e4fSmrg	  cxx*)
45836bea0e4fSmrg	    # Digital/Compaq C++
45846bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
45856bea0e4fSmrg	    # Make sure the PIC flag is empty.  It appears that all Alpha
45866bea0e4fSmrg	    # Linux and Compaq Tru64 Unix objects are PIC.
45876bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
45886bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
45896bea0e4fSmrg	    ;;
45906bea0e4fSmrg	  *)
45916bea0e4fSmrg	    ;;
45926bea0e4fSmrg	esac
45936bea0e4fSmrg	;;
45946bea0e4fSmrg      psos*)
45956bea0e4fSmrg	;;
45966bea0e4fSmrg      serenity*)
45976bea0e4fSmrg        ;;
45986bea0e4fSmrg      solaris*)
45996bea0e4fSmrg	case $cc_basename in
46006bea0e4fSmrg	  CC* | sunCC*)
46016bea0e4fSmrg	    # Sun C++ 4.2, 5.x and Centerline C++
46026bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
46036bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
46046bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
46056bea0e4fSmrg	    ;;
46066bea0e4fSmrg	  gcx*)
46076bea0e4fSmrg	    # Green Hills C++ Compiler
46086bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
46096bea0e4fSmrg	    ;;
46106bea0e4fSmrg	  *)
46116bea0e4fSmrg	    ;;
46126bea0e4fSmrg	esac
46136bea0e4fSmrg	;;
46146bea0e4fSmrg      sunos4*)
46156bea0e4fSmrg	case $cc_basename in
46166bea0e4fSmrg	  CC*)
46176bea0e4fSmrg	    # Sun C++ 4.x
46186bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
46196bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
46206bea0e4fSmrg	    ;;
46216bea0e4fSmrg	  lcc*)
46226bea0e4fSmrg	    # Lucid
46236bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
46246bea0e4fSmrg	    ;;
46256bea0e4fSmrg	  *)
46266bea0e4fSmrg	    ;;
46276bea0e4fSmrg	esac
46286bea0e4fSmrg	;;
46296bea0e4fSmrg      sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
46306bea0e4fSmrg	case $cc_basename in
46316bea0e4fSmrg	  CC*)
46326bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
46336bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
46346bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
46356bea0e4fSmrg	    ;;
46366bea0e4fSmrg	esac
46376bea0e4fSmrg	;;
46386bea0e4fSmrg      tandem*)
46396bea0e4fSmrg	case $cc_basename in
46406bea0e4fSmrg	  NCC*)
46416bea0e4fSmrg	    # NonStop-UX NCC 3.20
46426bea0e4fSmrg	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
46436bea0e4fSmrg	    ;;
46446bea0e4fSmrg	  *)
46456bea0e4fSmrg	    ;;
46466bea0e4fSmrg	esac
46476bea0e4fSmrg	;;
46486bea0e4fSmrg      vxworks*)
46496bea0e4fSmrg	;;
46506bea0e4fSmrg      *)
46516bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
46526bea0e4fSmrg	;;
46536bea0e4fSmrg    esac
46546bea0e4fSmrg  fi
46556bea0e4fSmrg],
46566bea0e4fSmrg[
46576bea0e4fSmrg  if test yes = "$GCC"; then
46586bea0e4fSmrg    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
46596bea0e4fSmrg    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
46606bea0e4fSmrg
46616bea0e4fSmrg    case $host_os in
46626bea0e4fSmrg      aix*)
46636bea0e4fSmrg      # All AIX code is PIC.
46646bea0e4fSmrg      if test ia64 = "$host_cpu"; then
46656bea0e4fSmrg	# AIX 5 now supports IA64 processor
46666bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
46676bea0e4fSmrg      fi
46686bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
46696bea0e4fSmrg      ;;
46706bea0e4fSmrg
46716bea0e4fSmrg    amigaos*)
46726bea0e4fSmrg      case $host_cpu in
46736bea0e4fSmrg      powerpc)
46746bea0e4fSmrg            # see comment about AmigaOS4 .so support
46756bea0e4fSmrg            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
46766bea0e4fSmrg        ;;
46776bea0e4fSmrg      m68k)
46786bea0e4fSmrg            # FIXME: we need at least 68020 code to build shared libraries, but
46796bea0e4fSmrg            # adding the '-m68020' flag to GCC prevents building anything better,
46806bea0e4fSmrg            # like '-m68040'.
46816bea0e4fSmrg            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
46826bea0e4fSmrg        ;;
46836bea0e4fSmrg      esac
46846bea0e4fSmrg      ;;
46856bea0e4fSmrg
46866bea0e4fSmrg    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
46876bea0e4fSmrg      # PIC is the default for these OSes.
46886bea0e4fSmrg      ;;
46896bea0e4fSmrg
46906bea0e4fSmrg    mingw* | windows* | cygwin* | pw32* | os2* | cegcc*)
46916bea0e4fSmrg      # This hack is so that the source file can tell whether it is being
46926bea0e4fSmrg      # built for inclusion in a dll (and should export symbols for example).
46936bea0e4fSmrg      # Although the cygwin gcc ignores -fPIC, still need this for old-style
46946bea0e4fSmrg      # (--disable-auto-import) libraries
46956bea0e4fSmrg      m4_if([$1], [GCJ], [],
46966bea0e4fSmrg	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
46976bea0e4fSmrg      case $host_os in
46986bea0e4fSmrg      os2*)
46996bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
47006bea0e4fSmrg	;;
47016bea0e4fSmrg      esac
47026bea0e4fSmrg      ;;
47036bea0e4fSmrg
47046bea0e4fSmrg    darwin* | rhapsody*)
47056bea0e4fSmrg      # PIC is the default on this platform
47066bea0e4fSmrg      # Common symbols not allowed in MH_DYLIB files
47076bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
47086bea0e4fSmrg      ;;
47096bea0e4fSmrg
47106bea0e4fSmrg    haiku*)
47116bea0e4fSmrg      # PIC is the default for Haiku.
47126bea0e4fSmrg      # The "-static" flag exists, but is broken.
47136bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)=
47146bea0e4fSmrg      ;;
47156bea0e4fSmrg
47166bea0e4fSmrg    hpux*)
47176bea0e4fSmrg      # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
47186bea0e4fSmrg      # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
47196bea0e4fSmrg      # sets the default TLS model and affects inlining.
47206bea0e4fSmrg      case $host_cpu in
47216bea0e4fSmrg      hppa*64*)
47226bea0e4fSmrg	# +Z the default
47236bea0e4fSmrg	;;
47246bea0e4fSmrg      *)
47256bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
47266bea0e4fSmrg	;;
47276bea0e4fSmrg      esac
47286bea0e4fSmrg      ;;
47296bea0e4fSmrg
47306bea0e4fSmrg    interix[[3-9]]*)
47316bea0e4fSmrg      # Interix 3.x gcc -fpic/-fPIC options generate broken code.
47326bea0e4fSmrg      # Instead, we relocate shared libraries at runtime.
47336bea0e4fSmrg      ;;
47346bea0e4fSmrg
47356bea0e4fSmrg    msdosdjgpp*)
47366bea0e4fSmrg      # Just because we use GCC doesn't mean we suddenly get shared libraries
47376bea0e4fSmrg      # on systems that don't support them.
47386bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
47396bea0e4fSmrg      enable_shared=no
47406bea0e4fSmrg      ;;
47416bea0e4fSmrg
47426bea0e4fSmrg    *nto* | *qnx*)
47436bea0e4fSmrg      # QNX uses GNU C++, but need to define -shared option too, otherwise
47446bea0e4fSmrg      # it will coredump.
47456bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
47466bea0e4fSmrg      ;;
47476bea0e4fSmrg
47486bea0e4fSmrg    sysv4*MP*)
47496bea0e4fSmrg      if test -d /usr/nec; then
47506bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
47516bea0e4fSmrg      fi
47526bea0e4fSmrg      ;;
47536bea0e4fSmrg
47546bea0e4fSmrg    *)
47556bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
47566bea0e4fSmrg      ;;
47576bea0e4fSmrg    esac
47586bea0e4fSmrg
47596bea0e4fSmrg    case $cc_basename in
47606bea0e4fSmrg    nvcc*) # Cuda Compiler Driver 2.2
47616bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
47626bea0e4fSmrg      if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
47636bea0e4fSmrg        _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
47646bea0e4fSmrg      fi
47656bea0e4fSmrg      ;;
47666bea0e4fSmrg    esac
47676bea0e4fSmrg  else
47686bea0e4fSmrg    # PORTME Check for flag to pass linker flags through the system compiler.
47696bea0e4fSmrg    case $host_os in
47706bea0e4fSmrg    aix*)
47716bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
47726bea0e4fSmrg      if test ia64 = "$host_cpu"; then
47736bea0e4fSmrg	# AIX 5 now supports IA64 processor
47746bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
47756bea0e4fSmrg      else
47766bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
47776bea0e4fSmrg      fi
47786bea0e4fSmrg      ;;
47796bea0e4fSmrg
47806bea0e4fSmrg    darwin* | rhapsody*)
47816bea0e4fSmrg      # PIC is the default on this platform
47826bea0e4fSmrg      # Common symbols not allowed in MH_DYLIB files
47836bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
47846bea0e4fSmrg      case $cc_basename in
47856bea0e4fSmrg      nagfor*)
47866bea0e4fSmrg        # NAG Fortran compiler
47876bea0e4fSmrg        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
47886bea0e4fSmrg        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
47896bea0e4fSmrg        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
47906bea0e4fSmrg        ;;
47916bea0e4fSmrg      esac
47926bea0e4fSmrg      ;;
47936bea0e4fSmrg
47946bea0e4fSmrg    mingw* | windows* | cygwin* | pw32* | os2* | cegcc*)
47956bea0e4fSmrg      # This hack is so that the source file can tell whether it is being
47966bea0e4fSmrg      # built for inclusion in a dll (and should export symbols for example).
47976bea0e4fSmrg      m4_if([$1], [GCJ], [],
47986bea0e4fSmrg	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
47996bea0e4fSmrg      case $host_os in
48006bea0e4fSmrg      os2*)
48016bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
48026bea0e4fSmrg	;;
48036bea0e4fSmrg      esac
48046bea0e4fSmrg      ;;
48056bea0e4fSmrg
48066bea0e4fSmrg    hpux9* | hpux10* | hpux11*)
48076bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48086bea0e4fSmrg      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
48096bea0e4fSmrg      # not for PA HP-UX.
48106bea0e4fSmrg      case $host_cpu in
48116bea0e4fSmrg      hppa*64*|ia64*)
48126bea0e4fSmrg	# +Z the default
48136bea0e4fSmrg	;;
48146bea0e4fSmrg      *)
48156bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
48166bea0e4fSmrg	;;
48176bea0e4fSmrg      esac
48186bea0e4fSmrg      # Is there a better lt_prog_compiler_static that works with the bundled CC?
48196bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
48206bea0e4fSmrg      ;;
48216bea0e4fSmrg
48226bea0e4fSmrg    irix5* | irix6* | nonstopux*)
48236bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48246bea0e4fSmrg      # PIC (with -KPIC) is the default.
48256bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
48266bea0e4fSmrg      ;;
48276bea0e4fSmrg
48286bea0e4fSmrg    linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
48296bea0e4fSmrg      case $cc_basename in
48306bea0e4fSmrg      # old Intel for x86_64, which still supported -KPIC.
48316bea0e4fSmrg      ecc*)
48326bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48336bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
48346bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
48356bea0e4fSmrg        ;;
48366bea0e4fSmrg      *flang* | ftn | f18* | f95*)
48376bea0e4fSmrg        # Flang compiler.
48386bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48396bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
48406bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
48416bea0e4fSmrg        ;;
48426bea0e4fSmrg      # icc used to be incompatible with GCC.
48436bea0e4fSmrg      # ICC 10 doesn't accept -KPIC any more.
48446bea0e4fSmrg      icc* | ifort*)
48456bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48466bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
48476bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
48486bea0e4fSmrg        ;;
48496bea0e4fSmrg      # Lahey Fortran 8.1.
48506bea0e4fSmrg      lf95*)
48516bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48526bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
48536bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
48546bea0e4fSmrg	;;
48556bea0e4fSmrg      nagfor*)
48566bea0e4fSmrg	# NAG Fortran compiler
48576bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
48586bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
48596bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
48606bea0e4fSmrg	;;
48616bea0e4fSmrg      tcc*)
48626bea0e4fSmrg	# Fabrice Bellard et al's Tiny C Compiler
48636bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48646bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
48656bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
48666bea0e4fSmrg	;;
48676bea0e4fSmrg      pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
48686bea0e4fSmrg        # Portland Group compilers (*not* the Pentium gcc compiler,
48696bea0e4fSmrg	# which looks to be a dead project)
48706bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48716bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
48726bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
48736bea0e4fSmrg        ;;
48746bea0e4fSmrg      ccc*)
48756bea0e4fSmrg        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48766bea0e4fSmrg        # All Alpha code is PIC.
48776bea0e4fSmrg        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
48786bea0e4fSmrg        ;;
48796bea0e4fSmrg      xl* | bgxl* | bgf* | mpixl*)
48806bea0e4fSmrg	# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
48816bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
48826bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
48836bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
48846bea0e4fSmrg	;;
48856bea0e4fSmrg      *)
48866bea0e4fSmrg	case `$CC -V 2>&1 | $SED 5q` in
48876bea0e4fSmrg	*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
48886bea0e4fSmrg	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
48896bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
48906bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
48916bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
48926bea0e4fSmrg	  ;;
48936bea0e4fSmrg	*Sun\ F* | *Sun*Fortran*)
48946bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
48956bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
48966bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
48976bea0e4fSmrg	  ;;
48986bea0e4fSmrg	*Sun\ C*)
48996bea0e4fSmrg	  # Sun C 5.9
49006bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
49016bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49026bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
49036bea0e4fSmrg	  ;;
49046bea0e4fSmrg        *Intel*\ [[CF]]*Compiler*)
49056bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
49066bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
49076bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
49086bea0e4fSmrg	  ;;
49096bea0e4fSmrg	*Portland\ Group*)
49106bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
49116bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
49126bea0e4fSmrg	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49136bea0e4fSmrg	  ;;
49146bea0e4fSmrg	esac
49156bea0e4fSmrg	;;
49166bea0e4fSmrg      esac
49176bea0e4fSmrg      ;;
49186bea0e4fSmrg
49196bea0e4fSmrg    newsos6)
49206bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
49216bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49226bea0e4fSmrg      ;;
49236bea0e4fSmrg
49246bea0e4fSmrg    *-mlibc)
49256bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
49266bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
49276bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
49286bea0e4fSmrg      ;;
49296bea0e4fSmrg
49306bea0e4fSmrg    *nto* | *qnx*)
49316bea0e4fSmrg      # QNX uses GNU C++, but need to define -shared option too, otherwise
49326bea0e4fSmrg      # it will coredump.
49336bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
49346bea0e4fSmrg      ;;
49356bea0e4fSmrg
49366bea0e4fSmrg    osf3* | osf4* | osf5*)
49376bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
49386bea0e4fSmrg      # All OSF/1 code is PIC.
49396bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
49406bea0e4fSmrg      ;;
49416bea0e4fSmrg
49426bea0e4fSmrg    rdos*)
49436bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
49446bea0e4fSmrg      ;;
49456bea0e4fSmrg
49466bea0e4fSmrg    serenity*)
49476bea0e4fSmrg      ;;
49486bea0e4fSmrg
49496bea0e4fSmrg    solaris*)
49506bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
49516bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49526bea0e4fSmrg      case $cc_basename in
49536bea0e4fSmrg      f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
49546bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
49556bea0e4fSmrg      *)
49566bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
49576bea0e4fSmrg      esac
49586bea0e4fSmrg      ;;
49596bea0e4fSmrg
49606bea0e4fSmrg    sunos4*)
49616bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
49626bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
49636bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49646bea0e4fSmrg      ;;
49656bea0e4fSmrg
49666bea0e4fSmrg    sysv4 | sysv4.2uw2* | sysv4.3*)
49676bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
49686bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
49696bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49706bea0e4fSmrg      ;;
49716bea0e4fSmrg
49726bea0e4fSmrg    sysv4*MP*)
49736bea0e4fSmrg      if test -d /usr/nec; then
49746bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
49756bea0e4fSmrg	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49766bea0e4fSmrg      fi
49776bea0e4fSmrg      ;;
49786bea0e4fSmrg
49796bea0e4fSmrg    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
49806bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
49816bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
49826bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49836bea0e4fSmrg      ;;
49846bea0e4fSmrg
49856bea0e4fSmrg    unicos*)
49866bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
49876bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
49886bea0e4fSmrg      ;;
49896bea0e4fSmrg
49906bea0e4fSmrg    uts4*)
49916bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
49926bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
49936bea0e4fSmrg      ;;
49946bea0e4fSmrg
49956bea0e4fSmrg    *)
49966bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
49976bea0e4fSmrg      ;;
49986bea0e4fSmrg    esac
49996bea0e4fSmrg  fi
50006bea0e4fSmrg])
50016bea0e4fSmrgcase $host_os in
50026bea0e4fSmrg  # For platforms that do not support PIC, -DPIC is meaningless:
50036bea0e4fSmrg  *djgpp*)
50046bea0e4fSmrg    _LT_TAGVAR(lt_prog_compiler_pic, $1)=
50056bea0e4fSmrg    ;;
50066bea0e4fSmrg  *)
50076bea0e4fSmrg    _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
50086bea0e4fSmrg    ;;
50096bea0e4fSmrgesac
50106bea0e4fSmrg
50116bea0e4fSmrgAC_CACHE_CHECK([for $compiler option to produce PIC],
50126bea0e4fSmrg  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
50136bea0e4fSmrg  [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
50146bea0e4fSmrg_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
50156bea0e4fSmrg
50166bea0e4fSmrg#
50176bea0e4fSmrg# Check to make sure the PIC flag actually works.
50186bea0e4fSmrg#
50196bea0e4fSmrgif test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
50206bea0e4fSmrg  _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
50216bea0e4fSmrg    [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
50226bea0e4fSmrg    [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
50236bea0e4fSmrg    [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
50246bea0e4fSmrg     "" | " "*) ;;
50256bea0e4fSmrg     *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
50266bea0e4fSmrg     esac],
50276bea0e4fSmrg    [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
50286bea0e4fSmrg     _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
50296bea0e4fSmrgfi
50306bea0e4fSmrg_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
50316bea0e4fSmrg	[Additional compiler flags for building library objects])
50326bea0e4fSmrg
50336bea0e4fSmrg_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
50346bea0e4fSmrg	[How to pass a linker flag through the compiler])
50356bea0e4fSmrg#
50366bea0e4fSmrg# Check to make sure the static flag actually works.
50376bea0e4fSmrg#
50386bea0e4fSmrgwl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
50396bea0e4fSmrg_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
50406bea0e4fSmrg  _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
50416bea0e4fSmrg  $lt_tmp_static_flag,
50426bea0e4fSmrg  [],
50436bea0e4fSmrg  [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
50446bea0e4fSmrg_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
50456bea0e4fSmrg	[Compiler flag to prevent dynamic linking])
50466bea0e4fSmrg])# _LT_COMPILER_PIC
50476bea0e4fSmrg
50486bea0e4fSmrg
50496bea0e4fSmrg# _LT_LINKER_SHLIBS([TAGNAME])
50506bea0e4fSmrg# ----------------------------
50516bea0e4fSmrg# See if the linker supports building shared libraries.
50526bea0e4fSmrgm4_defun([_LT_LINKER_SHLIBS],
50536bea0e4fSmrg[AC_REQUIRE([LT_PATH_LD])dnl
50546bea0e4fSmrgAC_REQUIRE([LT_PATH_NM])dnl
50556bea0e4fSmrgm4_require([_LT_PATH_MANIFEST_TOOL])dnl
50566bea0e4fSmrgm4_require([_LT_FILEUTILS_DEFAULTS])dnl
50576bea0e4fSmrgm4_require([_LT_DECL_EGREP])dnl
50586bea0e4fSmrgm4_require([_LT_DECL_SED])dnl
50596bea0e4fSmrgm4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
50606bea0e4fSmrgm4_require([_LT_TAG_COMPILER])dnl
50616bea0e4fSmrgAC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
50626bea0e4fSmrgm4_if([$1], [CXX], [
50636bea0e4fSmrg  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
50646bea0e4fSmrg  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
50656bea0e4fSmrg  case $host_os in
50666bea0e4fSmrg  aix[[4-9]]*)
50676bea0e4fSmrg    # If we're using GNU nm, then we don't want the "-C" option.
50686bea0e4fSmrg    # -C means demangle to GNU nm, but means don't demangle to AIX nm.
50696bea0e4fSmrg    # Without the "-l" option, or with the "-B" option, AIX nm treats
50706bea0e4fSmrg    # weak defined symbols like other global defined symbols, whereas
50716bea0e4fSmrg    # GNU nm marks them as "W".
50726bea0e4fSmrg    # While the 'weak' keyword is ignored in the Export File, we need
50736bea0e4fSmrg    # it in the Import File for the 'aix-soname' feature, so we have
50746bea0e4fSmrg    # to replace the "-B" option with "-P" for AIX nm.
50756bea0e4fSmrg    if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
50766bea0e4fSmrg      _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'
50776bea0e4fSmrg    else
50786bea0e4fSmrg      _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'
50796bea0e4fSmrg    fi
50806bea0e4fSmrg    ;;
50816bea0e4fSmrg  pw32*)
50826bea0e4fSmrg    _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
50836bea0e4fSmrg    ;;
50846bea0e4fSmrg  cygwin* | mingw* | windows* | cegcc*)
50856bea0e4fSmrg    case $cc_basename in
50866bea0e4fSmrg    cl* | icl*)
50876bea0e4fSmrg      _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
50886bea0e4fSmrg      ;;
50896bea0e4fSmrg    *)
50906bea0e4fSmrg      _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'
50916bea0e4fSmrg      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
50926bea0e4fSmrg      ;;
50936bea0e4fSmrg    esac
50946bea0e4fSmrg    ;;
50956bea0e4fSmrg  *)
50966bea0e4fSmrg    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
50976bea0e4fSmrg    ;;
50986bea0e4fSmrg  esac
50996bea0e4fSmrg], [
51006bea0e4fSmrg  runpath_var=
51016bea0e4fSmrg  _LT_TAGVAR(allow_undefined_flag, $1)=
51026bea0e4fSmrg  _LT_TAGVAR(always_export_symbols, $1)=no
51036bea0e4fSmrg  _LT_TAGVAR(archive_cmds, $1)=
51046bea0e4fSmrg  _LT_TAGVAR(archive_expsym_cmds, $1)=
51056bea0e4fSmrg  _LT_TAGVAR(compiler_needs_object, $1)=no
51066bea0e4fSmrg  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
51076bea0e4fSmrg  _LT_TAGVAR(export_dynamic_flag_spec, $1)=
51086bea0e4fSmrg  _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
51096bea0e4fSmrg  _LT_TAGVAR(hardcode_automatic, $1)=no
51106bea0e4fSmrg  _LT_TAGVAR(hardcode_direct, $1)=no
51116bea0e4fSmrg  _LT_TAGVAR(hardcode_direct_absolute, $1)=no
51126bea0e4fSmrg  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
51136bea0e4fSmrg  _LT_TAGVAR(hardcode_libdir_separator, $1)=
51146bea0e4fSmrg  _LT_TAGVAR(hardcode_minus_L, $1)=no
51156bea0e4fSmrg  _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
51166bea0e4fSmrg  _LT_TAGVAR(inherit_rpath, $1)=no
51176bea0e4fSmrg  _LT_TAGVAR(link_all_deplibs, $1)=unknown
51186bea0e4fSmrg  _LT_TAGVAR(module_cmds, $1)=
51196bea0e4fSmrg  _LT_TAGVAR(module_expsym_cmds, $1)=
51206bea0e4fSmrg  _LT_TAGVAR(old_archive_from_new_cmds, $1)=
51216bea0e4fSmrg  _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
51226bea0e4fSmrg  _LT_TAGVAR(thread_safe_flag_spec, $1)=
51236bea0e4fSmrg  _LT_TAGVAR(whole_archive_flag_spec, $1)=
51246bea0e4fSmrg  # include_expsyms should be a list of space-separated symbols to be *always*
51256bea0e4fSmrg  # included in the symbol list
51266bea0e4fSmrg  _LT_TAGVAR(include_expsyms, $1)=
51276bea0e4fSmrg  # exclude_expsyms can be an extended regexp of symbols to exclude
51286bea0e4fSmrg  # it will be wrapped by ' (' and ')$', so one must not match beginning or
51296bea0e4fSmrg  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
51306bea0e4fSmrg  # as well as any symbol that contains 'd'.
51316bea0e4fSmrg  _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
51326bea0e4fSmrg  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
51336bea0e4fSmrg  # platforms (ab)use it in PIC code, but their linkers get confused if
51346bea0e4fSmrg  # the symbol is explicitly referenced.  Since portable code cannot
51356bea0e4fSmrg  # rely on this symbol name, it's probably fine to never include it in
51366bea0e4fSmrg  # preloaded symbol tables.
51376bea0e4fSmrg  # Exclude shared library initialization/finalization symbols.
51386bea0e4fSmrgdnl Note also adjust exclude_expsyms for C++ above.
51396bea0e4fSmrg  extract_expsyms_cmds=
51406bea0e4fSmrg
51416bea0e4fSmrg  case $host_os in
51426bea0e4fSmrg  cygwin* | mingw* | windows* | pw32* | cegcc*)
51436bea0e4fSmrg    # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time
51446bea0e4fSmrg    # When not using gcc, we currently assume that we are using
51456bea0e4fSmrg    # Microsoft Visual C++ or Intel C++ Compiler.
51466bea0e4fSmrg    if test yes != "$GCC"; then
51476bea0e4fSmrg      with_gnu_ld=no
51486bea0e4fSmrg    fi
51496bea0e4fSmrg    ;;
51506bea0e4fSmrg  interix*)
51516bea0e4fSmrg    # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)
51526bea0e4fSmrg    with_gnu_ld=yes
51536bea0e4fSmrg    ;;
51546bea0e4fSmrg  esac
51556bea0e4fSmrg
51566bea0e4fSmrg  _LT_TAGVAR(ld_shlibs, $1)=yes
51576bea0e4fSmrg
51586bea0e4fSmrg  # On some targets, GNU ld is compatible enough with the native linker
51596bea0e4fSmrg  # that we're better off using the native interface for both.
51606bea0e4fSmrg  lt_use_gnu_ld_interface=no
51616bea0e4fSmrg  if test yes = "$with_gnu_ld"; then
51626bea0e4fSmrg    case $host_os in
51636bea0e4fSmrg      aix*)
51646bea0e4fSmrg	# The AIX port of GNU ld has always aspired to compatibility
51656bea0e4fSmrg	# with the native linker.  However, as the warning in the GNU ld
51666bea0e4fSmrg	# block says, versions before 2.19.5* couldn't really create working
51676bea0e4fSmrg	# shared libraries, regardless of the interface used.
51686bea0e4fSmrg	case `$LD -v 2>&1` in
51696bea0e4fSmrg	  *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
51706bea0e4fSmrg	  *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
51716bea0e4fSmrg	  *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
51726bea0e4fSmrg	  *)
51736bea0e4fSmrg	    lt_use_gnu_ld_interface=yes
51746bea0e4fSmrg	    ;;
51756bea0e4fSmrg	esac
51766bea0e4fSmrg	;;
51776bea0e4fSmrg      *)
51786bea0e4fSmrg	lt_use_gnu_ld_interface=yes
51796bea0e4fSmrg	;;
51806bea0e4fSmrg    esac
51816bea0e4fSmrg  fi
51826bea0e4fSmrg
51836bea0e4fSmrg  if test yes = "$lt_use_gnu_ld_interface"; then
51846bea0e4fSmrg    # If archive_cmds runs LD, not CC, wlarc should be empty
51856bea0e4fSmrg    wlarc='$wl'
51866bea0e4fSmrg
51876bea0e4fSmrg    # Set some defaults for GNU ld with shared library support. These
51886bea0e4fSmrg    # are reset later if shared libraries are not supported. Putting them
51896bea0e4fSmrg    # here allows them to be overridden if necessary.
51906bea0e4fSmrg    runpath_var=LD_RUN_PATH
51916bea0e4fSmrg    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
51926bea0e4fSmrg    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
51936bea0e4fSmrg    # ancient GNU ld didn't support --whole-archive et. al.
51946bea0e4fSmrg    if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
51956bea0e4fSmrg      _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
51966bea0e4fSmrg    else
51976bea0e4fSmrg      _LT_TAGVAR(whole_archive_flag_spec, $1)=
51986bea0e4fSmrg    fi
51996bea0e4fSmrg    supports_anon_versioning=no
52006bea0e4fSmrg    case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in
52016bea0e4fSmrg      *GNU\ gold*) supports_anon_versioning=yes ;;
52026bea0e4fSmrg      *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
52036bea0e4fSmrg      *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
52046bea0e4fSmrg      *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
52056bea0e4fSmrg      *\ 2.11.*) ;; # other 2.11 versions
52066bea0e4fSmrg      *) supports_anon_versioning=yes ;;
52076bea0e4fSmrg    esac
52086bea0e4fSmrg
52096bea0e4fSmrg    # See if GNU ld supports shared libraries.
52106bea0e4fSmrg    case $host_os in
52116bea0e4fSmrg    aix[[3-9]]*)
52126bea0e4fSmrg      # On AIX/PPC, the GNU linker is very broken
52136bea0e4fSmrg      if test ia64 != "$host_cpu"; then
52146bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
52156bea0e4fSmrg	cat <<_LT_EOF 1>&2
52166bea0e4fSmrg
52176bea0e4fSmrg*** Warning: the GNU linker, at least up to release 2.19, is reported
52186bea0e4fSmrg*** to be unable to reliably create shared libraries on AIX.
52196bea0e4fSmrg*** Therefore, libtool is disabling shared libraries support.  If you
52206bea0e4fSmrg*** really care for shared libraries, you may want to install binutils
52216bea0e4fSmrg*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
52226bea0e4fSmrg*** You will then need to restart the configuration process.
52236bea0e4fSmrg
52246bea0e4fSmrg_LT_EOF
52256bea0e4fSmrg      fi
52266bea0e4fSmrg      ;;
52276bea0e4fSmrg
52286bea0e4fSmrg    amigaos*)
52296bea0e4fSmrg      case $host_cpu in
52306bea0e4fSmrg      powerpc)
52316bea0e4fSmrg            # see comment about AmigaOS4 .so support
52326bea0e4fSmrg            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
52336bea0e4fSmrg            _LT_TAGVAR(archive_expsym_cmds, $1)=''
52346bea0e4fSmrg        ;;
52356bea0e4fSmrg      m68k)
52366bea0e4fSmrg            _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)'
52376bea0e4fSmrg            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
52386bea0e4fSmrg            _LT_TAGVAR(hardcode_minus_L, $1)=yes
52396bea0e4fSmrg        ;;
52406bea0e4fSmrg      esac
52416bea0e4fSmrg      ;;
52426bea0e4fSmrg
52436bea0e4fSmrg    beos*)
52446bea0e4fSmrg      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
52456bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
52466bea0e4fSmrg	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
52476bea0e4fSmrg	# support --undefined.  This deserves some investigation.  FIXME
52486bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
52496bea0e4fSmrg      else
52506bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
52516bea0e4fSmrg      fi
52526bea0e4fSmrg      ;;
52536bea0e4fSmrg
52546bea0e4fSmrg    cygwin* | mingw* | windows* | pw32* | cegcc*)
52556bea0e4fSmrg      # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
52566bea0e4fSmrg      # as there is no search path for DLLs.
52576bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
52586bea0e4fSmrg      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
52596bea0e4fSmrg      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
52606bea0e4fSmrg      _LT_TAGVAR(always_export_symbols, $1)=no
52616bea0e4fSmrg      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
52626bea0e4fSmrg      _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'
52636bea0e4fSmrg      _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
52646bea0e4fSmrg      _LT_TAGVAR(file_list_spec, $1)='@'
52656bea0e4fSmrg
52666bea0e4fSmrg      if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
52676bea0e4fSmrg        _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'
52686bea0e4fSmrg	# If the export-symbols file already is a .def file, use it as
52696bea0e4fSmrg	# is; otherwise, prepend EXPORTS...
52706bea0e4fSmrg	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
52716bea0e4fSmrg          cp $export_symbols $output_objdir/$soname.def;
52726bea0e4fSmrg        else
52736bea0e4fSmrg          echo EXPORTS > $output_objdir/$soname.def;
52746bea0e4fSmrg          cat $export_symbols >> $output_objdir/$soname.def;
52756bea0e4fSmrg        fi~
52766bea0e4fSmrg        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
52776bea0e4fSmrg      else
52786bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
52796bea0e4fSmrg      fi
52806bea0e4fSmrg      ;;
52816bea0e4fSmrg
52826bea0e4fSmrg    haiku*)
52836bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
52846bea0e4fSmrg      _LT_TAGVAR(link_all_deplibs, $1)=no
52856bea0e4fSmrg      ;;
52866bea0e4fSmrg
52876bea0e4fSmrg    os2*)
52886bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
52896bea0e4fSmrg      _LT_TAGVAR(hardcode_minus_L, $1)=yes
52906bea0e4fSmrg      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
52916bea0e4fSmrg      shrext_cmds=.dll
52926bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
52936bea0e4fSmrg	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
52946bea0e4fSmrg	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
52956bea0e4fSmrg	$ECHO EXPORTS >> $output_objdir/$libname.def~
52966bea0e4fSmrg	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
52976bea0e4fSmrg	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
52986bea0e4fSmrg	emximp -o $lib $output_objdir/$libname.def'
52996bea0e4fSmrg      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
53006bea0e4fSmrg	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
53016bea0e4fSmrg	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
53026bea0e4fSmrg	$ECHO EXPORTS >> $output_objdir/$libname.def~
53036bea0e4fSmrg	prefix_cmds="$SED"~
53046bea0e4fSmrg	if test EXPORTS = "`$SED 1q $export_symbols`"; then
53056bea0e4fSmrg	  prefix_cmds="$prefix_cmds -e 1d";
53066bea0e4fSmrg	fi~
53076bea0e4fSmrg	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
53086bea0e4fSmrg	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
53096bea0e4fSmrg	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
53106bea0e4fSmrg	emximp -o $lib $output_objdir/$libname.def'
53116bea0e4fSmrg      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
53126bea0e4fSmrg      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
53136bea0e4fSmrg      _LT_TAGVAR(file_list_spec, $1)='@'
53146bea0e4fSmrg      ;;
53156bea0e4fSmrg
53166bea0e4fSmrg    interix[[3-9]]*)
53176bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=no
53186bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
53196bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
53206bea0e4fSmrg      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
53216bea0e4fSmrg      # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
53226bea0e4fSmrg      # Instead, shared libraries are loaded at an image base (0x10000000 by
53236bea0e4fSmrg      # default) and relocated if they conflict, which is a slow very memory
53246bea0e4fSmrg      # consuming and fragmenting process.  To avoid this, we pick a random,
53256bea0e4fSmrg      # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
53266bea0e4fSmrg      # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
53276bea0e4fSmrg      _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'
53286bea0e4fSmrg      _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'
53296bea0e4fSmrg      ;;
53306bea0e4fSmrg
53316bea0e4fSmrg    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
53326bea0e4fSmrg      tmp_diet=no
53336bea0e4fSmrg      if test linux-dietlibc = "$host_os"; then
53346bea0e4fSmrg	case $cc_basename in
53356bea0e4fSmrg	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
53366bea0e4fSmrg	esac
53376bea0e4fSmrg      fi
53386bea0e4fSmrg      if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
53396bea0e4fSmrg	 && test no = "$tmp_diet"
53406bea0e4fSmrg      then
53416bea0e4fSmrg	tmp_addflag=' $pic_flag'
53426bea0e4fSmrg	tmp_sharedflag='-shared'
53436bea0e4fSmrg	case $cc_basename,$host_cpu in
53446bea0e4fSmrg        pgcc*)				# Portland Group C compiler
53456bea0e4fSmrg	  _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'
53466bea0e4fSmrg	  tmp_addflag=' $pic_flag'
53476bea0e4fSmrg	  ;;
53486bea0e4fSmrg	pgf77* | pgf90* | pgf95* | pgfortran*)
53496bea0e4fSmrg					# Portland Group f77 and f90 compilers
53506bea0e4fSmrg	  _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'
53516bea0e4fSmrg	  tmp_addflag=' $pic_flag -Mnomain' ;;
53526bea0e4fSmrg	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
53536bea0e4fSmrg	  tmp_addflag=' -i_dynamic' ;;
53546bea0e4fSmrg	efc*,ia64* | ifort*,ia64*)	# Intel Fortran compiler on ia64
53556bea0e4fSmrg	  tmp_addflag=' -i_dynamic -nofor_main' ;;
53566bea0e4fSmrg	ifc* | ifort*)			# Intel Fortran compiler
53576bea0e4fSmrg	  tmp_addflag=' -nofor_main' ;;
53586bea0e4fSmrg	lf95*)				# Lahey Fortran 8.1
53596bea0e4fSmrg	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
53606bea0e4fSmrg	  tmp_sharedflag='--shared' ;;
53616bea0e4fSmrg        nagfor*)                        # NAGFOR 5.3
53626bea0e4fSmrg          tmp_sharedflag='-Wl,-shared' ;;
53636bea0e4fSmrg	xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
53646bea0e4fSmrg	  tmp_sharedflag='-qmkshrobj'
53656bea0e4fSmrg	  tmp_addflag= ;;
53666bea0e4fSmrg	nvcc*)	# Cuda Compiler Driver 2.2
53676bea0e4fSmrg	  _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'
53686bea0e4fSmrg	  _LT_TAGVAR(compiler_needs_object, $1)=yes
53696bea0e4fSmrg	  ;;
53706bea0e4fSmrg	esac
53716bea0e4fSmrg	case `$CC -V 2>&1 | $SED 5q` in
53726bea0e4fSmrg	*Sun\ C*)			# Sun C 5.9
53736bea0e4fSmrg	  _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'
53746bea0e4fSmrg	  _LT_TAGVAR(compiler_needs_object, $1)=yes
53756bea0e4fSmrg	  tmp_sharedflag='-G' ;;
53766bea0e4fSmrg	*Sun\ F*)			# Sun Fortran 8.3
53776bea0e4fSmrg	  tmp_sharedflag='-G' ;;
53786bea0e4fSmrg	esac
53796bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
53806bea0e4fSmrg
53816bea0e4fSmrg        if test yes = "$supports_anon_versioning"; then
53826bea0e4fSmrg          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
53836bea0e4fSmrg            cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
53846bea0e4fSmrg            echo "local: *; };" >> $output_objdir/$libname.ver~
53856bea0e4fSmrg            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
53866bea0e4fSmrg        fi
53876bea0e4fSmrg
53886bea0e4fSmrg	case $cc_basename in
53896bea0e4fSmrg	tcc*)
53906bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
53916bea0e4fSmrg	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
53926bea0e4fSmrg	  ;;
53936bea0e4fSmrg	xlf* | bgf* | bgxlf* | mpixlf*)
53946bea0e4fSmrg	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
53956bea0e4fSmrg	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
53966bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
53976bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
53986bea0e4fSmrg	  if test yes = "$supports_anon_versioning"; then
53996bea0e4fSmrg	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
54006bea0e4fSmrg              cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
54016bea0e4fSmrg              echo "local: *; };" >> $output_objdir/$libname.ver~
54026bea0e4fSmrg              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
54036bea0e4fSmrg	  fi
54046bea0e4fSmrg	  ;;
54056bea0e4fSmrg	esac
54066bea0e4fSmrg      else
54076bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=no
54086bea0e4fSmrg      fi
54096bea0e4fSmrg      ;;
54106bea0e4fSmrg
54116bea0e4fSmrg    *-mlibc)
54126bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
54136bea0e4fSmrg	_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'
54146bea0e4fSmrg      ;;
54156bea0e4fSmrg
54166bea0e4fSmrg    netbsd* | netbsdelf*-gnu)
54176bea0e4fSmrg      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
54186bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
54196bea0e4fSmrg	wlarc=
54206bea0e4fSmrg      else
54216bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
54226bea0e4fSmrg	_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'
54236bea0e4fSmrg      fi
54246bea0e4fSmrg      ;;
54256bea0e4fSmrg
54266bea0e4fSmrg    solaris*)
54276bea0e4fSmrg      if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
54286bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
54296bea0e4fSmrg	cat <<_LT_EOF 1>&2
54306bea0e4fSmrg
54316bea0e4fSmrg*** Warning: The releases 2.8.* of the GNU linker cannot reliably
54326bea0e4fSmrg*** create shared libraries on Solaris systems.  Therefore, libtool
54336bea0e4fSmrg*** is disabling shared libraries support.  We urge you to upgrade GNU
54346bea0e4fSmrg*** binutils to release 2.9.1 or newer.  Another option is to modify
54356bea0e4fSmrg*** your PATH or compiler configuration so that the native linker is
54366bea0e4fSmrg*** used, and then restart.
54376bea0e4fSmrg
54386bea0e4fSmrg_LT_EOF
54396bea0e4fSmrg      elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
54406bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
54416bea0e4fSmrg	_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'
54426bea0e4fSmrg      else
54436bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
54446bea0e4fSmrg      fi
54456bea0e4fSmrg      ;;
54466bea0e4fSmrg
54476bea0e4fSmrg    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
54486bea0e4fSmrg      case `$LD -v 2>&1` in
54496bea0e4fSmrg        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
54506bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
54516bea0e4fSmrg	cat <<_LT_EOF 1>&2
54526bea0e4fSmrg
54536bea0e4fSmrg*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
54546bea0e4fSmrg*** reliably create shared libraries on SCO systems.  Therefore, libtool
54556bea0e4fSmrg*** is disabling shared libraries support.  We urge you to upgrade GNU
54566bea0e4fSmrg*** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
54576bea0e4fSmrg*** your PATH or compiler configuration so that the native linker is
54586bea0e4fSmrg*** used, and then restart.
54596bea0e4fSmrg
54606bea0e4fSmrg_LT_EOF
54616bea0e4fSmrg	;;
54626bea0e4fSmrg	*)
54636bea0e4fSmrg	  # For security reasons, it is highly recommended that you always
54646bea0e4fSmrg	  # use absolute paths for naming shared libraries, and exclude the
54656bea0e4fSmrg	  # DT_RUNPATH tag from executables and libraries.  But doing so
54666bea0e4fSmrg	  # requires that you compile everything twice, which is a pain.
54676bea0e4fSmrg	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
54686bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
54696bea0e4fSmrg	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
54706bea0e4fSmrg	    _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'
54716bea0e4fSmrg	  else
54726bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
54736bea0e4fSmrg	  fi
54746bea0e4fSmrg	;;
54756bea0e4fSmrg      esac
54766bea0e4fSmrg      ;;
54776bea0e4fSmrg
54786bea0e4fSmrg    sunos4*)
54796bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
54806bea0e4fSmrg      wlarc=
54816bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
54826bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
54836bea0e4fSmrg      ;;
54846bea0e4fSmrg
54856bea0e4fSmrg    *)
54866bea0e4fSmrg      if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
54876bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
54886bea0e4fSmrg	_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'
54896bea0e4fSmrg      else
54906bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
54916bea0e4fSmrg      fi
54926bea0e4fSmrg      ;;
54936bea0e4fSmrg    esac
54946bea0e4fSmrg
54956bea0e4fSmrg    if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
54966bea0e4fSmrg      runpath_var=
54976bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
54986bea0e4fSmrg      _LT_TAGVAR(export_dynamic_flag_spec, $1)=
54996bea0e4fSmrg      _LT_TAGVAR(whole_archive_flag_spec, $1)=
55006bea0e4fSmrg    fi
55016bea0e4fSmrg  else
55026bea0e4fSmrg    # PORTME fill in a description of your system's linker (not GNU ld)
55036bea0e4fSmrg    case $host_os in
55046bea0e4fSmrg    aix3*)
55056bea0e4fSmrg      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
55066bea0e4fSmrg      _LT_TAGVAR(always_export_symbols, $1)=yes
55076bea0e4fSmrg      _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'
55086bea0e4fSmrg      # Note: this linker hardcodes the directories in LIBPATH if there
55096bea0e4fSmrg      # are no directories specified by -L.
55106bea0e4fSmrg      _LT_TAGVAR(hardcode_minus_L, $1)=yes
55116bea0e4fSmrg      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
55126bea0e4fSmrg	# Neither direct hardcoding nor static linking is supported with a
55136bea0e4fSmrg	# broken collect2.
55146bea0e4fSmrg	_LT_TAGVAR(hardcode_direct, $1)=unsupported
55156bea0e4fSmrg      fi
55166bea0e4fSmrg      ;;
55176bea0e4fSmrg
55186bea0e4fSmrg    aix[[4-9]]*)
55196bea0e4fSmrg      if test ia64 = "$host_cpu"; then
55206bea0e4fSmrg	# On IA64, the linker does run time linking by default, so we don't
55216bea0e4fSmrg	# have to do anything special.
55226bea0e4fSmrg	aix_use_runtimelinking=no
55236bea0e4fSmrg	exp_sym_flag='-Bexport'
55246bea0e4fSmrg	no_entry_flag=
55256bea0e4fSmrg      else
55266bea0e4fSmrg	# If we're using GNU nm, then we don't want the "-C" option.
55276bea0e4fSmrg	# -C means demangle to GNU nm, but means don't demangle to AIX nm.
55286bea0e4fSmrg	# Without the "-l" option, or with the "-B" option, AIX nm treats
55296bea0e4fSmrg	# weak defined symbols like other global defined symbols, whereas
55306bea0e4fSmrg	# GNU nm marks them as "W".
55316bea0e4fSmrg	# While the 'weak' keyword is ignored in the Export File, we need
55326bea0e4fSmrg	# it in the Import File for the 'aix-soname' feature, so we have
55336bea0e4fSmrg	# to replace the "-B" option with "-P" for AIX nm.
55346bea0e4fSmrg	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
55356bea0e4fSmrg	  _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'
55366bea0e4fSmrg	else
55376bea0e4fSmrg	  _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'
55386bea0e4fSmrg	fi
55396bea0e4fSmrg	aix_use_runtimelinking=no
55406bea0e4fSmrg
55416bea0e4fSmrg	# Test if we are trying to use run time linking or normal
55426bea0e4fSmrg	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
55436bea0e4fSmrg	# have runtime linking enabled, and use it for executables.
55446bea0e4fSmrg	# For shared libraries, we enable/disable runtime linking
55456bea0e4fSmrg	# depending on the kind of the shared library created -
55466bea0e4fSmrg	# when "with_aix_soname,aix_use_runtimelinking" is:
55476bea0e4fSmrg	# "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
55486bea0e4fSmrg	# "aix,yes"  lib.so          shared, rtl:yes, for executables
55496bea0e4fSmrg	#            lib.a           static archive
55506bea0e4fSmrg	# "both,no"  lib.so.V(shr.o) shared, rtl:yes
55516bea0e4fSmrg	#            lib.a(lib.so.V) shared, rtl:no,  for executables
55526bea0e4fSmrg	# "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
55536bea0e4fSmrg	#            lib.a(lib.so.V) shared, rtl:no
55546bea0e4fSmrg	# "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
55556bea0e4fSmrg	#            lib.a           static archive
55566bea0e4fSmrg	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
55576bea0e4fSmrg	  for ld_flag in $LDFLAGS; do
55586bea0e4fSmrg	  if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
55596bea0e4fSmrg	    aix_use_runtimelinking=yes
55606bea0e4fSmrg	    break
55616bea0e4fSmrg	  fi
55626bea0e4fSmrg	  done
55636bea0e4fSmrg	  if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
55646bea0e4fSmrg	    # With aix-soname=svr4, we create the lib.so.V shared archives only,
55656bea0e4fSmrg	    # so we don't have lib.a shared libs to link our executables.
55666bea0e4fSmrg	    # We have to force runtime linking in this case.
55676bea0e4fSmrg	    aix_use_runtimelinking=yes
55686bea0e4fSmrg	    LDFLAGS="$LDFLAGS -Wl,-brtl"
55696bea0e4fSmrg	  fi
55706bea0e4fSmrg	  ;;
55716bea0e4fSmrg	esac
55726bea0e4fSmrg
55736bea0e4fSmrg	exp_sym_flag='-bexport'
55746bea0e4fSmrg	no_entry_flag='-bnoentry'
55756bea0e4fSmrg      fi
55766bea0e4fSmrg
55776bea0e4fSmrg      # When large executables or shared objects are built, AIX ld can
55786bea0e4fSmrg      # have problems creating the table of contents.  If linking a library
55796bea0e4fSmrg      # or program results in "error TOC overflow" add -mminimal-toc to
55806bea0e4fSmrg      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
55816bea0e4fSmrg      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
55826bea0e4fSmrg
55836bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)=''
55846bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
55856bea0e4fSmrg      _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
55866bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
55876bea0e4fSmrg      _LT_TAGVAR(link_all_deplibs, $1)=yes
55886bea0e4fSmrg      _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
55896bea0e4fSmrg      case $with_aix_soname,$aix_use_runtimelinking in
55906bea0e4fSmrg      aix,*) ;; # traditional, no import file
55916bea0e4fSmrg      svr4,* | *,yes) # use import file
55926bea0e4fSmrg	# The Import File defines what to hardcode.
55936bea0e4fSmrg	_LT_TAGVAR(hardcode_direct, $1)=no
55946bea0e4fSmrg	_LT_TAGVAR(hardcode_direct_absolute, $1)=no
55956bea0e4fSmrg	;;
55966bea0e4fSmrg      esac
55976bea0e4fSmrg
55986bea0e4fSmrg      if test yes = "$GCC"; then
55996bea0e4fSmrg	case $host_os in aix4.[[012]]|aix4.[[012]].*)
56006bea0e4fSmrg	# We only want to do this on AIX 4.2 and lower, the check
56016bea0e4fSmrg	# below for broken collect2 doesn't work under 4.3+
56026bea0e4fSmrg	  collect2name=`$CC -print-prog-name=collect2`
56036bea0e4fSmrg	  if test -f "$collect2name" &&
56046bea0e4fSmrg	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
56056bea0e4fSmrg	  then
56066bea0e4fSmrg	  # We have reworked collect2
56076bea0e4fSmrg	  :
56086bea0e4fSmrg	  else
56096bea0e4fSmrg	  # We have old collect2
56106bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct, $1)=unsupported
56116bea0e4fSmrg	  # It fails to find uninstalled libraries when the uninstalled
56126bea0e4fSmrg	  # path is not listed in the libpath.  Setting hardcode_minus_L
56136bea0e4fSmrg	  # to unsupported forces relinking
56146bea0e4fSmrg	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
56156bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
56166bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_separator, $1)=
56176bea0e4fSmrg	  fi
56186bea0e4fSmrg	  ;;
56196bea0e4fSmrg	esac
56206bea0e4fSmrg	shared_flag='-shared'
56216bea0e4fSmrg	if test yes = "$aix_use_runtimelinking"; then
56226bea0e4fSmrg	  shared_flag="$shared_flag "'$wl-G'
56236bea0e4fSmrg	fi
56246bea0e4fSmrg	# Need to ensure runtime linking is disabled for the traditional
56256bea0e4fSmrg	# shared library, or the linker may eventually find shared libraries
56266bea0e4fSmrg	# /with/ Import File - we do not want to mix them.
56276bea0e4fSmrg	shared_flag_aix='-shared'
56286bea0e4fSmrg	shared_flag_svr4='-shared $wl-G'
56296bea0e4fSmrg      else
56306bea0e4fSmrg	# not using gcc
56316bea0e4fSmrg	if test ia64 = "$host_cpu"; then
56326bea0e4fSmrg	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
56336bea0e4fSmrg	# chokes on -Wl,-G. The following line is correct:
56346bea0e4fSmrg	  shared_flag='-G'
56356bea0e4fSmrg	else
56366bea0e4fSmrg	  if test yes = "$aix_use_runtimelinking"; then
56376bea0e4fSmrg	    shared_flag='$wl-G'
56386bea0e4fSmrg	  else
56396bea0e4fSmrg	    shared_flag='$wl-bM:SRE'
56406bea0e4fSmrg	  fi
56416bea0e4fSmrg	  shared_flag_aix='$wl-bM:SRE'
56426bea0e4fSmrg	  shared_flag_svr4='$wl-G'
56436bea0e4fSmrg	fi
56446bea0e4fSmrg      fi
56456bea0e4fSmrg
56466bea0e4fSmrg      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
56476bea0e4fSmrg      # It seems that -bexpall does not export symbols beginning with
56486bea0e4fSmrg      # underscore (_), so it is better to generate a list of symbols to export.
56496bea0e4fSmrg      _LT_TAGVAR(always_export_symbols, $1)=yes
56506bea0e4fSmrg      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
56516bea0e4fSmrg	# Warning - without using the other runtime loading flags (-brtl),
56526bea0e4fSmrg	# -berok will link without error, but may produce a broken library.
56536bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
56546bea0e4fSmrg        # Determine the default libpath from the value encoded in an
56556bea0e4fSmrg        # empty executable.
56566bea0e4fSmrg        _LT_SYS_MODULE_PATH_AIX([$1])
56576bea0e4fSmrg        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
56586bea0e4fSmrg        _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
56596bea0e4fSmrg      else
56606bea0e4fSmrg	if test ia64 = "$host_cpu"; then
56616bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
56626bea0e4fSmrg	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
56636bea0e4fSmrg	  _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"
56646bea0e4fSmrg	else
56656bea0e4fSmrg	 # Determine the default libpath from the value encoded in an
56666bea0e4fSmrg	 # empty executable.
56676bea0e4fSmrg	 _LT_SYS_MODULE_PATH_AIX([$1])
56686bea0e4fSmrg	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
56696bea0e4fSmrg	  # Warning - without using the other run time loading flags,
56706bea0e4fSmrg	  # -berok will link without error, but may produce a broken library.
56716bea0e4fSmrg	  _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
56726bea0e4fSmrg	  _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
56736bea0e4fSmrg	  if test yes = "$with_gnu_ld"; then
56746bea0e4fSmrg	    # We only use this code for GNU lds that support --whole-archive.
56756bea0e4fSmrg	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
56766bea0e4fSmrg	  else
56776bea0e4fSmrg	    # Exported symbols can be pulled into shared objects from archives
56786bea0e4fSmrg	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
56796bea0e4fSmrg	  fi
56806bea0e4fSmrg	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
56816bea0e4fSmrg	  _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
56826bea0e4fSmrg	  # -brtl affects multiple linker settings, -berok does not and is overridden later
56836bea0e4fSmrg	  compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
56846bea0e4fSmrg	  if test svr4 != "$with_aix_soname"; then
56856bea0e4fSmrg	    # This is similar to how AIX traditionally builds its shared libraries.
56866bea0e4fSmrg	    _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'
56876bea0e4fSmrg	  fi
56886bea0e4fSmrg	  if test aix != "$with_aix_soname"; then
56896bea0e4fSmrg	    _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'
56906bea0e4fSmrg	  else
56916bea0e4fSmrg	    # used by -dlpreopen to get the symbols
56926bea0e4fSmrg	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
56936bea0e4fSmrg	  fi
56946bea0e4fSmrg	  _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
56956bea0e4fSmrg	fi
56966bea0e4fSmrg      fi
56976bea0e4fSmrg      ;;
56986bea0e4fSmrg
56996bea0e4fSmrg    amigaos*)
57006bea0e4fSmrg      case $host_cpu in
57016bea0e4fSmrg      powerpc)
57026bea0e4fSmrg            # see comment about AmigaOS4 .so support
57036bea0e4fSmrg            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
57046bea0e4fSmrg            _LT_TAGVAR(archive_expsym_cmds, $1)=''
57056bea0e4fSmrg        ;;
57066bea0e4fSmrg      m68k)
57076bea0e4fSmrg            _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)'
57086bea0e4fSmrg            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
57096bea0e4fSmrg            _LT_TAGVAR(hardcode_minus_L, $1)=yes
57106bea0e4fSmrg        ;;
57116bea0e4fSmrg      esac
57126bea0e4fSmrg      ;;
57136bea0e4fSmrg
57146bea0e4fSmrg    bsdi[[45]]*)
57156bea0e4fSmrg      _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
57166bea0e4fSmrg      ;;
57176bea0e4fSmrg
57186bea0e4fSmrg    cygwin* | mingw* | windows* | pw32* | cegcc*)
57196bea0e4fSmrg      # When not using gcc, we currently assume that we are using
57206bea0e4fSmrg      # Microsoft Visual C++ or Intel C++ Compiler.
57216bea0e4fSmrg      # hardcode_libdir_flag_spec is actually meaningless, as there is
57226bea0e4fSmrg      # no search path for DLLs.
57236bea0e4fSmrg      case $cc_basename in
57246bea0e4fSmrg      cl* | icl*)
57256bea0e4fSmrg	# Native MSVC or ICC
57266bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
57276bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
57286bea0e4fSmrg	_LT_TAGVAR(always_export_symbols, $1)=yes
57296bea0e4fSmrg	_LT_TAGVAR(file_list_spec, $1)='@'
57306bea0e4fSmrg	# Tell ltmain to make .lib files, not .a files.
57316bea0e4fSmrg	libext=lib
57326bea0e4fSmrg	# Tell ltmain to make .dll files, not .so files.
57336bea0e4fSmrg	shrext_cmds=.dll
57346bea0e4fSmrg	# FIXME: Setting linknames here is a bad hack.
57356bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -Fe$output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
57366bea0e4fSmrg	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
57376bea0e4fSmrg            cp "$export_symbols" "$output_objdir/$soname.def";
57386bea0e4fSmrg            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
57396bea0e4fSmrg          else
57406bea0e4fSmrg            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
57416bea0e4fSmrg          fi~
57426bea0e4fSmrg          $CC -Fe$tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
57436bea0e4fSmrg          linknames='
57446bea0e4fSmrg	# The linker will not automatically build a static lib if we build a DLL.
57456bea0e4fSmrg	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
57466bea0e4fSmrg	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
57476bea0e4fSmrg	_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
57486bea0e4fSmrg	_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'
57496bea0e4fSmrg	# Don't use ranlib
57506bea0e4fSmrg	_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
57516bea0e4fSmrg	_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
57526bea0e4fSmrg          lt_tool_outputfile="@TOOL_OUTPUT@"~
57536bea0e4fSmrg          case $lt_outputfile in
57546bea0e4fSmrg            *.exe|*.EXE) ;;
57556bea0e4fSmrg            *)
57566bea0e4fSmrg              lt_outputfile=$lt_outputfile.exe
57576bea0e4fSmrg              lt_tool_outputfile=$lt_tool_outputfile.exe
57586bea0e4fSmrg              ;;
57596bea0e4fSmrg          esac~
57606bea0e4fSmrg          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
57616bea0e4fSmrg            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
57626bea0e4fSmrg            $RM "$lt_outputfile.manifest";
57636bea0e4fSmrg          fi'
57646bea0e4fSmrg	;;
57656bea0e4fSmrg      *)
57666bea0e4fSmrg	# Assume MSVC and ICC wrapper
57676bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
57686bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
57696bea0e4fSmrg	# Tell ltmain to make .lib files, not .a files.
57706bea0e4fSmrg	libext=lib
57716bea0e4fSmrg	# Tell ltmain to make .dll files, not .so files.
57726bea0e4fSmrg	shrext_cmds=.dll
57736bea0e4fSmrg	# FIXME: Setting linknames here is a bad hack.
57746bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
57756bea0e4fSmrg	# The linker will automatically build a .lib file if we build a DLL.
57766bea0e4fSmrg	_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
57776bea0e4fSmrg	# FIXME: Should let the user specify the lib program.
57786bea0e4fSmrg	_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
57796bea0e4fSmrg	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
57806bea0e4fSmrg	;;
57816bea0e4fSmrg      esac
57826bea0e4fSmrg      ;;
57836bea0e4fSmrg
57846bea0e4fSmrg    darwin* | rhapsody*)
57856bea0e4fSmrg      _LT_DARWIN_LINKER_FEATURES($1)
57866bea0e4fSmrg      ;;
57876bea0e4fSmrg
57886bea0e4fSmrg    dgux*)
57896bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
57906bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
57916bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
57926bea0e4fSmrg      ;;
57936bea0e4fSmrg
57946bea0e4fSmrg    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
57956bea0e4fSmrg    # support.  Future versions do this automatically, but an explicit c++rt0.o
57966bea0e4fSmrg    # does not break anything, and helps significantly (at the cost of a little
57976bea0e4fSmrg    # extra space).
57986bea0e4fSmrg    freebsd2.2*)
57996bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
58006bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
58016bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
58026bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
58036bea0e4fSmrg      ;;
58046bea0e4fSmrg
58056bea0e4fSmrg    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
58066bea0e4fSmrg    freebsd2.*)
58076bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
58086bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
58096bea0e4fSmrg      _LT_TAGVAR(hardcode_minus_L, $1)=yes
58106bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
58116bea0e4fSmrg      ;;
58126bea0e4fSmrg
58136bea0e4fSmrg    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
58146bea0e4fSmrg    freebsd* | dragonfly* | midnightbsd*)
58156bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
58166bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
58176bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
58186bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
58196bea0e4fSmrg      ;;
58206bea0e4fSmrg
58216bea0e4fSmrg    hpux9*)
58226bea0e4fSmrg      if test yes = "$GCC"; then
58236bea0e4fSmrg	_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'
58246bea0e4fSmrg      else
58256bea0e4fSmrg	_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'
58266bea0e4fSmrg      fi
58276bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
58286bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
58296bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
58306bea0e4fSmrg
58316bea0e4fSmrg      # hardcode_minus_L: Not really in the search PATH,
58326bea0e4fSmrg      # but as the default location of the library.
58336bea0e4fSmrg      _LT_TAGVAR(hardcode_minus_L, $1)=yes
58346bea0e4fSmrg      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
58356bea0e4fSmrg      ;;
58366bea0e4fSmrg
58376bea0e4fSmrg    hpux10*)
58386bea0e4fSmrg      if test yes,no = "$GCC,$with_gnu_ld"; then
58396bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
58406bea0e4fSmrg      else
58416bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
58426bea0e4fSmrg      fi
58436bea0e4fSmrg      if test no = "$with_gnu_ld"; then
58446bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
58456bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
58466bea0e4fSmrg	_LT_TAGVAR(hardcode_direct, $1)=yes
58476bea0e4fSmrg	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
58486bea0e4fSmrg	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
58496bea0e4fSmrg	# hardcode_minus_L: Not really in the search PATH,
58506bea0e4fSmrg	# but as the default location of the library.
58516bea0e4fSmrg	_LT_TAGVAR(hardcode_minus_L, $1)=yes
58526bea0e4fSmrg      fi
58536bea0e4fSmrg      ;;
58546bea0e4fSmrg
58556bea0e4fSmrg    hpux11*)
58566bea0e4fSmrg      if test yes,no = "$GCC,$with_gnu_ld"; then
58576bea0e4fSmrg	case $host_cpu in
58586bea0e4fSmrg	hppa*64*)
58596bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
58606bea0e4fSmrg	  ;;
58616bea0e4fSmrg	ia64*)
58626bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
58636bea0e4fSmrg	  ;;
58646bea0e4fSmrg	*)
58656bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
58666bea0e4fSmrg	  ;;
58676bea0e4fSmrg	esac
58686bea0e4fSmrg      else
58696bea0e4fSmrg	case $host_cpu in
58706bea0e4fSmrg	hppa*64*)
58716bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
58726bea0e4fSmrg	  ;;
58736bea0e4fSmrg	ia64*)
58746bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
58756bea0e4fSmrg	  ;;
58766bea0e4fSmrg	*)
58776bea0e4fSmrg	m4_if($1, [], [
58786bea0e4fSmrg	  # Older versions of the 11.00 compiler do not understand -b yet
58796bea0e4fSmrg	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
58806bea0e4fSmrg	  _LT_LINKER_OPTION([if $CC understands -b],
58816bea0e4fSmrg	    _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
58826bea0e4fSmrg	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
58836bea0e4fSmrg	    [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
58846bea0e4fSmrg	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
58856bea0e4fSmrg	  ;;
58866bea0e4fSmrg	esac
58876bea0e4fSmrg      fi
58886bea0e4fSmrg      if test no = "$with_gnu_ld"; then
58896bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
58906bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
58916bea0e4fSmrg
58926bea0e4fSmrg	case $host_cpu in
58936bea0e4fSmrg	hppa*64*|ia64*)
58946bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct, $1)=no
58956bea0e4fSmrg	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
58966bea0e4fSmrg	  ;;
58976bea0e4fSmrg	*)
58986bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct, $1)=yes
58996bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
59006bea0e4fSmrg	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
59016bea0e4fSmrg
59026bea0e4fSmrg	  # hardcode_minus_L: Not really in the search PATH,
59036bea0e4fSmrg	  # but as the default location of the library.
59046bea0e4fSmrg	  _LT_TAGVAR(hardcode_minus_L, $1)=yes
59056bea0e4fSmrg	  ;;
59066bea0e4fSmrg	esac
59076bea0e4fSmrg      fi
59086bea0e4fSmrg      ;;
59096bea0e4fSmrg
59106bea0e4fSmrg    irix5* | irix6* | nonstopux*)
59116bea0e4fSmrg      if test yes = "$GCC"; then
59126bea0e4fSmrg	_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'
59136bea0e4fSmrg	# Try to use the -exported_symbol ld option, if it does not
59146bea0e4fSmrg	# work, assume that -exports_file does not work either and
59156bea0e4fSmrg	# implicitly export all symbols.
59166bea0e4fSmrg	# This should be the same for all languages, so no per-tag cache variable.
59176bea0e4fSmrg	AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
59186bea0e4fSmrg	  [lt_cv_irix_exported_symbol],
59196bea0e4fSmrg	  [save_LDFLAGS=$LDFLAGS
59206bea0e4fSmrg	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
59216bea0e4fSmrg	   AC_LINK_IFELSE(
59226bea0e4fSmrg	     [AC_LANG_SOURCE(
59236bea0e4fSmrg	        [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
59246bea0e4fSmrg			      [C++], [[int foo (void) { return 0; }]],
59256bea0e4fSmrg			      [Fortran 77], [[
59266bea0e4fSmrg      subroutine foo
59276bea0e4fSmrg      end]],
59286bea0e4fSmrg			      [Fortran], [[
59296bea0e4fSmrg      subroutine foo
59306bea0e4fSmrg      end]])])],
59316bea0e4fSmrg	      [lt_cv_irix_exported_symbol=yes],
59326bea0e4fSmrg	      [lt_cv_irix_exported_symbol=no])
59336bea0e4fSmrg           LDFLAGS=$save_LDFLAGS])
59346bea0e4fSmrg	if test yes = "$lt_cv_irix_exported_symbol"; then
59356bea0e4fSmrg          _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'
59366bea0e4fSmrg	fi
59376bea0e4fSmrg      else
59386bea0e4fSmrg	_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'
59396bea0e4fSmrg	_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'
59406bea0e4fSmrg      fi
59416bea0e4fSmrg      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
59426bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
59436bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
59446bea0e4fSmrg      _LT_TAGVAR(inherit_rpath, $1)=yes
59456bea0e4fSmrg      _LT_TAGVAR(link_all_deplibs, $1)=yes
59466bea0e4fSmrg      ;;
59476bea0e4fSmrg
59486bea0e4fSmrg    linux*)
59496bea0e4fSmrg      case $cc_basename in
59506bea0e4fSmrg      tcc*)
59516bea0e4fSmrg	# Fabrice Bellard et al's Tiny C Compiler
59526bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=yes
59536bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
59546bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
59556bea0e4fSmrg	;;
59566bea0e4fSmrg      esac
59576bea0e4fSmrg      ;;
59586bea0e4fSmrg
59596bea0e4fSmrg    *-mlibc)
59606bea0e4fSmrg      ;;
59616bea0e4fSmrg
59626bea0e4fSmrg    netbsd* | netbsdelf*-gnu)
59636bea0e4fSmrg      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
59646bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
59656bea0e4fSmrg      else
59666bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
59676bea0e4fSmrg      fi
59686bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
59696bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
59706bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
59716bea0e4fSmrg      ;;
59726bea0e4fSmrg
59736bea0e4fSmrg    newsos6)
59746bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
59756bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
59766bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
59776bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
59786bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
59796bea0e4fSmrg      ;;
59806bea0e4fSmrg
59816bea0e4fSmrg    *nto* | *qnx*)
59826bea0e4fSmrg      ;;
59836bea0e4fSmrg
59846bea0e4fSmrg    openbsd*)
59856bea0e4fSmrg      if test -f /usr/libexec/ld.so; then
59866bea0e4fSmrg	_LT_TAGVAR(hardcode_direct, $1)=yes
59876bea0e4fSmrg	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
59886bea0e4fSmrg	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
59896bea0e4fSmrg	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
59906bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
59916bea0e4fSmrg	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
59926bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
59936bea0e4fSmrg	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
59946bea0e4fSmrg	else
59956bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
59966bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
59976bea0e4fSmrg	fi
59986bea0e4fSmrg      else
59996bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
60006bea0e4fSmrg      fi
60016bea0e4fSmrg      ;;
60026bea0e4fSmrg
60036bea0e4fSmrg    os2*)
60046bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
60056bea0e4fSmrg      _LT_TAGVAR(hardcode_minus_L, $1)=yes
60066bea0e4fSmrg      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
60076bea0e4fSmrg      shrext_cmds=.dll
60086bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
60096bea0e4fSmrg	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
60106bea0e4fSmrg	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
60116bea0e4fSmrg	$ECHO EXPORTS >> $output_objdir/$libname.def~
60126bea0e4fSmrg	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
60136bea0e4fSmrg	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
60146bea0e4fSmrg	emximp -o $lib $output_objdir/$libname.def'
60156bea0e4fSmrg      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
60166bea0e4fSmrg	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
60176bea0e4fSmrg	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
60186bea0e4fSmrg	$ECHO EXPORTS >> $output_objdir/$libname.def~
60196bea0e4fSmrg	prefix_cmds="$SED"~
60206bea0e4fSmrg	if test EXPORTS = "`$SED 1q $export_symbols`"; then
60216bea0e4fSmrg	  prefix_cmds="$prefix_cmds -e 1d";
60226bea0e4fSmrg	fi~
60236bea0e4fSmrg	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
60246bea0e4fSmrg	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
60256bea0e4fSmrg	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
60266bea0e4fSmrg	emximp -o $lib $output_objdir/$libname.def'
60276bea0e4fSmrg      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
60286bea0e4fSmrg      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
60296bea0e4fSmrg      _LT_TAGVAR(file_list_spec, $1)='@'
60306bea0e4fSmrg      ;;
60316bea0e4fSmrg
60326bea0e4fSmrg    osf3*)
60336bea0e4fSmrg      if test yes = "$GCC"; then
60346bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
60356bea0e4fSmrg	_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'
60366bea0e4fSmrg      else
60376bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
60386bea0e4fSmrg	_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'
60396bea0e4fSmrg      fi
60406bea0e4fSmrg      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
60416bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
60426bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
60436bea0e4fSmrg      ;;
60446bea0e4fSmrg
60456bea0e4fSmrg    osf4* | osf5*)	# as osf3* with the addition of -msym flag
60466bea0e4fSmrg      if test yes = "$GCC"; then
60476bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
60486bea0e4fSmrg	_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'
60496bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
60506bea0e4fSmrg      else
60516bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
60526bea0e4fSmrg	_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'
60536bea0e4fSmrg	_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~
60546bea0e4fSmrg          $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'
60556bea0e4fSmrg
60566bea0e4fSmrg	# Both c and cxx compiler support -rpath directly
60576bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
60586bea0e4fSmrg      fi
60596bea0e4fSmrg      _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
60606bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
60616bea0e4fSmrg      ;;
60626bea0e4fSmrg
60636bea0e4fSmrg    serenity*)
60646bea0e4fSmrg      ;;
60656bea0e4fSmrg
60666bea0e4fSmrg    solaris*)
60676bea0e4fSmrg      _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
60686bea0e4fSmrg      if test yes = "$GCC"; then
60696bea0e4fSmrg	wlarc='$wl'
60706bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
60716bea0e4fSmrg	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
60726bea0e4fSmrg          $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'
60736bea0e4fSmrg      else
60746bea0e4fSmrg	case `$CC -V 2>&1` in
60756bea0e4fSmrg	*"Compilers 5.0"*)
60766bea0e4fSmrg	  wlarc=''
60776bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
60786bea0e4fSmrg	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
60796bea0e4fSmrg            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
60806bea0e4fSmrg	  ;;
60816bea0e4fSmrg	*)
60826bea0e4fSmrg	  wlarc='$wl'
60836bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
60846bea0e4fSmrg	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
60856bea0e4fSmrg            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
60866bea0e4fSmrg	  ;;
60876bea0e4fSmrg	esac
60886bea0e4fSmrg      fi
60896bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
60906bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
60916bea0e4fSmrg      case $host_os in
60926bea0e4fSmrg      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
60936bea0e4fSmrg      *)
60946bea0e4fSmrg	# The compiler driver will combine and reorder linker options,
60956bea0e4fSmrg	# but understands '-z linker_flag'.  GCC discards it without '$wl',
60966bea0e4fSmrg	# but is careful enough not to reorder.
60976bea0e4fSmrg	# Supported since Solaris 2.6 (maybe 2.5.1?)
60986bea0e4fSmrg	if test yes = "$GCC"; then
60996bea0e4fSmrg	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
61006bea0e4fSmrg	else
61016bea0e4fSmrg	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
61026bea0e4fSmrg	fi
61036bea0e4fSmrg	;;
61046bea0e4fSmrg      esac
61056bea0e4fSmrg      _LT_TAGVAR(link_all_deplibs, $1)=yes
61066bea0e4fSmrg      ;;
61076bea0e4fSmrg
61086bea0e4fSmrg    sunos4*)
61096bea0e4fSmrg      if test sequent = "$host_vendor"; then
61106bea0e4fSmrg	# Use $CC to link under sequent, because it throws in some extra .o
61116bea0e4fSmrg	# files that make .init and .fini sections work.
61126bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
61136bea0e4fSmrg      else
61146bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
61156bea0e4fSmrg      fi
61166bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
61176bea0e4fSmrg      _LT_TAGVAR(hardcode_direct, $1)=yes
61186bea0e4fSmrg      _LT_TAGVAR(hardcode_minus_L, $1)=yes
61196bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
61206bea0e4fSmrg      ;;
61216bea0e4fSmrg
61226bea0e4fSmrg    sysv4)
61236bea0e4fSmrg      case $host_vendor in
61246bea0e4fSmrg	sni)
61256bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
61266bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
61276bea0e4fSmrg	;;
61286bea0e4fSmrg	siemens)
61296bea0e4fSmrg	  ## LD is ld it makes a PLAMLIB
61306bea0e4fSmrg	  ## CC just makes a GrossModule.
61316bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
61326bea0e4fSmrg	  _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
61336bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct, $1)=no
61346bea0e4fSmrg        ;;
61356bea0e4fSmrg	motorola)
61366bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
61376bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
61386bea0e4fSmrg	;;
61396bea0e4fSmrg      esac
61406bea0e4fSmrg      runpath_var='LD_RUN_PATH'
61416bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
61426bea0e4fSmrg      ;;
61436bea0e4fSmrg
61446bea0e4fSmrg    sysv4.3*)
61456bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
61466bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
61476bea0e4fSmrg      _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
61486bea0e4fSmrg      ;;
61496bea0e4fSmrg
61506bea0e4fSmrg    sysv4*MP*)
61516bea0e4fSmrg      if test -d /usr/nec; then
61526bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
61536bea0e4fSmrg	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
61546bea0e4fSmrg	runpath_var=LD_RUN_PATH
61556bea0e4fSmrg	hardcode_runpath_var=yes
61566bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=yes
61576bea0e4fSmrg      fi
61586bea0e4fSmrg      ;;
61596bea0e4fSmrg
61606bea0e4fSmrg    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
61616bea0e4fSmrg      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
61626bea0e4fSmrg      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
61636bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
61646bea0e4fSmrg      runpath_var='LD_RUN_PATH'
61656bea0e4fSmrg
61666bea0e4fSmrg      if test yes = "$GCC"; then
61676bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
61686bea0e4fSmrg	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
61696bea0e4fSmrg      else
61706bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
61716bea0e4fSmrg	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
61726bea0e4fSmrg      fi
61736bea0e4fSmrg      ;;
61746bea0e4fSmrg
61756bea0e4fSmrg    sysv5* | sco3.2v5* | sco5v6*)
61766bea0e4fSmrg      # Note: We CANNOT use -z defs as we might desire, because we do not
61776bea0e4fSmrg      # link with -lc, and that would cause any symbols used from libc to
61786bea0e4fSmrg      # always be unresolved, which means just about no library would
61796bea0e4fSmrg      # ever link correctly.  If we're not using GNU ld we use -z text
61806bea0e4fSmrg      # though, which does catch some bad symbols but isn't as heavy-handed
61816bea0e4fSmrg      # as -z defs.
61826bea0e4fSmrg      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
61836bea0e4fSmrg      _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
61846bea0e4fSmrg      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
61856bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
61866bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
61876bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
61886bea0e4fSmrg      _LT_TAGVAR(link_all_deplibs, $1)=yes
61896bea0e4fSmrg      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
61906bea0e4fSmrg      runpath_var='LD_RUN_PATH'
61916bea0e4fSmrg
61926bea0e4fSmrg      if test yes = "$GCC"; then
61936bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
61946bea0e4fSmrg	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
61956bea0e4fSmrg      else
61966bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
61976bea0e4fSmrg	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
61986bea0e4fSmrg      fi
61996bea0e4fSmrg      ;;
62006bea0e4fSmrg
62016bea0e4fSmrg    uts4*)
62026bea0e4fSmrg      _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
62036bea0e4fSmrg      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
62046bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
62056bea0e4fSmrg      ;;
62066bea0e4fSmrg
62076bea0e4fSmrg    *)
62086bea0e4fSmrg      _LT_TAGVAR(ld_shlibs, $1)=no
62096bea0e4fSmrg      ;;
62106bea0e4fSmrg    esac
62116bea0e4fSmrg
62126bea0e4fSmrg    if test sni = "$host_vendor"; then
62136bea0e4fSmrg      case $host in
62146bea0e4fSmrg      sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
62156bea0e4fSmrg	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
62166bea0e4fSmrg	;;
62176bea0e4fSmrg      esac
62186bea0e4fSmrg    fi
62196bea0e4fSmrg  fi
62206bea0e4fSmrg])
62216bea0e4fSmrgAC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
62226bea0e4fSmrgtest no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
62236bea0e4fSmrg
62246bea0e4fSmrg_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
62256bea0e4fSmrg
62266bea0e4fSmrg_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
62276bea0e4fSmrg_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
62286bea0e4fSmrg_LT_DECL([], [extract_expsyms_cmds], [2],
62296bea0e4fSmrg    [The commands to extract the exported symbol list from a shared archive])
62306bea0e4fSmrg
62316bea0e4fSmrg#
62326bea0e4fSmrg# Do we need to explicitly link libc?
62336bea0e4fSmrg#
62346bea0e4fSmrgcase "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
62356bea0e4fSmrgx|xyes)
62366bea0e4fSmrg  # Assume -lc should be added
62376bea0e4fSmrg  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
62386bea0e4fSmrg
62396bea0e4fSmrg  if test yes,yes = "$GCC,$enable_shared"; then
62406bea0e4fSmrg    case $_LT_TAGVAR(archive_cmds, $1) in
62416bea0e4fSmrg    *'~'*)
62426bea0e4fSmrg      # FIXME: we may have to deal with multi-command sequences.
62436bea0e4fSmrg      ;;
62446bea0e4fSmrg    '$CC '*)
62456bea0e4fSmrg      # Test whether the compiler implicitly links with -lc since on some
62466bea0e4fSmrg      # systems, -lgcc has to come before -lc. If gcc already passes -lc
62476bea0e4fSmrg      # to ld, don't add -lc before -lgcc.
62486bea0e4fSmrg      AC_CACHE_CHECK([whether -lc should be explicitly linked in],
62496bea0e4fSmrg	[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
62506bea0e4fSmrg	[$RM conftest*
62516bea0e4fSmrg	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
62526bea0e4fSmrg
62536bea0e4fSmrg	if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
62546bea0e4fSmrg	  soname=conftest
62556bea0e4fSmrg	  lib=conftest
62566bea0e4fSmrg	  libobjs=conftest.$ac_objext
62576bea0e4fSmrg	  deplibs=
62586bea0e4fSmrg	  wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
62596bea0e4fSmrg	  pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
62606bea0e4fSmrg	  compiler_flags=-v
62616bea0e4fSmrg	  linker_flags=-v
62626bea0e4fSmrg	  verstring=
62636bea0e4fSmrg	  output_objdir=.
62646bea0e4fSmrg	  libname=conftest
62656bea0e4fSmrg	  lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
62666bea0e4fSmrg	  _LT_TAGVAR(allow_undefined_flag, $1)=
62676bea0e4fSmrg	  if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
62686bea0e4fSmrg	  then
62696bea0e4fSmrg	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
62706bea0e4fSmrg	  else
62716bea0e4fSmrg	    lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
62726bea0e4fSmrg	  fi
62736bea0e4fSmrg	  _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
62746bea0e4fSmrg	else
62756bea0e4fSmrg	  cat conftest.err 1>&5
62766bea0e4fSmrg	fi
62776bea0e4fSmrg	$RM conftest*
62786bea0e4fSmrg	])
62796bea0e4fSmrg      _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
62806bea0e4fSmrg      ;;
62816bea0e4fSmrg    esac
62826bea0e4fSmrg  fi
62836bea0e4fSmrg  ;;
62846bea0e4fSmrgesac
62856bea0e4fSmrg
62866bea0e4fSmrg_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
62876bea0e4fSmrg    [Whether or not to add -lc for building shared libraries])
62886bea0e4fSmrg_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
62896bea0e4fSmrg    [enable_shared_with_static_runtimes], [0],
62906bea0e4fSmrg    [Whether or not to disallow shared libs when runtime libs are static])
62916bea0e4fSmrg_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
62926bea0e4fSmrg    [Compiler flag to allow reflexive dlopens])
62936bea0e4fSmrg_LT_TAGDECL([], [whole_archive_flag_spec], [1],
62946bea0e4fSmrg    [Compiler flag to generate shared objects directly from archives])
62956bea0e4fSmrg_LT_TAGDECL([], [compiler_needs_object], [1],
62966bea0e4fSmrg    [Whether the compiler copes with passing no objects directly])
62976bea0e4fSmrg_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
62986bea0e4fSmrg    [Create an old-style archive from a shared archive])
62996bea0e4fSmrg_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
63006bea0e4fSmrg    [Create a temporary old-style archive to link instead of a shared archive])
63016bea0e4fSmrg_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
63026bea0e4fSmrg_LT_TAGDECL([], [archive_expsym_cmds], [2])
63036bea0e4fSmrg_LT_TAGDECL([], [module_cmds], [2],
63046bea0e4fSmrg    [Commands used to build a loadable module if different from building
63056bea0e4fSmrg    a shared archive.])
63066bea0e4fSmrg_LT_TAGDECL([], [module_expsym_cmds], [2])
63076bea0e4fSmrg_LT_TAGDECL([], [with_gnu_ld], [1],
63086bea0e4fSmrg    [Whether we are building with GNU ld or not])
63096bea0e4fSmrg_LT_TAGDECL([], [allow_undefined_flag], [1],
63106bea0e4fSmrg    [Flag that allows shared libraries with undefined symbols to be built])
63116bea0e4fSmrg_LT_TAGDECL([], [no_undefined_flag], [1],
63126bea0e4fSmrg    [Flag that enforces no undefined symbols])
63136bea0e4fSmrg_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
63146bea0e4fSmrg    [Flag to hardcode $libdir into a binary during linking.
63156bea0e4fSmrg    This must work even if $libdir does not exist])
63166bea0e4fSmrg_LT_TAGDECL([], [hardcode_libdir_separator], [1],
63176bea0e4fSmrg    [Whether we need a single "-rpath" flag with a separated argument])
63186bea0e4fSmrg_LT_TAGDECL([], [hardcode_direct], [0],
63196bea0e4fSmrg    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
63206bea0e4fSmrg    DIR into the resulting binary])
63216bea0e4fSmrg_LT_TAGDECL([], [hardcode_direct_absolute], [0],
63226bea0e4fSmrg    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
63236bea0e4fSmrg    DIR into the resulting binary and the resulting library dependency is
63246bea0e4fSmrg    "absolute", i.e. impossible to change by setting $shlibpath_var if the
63256bea0e4fSmrg    library is relocated])
63266bea0e4fSmrg_LT_TAGDECL([], [hardcode_minus_L], [0],
63276bea0e4fSmrg    [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
63286bea0e4fSmrg    into the resulting binary])
63296bea0e4fSmrg_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
63306bea0e4fSmrg    [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
63316bea0e4fSmrg    into the resulting binary])
63326bea0e4fSmrg_LT_TAGDECL([], [hardcode_automatic], [0],
63336bea0e4fSmrg    [Set to "yes" if building a shared library automatically hardcodes DIR
63346bea0e4fSmrg    into the library and all subsequent libraries and executables linked
63356bea0e4fSmrg    against it])
63366bea0e4fSmrg_LT_TAGDECL([], [inherit_rpath], [0],
63376bea0e4fSmrg    [Set to yes if linker adds runtime paths of dependent libraries
63386bea0e4fSmrg    to runtime path list])
63396bea0e4fSmrg_LT_TAGDECL([], [link_all_deplibs], [0],
63406bea0e4fSmrg    [Whether libtool must link a program against all its dependency libraries])
63416bea0e4fSmrg_LT_TAGDECL([], [always_export_symbols], [0],
63426bea0e4fSmrg    [Set to "yes" if exported symbols are required])
63436bea0e4fSmrg_LT_TAGDECL([], [export_symbols_cmds], [2],
63446bea0e4fSmrg    [The commands to list exported symbols])
63456bea0e4fSmrg_LT_TAGDECL([], [exclude_expsyms], [1],
63466bea0e4fSmrg    [Symbols that should not be listed in the preloaded symbols])
63476bea0e4fSmrg_LT_TAGDECL([], [include_expsyms], [1],
63486bea0e4fSmrg    [Symbols that must always be exported])
63496bea0e4fSmrg_LT_TAGDECL([], [prelink_cmds], [2],
63506bea0e4fSmrg    [Commands necessary for linking programs (against libraries) with templates])
63516bea0e4fSmrg_LT_TAGDECL([], [postlink_cmds], [2],
63526bea0e4fSmrg    [Commands necessary for finishing linking programs])
63536bea0e4fSmrg_LT_TAGDECL([], [file_list_spec], [1],
63546bea0e4fSmrg    [Specify filename containing input files])
63556bea0e4fSmrgdnl FIXME: Not yet implemented
63566bea0e4fSmrgdnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
63576bea0e4fSmrgdnl    [Compiler flag to generate thread safe objects])
63586bea0e4fSmrg])# _LT_LINKER_SHLIBS
63596bea0e4fSmrg
63606bea0e4fSmrg
63616bea0e4fSmrg# _LT_LANG_C_CONFIG([TAG])
63626bea0e4fSmrg# ------------------------
63636bea0e4fSmrg# Ensure that the configuration variables for a C compiler are suitably
63646bea0e4fSmrg# defined.  These variables are subsequently used by _LT_CONFIG to write
63656bea0e4fSmrg# the compiler configuration to 'libtool'.
63666bea0e4fSmrgm4_defun([_LT_LANG_C_CONFIG],
63676bea0e4fSmrg[m4_require([_LT_DECL_EGREP])dnl
63686bea0e4fSmrglt_save_CC=$CC
63696bea0e4fSmrgAC_LANG_PUSH(C)
63706bea0e4fSmrg
63716bea0e4fSmrg# Source file extension for C test sources.
63726bea0e4fSmrgac_ext=c
63736bea0e4fSmrg
63746bea0e4fSmrg# Object file extension for compiled C test sources.
63756bea0e4fSmrgobjext=o
63766bea0e4fSmrg_LT_TAGVAR(objext, $1)=$objext
63776bea0e4fSmrg
63786bea0e4fSmrg# Code to be used in simple compile tests
63796bea0e4fSmrglt_simple_compile_test_code="int some_variable = 0;"
63806bea0e4fSmrg
63816bea0e4fSmrg# Code to be used in simple link tests
63826bea0e4fSmrglt_simple_link_test_code='int main(void){return(0);}'
63836bea0e4fSmrg
63846bea0e4fSmrg_LT_TAG_COMPILER
63856bea0e4fSmrg# Save the default compiler, since it gets overwritten when the other
63866bea0e4fSmrg# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
63876bea0e4fSmrgcompiler_DEFAULT=$CC
63886bea0e4fSmrg
63896bea0e4fSmrg# save warnings/boilerplate of simple test code
63906bea0e4fSmrg_LT_COMPILER_BOILERPLATE
63916bea0e4fSmrg_LT_LINKER_BOILERPLATE
63926bea0e4fSmrg
63936bea0e4fSmrg## CAVEAT EMPTOR:
63946bea0e4fSmrg## There is no encapsulation within the following macros, do not change
63956bea0e4fSmrg## the running order or otherwise move them around unless you know exactly
63966bea0e4fSmrg## what you are doing...
63976bea0e4fSmrgif test -n "$compiler"; then
63986bea0e4fSmrg  _LT_COMPILER_NO_RTTI($1)
63996bea0e4fSmrg  _LT_COMPILER_PIC($1)
64006bea0e4fSmrg  _LT_COMPILER_C_O($1)
64016bea0e4fSmrg  _LT_COMPILER_FILE_LOCKS($1)
64026bea0e4fSmrg  _LT_LINKER_SHLIBS($1)
64036bea0e4fSmrg  _LT_SYS_DYNAMIC_LINKER($1)
64046bea0e4fSmrg  _LT_LINKER_HARDCODE_LIBPATH($1)
64056bea0e4fSmrg  LT_SYS_DLOPEN_SELF
64066bea0e4fSmrg  _LT_CMD_STRIPLIB
64076bea0e4fSmrg
64086bea0e4fSmrg  # Report what library types will actually be built
64096bea0e4fSmrg  AC_MSG_CHECKING([if libtool supports shared libraries])
64106bea0e4fSmrg  AC_MSG_RESULT([$can_build_shared])
64116bea0e4fSmrg
64126bea0e4fSmrg  AC_MSG_CHECKING([whether to build shared libraries])
64136bea0e4fSmrg  test no = "$can_build_shared" && enable_shared=no
64146bea0e4fSmrg
64156bea0e4fSmrg  # On AIX, shared libraries and static libraries use the same namespace, and
64166bea0e4fSmrg  # are all built from PIC.
64176bea0e4fSmrg  case $host_os in
64186bea0e4fSmrg  aix3*)
64196bea0e4fSmrg    test yes = "$enable_shared" && enable_static=no
64206bea0e4fSmrg    if test -n "$RANLIB"; then
64216bea0e4fSmrg      archive_cmds="$archive_cmds~\$RANLIB \$lib"
64226bea0e4fSmrg      postinstall_cmds='$RANLIB $lib'
64236bea0e4fSmrg    fi
64246bea0e4fSmrg    ;;
64256bea0e4fSmrg
64266bea0e4fSmrg  aix[[4-9]]*)
64276bea0e4fSmrg    if test ia64 != "$host_cpu"; then
64286bea0e4fSmrg      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
64296bea0e4fSmrg      yes,aix,yes) ;;			# shared object as lib.so file only
64306bea0e4fSmrg      yes,svr4,*) ;;			# shared object as lib.so archive member only
64316bea0e4fSmrg      yes,*) enable_static=no ;;	# shared object in lib.a archive as well
64326bea0e4fSmrg      esac
64336bea0e4fSmrg    fi
64346bea0e4fSmrg    ;;
64356bea0e4fSmrg  esac
64366bea0e4fSmrg  AC_MSG_RESULT([$enable_shared])
64376bea0e4fSmrg
64386bea0e4fSmrg  AC_MSG_CHECKING([whether to build static libraries])
64396bea0e4fSmrg  # Make sure either enable_shared or enable_static is yes.
64406bea0e4fSmrg  test yes = "$enable_shared" || enable_static=yes
64416bea0e4fSmrg  AC_MSG_RESULT([$enable_static])
64426bea0e4fSmrg
64436bea0e4fSmrg  _LT_CONFIG($1)
64446bea0e4fSmrgfi
64456bea0e4fSmrgAC_LANG_POP
64466bea0e4fSmrgCC=$lt_save_CC
64476bea0e4fSmrg])# _LT_LANG_C_CONFIG
64486bea0e4fSmrg
64496bea0e4fSmrg
64506bea0e4fSmrg# _LT_LANG_CXX_CONFIG([TAG])
64516bea0e4fSmrg# --------------------------
64526bea0e4fSmrg# Ensure that the configuration variables for a C++ compiler are suitably
64536bea0e4fSmrg# defined.  These variables are subsequently used by _LT_CONFIG to write
64546bea0e4fSmrg# the compiler configuration to 'libtool'.
64556bea0e4fSmrgm4_defun([_LT_LANG_CXX_CONFIG],
64566bea0e4fSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
64576bea0e4fSmrgm4_require([_LT_DECL_EGREP])dnl
64586bea0e4fSmrgm4_require([_LT_PATH_MANIFEST_TOOL])dnl
64596bea0e4fSmrgif test -n "$CXX" && ( test no != "$CXX" &&
64606bea0e4fSmrg    ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
64616bea0e4fSmrg    (test g++ != "$CXX"))); then
64626bea0e4fSmrg  AC_PROG_CXXCPP
64636bea0e4fSmrgelse
64646bea0e4fSmrg  _lt_caught_CXX_error=yes
64656bea0e4fSmrgfi
64666bea0e4fSmrg
64676bea0e4fSmrgAC_LANG_PUSH(C++)
64686bea0e4fSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no
64696bea0e4fSmrg_LT_TAGVAR(allow_undefined_flag, $1)=
64706bea0e4fSmrg_LT_TAGVAR(always_export_symbols, $1)=no
64716bea0e4fSmrg_LT_TAGVAR(archive_expsym_cmds, $1)=
64726bea0e4fSmrg_LT_TAGVAR(compiler_needs_object, $1)=no
64736bea0e4fSmrg_LT_TAGVAR(export_dynamic_flag_spec, $1)=
64746bea0e4fSmrg_LT_TAGVAR(hardcode_direct, $1)=no
64756bea0e4fSmrg_LT_TAGVAR(hardcode_direct_absolute, $1)=no
64766bea0e4fSmrg_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
64776bea0e4fSmrg_LT_TAGVAR(hardcode_libdir_separator, $1)=
64786bea0e4fSmrg_LT_TAGVAR(hardcode_minus_L, $1)=no
64796bea0e4fSmrg_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
64806bea0e4fSmrg_LT_TAGVAR(hardcode_automatic, $1)=no
64816bea0e4fSmrg_LT_TAGVAR(inherit_rpath, $1)=no
64826bea0e4fSmrg_LT_TAGVAR(module_cmds, $1)=
64836bea0e4fSmrg_LT_TAGVAR(module_expsym_cmds, $1)=
64846bea0e4fSmrg_LT_TAGVAR(link_all_deplibs, $1)=unknown
64856bea0e4fSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
64866bea0e4fSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag
64876bea0e4fSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
64886bea0e4fSmrg_LT_TAGVAR(no_undefined_flag, $1)=
64896bea0e4fSmrg_LT_TAGVAR(whole_archive_flag_spec, $1)=
64906bea0e4fSmrg_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
64916bea0e4fSmrg
64926bea0e4fSmrg# Source file extension for C++ test sources.
64936bea0e4fSmrgac_ext=cpp
64946bea0e4fSmrg
64956bea0e4fSmrg# Object file extension for compiled C++ test sources.
64966bea0e4fSmrgobjext=o
64976bea0e4fSmrg_LT_TAGVAR(objext, $1)=$objext
64986bea0e4fSmrg
64996bea0e4fSmrg# No sense in running all these tests if we already determined that
65006bea0e4fSmrg# the CXX compiler isn't working.  Some variables (like enable_shared)
65016bea0e4fSmrg# are currently assumed to apply to all compilers on this platform,
65026bea0e4fSmrg# and will be corrupted by setting them based on a non-working compiler.
65036bea0e4fSmrgif test yes != "$_lt_caught_CXX_error"; then
65046bea0e4fSmrg  # Code to be used in simple compile tests
65056bea0e4fSmrg  lt_simple_compile_test_code="int some_variable = 0;"
65066bea0e4fSmrg
65076bea0e4fSmrg  # Code to be used in simple link tests
65086bea0e4fSmrg  lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
65096bea0e4fSmrg
65106bea0e4fSmrg  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
65116bea0e4fSmrg  _LT_TAG_COMPILER
65126bea0e4fSmrg
65136bea0e4fSmrg  # save warnings/boilerplate of simple test code
65146bea0e4fSmrg  _LT_COMPILER_BOILERPLATE
65156bea0e4fSmrg  _LT_LINKER_BOILERPLATE
65166bea0e4fSmrg
65176bea0e4fSmrg  # Allow CC to be a program name with arguments.
65186bea0e4fSmrg  lt_save_CC=$CC
65196bea0e4fSmrg  lt_save_CFLAGS=$CFLAGS
65206bea0e4fSmrg  lt_save_LD=$LD
65216bea0e4fSmrg  lt_save_GCC=$GCC
65226bea0e4fSmrg  GCC=$GXX
65236bea0e4fSmrg  lt_save_with_gnu_ld=$with_gnu_ld
65246bea0e4fSmrg  lt_save_path_LD=$lt_cv_path_LD
65256bea0e4fSmrg  if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
65266bea0e4fSmrg    lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
65276bea0e4fSmrg  else
65286bea0e4fSmrg    $as_unset lt_cv_prog_gnu_ld
65296bea0e4fSmrg  fi
65306bea0e4fSmrg  if test -n "${lt_cv_path_LDCXX+set}"; then
65316bea0e4fSmrg    lt_cv_path_LD=$lt_cv_path_LDCXX
65326bea0e4fSmrg  else
65336bea0e4fSmrg    $as_unset lt_cv_path_LD
65346bea0e4fSmrg  fi
65356bea0e4fSmrg  test -z "${LDCXX+set}" || LD=$LDCXX
65366bea0e4fSmrg  CC=${CXX-"c++"}
65376bea0e4fSmrg  CFLAGS=$CXXFLAGS
65386bea0e4fSmrg  compiler=$CC
65396bea0e4fSmrg  _LT_TAGVAR(compiler, $1)=$CC
65406bea0e4fSmrg  _LT_CC_BASENAME([$compiler])
65416bea0e4fSmrg
65426bea0e4fSmrg  if test -n "$compiler"; then
65436bea0e4fSmrg    # We don't want -fno-exception when compiling C++ code, so set the
65446bea0e4fSmrg    # no_builtin_flag separately
65456bea0e4fSmrg    if test yes = "$GXX"; then
65466bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
65476bea0e4fSmrg    else
65486bea0e4fSmrg      _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
65496bea0e4fSmrg    fi
65506bea0e4fSmrg
65516bea0e4fSmrg    if test yes = "$GXX"; then
65526bea0e4fSmrg      # Set up default GNU C++ configuration
65536bea0e4fSmrg
65546bea0e4fSmrg      LT_PATH_LD
65556bea0e4fSmrg
65566bea0e4fSmrg      # Check if GNU C++ uses GNU ld as the underlying linker, since the
65576bea0e4fSmrg      # archiving commands below assume that GNU ld is being used.
65586bea0e4fSmrg      if test yes = "$with_gnu_ld"; then
65596bea0e4fSmrg        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
65606bea0e4fSmrg        _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'
65616bea0e4fSmrg
65626bea0e4fSmrg        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
65636bea0e4fSmrg        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
65646bea0e4fSmrg
65656bea0e4fSmrg        # If archive_cmds runs LD, not CC, wlarc should be empty
65666bea0e4fSmrg        # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
65676bea0e4fSmrg        #     investigate it a little bit more. (MM)
65686bea0e4fSmrg        wlarc='$wl'
65696bea0e4fSmrg
65706bea0e4fSmrg        # ancient GNU ld didn't support --whole-archive et. al.
65716bea0e4fSmrg        if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
65726bea0e4fSmrg          _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
65736bea0e4fSmrg        else
65746bea0e4fSmrg          _LT_TAGVAR(whole_archive_flag_spec, $1)=
65756bea0e4fSmrg        fi
65766bea0e4fSmrg      else
65776bea0e4fSmrg        with_gnu_ld=no
65786bea0e4fSmrg        wlarc=
65796bea0e4fSmrg
65806bea0e4fSmrg        # A generic and very simple default shared library creation
65816bea0e4fSmrg        # command for GNU C++ for the case where it uses the native
65826bea0e4fSmrg        # linker, instead of GNU ld.  If possible, this setting should
65836bea0e4fSmrg        # overridden to take advantage of the native linker features on
65846bea0e4fSmrg        # the platform it is being used on.
65856bea0e4fSmrg        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
65866bea0e4fSmrg      fi
65876bea0e4fSmrg
65886bea0e4fSmrg      # Commands to make compiler produce verbose output that lists
65896bea0e4fSmrg      # what "hidden" libraries, object files and flags are used when
65906bea0e4fSmrg      # linking a shared library.
65916bea0e4fSmrg      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"'
65926bea0e4fSmrg
65936bea0e4fSmrg    else
65946bea0e4fSmrg      GXX=no
65956bea0e4fSmrg      with_gnu_ld=no
65966bea0e4fSmrg      wlarc=
65976bea0e4fSmrg    fi
65986bea0e4fSmrg
65996bea0e4fSmrg    # PORTME: fill in a description of your system's C++ link characteristics
66006bea0e4fSmrg    AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
66016bea0e4fSmrg    _LT_TAGVAR(ld_shlibs, $1)=yes
66026bea0e4fSmrg    case $host_os in
66036bea0e4fSmrg      aix3*)
66046bea0e4fSmrg        # FIXME: insert proper C++ library support
66056bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=no
66066bea0e4fSmrg        ;;
66076bea0e4fSmrg      aix[[4-9]]*)
66086bea0e4fSmrg        if test ia64 = "$host_cpu"; then
66096bea0e4fSmrg          # On IA64, the linker does run time linking by default, so we don't
66106bea0e4fSmrg          # have to do anything special.
66116bea0e4fSmrg          aix_use_runtimelinking=no
66126bea0e4fSmrg          exp_sym_flag='-Bexport'
66136bea0e4fSmrg          no_entry_flag=
66146bea0e4fSmrg        else
66156bea0e4fSmrg          aix_use_runtimelinking=no
66166bea0e4fSmrg
66176bea0e4fSmrg          # Test if we are trying to use run time linking or normal
66186bea0e4fSmrg          # AIX style linking. If -brtl is somewhere in LDFLAGS, we
66196bea0e4fSmrg          # have runtime linking enabled, and use it for executables.
66206bea0e4fSmrg          # For shared libraries, we enable/disable runtime linking
66216bea0e4fSmrg          # depending on the kind of the shared library created -
66226bea0e4fSmrg          # when "with_aix_soname,aix_use_runtimelinking" is:
66236bea0e4fSmrg          # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
66246bea0e4fSmrg          # "aix,yes"  lib.so          shared, rtl:yes, for executables
66256bea0e4fSmrg          #            lib.a           static archive
66266bea0e4fSmrg          # "both,no"  lib.so.V(shr.o) shared, rtl:yes
66276bea0e4fSmrg          #            lib.a(lib.so.V) shared, rtl:no,  for executables
66286bea0e4fSmrg          # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
66296bea0e4fSmrg          #            lib.a(lib.so.V) shared, rtl:no
66306bea0e4fSmrg          # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
66316bea0e4fSmrg          #            lib.a           static archive
66326bea0e4fSmrg          case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
66336bea0e4fSmrg	    for ld_flag in $LDFLAGS; do
66346bea0e4fSmrg	      case $ld_flag in
66356bea0e4fSmrg	      *-brtl*)
66366bea0e4fSmrg	        aix_use_runtimelinking=yes
66376bea0e4fSmrg	        break
66386bea0e4fSmrg	        ;;
66396bea0e4fSmrg	      esac
66406bea0e4fSmrg	    done
66416bea0e4fSmrg	    if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
66426bea0e4fSmrg	      # With aix-soname=svr4, we create the lib.so.V shared archives only,
66436bea0e4fSmrg	      # so we don't have lib.a shared libs to link our executables.
66446bea0e4fSmrg	      # We have to force runtime linking in this case.
66456bea0e4fSmrg	      aix_use_runtimelinking=yes
66466bea0e4fSmrg	      LDFLAGS="$LDFLAGS -Wl,-brtl"
66476bea0e4fSmrg	    fi
66486bea0e4fSmrg	    ;;
66496bea0e4fSmrg          esac
66506bea0e4fSmrg
66516bea0e4fSmrg          exp_sym_flag='-bexport'
66526bea0e4fSmrg          no_entry_flag='-bnoentry'
66536bea0e4fSmrg        fi
66546bea0e4fSmrg
66556bea0e4fSmrg        # When large executables or shared objects are built, AIX ld can
66566bea0e4fSmrg        # have problems creating the table of contents.  If linking a library
66576bea0e4fSmrg        # or program results in "error TOC overflow" add -mminimal-toc to
66586bea0e4fSmrg        # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
66596bea0e4fSmrg        # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
66606bea0e4fSmrg
66616bea0e4fSmrg        _LT_TAGVAR(archive_cmds, $1)=''
66626bea0e4fSmrg        _LT_TAGVAR(hardcode_direct, $1)=yes
66636bea0e4fSmrg        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
66646bea0e4fSmrg        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
66656bea0e4fSmrg        _LT_TAGVAR(link_all_deplibs, $1)=yes
66666bea0e4fSmrg        _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
66676bea0e4fSmrg        case $with_aix_soname,$aix_use_runtimelinking in
66686bea0e4fSmrg        aix,*) ;;	# no import file
66696bea0e4fSmrg        svr4,* | *,yes) # use import file
66706bea0e4fSmrg          # The Import File defines what to hardcode.
66716bea0e4fSmrg          _LT_TAGVAR(hardcode_direct, $1)=no
66726bea0e4fSmrg          _LT_TAGVAR(hardcode_direct_absolute, $1)=no
66736bea0e4fSmrg          ;;
66746bea0e4fSmrg        esac
66756bea0e4fSmrg
66766bea0e4fSmrg        if test yes = "$GXX"; then
66776bea0e4fSmrg          case $host_os in aix4.[[012]]|aix4.[[012]].*)
66786bea0e4fSmrg          # We only want to do this on AIX 4.2 and lower, the check
66796bea0e4fSmrg          # below for broken collect2 doesn't work under 4.3+
66806bea0e4fSmrg	  collect2name=`$CC -print-prog-name=collect2`
66816bea0e4fSmrg	  if test -f "$collect2name" &&
66826bea0e4fSmrg	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
66836bea0e4fSmrg	  then
66846bea0e4fSmrg	    # We have reworked collect2
66856bea0e4fSmrg	    :
66866bea0e4fSmrg	  else
66876bea0e4fSmrg	    # We have old collect2
66886bea0e4fSmrg	    _LT_TAGVAR(hardcode_direct, $1)=unsupported
66896bea0e4fSmrg	    # It fails to find uninstalled libraries when the uninstalled
66906bea0e4fSmrg	    # path is not listed in the libpath.  Setting hardcode_minus_L
66916bea0e4fSmrg	    # to unsupported forces relinking
66926bea0e4fSmrg	    _LT_TAGVAR(hardcode_minus_L, $1)=yes
66936bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
66946bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_separator, $1)=
66956bea0e4fSmrg	  fi
66966bea0e4fSmrg          esac
66976bea0e4fSmrg          shared_flag='-shared'
66986bea0e4fSmrg	  if test yes = "$aix_use_runtimelinking"; then
66996bea0e4fSmrg	    shared_flag=$shared_flag' $wl-G'
67006bea0e4fSmrg	  fi
67016bea0e4fSmrg	  # Need to ensure runtime linking is disabled for the traditional
67026bea0e4fSmrg	  # shared library, or the linker may eventually find shared libraries
67036bea0e4fSmrg	  # /with/ Import File - we do not want to mix them.
67046bea0e4fSmrg	  shared_flag_aix='-shared'
67056bea0e4fSmrg	  shared_flag_svr4='-shared $wl-G'
67066bea0e4fSmrg        else
67076bea0e4fSmrg          # not using gcc
67086bea0e4fSmrg          if test ia64 = "$host_cpu"; then
67096bea0e4fSmrg	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
67106bea0e4fSmrg	  # chokes on -Wl,-G. The following line is correct:
67116bea0e4fSmrg	  shared_flag='-G'
67126bea0e4fSmrg          else
67136bea0e4fSmrg	    if test yes = "$aix_use_runtimelinking"; then
67146bea0e4fSmrg	      shared_flag='$wl-G'
67156bea0e4fSmrg	    else
67166bea0e4fSmrg	      shared_flag='$wl-bM:SRE'
67176bea0e4fSmrg	    fi
67186bea0e4fSmrg	    shared_flag_aix='$wl-bM:SRE'
67196bea0e4fSmrg	    shared_flag_svr4='$wl-G'
67206bea0e4fSmrg          fi
67216bea0e4fSmrg        fi
67226bea0e4fSmrg
67236bea0e4fSmrg        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
67246bea0e4fSmrg        # It seems that -bexpall does not export symbols beginning with
67256bea0e4fSmrg        # underscore (_), so it is better to generate a list of symbols to
67266bea0e4fSmrg	# export.
67276bea0e4fSmrg        _LT_TAGVAR(always_export_symbols, $1)=yes
67286bea0e4fSmrg	if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
67296bea0e4fSmrg          # Warning - without using the other runtime loading flags (-brtl),
67306bea0e4fSmrg          # -berok will link without error, but may produce a broken library.
67316bea0e4fSmrg          # The "-G" linker flag allows undefined symbols.
67326bea0e4fSmrg          _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
67336bea0e4fSmrg          # Determine the default libpath from the value encoded in an empty
67346bea0e4fSmrg          # executable.
67356bea0e4fSmrg          _LT_SYS_MODULE_PATH_AIX([$1])
67366bea0e4fSmrg          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
67376bea0e4fSmrg
67386bea0e4fSmrg          _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
67396bea0e4fSmrg        else
67406bea0e4fSmrg          if test ia64 = "$host_cpu"; then
67416bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
67426bea0e4fSmrg	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
67436bea0e4fSmrg	    _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"
67446bea0e4fSmrg          else
67456bea0e4fSmrg	    # Determine the default libpath from the value encoded in an
67466bea0e4fSmrg	    # empty executable.
67476bea0e4fSmrg	    _LT_SYS_MODULE_PATH_AIX([$1])
67486bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
67496bea0e4fSmrg	    # Warning - without using the other run time loading flags,
67506bea0e4fSmrg	    # -berok will link without error, but may produce a broken library.
67516bea0e4fSmrg	    _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
67526bea0e4fSmrg	    _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
67536bea0e4fSmrg	    if test yes = "$with_gnu_ld"; then
67546bea0e4fSmrg	      # We only use this code for GNU lds that support --whole-archive.
67556bea0e4fSmrg	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
67566bea0e4fSmrg	    else
67576bea0e4fSmrg	      # Exported symbols can be pulled into shared objects from archives
67586bea0e4fSmrg	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
67596bea0e4fSmrg	    fi
67606bea0e4fSmrg	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
67616bea0e4fSmrg	    _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
67626bea0e4fSmrg	    # -brtl affects multiple linker settings, -berok does not and is overridden later
67636bea0e4fSmrg	    compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
67646bea0e4fSmrg	    if test svr4 != "$with_aix_soname"; then
67656bea0e4fSmrg	      # This is similar to how AIX traditionally builds its shared
67666bea0e4fSmrg	      # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
67676bea0e4fSmrg	      _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'
67686bea0e4fSmrg	    fi
67696bea0e4fSmrg	    if test aix != "$with_aix_soname"; then
67706bea0e4fSmrg	      _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'
67716bea0e4fSmrg	    else
67726bea0e4fSmrg	      # used by -dlpreopen to get the symbols
67736bea0e4fSmrg	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
67746bea0e4fSmrg	    fi
67756bea0e4fSmrg	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
67766bea0e4fSmrg          fi
67776bea0e4fSmrg        fi
67786bea0e4fSmrg        ;;
67796bea0e4fSmrg
67806bea0e4fSmrg      beos*)
67816bea0e4fSmrg	if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
67826bea0e4fSmrg	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
67836bea0e4fSmrg	  # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
67846bea0e4fSmrg	  # support --undefined.  This deserves some investigation.  FIXME
67856bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
67866bea0e4fSmrg	else
67876bea0e4fSmrg	  _LT_TAGVAR(ld_shlibs, $1)=no
67886bea0e4fSmrg	fi
67896bea0e4fSmrg	;;
67906bea0e4fSmrg
67916bea0e4fSmrg      chorus*)
67926bea0e4fSmrg        case $cc_basename in
67936bea0e4fSmrg          *)
67946bea0e4fSmrg	  # FIXME: insert proper C++ library support
67956bea0e4fSmrg	  _LT_TAGVAR(ld_shlibs, $1)=no
67966bea0e4fSmrg	  ;;
67976bea0e4fSmrg        esac
67986bea0e4fSmrg        ;;
67996bea0e4fSmrg
68006bea0e4fSmrg      cygwin* | mingw* | windows* | pw32* | cegcc*)
68016bea0e4fSmrg	case $GXX,$cc_basename in
68026bea0e4fSmrg	,cl* | no,cl* | ,icl* | no,icl*)
68036bea0e4fSmrg	  # Native MSVC or ICC
68046bea0e4fSmrg	  # hardcode_libdir_flag_spec is actually meaningless, as there is
68056bea0e4fSmrg	  # no search path for DLLs.
68066bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
68076bea0e4fSmrg	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
68086bea0e4fSmrg	  _LT_TAGVAR(always_export_symbols, $1)=yes
68096bea0e4fSmrg	  _LT_TAGVAR(file_list_spec, $1)='@'
68106bea0e4fSmrg	  # Tell ltmain to make .lib files, not .a files.
68116bea0e4fSmrg	  libext=lib
68126bea0e4fSmrg	  # Tell ltmain to make .dll files, not .so files.
68136bea0e4fSmrg	  shrext_cmds=.dll
68146bea0e4fSmrg	  # FIXME: Setting linknames here is a bad hack.
68156bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
68166bea0e4fSmrg	  _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
68176bea0e4fSmrg              cp "$export_symbols" "$output_objdir/$soname.def";
68186bea0e4fSmrg              echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
68196bea0e4fSmrg            else
68206bea0e4fSmrg              $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
68216bea0e4fSmrg            fi~
68226bea0e4fSmrg            $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
68236bea0e4fSmrg            linknames='
68246bea0e4fSmrg	  # The linker will not automatically build a static lib if we build a DLL.
68256bea0e4fSmrg	  # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
68266bea0e4fSmrg	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
68276bea0e4fSmrg	  # Don't use ranlib
68286bea0e4fSmrg	  _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
68296bea0e4fSmrg	  _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
68306bea0e4fSmrg            lt_tool_outputfile="@TOOL_OUTPUT@"~
68316bea0e4fSmrg            case $lt_outputfile in
68326bea0e4fSmrg              *.exe|*.EXE) ;;
68336bea0e4fSmrg              *)
68346bea0e4fSmrg                lt_outputfile=$lt_outputfile.exe
68356bea0e4fSmrg                lt_tool_outputfile=$lt_tool_outputfile.exe
68366bea0e4fSmrg                ;;
68376bea0e4fSmrg            esac~
68386bea0e4fSmrg            func_to_tool_file "$lt_outputfile"~
68396bea0e4fSmrg            if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
68406bea0e4fSmrg              $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
68416bea0e4fSmrg              $RM "$lt_outputfile.manifest";
68426bea0e4fSmrg            fi'
68436bea0e4fSmrg	  ;;
68446bea0e4fSmrg	*)
68456bea0e4fSmrg	  # g++
68466bea0e4fSmrg	  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
68476bea0e4fSmrg	  # as there is no search path for DLLs.
68486bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
68496bea0e4fSmrg	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
68506bea0e4fSmrg	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
68516bea0e4fSmrg	  _LT_TAGVAR(always_export_symbols, $1)=no
68526bea0e4fSmrg	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
68536bea0e4fSmrg	  _LT_TAGVAR(file_list_spec, $1)='@'
68546bea0e4fSmrg
68556bea0e4fSmrg	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
68566bea0e4fSmrg	    _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'
68576bea0e4fSmrg	    # If the export-symbols file already is a .def file, use it as
68586bea0e4fSmrg	    # is; otherwise, prepend EXPORTS...
68596bea0e4fSmrg	    _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
68606bea0e4fSmrg              cp $export_symbols $output_objdir/$soname.def;
68616bea0e4fSmrg            else
68626bea0e4fSmrg              echo EXPORTS > $output_objdir/$soname.def;
68636bea0e4fSmrg              cat $export_symbols >> $output_objdir/$soname.def;
68646bea0e4fSmrg            fi~
68656bea0e4fSmrg            $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'
68666bea0e4fSmrg	  else
68676bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
68686bea0e4fSmrg	  fi
68696bea0e4fSmrg	  ;;
68706bea0e4fSmrg	esac
68716bea0e4fSmrg	;;
68726bea0e4fSmrg      darwin* | rhapsody*)
68736bea0e4fSmrg        _LT_DARWIN_LINKER_FEATURES($1)
68746bea0e4fSmrg	;;
68756bea0e4fSmrg
68766bea0e4fSmrg      os2*)
68776bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
68786bea0e4fSmrg	_LT_TAGVAR(hardcode_minus_L, $1)=yes
68796bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
68806bea0e4fSmrg	shrext_cmds=.dll
68816bea0e4fSmrg	_LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
68826bea0e4fSmrg	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
68836bea0e4fSmrg	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
68846bea0e4fSmrg	  $ECHO EXPORTS >> $output_objdir/$libname.def~
68856bea0e4fSmrg	  emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
68866bea0e4fSmrg	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
68876bea0e4fSmrg	  emximp -o $lib $output_objdir/$libname.def'
68886bea0e4fSmrg	_LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
68896bea0e4fSmrg	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
68906bea0e4fSmrg	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
68916bea0e4fSmrg	  $ECHO EXPORTS >> $output_objdir/$libname.def~
68926bea0e4fSmrg	  prefix_cmds="$SED"~
68936bea0e4fSmrg	  if test EXPORTS = "`$SED 1q $export_symbols`"; then
68946bea0e4fSmrg	    prefix_cmds="$prefix_cmds -e 1d";
68956bea0e4fSmrg	  fi~
68966bea0e4fSmrg	  prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
68976bea0e4fSmrg	  cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
68986bea0e4fSmrg	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
68996bea0e4fSmrg	  emximp -o $lib $output_objdir/$libname.def'
69006bea0e4fSmrg	_LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
69016bea0e4fSmrg	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
69026bea0e4fSmrg	_LT_TAGVAR(file_list_spec, $1)='@'
69036bea0e4fSmrg	;;
69046bea0e4fSmrg
69056bea0e4fSmrg      dgux*)
69066bea0e4fSmrg        case $cc_basename in
69076bea0e4fSmrg          ec++*)
69086bea0e4fSmrg	    # FIXME: insert proper C++ library support
69096bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
69106bea0e4fSmrg	    ;;
69116bea0e4fSmrg          ghcx*)
69126bea0e4fSmrg	    # Green Hills C++ Compiler
69136bea0e4fSmrg	    # FIXME: insert proper C++ library support
69146bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
69156bea0e4fSmrg	    ;;
69166bea0e4fSmrg          *)
69176bea0e4fSmrg	    # FIXME: insert proper C++ library support
69186bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
69196bea0e4fSmrg	    ;;
69206bea0e4fSmrg        esac
69216bea0e4fSmrg        ;;
69226bea0e4fSmrg
69236bea0e4fSmrg      freebsd2.*)
69246bea0e4fSmrg        # C++ shared libraries reported to be fairly broken before
69256bea0e4fSmrg	# switch to ELF
69266bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=no
69276bea0e4fSmrg        ;;
69286bea0e4fSmrg
69296bea0e4fSmrg      freebsd-elf*)
69306bea0e4fSmrg        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
69316bea0e4fSmrg        ;;
69326bea0e4fSmrg
69336bea0e4fSmrg      freebsd* | dragonfly* | midnightbsd*)
69346bea0e4fSmrg        # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
69356bea0e4fSmrg        # conventions
69366bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=yes
69376bea0e4fSmrg        ;;
69386bea0e4fSmrg
69396bea0e4fSmrg      haiku*)
69406bea0e4fSmrg        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
69416bea0e4fSmrg        _LT_TAGVAR(link_all_deplibs, $1)=no
69426bea0e4fSmrg        ;;
69436bea0e4fSmrg
69446bea0e4fSmrg      hpux9*)
69456bea0e4fSmrg        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
69466bea0e4fSmrg        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
69476bea0e4fSmrg        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
69486bea0e4fSmrg        _LT_TAGVAR(hardcode_direct, $1)=yes
69496bea0e4fSmrg        _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
69506bea0e4fSmrg				             # but as the default
69516bea0e4fSmrg				             # location of the library.
69526bea0e4fSmrg
69536bea0e4fSmrg        case $cc_basename in
69546bea0e4fSmrg          CC*)
69556bea0e4fSmrg            # FIXME: insert proper C++ library support
69566bea0e4fSmrg            _LT_TAGVAR(ld_shlibs, $1)=no
69576bea0e4fSmrg            ;;
69586bea0e4fSmrg          aCC*)
69596bea0e4fSmrg            _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'
69606bea0e4fSmrg            # Commands to make compiler produce verbose output that lists
69616bea0e4fSmrg            # what "hidden" libraries, object files and flags are used when
69626bea0e4fSmrg            # linking a shared library.
69636bea0e4fSmrg            #
69646bea0e4fSmrg            # There doesn't appear to be a way to prevent this compiler from
69656bea0e4fSmrg            # explicitly linking system object files so we need to strip them
69666bea0e4fSmrg            # from the output so that they don't get included in the library
69676bea0e4fSmrg            # dependencies.
69686bea0e4fSmrg            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"'
69696bea0e4fSmrg            ;;
69706bea0e4fSmrg          *)
69716bea0e4fSmrg            if test yes = "$GXX"; then
69726bea0e4fSmrg              _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'
69736bea0e4fSmrg            else
69746bea0e4fSmrg              # FIXME: insert proper C++ library support
69756bea0e4fSmrg              _LT_TAGVAR(ld_shlibs, $1)=no
69766bea0e4fSmrg            fi
69776bea0e4fSmrg            ;;
69786bea0e4fSmrg        esac
69796bea0e4fSmrg        ;;
69806bea0e4fSmrg
69816bea0e4fSmrg      hpux10*|hpux11*)
69826bea0e4fSmrg        if test no = "$with_gnu_ld"; then
69836bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
69846bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
69856bea0e4fSmrg
69866bea0e4fSmrg          case $host_cpu in
69876bea0e4fSmrg            hppa*64*|ia64*)
69886bea0e4fSmrg              ;;
69896bea0e4fSmrg            *)
69906bea0e4fSmrg	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
69916bea0e4fSmrg              ;;
69926bea0e4fSmrg          esac
69936bea0e4fSmrg        fi
69946bea0e4fSmrg        case $host_cpu in
69956bea0e4fSmrg          hppa*64*|ia64*)
69966bea0e4fSmrg            _LT_TAGVAR(hardcode_direct, $1)=no
69976bea0e4fSmrg            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
69986bea0e4fSmrg            ;;
69996bea0e4fSmrg          *)
70006bea0e4fSmrg            _LT_TAGVAR(hardcode_direct, $1)=yes
70016bea0e4fSmrg            _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
70026bea0e4fSmrg            _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
70036bea0e4fSmrg					         # but as the default
70046bea0e4fSmrg					         # location of the library.
70056bea0e4fSmrg            ;;
70066bea0e4fSmrg        esac
70076bea0e4fSmrg
70086bea0e4fSmrg        case $cc_basename in
70096bea0e4fSmrg          CC*)
70106bea0e4fSmrg	    # FIXME: insert proper C++ library support
70116bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
70126bea0e4fSmrg	    ;;
70136bea0e4fSmrg          aCC*)
70146bea0e4fSmrg	    case $host_cpu in
70156bea0e4fSmrg	      hppa*64*)
70166bea0e4fSmrg	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
70176bea0e4fSmrg	        ;;
70186bea0e4fSmrg	      ia64*)
70196bea0e4fSmrg	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
70206bea0e4fSmrg	        ;;
70216bea0e4fSmrg	      *)
70226bea0e4fSmrg	        _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'
70236bea0e4fSmrg	        ;;
70246bea0e4fSmrg	    esac
70256bea0e4fSmrg	    # Commands to make compiler produce verbose output that lists
70266bea0e4fSmrg	    # what "hidden" libraries, object files and flags are used when
70276bea0e4fSmrg	    # linking a shared library.
70286bea0e4fSmrg	    #
70296bea0e4fSmrg	    # There doesn't appear to be a way to prevent this compiler from
70306bea0e4fSmrg	    # explicitly linking system object files so we need to strip them
70316bea0e4fSmrg	    # from the output so that they don't get included in the library
70326bea0e4fSmrg	    # dependencies.
70336bea0e4fSmrg	    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"'
70346bea0e4fSmrg	    ;;
70356bea0e4fSmrg          *)
70366bea0e4fSmrg	    if test yes = "$GXX"; then
70376bea0e4fSmrg	      if test no = "$with_gnu_ld"; then
70386bea0e4fSmrg	        case $host_cpu in
70396bea0e4fSmrg	          hppa*64*)
70406bea0e4fSmrg	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
70416bea0e4fSmrg	            ;;
70426bea0e4fSmrg	          ia64*)
70436bea0e4fSmrg	            _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'
70446bea0e4fSmrg	            ;;
70456bea0e4fSmrg	          *)
70466bea0e4fSmrg	            _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'
70476bea0e4fSmrg	            ;;
70486bea0e4fSmrg	        esac
70496bea0e4fSmrg	      fi
70506bea0e4fSmrg	    else
70516bea0e4fSmrg	      # FIXME: insert proper C++ library support
70526bea0e4fSmrg	      _LT_TAGVAR(ld_shlibs, $1)=no
70536bea0e4fSmrg	    fi
70546bea0e4fSmrg	    ;;
70556bea0e4fSmrg        esac
70566bea0e4fSmrg        ;;
70576bea0e4fSmrg
70586bea0e4fSmrg      interix[[3-9]]*)
70596bea0e4fSmrg	_LT_TAGVAR(hardcode_direct, $1)=no
70606bea0e4fSmrg	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
70616bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
70626bea0e4fSmrg	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
70636bea0e4fSmrg	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
70646bea0e4fSmrg	# Instead, shared libraries are loaded at an image base (0x10000000 by
70656bea0e4fSmrg	# default) and relocated if they conflict, which is a slow very memory
70666bea0e4fSmrg	# consuming and fragmenting process.  To avoid this, we pick a random,
70676bea0e4fSmrg	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
70686bea0e4fSmrg	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
70696bea0e4fSmrg	_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'
70706bea0e4fSmrg	_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'
70716bea0e4fSmrg	;;
70726bea0e4fSmrg      irix5* | irix6*)
70736bea0e4fSmrg        case $cc_basename in
70746bea0e4fSmrg          CC*)
70756bea0e4fSmrg	    # SGI C++
70766bea0e4fSmrg	    _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'
70776bea0e4fSmrg
70786bea0e4fSmrg	    # Archives containing C++ object files must be created using
70796bea0e4fSmrg	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
70806bea0e4fSmrg	    # necessary to make sure instantiated templates are included
70816bea0e4fSmrg	    # in the archive.
70826bea0e4fSmrg	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
70836bea0e4fSmrg	    ;;
70846bea0e4fSmrg          *)
70856bea0e4fSmrg	    if test yes = "$GXX"; then
70866bea0e4fSmrg	      if test no = "$with_gnu_ld"; then
70876bea0e4fSmrg	        _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'
70886bea0e4fSmrg	      else
70896bea0e4fSmrg	        _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'
70906bea0e4fSmrg	      fi
70916bea0e4fSmrg	    fi
70926bea0e4fSmrg	    _LT_TAGVAR(link_all_deplibs, $1)=yes
70936bea0e4fSmrg	    ;;
70946bea0e4fSmrg        esac
70956bea0e4fSmrg        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
70966bea0e4fSmrg        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
70976bea0e4fSmrg        _LT_TAGVAR(inherit_rpath, $1)=yes
70986bea0e4fSmrg        ;;
70996bea0e4fSmrg
71006bea0e4fSmrg      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
71016bea0e4fSmrg        case $cc_basename in
71026bea0e4fSmrg          KCC*)
71036bea0e4fSmrg	    # Kuck and Associates, Inc. (KAI) C++ Compiler
71046bea0e4fSmrg
71056bea0e4fSmrg	    # KCC will only create a shared library if the output file
71066bea0e4fSmrg	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
71076bea0e4fSmrg	    # to its proper name (with version) after linking.
71086bea0e4fSmrg	    _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'
71096bea0e4fSmrg	    _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'
71106bea0e4fSmrg	    # Commands to make compiler produce verbose output that lists
71116bea0e4fSmrg	    # what "hidden" libraries, object files and flags are used when
71126bea0e4fSmrg	    # linking a shared library.
71136bea0e4fSmrg	    #
71146bea0e4fSmrg	    # There doesn't appear to be a way to prevent this compiler from
71156bea0e4fSmrg	    # explicitly linking system object files so we need to strip them
71166bea0e4fSmrg	    # from the output so that they don't get included in the library
71176bea0e4fSmrg	    # dependencies.
71186bea0e4fSmrg	    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"'
71196bea0e4fSmrg
71206bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
71216bea0e4fSmrg	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
71226bea0e4fSmrg
71236bea0e4fSmrg	    # Archives containing C++ object files must be created using
71246bea0e4fSmrg	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
71256bea0e4fSmrg	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
71266bea0e4fSmrg	    ;;
71276bea0e4fSmrg	  icpc* | ecpc* )
71286bea0e4fSmrg	    # Intel C++
71296bea0e4fSmrg	    with_gnu_ld=yes
71306bea0e4fSmrg	    # version 8.0 and above of icpc choke on multiply defined symbols
71316bea0e4fSmrg	    # if we add $predep_objects and $postdep_objects, however 7.1 and
71326bea0e4fSmrg	    # earlier do not add the objects themselves.
71336bea0e4fSmrg	    case `$CC -V 2>&1` in
71346bea0e4fSmrg	      *"Version 7."*)
71356bea0e4fSmrg	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
71366bea0e4fSmrg		_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'
71376bea0e4fSmrg		;;
71386bea0e4fSmrg	      *)  # Version 8.0 or newer
71396bea0e4fSmrg	        tmp_idyn=
71406bea0e4fSmrg	        case $host_cpu in
71416bea0e4fSmrg		  ia64*) tmp_idyn=' -i_dynamic';;
71426bea0e4fSmrg		esac
71436bea0e4fSmrg	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
71446bea0e4fSmrg		_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'
71456bea0e4fSmrg		;;
71466bea0e4fSmrg	    esac
71476bea0e4fSmrg	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
71486bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
71496bea0e4fSmrg	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
71506bea0e4fSmrg	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
71516bea0e4fSmrg	    ;;
71526bea0e4fSmrg          pgCC* | pgcpp*)
71536bea0e4fSmrg            # Portland Group C++ compiler
71546bea0e4fSmrg	    case `$CC -V` in
71556bea0e4fSmrg	    *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
71566bea0e4fSmrg	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
71576bea0e4fSmrg               rm -rf $tpldir~
71586bea0e4fSmrg               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
71596bea0e4fSmrg               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
71606bea0e4fSmrg	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
71616bea0e4fSmrg                rm -rf $tpldir~
71626bea0e4fSmrg                $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
71636bea0e4fSmrg                $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
71646bea0e4fSmrg                $RANLIB $oldlib'
71656bea0e4fSmrg	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
71666bea0e4fSmrg                rm -rf $tpldir~
71676bea0e4fSmrg                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
71686bea0e4fSmrg                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
71696bea0e4fSmrg	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
71706bea0e4fSmrg                rm -rf $tpldir~
71716bea0e4fSmrg                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
71726bea0e4fSmrg                $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'
71736bea0e4fSmrg	      ;;
71746bea0e4fSmrg	    *) # Version 6 and above use weak symbols
71756bea0e4fSmrg	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
71766bea0e4fSmrg	      _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'
71776bea0e4fSmrg	      ;;
71786bea0e4fSmrg	    esac
71796bea0e4fSmrg
71806bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
71816bea0e4fSmrg	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
71826bea0e4fSmrg	    _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'
71836bea0e4fSmrg            ;;
71846bea0e4fSmrg	  cxx*)
71856bea0e4fSmrg	    # Compaq C++
71866bea0e4fSmrg	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
71876bea0e4fSmrg	    _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'
71886bea0e4fSmrg
71896bea0e4fSmrg	    runpath_var=LD_RUN_PATH
71906bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
71916bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
71926bea0e4fSmrg
71936bea0e4fSmrg	    # Commands to make compiler produce verbose output that lists
71946bea0e4fSmrg	    # what "hidden" libraries, object files and flags are used when
71956bea0e4fSmrg	    # linking a shared library.
71966bea0e4fSmrg	    #
71976bea0e4fSmrg	    # There doesn't appear to be a way to prevent this compiler from
71986bea0e4fSmrg	    # explicitly linking system object files so we need to strip them
71996bea0e4fSmrg	    # from the output so that they don't get included in the library
72006bea0e4fSmrg	    # dependencies.
72016bea0e4fSmrg	    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'
72026bea0e4fSmrg	    ;;
72036bea0e4fSmrg	  xl* | mpixl* | bgxl*)
72046bea0e4fSmrg	    # IBM XL 8.0 on PPC, with GNU ld
72056bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
72066bea0e4fSmrg	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
72076bea0e4fSmrg	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
72086bea0e4fSmrg	    if test yes = "$supports_anon_versioning"; then
72096bea0e4fSmrg	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
72106bea0e4fSmrg                cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
72116bea0e4fSmrg                echo "local: *; };" >> $output_objdir/$libname.ver~
72126bea0e4fSmrg                $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
72136bea0e4fSmrg	    fi
72146bea0e4fSmrg	    ;;
72156bea0e4fSmrg	  *)
72166bea0e4fSmrg	    case `$CC -V 2>&1 | $SED 5q` in
72176bea0e4fSmrg	    *Sun\ C*)
72186bea0e4fSmrg	      # Sun C++ 5.9
72196bea0e4fSmrg	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
72206bea0e4fSmrg	      _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
72216bea0e4fSmrg	      _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'
72226bea0e4fSmrg	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
72236bea0e4fSmrg	      _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'
72246bea0e4fSmrg	      _LT_TAGVAR(compiler_needs_object, $1)=yes
72256bea0e4fSmrg
72266bea0e4fSmrg	      # Not sure whether something based on
72276bea0e4fSmrg	      # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
72286bea0e4fSmrg	      # would be better.
72296bea0e4fSmrg	      output_verbose_link_cmd='func_echo_all'
72306bea0e4fSmrg
72316bea0e4fSmrg	      # Archives containing C++ object files must be created using
72326bea0e4fSmrg	      # "CC -xar", where "CC" is the Sun C++ compiler.  This is
72336bea0e4fSmrg	      # necessary to make sure instantiated templates are included
72346bea0e4fSmrg	      # in the archive.
72356bea0e4fSmrg	      _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
72366bea0e4fSmrg	      ;;
72376bea0e4fSmrg	    esac
72386bea0e4fSmrg	    ;;
72396bea0e4fSmrg	esac
72406bea0e4fSmrg	;;
72416bea0e4fSmrg
72426bea0e4fSmrg      lynxos*)
72436bea0e4fSmrg        # FIXME: insert proper C++ library support
72446bea0e4fSmrg	_LT_TAGVAR(ld_shlibs, $1)=no
72456bea0e4fSmrg	;;
72466bea0e4fSmrg
72476bea0e4fSmrg      m88k*)
72486bea0e4fSmrg        # FIXME: insert proper C++ library support
72496bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=no
72506bea0e4fSmrg	;;
72516bea0e4fSmrg
72526bea0e4fSmrg      mvs*)
72536bea0e4fSmrg        case $cc_basename in
72546bea0e4fSmrg          cxx*)
72556bea0e4fSmrg	    # FIXME: insert proper C++ library support
72566bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
72576bea0e4fSmrg	    ;;
72586bea0e4fSmrg	  *)
72596bea0e4fSmrg	    # FIXME: insert proper C++ library support
72606bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
72616bea0e4fSmrg	    ;;
72626bea0e4fSmrg	esac
72636bea0e4fSmrg	;;
72646bea0e4fSmrg
72656bea0e4fSmrg      *-mlibc)
72666bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=yes
72676bea0e4fSmrg	;;
72686bea0e4fSmrg
72696bea0e4fSmrg      netbsd*)
72706bea0e4fSmrg        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
72716bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
72726bea0e4fSmrg	  wlarc=
72736bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
72746bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct, $1)=yes
72756bea0e4fSmrg	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
72766bea0e4fSmrg	fi
72776bea0e4fSmrg	# Workaround some broken pre-1.5 toolchains
72786bea0e4fSmrg	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
72796bea0e4fSmrg	;;
72806bea0e4fSmrg
72816bea0e4fSmrg      *nto* | *qnx*)
72826bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=yes
72836bea0e4fSmrg	;;
72846bea0e4fSmrg
72856bea0e4fSmrg      openbsd*)
72866bea0e4fSmrg	if test -f /usr/libexec/ld.so; then
72876bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct, $1)=yes
72886bea0e4fSmrg	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
72896bea0e4fSmrg	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
72906bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
72916bea0e4fSmrg	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
72926bea0e4fSmrg	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
72936bea0e4fSmrg	    _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'
72946bea0e4fSmrg	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
72956bea0e4fSmrg	    _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
72966bea0e4fSmrg	  fi
72976bea0e4fSmrg	  output_verbose_link_cmd=func_echo_all
72986bea0e4fSmrg	else
72996bea0e4fSmrg	  _LT_TAGVAR(ld_shlibs, $1)=no
73006bea0e4fSmrg	fi
73016bea0e4fSmrg	;;
73026bea0e4fSmrg
73036bea0e4fSmrg      osf3* | osf4* | osf5*)
73046bea0e4fSmrg        case $cc_basename in
73056bea0e4fSmrg          KCC*)
73066bea0e4fSmrg	    # Kuck and Associates, Inc. (KAI) C++ Compiler
73076bea0e4fSmrg
73086bea0e4fSmrg	    # KCC will only create a shared library if the output file
73096bea0e4fSmrg	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
73106bea0e4fSmrg	    # to its proper name (with version) after linking.
73116bea0e4fSmrg	    _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'
73126bea0e4fSmrg
73136bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
73146bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
73156bea0e4fSmrg
73166bea0e4fSmrg	    # Archives containing C++ object files must be created using
73176bea0e4fSmrg	    # the KAI C++ compiler.
73186bea0e4fSmrg	    case $host in
73196bea0e4fSmrg	      osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
73206bea0e4fSmrg	      *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
73216bea0e4fSmrg	    esac
73226bea0e4fSmrg	    ;;
73236bea0e4fSmrg          RCC*)
73246bea0e4fSmrg	    # Rational C++ 2.4.1
73256bea0e4fSmrg	    # FIXME: insert proper C++ library support
73266bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
73276bea0e4fSmrg	    ;;
73286bea0e4fSmrg          cxx*)
73296bea0e4fSmrg	    case $host in
73306bea0e4fSmrg	      osf3*)
73316bea0e4fSmrg	        _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
73326bea0e4fSmrg	        _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'
73336bea0e4fSmrg	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
73346bea0e4fSmrg		;;
73356bea0e4fSmrg	      *)
73366bea0e4fSmrg	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
73376bea0e4fSmrg	        _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'
73386bea0e4fSmrg	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
73396bea0e4fSmrg                  echo "-hidden">> $lib.exp~
73406bea0e4fSmrg                  $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~
73416bea0e4fSmrg                  $RM $lib.exp'
73426bea0e4fSmrg	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
73436bea0e4fSmrg		;;
73446bea0e4fSmrg	    esac
73456bea0e4fSmrg
73466bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
73476bea0e4fSmrg
73486bea0e4fSmrg	    # Commands to make compiler produce verbose output that lists
73496bea0e4fSmrg	    # what "hidden" libraries, object files and flags are used when
73506bea0e4fSmrg	    # linking a shared library.
73516bea0e4fSmrg	    #
73526bea0e4fSmrg	    # There doesn't appear to be a way to prevent this compiler from
73536bea0e4fSmrg	    # explicitly linking system object files so we need to strip them
73546bea0e4fSmrg	    # from the output so that they don't get included in the library
73556bea0e4fSmrg	    # dependencies.
73566bea0e4fSmrg	    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"'
73576bea0e4fSmrg	    ;;
73586bea0e4fSmrg	  *)
73596bea0e4fSmrg	    if test yes,no = "$GXX,$with_gnu_ld"; then
73606bea0e4fSmrg	      _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
73616bea0e4fSmrg	      case $host in
73626bea0e4fSmrg	        osf3*)
73636bea0e4fSmrg	          _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'
73646bea0e4fSmrg		  ;;
73656bea0e4fSmrg	        *)
73666bea0e4fSmrg	          _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'
73676bea0e4fSmrg		  ;;
73686bea0e4fSmrg	      esac
73696bea0e4fSmrg
73706bea0e4fSmrg	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
73716bea0e4fSmrg	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
73726bea0e4fSmrg
73736bea0e4fSmrg	      # Commands to make compiler produce verbose output that lists
73746bea0e4fSmrg	      # what "hidden" libraries, object files and flags are used when
73756bea0e4fSmrg	      # linking a shared library.
73766bea0e4fSmrg	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"'
73776bea0e4fSmrg
73786bea0e4fSmrg	    else
73796bea0e4fSmrg	      # FIXME: insert proper C++ library support
73806bea0e4fSmrg	      _LT_TAGVAR(ld_shlibs, $1)=no
73816bea0e4fSmrg	    fi
73826bea0e4fSmrg	    ;;
73836bea0e4fSmrg        esac
73846bea0e4fSmrg        ;;
73856bea0e4fSmrg
73866bea0e4fSmrg      psos*)
73876bea0e4fSmrg        # FIXME: insert proper C++ library support
73886bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=no
73896bea0e4fSmrg        ;;
73906bea0e4fSmrg
73916bea0e4fSmrg      serenity*)
73926bea0e4fSmrg        ;;
73936bea0e4fSmrg
73946bea0e4fSmrg      sunos4*)
73956bea0e4fSmrg        case $cc_basename in
73966bea0e4fSmrg          CC*)
73976bea0e4fSmrg	    # Sun C++ 4.x
73986bea0e4fSmrg	    # FIXME: insert proper C++ library support
73996bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
74006bea0e4fSmrg	    ;;
74016bea0e4fSmrg          lcc*)
74026bea0e4fSmrg	    # Lucid
74036bea0e4fSmrg	    # FIXME: insert proper C++ library support
74046bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
74056bea0e4fSmrg	    ;;
74066bea0e4fSmrg          *)
74076bea0e4fSmrg	    # FIXME: insert proper C++ library support
74086bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
74096bea0e4fSmrg	    ;;
74106bea0e4fSmrg        esac
74116bea0e4fSmrg        ;;
74126bea0e4fSmrg
74136bea0e4fSmrg      solaris*)
74146bea0e4fSmrg        case $cc_basename in
74156bea0e4fSmrg          CC* | sunCC*)
74166bea0e4fSmrg	    # Sun C++ 4.2, 5.x and Centerline C++
74176bea0e4fSmrg            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
74186bea0e4fSmrg	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
74196bea0e4fSmrg	    _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
74206bea0e4fSmrg	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
74216bea0e4fSmrg              $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'
74226bea0e4fSmrg
74236bea0e4fSmrg	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
74246bea0e4fSmrg	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
74256bea0e4fSmrg	    case $host_os in
74266bea0e4fSmrg	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
74276bea0e4fSmrg	      *)
74286bea0e4fSmrg		# The compiler driver will combine and reorder linker options,
74296bea0e4fSmrg		# but understands '-z linker_flag'.
74306bea0e4fSmrg	        # Supported since Solaris 2.6 (maybe 2.5.1?)
74316bea0e4fSmrg		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
74326bea0e4fSmrg	        ;;
74336bea0e4fSmrg	    esac
74346bea0e4fSmrg	    _LT_TAGVAR(link_all_deplibs, $1)=yes
74356bea0e4fSmrg
74366bea0e4fSmrg	    output_verbose_link_cmd='func_echo_all'
74376bea0e4fSmrg
74386bea0e4fSmrg	    # Archives containing C++ object files must be created using
74396bea0e4fSmrg	    # "CC -xar", where "CC" is the Sun C++ compiler.  This is
74406bea0e4fSmrg	    # necessary to make sure instantiated templates are included
74416bea0e4fSmrg	    # in the archive.
74426bea0e4fSmrg	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
74436bea0e4fSmrg	    ;;
74446bea0e4fSmrg          gcx*)
74456bea0e4fSmrg	    # Green Hills C++ Compiler
74466bea0e4fSmrg	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
74476bea0e4fSmrg
74486bea0e4fSmrg	    # The C++ compiler must be used to create the archive.
74496bea0e4fSmrg	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
74506bea0e4fSmrg	    ;;
74516bea0e4fSmrg          *)
74526bea0e4fSmrg	    # GNU C++ compiler with Solaris linker
74536bea0e4fSmrg	    if test yes,no = "$GXX,$with_gnu_ld"; then
74546bea0e4fSmrg	      _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
74556bea0e4fSmrg	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
74566bea0e4fSmrg	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
74576bea0e4fSmrg	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
74586bea0e4fSmrg                  $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'
74596bea0e4fSmrg
74606bea0e4fSmrg	        # Commands to make compiler produce verbose output that lists
74616bea0e4fSmrg	        # what "hidden" libraries, object files and flags are used when
74626bea0e4fSmrg	        # linking a shared library.
74636bea0e4fSmrg	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"'
74646bea0e4fSmrg	      else
74656bea0e4fSmrg	        # g++ 2.7 appears to require '-G' NOT '-shared' on this
74666bea0e4fSmrg	        # platform.
74676bea0e4fSmrg	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
74686bea0e4fSmrg	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
74696bea0e4fSmrg                  $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'
74706bea0e4fSmrg
74716bea0e4fSmrg	        # Commands to make compiler produce verbose output that lists
74726bea0e4fSmrg	        # what "hidden" libraries, object files and flags are used when
74736bea0e4fSmrg	        # linking a shared library.
74746bea0e4fSmrg	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " [[-]]L"'
74756bea0e4fSmrg	      fi
74766bea0e4fSmrg
74776bea0e4fSmrg	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
74786bea0e4fSmrg	      case $host_os in
74796bea0e4fSmrg		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
74806bea0e4fSmrg		*)
74816bea0e4fSmrg		  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
74826bea0e4fSmrg		  ;;
74836bea0e4fSmrg	      esac
74846bea0e4fSmrg	    fi
74856bea0e4fSmrg	    ;;
74866bea0e4fSmrg        esac
74876bea0e4fSmrg        ;;
74886bea0e4fSmrg
74896bea0e4fSmrg    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
74906bea0e4fSmrg      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
74916bea0e4fSmrg      _LT_TAGVAR(archive_cmds_need_lc, $1)=no
74926bea0e4fSmrg      _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
74936bea0e4fSmrg      runpath_var='LD_RUN_PATH'
74946bea0e4fSmrg
74956bea0e4fSmrg      case $cc_basename in
74966bea0e4fSmrg        CC*)
74976bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
74986bea0e4fSmrg	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
74996bea0e4fSmrg	  ;;
75006bea0e4fSmrg	*)
75016bea0e4fSmrg	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
75026bea0e4fSmrg	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
75036bea0e4fSmrg	  ;;
75046bea0e4fSmrg      esac
75056bea0e4fSmrg      ;;
75066bea0e4fSmrg
75076bea0e4fSmrg      sysv5* | sco3.2v5* | sco5v6*)
75086bea0e4fSmrg	# Note: We CANNOT use -z defs as we might desire, because we do not
75096bea0e4fSmrg	# link with -lc, and that would cause any symbols used from libc to
75106bea0e4fSmrg	# always be unresolved, which means just about no library would
75116bea0e4fSmrg	# ever link correctly.  If we're not using GNU ld we use -z text
75126bea0e4fSmrg	# though, which does catch some bad symbols but isn't as heavy-handed
75136bea0e4fSmrg	# as -z defs.
75146bea0e4fSmrg	_LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
75156bea0e4fSmrg	_LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
75166bea0e4fSmrg	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
75176bea0e4fSmrg	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
75186bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
75196bea0e4fSmrg	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
75206bea0e4fSmrg	_LT_TAGVAR(link_all_deplibs, $1)=yes
75216bea0e4fSmrg	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
75226bea0e4fSmrg	runpath_var='LD_RUN_PATH'
75236bea0e4fSmrg
75246bea0e4fSmrg	case $cc_basename in
75256bea0e4fSmrg          CC*)
75266bea0e4fSmrg	    _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
75276bea0e4fSmrg	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
75286bea0e4fSmrg	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
75296bea0e4fSmrg              '"$_LT_TAGVAR(old_archive_cmds, $1)"
75306bea0e4fSmrg	    _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
75316bea0e4fSmrg              '"$_LT_TAGVAR(reload_cmds, $1)"
75326bea0e4fSmrg	    ;;
75336bea0e4fSmrg	  *)
75346bea0e4fSmrg	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
75356bea0e4fSmrg	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
75366bea0e4fSmrg	    ;;
75376bea0e4fSmrg	esac
75386bea0e4fSmrg      ;;
75396bea0e4fSmrg
75406bea0e4fSmrg      tandem*)
75416bea0e4fSmrg        case $cc_basename in
75426bea0e4fSmrg          NCC*)
75436bea0e4fSmrg	    # NonStop-UX NCC 3.20
75446bea0e4fSmrg	    # FIXME: insert proper C++ library support
75456bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
75466bea0e4fSmrg	    ;;
75476bea0e4fSmrg          *)
75486bea0e4fSmrg	    # FIXME: insert proper C++ library support
75496bea0e4fSmrg	    _LT_TAGVAR(ld_shlibs, $1)=no
75506bea0e4fSmrg	    ;;
75516bea0e4fSmrg        esac
75526bea0e4fSmrg        ;;
75536bea0e4fSmrg
75546bea0e4fSmrg      vxworks*)
75556bea0e4fSmrg        # FIXME: insert proper C++ library support
75566bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=no
75576bea0e4fSmrg        ;;
75586bea0e4fSmrg
75596bea0e4fSmrg      *)
75606bea0e4fSmrg        # FIXME: insert proper C++ library support
75616bea0e4fSmrg        _LT_TAGVAR(ld_shlibs, $1)=no
75626bea0e4fSmrg        ;;
75636bea0e4fSmrg    esac
75646bea0e4fSmrg
75656bea0e4fSmrg    AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
75666bea0e4fSmrg    test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
75676bea0e4fSmrg
75686bea0e4fSmrg    _LT_TAGVAR(GCC, $1)=$GXX
75696bea0e4fSmrg    _LT_TAGVAR(LD, $1)=$LD
75706bea0e4fSmrg
75716bea0e4fSmrg    ## CAVEAT EMPTOR:
75726bea0e4fSmrg    ## There is no encapsulation within the following macros, do not change
75736bea0e4fSmrg    ## the running order or otherwise move them around unless you know exactly
75746bea0e4fSmrg    ## what you are doing...
75756bea0e4fSmrg    _LT_SYS_HIDDEN_LIBDEPS($1)
75766bea0e4fSmrg    _LT_COMPILER_PIC($1)
75776bea0e4fSmrg    _LT_COMPILER_C_O($1)
75786bea0e4fSmrg    _LT_COMPILER_FILE_LOCKS($1)
75796bea0e4fSmrg    _LT_LINKER_SHLIBS($1)
75806bea0e4fSmrg    _LT_SYS_DYNAMIC_LINKER($1)
75816bea0e4fSmrg    _LT_LINKER_HARDCODE_LIBPATH($1)
75826bea0e4fSmrg
75836bea0e4fSmrg    _LT_CONFIG($1)
75846bea0e4fSmrg  fi # test -n "$compiler"
75856bea0e4fSmrg
75866bea0e4fSmrg  CC=$lt_save_CC
75876bea0e4fSmrg  CFLAGS=$lt_save_CFLAGS
75886bea0e4fSmrg  LDCXX=$LD
75896bea0e4fSmrg  LD=$lt_save_LD
75906bea0e4fSmrg  GCC=$lt_save_GCC
75916bea0e4fSmrg  with_gnu_ld=$lt_save_with_gnu_ld
75926bea0e4fSmrg  lt_cv_path_LDCXX=$lt_cv_path_LD
75936bea0e4fSmrg  lt_cv_path_LD=$lt_save_path_LD
75946bea0e4fSmrg  lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
75956bea0e4fSmrg  lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
75966bea0e4fSmrgfi # test yes != "$_lt_caught_CXX_error"
75976bea0e4fSmrg
75986bea0e4fSmrgAC_LANG_POP
75996bea0e4fSmrg])# _LT_LANG_CXX_CONFIG
76006bea0e4fSmrg
76016bea0e4fSmrg
76026bea0e4fSmrg# _LT_FUNC_STRIPNAME_CNF
76036bea0e4fSmrg# ----------------------
76046bea0e4fSmrg# func_stripname_cnf prefix suffix name
76056bea0e4fSmrg# strip PREFIX and SUFFIX off of NAME.
76066bea0e4fSmrg# PREFIX and SUFFIX must not contain globbing or regex special
76076bea0e4fSmrg# characters, hashes, percent signs, but SUFFIX may contain a leading
76086bea0e4fSmrg# dot (in which case that matches only a dot).
76096bea0e4fSmrg#
76106bea0e4fSmrg# This function is identical to the (non-XSI) version of func_stripname,
76116bea0e4fSmrg# except this one can be used by m4 code that may be executed by configure,
76126bea0e4fSmrg# rather than the libtool script.
76136bea0e4fSmrgm4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
76146bea0e4fSmrgAC_REQUIRE([_LT_DECL_SED])
76156bea0e4fSmrgAC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
76166bea0e4fSmrgfunc_stripname_cnf ()
76176bea0e4fSmrg{
76186bea0e4fSmrg  case @S|@2 in
76196bea0e4fSmrg  .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
76206bea0e4fSmrg  *)  func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
76216bea0e4fSmrg  esac
76226bea0e4fSmrg} # func_stripname_cnf
76236bea0e4fSmrg])# _LT_FUNC_STRIPNAME_CNF
76246bea0e4fSmrg
76256bea0e4fSmrg
76266bea0e4fSmrg# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
76276bea0e4fSmrg# ---------------------------------
76286bea0e4fSmrg# Figure out "hidden" library dependencies from verbose
76296bea0e4fSmrg# compiler output when linking a shared library.
76306bea0e4fSmrg# Parse the compiler output and extract the necessary
76316bea0e4fSmrg# objects, libraries and library flags.
76326bea0e4fSmrgm4_defun([_LT_SYS_HIDDEN_LIBDEPS],
76336bea0e4fSmrg[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
76346bea0e4fSmrgAC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
76356bea0e4fSmrg# Dependencies to place before and after the object being linked:
76366bea0e4fSmrg_LT_TAGVAR(predep_objects, $1)=
76376bea0e4fSmrg_LT_TAGVAR(postdep_objects, $1)=
76386bea0e4fSmrg_LT_TAGVAR(predeps, $1)=
76396bea0e4fSmrg_LT_TAGVAR(postdeps, $1)=
76406bea0e4fSmrg_LT_TAGVAR(compiler_lib_search_path, $1)=
76416bea0e4fSmrg
76426bea0e4fSmrgdnl we can't use the lt_simple_compile_test_code here,
76436bea0e4fSmrgdnl because it contains code intended for an executable,
76446bea0e4fSmrgdnl not a library.  It's possible we should let each
76456bea0e4fSmrgdnl tag define a new lt_????_link_test_code variable,
76466bea0e4fSmrgdnl but it's only used here...
76476bea0e4fSmrgm4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
76486bea0e4fSmrgint a;
76496bea0e4fSmrgvoid foo (void) { a = 0; }
76506bea0e4fSmrg_LT_EOF
76516bea0e4fSmrg], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
76526bea0e4fSmrgclass Foo
76536bea0e4fSmrg{
76546bea0e4fSmrgpublic:
76556bea0e4fSmrg  Foo (void) { a = 0; }
76566bea0e4fSmrgprivate:
76576bea0e4fSmrg  int a;
76586bea0e4fSmrg};
76596bea0e4fSmrg_LT_EOF
76606bea0e4fSmrg], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
76616bea0e4fSmrg      subroutine foo
76626bea0e4fSmrg      implicit none
76636bea0e4fSmrg      integer*4 a
76646bea0e4fSmrg      a=0
76656bea0e4fSmrg      return
76666bea0e4fSmrg      end
76676bea0e4fSmrg_LT_EOF
76686bea0e4fSmrg], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
76696bea0e4fSmrg      subroutine foo
76706bea0e4fSmrg      implicit none
76716bea0e4fSmrg      integer a
76726bea0e4fSmrg      a=0
76736bea0e4fSmrg      return
76746bea0e4fSmrg      end
76756bea0e4fSmrg_LT_EOF
76766bea0e4fSmrg], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
76776bea0e4fSmrgpublic class foo {
76786bea0e4fSmrg  private int a;
76796bea0e4fSmrg  public void bar (void) {
76806bea0e4fSmrg    a = 0;
76816bea0e4fSmrg  }
76826bea0e4fSmrg};
76836bea0e4fSmrg_LT_EOF
76846bea0e4fSmrg], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
76856bea0e4fSmrgpackage foo
76866bea0e4fSmrgfunc foo() {
76876bea0e4fSmrg}
76886bea0e4fSmrg_LT_EOF
76896bea0e4fSmrg])
76906bea0e4fSmrg
76916bea0e4fSmrg_lt_libdeps_save_CFLAGS=$CFLAGS
76926bea0e4fSmrgcase "$CC $CFLAGS " in #(
76936bea0e4fSmrg*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
76946bea0e4fSmrg*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
76956bea0e4fSmrg*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
76966bea0e4fSmrgesac
76976bea0e4fSmrg
76986bea0e4fSmrgdnl Parse the compiler output and extract the necessary
76996bea0e4fSmrgdnl objects, libraries and library flags.
77006bea0e4fSmrgif AC_TRY_EVAL(ac_compile); then
77016bea0e4fSmrg  # Parse the compiler output and extract the necessary
77026bea0e4fSmrg  # objects, libraries and library flags.
77036bea0e4fSmrg
77046bea0e4fSmrg  # Sentinel used to keep track of whether or not we are before
77056bea0e4fSmrg  # the conftest object file.
77066bea0e4fSmrg  pre_test_object_deps_done=no
77076bea0e4fSmrg
77086bea0e4fSmrg  for p in `eval "$output_verbose_link_cmd"`; do
77096bea0e4fSmrg    case $prev$p in
77106bea0e4fSmrg
77116bea0e4fSmrg    -L* | -R* | -l*)
77126bea0e4fSmrg       # Some compilers place space between "-{L,R,l}" and the path.
77136bea0e4fSmrg       # Remove the space.
77146bea0e4fSmrg       if test x-L = x"$p" ||
77156bea0e4fSmrg          test x-R = x"$p" ||
77166bea0e4fSmrg          test x-l = x"$p"; then
77176bea0e4fSmrg	 prev=$p
77186bea0e4fSmrg	 continue
77196bea0e4fSmrg       fi
77206bea0e4fSmrg
77216bea0e4fSmrg       # Expand the sysroot to ease extracting the directories later.
77226bea0e4fSmrg       if test -z "$prev"; then
77236bea0e4fSmrg         case $p in
77246bea0e4fSmrg         -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
77256bea0e4fSmrg         -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
77266bea0e4fSmrg         -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
77276bea0e4fSmrg         esac
77286bea0e4fSmrg       fi
77296bea0e4fSmrg       case $p in
77306bea0e4fSmrg       =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
77316bea0e4fSmrg       esac
77326bea0e4fSmrg       if test no = "$pre_test_object_deps_done"; then
77336bea0e4fSmrg	 case $prev in
77346bea0e4fSmrg	 -L | -R)
77356bea0e4fSmrg	   # Internal compiler library paths should come after those
77366bea0e4fSmrg	   # provided the user.  The postdeps already come after the
77376bea0e4fSmrg	   # user supplied libs so there is no need to process them.
77386bea0e4fSmrg	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
77396bea0e4fSmrg	     _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
77406bea0e4fSmrg	   else
77416bea0e4fSmrg	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
77426bea0e4fSmrg	   fi
77436bea0e4fSmrg	   ;;
77446bea0e4fSmrg	 # The "-l" case would never come before the object being
77456bea0e4fSmrg	 # linked, so don't bother handling this case.
77466bea0e4fSmrg	 esac
77476bea0e4fSmrg       else
77486bea0e4fSmrg	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
77496bea0e4fSmrg	   _LT_TAGVAR(postdeps, $1)=$prev$p
77506bea0e4fSmrg	 else
77516bea0e4fSmrg	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
77526bea0e4fSmrg	 fi
77536bea0e4fSmrg       fi
77546bea0e4fSmrg       prev=
77556bea0e4fSmrg       ;;
77566bea0e4fSmrg
77576bea0e4fSmrg    *.lto.$objext) ;; # Ignore GCC LTO objects
77586bea0e4fSmrg    *.$objext)
77596bea0e4fSmrg       # This assumes that the test object file only shows up
77606bea0e4fSmrg       # once in the compiler output.
77616bea0e4fSmrg       if test "$p" = "conftest.$objext"; then
77626bea0e4fSmrg	 pre_test_object_deps_done=yes
77636bea0e4fSmrg	 continue
77646bea0e4fSmrg       fi
77656bea0e4fSmrg
77666bea0e4fSmrg       if test no = "$pre_test_object_deps_done"; then
77676bea0e4fSmrg	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
77686bea0e4fSmrg	   _LT_TAGVAR(predep_objects, $1)=$p
77696bea0e4fSmrg	 else
77706bea0e4fSmrg	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
77716bea0e4fSmrg	 fi
77726bea0e4fSmrg       else
77736bea0e4fSmrg	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
77746bea0e4fSmrg	   _LT_TAGVAR(postdep_objects, $1)=$p
77756bea0e4fSmrg	 else
77766bea0e4fSmrg	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
77776bea0e4fSmrg	 fi
77786bea0e4fSmrg       fi
77796bea0e4fSmrg       ;;
77806bea0e4fSmrg
77816bea0e4fSmrg    *) ;; # Ignore the rest.
77826bea0e4fSmrg
77836bea0e4fSmrg    esac
77846bea0e4fSmrg  done
77856bea0e4fSmrg
77866bea0e4fSmrg  # Clean up.
77876bea0e4fSmrg  rm -f a.out a.exe
77886bea0e4fSmrgelse
77896bea0e4fSmrg  echo "libtool.m4: error: problem compiling $1 test program"
77906bea0e4fSmrgfi
77916bea0e4fSmrg
77926bea0e4fSmrg$RM -f confest.$objext
77936bea0e4fSmrgCFLAGS=$_lt_libdeps_save_CFLAGS
77946bea0e4fSmrg
77956bea0e4fSmrg# PORTME: override above test on systems where it is broken
77966bea0e4fSmrgm4_if([$1], [CXX],
77976bea0e4fSmrg[case $host_os in
77986bea0e4fSmrginterix[[3-9]]*)
77996bea0e4fSmrg  # Interix 3.5 installs completely hosed .la files for C++, so rather than
78006bea0e4fSmrg  # hack all around it, let's just trust "g++" to DTRT.
78016bea0e4fSmrg  _LT_TAGVAR(predep_objects,$1)=
78026bea0e4fSmrg  _LT_TAGVAR(postdep_objects,$1)=
78036bea0e4fSmrg  _LT_TAGVAR(postdeps,$1)=
78046bea0e4fSmrg  ;;
78056bea0e4fSmrgesac
78066bea0e4fSmrg])
78076bea0e4fSmrg
78086bea0e4fSmrgcase " $_LT_TAGVAR(postdeps, $1) " in
78096bea0e4fSmrg*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
78106bea0e4fSmrgesac
78116bea0e4fSmrg _LT_TAGVAR(compiler_lib_search_dirs, $1)=
78126bea0e4fSmrgif test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
78136bea0e4fSmrg _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
78146bea0e4fSmrgfi
78156bea0e4fSmrg_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
78166bea0e4fSmrg    [The directories searched by this compiler when creating a shared library])
78176bea0e4fSmrg_LT_TAGDECL([], [predep_objects], [1],
78186bea0e4fSmrg    [Dependencies to place before and after the objects being linked to
78196bea0e4fSmrg    create a shared library])
78206bea0e4fSmrg_LT_TAGDECL([], [postdep_objects], [1])
78216bea0e4fSmrg_LT_TAGDECL([], [predeps], [1])
78226bea0e4fSmrg_LT_TAGDECL([], [postdeps], [1])
78236bea0e4fSmrg_LT_TAGDECL([], [compiler_lib_search_path], [1],
78246bea0e4fSmrg    [The library search path used internally by the compiler when linking
78256bea0e4fSmrg    a shared library])
78266bea0e4fSmrg])# _LT_SYS_HIDDEN_LIBDEPS
78276bea0e4fSmrg
78286bea0e4fSmrg
78296bea0e4fSmrg# _LT_LANG_F77_CONFIG([TAG])
78306bea0e4fSmrg# --------------------------
78316bea0e4fSmrg# Ensure that the configuration variables for a Fortran 77 compiler are
78326bea0e4fSmrg# suitably defined.  These variables are subsequently used by _LT_CONFIG
78336bea0e4fSmrg# to write the compiler configuration to 'libtool'.
78346bea0e4fSmrgm4_defun([_LT_LANG_F77_CONFIG],
78356bea0e4fSmrg[AC_LANG_PUSH(Fortran 77)
78366bea0e4fSmrgif test -z "$F77" || test no = "$F77"; then
78376bea0e4fSmrg  _lt_disable_F77=yes
78386bea0e4fSmrgfi
78396bea0e4fSmrg
78406bea0e4fSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no
78416bea0e4fSmrg_LT_TAGVAR(allow_undefined_flag, $1)=
78426bea0e4fSmrg_LT_TAGVAR(always_export_symbols, $1)=no
78436bea0e4fSmrg_LT_TAGVAR(archive_expsym_cmds, $1)=
78446bea0e4fSmrg_LT_TAGVAR(export_dynamic_flag_spec, $1)=
78456bea0e4fSmrg_LT_TAGVAR(hardcode_direct, $1)=no
78466bea0e4fSmrg_LT_TAGVAR(hardcode_direct_absolute, $1)=no
78476bea0e4fSmrg_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
78486bea0e4fSmrg_LT_TAGVAR(hardcode_libdir_separator, $1)=
78496bea0e4fSmrg_LT_TAGVAR(hardcode_minus_L, $1)=no
78506bea0e4fSmrg_LT_TAGVAR(hardcode_automatic, $1)=no
78516bea0e4fSmrg_LT_TAGVAR(inherit_rpath, $1)=no
78526bea0e4fSmrg_LT_TAGVAR(module_cmds, $1)=
78536bea0e4fSmrg_LT_TAGVAR(module_expsym_cmds, $1)=
78546bea0e4fSmrg_LT_TAGVAR(link_all_deplibs, $1)=unknown
78556bea0e4fSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
78566bea0e4fSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag
78576bea0e4fSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
78586bea0e4fSmrg_LT_TAGVAR(no_undefined_flag, $1)=
78596bea0e4fSmrg_LT_TAGVAR(whole_archive_flag_spec, $1)=
78606bea0e4fSmrg_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
78616bea0e4fSmrg
78626bea0e4fSmrg# Source file extension for f77 test sources.
78636bea0e4fSmrgac_ext=f
78646bea0e4fSmrg
78656bea0e4fSmrg# Object file extension for compiled f77 test sources.
78666bea0e4fSmrgobjext=o
78676bea0e4fSmrg_LT_TAGVAR(objext, $1)=$objext
78686bea0e4fSmrg
78696bea0e4fSmrg# No sense in running all these tests if we already determined that
78706bea0e4fSmrg# the F77 compiler isn't working.  Some variables (like enable_shared)
78716bea0e4fSmrg# are currently assumed to apply to all compilers on this platform,
78726bea0e4fSmrg# and will be corrupted by setting them based on a non-working compiler.
78736bea0e4fSmrgif test yes != "$_lt_disable_F77"; then
78746bea0e4fSmrg  # Code to be used in simple compile tests
78756bea0e4fSmrg  lt_simple_compile_test_code="\
78766bea0e4fSmrg      subroutine t
78776bea0e4fSmrg      return
78786bea0e4fSmrg      end
78796bea0e4fSmrg"
78806bea0e4fSmrg
78816bea0e4fSmrg  # Code to be used in simple link tests
78826bea0e4fSmrg  lt_simple_link_test_code="\
78836bea0e4fSmrg      program t
78846bea0e4fSmrg      end
78856bea0e4fSmrg"
78866bea0e4fSmrg
78876bea0e4fSmrg  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
78886bea0e4fSmrg  _LT_TAG_COMPILER
78896bea0e4fSmrg
78906bea0e4fSmrg  # save warnings/boilerplate of simple test code
78916bea0e4fSmrg  _LT_COMPILER_BOILERPLATE
78926bea0e4fSmrg  _LT_LINKER_BOILERPLATE
78936bea0e4fSmrg
78946bea0e4fSmrg  # Allow CC to be a program name with arguments.
78956bea0e4fSmrg  lt_save_CC=$CC
78966bea0e4fSmrg  lt_save_GCC=$GCC
78976bea0e4fSmrg  lt_save_CFLAGS=$CFLAGS
78986bea0e4fSmrg  CC=${F77-"f77"}
78996bea0e4fSmrg  CFLAGS=$FFLAGS
79006bea0e4fSmrg  compiler=$CC
79016bea0e4fSmrg  _LT_TAGVAR(compiler, $1)=$CC
79026bea0e4fSmrg  _LT_CC_BASENAME([$compiler])
79036bea0e4fSmrg  GCC=$G77
79046bea0e4fSmrg  if test -n "$compiler"; then
79056bea0e4fSmrg    AC_MSG_CHECKING([if libtool supports shared libraries])
79066bea0e4fSmrg    AC_MSG_RESULT([$can_build_shared])
79076bea0e4fSmrg
79086bea0e4fSmrg    AC_MSG_CHECKING([whether to build shared libraries])
79096bea0e4fSmrg    test no = "$can_build_shared" && enable_shared=no
79106bea0e4fSmrg
79116bea0e4fSmrg    # On AIX, shared libraries and static libraries use the same namespace, and
79126bea0e4fSmrg    # are all built from PIC.
79136bea0e4fSmrg    case $host_os in
79146bea0e4fSmrg      aix3*)
79156bea0e4fSmrg        test yes = "$enable_shared" && enable_static=no
79166bea0e4fSmrg        if test -n "$RANLIB"; then
79176bea0e4fSmrg          archive_cmds="$archive_cmds~\$RANLIB \$lib"
79186bea0e4fSmrg          postinstall_cmds='$RANLIB $lib'
79196bea0e4fSmrg        fi
79206bea0e4fSmrg        ;;
79216bea0e4fSmrg      aix[[4-9]]*)
79226bea0e4fSmrg	if test ia64 != "$host_cpu"; then
79236bea0e4fSmrg	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
79246bea0e4fSmrg	  yes,aix,yes) ;;		# shared object as lib.so file only
79256bea0e4fSmrg	  yes,svr4,*) ;;		# shared object as lib.so archive member only
79266bea0e4fSmrg	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
79276bea0e4fSmrg	  esac
79286bea0e4fSmrg	fi
79296bea0e4fSmrg        ;;
79306bea0e4fSmrg    esac
79316bea0e4fSmrg    AC_MSG_RESULT([$enable_shared])
79326bea0e4fSmrg
79336bea0e4fSmrg    AC_MSG_CHECKING([whether to build static libraries])
79346bea0e4fSmrg    # Make sure either enable_shared or enable_static is yes.
79356bea0e4fSmrg    test yes = "$enable_shared" || enable_static=yes
79366bea0e4fSmrg    AC_MSG_RESULT([$enable_static])
79376bea0e4fSmrg
79386bea0e4fSmrg    _LT_TAGVAR(GCC, $1)=$G77
79396bea0e4fSmrg    _LT_TAGVAR(LD, $1)=$LD
79406bea0e4fSmrg
79416bea0e4fSmrg    ## CAVEAT EMPTOR:
79426bea0e4fSmrg    ## There is no encapsulation within the following macros, do not change
79436bea0e4fSmrg    ## the running order or otherwise move them around unless you know exactly
79446bea0e4fSmrg    ## what you are doing...
79456bea0e4fSmrg    _LT_COMPILER_PIC($1)
79466bea0e4fSmrg    _LT_COMPILER_C_O($1)
79476bea0e4fSmrg    _LT_COMPILER_FILE_LOCKS($1)
79486bea0e4fSmrg    _LT_LINKER_SHLIBS($1)
79496bea0e4fSmrg    _LT_SYS_DYNAMIC_LINKER($1)
79506bea0e4fSmrg    _LT_LINKER_HARDCODE_LIBPATH($1)
79516bea0e4fSmrg
79526bea0e4fSmrg    _LT_CONFIG($1)
79536bea0e4fSmrg  fi # test -n "$compiler"
79546bea0e4fSmrg
79556bea0e4fSmrg  GCC=$lt_save_GCC
79566bea0e4fSmrg  CC=$lt_save_CC
79576bea0e4fSmrg  CFLAGS=$lt_save_CFLAGS
79586bea0e4fSmrgfi # test yes != "$_lt_disable_F77"
79596bea0e4fSmrg
79606bea0e4fSmrgAC_LANG_POP
79616bea0e4fSmrg])# _LT_LANG_F77_CONFIG
79626bea0e4fSmrg
79636bea0e4fSmrg
79646bea0e4fSmrg# _LT_LANG_FC_CONFIG([TAG])
79656bea0e4fSmrg# -------------------------
79666bea0e4fSmrg# Ensure that the configuration variables for a Fortran compiler are
79676bea0e4fSmrg# suitably defined.  These variables are subsequently used by _LT_CONFIG
79686bea0e4fSmrg# to write the compiler configuration to 'libtool'.
79696bea0e4fSmrgm4_defun([_LT_LANG_FC_CONFIG],
79706bea0e4fSmrg[AC_LANG_PUSH(Fortran)
79716bea0e4fSmrg
79726bea0e4fSmrgif test -z "$FC" || test no = "$FC"; then
79736bea0e4fSmrg  _lt_disable_FC=yes
79746bea0e4fSmrgfi
79756bea0e4fSmrg
79766bea0e4fSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no
79776bea0e4fSmrg_LT_TAGVAR(allow_undefined_flag, $1)=
79786bea0e4fSmrg_LT_TAGVAR(always_export_symbols, $1)=no
79796bea0e4fSmrg_LT_TAGVAR(archive_expsym_cmds, $1)=
79806bea0e4fSmrg_LT_TAGVAR(export_dynamic_flag_spec, $1)=
79816bea0e4fSmrg_LT_TAGVAR(hardcode_direct, $1)=no
79826bea0e4fSmrg_LT_TAGVAR(hardcode_direct_absolute, $1)=no
79836bea0e4fSmrg_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
79846bea0e4fSmrg_LT_TAGVAR(hardcode_libdir_separator, $1)=
79856bea0e4fSmrg_LT_TAGVAR(hardcode_minus_L, $1)=no
79866bea0e4fSmrg_LT_TAGVAR(hardcode_automatic, $1)=no
79876bea0e4fSmrg_LT_TAGVAR(inherit_rpath, $1)=no
79886bea0e4fSmrg_LT_TAGVAR(module_cmds, $1)=
79896bea0e4fSmrg_LT_TAGVAR(module_expsym_cmds, $1)=
79906bea0e4fSmrg_LT_TAGVAR(link_all_deplibs, $1)=unknown
79916bea0e4fSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
79926bea0e4fSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag
79936bea0e4fSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
79946bea0e4fSmrg_LT_TAGVAR(no_undefined_flag, $1)=
79956bea0e4fSmrg_LT_TAGVAR(whole_archive_flag_spec, $1)=
79966bea0e4fSmrg_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
79976bea0e4fSmrg
79986bea0e4fSmrg# Source file extension for fc test sources.
79996bea0e4fSmrgac_ext=${ac_fc_srcext-f}
80006bea0e4fSmrg
80016bea0e4fSmrg# Object file extension for compiled fc test sources.
80026bea0e4fSmrgobjext=o
80036bea0e4fSmrg_LT_TAGVAR(objext, $1)=$objext
80046bea0e4fSmrg
80056bea0e4fSmrg# No sense in running all these tests if we already determined that
80066bea0e4fSmrg# the FC compiler isn't working.  Some variables (like enable_shared)
80076bea0e4fSmrg# are currently assumed to apply to all compilers on this platform,
80086bea0e4fSmrg# and will be corrupted by setting them based on a non-working compiler.
80096bea0e4fSmrgif test yes != "$_lt_disable_FC"; then
80106bea0e4fSmrg  # Code to be used in simple compile tests
80116bea0e4fSmrg  lt_simple_compile_test_code="\
80126bea0e4fSmrg      subroutine t
80136bea0e4fSmrg      return
80146bea0e4fSmrg      end
80156bea0e4fSmrg"
80166bea0e4fSmrg
80176bea0e4fSmrg  # Code to be used in simple link tests
80186bea0e4fSmrg  lt_simple_link_test_code="\
80196bea0e4fSmrg      program t
80206bea0e4fSmrg      end
80216bea0e4fSmrg"
80226bea0e4fSmrg
80236bea0e4fSmrg  # ltmain only uses $CC for tagged configurations so make sure $CC is set.
80246bea0e4fSmrg  _LT_TAG_COMPILER
80256bea0e4fSmrg
80266bea0e4fSmrg  # save warnings/boilerplate of simple test code
80276bea0e4fSmrg  _LT_COMPILER_BOILERPLATE
80286bea0e4fSmrg  _LT_LINKER_BOILERPLATE
80296bea0e4fSmrg
80306bea0e4fSmrg  # Allow CC to be a program name with arguments.
80316bea0e4fSmrg  lt_save_CC=$CC
80326bea0e4fSmrg  lt_save_GCC=$GCC
80336bea0e4fSmrg  lt_save_CFLAGS=$CFLAGS
80346bea0e4fSmrg  CC=${FC-"f95"}
80356bea0e4fSmrg  CFLAGS=$FCFLAGS
80366bea0e4fSmrg  compiler=$CC
80376bea0e4fSmrg  GCC=$ac_cv_fc_compiler_gnu
80386bea0e4fSmrg
80396bea0e4fSmrg  _LT_TAGVAR(compiler, $1)=$CC
80406bea0e4fSmrg  _LT_CC_BASENAME([$compiler])
80416bea0e4fSmrg
80426bea0e4fSmrg  if test -n "$compiler"; then
80436bea0e4fSmrg    AC_MSG_CHECKING([if libtool supports shared libraries])
80446bea0e4fSmrg    AC_MSG_RESULT([$can_build_shared])
80456bea0e4fSmrg
80466bea0e4fSmrg    AC_MSG_CHECKING([whether to build shared libraries])
80476bea0e4fSmrg    test no = "$can_build_shared" && enable_shared=no
80486bea0e4fSmrg
80496bea0e4fSmrg    # On AIX, shared libraries and static libraries use the same namespace, and
80506bea0e4fSmrg    # are all built from PIC.
80516bea0e4fSmrg    case $host_os in
80526bea0e4fSmrg      aix3*)
80536bea0e4fSmrg        test yes = "$enable_shared" && enable_static=no
80546bea0e4fSmrg        if test -n "$RANLIB"; then
80556bea0e4fSmrg          archive_cmds="$archive_cmds~\$RANLIB \$lib"
80566bea0e4fSmrg          postinstall_cmds='$RANLIB $lib'
80576bea0e4fSmrg        fi
80586bea0e4fSmrg        ;;
80596bea0e4fSmrg      aix[[4-9]]*)
80606bea0e4fSmrg	if test ia64 != "$host_cpu"; then
80616bea0e4fSmrg	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
80626bea0e4fSmrg	  yes,aix,yes) ;;		# shared object as lib.so file only
80636bea0e4fSmrg	  yes,svr4,*) ;;		# shared object as lib.so archive member only
80646bea0e4fSmrg	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
80656bea0e4fSmrg	  esac
80666bea0e4fSmrg	fi
80676bea0e4fSmrg        ;;
80686bea0e4fSmrg    esac
80696bea0e4fSmrg    AC_MSG_RESULT([$enable_shared])
80706bea0e4fSmrg
80716bea0e4fSmrg    AC_MSG_CHECKING([whether to build static libraries])
80726bea0e4fSmrg    # Make sure either enable_shared or enable_static is yes.
80736bea0e4fSmrg    test yes = "$enable_shared" || enable_static=yes
80746bea0e4fSmrg    AC_MSG_RESULT([$enable_static])
80756bea0e4fSmrg
80766bea0e4fSmrg    _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
80776bea0e4fSmrg    _LT_TAGVAR(LD, $1)=$LD
80786bea0e4fSmrg
80796bea0e4fSmrg    ## CAVEAT EMPTOR:
80806bea0e4fSmrg    ## There is no encapsulation within the following macros, do not change
80816bea0e4fSmrg    ## the running order or otherwise move them around unless you know exactly
80826bea0e4fSmrg    ## what you are doing...
80836bea0e4fSmrg    _LT_SYS_HIDDEN_LIBDEPS($1)
80846bea0e4fSmrg    _LT_COMPILER_PIC($1)
80856bea0e4fSmrg    _LT_COMPILER_C_O($1)
80866bea0e4fSmrg    _LT_COMPILER_FILE_LOCKS($1)
80876bea0e4fSmrg    _LT_LINKER_SHLIBS($1)
80886bea0e4fSmrg    _LT_SYS_DYNAMIC_LINKER($1)
80896bea0e4fSmrg    _LT_LINKER_HARDCODE_LIBPATH($1)
80906bea0e4fSmrg
80916bea0e4fSmrg    _LT_CONFIG($1)
80926bea0e4fSmrg  fi # test -n "$compiler"
80936bea0e4fSmrg
80946bea0e4fSmrg  GCC=$lt_save_GCC
80956bea0e4fSmrg  CC=$lt_save_CC
80966bea0e4fSmrg  CFLAGS=$lt_save_CFLAGS
80976bea0e4fSmrgfi # test yes != "$_lt_disable_FC"
80986bea0e4fSmrg
80996bea0e4fSmrgAC_LANG_POP
81006bea0e4fSmrg])# _LT_LANG_FC_CONFIG
81016bea0e4fSmrg
81026bea0e4fSmrg
81036bea0e4fSmrg# _LT_LANG_GCJ_CONFIG([TAG])
81046bea0e4fSmrg# --------------------------
81056bea0e4fSmrg# Ensure that the configuration variables for the GNU Java Compiler compiler
81066bea0e4fSmrg# are suitably defined.  These variables are subsequently used by _LT_CONFIG
81076bea0e4fSmrg# to write the compiler configuration to 'libtool'.
81086bea0e4fSmrgm4_defun([_LT_LANG_GCJ_CONFIG],
81096bea0e4fSmrg[AC_REQUIRE([LT_PROG_GCJ])dnl
81106bea0e4fSmrgAC_LANG_SAVE
81116bea0e4fSmrg
81126bea0e4fSmrg# Source file extension for Java test sources.
81136bea0e4fSmrgac_ext=java
81146bea0e4fSmrg
81156bea0e4fSmrg# Object file extension for compiled Java test sources.
81166bea0e4fSmrgobjext=o
81176bea0e4fSmrg_LT_TAGVAR(objext, $1)=$objext
81186bea0e4fSmrg
81196bea0e4fSmrg# Code to be used in simple compile tests
81206bea0e4fSmrglt_simple_compile_test_code="class foo {}"
81216bea0e4fSmrg
81226bea0e4fSmrg# Code to be used in simple link tests
81236bea0e4fSmrglt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
81246bea0e4fSmrg
81256bea0e4fSmrg# ltmain only uses $CC for tagged configurations so make sure $CC is set.
81266bea0e4fSmrg_LT_TAG_COMPILER
81276bea0e4fSmrg
81286bea0e4fSmrg# save warnings/boilerplate of simple test code
81296bea0e4fSmrg_LT_COMPILER_BOILERPLATE
81306bea0e4fSmrg_LT_LINKER_BOILERPLATE
81316bea0e4fSmrg
81326bea0e4fSmrg# Allow CC to be a program name with arguments.
81336bea0e4fSmrglt_save_CC=$CC
81346bea0e4fSmrglt_save_CFLAGS=$CFLAGS
81356bea0e4fSmrglt_save_GCC=$GCC
81366bea0e4fSmrgGCC=yes
81376bea0e4fSmrgCC=${GCJ-"gcj"}
81386bea0e4fSmrgCFLAGS=$GCJFLAGS
81396bea0e4fSmrgcompiler=$CC
81406bea0e4fSmrg_LT_TAGVAR(compiler, $1)=$CC
81416bea0e4fSmrg_LT_TAGVAR(LD, $1)=$LD
81426bea0e4fSmrg_LT_CC_BASENAME([$compiler])
81436bea0e4fSmrg
81446bea0e4fSmrg# GCJ did not exist at the time GCC didn't implicitly link libc in.
81456bea0e4fSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no
81466bea0e4fSmrg
81476bea0e4fSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
81486bea0e4fSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag
81496bea0e4fSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
81506bea0e4fSmrg
81516bea0e4fSmrg## CAVEAT EMPTOR:
81526bea0e4fSmrg## There is no encapsulation within the following macros, do not change
81536bea0e4fSmrg## the running order or otherwise move them around unless you know exactly
81546bea0e4fSmrg## what you are doing...
81556bea0e4fSmrgif test -n "$compiler"; then
81566bea0e4fSmrg  _LT_COMPILER_NO_RTTI($1)
81576bea0e4fSmrg  _LT_COMPILER_PIC($1)
81586bea0e4fSmrg  _LT_COMPILER_C_O($1)
81596bea0e4fSmrg  _LT_COMPILER_FILE_LOCKS($1)
81606bea0e4fSmrg  _LT_LINKER_SHLIBS($1)
81616bea0e4fSmrg  _LT_LINKER_HARDCODE_LIBPATH($1)
81626bea0e4fSmrg
81636bea0e4fSmrg  _LT_CONFIG($1)
81646bea0e4fSmrgfi
81656bea0e4fSmrg
81666bea0e4fSmrgAC_LANG_RESTORE
81676bea0e4fSmrg
81686bea0e4fSmrgGCC=$lt_save_GCC
81696bea0e4fSmrgCC=$lt_save_CC
81706bea0e4fSmrgCFLAGS=$lt_save_CFLAGS
81716bea0e4fSmrg])# _LT_LANG_GCJ_CONFIG
81726bea0e4fSmrg
81736bea0e4fSmrg
81746bea0e4fSmrg# _LT_LANG_GO_CONFIG([TAG])
81756bea0e4fSmrg# --------------------------
81766bea0e4fSmrg# Ensure that the configuration variables for the GNU Go compiler
81776bea0e4fSmrg# are suitably defined.  These variables are subsequently used by _LT_CONFIG
81786bea0e4fSmrg# to write the compiler configuration to 'libtool'.
81796bea0e4fSmrgm4_defun([_LT_LANG_GO_CONFIG],
81806bea0e4fSmrg[AC_REQUIRE([LT_PROG_GO])dnl
81816bea0e4fSmrgAC_LANG_SAVE
81826bea0e4fSmrg
81836bea0e4fSmrg# Source file extension for Go test sources.
81846bea0e4fSmrgac_ext=go
81856bea0e4fSmrg
81866bea0e4fSmrg# Object file extension for compiled Go test sources.
81876bea0e4fSmrgobjext=o
81886bea0e4fSmrg_LT_TAGVAR(objext, $1)=$objext
81896bea0e4fSmrg
81906bea0e4fSmrg# Code to be used in simple compile tests
81916bea0e4fSmrglt_simple_compile_test_code="package main; func main() { }"
81926bea0e4fSmrg
81936bea0e4fSmrg# Code to be used in simple link tests
81946bea0e4fSmrglt_simple_link_test_code='package main; func main() { }'
81956bea0e4fSmrg
81966bea0e4fSmrg# ltmain only uses $CC for tagged configurations so make sure $CC is set.
81976bea0e4fSmrg_LT_TAG_COMPILER
81986bea0e4fSmrg
81996bea0e4fSmrg# save warnings/boilerplate of simple test code
82006bea0e4fSmrg_LT_COMPILER_BOILERPLATE
82016bea0e4fSmrg_LT_LINKER_BOILERPLATE
82026bea0e4fSmrg
82036bea0e4fSmrg# Allow CC to be a program name with arguments.
82046bea0e4fSmrglt_save_CC=$CC
82056bea0e4fSmrglt_save_CFLAGS=$CFLAGS
82066bea0e4fSmrglt_save_GCC=$GCC
82076bea0e4fSmrgGCC=yes
82086bea0e4fSmrgCC=${GOC-"gccgo"}
82096bea0e4fSmrgCFLAGS=$GOFLAGS
82106bea0e4fSmrgcompiler=$CC
82116bea0e4fSmrg_LT_TAGVAR(compiler, $1)=$CC
82126bea0e4fSmrg_LT_TAGVAR(LD, $1)=$LD
82136bea0e4fSmrg_LT_CC_BASENAME([$compiler])
82146bea0e4fSmrg
82156bea0e4fSmrg# Go did not exist at the time GCC didn't implicitly link libc in.
82166bea0e4fSmrg_LT_TAGVAR(archive_cmds_need_lc, $1)=no
82176bea0e4fSmrg
82186bea0e4fSmrg_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
82196bea0e4fSmrg_LT_TAGVAR(reload_flag, $1)=$reload_flag
82206bea0e4fSmrg_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
82216bea0e4fSmrg
82226bea0e4fSmrg## CAVEAT EMPTOR:
82236bea0e4fSmrg## There is no encapsulation within the following macros, do not change
82246bea0e4fSmrg## the running order or otherwise move them around unless you know exactly
82256bea0e4fSmrg## what you are doing...
82266bea0e4fSmrgif test -n "$compiler"; then
82276bea0e4fSmrg  _LT_COMPILER_NO_RTTI($1)
82286bea0e4fSmrg  _LT_COMPILER_PIC($1)
82296bea0e4fSmrg  _LT_COMPILER_C_O($1)
82306bea0e4fSmrg  _LT_COMPILER_FILE_LOCKS($1)
82316bea0e4fSmrg  _LT_LINKER_SHLIBS($1)
82326bea0e4fSmrg  _LT_LINKER_HARDCODE_LIBPATH($1)
82336bea0e4fSmrg
82346bea0e4fSmrg  _LT_CONFIG($1)
82356bea0e4fSmrgfi
82366bea0e4fSmrg
82376bea0e4fSmrgAC_LANG_RESTORE
82386bea0e4fSmrg
82396bea0e4fSmrgGCC=$lt_save_GCC
82406bea0e4fSmrgCC=$lt_save_CC
82416bea0e4fSmrgCFLAGS=$lt_save_CFLAGS
82426bea0e4fSmrg])# _LT_LANG_GO_CONFIG
82436bea0e4fSmrg
82446bea0e4fSmrg
82456bea0e4fSmrg# _LT_LANG_RC_CONFIG([TAG])
82466bea0e4fSmrg# -------------------------
82476bea0e4fSmrg# Ensure that the configuration variables for the Windows resource compiler
82486bea0e4fSmrg# are suitably defined.  These variables are subsequently used by _LT_CONFIG
82496bea0e4fSmrg# to write the compiler configuration to 'libtool'.
82506bea0e4fSmrgm4_defun([_LT_LANG_RC_CONFIG],
82516bea0e4fSmrg[AC_REQUIRE([LT_PROG_RC])dnl
82526bea0e4fSmrgAC_LANG_SAVE
82536bea0e4fSmrg
82546bea0e4fSmrg# Source file extension for RC test sources.
82556bea0e4fSmrgac_ext=rc
82566bea0e4fSmrg
82576bea0e4fSmrg# Object file extension for compiled RC test sources.
82586bea0e4fSmrgobjext=o
82596bea0e4fSmrg_LT_TAGVAR(objext, $1)=$objext
82606bea0e4fSmrg
82616bea0e4fSmrg# Code to be used in simple compile tests
82626bea0e4fSmrglt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
82636bea0e4fSmrg
82646bea0e4fSmrg# Code to be used in simple link tests
82656bea0e4fSmrglt_simple_link_test_code=$lt_simple_compile_test_code
82666bea0e4fSmrg
82676bea0e4fSmrg# ltmain only uses $CC for tagged configurations so make sure $CC is set.
82686bea0e4fSmrg_LT_TAG_COMPILER
82696bea0e4fSmrg
82706bea0e4fSmrg# save warnings/boilerplate of simple test code
82716bea0e4fSmrg_LT_COMPILER_BOILERPLATE
82726bea0e4fSmrg_LT_LINKER_BOILERPLATE
82736bea0e4fSmrg
82746bea0e4fSmrg# Allow CC to be a program name with arguments.
82756bea0e4fSmrglt_save_CC=$CC
82766bea0e4fSmrglt_save_CFLAGS=$CFLAGS
82776bea0e4fSmrglt_save_GCC=$GCC
82786bea0e4fSmrgGCC=
82796bea0e4fSmrgCC=${RC-"windres"}
82806bea0e4fSmrgCFLAGS=
82816bea0e4fSmrgcompiler=$CC
82826bea0e4fSmrg_LT_TAGVAR(compiler, $1)=$CC
82836bea0e4fSmrg_LT_CC_BASENAME([$compiler])
82846bea0e4fSmrg_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
82856bea0e4fSmrg
82866bea0e4fSmrgif test -n "$compiler"; then
82876bea0e4fSmrg  :
82886bea0e4fSmrg  _LT_CONFIG($1)
82896bea0e4fSmrgfi
82906bea0e4fSmrg
82916bea0e4fSmrgGCC=$lt_save_GCC
82926bea0e4fSmrgAC_LANG_RESTORE
82936bea0e4fSmrgCC=$lt_save_CC
82946bea0e4fSmrgCFLAGS=$lt_save_CFLAGS
82956bea0e4fSmrg])# _LT_LANG_RC_CONFIG
82966bea0e4fSmrg
82976bea0e4fSmrg
82986bea0e4fSmrg# LT_PROG_GCJ
82996bea0e4fSmrg# -----------
83006bea0e4fSmrgAC_DEFUN([LT_PROG_GCJ],
83016bea0e4fSmrg[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
83026bea0e4fSmrg  [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
83036bea0e4fSmrg    [AC_CHECK_TOOL(GCJ, gcj,)
83046bea0e4fSmrg      test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
83056bea0e4fSmrg      AC_SUBST(GCJFLAGS)])])[]dnl
83066bea0e4fSmrg])
83076bea0e4fSmrg
83086bea0e4fSmrg# Old name:
83096bea0e4fSmrgAU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
83106bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
83116bea0e4fSmrgdnl AC_DEFUN([LT_AC_PROG_GCJ], [])
83126bea0e4fSmrg
83136bea0e4fSmrg
83146bea0e4fSmrg# LT_PROG_GO
83156bea0e4fSmrg# ----------
83166bea0e4fSmrgAC_DEFUN([LT_PROG_GO],
83176bea0e4fSmrg[AC_CHECK_TOOL(GOC, gccgo,)
83186bea0e4fSmrg])
83196bea0e4fSmrg
83206bea0e4fSmrg
83216bea0e4fSmrg# LT_PROG_RC
83226bea0e4fSmrg# ----------
83236bea0e4fSmrgAC_DEFUN([LT_PROG_RC],
83246bea0e4fSmrg[AC_CHECK_TOOL(RC, windres,)
83256bea0e4fSmrg])
83266bea0e4fSmrg
83276bea0e4fSmrg# Old name:
83286bea0e4fSmrgAU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
83296bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
83306bea0e4fSmrgdnl AC_DEFUN([LT_AC_PROG_RC], [])
83316bea0e4fSmrg
83326bea0e4fSmrg
83336bea0e4fSmrg# _LT_DECL_EGREP
83346bea0e4fSmrg# --------------
83356bea0e4fSmrg# If we don't have a new enough Autoconf to choose the best grep
83366bea0e4fSmrg# available, choose the one first in the user's PATH.
83376bea0e4fSmrgm4_defun([_LT_DECL_EGREP],
83386bea0e4fSmrg[AC_REQUIRE([AC_PROG_EGREP])dnl
83396bea0e4fSmrgAC_REQUIRE([AC_PROG_FGREP])dnl
83406bea0e4fSmrgtest -z "$GREP" && GREP=grep
83416bea0e4fSmrg_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
83426bea0e4fSmrg_LT_DECL([], [EGREP], [1], [An ERE matcher])
83436bea0e4fSmrg_LT_DECL([], [FGREP], [1], [A literal string matcher])
83446bea0e4fSmrgdnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
83456bea0e4fSmrgAC_SUBST([GREP])
83466bea0e4fSmrg])
83476bea0e4fSmrg
83486bea0e4fSmrg
83496bea0e4fSmrg# _LT_DECL_OBJDUMP
83506bea0e4fSmrg# --------------
83516bea0e4fSmrg# If we don't have a new enough Autoconf to choose the best objdump
83526bea0e4fSmrg# available, choose the one first in the user's PATH.
83536bea0e4fSmrgm4_defun([_LT_DECL_OBJDUMP],
83546bea0e4fSmrg[AC_CHECK_TOOL(OBJDUMP, objdump, false)
83556bea0e4fSmrgtest -z "$OBJDUMP" && OBJDUMP=objdump
83566bea0e4fSmrg_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
83576bea0e4fSmrgAC_SUBST([OBJDUMP])
83586bea0e4fSmrg])
83596bea0e4fSmrg
83606bea0e4fSmrg# _LT_DECL_DLLTOOL
83616bea0e4fSmrg# ----------------
83626bea0e4fSmrg# Ensure DLLTOOL variable is set.
83636bea0e4fSmrgm4_defun([_LT_DECL_DLLTOOL],
83646bea0e4fSmrg[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
83656bea0e4fSmrgtest -z "$DLLTOOL" && DLLTOOL=dlltool
83666bea0e4fSmrg_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
83676bea0e4fSmrgAC_SUBST([DLLTOOL])
83686bea0e4fSmrg])
83696bea0e4fSmrg
83706bea0e4fSmrg# _LT_DECL_FILECMD
83716bea0e4fSmrg# ----------------
83726bea0e4fSmrg# Check for a file(cmd) program that can be used to detect file type and magic
83736bea0e4fSmrgm4_defun([_LT_DECL_FILECMD],
83746bea0e4fSmrg[AC_CHECK_PROG([FILECMD], [file], [file], [:])
83756bea0e4fSmrg_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types])
83766bea0e4fSmrg])# _LD_DECL_FILECMD
83776bea0e4fSmrg
83786bea0e4fSmrg# _LT_DECL_SED
83796bea0e4fSmrg# ------------
83806bea0e4fSmrg# Check for a fully-functional sed program, that truncates
83816bea0e4fSmrg# as few characters as possible.  Prefer GNU sed if found.
83826bea0e4fSmrgm4_defun([_LT_DECL_SED],
83836bea0e4fSmrg[AC_PROG_SED
83846bea0e4fSmrgtest -z "$SED" && SED=sed
83856bea0e4fSmrgXsed="$SED -e 1s/^X//"
83866bea0e4fSmrg_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
83876bea0e4fSmrg_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
83886bea0e4fSmrg    [Sed that helps us avoid accidentally triggering echo(1) options like -n])
83896bea0e4fSmrg])# _LT_DECL_SED
83906bea0e4fSmrgdnl aclocal-1.4 backwards compatibility:
83916bea0e4fSmrgdnl AC_DEFUN([LT_AC_PROG_SED], [])
83926bea0e4fSmrg
83936bea0e4fSmrg
83946bea0e4fSmrg# _LT_CHECK_SHELL_FEATURES
83956bea0e4fSmrg# ------------------------
83966bea0e4fSmrg# Find out whether the shell is Bourne or XSI compatible,
83976bea0e4fSmrg# or has some other useful features.
83986bea0e4fSmrgm4_defun([_LT_CHECK_SHELL_FEATURES],
83996bea0e4fSmrg[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
84006bea0e4fSmrg  lt_unset=unset
84016bea0e4fSmrgelse
84026bea0e4fSmrg  lt_unset=false
84036bea0e4fSmrgfi
84046bea0e4fSmrg_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
84056bea0e4fSmrg
84066bea0e4fSmrg# test EBCDIC or ASCII
84076bea0e4fSmrgcase `echo X|tr X '\101'` in
84086bea0e4fSmrg A) # ASCII based system
84096bea0e4fSmrg    # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
84106bea0e4fSmrg  lt_SP2NL='tr \040 \012'
84116bea0e4fSmrg  lt_NL2SP='tr \015\012 \040\040'
84126bea0e4fSmrg  ;;
84136bea0e4fSmrg *) # EBCDIC based system
84146bea0e4fSmrg  lt_SP2NL='tr \100 \n'
84156bea0e4fSmrg  lt_NL2SP='tr \r\n \100\100'
84166bea0e4fSmrg  ;;
84176bea0e4fSmrgesac
84186bea0e4fSmrg_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
84196bea0e4fSmrg_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
84206bea0e4fSmrg])# _LT_CHECK_SHELL_FEATURES
84216bea0e4fSmrg
84226bea0e4fSmrg
84236bea0e4fSmrg# _LT_PATH_CONVERSION_FUNCTIONS
84246bea0e4fSmrg# -----------------------------
84256bea0e4fSmrg# Determine what file name conversion functions should be used by
84266bea0e4fSmrg# func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
84276bea0e4fSmrg# for certain cross-compile configurations and native mingw.
84286bea0e4fSmrgm4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
84296bea0e4fSmrg[AC_REQUIRE([AC_CANONICAL_HOST])dnl
84306bea0e4fSmrgAC_REQUIRE([AC_CANONICAL_BUILD])dnl
84316bea0e4fSmrgAC_MSG_CHECKING([how to convert $build file names to $host format])
84326bea0e4fSmrgAC_CACHE_VAL(lt_cv_to_host_file_cmd,
84336bea0e4fSmrg[case $host in
84346bea0e4fSmrg  *-*-mingw* )
84356bea0e4fSmrg    case $build in
84366bea0e4fSmrg      *-*-mingw* | *-*-windows* ) # actually msys
84376bea0e4fSmrg        lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
84386bea0e4fSmrg        ;;
84396bea0e4fSmrg      *-*-cygwin* )
84406bea0e4fSmrg        lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
84416bea0e4fSmrg        ;;
84426bea0e4fSmrg      * ) # otherwise, assume *nix
84436bea0e4fSmrg        lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
84446bea0e4fSmrg        ;;
84456bea0e4fSmrg    esac
84466bea0e4fSmrg    ;;
84476bea0e4fSmrg  *-*-cygwin* )
84486bea0e4fSmrg    case $build in
84496bea0e4fSmrg      *-*-mingw* | *-*-windows* ) # actually msys
84506bea0e4fSmrg        lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
84516bea0e4fSmrg        ;;
84526bea0e4fSmrg      *-*-cygwin* )
84536bea0e4fSmrg        lt_cv_to_host_file_cmd=func_convert_file_noop
84546bea0e4fSmrg        ;;
84556bea0e4fSmrg      * ) # otherwise, assume *nix
84566bea0e4fSmrg        lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
84576bea0e4fSmrg        ;;
84586bea0e4fSmrg    esac
84596bea0e4fSmrg    ;;
84606bea0e4fSmrg  * ) # unhandled hosts (and "normal" native builds)
84616bea0e4fSmrg    lt_cv_to_host_file_cmd=func_convert_file_noop
84626bea0e4fSmrg    ;;
84636bea0e4fSmrgesac
84646bea0e4fSmrg])
84656bea0e4fSmrgto_host_file_cmd=$lt_cv_to_host_file_cmd
84666bea0e4fSmrgAC_MSG_RESULT([$lt_cv_to_host_file_cmd])
84676bea0e4fSmrg_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
84686bea0e4fSmrg         [0], [convert $build file names to $host format])dnl
84696bea0e4fSmrg
84706bea0e4fSmrgAC_MSG_CHECKING([how to convert $build file names to toolchain format])
84716bea0e4fSmrgAC_CACHE_VAL(lt_cv_to_tool_file_cmd,
84726bea0e4fSmrg[#assume ordinary cross tools, or native build.
84736bea0e4fSmrglt_cv_to_tool_file_cmd=func_convert_file_noop
84746bea0e4fSmrgcase $host in
84756bea0e4fSmrg  *-*-mingw* | *-*-windows* )
84766bea0e4fSmrg    case $build in
84776bea0e4fSmrg      *-*-mingw* | *-*-windows* ) # actually msys
84786bea0e4fSmrg        lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
84796bea0e4fSmrg        ;;
84806bea0e4fSmrg    esac
84816bea0e4fSmrg    ;;
84826bea0e4fSmrgesac
84836bea0e4fSmrg])
84846bea0e4fSmrgto_tool_file_cmd=$lt_cv_to_tool_file_cmd
84856bea0e4fSmrgAC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
84866bea0e4fSmrg_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
84876bea0e4fSmrg         [0], [convert $build files to toolchain format])dnl
84886bea0e4fSmrg])# _LT_PATH_CONVERSION_FUNCTIONS
8489