1063
790
_GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require])
1066
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
1068
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
1069
# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
1071
# Written by Gordon Matzigkeit, 1996
1073
# This file is free software; the Free Software Foundation gives
1074
# unlimited permission to copy and/or distribute it, with or without
1075
# modifications, as long as this notice is preserved.
1077
m4_define([_LT_COPYING], [dnl
1078
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
1079
# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
1081
# Written by Gordon Matzigkeit, 1996
1083
# This file is part of GNU Libtool.
1085
# GNU Libtool is free software; you can redistribute it and/or
1086
# modify it under the terms of the GNU General Public License as
1087
# published by the Free Software Foundation; either version 2 of
1088
# the License, or (at your option) any later version.
1090
# As a special exception to the GNU General Public License,
1091
# if you distribute this file as part of a program or library that
1092
# is built using GNU Libtool, you may include this file under the
1093
# same distribution terms that you use for the rest of that program.
1095
# GNU Libtool is distributed in the hope that it will be useful,
1096
# but WITHOUT ANY WARRANTY; without even the implied warranty of
1097
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1098
# GNU General Public License for more details.
1100
# You should have received a copy of the GNU General Public License
1101
# along with GNU Libtool; see the file COPYING. If not, a copy
1102
# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
1103
# obtained by writing to the Free Software Foundation, Inc.,
1104
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
1110
# LT_PREREQ(VERSION)
1111
# ------------------
1112
# Complain and exit if this libtool version is less that VERSION.
1113
m4_defun([LT_PREREQ],
1114
[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
1116
[m4_fatal([Libtool version $1 or higher is required],
1121
# _LT_CHECK_BUILDDIR
1122
# ------------------
1123
# Complain if the absolute build directory name contains unusual characters
1124
m4_defun([_LT_CHECK_BUILDDIR],
1127
AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
1132
# LT_INIT([OPTIONS])
1133
# ------------------
1135
[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
1136
AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
1137
AC_BEFORE([$0], [LT_LANG])dnl
1138
AC_BEFORE([$0], [LT_OUTPUT])dnl
1139
AC_BEFORE([$0], [LTDL_INIT])dnl
1140
m4_require([_LT_CHECK_BUILDDIR])dnl
1142
dnl Autoconf doesn't catch unexpanded LT_ macros by default:
1143
m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
1144
m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
1145
dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
1146
dnl unless we require an AC_DEFUNed macro:
1147
AC_REQUIRE([LTOPTIONS_VERSION])dnl
1148
AC_REQUIRE([LTSUGAR_VERSION])dnl
1149
AC_REQUIRE([LTVERSION_VERSION])dnl
1150
AC_REQUIRE([LTOBSOLETE_VERSION])dnl
1151
m4_require([_LT_PROG_LTMAIN])dnl
1153
_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
1156
_LT_SET_OPTIONS([$0], [$1])
1158
# This can be used to rebuild libtool when needed
1159
LIBTOOL_DEPS="$ltmain"
1161
# Always use our own libtool.
1162
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
1163
AC_SUBST(LIBTOOL)dnl
1168
m4_define([LT_INIT])
1172
AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
1173
AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
1174
dnl aclocal-1.4 backwards compatibility:
1175
dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
1176
dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
1179
# _LT_CC_BASENAME(CC)
1180
# -------------------
1181
# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
1182
m4_defun([_LT_CC_BASENAME],
1183
[for cc_temp in $1""; do
1185
compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
1186
distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
1191
cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
1195
# _LT_FILEUTILS_DEFAULTS
1196
# ----------------------
1197
# It is okay to use these file commands and assume they have been set
1198
# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
1199
m4_defun([_LT_FILEUTILS_DEFAULTS],
1203
])# _LT_FILEUTILS_DEFAULTS
1208
m4_defun([_LT_SETUP],
1209
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1210
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
1211
AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
1212
AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
1214
_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
1216
_LT_DECL([], [host_alias], [0], [The host system])dnl
1217
_LT_DECL([], [host], [0])dnl
1218
_LT_DECL([], [host_os], [0])dnl
1220
_LT_DECL([], [build_alias], [0], [The build system])dnl
1221
_LT_DECL([], [build], [0])dnl
1222
_LT_DECL([], [build_os], [0])dnl
1224
AC_REQUIRE([AC_PROG_CC])dnl
1225
AC_REQUIRE([LT_PATH_LD])dnl
1226
AC_REQUIRE([LT_PATH_NM])dnl
1228
AC_REQUIRE([AC_PROG_LN_S])dnl
1229
test -z "$LN_S" && LN_S="ln -s"
1230
_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
1232
AC_REQUIRE([LT_CMD_MAX_LEN])dnl
1233
_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
1234
_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
1236
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1237
m4_require([_LT_CHECK_SHELL_FEATURES])dnl
1238
m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
1239
m4_require([_LT_CMD_RELOAD])dnl
1240
m4_require([_LT_CHECK_MAGIC_METHOD])dnl
1241
m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
1242
m4_require([_LT_CMD_OLD_ARCHIVE])dnl
1243
m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
1244
m4_require([_LT_WITH_SYSROOT])dnl
1246
_LT_CONFIG_LIBTOOL_INIT([
1247
# See if we are running on zsh, and set the options which allow our
1248
# commands through without removal of \ escapes INIT.
1249
if test -n "\${ZSH_VERSION+set}" ; then
1250
setopt NO_GLOB_SUBST
1253
if test -n "${ZSH_VERSION+set}" ; then
1254
setopt NO_GLOB_SUBST
1259
m4_require([_LT_TAG_COMPILER])dnl
1263
# AIX sometimes has problems with the GCC collect2 program. For some
1264
# reason, if we set the COLLECT_NAMES environment variable, the problems
1265
# vanish in a puff of smoke.
1266
if test "X${COLLECT_NAMES+set}" != Xset; then
1268
export COLLECT_NAMES
1275
can_build_shared=yes
1277
# All known linkers require a `.a' archive for static linking (except MSVC,
1278
# which needs '.lib').
1281
with_gnu_ld="$lt_cv_prog_gnu_ld"
1284
old_CFLAGS="$CFLAGS"
1286
# Set sane defaults for various variables
1287
test -z "$CC" && CC=cc
1288
test -z "$LTCC" && LTCC=$CC
1289
test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
1290
test -z "$LD" && LD=ld
1291
test -z "$ac_objext" && ac_objext=o
1293
_LT_CC_BASENAME([$compiler])
1295
# Only perform the check for file, if the check method requires it
1296
test -z "$MAGIC_CMD" && MAGIC_CMD=file
1297
case $deplibs_check_method in
1299
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
1305
# Use C for the default configuration in the libtool script
1306
LT_SUPPORTED_TAG([CC])
1308
_LT_LANG_DEFAULT_CONFIG
1313
# _LT_PREPARE_SED_QUOTE_VARS
1314
# --------------------------
1315
# Define a few sed substitution that help us do robust quoting.
1316
m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
1317
[# Backslashify metacharacters that are still active within
1318
# double-quoted strings.
1319
sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
1321
# Same as above, but do not quote variable references.
1322
double_quote_subst='s/\([["`\\]]\)/\\\1/g'
1324
# Sed substitution to delay expansion of an escaped shell variable in a
1325
# double_quote_subst'ed string.
1326
delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
1328
# Sed substitution to delay expansion of an escaped single quote.
1329
delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
1331
# Sed substitution to avoid accidental globbing in evaled expressions
1332
no_glob_subst='s/\*/\\\*/g'
1337
# Note that this code is called both from `configure', and `config.status'
1338
# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
1339
# `config.status' has no value for ac_aux_dir unless we are using Automake,
1340
# so we pass a copy along to make sure it has a sensible value anyway.
1341
m4_defun([_LT_PROG_LTMAIN],
1342
[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
1343
_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
1344
ltmain="$ac_aux_dir/ltmain.sh"
1349
# So that we can recreate a full libtool script including additional
1350
# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
1351
# in macros and then make a single call at the end using the `libtool'
1355
# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
1356
# ----------------------------------------
1357
# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
1358
m4_define([_LT_CONFIG_LIBTOOL_INIT],
1360
[m4_append([_LT_OUTPUT_LIBTOOL_INIT],
1365
m4_define([_LT_OUTPUT_LIBTOOL_INIT])
1368
# _LT_CONFIG_LIBTOOL([COMMANDS])
1369
# ------------------------------
1370
# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
1371
m4_define([_LT_CONFIG_LIBTOOL],
1373
[m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
1378
m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
1381
# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
1382
# -----------------------------------------------------
1383
m4_defun([_LT_CONFIG_SAVE_COMMANDS],
1384
[_LT_CONFIG_LIBTOOL([$1])
1385
_LT_CONFIG_LIBTOOL_INIT([$2])
1389
# _LT_FORMAT_COMMENT([COMMENT])
1390
# -----------------------------
1391
# Add leading comment marks to the start of each line, and a trailing
1392
# full-stop to the whole comment if one is not present already.
1393
m4_define([_LT_FORMAT_COMMENT],
1395
m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
1396
[['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
1403
# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
1404
# -------------------------------------------------------------------
1405
# CONFIGNAME is the name given to the value in the libtool script.
1406
# VARNAME is the (base) name used in the configure script.
1407
# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
1408
# VARNAME. Any other value will be used directly.
1409
m4_define([_LT_DECL],
1410
[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
1411
[lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
1412
[m4_ifval([$1], [$1], [$2])])
1413
lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
1415
[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
1416
lt_dict_add_subkey([lt_decl_dict], [$2],
1417
[tagged?], [m4_ifval([$5], [yes], [no])])])
1421
# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
1422
# --------------------------------------------------------
1423
m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
1426
# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
1427
# ------------------------------------------------
1428
m4_define([lt_decl_tag_varnames],
1429
[_lt_decl_filter([tagged?], [yes], $@)])
1432
# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
1433
# ---------------------------------------------------------
1434
m4_define([_lt_decl_filter],
1436
[0], [m4_fatal([$0: too few arguments: $#])],
1437
[1], [m4_fatal([$0: too few arguments: $#: $1])],
1438
[2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
1439
[3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
1440
[lt_dict_filter([lt_decl_dict], $@)])[]dnl
1444
# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
1445
# --------------------------------------------------
1446
m4_define([lt_decl_quote_varnames],
1447
[_lt_decl_filter([value], [1], $@)])
1450
# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
1451
# ---------------------------------------------------
1452
m4_define([lt_decl_dquote_varnames],
1453
[_lt_decl_filter([value], [2], $@)])
1456
# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
1457
# ---------------------------------------------------
1458
m4_define([lt_decl_varnames_tagged],
1459
[m4_assert([$# <= 2])dnl
1460
_$0(m4_quote(m4_default([$1], [[, ]])),
1461
m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
1462
m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
1463
m4_define([_lt_decl_varnames_tagged],
1464
[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
1467
# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
1468
# ------------------------------------------------
1469
m4_define([lt_decl_all_varnames],
1470
[_$0(m4_quote(m4_default([$1], [[, ]])),
1472
m4_quote(lt_decl_varnames),
1473
m4_quote(m4_shift($@))))[]dnl
1475
m4_define([_lt_decl_all_varnames],
1476
[lt_join($@, lt_decl_varnames_tagged([$1],
1477
lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
1481
# _LT_CONFIG_STATUS_DECLARE([VARNAME])
1482
# ------------------------------------
1483
# Quote a variable value, and forward it to `config.status' so that its
1484
# declaration there will have the same value as in `configure'. VARNAME
1485
# must have a single quote delimited value for this to work.
1486
m4_define([_LT_CONFIG_STATUS_DECLARE],
1487
[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
1490
# _LT_CONFIG_STATUS_DECLARATIONS
1491
# ------------------------------
1492
# We delimit libtool config variables with single quotes, so when
1493
# we write them to config.status, we have to be sure to quote all
1494
# embedded single quotes properly. In configure, this macro expands
1495
# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
1497
# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
1498
m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
1499
[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
1500
[m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
1505
# Output comment and list of tags supported by the script
1506
m4_defun([_LT_LIBTOOL_TAGS],
1507
[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
1508
available_tags="_LT_TAGS"dnl
1512
# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
1513
# -----------------------------------
1514
# Extract the dictionary values for VARNAME (optionally with TAG) and
1515
# expand to a commented shell variable setting:
1517
# # Some comment about what VAR is for.
1518
# visible_name=$lt_internal_name
1519
m4_define([_LT_LIBTOOL_DECLARE],
1520
[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
1521
[description])))[]dnl
1522
m4_pushdef([_libtool_name],
1523
m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
1524
m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
1525
[0], [_libtool_name=[$]$1],
1526
[1], [_libtool_name=$lt_[]$1],
1527
[2], [_libtool_name=$lt_[]$1],
1528
[_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
1529
m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
1533
# _LT_LIBTOOL_CONFIG_VARS
1534
# -----------------------
1535
# Produce commented declarations of non-tagged libtool config variables
1536
# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
1537
# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
1538
# section) are produced by _LT_LIBTOOL_TAG_VARS.
1539
m4_defun([_LT_LIBTOOL_CONFIG_VARS],
1540
[m4_foreach([_lt_var],
1541
m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
1542
[m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
1545
# _LT_LIBTOOL_TAG_VARS(TAG)
1546
# -------------------------
1547
m4_define([_LT_LIBTOOL_TAG_VARS],
1548
[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
1549
[m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
1552
# _LT_TAGVAR(VARNAME, [TAGNAME])
1553
# ------------------------------
1554
m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
1557
# _LT_CONFIG_COMMANDS
1558
# -------------------
1559
# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
1560
# variables for single and double quote escaping we saved from calls
1561
# to _LT_DECL, we can put quote escaped variables declarations
1562
# into `config.status', and then the shell code to quote escape them in
1563
# for loops in `config.status'. Finally, any additional code accumulated
1564
# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
1565
m4_defun([_LT_CONFIG_COMMANDS],
1566
[AC_PROVIDE_IFELSE([LT_OUTPUT],
1567
dnl If the libtool generation code has been placed in $CONFIG_LT,
1568
dnl instead of duplicating it all over again into config.status,
1569
dnl then we will have config.status run $CONFIG_LT later, so it
1570
dnl needs to know what name is stored there:
1571
[AC_CONFIG_COMMANDS([libtool],
1572
[$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
1573
dnl If the libtool generation code is destined for config.status,
1574
dnl expand the accumulated commands and init code now:
1575
[AC_CONFIG_COMMANDS([libtool],
1576
[_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
1577
])#_LT_CONFIG_COMMANDS
1581
m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
1584
# The HP-UX ksh and POSIX shell print the target directory to stdout
1586
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
1588
sed_quote_subst='$sed_quote_subst'
1589
double_quote_subst='$double_quote_subst'
1590
delay_variable_subst='$delay_variable_subst'
1591
_LT_CONFIG_STATUS_DECLARATIONS
1593
LTCFLAGS='$LTCFLAGS'
1594
compiler='$compiler_DEFAULT'
1596
# A function that is used when there is no print builtin or printf.
1597
func_fallback_echo ()
1599
eval 'cat <<_LTECHO_EOF
1604
# Quote evaled strings.
1605
for var in lt_decl_all_varnames([[ \
1606
]], lt_decl_quote_varnames); do
1607
case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
1608
*[[\\\\\\\`\\"\\\$]]*)
1609
eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
1612
eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
1617
# Double-quote double-evaled strings.
1618
for var in lt_decl_all_varnames([[ \
1619
]], lt_decl_dquote_varnames); do
1620
case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
1621
*[[\\\\\\\`\\"\\\$]]*)
1622
eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
1625
eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
1630
_LT_OUTPUT_LIBTOOL_INIT
1633
# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
1634
# ------------------------------------
1635
# Generate a child script FILE with all initialization necessary to
1636
# reuse the environment learned by the parent script, and make the
1637
# file executable. If COMMENT is supplied, it is inserted after the
1638
# `#!' sequence but before initialization text begins. After this
1639
# macro, additional text can be appended to FILE to form the body of
1640
# the child script. The macro ends with non-zero status if the
1641
# file could not be fully written (such as if the disk is full).
1642
m4_ifdef([AS_INIT_GENERATED],
1643
[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
1644
[m4_defun([_LT_GENERATED_FILE_INIT],
1645
[m4_require([AS_PREPARE])]dnl
1646
[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
1648
cat >$1 <<_ASEOF || lt_write_fail=1
1650
# Generated by $as_me.
1652
SHELL=\${CONFIG_SHELL-$SHELL}
1655
cat >>$1 <<\_ASEOF || lt_write_fail=1
1658
exec AS_MESSAGE_FD>&1
1660
test $lt_write_fail = 0 && chmod +x $1[]dnl
1661
m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
1665
# This macro allows early generation of the libtool script (before
1666
# AC_OUTPUT is called), incase it is used in configure for compilation
1668
AC_DEFUN([LT_OUTPUT],
1669
[: ${CONFIG_LT=./config.lt}
1670
AC_MSG_NOTICE([creating $CONFIG_LT])
1671
_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
1672
[# Run this file to recreate a libtool stub with the current configuration.])
1674
cat >>"$CONFIG_LT" <<\_LTEOF
1676
exec AS_MESSAGE_LOG_FD>>config.log
1679
AS_BOX([Running $as_me.])
1680
} >&AS_MESSAGE_LOG_FD
1683
\`$as_me' creates a local libtool stub from the current configuration,
1684
for use in further configure time tests before the real libtool is
1687
Usage: $[0] [[OPTIONS]]
1689
-h, --help print this help, then exit
1690
-V, --version print version number, then exit
1691
-q, --quiet do not print progress messages
1692
-d, --debug don't remove temporary files
1694
Report bugs to <bug-libtool@gnu.org>."
1697
m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
1698
m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
1699
configured by $[0], generated by m4_PACKAGE_STRING.
1701
Copyright (C) 2011 Free Software Foundation, Inc.
1702
This config.lt script is free software; the Free Software Foundation
1703
gives unlimited permision to copy, distribute and modify it."
1705
while test $[#] != 0
1708
--version | --v* | -V )
1709
echo "$lt_cl_version"; exit 0 ;;
1710
--help | --h* | -h )
1711
echo "$lt_cl_help"; exit 0 ;;
1712
--debug | --d* | -d )
1714
--quiet | --q* | --silent | --s* | -q )
1717
-*) AC_MSG_ERROR([unrecognized option: $[1]
1718
Try \`$[0] --help' for more information.]) ;;
1720
*) AC_MSG_ERROR([unrecognized argument: $[1]
1721
Try \`$[0] --help' for more information.]) ;;
1726
if $lt_cl_silent; then
1727
exec AS_MESSAGE_FD>/dev/null
1731
cat >>"$CONFIG_LT" <<_LTEOF
1732
_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
1735
cat >>"$CONFIG_LT" <<\_LTEOF
1736
AC_MSG_NOTICE([creating $ofile])
1737
_LT_OUTPUT_LIBTOOL_COMMANDS
1740
chmod +x "$CONFIG_LT"
1742
# configure is writing to config.log, but config.lt does its own redirection,
1743
# appending to config.log, which fails on DOS, as config.log is still kept
1744
# open by configure. Here we exec the FD to /dev/null, effectively closing
1745
# config.log, so it can be properly (re)opened and appended to by config.lt.
1747
test "$silent" = yes &&
1748
lt_config_lt_args="$lt_config_lt_args --quiet"
1749
exec AS_MESSAGE_LOG_FD>/dev/null
1750
$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
1751
exec AS_MESSAGE_LOG_FD>>config.log
1752
$lt_cl_success || AS_EXIT(1)
1758
# If TAG is the built-in tag, create an initial libtool script with a
1759
# default configuration from the untagged config vars. Otherwise add code
1760
# to config.status for appending the configuration named by TAG from the
1761
# matching tagged config vars.
1762
m4_defun([_LT_CONFIG],
1763
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1764
_LT_CONFIG_SAVE_COMMANDS([
1765
m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
1766
m4_if(_LT_TAG, [C], [
1767
# See if we are running on zsh, and set the options which allow our
1768
# commands through without removal of \ escapes.
1769
if test -n "${ZSH_VERSION+set}" ; then
1770
setopt NO_GLOB_SUBST
1774
trap "$RM \"$cfgfile\"; exit 1" 1 2 15
1777
cat <<_LT_EOF >> "$cfgfile"
1780
# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
1781
# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
1782
# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
1783
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
1788
# ### BEGIN LIBTOOL CONFIG
1789
_LT_LIBTOOL_CONFIG_VARS
1790
_LT_LIBTOOL_TAG_VARS
1791
# ### END LIBTOOL CONFIG
1797
cat <<\_LT_EOF >> "$cfgfile"
1798
# AIX sometimes has problems with the GCC collect2 program. For some
1799
# reason, if we set the COLLECT_NAMES environment variable, the problems
1800
# vanish in a puff of smoke.
1801
if test "X${COLLECT_NAMES+set}" != Xset; then
1803
export COLLECT_NAMES
1811
# We use sed instead of cat because bash on DJGPP gets confused if
1812
# if finds mixed CR/LF and LF-only lines. Since sed operates in
1813
# text mode, it properly converts lines to CR/LF. This bash problem
1814
# is reportedly fixed, but why not run on old versions too?
1815
sed '$q' "$ltmain" >> "$cfgfile" \
1816
|| (rm -f "$cfgfile"; exit 1)
1818
_LT_PROG_REPLACE_SHELLFNS
1820
mv -f "$cfgfile" "$ofile" ||
1821
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
1824
[cat <<_LT_EOF >> "$ofile"
1826
dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
1827
dnl in a comment (ie after a #).
1828
# ### BEGIN LIBTOOL TAG CONFIG: $1
1829
_LT_LIBTOOL_TAG_VARS(_LT_TAG)
1830
# ### END LIBTOOL TAG CONFIG: $1
1837
TIMESTAMP='$TIMESTAMP'
1839
ofile='$ofile'], [])
1840
])dnl /_LT_CONFIG_SAVE_COMMANDS
1844
# LT_SUPPORTED_TAG(TAG)
1845
# ---------------------
1846
# Trace this macro to discover what tags are supported by the libtool
1847
# --tag option, using:
1848
# autoconf --trace 'LT_SUPPORTED_TAG:$1'
1849
AC_DEFUN([LT_SUPPORTED_TAG], [])
1852
# C support is built-in for now
1853
m4_define([_LT_LANG_C_enabled], [])
1854
m4_define([_LT_TAGS], [])
1859
# Enable libtool support for the given language if not already enabled.
1861
[AC_BEFORE([$0], [LT_OUTPUT])dnl
1864
[C++], [_LT_LANG(CXX)],
1865
[Go], [_LT_LANG(GO)],
1866
[Java], [_LT_LANG(GCJ)],
1867
[Fortran 77], [_LT_LANG(F77)],
1868
[Fortran], [_LT_LANG(FC)],
1869
[Windows Resource], [_LT_LANG(RC)],
1870
[m4_ifdef([_LT_LANG_]$1[_CONFIG],
1872
[m4_fatal([$0: unsupported language: "$1"])])])dnl
1876
# _LT_LANG(LANGNAME)
1877
# ------------------
1878
m4_defun([_LT_LANG],
1879
[m4_ifdef([_LT_LANG_]$1[_enabled], [],
1880
[LT_SUPPORTED_TAG([$1])dnl
1881
m4_append([_LT_TAGS], [$1 ])dnl
1882
m4_define([_LT_LANG_]$1[_enabled], [])dnl
1883
_LT_LANG_$1_CONFIG($1)])dnl
1887
m4_ifndef([AC_PROG_GO], [
1888
# NOTE: This macro has been submitted for inclusion into #
1889
# GNU Autoconf as AC_PROG_GO. When it is available in #
1890
# a released version of Autoconf we should remove this #
1891
# macro and use it instead. #
1892
m4_defun([AC_PROG_GO],
1893
[AC_LANG_PUSH(Go)dnl
1894
AC_ARG_VAR([GOC], [Go compiler command])dnl
1895
AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
1896
_AC_ARG_VAR_LDFLAGS()dnl
1897
AC_CHECK_TOOL(GOC, gccgo)
1898
if test -z "$GOC"; then
1899
if test -n "$ac_tool_prefix"; then
1900
AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
1903
if test -z "$GOC"; then
1904
AC_CHECK_PROG(GOC, gccgo, gccgo, false)
1910
# _LT_LANG_DEFAULT_CONFIG
1911
# -----------------------
1912
m4_defun([_LT_LANG_DEFAULT_CONFIG],
1913
[AC_PROVIDE_IFELSE([AC_PROG_CXX],
1915
[m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
1917
AC_PROVIDE_IFELSE([AC_PROG_F77],
1919
[m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
1921
AC_PROVIDE_IFELSE([AC_PROG_FC],
1923
[m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
1925
dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
1926
dnl pulling things in needlessly.
1927
AC_PROVIDE_IFELSE([AC_PROG_GCJ],
1929
[AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
1931
[AC_PROVIDE_IFELSE([LT_PROG_GCJ],
1933
[m4_ifdef([AC_PROG_GCJ],
1934
[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
1935
m4_ifdef([A][M_PROG_GCJ],
1936
[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
1937
m4_ifdef([LT_PROG_GCJ],
1938
[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
1940
AC_PROVIDE_IFELSE([AC_PROG_GO],
1942
[m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
1944
AC_PROVIDE_IFELSE([LT_PROG_RC],
1946
[m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
1947
])# _LT_LANG_DEFAULT_CONFIG
1950
AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
1951
AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
1952
AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
1953
AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
1954
AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
1955
dnl aclocal-1.4 backwards compatibility:
1956
dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
1957
dnl AC_DEFUN([AC_LIBTOOL_F77], [])
1958
dnl AC_DEFUN([AC_LIBTOOL_FC], [])
1959
dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
1960
dnl AC_DEFUN([AC_LIBTOOL_RC], [])
1965
m4_defun([_LT_TAG_COMPILER],
1966
[AC_REQUIRE([AC_PROG_CC])dnl
1968
_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
1969
_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
1970
_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
1971
_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
1973
# If no C compiler was specified, use CC.
1976
# If no C compiler flags were specified, use CFLAGS.
1977
LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
1979
# Allow CC to be a program name with arguments.
1981
])# _LT_TAG_COMPILER
1984
# _LT_COMPILER_BOILERPLATE
1985
# ------------------------
1986
# Check for compiler boilerplate output or warnings with
1987
# the simple compiler test code.
1988
m4_defun([_LT_COMPILER_BOILERPLATE],
1989
[m4_require([_LT_DECL_SED])dnl
1990
ac_outfile=conftest.$ac_objext
1991
echo "$lt_simple_compile_test_code" >conftest.$ac_ext
1992
eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
1993
_lt_compiler_boilerplate=`cat conftest.err`
1995
])# _LT_COMPILER_BOILERPLATE
1998
# _LT_LINKER_BOILERPLATE
1999
# ----------------------
2000
# Check for linker boilerplate output or warnings with
2001
# the simple link test code.
2002
m4_defun([_LT_LINKER_BOILERPLATE],
2003
[m4_require([_LT_DECL_SED])dnl
2004
ac_outfile=conftest.$ac_objext
2005
echo "$lt_simple_link_test_code" >conftest.$ac_ext
2006
eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
2007
_lt_linker_boilerplate=`cat conftest.err`
2009
])# _LT_LINKER_BOILERPLATE
2011
# _LT_REQUIRED_DARWIN_CHECKS
2012
# -------------------------
2013
m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
2015
rhapsody* | darwin*)
2016
AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
2017
AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
2018
AC_CHECK_TOOL([LIPO], [lipo], [:])
2019
AC_CHECK_TOOL([OTOOL], [otool], [:])
2020
AC_CHECK_TOOL([OTOOL64], [otool64], [:])
2021
_LT_DECL([], [DSYMUTIL], [1],
2022
[Tool to manipulate archived DWARF debug symbol files on Mac OS X])
2023
_LT_DECL([], [NMEDIT], [1],
2024
[Tool to change global to local symbols on Mac OS X])
2025
_LT_DECL([], [LIPO], [1],
2026
[Tool to manipulate fat objects and archives on Mac OS X])
2027
_LT_DECL([], [OTOOL], [1],
2028
[ldd/readelf like tool for Mach-O binaries on Mac OS X])
2029
_LT_DECL([], [OTOOL64], [1],
2030
[ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
2032
AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
2033
[lt_cv_apple_cc_single_mod=no
2034
if test -z "${LT_MULTI_MODULE}"; then
2035
# By default we will add the -single_module flag. You can override
2036
# by either setting the environment variable LT_MULTI_MODULE
2037
# non-empty at configure time, or by adding -multi_module to the
2039
rm -rf libconftest.dylib*
2040
echo "int foo(void){return 1;}" > conftest.c
2041
echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
2042
-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
2043
$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
2044
-dynamiclib -Wl,-single_module conftest.c 2>conftest.err
2046
# If there is a non-empty error log, and "single_module"
2047
# appears in it, assume the flag caused a linker warning
2048
if test -s conftest.err && $GREP single_module conftest.err; then
2049
cat conftest.err >&AS_MESSAGE_LOG_FD
2050
# Otherwise, if the output was created with a 0 exit code from
2051
# the compiler, it worked.
2052
elif test -f libconftest.dylib && test $_lt_result -eq 0; then
2053
lt_cv_apple_cc_single_mod=yes
2055
cat conftest.err >&AS_MESSAGE_LOG_FD
2057
rm -rf libconftest.dylib*
2061
AC_CACHE_CHECK([for -exported_symbols_list linker flag],
2062
[lt_cv_ld_exported_symbols_list],
2063
[lt_cv_ld_exported_symbols_list=no
2064
save_LDFLAGS=$LDFLAGS
2065
echo "_main" > conftest.sym
2066
LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
2067
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2068
[lt_cv_ld_exported_symbols_list=yes],
2069
[lt_cv_ld_exported_symbols_list=no])
2070
LDFLAGS="$save_LDFLAGS"
2073
AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
2074
[lt_cv_ld_force_load=no
2075
cat > conftest.c << _LT_EOF
2076
int forced_loaded() { return 2;}
2078
echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
2079
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
2080
echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
2081
$AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
2082
echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
2083
$RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
2084
cat > conftest.c << _LT_EOF
2085
int main() { return 0;}
2087
echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
2088
$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
2090
if test -s conftest.err && $GREP force_load conftest.err; then
2091
cat conftest.err >&AS_MESSAGE_LOG_FD
2092
elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
2093
lt_cv_ld_force_load=yes
2095
cat conftest.err >&AS_MESSAGE_LOG_FD
2097
rm -f conftest.err libconftest.a conftest conftest.c
2098
rm -rf conftest.dSYM
2101
rhapsody* | darwin1.[[012]])
2102
_lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
2104
_lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
2105
darwin*) # darwin 5.x on
2106
# if running on 10.5 or later, the deployment target defaults
2107
# to the OS version, if on x86, and 10.4, the deployment
2108
# target defaults to 10.4. Don't you love it?
2109
case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
2110
10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
2111
_lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
2113
_lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
2115
_lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
2119
if test "$lt_cv_apple_cc_single_mod" = "yes"; then
2120
_lt_dar_single_mod='$single_module'
2122
if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
2123
_lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
2125
_lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
2127
if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
2128
_lt_dsymutil='~$DSYMUTIL $lib || :'
2137
# _LT_DARWIN_LINKER_FEATURES([TAG])
2138
# ---------------------------------
2139
# Checks for linker and compiler features on darwin
2140
m4_defun([_LT_DARWIN_LINKER_FEATURES],
2142
m4_require([_LT_REQUIRED_DARWIN_CHECKS])
2143
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
2144
_LT_TAGVAR(hardcode_direct, $1)=no
2145
_LT_TAGVAR(hardcode_automatic, $1)=yes
2146
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
2147
if test "$lt_cv_ld_force_load" = "yes"; then
2148
_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\"`'
2149
m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
2150
[FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
2152
_LT_TAGVAR(whole_archive_flag_spec, $1)=''
2154
_LT_TAGVAR(link_all_deplibs, $1)=yes
2155
_LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
2156
case $cc_basename in
2157
ifort*) _lt_dar_can_shared=yes ;;
2158
*) _lt_dar_can_shared=$GCC ;;
2160
if test "$_lt_dar_can_shared" = "yes"; then
2161
output_verbose_link_cmd=func_echo_all
2162
_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}"
2163
_LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
2164
_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}"
2165
_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}"
2167
[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
2168
_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}"
2169
_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}"
2173
_LT_TAGVAR(ld_shlibs, $1)=no
2177
# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
2178
# ----------------------------------
2179
# Links a minimal program and checks the executable
2180
# for the system default hardcoded library path. In most cases,
2181
# this is /usr/lib:/lib, but when the MPI compilers are used
2182
# the location of the communication and MPI libs are included too.
2183
# If we don't find anything, use the default library path according
2184
# to the aix ld manual.
2185
# Store the results from the different compilers for each TAGNAME.
2186
# Allow to override them for all tags through lt_cv_aix_libpath.
2187
m4_defun([_LT_SYS_MODULE_PATH_AIX],
2188
[m4_require([_LT_DECL_SED])dnl
2189
if test "${lt_cv_aix_libpath+set}" = set; then
2190
aix_libpath=$lt_cv_aix_libpath
2192
AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
2193
[AC_LINK_IFELSE([AC_LANG_PROGRAM],[
2194
lt_aix_libpath_sed='[
2195
/Import File Strings/,/^$/ {
2197
s/^0 *\([^ ]*\) *$/\1/
2201
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
2202
# Check for a 64-bit object if we didn't find anything.
2203
if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
2204
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
2206
if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
2207
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
2210
aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
2212
])# _LT_SYS_MODULE_PATH_AIX
2215
# _LT_SHELL_INIT(ARG)
2216
# -------------------
2217
m4_define([_LT_SHELL_INIT],
2218
[m4_divert_text([M4SH-INIT], [$1
2219
])])# _LT_SHELL_INIT
2223
# _LT_PROG_ECHO_BACKSLASH
2224
# -----------------------
2225
# Find how we can fake an echo command that does not interpret backslash.
2226
# In particular, with Autoconf 2.60 or later we add some code to the start
2227
# of the generated configure script which will find a shell with a builtin
2228
# printf (which we can use as an echo command).
2229
m4_defun([_LT_PROG_ECHO_BACKSLASH],
2230
[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
2231
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
2232
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
2234
AC_MSG_CHECKING([how to print strings])
2235
# Test print first, because it will be a builtin if present.
2236
if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
2237
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
2239
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
2242
# Use this function as a fallback that always works.
2243
func_fallback_echo ()
2245
eval 'cat <<_LTECHO_EOF
2249
ECHO='func_fallback_echo'
2252
# func_echo_all arg...
2253
# Invoke $ECHO with all args, space-separated.
2260
printf*) AC_MSG_RESULT([printf]) ;;
2261
print*) AC_MSG_RESULT([print -r]) ;;
2262
*) AC_MSG_RESULT([cat]) ;;
2265
m4_ifdef([_AS_DETECT_SUGGESTED],
2266
[_AS_DETECT_SUGGESTED([
2267
test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
2268
ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
2269
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
2270
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
2271
PATH=/empty FPATH=/empty; export PATH FPATH
2272
test "X`printf %s $ECHO`" = "X$ECHO" \
2273
|| test "X`print -r -- $ECHO`" = "X$ECHO" )])])
2275
_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
2276
_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
2277
])# _LT_PROG_ECHO_BACKSLASH
2282
AC_DEFUN([_LT_WITH_SYSROOT],
2283
[AC_MSG_CHECKING([for sysroot])
2284
AC_ARG_WITH([sysroot],
2285
[ --with-sysroot[=DIR] Search for dependent libraries within DIR
2286
(or the compiler's sysroot if not specified).],
2287
[], [with_sysroot=no])
2289
dnl lt_sysroot will always be passed unquoted. We quote it here
2290
dnl in case the user passed a directory name.
2292
case ${with_sysroot} in #(
2294
if test "$GCC" = yes; then
2295
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
2299
lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
2304
AC_MSG_RESULT([${with_sysroot}])
2305
AC_MSG_ERROR([The sysroot must be an absolute path.])
2309
AC_MSG_RESULT([${lt_sysroot:-no}])
2310
_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
2311
[dependent libraries, and in which our libraries should be installed.])])
2315
m4_defun([_LT_ENABLE_LOCK],
2316
[AC_ARG_ENABLE([libtool-lock],
2317
[AS_HELP_STRING([--disable-libtool-lock],
2318
[avoid locking (might break parallel builds)])])
2319
test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
2321
# Some flags need to be propagated to the compiler or linker for good
2325
# Find out which ABI we are using.
2326
echo 'int i;' > conftest.$ac_ext
2327
if AC_TRY_EVAL(ac_compile); then
2328
case `/usr/bin/file conftest.$ac_objext` in
2340
# Find out which ABI we are using.
2341
echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
2342
if AC_TRY_EVAL(ac_compile); then
2343
if test "$lt_cv_prog_gnu_ld" = yes; then
2344
case `/usr/bin/file conftest.$ac_objext` in
2346
LD="${LD-ld} -melf32bsmip"
2349
LD="${LD-ld} -melf32bmipn32"
2352
LD="${LD-ld} -melf64bmip"
2356
case `/usr/bin/file conftest.$ac_objext` in
2372
x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
2373
s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
2374
# Find out which ABI we are using.
2375
echo 'int i;' > conftest.$ac_ext
2376
if AC_TRY_EVAL(ac_compile); then
2377
case `/usr/bin/file conftest.o` in
2380
x86_64-*kfreebsd*-gnu)
2381
LD="${LD-ld} -m elf_i386_fbsd"
2384
LD="${LD-ld} -m elf_i386"
2386
ppc64-*linux*|powerpc64-*linux*)
2387
LD="${LD-ld} -m elf32ppclinux"
2390
LD="${LD-ld} -m elf_s390"
2393
LD="${LD-ld} -m elf32_sparc"
2399
x86_64-*kfreebsd*-gnu)
2400
LD="${LD-ld} -m elf_x86_64_fbsd"
2403
LD="${LD-ld} -m elf_x86_64"
2405
ppc*-*linux*|powerpc*-*linux*)
2406
LD="${LD-ld} -m elf64ppc"
2408
s390*-*linux*|s390*-*tpf*)
2409
LD="${LD-ld} -m elf64_s390"
2412
LD="${LD-ld} -m elf64_sparc"
2422
# On SCO OpenServer 5, we need -belf to get full-featured binaries.
2423
SAVE_CFLAGS="$CFLAGS"
2424
CFLAGS="$CFLAGS -belf"
2425
AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
2427
AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
2429
if test x"$lt_cv_cc_needs_belf" != x"yes"; then
2430
# this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
2431
CFLAGS="$SAVE_CFLAGS"
2435
# Find out which ABI we are using.
2436
echo 'int i;' > conftest.$ac_ext
2437
if AC_TRY_EVAL(ac_compile); then
2438
case `/usr/bin/file conftest.o` in
2440
case $lt_cv_prog_gnu_ld in
2444
LD="${LD-ld} -m elf_x86_64"
2447
LD="${LD-ld} -m elf64_sparc"
2450
# GNU ld 2.21 introduced _sol2 emulations. Use them if available.
2451
if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
2456
if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
2468
need_locks="$enable_libtool_lock"
2474
m4_defun([_LT_PROG_AR],
2475
[AC_CHECK_TOOLS(AR, [ar], false)
2478
_LT_DECL([], [AR], [1], [The archiver])
2479
_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
2481
AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
2482
[lt_cv_ar_at_file=no
2483
AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
2484
[echo conftest.$ac_objext > conftest.lst
2485
lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
2486
AC_TRY_EVAL([lt_ar_try])
2487
if test "$ac_status" -eq 0; then
2488
# Ensure the archiver fails upon bogus file names.
2489
rm -f conftest.$ac_objext libconftest.a
2490
AC_TRY_EVAL([lt_ar_try])
2491
if test "$ac_status" -ne 0; then
2495
rm -f conftest.* libconftest.a
2499
if test "x$lt_cv_ar_at_file" = xno; then
2502
archiver_list_spec=$lt_cv_ar_at_file
2504
_LT_DECL([], [archiver_list_spec], [1],
2505
[How to feed a file listing to the archiver])
2509
# _LT_CMD_OLD_ARCHIVE
2510
# -------------------
2511
m4_defun([_LT_CMD_OLD_ARCHIVE],
2514
AC_CHECK_TOOL(STRIP, strip, :)
2515
test -z "$STRIP" && STRIP=:
2516
_LT_DECL([], [STRIP], [1], [A symbol stripping program])
2518
AC_CHECK_TOOL(RANLIB, ranlib, :)
2519
test -z "$RANLIB" && RANLIB=:
2520
_LT_DECL([], [RANLIB], [1],
2521
[Commands used to install an old-style archive])
2523
# Determine commands to create old-style static archives.
2524
old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
2525
old_postinstall_cmds='chmod 644 $oldlib'
2526
old_postuninstall_cmds=
2528
if test -n "$RANLIB"; then
2531
old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
2534
old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
2537
old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
2542
lock_old_archive_extraction=yes ;;
2544
lock_old_archive_extraction=no ;;
2546
_LT_DECL([], [old_postinstall_cmds], [2])
2547
_LT_DECL([], [old_postuninstall_cmds], [2])
2548
_LT_TAGDECL([], [old_archive_cmds], [2],
2549
[Commands used to build an old-style archive])
2550
_LT_DECL([], [lock_old_archive_extraction], [0],
2551
[Whether to use a lock for old archive extraction])
2552
])# _LT_CMD_OLD_ARCHIVE
2555
# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
2556
# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
2557
# ----------------------------------------------------------------
2558
# Check whether the given compiler option works
2559
AC_DEFUN([_LT_COMPILER_OPTION],
2560
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2561
m4_require([_LT_DECL_SED])dnl
2562
AC_CACHE_CHECK([$1], [$2],
2564
m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
2565
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2566
lt_compiler_flag="$3"
2567
# Insert the option either (1) after the last *FLAGS variable, or
2568
# (2) before a word containing "conftest.", or (3) at the end.
2569
# Note that $ac_compile itself does not contain backslashes and begins
2570
# with a dollar sign (not a hyphen), so the echo should work correctly.
2571
# The option is referenced via a variable to avoid confusing sed.
2572
lt_compile=`echo "$ac_compile" | $SED \
2573
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2574
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2575
-e 's:$: $lt_compiler_flag:'`
2576
(eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2577
(eval "$lt_compile" 2>conftest.err)
2579
cat conftest.err >&AS_MESSAGE_LOG_FD
2580
echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2581
if (exit $ac_status) && test -s "$ac_outfile"; then
2582
# The compiler can only warn and ignore the option if not recognized
2583
# So say no if there are warnings other than the usual output.
2584
$ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
2585
$SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
2586
if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
2593
if test x"[$]$2" = xyes; then
2594
m4_if([$5], , :, [$5])
2596
m4_if([$6], , :, [$6])
2598
])# _LT_COMPILER_OPTION
2601
AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
2602
dnl aclocal-1.4 backwards compatibility:
2603
dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
2606
# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
2607
# [ACTION-SUCCESS], [ACTION-FAILURE])
2608
# ----------------------------------------------------
2609
# Check whether the given linker option works
2610
AC_DEFUN([_LT_LINKER_OPTION],
2611
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2612
m4_require([_LT_DECL_SED])dnl
2613
AC_CACHE_CHECK([$1], [$2],
2615
save_LDFLAGS="$LDFLAGS"
2616
LDFLAGS="$LDFLAGS $3"
2617
echo "$lt_simple_link_test_code" > conftest.$ac_ext
2618
if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
2619
# The linker can only warn and ignore the option if not recognized
2620
# So say no if there are warnings
2621
if test -s conftest.err; then
2622
# Append any errors to the config.log.
2623
cat conftest.err 1>&AS_MESSAGE_LOG_FD
2624
$ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
2625
$SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
2626
if diff conftest.exp conftest.er2 >/dev/null; then
2634
LDFLAGS="$save_LDFLAGS"
2637
if test x"[$]$2" = xyes; then
2638
m4_if([$4], , :, [$4])
2640
m4_if([$5], , :, [$5])
2642
])# _LT_LINKER_OPTION
2645
AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
2646
dnl aclocal-1.4 backwards compatibility:
2647
dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
2652
AC_DEFUN([LT_CMD_MAX_LEN],
2653
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2654
# find the maximum length of command line arguments
2655
AC_MSG_CHECKING([the maximum length of command line arguments])
2656
AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
2662
# On DJGPP, this test can blow up pretty badly due to problems in libc
2663
# (any single argument exceeding 2000 bytes causes a buffer overrun
2664
# during glob expansion). Even if it were fixed, the result of this
2665
# check would be larger than it should be.
2666
lt_cv_sys_max_cmd_len=12288; # 12K is about right
2670
# Under GNU Hurd, this test is not required because there is
2671
# no limit to the length of command line arguments.
2672
# Libtool will interpret -1 as no limit whatsoever
2673
lt_cv_sys_max_cmd_len=-1;
2676
cygwin* | mingw* | cegcc*)
2677
# On Win9x/ME, this test blows up -- it succeeds, but takes
2678
# about 5 minutes as the teststring grows exponentially.
2679
# Worse, since 9x/ME are not pre-emptively multitasking,
2680
# you end up with a "frozen" computer, even though with patience
2681
# the test eventually succeeds (with a max line length of 256k).
2682
# Instead, let's just punt: use the minimum linelength reported by
2683
# all of the supported platforms: 8192 (on NT/2K/XP).
2684
lt_cv_sys_max_cmd_len=8192;
2688
# On MiNT this can take a long time and run out of memory.
2689
lt_cv_sys_max_cmd_len=8192;
2693
# On AmigaOS with pdksh, this test takes hours, literally.
2694
# So we just punt and use a minimum line length of 8192.
2695
lt_cv_sys_max_cmd_len=8192;
2698
netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
2699
# This has been around since 386BSD, at least. Likely further.
2700
if test -x /sbin/sysctl; then
2701
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
2702
elif test -x /usr/sbin/sysctl; then
2703
lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
2705
lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
2707
# And add a safety zone
2708
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
2709
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
2713
# We know the value 262144 and hardcode it with a safety zone (like BSD)
2714
lt_cv_sys_max_cmd_len=196608
2718
# The test takes a long time on OS/2.
2719
lt_cv_sys_max_cmd_len=8192
2723
# Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
2724
# due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
2725
# nice to cause kernel panics so lets avoid the loop below.
2726
# First set a reasonable default.
2727
lt_cv_sys_max_cmd_len=16384
2729
if test -x /sbin/sysconfig; then
2730
case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
2731
*1*) lt_cv_sys_max_cmd_len=-1 ;;
2736
lt_cv_sys_max_cmd_len=102400
2738
sysv5* | sco5v6* | sysv4.2uw2*)
2739
kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
2740
if test -n "$kargmax"; then
2741
lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
2743
lt_cv_sys_max_cmd_len=32768
2747
lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
2748
if test -n "$lt_cv_sys_max_cmd_len"; then
2749
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
2750
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
2752
# Make teststring a little bigger before we do anything with it.
2753
# a 1K string should be a reasonable start.
2754
for i in 1 2 3 4 5 6 7 8 ; do
2755
teststring=$teststring$teststring
2757
SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
2758
# If test is not a shell built-in, we'll probably end up computing a
2759
# maximum length that is only half of the actual maximum length, but
2761
while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
2762
= "X$teststring$teststring"; } >/dev/null 2>&1 &&
2763
test $i != 17 # 1/2 MB should be enough
2766
teststring=$teststring$teststring
2768
# Only check the string length outside the loop.
2769
lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
2771
# Add a significant safety factor because C++ compilers can tack on
2772
# massive amounts of additional arguments before passing them to the
2773
# linker. It appears as though 1/2 is a usable value.
2774
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
2779
if test -n $lt_cv_sys_max_cmd_len ; then
2780
AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
2784
max_cmd_len=$lt_cv_sys_max_cmd_len
2785
_LT_DECL([], [max_cmd_len], [0],
2786
[What is the maximum length of a command?])
2790
AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
2791
dnl aclocal-1.4 backwards compatibility:
2792
dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
2797
m4_defun([_LT_HEADER_DLFCN],
2798
[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
2799
])# _LT_HEADER_DLFCN
2802
# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
2803
# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
2804
# ----------------------------------------------------------------
2805
m4_defun([_LT_TRY_DLOPEN_SELF],
2806
[m4_require([_LT_HEADER_DLFCN])dnl
2807
if test "$cross_compiling" = yes; then :
2810
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
2811
lt_status=$lt_dlunknown
2812
cat > conftest.$ac_ext <<_LT_EOF
2813
[#line $LINENO "configure"
2814
#include "confdefs.h"
2823
# define LT_DLGLOBAL RTLD_GLOBAL
2826
# define LT_DLGLOBAL DL_GLOBAL
2828
# define LT_DLGLOBAL 0
2832
/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
2833
find out it does not work in some platform. */
2834
#ifndef LT_DLLAZY_OR_NOW
2836
# define LT_DLLAZY_OR_NOW RTLD_LAZY
2839
# define LT_DLLAZY_OR_NOW DL_LAZY
2842
# define LT_DLLAZY_OR_NOW RTLD_NOW
2845
# define LT_DLLAZY_OR_NOW DL_NOW
2847
# define LT_DLLAZY_OR_NOW 0
2854
/* When -fvisbility=hidden is used, assume the code has been annotated
2855
correspondingly for the symbols needed. */
2856
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
2857
int fnord () __attribute__((visibility("default")));
2860
int fnord () { return 42; }
2863
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
2864
int status = $lt_dlunknown;
2868
if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
2871
if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
2872
else puts (dlerror ());
2874
/* dlclose (self); */
2882
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
2883
(./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
2886
x$lt_dlno_uscore) $1 ;;
2887
x$lt_dlneed_uscore) $2 ;;
2888
x$lt_dlunknown|x*) $3 ;;
2891
# compilation failed
2896
])# _LT_TRY_DLOPEN_SELF
2899
# LT_SYS_DLOPEN_SELF
2900
# ------------------
2901
AC_DEFUN([LT_SYS_DLOPEN_SELF],
2902
[m4_require([_LT_HEADER_DLFCN])dnl
2903
if test "x$enable_dlopen" != xyes; then
2904
enable_dlopen=unknown
2905
enable_dlopen_self=unknown
2906
enable_dlopen_self_static=unknown
2913
lt_cv_dlopen="load_add_on"
2915
lt_cv_dlopen_self=yes
2918
mingw* | pw32* | cegcc*)
2919
lt_cv_dlopen="LoadLibrary"
2924
lt_cv_dlopen="dlopen"
2929
# if libdl is installed we need to link against it
2930
AC_CHECK_LIB([dl], [dlopen],
2931
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
2934
lt_cv_dlopen_self=yes
2939
AC_CHECK_FUNC([shl_load],
2940
[lt_cv_dlopen="shl_load"],
2941
[AC_CHECK_LIB([dld], [shl_load],
2942
[lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
2943
[AC_CHECK_FUNC([dlopen],
2944
[lt_cv_dlopen="dlopen"],
2945
[AC_CHECK_LIB([dl], [dlopen],
2946
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
2947
[AC_CHECK_LIB([svld], [dlopen],
2948
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
2949
[AC_CHECK_LIB([dld], [dld_link],
2950
[lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
2959
if test "x$lt_cv_dlopen" != xno; then
2965
case $lt_cv_dlopen in
2967
save_CPPFLAGS="$CPPFLAGS"
2968
test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
2970
save_LDFLAGS="$LDFLAGS"
2971
wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2974
LIBS="$lt_cv_dlopen_libs $LIBS"
2976
AC_CACHE_CHECK([whether a program can dlopen itself],
2977
lt_cv_dlopen_self, [dnl
2978
_LT_TRY_DLOPEN_SELF(
2979
lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
2980
lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
2983
if test "x$lt_cv_dlopen_self" = xyes; then
2984
wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
2985
AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
2986
lt_cv_dlopen_self_static, [dnl
2987
_LT_TRY_DLOPEN_SELF(
2988
lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
2989
lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
2993
CPPFLAGS="$save_CPPFLAGS"
2994
LDFLAGS="$save_LDFLAGS"
2999
case $lt_cv_dlopen_self in
3000
yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
3001
*) enable_dlopen_self=unknown ;;
3004
case $lt_cv_dlopen_self_static in
3005
yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
3006
*) enable_dlopen_self_static=unknown ;;
3009
_LT_DECL([dlopen_support], [enable_dlopen], [0],
3010
[Whether dlopen is supported])
3011
_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
3012
[Whether dlopen of programs is supported])
3013
_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
3014
[Whether dlopen of statically linked programs is supported])
3015
])# LT_SYS_DLOPEN_SELF
3018
AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
3019
dnl aclocal-1.4 backwards compatibility:
3020
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
3023
# _LT_COMPILER_C_O([TAGNAME])
3024
# ---------------------------
3025
# Check to see if options -c and -o are simultaneously supported by compiler.
3026
# This macro does not hard code the compiler like AC_PROG_CC_C_O.
3027
m4_defun([_LT_COMPILER_C_O],
3028
[m4_require([_LT_DECL_SED])dnl
3029
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3030
m4_require([_LT_TAG_COMPILER])dnl
3031
AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
3032
[_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
3033
[_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
3034
$RM -r conftest 2>/dev/null
3038
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
3040
lt_compiler_flag="-o out/conftest2.$ac_objext"
3041
# Insert the option either (1) after the last *FLAGS variable, or
3042
# (2) before a word containing "conftest.", or (3) at the end.
3043
# Note that $ac_compile itself does not contain backslashes and begins
3044
# with a dollar sign (not a hyphen), so the echo should work correctly.
3045
lt_compile=`echo "$ac_compile" | $SED \
3046
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
3047
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
3048
-e 's:$: $lt_compiler_flag:'`
3049
(eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
3050
(eval "$lt_compile" 2>out/conftest.err)
3052
cat out/conftest.err >&AS_MESSAGE_LOG_FD
3053
echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
3054
if (exit $ac_status) && test -s out/conftest2.$ac_objext
3056
# The compiler can only warn and ignore the option if not recognized
3057
# So say no if there are warnings
3058
$ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
3059
$SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
3060
if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
3061
_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
3064
chmod u+w . 2>&AS_MESSAGE_LOG_FD
3066
# SGI C++ compiler will create directory out/ii_files/ for
3067
# template instantiation
3068
test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
3069
$RM out/* && rmdir out
3074
_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
3075
[Does compiler simultaneously support -c and -o options?])
3076
])# _LT_COMPILER_C_O
3079
# _LT_COMPILER_FILE_LOCKS([TAGNAME])
3080
# ----------------------------------
3081
# Check to see if we can do hard links to lock some files if needed
3082
m4_defun([_LT_COMPILER_FILE_LOCKS],
3083
[m4_require([_LT_ENABLE_LOCK])dnl
3084
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3085
_LT_COMPILER_C_O([$1])
3087
hard_links="nottested"
3088
if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
3089
# do not overwrite the value of need_locks provided by the user
3090
AC_MSG_CHECKING([if we can lock with hard links])
3093
ln conftest.a conftest.b 2>/dev/null && hard_links=no
3095
ln conftest.a conftest.b 2>&5 || hard_links=no
3096
ln conftest.a conftest.b 2>/dev/null && hard_links=no
3097
AC_MSG_RESULT([$hard_links])
3098
if test "$hard_links" = no; then
3099
AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
3105
_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
3106
])# _LT_COMPILER_FILE_LOCKS
3111
m4_defun([_LT_CHECK_OBJDIR],
3112
[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
3113
[rm -f .libs 2>/dev/null
3114
mkdir .libs 2>/dev/null
3115
if test -d .libs; then
3118
# MS-DOS does not allow filenames that begin with a dot.
3121
rmdir .libs 2>/dev/null])
3122
objdir=$lt_cv_objdir
3123
_LT_DECL([], [objdir], [0],
3124
[The name of the directory that contains temporary libtool files])dnl
3125
m4_pattern_allow([LT_OBJDIR])dnl
3126
AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
3127
[Define to the sub-directory in which libtool stores uninstalled libraries.])
3128
])# _LT_CHECK_OBJDIR
3131
# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
3132
# --------------------------------------
3133
# Check hardcoding attributes.
3134
m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
3135
[AC_MSG_CHECKING([how to hardcode library paths into programs])
3136
_LT_TAGVAR(hardcode_action, $1)=
3137
if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
3138
test -n "$_LT_TAGVAR(runpath_var, $1)" ||
3139
test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
3141
# We can hardcode non-existent directories.
3142
if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
3143
# If the only mechanism to avoid hardcoding is shlibpath_var, we
3144
# have to relink, otherwise we might link with an installed library
3145
# when we should be linking with a yet-to-be-installed one
3146
## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
3147
test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
3148
# Linking always hardcodes the temporary library directory.
3149
_LT_TAGVAR(hardcode_action, $1)=relink
3151
# We can link without hardcoding, and we can hardcode nonexisting dirs.
3152
_LT_TAGVAR(hardcode_action, $1)=immediate
3155
# We cannot hardcode anything, or else we can only hardcode existing
3157
_LT_TAGVAR(hardcode_action, $1)=unsupported
3159
AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
3161
if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
3162
test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
3163
# Fast installation is not supported
3164
enable_fast_install=no
3165
elif test "$shlibpath_overrides_runpath" = yes ||
3166
test "$enable_shared" = no; then
3167
# Fast installation is not necessary
3168
enable_fast_install=needless
3170
_LT_TAGDECL([], [hardcode_action], [0],
3171
[How to hardcode a shared library path into an executable])
3172
])# _LT_LINKER_HARDCODE_LIBPATH
3177
m4_defun([_LT_CMD_STRIPLIB],
3178
[m4_require([_LT_DECL_EGREP])
3181
AC_MSG_CHECKING([whether stripping libraries is possible])
3182
if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
3183
test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
3184
test -z "$striplib" && striplib="$STRIP --strip-unneeded"
3185
AC_MSG_RESULT([yes])
3187
# FIXME - insert some real tests, host_os isn't really good enough
3190
if test -n "$STRIP" ; then
3191
striplib="$STRIP -x"
3192
old_striplib="$STRIP -S"
3193
AC_MSG_RESULT([yes])
3203
_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
3204
_LT_DECL([], [striplib], [1])
3205
])# _LT_CMD_STRIPLIB
3208
# _LT_SYS_DYNAMIC_LINKER([TAG])
3209
# -----------------------------
3210
# PORTME Fill in your ld.so characteristics
3211
m4_defun([_LT_SYS_DYNAMIC_LINKER],
3212
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3213
m4_require([_LT_DECL_EGREP])dnl
3214
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3215
m4_require([_LT_DECL_OBJDUMP])dnl
3216
m4_require([_LT_DECL_SED])dnl
3217
m4_require([_LT_CHECK_SHELL_FEATURES])dnl
3218
AC_MSG_CHECKING([dynamic linker characteristics])
3221
if test "$GCC" = yes; then
3223
darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
3224
*) lt_awk_arg="/^libraries:/" ;;
3227
mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
3228
*) lt_sed_strip_eq="s,=/,/,g" ;;
3230
lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
3231
case $lt_search_path_spec in
3233
# if the path contains ";" then we assume it to be the separator
3234
# otherwise default to the standard path separator (i.e. ":") - it is
3235
# assumed that no part of a normal pathname contains ";" but that should
3236
# okay in the real world where ";" in dirpaths is itself problematic.
3237
lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
3240
lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
3243
# Ok, now we have the path, separated by spaces, we can step through it
3244
# and add multilib dir if necessary.
3245
lt_tmp_lt_search_path_spec=
3246
lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
3247
for lt_sys_path in $lt_search_path_spec; do
3248
if test -d "$lt_sys_path/$lt_multi_os_dir"; then
3249
lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
3251
test -d "$lt_sys_path" && \
3252
lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
3255
lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
3256
BEGIN {RS=" "; FS="/|\n";} {
3259
for (lt_i = NF; lt_i > 0; lt_i--) {
3260
if ($lt_i != "" && $lt_i != ".") {
3261
if ($lt_i == "..") {
3264
if (lt_count == 0) {
3265
lt_foo="/" $lt_i lt_foo;
3272
if (lt_foo != "") { lt_freq[[lt_foo]]++; }
3273
if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
3275
# AWK program above erroneously prepends '/' to C:/dos/paths
3278
mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
3279
$SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
3281
sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
3283
sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
3286
libname_spec='lib$name'
3294
shlibpath_overrides_runpath=unknown
3296
dynamic_linker="$host_os ld.so"
3297
sys_lib_dlsearch_path_spec="/lib /usr/lib"
3298
need_lib_prefix=unknown
3299
hardcode_into_libs=no
3301
# when you set need_version to no, make sure it does not cause -set_version
3302
# flags to be left without arguments
3303
need_version=unknown
3307
version_type=linux # correct to gnu/linux during the next big refactor
3308
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
3309
shlibpath_var=LIBPATH
3311
# AIX 3 has no versioning support, so we append a major version to the name.
3312
soname_spec='${libname}${release}${shared_ext}$major'
3316
version_type=linux # correct to gnu/linux during the next big refactor
3319
hardcode_into_libs=yes
3320
if test "$host_cpu" = ia64; then
3321
# AIX 5 supports IA64
3322
library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
3323
shlibpath_var=LD_LIBRARY_PATH
3325
# With GCC up to 2.95.x, collect2 would create an import file
3326
# for dependence libraries. The import file would start with
3327
# the line `#! .'. This would cause the generated library to
3328
# depend on `.', always an invalid library. This was fixed in
3329
# development snapshots of GCC prior to 3.0.
3331
aix4 | aix4.[[01]] | aix4.[[01]].*)
3332
if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
3334
echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
3341
# AIX (on Power*) has no versioning support, so currently we can not hardcode correct
3342
# soname into executable. Probably we can add versioning support to
3343
# collect2, so additional links can be useful in future.
3344
if test "$aix_use_runtimelinking" = yes; then
3345
# If using run time linking (on AIX 4.2 or later) use lib<name>.so
3346
# instead of lib<name>.a to let people know that these are not
3347
# typical AIX shared libraries.
3348
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3350
# We preserve .a as extension for shared libraries through AIX4.2
3351
# and later when we are not doing run time linking.
3352
library_names_spec='${libname}${release}.a $libname.a'
3353
soname_spec='${libname}${release}${shared_ext}$major'
3355
shlibpath_var=LIBPATH
3362
# Since July 2007 AmigaOS4 officially supports .so libraries.
3363
# When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
3364
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3367
library_names_spec='$libname.ixlibrary $libname.a'
3368
# Create ${libname}_ixlibrary.a entries in /sys/libs.
3369
finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $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'
3375
library_names_spec='${libname}${shared_ext}'
3376
dynamic_linker="$host_os ld.so"
3377
shlibpath_var=LIBRARY_PATH
3381
version_type=linux # correct to gnu/linux during the next big refactor
3383
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3384
soname_spec='${libname}${release}${shared_ext}$major'
3385
finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
3386
shlibpath_var=LD_LIBRARY_PATH
3387
sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
3388
sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
3389
# the default ld.so.conf also contains /usr/contrib/lib and
3390
# /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
3391
# libtool to hard-code these into programs
3394
cygwin* | mingw* | pw32* | cegcc*)
3395
version_type=windows
3400
case $GCC,$cc_basename in
3403
library_names_spec='$libname.dll.a'
3404
# DLL is installed to $(libdir)/../bin by postinstall_cmds
3405
postinstall_cmds='base_file=`basename \${file}`~
3406
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
3407
dldir=$destdir/`dirname \$dlpath`~
3408
test -d \$dldir || mkdir -p \$dldir~
3409
$install_prog $dir/$dlname \$dldir/$dlname~
3410
chmod a+x \$dldir/$dlname~
3411
if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
3412
eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
3414
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
3415
dlpath=$dir/\$dldll~
3417
shlibpath_overrides_runpath=yes
3421
# Cygwin DLLs use 'cyg' prefix rather than 'lib'
3422
soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3424
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
3427
# MinGW DLLs use traditional 'lib' prefix
3428
soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3431
# pw32 DLLs use 'pw' prefix rather than 'lib'
3432
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3435
dynamic_linker='Win32 ld.exe'
3440
libname_spec='$name'
3441
soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3442
library_names_spec='${libname}.dll.lib'
3446
sys_lib_search_path_spec=
3452
# Let DOS variable expansion print the short 8.3 style file name.
3453
lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
3454
sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
3457
# Convert to MSYS style.
3458
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
3461
# Convert to unix form, then to dos form, then back to unix form
3462
# but this time dos style (no spaces!) so that the unix form looks
3463
# like /cygdrive/c/PROGRA~1:/cygdr...
3464
sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
3465
sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
3466
sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
3469
sys_lib_search_path_spec="$LIB"
3470
if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
3471
# It is most probably a Windows format PATH.
3472
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
3474
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
3476
# FIXME: find the short name or the path components, as spaces are
3477
# common. (e.g. "Program Files" -> "PROGRA~1")
3481
# DLL is installed to $(libdir)/../bin by postinstall_cmds
3482
postinstall_cmds='base_file=`basename \${file}`~
3483
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
3484
dldir=$destdir/`dirname \$dlpath`~
3485
test -d \$dldir || mkdir -p \$dldir~
3486
$install_prog $dir/$dlname \$dldir/$dlname'
3487
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
3488
dlpath=$dir/\$dldll~
3490
shlibpath_overrides_runpath=yes
3491
dynamic_linker='Win32 link.exe'
3495
# Assume MSVC wrapper
3496
library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
3497
dynamic_linker='Win32 ld.exe'
3500
# FIXME: first we should search . and the directory the executable is in
3504
darwin* | rhapsody*)
3505
dynamic_linker="$host_os dyld"
3509
library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
3510
soname_spec='${libname}${release}${major}$shared_ext'
3511
shlibpath_overrides_runpath=yes
3512
shlibpath_var=DYLD_LIBRARY_PATH
3513
shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
3515
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
3516
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
3520
version_type=linux # correct to gnu/linux during the next big refactor
3523
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
3524
soname_spec='${libname}${release}${shared_ext}$major'
3525
shlibpath_var=LD_LIBRARY_PATH
3528
freebsd* | dragonfly*)
3529
# DragonFly does not have aout. When/if they implement a new
3530
# versioning mechanism, adjust this.
3531
if test -x /usr/bin/objformat; then
3532
objformat=`/usr/bin/objformat`
3535
freebsd[[23]].*) objformat=aout ;;
3539
version_type=freebsd-$objformat
3540
case $version_type in
3542
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
3547
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
3551
shlibpath_var=LD_LIBRARY_PATH
3554
shlibpath_overrides_runpath=yes
3556
freebsd3.[[01]]* | freebsdelf3.[[01]]*)
3557
shlibpath_overrides_runpath=yes
3558
hardcode_into_libs=yes
3560
freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
3561
freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
3562
shlibpath_overrides_runpath=no
3563
hardcode_into_libs=yes
3565
*) # from 4.6 on, and DragonFly
3566
shlibpath_overrides_runpath=yes
3567
hardcode_into_libs=yes
3573
version_type=linux # correct to gnu/linux during the next big refactor
3576
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
3577
soname_spec='${libname}${release}${shared_ext}$major'
3578
shlibpath_var=LD_LIBRARY_PATH
3579
shlibpath_overrides_runpath=no
3580
hardcode_into_libs=yes
3584
version_type=linux # correct to gnu/linux during the next big refactor
3587
dynamic_linker="$host_os runtime_loader"
3588
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
3589
soname_spec='${libname}${release}${shared_ext}$major'
3590
shlibpath_var=LIBRARY_PATH
3591
shlibpath_overrides_runpath=yes
3592
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
3593
hardcode_into_libs=yes
3596
hpux9* | hpux10* | hpux11*)
3597
# Give a soname corresponding to the major version so that dld.sl refuses to
3598
# link against other versions.
3605
hardcode_into_libs=yes
3606
dynamic_linker="$host_os dld.so"
3607
shlibpath_var=LD_LIBRARY_PATH
3608
shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
3609
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3610
soname_spec='${libname}${release}${shared_ext}$major'
3611
if test "X$HPUX_IA64_MODE" = X32; then
3612
sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
3614
sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
3616
sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
3620
hardcode_into_libs=yes
3621
dynamic_linker="$host_os dld.sl"
3622
shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
3623
shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
3624
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3625
soname_spec='${libname}${release}${shared_ext}$major'
3626
sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
3627
sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
3631
dynamic_linker="$host_os dld.sl"
3632
shlibpath_var=SHLIB_PATH
3633
shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
3634
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3635
soname_spec='${libname}${release}${shared_ext}$major'
3638
# HP-UX runs *really* slowly unless shared libraries are mode 555, ...
3639
postinstall_cmds='chmod 555 $lib'
3640
# or fails outright, so override atomically:
3641
install_override_mode=555
3645
version_type=linux # correct to gnu/linux during the next big refactor
3648
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
3649
soname_spec='${libname}${release}${shared_ext}$major'
3650
dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
3651
shlibpath_var=LD_LIBRARY_PATH
3652
shlibpath_overrides_runpath=no
3653
hardcode_into_libs=yes
3656
irix5* | irix6* | nonstopux*)
3658
nonstopux*) version_type=nonstopux ;;
3660
if test "$lt_cv_prog_gnu_ld" = yes; then
3661
version_type=linux # correct to gnu/linux during the next big refactor
3668
soname_spec='${libname}${release}${shared_ext}$major'
3669
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
3671
irix5* | nonstopux*)
3675
case $LD in # libtool.m4 will add one of these switches to LD
3676
*-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
3677
libsuff= shlibsuff= libmagic=32-bit;;
3678
*-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
3679
libsuff=32 shlibsuff=N32 libmagic=N32;;
3680
*-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
3681
libsuff=64 shlibsuff=64 libmagic=64-bit;;
3682
*) libsuff= shlibsuff= libmagic=never-match;;
3686
shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
3687
shlibpath_overrides_runpath=no
3688
sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
3689
sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
3690
hardcode_into_libs=yes
3693
# No shared lib support for Linux oldld, aout, or coff.
3694
linux*oldld* | linux*aout* | linux*coff*)
3698
# This must be glibc/ELF.
3699
linux* | k*bsd*-gnu | kopensolaris*-gnu)
3700
version_type=linux # correct to gnu/linux during the next big refactor
3703
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3704
soname_spec='${libname}${release}${shared_ext}$major'
3705
finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
3706
shlibpath_var=LD_LIBRARY_PATH
3707
shlibpath_overrides_runpath=no
3709
# Some binutils ld are patched to set DT_RUNPATH
3710
AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
3711
[lt_cv_shlibpath_overrides_runpath=no
3712
save_LDFLAGS=$LDFLAGS
3714
eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
3715
LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
3716
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
3717
[AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
3718
[lt_cv_shlibpath_overrides_runpath=yes])])
3719
LDFLAGS=$save_LDFLAGS
3722
shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
3724
# This implies no fast_install, which is unacceptable.
3725
# Some rework will be needed to allow for fast_install
3726
# before this can be enabled.
3727
hardcode_into_libs=yes
3729
# Add ABI-specific directories to the system library path.
3730
sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
3732
# Append ld.so.conf contents to the search path
3733
if test -f /etc/ld.so.conf; then
3734
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' ' '`
3735
sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
3739
# We used to test for /lib/ld.so.1 and disable shared libraries on
3740
# powerpc, because MkLinux only supported shared libraries with the
3741
# GNU dynamic linker. Since this was broken with cross compilers,
3742
# most powerpc-linux boxes support dynamic linking these days and
3743
# people can always --disable-shared, the test was removed, and we
3744
# assume the GNU/Linux dynamic linker is in use.
3745
dynamic_linker='GNU/Linux ld.so'
3752
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
3753
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
3754
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
3755
dynamic_linker='NetBSD (a.out) ld.so'
3757
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
3758
soname_spec='${libname}${release}${shared_ext}$major'
3759
dynamic_linker='NetBSD ld.elf_so'
3761
shlibpath_var=LD_LIBRARY_PATH
3762
shlibpath_overrides_runpath=yes
3763
hardcode_into_libs=yes
3767
version_type=linux # correct to gnu/linux during the next big refactor
3768
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3769
shlibpath_var=LD_LIBRARY_PATH
3770
shlibpath_overrides_runpath=yes
3777
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3778
soname_spec='${libname}${release}${shared_ext}$major'
3779
shlibpath_var=LD_LIBRARY_PATH
3780
shlibpath_overrides_runpath=no
3781
hardcode_into_libs=yes
3782
dynamic_linker='ldqnx.so'
3787
sys_lib_dlsearch_path_spec="/usr/lib"
3789
# Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
3791
openbsd3.3 | openbsd3.3.*) need_version=yes ;;
3792
*) need_version=no ;;
3794
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
3795
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
3796
shlibpath_var=LD_LIBRARY_PATH
3797
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3799
openbsd2.[[89]] | openbsd2.[[89]].*)
3800
shlibpath_overrides_runpath=no
3803
shlibpath_overrides_runpath=yes
3807
shlibpath_overrides_runpath=yes
3812
libname_spec='$name'
3815
library_names_spec='$libname${shared_ext} $libname.a'
3816
dynamic_linker='OS/2 ld.exe'
3817
shlibpath_var=LIBPATH
3820
osf3* | osf4* | osf5*)
3824
soname_spec='${libname}${release}${shared_ext}$major'
3825
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3826
shlibpath_var=LD_LIBRARY_PATH
3827
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
3828
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
3836
version_type=linux # correct to gnu/linux during the next big refactor
3839
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3840
soname_spec='${libname}${release}${shared_ext}$major'
3841
shlibpath_var=LD_LIBRARY_PATH
3842
shlibpath_overrides_runpath=yes
3843
hardcode_into_libs=yes
3844
# ldd complains unless libraries are executable
3845
postinstall_cmds='chmod +x $lib'
3850
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
3851
finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
3852
shlibpath_var=LD_LIBRARY_PATH
3853
shlibpath_overrides_runpath=yes
3854
if test "$with_gnu_ld" = yes; then
3861
version_type=linux # correct to gnu/linux during the next big refactor
3862
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3863
soname_spec='${libname}${release}${shared_ext}$major'
3864
shlibpath_var=LD_LIBRARY_PATH
3865
case $host_vendor in
3867
shlibpath_overrides_runpath=no
3869
runpath_var=LD_RUN_PATH
3877
shlibpath_overrides_runpath=no
3878
sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
3884
if test -d /usr/nec ;then
3885
version_type=linux # correct to gnu/linux during the next big refactor
3886
library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
3887
soname_spec='$libname${shared_ext}.$major'
3888
shlibpath_var=LD_LIBRARY_PATH
3892
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3893
version_type=freebsd-elf
3896
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
3897
soname_spec='${libname}${release}${shared_ext}$major'
3898
shlibpath_var=LD_LIBRARY_PATH
3899
shlibpath_overrides_runpath=yes
3900
hardcode_into_libs=yes
3901
if test "$with_gnu_ld" = yes; then
3902
sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
3904
sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
3907
sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
3911
sys_lib_dlsearch_path_spec='/usr/lib'
3915
# TPF is a cross-target only. Preferred cross-host = GNU/Linux.
3916
version_type=linux # correct to gnu/linux during the next big refactor
3919
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3920
shlibpath_var=LD_LIBRARY_PATH
3921
shlibpath_overrides_runpath=no
3922
hardcode_into_libs=yes
3926
version_type=linux # correct to gnu/linux during the next big refactor
3927
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3928
soname_spec='${libname}${release}${shared_ext}$major'
3929
shlibpath_var=LD_LIBRARY_PATH
3936
AC_MSG_RESULT([$dynamic_linker])
3937
test "$dynamic_linker" = no && can_build_shared=no
3939
variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
3940
if test "$GCC" = yes; then
3941
variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3944
if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
3945
sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
3947
if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
3948
sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
3951
_LT_DECL([], [variables_saved_for_relink], [1],
3952
[Variables whose values should be saved in libtool wrapper scripts and
3953
restored at link time])
3954
_LT_DECL([], [need_lib_prefix], [0],
3955
[Do we need the "lib" prefix for modules?])
3956
_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
3957
_LT_DECL([], [version_type], [0], [Library versioning type])
3958
_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
3959
_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
3960
_LT_DECL([], [shlibpath_overrides_runpath], [0],
3961
[Is shlibpath searched before the hard-coded library search path?])
3962
_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
3963
_LT_DECL([], [library_names_spec], [1],
3964
[[List of archive names. First name is the real one, the rest are links.
3965
The last name is the one that the linker finds with -lNAME]])
3966
_LT_DECL([], [soname_spec], [1],
3967
[[The coded name of the library, if different from the real name]])
3968
_LT_DECL([], [install_override_mode], [1],
3969
[Permission mode override for installation of shared libraries])
3970
_LT_DECL([], [postinstall_cmds], [2],
3971
[Command to use after installation of a shared archive])
3972
_LT_DECL([], [postuninstall_cmds], [2],
3973
[Command to use after uninstallation of a shared archive])
3974
_LT_DECL([], [finish_cmds], [2],
3975
[Commands used to finish a libtool library installation in a directory])
3976
_LT_DECL([], [finish_eval], [1],
3977
[[As "finish_cmds", except a single script fragment to be evaled but
3979
_LT_DECL([], [hardcode_into_libs], [0],
3980
[Whether we should hardcode library paths into libraries])
3981
_LT_DECL([], [sys_lib_search_path_spec], [2],
3982
[Compile-time system search path for libraries])
3983
_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
3984
[Run-time system search path for libraries])
3985
])# _LT_SYS_DYNAMIC_LINKER
3988
# _LT_PATH_TOOL_PREFIX(TOOL)
3989
# --------------------------
3990
# find a file program which can recognize shared library
3991
AC_DEFUN([_LT_PATH_TOOL_PREFIX],
3992
[m4_require([_LT_DECL_EGREP])dnl
3993
AC_MSG_CHECKING([for $1])
3994
AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3996
[[\\/*] | ?:[\\/]*])
3997
lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
4000
lt_save_MAGIC_CMD="$MAGIC_CMD"
4001
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
4002
dnl $ac_dummy forces splitting on constant user-supplied paths.
4003
dnl POSIX.2 word splitting is done only on the output of word expansions,
4004
dnl not every word. This closes a longstanding sh security hole.
4005
ac_dummy="m4_if([$2], , $PATH, [$2])"
4006
for ac_dir in $ac_dummy; do
4008
test -z "$ac_dir" && ac_dir=.
4009
if test -f $ac_dir/$1; then
4010
lt_cv_path_MAGIC_CMD="$ac_dir/$1"
4011
if test -n "$file_magic_test_file"; then
4012
case $deplibs_check_method in
4014
file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
4015
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
4016
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
4017
$EGREP "$file_magic_regex" > /dev/null; then
4022
*** Warning: the command libtool uses to detect shared libraries,
4023
*** $file_magic_cmd, produces output that libtool cannot recognize.
4024
*** The result is that libtool may fail to recognize shared libraries
4025
*** as such. This will affect the creation of libtool libraries that
4026
*** depend on shared libraries, but programs linked with such libtool
4027
*** libraries will work regardless of this problem. Nevertheless, you
4028
*** may want to report the problem to your system manager and/or to
4029
*** bug-libtool@gnu.org
4039
MAGIC_CMD="$lt_save_MAGIC_CMD"
4042
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
4043
if test -n "$MAGIC_CMD"; then
4044
AC_MSG_RESULT($MAGIC_CMD)
4048
_LT_DECL([], [MAGIC_CMD], [0],
4049
[Used to examine libraries when file_magic_cmd begins with "file"])dnl
4050
])# _LT_PATH_TOOL_PREFIX
4053
AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
4054
dnl aclocal-1.4 backwards compatibility:
4055
dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
4060
# find a file program which can recognize a shared library
4061
m4_defun([_LT_PATH_MAGIC],
4062
[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
4063
if test -z "$lt_cv_path_MAGIC_CMD"; then
4064
if test -n "$ac_tool_prefix"; then
4065
_LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
4075
# find the pathname to the GNU or non-GNU linker
4076
AC_DEFUN([LT_PATH_LD],
4077
[AC_REQUIRE([AC_PROG_CC])dnl
4078
AC_REQUIRE([AC_CANONICAL_HOST])dnl
4079
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
4080
m4_require([_LT_DECL_SED])dnl
4081
m4_require([_LT_DECL_EGREP])dnl
4082
m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
4084
AC_ARG_WITH([gnu-ld],
4085
[AS_HELP_STRING([--with-gnu-ld],
4086
[assume the C compiler uses GNU ld @<:@default=no@:>@])],
4087
[test "$withval" = no || with_gnu_ld=yes],
4088
[with_gnu_ld=no])dnl
4091
if test "$GCC" = yes; then
4092
# Check if gcc -print-prog-name=ld gives a path.
4093
AC_MSG_CHECKING([for ld used by $CC])
4096
# gcc leaves a trailing carriage return which upsets mingw
4097
ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
4099
ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
4102
# Accept absolute paths.
4103
[[\\/]]* | ?:[[\\/]]*)
4104
re_direlt='/[[^/]][[^/]]*/\.\./'
4105
# Canonicalize the pathname of ld
4106
ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
4107
while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
4108
ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
4110
test -z "$LD" && LD="$ac_prog"
4113
# If it fails, then pretend we aren't using GCC.
4117
# If it is relative, then search for the first ld in PATH.
4121
elif test "$with_gnu_ld" = yes; then
4122
AC_MSG_CHECKING([for GNU ld])
4124
AC_MSG_CHECKING([for non-GNU ld])
4126
AC_CACHE_VAL(lt_cv_path_LD,
4127
[if test -z "$LD"; then
4128
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
4129
for ac_dir in $PATH; do
4131
test -z "$ac_dir" && ac_dir=.
4132
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
4133
lt_cv_path_LD="$ac_dir/$ac_prog"
4134
# Check to see if the program is GNU ld. I'd rather use --version,
4135
# but apparently some variants of GNU ld only accept -v.
4136
# Break only if it was the GNU/non-GNU ld that we prefer.
4137
case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
4138
*GNU* | *'with BFD'*)
4139
test "$with_gnu_ld" != no && break
4142
test "$with_gnu_ld" != yes && break
4149
lt_cv_path_LD="$LD" # Let the user override the test with a path.
4152
if test -n "$LD"; then
4157
test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
4161
_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
4165
AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
4166
AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
4167
dnl aclocal-1.4 backwards compatibility:
4168
dnl AC_DEFUN([AM_PROG_LD], [])
4169
dnl AC_DEFUN([AC_PROG_LD], [])
4174
m4_defun([_LT_PATH_LD_GNU],
4175
[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
4176
[# I'd rather use --version here, but apparently some GNU lds only accept -v.
4177
case `$LD -v 2>&1 </dev/null` in
4178
*GNU* | *'with BFD'*)
4179
lt_cv_prog_gnu_ld=yes
4182
lt_cv_prog_gnu_ld=no
4185
with_gnu_ld=$lt_cv_prog_gnu_ld
4191
# find reload flag for linker
4192
# -- PORTME Some linkers may need a different reload flag.
4193
m4_defun([_LT_CMD_RELOAD],
4194
[AC_CACHE_CHECK([for $LD option to reload object files],
4195
lt_cv_ld_reload_flag,
4196
[lt_cv_ld_reload_flag='-r'])
4197
reload_flag=$lt_cv_ld_reload_flag
4198
case $reload_flag in
4200
*) reload_flag=" $reload_flag" ;;
4202
reload_cmds='$LD$reload_flag -o $output$reload_objs'
4204
cygwin* | mingw* | pw32* | cegcc*)
4205
if test "$GCC" != yes; then
4210
if test "$GCC" = yes; then
4211
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
4213
reload_cmds='$LD$reload_flag -o $output$reload_objs'
4217
_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
4218
_LT_TAGDECL([], [reload_cmds], [2])dnl
4222
# _LT_CHECK_MAGIC_METHOD
4223
# ----------------------
4224
# how to check for library dependencies
4225
# -- PORTME fill in with the dynamic library characteristics
4226
m4_defun([_LT_CHECK_MAGIC_METHOD],
4227
[m4_require([_LT_DECL_EGREP])
4228
m4_require([_LT_DECL_OBJDUMP])
4229
AC_CACHE_CHECK([how to recognize dependent libraries],
4230
lt_cv_deplibs_check_method,
4231
[lt_cv_file_magic_cmd='$MAGIC_CMD'
4232
lt_cv_file_magic_test_file=
4233
lt_cv_deplibs_check_method='unknown'
4234
# Need to set the preceding variable on all platforms that support
4235
# interlibrary dependencies.
4236
# 'none' -- dependencies not supported.
4237
# `unknown' -- same as none, but documents that we really don't know.
4238
# 'pass_all' -- all dependencies passed with no checks.
4239
# 'test_compile' -- check by making test program.
4240
# 'file_magic [[regex]]' -- check by looking for files in library path
4241
# which responds to the $file_magic_cmd with a given extended regex.
4242
# If you have `file' or equivalent on your system and you're not sure
4243
# whether `pass_all' will *always* work, you probably want this one.
4247
lt_cv_deplibs_check_method=pass_all
4251
lt_cv_deplibs_check_method=pass_all
4255
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
4256
lt_cv_file_magic_cmd='/usr/bin/file -L'
4257
lt_cv_file_magic_test_file=/shlib/libc.so
4261
# func_win32_libid is a shell function defined in ltmain.sh
4262
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
4263
lt_cv_file_magic_cmd='func_win32_libid'
4267
# Base MSYS/MinGW do not provide the 'file' command needed by
4268
# func_win32_libid shell function, so use a weaker test based on 'objdump',
4269
# unless we find 'file', for example because we are cross-compiling.
4270
# func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
4271
if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
4272
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
4273
lt_cv_file_magic_cmd='func_win32_libid'
4275
# Keep this pattern in sync with the one in func_win32_libid.
4276
lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
4277
lt_cv_file_magic_cmd='$OBJDUMP -f'
4282
# use the weaker test based on 'objdump'. See mingw*.
4283
lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
4284
lt_cv_file_magic_cmd='$OBJDUMP -f'
4287
darwin* | rhapsody*)
4288
lt_cv_deplibs_check_method=pass_all
4291
freebsd* | dragonfly*)
4292
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
4295
# Not sure whether the presence of OpenBSD here was a mistake.
4296
# Let's accept both of them until this is cleared up.
4297
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
4298
lt_cv_file_magic_cmd=/usr/bin/file
4299
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
4303
lt_cv_deplibs_check_method=pass_all
4308
lt_cv_deplibs_check_method=pass_all
4312
lt_cv_deplibs_check_method=pass_all
4315
hpux10.20* | hpux11*)
4316
lt_cv_file_magic_cmd=/usr/bin/file
4319
lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
4320
lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
4323
[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]']
4324
lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
4327
lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
4328
lt_cv_file_magic_test_file=/usr/lib/libc.sl
4334
# PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
4335
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
4338
irix5* | irix6* | nonstopux*)
4340
*-32|*"-32 ") libmagic=32-bit;;
4341
*-n32|*"-n32 ") libmagic=N32;;
4342
*-64|*"-64 ") libmagic=64-bit;;
4343
*) libmagic=never-match;;
4345
lt_cv_deplibs_check_method=pass_all
4348
# This must be glibc/ELF.
4349
linux* | k*bsd*-gnu | kopensolaris*-gnu)
4350
lt_cv_deplibs_check_method=pass_all
4354
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
4355
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
4357
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
4362
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
4363
lt_cv_file_magic_cmd=/usr/bin/file
4364
lt_cv_file_magic_test_file=/usr/lib/libnls.so
4368
lt_cv_deplibs_check_method=pass_all
4372
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
4373
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
4375
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
4379
osf3* | osf4* | osf5*)
4380
lt_cv_deplibs_check_method=pass_all
4384
lt_cv_deplibs_check_method=pass_all
4388
lt_cv_deplibs_check_method=pass_all
4391
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
4392
lt_cv_deplibs_check_method=pass_all
4396
case $host_vendor in
4398
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]]'
4399
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
4402
lt_cv_deplibs_check_method=pass_all
4405
lt_cv_file_magic_cmd='/bin/file'
4406
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
4409
lt_cv_file_magic_cmd='/bin/file'
4410
lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
4411
lt_cv_file_magic_test_file=/lib/libc.so
4414
lt_cv_deplibs_check_method=pass_all
4417
lt_cv_deplibs_check_method=pass_all
4423
lt_cv_deplibs_check_method=pass_all
4430
if test "$build" = "$host"; then
4433
if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
4436
file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
4442
file_magic_cmd=$lt_cv_file_magic_cmd
4443
deplibs_check_method=$lt_cv_deplibs_check_method
4444
test -z "$deplibs_check_method" && deplibs_check_method=unknown
4446
_LT_DECL([], [deplibs_check_method], [1],
4447
[Method to check whether dependent libraries are shared objects])
4448
_LT_DECL([], [file_magic_cmd], [1],
4449
[Command to use when deplibs_check_method = "file_magic"])
4450
_LT_DECL([], [file_magic_glob], [1],
4451
[How to find potential files when deplibs_check_method = "file_magic"])
4452
_LT_DECL([], [want_nocaseglob], [1],
4453
[Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
4454
])# _LT_CHECK_MAGIC_METHOD
4459
# find the pathname to a BSD- or MS-compatible name lister
4460
AC_DEFUN([LT_PATH_NM],
4461
[AC_REQUIRE([AC_PROG_CC])dnl
4462
AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
4463
[if test -n "$NM"; then
4464
# Let the user override the test.
4467
lt_nm_to_check="${ac_tool_prefix}nm"
4468
if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
4469
lt_nm_to_check="$lt_nm_to_check nm"
4471
for lt_tmp_nm in $lt_nm_to_check; do
4472
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
4473
for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
4475
test -z "$ac_dir" && ac_dir=.
4476
tmp_nm="$ac_dir/$lt_tmp_nm"
4477
if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
4478
# Check to see if the nm accepts a BSD-compat flag.
4479
# Adding the `sed 1q' prevents false positives on HP-UX, which says:
4480
# nm: unknown option "B" ignored
4481
# Tru64's nm complains that /dev/null is an invalid object file
4482
case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
4483
*/dev/null* | *'Invalid file or object type'*)
4484
lt_cv_path_NM="$tmp_nm -B"
4488
case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
4490
lt_cv_path_NM="$tmp_nm -p"
4494
lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
4495
continue # so that we can try to find one that supports BSD flags
4504
: ${lt_cv_path_NM=no}
4506
if test "$lt_cv_path_NM" != "no"; then
4509
# Didn't find any BSD compatible name lister, look for dumpbin.
4510
if test -n "$DUMPBIN"; then :
4511
# Let the user override the test.
4513
AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
4514
case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
4516
DUMPBIN="$DUMPBIN -symbols"
4524
if test "$DUMPBIN" != ":"; then
4528
test -z "$NM" && NM=nm
4530
_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
4532
AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
4533
[lt_cv_nm_interface="BSD nm"
4534
echo "int some_variable = 0;" > conftest.$ac_ext
4535
(eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
4536
(eval "$ac_compile" 2>conftest.err)
4537
cat conftest.err >&AS_MESSAGE_LOG_FD
4538
(eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
4539
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
4540
cat conftest.err >&AS_MESSAGE_LOG_FD
4541
(eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
4542
cat conftest.out >&AS_MESSAGE_LOG_FD
4543
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
4544
lt_cv_nm_interface="MS dumpbin"
4550
AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
4551
AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
4552
dnl aclocal-1.4 backwards compatibility:
4553
dnl AC_DEFUN([AM_PROG_NM], [])
4554
dnl AC_DEFUN([AC_PROG_NM], [])
4556
# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
4557
# --------------------------------
4558
# how to determine the name of the shared library
4559
# associated with a specific link library.
4560
# -- PORTME fill in with the dynamic library characteristics
4561
m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
4562
[m4_require([_LT_DECL_EGREP])
4563
m4_require([_LT_DECL_OBJDUMP])
4564
m4_require([_LT_DECL_DLLTOOL])
4565
AC_CACHE_CHECK([how to associate runtime and link libraries],
4566
lt_cv_sharedlib_from_linklib_cmd,
4567
[lt_cv_sharedlib_from_linklib_cmd='unknown'
4570
cygwin* | mingw* | pw32* | cegcc*)
4571
# two different shell functions defined in ltmain.sh
4572
# decide which to use based on capabilities of $DLLTOOL
4573
case `$DLLTOOL --help 2>&1` in
4574
*--identify-strict*)
4575
lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
4578
lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
4583
# fallback: assume linklib IS sharedlib
4584
lt_cv_sharedlib_from_linklib_cmd="$ECHO"
4588
sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
4589
test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
4591
_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
4592
[Command to associate shared and link libraries])
4593
])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
4596
# _LT_PATH_MANIFEST_TOOL
4597
# ----------------------
4598
# locate the manifest tool
4599
m4_defun([_LT_PATH_MANIFEST_TOOL],
4600
[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
4601
test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
4602
AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
4603
[lt_cv_path_mainfest_tool=no
4604
echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
4605
$MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
4606
cat conftest.err >&AS_MESSAGE_LOG_FD
4607
if $GREP 'Manifest Tool' conftest.out > /dev/null; then
4608
lt_cv_path_mainfest_tool=yes
4611
if test "x$lt_cv_path_mainfest_tool" != xyes; then
4614
_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
4615
])# _LT_PATH_MANIFEST_TOOL
4620
# check for math library
4621
AC_DEFUN([LT_LIB_M],
4622
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
4625
*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
4626
# These system don't have libm, or don't need it
4629
AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
4630
AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
4633
AC_CHECK_LIB(m, cos, LIBM="-lm")
4640
AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
4641
dnl aclocal-1.4 backwards compatibility:
4642
dnl AC_DEFUN([AC_CHECK_LIBM], [])
4645
# _LT_COMPILER_NO_RTTI([TAGNAME])
4646
# -------------------------------
4647
m4_defun([_LT_COMPILER_NO_RTTI],
4648
[m4_require([_LT_TAG_COMPILER])dnl
4650
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
4652
if test "$GCC" = yes; then
4653
case $cc_basename in
4655
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
4657
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
4660
_LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
4661
lt_cv_prog_compiler_rtti_exceptions,
4662
[-fno-rtti -fno-exceptions], [],
4663
[_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
4665
_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
4666
[Compiler flag to turn off builtin functions])
4667
])# _LT_COMPILER_NO_RTTI
4670
# _LT_CMD_GLOBAL_SYMBOLS
4671
# ----------------------
4672
m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
4673
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
4674
AC_REQUIRE([AC_PROG_CC])dnl
4675
AC_REQUIRE([AC_PROG_AWK])dnl
4676
AC_REQUIRE([LT_PATH_NM])dnl
4677
AC_REQUIRE([LT_PATH_LD])dnl
4678
m4_require([_LT_DECL_SED])dnl
4679
m4_require([_LT_DECL_EGREP])dnl
4680
m4_require([_LT_TAG_COMPILER])dnl
4682
# Check for command to grab the raw symbol name followed by C symbol from nm.
4683
AC_MSG_CHECKING([command to parse $NM output from $compiler object])
4684
AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
4686
# These are sane defaults that work on at least a few old systems.
4687
# [They come from Ultrix. What could be older than Ultrix?!! ;)]
4689
# Character class describing NM global symbol codes.
4690
symcode='[[BCDEGRST]]'
4692
# Regexp to match symbols that can be accessed directly from C.
4693
sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
4695
# Define system-specific variables.
4700
cygwin* | mingw* | pw32* | cegcc*)
4701
symcode='[[ABCDGISTW]]'
4704
if test "$host_cpu" = ia64; then
4705
symcode='[[ABCDEGRST]]'
4709
symcode='[[BCDEGRST]]'
4712
symcode='[[BCDEGQRST]]'
4723
sysv5* | sco5v6* | unixware* | OpenUNIX*)
4727
symcode='[[DFNSTU]]'
4731
# If we're using GNU nm, then use its standard symbol codes.
4732
case `$NM -V 2>&1` in
4733
*GNU* | *'with BFD'*)
4734
symcode='[[ABCDGIRSTW]]' ;;
4737
# Transform an extracted symbol line into a proper C declaration.
4738
# Some systems (esp. on ia64) link data and code symbols differently,
4739
# so use this general approach.
4740
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
4742
# Transform an extracted symbol line into symbol name and symbol address
4743
lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
4744
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
4746
# Handle CRLF in mingw tool chain
4750
opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
4754
# Try without a prefix underscore, then with it.
4755
for ac_symprfx in "" "_"; do
4757
# Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
4758
symxfrm="\\1 $ac_symprfx\\2 \\2"
4760
# Write the raw and C identifiers.
4761
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4762
# Fake it for dumpbin and say T for any non-static function
4763
# and D for any global variable.
4764
# Also find C++ and __fastcall symbols from MSVC++,
4765
# which start with @ or ?.
4766
lt_cv_sys_global_symbol_pipe="$AWK ['"\
4767
" {last_section=section; section=\$ 3};"\
4768
" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
4769
" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
4770
" \$ 0!~/External *\|/{next};"\
4771
" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
4772
" {if(hide[section]) next};"\
4773
" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
4774
" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
4775
" s[1]~/^[@?]/{print s[1], s[1]; next};"\
4776
" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
4777
" ' prfx=^$ac_symprfx]"
4779
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
4781
lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
4783
# Check to see that the pipe works correctly.
4787
cat > conftest.$ac_ext <<_LT_EOF
4792
void nm_test_func(void);
4793
void nm_test_func(void){}
4797
int main(){nm_test_var='a';nm_test_func();return(0);}
4800
if AC_TRY_EVAL(ac_compile); then
4801
# Now try to grab the symbols.
4803
if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
4804
# Try sorting and uniquifying the output.
4805
if sort "$nlist" | uniq > "$nlist"T; then
4806
mv -f "$nlist"T "$nlist"
4811
# Make sure that we snagged all the symbols we need.
4812
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4813
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4814
cat <<_LT_EOF > conftest.$ac_ext
4815
/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
4816
#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
4817
/* DATA imports from DLLs on WIN32 con't be const, because runtime
4818
relocations are performed -- see ld's documentation on pseudo-relocs. */
4819
# define LT@&t@_DLSYM_CONST
4820
#elif defined(__osf__)
4821
/* This system does not cope well with relocations in const data. */
4822
# define LT@&t@_DLSYM_CONST
4824
# define LT@&t@_DLSYM_CONST const
4832
# Now generate the symbol file.
4833
eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
4835
cat <<_LT_EOF >> conftest.$ac_ext
4837
/* The mapping between symbol names and symbols. */
4838
LT@&t@_DLSYM_CONST struct {
4842
lt__PROGRAM__LTX_preloaded_symbols[[]] =
4844
{ "@PROGRAM@", (void *) 0 },
4846
$SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
4847
cat <<\_LT_EOF >> conftest.$ac_ext
4851
/* This works around a problem in FreeBSD linker */
4852
#ifdef FREEBSD_WORKAROUND
4853
static const void *lt_preloaded_setup() {
4854
return lt__PROGRAM__LTX_preloaded_symbols;
4862
# Now try linking the two files.
4863
mv conftest.$ac_objext conftstm.$ac_objext
4864
lt_globsym_save_LIBS=$LIBS
4865
lt_globsym_save_CFLAGS=$CFLAGS
4866
LIBS="conftstm.$ac_objext"
4867
CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4868
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
4871
LIBS=$lt_globsym_save_LIBS
4872
CFLAGS=$lt_globsym_save_CFLAGS
4874
echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4877
echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4880
echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4883
echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4884
cat conftest.$ac_ext >&5
4886
rm -rf conftest* conftst*
4888
# Do not use the global_symbol_pipe unless it works.
4889
if test "$pipe_works" = yes; then
4892
lt_cv_sys_global_symbol_pipe=
4896
if test -z "$lt_cv_sys_global_symbol_pipe"; then
4897
lt_cv_sys_global_symbol_to_cdecl=
4899
if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4900
AC_MSG_RESULT(failed)
4905
# Response file support.
4906
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4907
nm_file_list_spec='@'
4908
elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4909
nm_file_list_spec='@'
4912
_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
4913
[Take the output of nm and produce a listing of raw symbols and C names])
4914
_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4915
[Transform the output of nm in a proper C declaration])
4916
_LT_DECL([global_symbol_to_c_name_address],
4917
[lt_cv_sys_global_symbol_to_c_name_address], [1],
4918
[Transform the output of nm in a C name address pair])
4919
_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4920
[lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4921
[Transform the output of nm in a C name address pair when lib prefix is needed])
4922
_LT_DECL([], [nm_file_list_spec], [1],
4923
[Specify filename containing input files for $NM])
4924
]) # _LT_CMD_GLOBAL_SYMBOLS
4927
# _LT_COMPILER_PIC([TAGNAME])
4928
# ---------------------------
4929
m4_defun([_LT_COMPILER_PIC],
4930
[m4_require([_LT_TAG_COMPILER])dnl
4931
_LT_TAGVAR(lt_prog_compiler_wl, $1)=
4932
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4933
_LT_TAGVAR(lt_prog_compiler_static, $1)=
4935
m4_if([$1], [CXX], [
4936
# C++ specific cases for pic, static, wl, etc.
4937
if test "$GXX" = yes; then
4938
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4939
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4943
# All AIX code is PIC.
4944
if test "$host_cpu" = ia64; then
4945
# AIX 5 now supports IA64 processor
4946
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4953
# see comment about AmigaOS4 .so support
4954
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4957
# FIXME: we need at least 68020 code to build shared libraries, but
4958
# adding the `-m68020' flag to GCC prevents building anything better,
4960
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4965
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4966
# PIC is the default for these OSes.
4968
mingw* | cygwin* | os2* | pw32* | cegcc*)
4969
# This hack is so that the source file can tell whether it is being
4970
# built for inclusion in a dll (and should export symbols for example).
4971
# Although the cygwin gcc ignores -fPIC, still need this for old-style
4972
# (--disable-auto-import) libraries
4973
m4_if([$1], [GCJ], [],
4974
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4976
darwin* | rhapsody*)
4977
# PIC is the default on this platform
4978
# Common symbols not allowed in MH_DYLIB files
4979
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4982
# DJGPP does not support shared libraries at all
4983
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4986
# PIC is the default for Haiku.
4987
# The "-static" flag exists, but is broken.
4988
_LT_TAGVAR(lt_prog_compiler_static, $1)=
4991
# Interix 3.x gcc -fpic/-fPIC options generate broken code.
4992
# Instead, we relocate shared libraries at runtime.
4995
if test -d /usr/nec; then
4996
_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
5000
# PIC is the default for 64-bit PA HP-UX, but not for 32-bit
5001
# PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
5002
# sets the default TLS model and affects inlining.
5007
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5012
# QNX uses GNU C++, but need to define -shared option too, otherwise
5014
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
5017
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5023
# All AIX code is PIC.
5024
if test "$host_cpu" = ia64; then
5025
# AIX 5 now supports IA64 processor
5026
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5028
_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
5032
case $cc_basename in
5034
# Green Hills C++ Compiler
5035
# _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"
5039
mingw* | cygwin* | os2* | pw32* | cegcc*)
5040
# This hack is so that the source file can tell whether it is being
5041
# built for inclusion in a dll (and should export symbols for example).
5042
m4_if([$1], [GCJ], [],
5043
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
5046
case $cc_basename in
5048
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5051
# Green Hills C++ Compiler
5052
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5058
freebsd* | dragonfly*)
5059
# FreeBSD uses GNU C++
5061
hpux9* | hpux10* | hpux11*)
5062
case $cc_basename in
5064
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5065
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
5066
if test "$host_cpu" != ia64; then
5067
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5071
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5072
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
5078
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5087
# This is c89, which is MS Visual C++ (no shared libs)
5088
# Anyone wants to do a port?
5090
irix5* | irix6* | nonstopux*)
5091
case $cc_basename in
5093
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5094
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5095
# CC pic flag -KPIC is the default.
5101
linux* | k*bsd*-gnu | kopensolaris*-gnu)
5102
case $cc_basename in
5105
_LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
5106
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5109
# old Intel C++ for x86_64 which still supported -KPIC.
5110
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5111
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5112
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
5115
# Intel C++, used to be incompatible with GCC.
5116
# ICC 10 doesn't accept -KPIC any more.
5117
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5118
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5119
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
5122
# Portland Group C++ compiler
5123
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5124
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
5125
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5129
# Make sure the PIC flag is empty. It appears that all Alpha
5130
# Linux and Compaq Tru64 Unix objects are PIC.
5131
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
5132
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5134
xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
5135
# IBM XL 8.0, 9.0 on PPC and BlueGene
5136
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5137
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
5138
_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
5141
case `$CC -V 2>&1 | sed 5q` in
5144
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5145
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5146
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
5157
case $cc_basename in
5159
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
5168
# QNX uses GNU C++, but need to define -shared option too, otherwise
5170
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
5172
osf3* | osf4* | osf5*)
5173
case $cc_basename in
5175
_LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
5178
# Rational C++ 2.4.1
5179
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5182
# Digital/Compaq C++
5183
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5184
# Make sure the PIC flag is empty. It appears that all Alpha
5185
# Linux and Compaq Tru64 Unix objects are PIC.
5186
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
5187
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5196
case $cc_basename in
5198
# Sun C++ 4.2, 5.x and Centerline C++
5199
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5200
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5201
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
5204
# Green Hills C++ Compiler
5205
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
5212
case $cc_basename in
5215
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5216
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5220
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5226
sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
5227
case $cc_basename in
5229
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5230
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5231
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5236
case $cc_basename in
5238
# NonStop-UX NCC 3.20
5239
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5248
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5254
if test "$GCC" = yes; then
5255
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5256
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
5260
# All AIX code is PIC.
5261
if test "$host_cpu" = ia64; then
5262
# AIX 5 now supports IA64 processor
5263
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5270
# see comment about AmigaOS4 .so support
5271
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5274
# FIXME: we need at least 68020 code to build shared libraries, but
5275
# adding the `-m68020' flag to GCC prevents building anything better,
5277
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
5282
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
5283
# PIC is the default for these OSes.
5286
mingw* | cygwin* | pw32* | os2* | cegcc*)
5287
# This hack is so that the source file can tell whether it is being
5288
# built for inclusion in a dll (and should export symbols for example).
5289
# Although the cygwin gcc ignores -fPIC, still need this for old-style
5290
# (--disable-auto-import) libraries
5291
m4_if([$1], [GCJ], [],
5292
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
5295
darwin* | rhapsody*)
5296
# PIC is the default on this platform
5297
# Common symbols not allowed in MH_DYLIB files
5298
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
5302
# PIC is the default for Haiku.
5303
# The "-static" flag exists, but is broken.
5304
_LT_TAGVAR(lt_prog_compiler_static, $1)=
5308
# PIC is the default for 64-bit PA HP-UX, but not for 32-bit
5309
# PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
5310
# sets the default TLS model and affects inlining.
5316
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5322
# Interix 3.x gcc -fpic/-fPIC options generate broken code.
5323
# Instead, we relocate shared libraries at runtime.
5327
# Just because we use GCC doesn't mean we suddenly get shared libraries
5328
# on systems that don't support them.
5329
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5334
# QNX uses GNU C++, but need to define -shared option too, otherwise
5336
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
5340
if test -d /usr/nec; then
5341
_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
5346
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5350
case $cc_basename in
5351
nvcc*) # Cuda Compiler Driver 2.2
5352
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
5353
if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
5354
_LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
5359
# PORTME Check for flag to pass linker flags through the system compiler.
5362
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5363
if test "$host_cpu" = ia64; then
5364
# AIX 5 now supports IA64 processor
5365
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5367
_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
5371
mingw* | cygwin* | pw32* | os2* | cegcc*)
5372
# This hack is so that the source file can tell whether it is being
5373
# built for inclusion in a dll (and should export symbols for example).
5374
m4_if([$1], [GCJ], [],
5375
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
5378
hpux9* | hpux10* | hpux11*)
5379
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5380
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
5387
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5390
# Is there a better lt_prog_compiler_static that works with the bundled CC?
5391
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
5394
irix5* | irix6* | nonstopux*)
5395
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5396
# PIC (with -KPIC) is the default.
5397
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5400
linux* | k*bsd*-gnu | kopensolaris*-gnu)
5401
case $cc_basename in
5402
# old Intel for x86_64 which still supported -KPIC.
5404
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5405
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5406
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
5408
# icc used to be incompatible with GCC.
5409
# ICC 10 doesn't accept -KPIC any more.
5411
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5412
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5413
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
5415
# Lahey Fortran 8.1.
5417
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5418
_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
5419
_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
5422
# NAG Fortran compiler
5423
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
5424
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
5425
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5427
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
5428
# Portland Group compilers (*not* the Pentium gcc compiler,
5429
# which looks to be a dead project)
5430
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5431
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
5432
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5435
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5436
# All Alpha code is PIC.
5437
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5439
xl* | bgxl* | bgf* | mpixl*)
5440
# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
5441
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5442
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
5443
_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
5446
case `$CC -V 2>&1 | sed 5q` in
5447
*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
5448
# Sun Fortran 8.3 passes all unrecognized flags to the linker
5449
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5450
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5451
_LT_TAGVAR(lt_prog_compiler_wl, $1)=''
5453
*Sun\ F* | *Sun*Fortran*)
5454
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5455
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5456
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
5460
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5461
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5462
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5464
*Intel*\ [[CF]]*Compiler*)
5465
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5466
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5467
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
5470
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5471
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
5472
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5480
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5481
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5485
# QNX uses GNU C++, but need to define -shared option too, otherwise
5487
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
5490
osf3* | osf4* | osf5*)
5491
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5492
# All OSF/1 code is PIC.
5493
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5497
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5501
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5502
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5503
case $cc_basename in
5504
f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
5505
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
5507
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
5512
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
5513
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
5514
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5517
sysv4 | sysv4.2uw2* | sysv4.3*)
5518
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5519
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5520
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5524
if test -d /usr/nec ;then
5525
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
5526
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5530
sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
5531
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5532
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5533
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5537
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5538
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5542
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5543
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5547
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5553
# For platforms which do not support PIC, -DPIC is meaningless:
5555
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
5558
_LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
5562
AC_CACHE_CHECK([for $compiler option to produce PIC],
5563
[_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
5564
[_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
5565
_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
5568
# Check to make sure the PIC flag actually works.
5570
if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
5571
_LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
5572
[_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
5573
[$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
5574
[case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
5576
*) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
5578
[_LT_TAGVAR(lt_prog_compiler_pic, $1)=
5579
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
5581
_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
5582
[Additional compiler flags for building library objects])
5584
_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
5585
[How to pass a linker flag through the compiler])
5587
# Check to make sure the static flag actually works.
5589
wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
5590
_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
5591
_LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
5592
$lt_tmp_static_flag,
5594
[_LT_TAGVAR(lt_prog_compiler_static, $1)=])
5595
_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
5596
[Compiler flag to prevent dynamic linking])
5597
])# _LT_COMPILER_PIC
5600
# _LT_LINKER_SHLIBS([TAGNAME])
5601
# ----------------------------
5602
# See if the linker supports building shared libraries.
5603
m4_defun([_LT_LINKER_SHLIBS],
5604
[AC_REQUIRE([LT_PATH_LD])dnl
5605
AC_REQUIRE([LT_PATH_NM])dnl
5606
m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5607
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5608
m4_require([_LT_DECL_EGREP])dnl
5609
m4_require([_LT_DECL_SED])dnl
5610
m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
5611
m4_require([_LT_TAG_COMPILER])dnl
5612
AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5613
m4_if([$1], [CXX], [
5614
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5615
_LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5618
# If we're using GNU nm, then we don't want the "-C" option.
5619
# -C means demangle to AIX nm, but means don't demangle with GNU nm
5620
# Also, AIX nm treats weak defined symbols like other global defined
5621
# symbols, whereas GNU nm marks them as "W".
5622
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5623
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
5625
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
5629
_LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
5631
cygwin* | mingw* | cegcc*)
5632
case $cc_basename in
5634
_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5637
_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'
5638
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5643
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5648
_LT_TAGVAR(allow_undefined_flag, $1)=
5649
_LT_TAGVAR(always_export_symbols, $1)=no
5650
_LT_TAGVAR(archive_cmds, $1)=
5651
_LT_TAGVAR(archive_expsym_cmds, $1)=
5652
_LT_TAGVAR(compiler_needs_object, $1)=no
5653
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5654
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5655
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5656
_LT_TAGVAR(hardcode_automatic, $1)=no
5657
_LT_TAGVAR(hardcode_direct, $1)=no
5658
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5659
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5660
_LT_TAGVAR(hardcode_libdir_separator, $1)=
5661
_LT_TAGVAR(hardcode_minus_L, $1)=no
5662
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5663
_LT_TAGVAR(inherit_rpath, $1)=no
5664
_LT_TAGVAR(link_all_deplibs, $1)=unknown
5665
_LT_TAGVAR(module_cmds, $1)=
5666
_LT_TAGVAR(module_expsym_cmds, $1)=
5667
_LT_TAGVAR(old_archive_from_new_cmds, $1)=
5668
_LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
5669
_LT_TAGVAR(thread_safe_flag_spec, $1)=
5670
_LT_TAGVAR(whole_archive_flag_spec, $1)=
5671
# include_expsyms should be a list of space-separated symbols to be *always*
5672
# included in the symbol list
5673
_LT_TAGVAR(include_expsyms, $1)=
5674
# exclude_expsyms can be an extended regexp of symbols to exclude
5675
# it will be wrapped by ` (' and `)$', so one must not match beginning or
5676
# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
5677
# as well as any symbol that contains `d'.
5678
_LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5679
# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
5680
# platforms (ab)use it in PIC code, but their linkers get confused if
5681
# the symbol is explicitly referenced. Since portable code cannot
5682
# rely on this symbol name, it's probably fine to never include it in
5683
# preloaded symbol tables.
5684
# Exclude shared library initialization/finalization symbols.
5685
dnl Note also adjust exclude_expsyms for C++ above.
5686
extract_expsyms_cmds=
5689
cygwin* | mingw* | pw32* | cegcc*)
5690
# FIXME: the MSVC++ port hasn't been tested in a loooong time
5691
# When not using gcc, we currently assume that we are using
5692
# Microsoft Visual C++.
5693
if test "$GCC" != yes; then
5698
# we just hope/assume this is gcc and not c89 (= MSVC++)
5706
_LT_TAGVAR(ld_shlibs, $1)=yes
5708
# On some targets, GNU ld is compatible enough with the native linker
5709
# that we're better off using the native interface for both.
5710
lt_use_gnu_ld_interface=no
5711
if test "$with_gnu_ld" = yes; then
5714
# The AIX port of GNU ld has always aspired to compatibility
5715
# with the native linker. However, as the warning in the GNU ld
5716
# block says, versions before 2.19.5* couldn't really create working
5717
# shared libraries, regardless of the interface used.
5718
case `$LD -v 2>&1` in
5719
*\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5720
*\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5721
*\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5723
lt_use_gnu_ld_interface=yes
5728
lt_use_gnu_ld_interface=yes
5733
if test "$lt_use_gnu_ld_interface" = yes; then
5734
# If archive_cmds runs LD, not CC, wlarc should be empty
5737
# Set some defaults for GNU ld with shared library support. These
5738
# are reset later if shared libraries are not supported. Putting them
5739
# here allows them to be overridden if necessary.
5740
runpath_var=LD_RUN_PATH
5741
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5742
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5743
# ancient GNU ld didn't support --whole-archive et. al.
5744
if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
5745
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5747
_LT_TAGVAR(whole_archive_flag_spec, $1)=
5749
supports_anon_versioning=no
5750
case `$LD -v 2>&1` in
5751
*GNU\ gold*) supports_anon_versioning=yes ;;
5752
*\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5753
*\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5754
*\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5755
*\ 2.11.*) ;; # other 2.11 versions
5756
*) supports_anon_versioning=yes ;;
5759
# See if GNU ld supports shared libraries.
5762
# On AIX/PPC, the GNU linker is very broken
5763
if test "$host_cpu" != ia64; then
5764
_LT_TAGVAR(ld_shlibs, $1)=no
5767
*** Warning: the GNU linker, at least up to release 2.19, is reported
5768
*** to be unable to reliably create shared libraries on AIX.
5769
*** Therefore, libtool is disabling shared libraries support. If you
5770
*** really care for shared libraries, you may want to install binutils
5771
*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5772
*** You will then need to restart the configuration process.
5781
# see comment about AmigaOS4 .so support
5782
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5783
_LT_TAGVAR(archive_expsym_cmds, $1)=''
5786
_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)'
5787
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5788
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5794
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5795
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5796
# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5797
# support --undefined. This deserves some investigation. FIXME
5798
_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5800
_LT_TAGVAR(ld_shlibs, $1)=no
5804
cygwin* | mingw* | pw32* | cegcc*)
5805
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5806
# as there is no search path for DLLs.
5807
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5808
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
5809
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5810
_LT_TAGVAR(always_export_symbols, $1)=no
5811
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5812
_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'
5813
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5815
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5816
_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'
5817
# If the export-symbols file already is a .def file (1st line
5818
# is EXPORTS), use it as is; otherwise, prepend...
5819
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5820
cp $export_symbols $output_objdir/$soname.def;
5822
echo EXPORTS > $output_objdir/$soname.def;
5823
cat $export_symbols >> $output_objdir/$soname.def;
5825
$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5827
_LT_TAGVAR(ld_shlibs, $1)=no
5832
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5833
_LT_TAGVAR(link_all_deplibs, $1)=yes
5837
_LT_TAGVAR(hardcode_direct, $1)=no
5838
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5839
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5840
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5841
# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5842
# Instead, shared libraries are loaded at an image base (0x10000000 by
5843
# default) and relocated if they conflict, which is a slow very memory
5844
# consuming and fragmenting process. To avoid this, we pick a random,
5845
# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5846
# time. Moving up from 0x10000000 also allows more sbrk(2) space.
5847
_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'
5848
_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'
5851
gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5853
if test "$host_os" = linux-dietlibc; then
5854
case $cc_basename in
5855
diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
5858
if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
5859
&& test "$tmp_diet" = no
5861
tmp_addflag=' $pic_flag'
5862
tmp_sharedflag='-shared'
5863
case $cc_basename,$host_cpu in
5864
pgcc*) # Portland Group C compiler
5865
_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'
5866
tmp_addflag=' $pic_flag'
5868
pgf77* | pgf90* | pgf95* | pgfortran*)
5869
# Portland Group f77 and f90 compilers
5870
_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'
5871
tmp_addflag=' $pic_flag -Mnomain' ;;
5872
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
5873
tmp_addflag=' -i_dynamic' ;;
5874
efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
5875
tmp_addflag=' -i_dynamic -nofor_main' ;;
5876
ifc* | ifort*) # Intel Fortran compiler
5877
tmp_addflag=' -nofor_main' ;;
5878
lf95*) # Lahey Fortran 8.1
5879
_LT_TAGVAR(whole_archive_flag_spec, $1)=
5880
tmp_sharedflag='--shared' ;;
5881
xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5882
tmp_sharedflag='-qmkshrobj'
5884
nvcc*) # Cuda Compiler Driver 2.2
5885
_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'
5886
_LT_TAGVAR(compiler_needs_object, $1)=yes
5889
case `$CC -V 2>&1 | sed 5q` in
5890
*Sun\ C*) # Sun C 5.9
5891
_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'
5892
_LT_TAGVAR(compiler_needs_object, $1)=yes
5893
tmp_sharedflag='-G' ;;
5894
*Sun\ F*) # Sun Fortran 8.3
5895
tmp_sharedflag='-G' ;;
5897
_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5899
if test "x$supports_anon_versioning" = xyes; then
5900
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5901
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5902
echo "local: *; };" >> $output_objdir/$libname.ver~
5903
$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
5906
case $cc_basename in
5907
xlf* | bgf* | bgxlf* | mpixlf*)
5908
# IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5909
_LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
5910
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5911
_LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5912
if test "x$supports_anon_versioning" = xyes; then
5913
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5914
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5915
echo "local: *; };" >> $output_objdir/$libname.ver~
5916
$LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5921
_LT_TAGVAR(ld_shlibs, $1)=no
5926
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5927
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5930
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5931
_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'
5936
if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5937
_LT_TAGVAR(ld_shlibs, $1)=no
5940
*** Warning: The releases 2.8.* of the GNU linker cannot reliably
5941
*** create shared libraries on Solaris systems. Therefore, libtool
5942
*** is disabling shared libraries support. We urge you to upgrade GNU
5943
*** binutils to release 2.9.1 or newer. Another option is to modify
5944
*** your PATH or compiler configuration so that the native linker is
5945
*** used, and then restart.
5948
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5949
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5950
_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'
5952
_LT_TAGVAR(ld_shlibs, $1)=no
5956
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5957
case `$LD -v 2>&1` in
5958
*\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5959
_LT_TAGVAR(ld_shlibs, $1)=no
5962
*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
5963
*** reliably create shared libraries on SCO systems. Therefore, libtool
5964
*** is disabling shared libraries support. We urge you to upgrade GNU
5965
*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
5966
*** your PATH or compiler configuration so that the native linker is
5967
*** used, and then restart.
5972
# For security reasons, it is highly recommended that you always
5973
# use absolute paths for naming shared libraries, and exclude the
5974
# DT_RUNPATH tag from executables and libraries. But doing so
5975
# requires that you compile everything twice, which is a pain.
5976
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5977
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5978
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5979
_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'
5981
_LT_TAGVAR(ld_shlibs, $1)=no
5988
_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5990
_LT_TAGVAR(hardcode_direct, $1)=yes
5991
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5995
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5996
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5997
_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'
5999
_LT_TAGVAR(ld_shlibs, $1)=no
6004
if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
6006
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6007
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6008
_LT_TAGVAR(whole_archive_flag_spec, $1)=
6011
# PORTME fill in a description of your system's linker (not GNU ld)
6014
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6015
_LT_TAGVAR(always_export_symbols, $1)=yes
6016
_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'
6017
# Note: this linker hardcodes the directories in LIBPATH if there
6018
# are no directories specified by -L.
6019
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6020
if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
6021
# Neither direct hardcoding nor static linking is supported with a
6023
_LT_TAGVAR(hardcode_direct, $1)=unsupported
6028
if test "$host_cpu" = ia64; then
6029
# On IA64, the linker does run time linking by default, so we don't
6030
# have to do anything special.
6031
aix_use_runtimelinking=no
6032
exp_sym_flag='-Bexport'
6035
# If we're using GNU nm, then we don't want the "-C" option.
6036
# -C means demangle to AIX nm, but means don't demangle with GNU nm
6037
# Also, AIX nm treats weak defined symbols like other global
6038
# defined symbols, whereas GNU nm marks them as "W".
6039
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
6040
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
6042
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
6044
aix_use_runtimelinking=no
6046
# Test if we are trying to use run time linking or normal
6047
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
6048
# need to do runtime linking.
6049
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6050
for ld_flag in $LDFLAGS; do
6051
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
6052
aix_use_runtimelinking=yes
6059
exp_sym_flag='-bexport'
6060
no_entry_flag='-bnoentry'
6063
# When large executables or shared objects are built, AIX ld can
6064
# have problems creating the table of contents. If linking a library
6065
# or program results in "error TOC overflow" add -mminimal-toc to
6066
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6067
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6069
_LT_TAGVAR(archive_cmds, $1)=''
6070
_LT_TAGVAR(hardcode_direct, $1)=yes
6071
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6072
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6073
_LT_TAGVAR(link_all_deplibs, $1)=yes
6074
_LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
6076
if test "$GCC" = yes; then
6077
case $host_os in aix4.[[012]]|aix4.[[012]].*)
6078
# We only want to do this on AIX 4.2 and lower, the check
6079
# below for broken collect2 doesn't work under 4.3+
6080
collect2name=`${CC} -print-prog-name=collect2`
6081
if test -f "$collect2name" &&
6082
strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6084
# We have reworked collect2
6087
# We have old collect2
6088
_LT_TAGVAR(hardcode_direct, $1)=unsupported
6089
# It fails to find uninstalled libraries when the uninstalled
6090
# path is not listed in the libpath. Setting hardcode_minus_L
6091
# to unsupported forces relinking
6092
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6093
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6094
_LT_TAGVAR(hardcode_libdir_separator, $1)=
6098
shared_flag='-shared'
6099
if test "$aix_use_runtimelinking" = yes; then
6100
shared_flag="$shared_flag "'${wl}-G'
6104
if test "$host_cpu" = ia64; then
6105
# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6106
# chokes on -Wl,-G. The following line is correct:
6109
if test "$aix_use_runtimelinking" = yes; then
6110
shared_flag='${wl}-G'
6112
shared_flag='${wl}-bM:SRE'
6117
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
6118
# It seems that -bexpall does not export symbols beginning with
6119
# underscore (_), so it is better to generate a list of symbols to export.
6120
_LT_TAGVAR(always_export_symbols, $1)=yes
6121
if test "$aix_use_runtimelinking" = yes; then
6122
# Warning - without using the other runtime loading flags (-brtl),
6123
# -berok will link without error, but may produce a broken library.
6124
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
6125
# Determine the default libpath from the value encoded in an
6127
_LT_SYS_MODULE_PATH_AIX([$1])
6128
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6129
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
6131
if test "$host_cpu" = ia64; then
6132
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6133
_LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6134
_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"
6136
# Determine the default libpath from the value encoded in an
6138
_LT_SYS_MODULE_PATH_AIX([$1])
6139
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6140
# Warning - without using the other run time loading flags,
6141
# -berok will link without error, but may produce a broken library.
6142
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6143
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
6144
if test "$with_gnu_ld" = yes; then
6145
# We only use this code for GNU lds that support --whole-archive.
6146
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6148
# Exported symbols can be pulled into shared objects from archives
6149
_LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6151
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6152
# This is similar to how AIX traditionally builds its shared libraries.
6153
_LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
6161
# see comment about AmigaOS4 .so support
6162
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6163
_LT_TAGVAR(archive_expsym_cmds, $1)=''
6166
_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)'
6167
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6168
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6174
_LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
6177
cygwin* | mingw* | pw32* | cegcc*)
6178
# When not using gcc, we currently assume that we are using
6179
# Microsoft Visual C++.
6180
# hardcode_libdir_flag_spec is actually meaningless, as there is
6181
# no search path for DLLs.
6182
case $cc_basename in
6185
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6186
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6187
_LT_TAGVAR(always_export_symbols, $1)=yes
6188
_LT_TAGVAR(file_list_spec, $1)='@'
6189
# Tell ltmain to make .lib files, not .a files.
6191
# Tell ltmain to make .dll files, not .so files.
6193
# FIXME: Setting linknames here is a bad hack.
6194
_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6195
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6196
sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6198
sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6200
$CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6202
# The linker will not automatically build a static lib if we build a DLL.
6203
# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6204
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6205
_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
6206
_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'
6208
_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6209
_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6210
lt_tool_outputfile="@TOOL_OUTPUT@"~
6211
case $lt_outputfile in
6214
lt_outputfile="$lt_outputfile.exe"
6215
lt_tool_outputfile="$lt_tool_outputfile.exe"
6218
if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6219
$MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6220
$RM "$lt_outputfile.manifest";
6224
# Assume MSVC wrapper
6225
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6226
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6227
# Tell ltmain to make .lib files, not .a files.
6229
# Tell ltmain to make .dll files, not .so files.
6231
# FIXME: Setting linknames here is a bad hack.
6232
_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
6233
# The linker will automatically build a .lib file if we build a DLL.
6234
_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6235
# FIXME: Should let the user specify the lib program.
6236
_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
6237
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6242
darwin* | rhapsody*)
6243
_LT_DARWIN_LINKER_FEATURES($1)
6247
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6248
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6249
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6252
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
6253
# support. Future versions do this automatically, but an explicit c++rt0.o
6254
# does not break anything, and helps significantly (at the cost of a little
6257
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
6258
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6259
_LT_TAGVAR(hardcode_direct, $1)=yes
6260
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6263
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
6265
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
6266
_LT_TAGVAR(hardcode_direct, $1)=yes
6267
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6268
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6271
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
6272
freebsd* | dragonfly*)
6273
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
6274
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6275
_LT_TAGVAR(hardcode_direct, $1)=yes
6276
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6280
if test "$GCC" = yes; then
6281
_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 $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6283
_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6285
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6286
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6287
_LT_TAGVAR(hardcode_direct, $1)=yes
6289
# hardcode_minus_L: Not really in the search PATH,
6290
# but as the default location of the library.
6291
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6292
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6296
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
6297
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
6299
_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
6301
if test "$with_gnu_ld" = no; then
6302
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6303
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6304
_LT_TAGVAR(hardcode_direct, $1)=yes
6305
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6306
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6307
# hardcode_minus_L: Not really in the search PATH,
6308
# but as the default location of the library.
6309
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6314
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
6317
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6320
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
6323
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
6329
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6332
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
6336
# Older versions of the 11.00 compiler do not understand -b yet
6337
# (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
6338
_LT_LINKER_OPTION([if $CC understands -b],
6339
_LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
6340
[_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
6341
[_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
6342
[_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
6346
if test "$with_gnu_ld" = no; then
6347
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6348
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6352
_LT_TAGVAR(hardcode_direct, $1)=no
6353
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6356
_LT_TAGVAR(hardcode_direct, $1)=yes
6357
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6358
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6360
# hardcode_minus_L: Not really in the search PATH,
6361
# but as the default location of the library.
6362
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6368
irix5* | irix6* | nonstopux*)
6369
if test "$GCC" = yes; then
6370
_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'
6371
# Try to use the -exported_symbol ld option, if it does not
6372
# work, assume that -exports_file does not work either and
6373
# implicitly export all symbols.
6374
# This should be the same for all languages, so no per-tag cache variable.
6375
AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
6376
[lt_cv_irix_exported_symbol],
6377
[save_LDFLAGS="$LDFLAGS"
6378
LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
6381
[AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
6382
[C++], [[int foo (void) { return 0; }]],
6389
[lt_cv_irix_exported_symbol=yes],
6390
[lt_cv_irix_exported_symbol=no])
6391
LDFLAGS="$save_LDFLAGS"])
6392
if test "$lt_cv_irix_exported_symbol" = yes; then
6393
_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'
6396
_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'
6397
_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'
6399
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
6400
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6401
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6402
_LT_TAGVAR(inherit_rpath, $1)=yes
6403
_LT_TAGVAR(link_all_deplibs, $1)=yes
6407
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6408
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
6410
_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
6412
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6413
_LT_TAGVAR(hardcode_direct, $1)=yes
6414
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6418
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6419
_LT_TAGVAR(hardcode_direct, $1)=yes
6420
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6421
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6422
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6429
if test -f /usr/libexec/ld.so; then
6430
_LT_TAGVAR(hardcode_direct, $1)=yes
6431
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6432
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6433
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6434
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
6435
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
6436
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6437
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6440
openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
6441
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
6442
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6445
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
6446
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6451
_LT_TAGVAR(ld_shlibs, $1)=no
6456
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6457
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6458
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6459
_LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
6460
_LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
6464
if test "$GCC" = yes; then
6465
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6466
_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'
6468
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6469
_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'
6471
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
6472
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6473
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6476
osf4* | osf5*) # as osf3* with the addition of -msym flag
6477
if test "$GCC" = yes; then
6478
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6479
_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'
6480
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6482
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6483
_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'
6484
_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~
6485
$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'
6487
# Both c and cxx compiler support -rpath directly
6488
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6490
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
6491
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6495
_LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
6496
if test "$GCC" = yes; then
6498
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6499
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6500
$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'
6502
case `$CC -V 2>&1` in
6505
_LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
6506
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6507
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
6511
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
6512
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6513
$CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
6517
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6518
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6520
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6522
# The compiler driver will combine and reorder linker options,
6523
# but understands `-z linker_flag'. GCC discards it without `$wl',
6524
# but is careful enough not to reorder.
6525
# Supported since Solaris 2.6 (maybe 2.5.1?)
6526
if test "$GCC" = yes; then
6527
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6529
_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6533
_LT_TAGVAR(link_all_deplibs, $1)=yes
6537
if test "x$host_vendor" = xsequent; then
6538
# Use $CC to link under sequent, because it throws in some extra .o
6539
# files that make .init and .fini sections work.
6540
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
6542
_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
6544
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6545
_LT_TAGVAR(hardcode_direct, $1)=yes
6546
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6547
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6551
case $host_vendor in
6553
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6554
_LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
6557
## LD is ld it makes a PLAMLIB
6558
## CC just makes a GrossModule.
6559
_LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
6560
_LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
6561
_LT_TAGVAR(hardcode_direct, $1)=no
6564
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6565
_LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
6568
runpath_var='LD_RUN_PATH'
6569
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6573
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6574
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6575
_LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6579
if test -d /usr/nec; then
6580
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6581
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6582
runpath_var=LD_RUN_PATH
6583
hardcode_runpath_var=yes
6584
_LT_TAGVAR(ld_shlibs, $1)=yes
6588
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6589
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6590
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6591
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6592
runpath_var='LD_RUN_PATH'
6594
if test "$GCC" = yes; then
6595
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6596
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6598
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6599
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6603
sysv5* | sco3.2v5* | sco5v6*)
6604
# Note: We can NOT use -z defs as we might desire, because we do not
6605
# link with -lc, and that would cause any symbols used from libc to
6606
# always be unresolved, which means just about no library would
6607
# ever link correctly. If we're not using GNU ld we use -z text
6608
# though, which does catch some bad symbols but isn't as heavy-handed
6610
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6611
_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6612
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6613
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6614
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6615
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6616
_LT_TAGVAR(link_all_deplibs, $1)=yes
6617
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6618
runpath_var='LD_RUN_PATH'
6620
if test "$GCC" = yes; then
6621
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6622
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6624
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6625
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6630
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6631
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6632
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6636
_LT_TAGVAR(ld_shlibs, $1)=no
6640
if test x$host_vendor = xsni; then
6642
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6643
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
6649
AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6650
test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6652
_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
6654
_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6655
_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6656
_LT_DECL([], [extract_expsyms_cmds], [2],
6657
[The commands to extract the exported symbol list from a shared archive])
6660
# Do we need to explicitly link libc?
6662
case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6664
# Assume -lc should be added
6665
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6667
if test "$enable_shared" = yes && test "$GCC" = yes; then
6668
case $_LT_TAGVAR(archive_cmds, $1) in
6670
# FIXME: we may have to deal with multi-command sequences.
6673
# Test whether the compiler implicitly links with -lc since on some
6674
# systems, -lgcc has to come before -lc. If gcc already passes -lc
6675
# to ld, don't add -lc before -lgcc.
6676
AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6677
[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6679
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6681
if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6684
libobjs=conftest.$ac_objext
6686
wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6687
pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6693
lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6694
_LT_TAGVAR(allow_undefined_flag, $1)=
6695
if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6697
lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6699
lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6701
_LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6703
cat conftest.err 1>&5
6707
_LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
6714
_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6715
[Whether or not to add -lc for building shared libraries])
6716
_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6717
[enable_shared_with_static_runtimes], [0],
6718
[Whether or not to disallow shared libs when runtime libs are static])
6719
_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6720
[Compiler flag to allow reflexive dlopens])
6721
_LT_TAGDECL([], [whole_archive_flag_spec], [1],
6722
[Compiler flag to generate shared objects directly from archives])
6723
_LT_TAGDECL([], [compiler_needs_object], [1],
6724
[Whether the compiler copes with passing no objects directly])
6725
_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6726
[Create an old-style archive from a shared archive])
6727
_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6728
[Create a temporary old-style archive to link instead of a shared archive])
6729
_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6730
_LT_TAGDECL([], [archive_expsym_cmds], [2])
6731
_LT_TAGDECL([], [module_cmds], [2],
6732
[Commands used to build a loadable module if different from building
6734
_LT_TAGDECL([], [module_expsym_cmds], [2])
6735
_LT_TAGDECL([], [with_gnu_ld], [1],
6736
[Whether we are building with GNU ld or not])
6737
_LT_TAGDECL([], [allow_undefined_flag], [1],
6738
[Flag that allows shared libraries with undefined symbols to be built])
6739
_LT_TAGDECL([], [no_undefined_flag], [1],
6740
[Flag that enforces no undefined symbols])
6741
_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6742
[Flag to hardcode $libdir into a binary during linking.
6743
This must work even if $libdir does not exist])
6744
_LT_TAGDECL([], [hardcode_libdir_separator], [1],
6745
[Whether we need a single "-rpath" flag with a separated argument])
6746
_LT_TAGDECL([], [hardcode_direct], [0],
6747
[Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
6748
DIR into the resulting binary])
6749
_LT_TAGDECL([], [hardcode_direct_absolute], [0],
6750
[Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
6751
DIR into the resulting binary and the resulting library dependency is
6752
"absolute", i.e impossible to change by setting ${shlibpath_var} if the
6753
library is relocated])
6754
_LT_TAGDECL([], [hardcode_minus_L], [0],
6755
[Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6756
into the resulting binary])
6757
_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6758
[Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6759
into the resulting binary])
6760
_LT_TAGDECL([], [hardcode_automatic], [0],
6761
[Set to "yes" if building a shared library automatically hardcodes DIR
6762
into the library and all subsequent libraries and executables linked
6764
_LT_TAGDECL([], [inherit_rpath], [0],
6765
[Set to yes if linker adds runtime paths of dependent libraries
6766
to runtime path list])
6767
_LT_TAGDECL([], [link_all_deplibs], [0],
6768
[Whether libtool must link a program against all its dependency libraries])
6769
_LT_TAGDECL([], [always_export_symbols], [0],
6770
[Set to "yes" if exported symbols are required])
6771
_LT_TAGDECL([], [export_symbols_cmds], [2],
6772
[The commands to list exported symbols])
6773
_LT_TAGDECL([], [exclude_expsyms], [1],
6774
[Symbols that should not be listed in the preloaded symbols])
6775
_LT_TAGDECL([], [include_expsyms], [1],
6776
[Symbols that must always be exported])
6777
_LT_TAGDECL([], [prelink_cmds], [2],
6778
[Commands necessary for linking programs (against libraries) with templates])
6779
_LT_TAGDECL([], [postlink_cmds], [2],
6780
[Commands necessary for finishing linking programs])
6781
_LT_TAGDECL([], [file_list_spec], [1],
6782
[Specify filename containing input files])
6783
dnl FIXME: Not yet implemented
6784
dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6785
dnl [Compiler flag to generate thread safe objects])
6786
])# _LT_LINKER_SHLIBS
6789
# _LT_LANG_C_CONFIG([TAG])
6790
# ------------------------
6791
# Ensure that the configuration variables for a C compiler are suitably
6792
# defined. These variables are subsequently used by _LT_CONFIG to write
6793
# the compiler configuration to `libtool'.
6794
m4_defun([_LT_LANG_C_CONFIG],
6795
[m4_require([_LT_DECL_EGREP])dnl
6799
# Source file extension for C test sources.
6802
# Object file extension for compiled C test sources.
6804
_LT_TAGVAR(objext, $1)=$objext
6806
# Code to be used in simple compile tests
6807
lt_simple_compile_test_code="int some_variable = 0;"
6809
# Code to be used in simple link tests
6810
lt_simple_link_test_code='int main(){return(0);}'
6813
# Save the default compiler, since it gets overwritten when the other
6814
# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6815
compiler_DEFAULT=$CC
6817
# save warnings/boilerplate of simple test code
6818
_LT_COMPILER_BOILERPLATE
6819
_LT_LINKER_BOILERPLATE
6821
if test -n "$compiler"; then
6822
_LT_COMPILER_NO_RTTI($1)
6823
_LT_COMPILER_PIC($1)
6824
_LT_COMPILER_C_O($1)
6825
_LT_COMPILER_FILE_LOCKS($1)
6826
_LT_LINKER_SHLIBS($1)
6827
_LT_SYS_DYNAMIC_LINKER($1)
6828
_LT_LINKER_HARDCODE_LIBPATH($1)
6832
# Report which library types will actually be built
6833
AC_MSG_CHECKING([if libtool supports shared libraries])
6834
AC_MSG_RESULT([$can_build_shared])
6836
AC_MSG_CHECKING([whether to build shared libraries])
6837
test "$can_build_shared" = "no" && enable_shared=no
6839
# On AIX, shared libraries and static libraries use the same namespace, and
6840
# are all built from PIC.
6843
test "$enable_shared" = yes && enable_static=no
6844
if test -n "$RANLIB"; then
6845
archive_cmds="$archive_cmds~\$RANLIB \$lib"
6846
postinstall_cmds='$RANLIB $lib'
6851
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
6852
test "$enable_shared" = yes && enable_static=no
6856
AC_MSG_RESULT([$enable_shared])
6858
AC_MSG_CHECKING([whether to build static libraries])
6859
# Make sure either enable_shared or enable_static is yes.
6860
test "$enable_shared" = yes || enable_static=yes
6861
AC_MSG_RESULT([$enable_static])
6867
])# _LT_LANG_C_CONFIG
6870
# _LT_LANG_CXX_CONFIG([TAG])
6871
# --------------------------
6872
# Ensure that the configuration variables for a C++ compiler are suitably
6873
# defined. These variables are subsequently used by _LT_CONFIG to write
6874
# the compiler configuration to `libtool'.
6875
m4_defun([_LT_LANG_CXX_CONFIG],
6876
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6877
m4_require([_LT_DECL_EGREP])dnl
6878
m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6879
if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
6880
( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
6881
(test "X$CXX" != "Xg++"))) ; then
6884
_lt_caught_CXX_error=yes
6888
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6889
_LT_TAGVAR(allow_undefined_flag, $1)=
6890
_LT_TAGVAR(always_export_symbols, $1)=no
6891
_LT_TAGVAR(archive_expsym_cmds, $1)=
6892
_LT_TAGVAR(compiler_needs_object, $1)=no
6893
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6894
_LT_TAGVAR(hardcode_direct, $1)=no
6895
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
6896
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6897
_LT_TAGVAR(hardcode_libdir_separator, $1)=
6898
_LT_TAGVAR(hardcode_minus_L, $1)=no
6899
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6900
_LT_TAGVAR(hardcode_automatic, $1)=no
6901
_LT_TAGVAR(inherit_rpath, $1)=no
6902
_LT_TAGVAR(module_cmds, $1)=
6903
_LT_TAGVAR(module_expsym_cmds, $1)=
6904
_LT_TAGVAR(link_all_deplibs, $1)=unknown
6905
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6906
_LT_TAGVAR(reload_flag, $1)=$reload_flag
6907
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6908
_LT_TAGVAR(no_undefined_flag, $1)=
6909
_LT_TAGVAR(whole_archive_flag_spec, $1)=
6910
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6912
# Source file extension for C++ test sources.
6915
# Object file extension for compiled C++ test sources.
6917
_LT_TAGVAR(objext, $1)=$objext
6919
# No sense in running all these tests if we already determined that
6920
# the CXX compiler isn't working. Some variables (like enable_shared)
6921
# are currently assumed to apply to all compilers on this platform,
6922
# and will be corrupted by setting them based on a non-working compiler.
6923
if test "$_lt_caught_CXX_error" != yes; then
6924
# Code to be used in simple compile tests
6925
lt_simple_compile_test_code="int some_variable = 0;"
6927
# Code to be used in simple link tests
6928
lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6930
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
6933
# save warnings/boilerplate of simple test code
6934
_LT_COMPILER_BOILERPLATE
6935
_LT_LINKER_BOILERPLATE
6937
# Allow CC to be a program name with arguments.
6939
lt_save_CFLAGS=$CFLAGS
6943
lt_save_with_gnu_ld=$with_gnu_ld
6944
lt_save_path_LD=$lt_cv_path_LD
6945
if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6946
lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6948
$as_unset lt_cv_prog_gnu_ld
6950
if test -n "${lt_cv_path_LDCXX+set}"; then
6951
lt_cv_path_LD=$lt_cv_path_LDCXX
6953
$as_unset lt_cv_path_LD
6955
test -z "${LDCXX+set}" || LD=$LDCXX
6959
_LT_TAGVAR(compiler, $1)=$CC
6960
_LT_CC_BASENAME([$compiler])
6962
if test -n "$compiler"; then
6963
# We don't want -fno-exception when compiling C++ code, so set the
6964
# no_builtin_flag separately
6965
if test "$GXX" = yes; then
6966
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6968
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6971
if test "$GXX" = yes; then
6972
# Set up default GNU C++ configuration
6976
# Check if GNU C++ uses GNU ld as the underlying linker, since the
6977
# archiving commands below assume that GNU ld is being used.
6978
if test "$with_gnu_ld" = yes; then
6979
_LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6980
_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'
6982
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6983
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6985
# If archive_cmds runs LD, not CC, wlarc should be empty
6986
# XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6987
# investigate it a little bit more. (MM)
6990
# ancient GNU ld didn't support --whole-archive et. al.
6991
if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6992
$GREP 'no-whole-archive' > /dev/null; then
6993
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6995
_LT_TAGVAR(whole_archive_flag_spec, $1)=
7001
# A generic and very simple default shared library creation
7002
# command for GNU C++ for the case where it uses the native
7003
# linker, instead of GNU ld. If possible, this setting should
7004
# overridden to take advantage of the native linker features on
7005
# the platform it is being used on.
7006
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7009
# Commands to make compiler produce verbose output that lists
7010
# what "hidden" libraries, object files and flags are used when
7011
# linking a shared library.
7012
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7020
# PORTME: fill in a description of your system's C++ link characteristics
7021
AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
7022
_LT_TAGVAR(ld_shlibs, $1)=yes
7025
# FIXME: insert proper C++ library support
7026
_LT_TAGVAR(ld_shlibs, $1)=no
7029
if test "$host_cpu" = ia64; then
7030
# On IA64, the linker does run time linking by default, so we don't
7031
# have to do anything special.
7032
aix_use_runtimelinking=no
7033
exp_sym_flag='-Bexport'
7036
aix_use_runtimelinking=no
7038
# Test if we are trying to use run time linking or normal
7039
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
7040
# need to do runtime linking.
7041
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
7042
for ld_flag in $LDFLAGS; do
7045
aix_use_runtimelinking=yes
7053
exp_sym_flag='-bexport'
7054
no_entry_flag='-bnoentry'
7057
# When large executables or shared objects are built, AIX ld can
7058
# have problems creating the table of contents. If linking a library
7059
# or program results in "error TOC overflow" add -mminimal-toc to
7060
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
7061
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
7063
_LT_TAGVAR(archive_cmds, $1)=''
7064
_LT_TAGVAR(hardcode_direct, $1)=yes
7065
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7066
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7067
_LT_TAGVAR(link_all_deplibs, $1)=yes
7068
_LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
7070
if test "$GXX" = yes; then
7071
case $host_os in aix4.[[012]]|aix4.[[012]].*)
7072
# We only want to do this on AIX 4.2 and lower, the check
7073
# below for broken collect2 doesn't work under 4.3+
7074
collect2name=`${CC} -print-prog-name=collect2`
7075
if test -f "$collect2name" &&
7076
strings "$collect2name" | $GREP resolve_lib_name >/dev/null
7078
# We have reworked collect2
7081
# We have old collect2
7082
_LT_TAGVAR(hardcode_direct, $1)=unsupported
7083
# It fails to find uninstalled libraries when the uninstalled
7084
# path is not listed in the libpath. Setting hardcode_minus_L
7085
# to unsupported forces relinking
7086
_LT_TAGVAR(hardcode_minus_L, $1)=yes
7087
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
7088
_LT_TAGVAR(hardcode_libdir_separator, $1)=
7091
shared_flag='-shared'
7092
if test "$aix_use_runtimelinking" = yes; then
7093
shared_flag="$shared_flag "'${wl}-G'
7097
if test "$host_cpu" = ia64; then
7098
# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
7099
# chokes on -Wl,-G. The following line is correct:
7102
if test "$aix_use_runtimelinking" = yes; then
7103
shared_flag='${wl}-G'
7105
shared_flag='${wl}-bM:SRE'
7110
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
7111
# It seems that -bexpall does not export symbols beginning with
7112
# underscore (_), so it is better to generate a list of symbols to
7114
_LT_TAGVAR(always_export_symbols, $1)=yes
7115
if test "$aix_use_runtimelinking" = yes; then
7116
# Warning - without using the other runtime loading flags (-brtl),
7117
# -berok will link without error, but may produce a broken library.
7118
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
7119
# Determine the default libpath from the value encoded in an empty
7121
_LT_SYS_MODULE_PATH_AIX([$1])
7122
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
7124
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
7126
if test "$host_cpu" = ia64; then
7127
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
7128
_LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
7129
_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"
7131
# Determine the default libpath from the value encoded in an
7133
_LT_SYS_MODULE_PATH_AIX([$1])
7134
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
7135
# Warning - without using the other run time loading flags,
7136
# -berok will link without error, but may produce a broken library.
7137
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
7138
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
7139
if test "$with_gnu_ld" = yes; then
7140
# We only use this code for GNU lds that support --whole-archive.
7141
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
7143
# Exported symbols can be pulled into shared objects from archives
7144
_LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
7146
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
7147
# This is similar to how AIX traditionally builds its shared
7149
_LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
7155
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
7156
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
7157
# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
7158
# support --undefined. This deserves some investigation. FIXME
7159
_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
7161
_LT_TAGVAR(ld_shlibs, $1)=no
7166
case $cc_basename in
7168
# FIXME: insert proper C++ library support
7169
_LT_TAGVAR(ld_shlibs, $1)=no
7174
cygwin* | mingw* | pw32* | cegcc*)
7175
case $GXX,$cc_basename in
7178
# hardcode_libdir_flag_spec is actually meaningless, as there is
7179
# no search path for DLLs.
7180
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
7181
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
7182
_LT_TAGVAR(always_export_symbols, $1)=yes
7183
_LT_TAGVAR(file_list_spec, $1)='@'
7184
# Tell ltmain to make .lib files, not .a files.
7186
# Tell ltmain to make .dll files, not .so files.
7188
# FIXME: Setting linknames here is a bad hack.
7189
_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
7190
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
7191
$SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
7193
$SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
7195
$CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
7197
# The linker will not automatically build a static lib if we build a DLL.
7198
# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
7199
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
7201
_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
7202
_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
7203
lt_tool_outputfile="@TOOL_OUTPUT@"~
7204
case $lt_outputfile in
7207
lt_outputfile="$lt_outputfile.exe"
7208
lt_tool_outputfile="$lt_tool_outputfile.exe"
7211
func_to_tool_file "$lt_outputfile"~
7212
if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
7213
$MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
7214
$RM "$lt_outputfile.manifest";
7219
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
7220
# as there is no search path for DLLs.
7221
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
7222
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
7223
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
7224
_LT_TAGVAR(always_export_symbols, $1)=no
7225
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
7227
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
7228
_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'
7229
# If the export-symbols file already is a .def file (1st line
7230
# is EXPORTS), use it as is; otherwise, prepend...
7231
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
7232
cp $export_symbols $output_objdir/$soname.def;
7234
echo EXPORTS > $output_objdir/$soname.def;
7235
cat $export_symbols >> $output_objdir/$soname.def;
7237
$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'
7239
_LT_TAGVAR(ld_shlibs, $1)=no
7244
darwin* | rhapsody*)
7245
_LT_DARWIN_LINKER_FEATURES($1)
7249
case $cc_basename in
7251
# FIXME: insert proper C++ library support
7252
_LT_TAGVAR(ld_shlibs, $1)=no
7255
# Green Hills C++ Compiler
7256
# FIXME: insert proper C++ library support
7257
_LT_TAGVAR(ld_shlibs, $1)=no
7260
# FIXME: insert proper C++ library support
7261
_LT_TAGVAR(ld_shlibs, $1)=no
7267
# C++ shared libraries reported to be fairly broken before
7269
_LT_TAGVAR(ld_shlibs, $1)=no
7273
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7276
freebsd* | dragonfly*)
7277
# FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
7279
_LT_TAGVAR(ld_shlibs, $1)=yes
7286
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
7287
_LT_TAGVAR(link_all_deplibs, $1)=yes
7291
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
7292
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
7293
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
7294
_LT_TAGVAR(hardcode_direct, $1)=yes
7295
_LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
7296
# but as the default
7297
# location of the library.
7299
case $cc_basename in
7301
# FIXME: insert proper C++ library support
7302
_LT_TAGVAR(ld_shlibs, $1)=no
7305
_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 $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
7306
# Commands to make compiler produce verbose output that lists
7307
# what "hidden" libraries, object files and flags are used when
7308
# linking a shared library.
7310
# There doesn't appear to be a way to prevent this compiler from
7311
# explicitly linking system object files so we need to strip them
7312
# from the output so that they don't get included in the library
7314
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"'
7317
if test "$GXX" = yes; then
7318
_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 $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
7320
# FIXME: insert proper C++ library support
7321
_LT_TAGVAR(ld_shlibs, $1)=no
7328
if test $with_gnu_ld = no; then
7329
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
7330
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
7336
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
7342
_LT_TAGVAR(hardcode_direct, $1)=no
7343
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7346
_LT_TAGVAR(hardcode_direct, $1)=yes
7347
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7348
_LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
7349
# but as the default
7350
# location of the library.
7354
case $cc_basename in
7356
# FIXME: insert proper C++ library support
7357
_LT_TAGVAR(ld_shlibs, $1)=no
7362
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7365
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7368
_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'
7371
# Commands to make compiler produce verbose output that lists
7372
# what "hidden" libraries, object files and flags are used when
7373
# linking a shared library.
7375
# There doesn't appear to be a way to prevent this compiler from
7376
# explicitly linking system object files so we need to strip them
7377
# from the output so that they don't get included in the library
7379
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"'
7382
if test "$GXX" = yes; then
7383
if test $with_gnu_ld = no; then
7386
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7389
_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'
7392
_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'
7397
# FIXME: insert proper C++ library support
7398
_LT_TAGVAR(ld_shlibs, $1)=no
7405
_LT_TAGVAR(hardcode_direct, $1)=no
7406
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7407
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
7408
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
7409
# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
7410
# Instead, shared libraries are loaded at an image base (0x10000000 by
7411
# default) and relocated if they conflict, which is a slow very memory
7412
# consuming and fragmenting process. To avoid this, we pick a random,
7413
# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
7414
# time. Moving up from 0x10000000 also allows more sbrk(2) space.
7415
_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'
7416
_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'
7419
case $cc_basename in
7422
_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'
7424
# Archives containing C++ object files must be created using
7425
# "CC -ar", where "CC" is the IRIX C++ compiler. This is
7426
# necessary to make sure instantiated templates are included
7428
_LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
7431
if test "$GXX" = yes; then
7432
if test "$with_gnu_ld" = no; then
7433
_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'
7435
_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'
7438
_LT_TAGVAR(link_all_deplibs, $1)=yes
7441
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
7442
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
7443
_LT_TAGVAR(inherit_rpath, $1)=yes
7446
linux* | k*bsd*-gnu | kopensolaris*-gnu)
7447
case $cc_basename in
7449
# Kuck and Associates, Inc. (KAI) C++ Compiler
7451
# KCC will only create a shared library if the output file
7452
# ends with ".so" (or ".sl" for HP-UX), so rename the library
7453
# to its proper name (with version) after linking.
7454
_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'
7455
_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'
7456
# Commands to make compiler produce verbose output that lists
7457
# what "hidden" libraries, object files and flags are used when
7458
# linking a shared library.
7460
# There doesn't appear to be a way to prevent this compiler from
7461
# explicitly linking system object files so we need to strip them
7462
# from the output so that they don't get included in the library
7464
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"'
7466
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
7467
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
7469
# Archives containing C++ object files must be created using
7470
# "CC -Bstatic", where "CC" is the KAI C++ compiler.
7471
_LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
7476
# version 8.0 and above of icpc choke on multiply defined symbols
7477
# if we add $predep_objects and $postdep_objects, however 7.1 and
7478
# earlier do not add the objects themselves.
7479
case `$CC -V 2>&1` in
7481
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
7482
_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'
7484
*) # Version 8.0 or newer
7487
ia64*) tmp_idyn=' -i_dynamic';;
7489
_LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
7490
_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'
7493
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7494
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
7495
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
7496
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
7499
# Portland Group C++ compiler
7501
*pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7502
_LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
7504
$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
7505
compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7506
_LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
7508
$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
7509
$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7511
_LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
7513
$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7514
$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
7515
_LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
7517
$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7518
$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'
7520
*) # Version 6 and above use weak symbols
7521
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
7522
_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'
7526
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
7527
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
7528
_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'
7532
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
7533
_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'
7535
runpath_var=LD_RUN_PATH
7536
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7537
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
7539
# Commands to make compiler produce verbose output that lists
7540
# what "hidden" libraries, object files and flags are used when
7541
# linking a shared library.
7543
# There doesn't appear to be a way to prevent this compiler from
7544
# explicitly linking system object files so we need to strip them
7545
# from the output so that they don't get included in the library
7547
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'
7549
xl* | mpixl* | bgxl*)
7550
# IBM XL 8.0 on PPC, with GNU ld
7551
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
7552
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
7553
_LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
7554
if test "x$supports_anon_versioning" = xyes; then
7555
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
7556
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7557
echo "local: *; };" >> $output_objdir/$libname.ver~
7558
$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
7562
case `$CC -V 2>&1 | sed 5q` in
7565
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7566
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7567
_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'
7568
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7569
_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'
7570
_LT_TAGVAR(compiler_needs_object, $1)=yes
7572
# Not sure whether something based on
7573
# $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7575
output_verbose_link_cmd='func_echo_all'
7577
# Archives containing C++ object files must be created using
7578
# "CC -xar", where "CC" is the Sun C++ compiler. This is
7579
# necessary to make sure instantiated templates are included
7581
_LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7589
# FIXME: insert proper C++ library support
7590
_LT_TAGVAR(ld_shlibs, $1)=no
7594
# FIXME: insert proper C++ library support
7595
_LT_TAGVAR(ld_shlibs, $1)=no
7599
case $cc_basename in
7601
# FIXME: insert proper C++ library support
7602
_LT_TAGVAR(ld_shlibs, $1)=no
7605
# FIXME: insert proper C++ library support
7606
_LT_TAGVAR(ld_shlibs, $1)=no
7612
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7613
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7615
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7616
_LT_TAGVAR(hardcode_direct, $1)=yes
7617
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7619
# Workaround some broken pre-1.5 toolchains
7620
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7624
_LT_TAGVAR(ld_shlibs, $1)=yes
7628
# C++ shared libraries are fairly broken
7629
_LT_TAGVAR(ld_shlibs, $1)=no
7633
if test -f /usr/libexec/ld.so; then
7634
_LT_TAGVAR(hardcode_direct, $1)=yes
7635
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7636
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7637
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7638
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
7639
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
7640
_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'
7641
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
7642
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
7644
output_verbose_link_cmd=func_echo_all
7646
_LT_TAGVAR(ld_shlibs, $1)=no
7650
osf3* | osf4* | osf5*)
7651
case $cc_basename in
7653
# Kuck and Associates, Inc. (KAI) C++ Compiler
7655
# KCC will only create a shared library if the output file
7656
# ends with ".so" (or ".sl" for HP-UX), so rename the library
7657
# to its proper name (with version) after linking.
7658
_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'
7660
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
7661
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
7663
# Archives containing C++ object files must be created using
7664
# the KAI C++ compiler.
7666
osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7667
*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7671
# Rational C++ 2.4.1
7672
# FIXME: insert proper C++ library support
7673
_LT_TAGVAR(ld_shlibs, $1)=no
7678
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
7679
_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'
7680
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
7683
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
7684
_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'
7685
_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
7686
echo "-hidden">> $lib.exp~
7687
$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~
7689
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7693
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
7695
# Commands to make compiler produce verbose output that lists
7696
# what "hidden" libraries, object files and flags are used when
7697
# linking a shared library.
7699
# There doesn't appear to be a way to prevent this compiler from
7700
# explicitly linking system object files so we need to strip them
7701
# from the output so that they don't get included in the library
7703
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"'
7706
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
7707
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
7710
_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'
7713
_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'
7717
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
7718
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
7720
# Commands to make compiler produce verbose output that lists
7721
# what "hidden" libraries, object files and flags are used when
7722
# linking a shared library.
7723
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7726
# FIXME: insert proper C++ library support
7727
_LT_TAGVAR(ld_shlibs, $1)=no
7734
# FIXME: insert proper C++ library support
7735
_LT_TAGVAR(ld_shlibs, $1)=no
7739
case $cc_basename in
7742
# FIXME: insert proper C++ library support
7743
_LT_TAGVAR(ld_shlibs, $1)=no
7747
# FIXME: insert proper C++ library support
7748
_LT_TAGVAR(ld_shlibs, $1)=no
7751
# FIXME: insert proper C++ library support
7752
_LT_TAGVAR(ld_shlibs, $1)=no
7758
case $cc_basename in
7760
# Sun C++ 4.2, 5.x and Centerline C++
7761
_LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7762
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7763
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7764
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7765
$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'
7767
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7768
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7770
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7772
# The compiler driver will combine and reorder linker options,
7773
# but understands `-z linker_flag'.
7774
# Supported since Solaris 2.6 (maybe 2.5.1?)
7775
_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7778
_LT_TAGVAR(link_all_deplibs, $1)=yes
7780
output_verbose_link_cmd='func_echo_all'
7782
# Archives containing C++ object files must be created using
7783
# "CC -xar", where "CC" is the Sun C++ compiler. This is
7784
# necessary to make sure instantiated templates are included
7786
_LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7789
# Green Hills C++ Compiler
7790
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
7792
# The C++ compiler must be used to create the archive.
7793
_LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
7796
# GNU C++ compiler with Solaris linker
7797
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
7798
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
7799
if $CC --version | $GREP -v '^2\.7' > /dev/null; then
7800
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
7801
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7802
$CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7804
# Commands to make compiler produce verbose output that lists
7805
# what "hidden" libraries, object files and flags are used when
7806
# linking a shared library.
7807
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7809
# g++ 2.7 appears to require `-G' NOT `-shared' on this
7811
_LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
7812
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7813
$CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7815
# Commands to make compiler produce verbose output that lists
7816
# what "hidden" libraries, object files and flags are used when
7817
# linking a shared library.
7818
output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7821
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
7823
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7825
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
7833
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
7834
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
7835
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7836
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7837
runpath_var='LD_RUN_PATH'
7839
case $cc_basename in
7841
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7842
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7845
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7846
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7851
sysv5* | sco3.2v5* | sco5v6*)
7852
# Note: We can NOT use -z defs as we might desire, because we do not
7853
# link with -lc, and that would cause any symbols used from libc to
7854
# always be unresolved, which means just about no library would
7855
# ever link correctly. If we're not using GNU ld we use -z text
7856
# though, which does catch some bad symbols but isn't as heavy-handed
7858
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
7859
_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
7860
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7861
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7862
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
7863
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7864
_LT_TAGVAR(link_all_deplibs, $1)=yes
7865
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
7866
runpath_var='LD_RUN_PATH'
7868
case $cc_basename in
7870
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7871
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7872
_LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
7873
'"$_LT_TAGVAR(old_archive_cmds, $1)"
7874
_LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
7875
'"$_LT_TAGVAR(reload_cmds, $1)"
7878
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7879
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7885
case $cc_basename in
7887
# NonStop-UX NCC 3.20
7888
# FIXME: insert proper C++ library support
7889
_LT_TAGVAR(ld_shlibs, $1)=no
7892
# FIXME: insert proper C++ library support
7893
_LT_TAGVAR(ld_shlibs, $1)=no
7899
# FIXME: insert proper C++ library support
7900
_LT_TAGVAR(ld_shlibs, $1)=no
7904
# FIXME: insert proper C++ library support
7905
_LT_TAGVAR(ld_shlibs, $1)=no
7909
AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
7910
test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
7912
_LT_TAGVAR(GCC, $1)="$GXX"
7913
_LT_TAGVAR(LD, $1)="$LD"
7916
## There is no encapsulation within the following macros, do not change
7917
## the running order or otherwise move them around unless you know exactly
7918
## what you are doing...
7919
_LT_SYS_HIDDEN_LIBDEPS($1)
7920
_LT_COMPILER_PIC($1)
7921
_LT_COMPILER_C_O($1)
7922
_LT_COMPILER_FILE_LOCKS($1)
7923
_LT_LINKER_SHLIBS($1)
7924
_LT_SYS_DYNAMIC_LINKER($1)
7925
_LT_LINKER_HARDCODE_LIBPATH($1)
7928
fi # test -n "$compiler"
7931
CFLAGS=$lt_save_CFLAGS
7935
with_gnu_ld=$lt_save_with_gnu_ld
7936
lt_cv_path_LDCXX=$lt_cv_path_LD
7937
lt_cv_path_LD=$lt_save_path_LD
7938
lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7939
lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
7940
fi # test "$_lt_caught_CXX_error" != yes
7943
])# _LT_LANG_CXX_CONFIG
7946
# _LT_FUNC_STRIPNAME_CNF
7947
# ----------------------
7948
# func_stripname_cnf prefix suffix name
7949
# strip PREFIX and SUFFIX off of NAME.
7950
# PREFIX and SUFFIX must not contain globbing or regex special
7951
# characters, hashes, percent signs, but SUFFIX may contain a leading
7952
# dot (in which case that matches only a dot).
7954
# This function is identical to the (non-XSI) version of func_stripname,
7955
# except this one can be used by m4 code that may be executed by configure,
7956
# rather than the libtool script.
7957
m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7958
AC_REQUIRE([_LT_DECL_SED])
7959
AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7960
func_stripname_cnf ()
7963
.*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
7964
*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
7966
} # func_stripname_cnf
7967
])# _LT_FUNC_STRIPNAME_CNF
7969
# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7970
# ---------------------------------
7971
# Figure out "hidden" library dependencies from verbose
7972
# compiler output when linking a shared library.
7973
# Parse the compiler output and extract the necessary
7974
# objects, libraries and library flags.
7975
m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7976
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7977
AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7978
# Dependencies to place before and after the object being linked:
7979
_LT_TAGVAR(predep_objects, $1)=
7980
_LT_TAGVAR(postdep_objects, $1)=
7981
_LT_TAGVAR(predeps, $1)=
7982
_LT_TAGVAR(postdeps, $1)=
7983
_LT_TAGVAR(compiler_lib_search_path, $1)=
7985
dnl we can't use the lt_simple_compile_test_code here,
7986
dnl because it contains code intended for an executable,
7987
dnl not a library. It's possible we should let each
7988
dnl tag define a new lt_????_link_test_code variable,
7989
dnl but it's only used here...
7990
m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7992
void foo (void) { a = 0; }
7994
], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7998
Foo (void) { a = 0; }
8003
], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
8011
], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
8019
], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
8022
public void bar (void) {
8027
], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
8034
_lt_libdeps_save_CFLAGS=$CFLAGS
8035
case "$CC $CFLAGS " in #(
8036
*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
8037
*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
8038
*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
8041
dnl Parse the compiler output and extract the necessary
8042
dnl objects, libraries and library flags.
8043
if AC_TRY_EVAL(ac_compile); then
8044
# Parse the compiler output and extract the necessary
8045
# objects, libraries and library flags.
8047
# Sentinel used to keep track of whether or not we are before
8048
# the conftest object file.
8049
pre_test_object_deps_done=no
8051
for p in `eval "$output_verbose_link_cmd"`; do
8055
# Some compilers place space between "-{L,R}" and the path.
8057
if test $p = "-L" ||
8058
test $p = "-R"; then
8063
# Expand the sysroot to ease extracting the directories later.
8064
if test -z "$prev"; then
8066
-L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
8067
-R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
8068
-l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
8072
=*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
8074
if test "$pre_test_object_deps_done" = no; then
8077
# Internal compiler library paths should come after those
8078
# provided the user. The postdeps already come after the
8079
# user supplied libs so there is no need to process them.
8080
if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
8081
_LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
8083
_LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
8086
# The "-l" case would never come before the object being
8087
# linked, so don't bother handling this case.
8090
if test -z "$_LT_TAGVAR(postdeps, $1)"; then
8091
_LT_TAGVAR(postdeps, $1)="${prev}${p}"
8093
_LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
8099
*.lto.$objext) ;; # Ignore GCC LTO objects
8101
# This assumes that the test object file only shows up
8102
# once in the compiler output.
8103
if test "$p" = "conftest.$objext"; then
8104
pre_test_object_deps_done=yes
8108
if test "$pre_test_object_deps_done" = no; then
8109
if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
8110
_LT_TAGVAR(predep_objects, $1)="$p"
8112
_LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
8115
if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
8116
_LT_TAGVAR(postdep_objects, $1)="$p"
8118
_LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
8123
*) ;; # Ignore the rest.
8131
echo "libtool.m4: error: problem compiling $1 test program"
8134
$RM -f confest.$objext
8135
CFLAGS=$_lt_libdeps_save_CFLAGS
8137
# PORTME: override above test on systems where it is broken
8141
# Interix 3.5 installs completely hosed .la files for C++, so rather than
8142
# hack all around it, let's just trust "g++" to DTRT.
8143
_LT_TAGVAR(predep_objects,$1)=
8144
_LT_TAGVAR(postdep_objects,$1)=
8145
_LT_TAGVAR(postdeps,$1)=
8149
case `$CC -V 2>&1 | sed 5q` in
8153
# The more standards-conforming stlport4 library is
8154
# incompatible with the Cstd library. Avoid specifying
8155
# it if it's in CXXFLAGS. Ignore libCrun as
8156
# -library=stlport4 depends on it.
8157
case " $CXX $CXXFLAGS " in
8158
*" -library=stlport4 "*)
8159
solaris_use_stlport4=yes
8163
if test "$solaris_use_stlport4" != yes; then
8164
_LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
8171
case $cc_basename in
8173
# The more standards-conforming stlport4 library is
8174
# incompatible with the Cstd library. Avoid specifying
8175
# it if it's in CXXFLAGS. Ignore libCrun as
8176
# -library=stlport4 depends on it.
8177
case " $CXX $CXXFLAGS " in
8178
*" -library=stlport4 "*)
8179
solaris_use_stlport4=yes
8183
# Adding this requires a known-good setup of shared libraries for
8184
# Sun compiler versions before 5.6, else PIC objects from an old
8185
# archive will be linked into the output, leading to subtle bugs.
8186
if test "$solaris_use_stlport4" != yes; then
8187
_LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
8195
case " $_LT_TAGVAR(postdeps, $1) " in
8196
*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
8198
_LT_TAGVAR(compiler_lib_search_dirs, $1)=
8199
if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
8200
_LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
8202
_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
8203
[The directories searched by this compiler when creating a shared library])
8204
_LT_TAGDECL([], [predep_objects], [1],
8205
[Dependencies to place before and after the objects being linked to
8206
create a shared library])
8207
_LT_TAGDECL([], [postdep_objects], [1])
8208
_LT_TAGDECL([], [predeps], [1])
8209
_LT_TAGDECL([], [postdeps], [1])
8210
_LT_TAGDECL([], [compiler_lib_search_path], [1],
8211
[The library search path used internally by the compiler when linking
8213
])# _LT_SYS_HIDDEN_LIBDEPS
8216
# _LT_LANG_F77_CONFIG([TAG])
8217
# --------------------------
8218
# Ensure that the configuration variables for a Fortran 77 compiler are
8219
# suitably defined. These variables are subsequently used by _LT_CONFIG
8220
# to write the compiler configuration to `libtool'.
8221
m4_defun([_LT_LANG_F77_CONFIG],
8222
[AC_LANG_PUSH(Fortran 77)
8223
if test -z "$F77" || test "X$F77" = "Xno"; then
8227
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
8228
_LT_TAGVAR(allow_undefined_flag, $1)=
8229
_LT_TAGVAR(always_export_symbols, $1)=no
8230
_LT_TAGVAR(archive_expsym_cmds, $1)=
8231
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
8232
_LT_TAGVAR(hardcode_direct, $1)=no
8233
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
8234
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
8235
_LT_TAGVAR(hardcode_libdir_separator, $1)=
8236
_LT_TAGVAR(hardcode_minus_L, $1)=no
8237
_LT_TAGVAR(hardcode_automatic, $1)=no
8238
_LT_TAGVAR(inherit_rpath, $1)=no
8239
_LT_TAGVAR(module_cmds, $1)=
8240
_LT_TAGVAR(module_expsym_cmds, $1)=
8241
_LT_TAGVAR(link_all_deplibs, $1)=unknown
8242
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8243
_LT_TAGVAR(reload_flag, $1)=$reload_flag
8244
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8245
_LT_TAGVAR(no_undefined_flag, $1)=
8246
_LT_TAGVAR(whole_archive_flag_spec, $1)=
8247
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
8249
# Source file extension for f77 test sources.
8252
# Object file extension for compiled f77 test sources.
8254
_LT_TAGVAR(objext, $1)=$objext
8256
# No sense in running all these tests if we already determined that
8257
# the F77 compiler isn't working. Some variables (like enable_shared)
8258
# are currently assumed to apply to all compilers on this platform,
8259
# and will be corrupted by setting them based on a non-working compiler.
8260
if test "$_lt_disable_F77" != yes; then
8261
# Code to be used in simple compile tests
8262
lt_simple_compile_test_code="\
8268
# Code to be used in simple link tests
8269
lt_simple_link_test_code="\
8274
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8277
# save warnings/boilerplate of simple test code
8278
_LT_COMPILER_BOILERPLATE
8279
_LT_LINKER_BOILERPLATE
8281
# Allow CC to be a program name with arguments.
8284
lt_save_CFLAGS=$CFLAGS
8288
_LT_TAGVAR(compiler, $1)=$CC
8289
_LT_CC_BASENAME([$compiler])
8291
if test -n "$compiler"; then
8292
AC_MSG_CHECKING([if libtool supports shared libraries])
8293
AC_MSG_RESULT([$can_build_shared])
8295
AC_MSG_CHECKING([whether to build shared libraries])
8296
test "$can_build_shared" = "no" && enable_shared=no
8298
# On AIX, shared libraries and static libraries use the same namespace, and
8299
# are all built from PIC.
8302
test "$enable_shared" = yes && enable_static=no
8303
if test -n "$RANLIB"; then
8304
archive_cmds="$archive_cmds~\$RANLIB \$lib"
8305
postinstall_cmds='$RANLIB $lib'
8309
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
8310
test "$enable_shared" = yes && enable_static=no
8314
AC_MSG_RESULT([$enable_shared])
8316
AC_MSG_CHECKING([whether to build static libraries])
8317
# Make sure either enable_shared or enable_static is yes.
8318
test "$enable_shared" = yes || enable_static=yes
8319
AC_MSG_RESULT([$enable_static])
8321
_LT_TAGVAR(GCC, $1)="$G77"
8322
_LT_TAGVAR(LD, $1)="$LD"
8325
## There is no encapsulation within the following macros, do not change
8326
## the running order or otherwise move them around unless you know exactly
8327
## what you are doing...
8328
_LT_COMPILER_PIC($1)
8329
_LT_COMPILER_C_O($1)
8330
_LT_COMPILER_FILE_LOCKS($1)
8331
_LT_LINKER_SHLIBS($1)
8332
_LT_SYS_DYNAMIC_LINKER($1)
8333
_LT_LINKER_HARDCODE_LIBPATH($1)
8336
fi # test -n "$compiler"
8340
CFLAGS="$lt_save_CFLAGS"
8341
fi # test "$_lt_disable_F77" != yes
8344
])# _LT_LANG_F77_CONFIG
8347
# _LT_LANG_FC_CONFIG([TAG])
8348
# -------------------------
8349
# Ensure that the configuration variables for a Fortran compiler are
8350
# suitably defined. These variables are subsequently used by _LT_CONFIG
8351
# to write the compiler configuration to `libtool'.
8352
m4_defun([_LT_LANG_FC_CONFIG],
8353
[AC_LANG_PUSH(Fortran)
8355
if test -z "$FC" || test "X$FC" = "Xno"; then
8359
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
8360
_LT_TAGVAR(allow_undefined_flag, $1)=
8361
_LT_TAGVAR(always_export_symbols, $1)=no
8362
_LT_TAGVAR(archive_expsym_cmds, $1)=
8363
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
8364
_LT_TAGVAR(hardcode_direct, $1)=no
8365
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
8366
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
8367
_LT_TAGVAR(hardcode_libdir_separator, $1)=
8368
_LT_TAGVAR(hardcode_minus_L, $1)=no
8369
_LT_TAGVAR(hardcode_automatic, $1)=no
8370
_LT_TAGVAR(inherit_rpath, $1)=no
8371
_LT_TAGVAR(module_cmds, $1)=
8372
_LT_TAGVAR(module_expsym_cmds, $1)=
8373
_LT_TAGVAR(link_all_deplibs, $1)=unknown
8374
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8375
_LT_TAGVAR(reload_flag, $1)=$reload_flag
8376
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8377
_LT_TAGVAR(no_undefined_flag, $1)=
8378
_LT_TAGVAR(whole_archive_flag_spec, $1)=
8379
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
8381
# Source file extension for fc test sources.
8382
ac_ext=${ac_fc_srcext-f}
8384
# Object file extension for compiled fc test sources.
8386
_LT_TAGVAR(objext, $1)=$objext
8388
# No sense in running all these tests if we already determined that
8389
# the FC compiler isn't working. Some variables (like enable_shared)
8390
# are currently assumed to apply to all compilers on this platform,
8391
# and will be corrupted by setting them based on a non-working compiler.
8392
if test "$_lt_disable_FC" != yes; then
8393
# Code to be used in simple compile tests
8394
lt_simple_compile_test_code="\
8400
# Code to be used in simple link tests
8401
lt_simple_link_test_code="\
8406
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8409
# save warnings/boilerplate of simple test code
8410
_LT_COMPILER_BOILERPLATE
8411
_LT_LINKER_BOILERPLATE
8413
# Allow CC to be a program name with arguments.
8416
lt_save_CFLAGS=$CFLAGS
8420
GCC=$ac_cv_fc_compiler_gnu
8422
_LT_TAGVAR(compiler, $1)=$CC
8423
_LT_CC_BASENAME([$compiler])
8425
if test -n "$compiler"; then
8426
AC_MSG_CHECKING([if libtool supports shared libraries])
8427
AC_MSG_RESULT([$can_build_shared])
8429
AC_MSG_CHECKING([whether to build shared libraries])
8430
test "$can_build_shared" = "no" && enable_shared=no
8432
# On AIX, shared libraries and static libraries use the same namespace, and
8433
# are all built from PIC.
8436
test "$enable_shared" = yes && enable_static=no
8437
if test -n "$RANLIB"; then
8438
archive_cmds="$archive_cmds~\$RANLIB \$lib"
8439
postinstall_cmds='$RANLIB $lib'
8443
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
8444
test "$enable_shared" = yes && enable_static=no
8448
AC_MSG_RESULT([$enable_shared])
8450
AC_MSG_CHECKING([whether to build static libraries])
8451
# Make sure either enable_shared or enable_static is yes.
8452
test "$enable_shared" = yes || enable_static=yes
8453
AC_MSG_RESULT([$enable_static])
8455
_LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
8456
_LT_TAGVAR(LD, $1)="$LD"
8459
## There is no encapsulation within the following macros, do not change
8460
## the running order or otherwise move them around unless you know exactly
8461
## what you are doing...
8462
_LT_SYS_HIDDEN_LIBDEPS($1)
8463
_LT_COMPILER_PIC($1)
8464
_LT_COMPILER_C_O($1)
8465
_LT_COMPILER_FILE_LOCKS($1)
8466
_LT_LINKER_SHLIBS($1)
8467
_LT_SYS_DYNAMIC_LINKER($1)
8468
_LT_LINKER_HARDCODE_LIBPATH($1)
8471
fi # test -n "$compiler"
8475
CFLAGS=$lt_save_CFLAGS
8476
fi # test "$_lt_disable_FC" != yes
8479
])# _LT_LANG_FC_CONFIG
8482
# _LT_LANG_GCJ_CONFIG([TAG])
8483
# --------------------------
8484
# Ensure that the configuration variables for the GNU Java Compiler compiler
8485
# are suitably defined. These variables are subsequently used by _LT_CONFIG
8486
# to write the compiler configuration to `libtool'.
8487
m4_defun([_LT_LANG_GCJ_CONFIG],
8488
[AC_REQUIRE([LT_PROG_GCJ])dnl
8491
# Source file extension for Java test sources.
8494
# Object file extension for compiled Java test sources.
8496
_LT_TAGVAR(objext, $1)=$objext
8498
# Code to be used in simple compile tests
8499
lt_simple_compile_test_code="class foo {}"
8501
# Code to be used in simple link tests
8502
lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
8504
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8507
# save warnings/boilerplate of simple test code
8508
_LT_COMPILER_BOILERPLATE
8509
_LT_LINKER_BOILERPLATE
8511
# Allow CC to be a program name with arguments.
8513
lt_save_CFLAGS=$CFLAGS
8519
_LT_TAGVAR(compiler, $1)=$CC
8520
_LT_TAGVAR(LD, $1)="$LD"
8521
_LT_CC_BASENAME([$compiler])
8523
# GCJ did not exist at the time GCC didn't implicitly link libc in.
8524
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
8526
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8527
_LT_TAGVAR(reload_flag, $1)=$reload_flag
8528
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8530
if test -n "$compiler"; then
8531
_LT_COMPILER_NO_RTTI($1)
8532
_LT_COMPILER_PIC($1)
8533
_LT_COMPILER_C_O($1)
8534
_LT_COMPILER_FILE_LOCKS($1)
8535
_LT_LINKER_SHLIBS($1)
8536
_LT_LINKER_HARDCODE_LIBPATH($1)
8545
CFLAGS=$lt_save_CFLAGS
8546
])# _LT_LANG_GCJ_CONFIG
8549
# _LT_LANG_GO_CONFIG([TAG])
8550
# --------------------------
8551
# Ensure that the configuration variables for the GNU Go compiler
8552
# are suitably defined. These variables are subsequently used by _LT_CONFIG
8553
# to write the compiler configuration to `libtool'.
8554
m4_defun([_LT_LANG_GO_CONFIG],
8555
[AC_REQUIRE([LT_PROG_GO])dnl
8558
# Source file extension for Go test sources.
8561
# Object file extension for compiled Go test sources.
8563
_LT_TAGVAR(objext, $1)=$objext
8565
# Code to be used in simple compile tests
8566
lt_simple_compile_test_code="package main; func main() { }"
8568
# Code to be used in simple link tests
8569
lt_simple_link_test_code='package main; func main() { }'
8571
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8574
# save warnings/boilerplate of simple test code
8575
_LT_COMPILER_BOILERPLATE
8576
_LT_LINKER_BOILERPLATE
8578
# Allow CC to be a program name with arguments.
8580
lt_save_CFLAGS=$CFLAGS
8586
_LT_TAGVAR(compiler, $1)=$CC
8587
_LT_TAGVAR(LD, $1)="$LD"
8588
_LT_CC_BASENAME([$compiler])
8590
# Go did not exist at the time GCC didn't implicitly link libc in.
8591
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
8593
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8594
_LT_TAGVAR(reload_flag, $1)=$reload_flag
8595
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8597
if test -n "$compiler"; then
8598
_LT_COMPILER_NO_RTTI($1)
8599
_LT_COMPILER_PIC($1)
8600
_LT_COMPILER_C_O($1)
8601
_LT_COMPILER_FILE_LOCKS($1)
8602
_LT_LINKER_SHLIBS($1)
8603
_LT_LINKER_HARDCODE_LIBPATH($1)
8612
CFLAGS=$lt_save_CFLAGS
8613
])# _LT_LANG_GO_CONFIG
8616
# _LT_LANG_RC_CONFIG([TAG])
8617
# -------------------------
8618
# Ensure that the configuration variables for the Windows resource compiler
8619
# are suitably defined. These variables are subsequently used by _LT_CONFIG
8620
# to write the compiler configuration to `libtool'.
8621
m4_defun([_LT_LANG_RC_CONFIG],
8622
[AC_REQUIRE([LT_PROG_RC])dnl
8625
# Source file extension for RC test sources.
8628
# Object file extension for compiled RC test sources.
8630
_LT_TAGVAR(objext, $1)=$objext
8632
# Code to be used in simple compile tests
8633
lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8635
# Code to be used in simple link tests
8636
lt_simple_link_test_code="$lt_simple_compile_test_code"
8638
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8641
# save warnings/boilerplate of simple test code
8642
_LT_COMPILER_BOILERPLATE
8643
_LT_LINKER_BOILERPLATE
8645
# Allow CC to be a program name with arguments.
8647
lt_save_CFLAGS=$CFLAGS
8653
_LT_TAGVAR(compiler, $1)=$CC
8654
_LT_CC_BASENAME([$compiler])
8655
_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8657
if test -n "$compiler"; then
8665
CFLAGS=$lt_save_CFLAGS
8666
])# _LT_LANG_RC_CONFIG
8671
AC_DEFUN([LT_PROG_GCJ],
8672
[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8673
[m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8674
[AC_CHECK_TOOL(GCJ, gcj,)
8675
test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
8676
AC_SUBST(GCJFLAGS)])])[]dnl
8680
AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8681
dnl aclocal-1.4 backwards compatibility:
8682
dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
8687
AC_DEFUN([LT_PROG_GO],
8688
[AC_CHECK_TOOL(GOC, gccgo,)
8694
AC_DEFUN([LT_PROG_RC],
8695
[AC_CHECK_TOOL(RC, windres,)
8699
AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8700
dnl aclocal-1.4 backwards compatibility:
8701
dnl AC_DEFUN([LT_AC_PROG_RC], [])
8706
# If we don't have a new enough Autoconf to choose the best grep
8707
# available, choose the one first in the user's PATH.
8708
m4_defun([_LT_DECL_EGREP],
8709
[AC_REQUIRE([AC_PROG_EGREP])dnl
8710
AC_REQUIRE([AC_PROG_FGREP])dnl
8711
test -z "$GREP" && GREP=grep
8712
_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8713
_LT_DECL([], [EGREP], [1], [An ERE matcher])
8714
_LT_DECL([], [FGREP], [1], [A literal string matcher])
8715
dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8722
# If we don't have a new enough Autoconf to choose the best objdump
8723
# available, choose the one first in the user's PATH.
8724
m4_defun([_LT_DECL_OBJDUMP],
8725
[AC_CHECK_TOOL(OBJDUMP, objdump, false)
8726
test -z "$OBJDUMP" && OBJDUMP=objdump
8727
_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8733
# Ensure DLLTOOL variable is set.
8734
m4_defun([_LT_DECL_DLLTOOL],
8735
[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8736
test -z "$DLLTOOL" && DLLTOOL=dlltool
8737
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8743
# Check for a fully-functional sed program, that truncates
8744
# as few characters as possible. Prefer GNU sed if found.
8745
m4_defun([_LT_DECL_SED],
8747
test -z "$SED" && SED=sed
8748
Xsed="$SED -e 1s/^X//"
8749
_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8750
_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8751
[Sed that helps us avoid accidentally triggering echo(1) options like -n])
8754
m4_ifndef([AC_PROG_SED], [
8755
# NOTE: This macro has been submitted for inclusion into #
8756
# GNU Autoconf as AC_PROG_SED. When it is available in #
8757
# a released version of Autoconf we should remove this #
8758
# macro and use it instead. #
8760
m4_defun([AC_PROG_SED],
8761
[AC_MSG_CHECKING([for a sed that does not truncate output])
8762
AC_CACHE_VAL(lt_cv_path_SED,
8763
[# Loop through the user's path and test for sed and gsed.
8764
# Then use that list of sed's as ones to test for truncation.
8765
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8769
test -z "$as_dir" && as_dir=.
8770
for lt_ac_prog in sed gsed; do
8771
for ac_exec_ext in '' $ac_executable_extensions; do
8772
if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8773
lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8781
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
8782
# along with /bin/sed that truncates output.
8783
for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
8784
test ! -f $lt_ac_sed && continue
8785
cat /dev/null > conftest.in
8787
echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8788
# Check for GNU sed and select it if it is found.
8789
if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8790
lt_cv_path_SED=$lt_ac_sed
8794
cat conftest.in conftest.in >conftest.tmp
8795
mv conftest.tmp conftest.in
8796
cp conftest.in conftest.nl
8798
$lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8799
cmp -s conftest.out conftest.nl || break
8800
# 10000 chars as input seems more than enough
8801
test $lt_ac_count -gt 10 && break
8802
lt_ac_count=`expr $lt_ac_count + 1`
8803
if test $lt_ac_count -gt $lt_ac_max; then
8804
lt_ac_max=$lt_ac_count
8805
lt_cv_path_SED=$lt_ac_sed
8812
AC_MSG_RESULT([$SED])
8817
AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8818
dnl aclocal-1.4 backwards compatibility:
8819
dnl AC_DEFUN([LT_AC_PROG_SED], [])
8822
# _LT_CHECK_SHELL_FEATURES
8823
# ------------------------
8824
# Find out whether the shell is Bourne or XSI compatible,
8825
# or has some other useful features.
8826
m4_defun([_LT_CHECK_SHELL_FEATURES],
8827
[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
8828
# Try some XSI features
8831
test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
8833
&& eval 'test $(( 1 + 1 )) -eq 2 \
8834
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
8836
AC_MSG_RESULT([$xsi_shell])
8837
_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
8839
AC_MSG_CHECKING([whether the shell understands "+="])
8841
( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
8843
&& lt_shell_append=yes
8844
AC_MSG_RESULT([$lt_shell_append])
8845
_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
8847
if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
8852
_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8854
# test EBCDIC or ASCII
8855
case `echo X|tr X '\101'` in
8856
A) # ASCII based system
8857
# \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8858
lt_SP2NL='tr \040 \012'
8859
lt_NL2SP='tr \015\012 \040\040'
8861
*) # EBCDIC based system
8862
lt_SP2NL='tr \100 \n'
8863
lt_NL2SP='tr \r\n \100\100'
8866
_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8867
_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8868
])# _LT_CHECK_SHELL_FEATURES
8871
# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
8872
# ------------------------------------------------------
8873
# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
8874
# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
8875
m4_defun([_LT_PROG_FUNCTION_REPLACE],
8877
sed -e '/^$1 ()$/,/^} # $1 /c\
8880
m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
8881
} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
8882
&& mv -f "$cfgfile.tmp" "$cfgfile" \
8883
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
8884
test 0 -eq $? || _lt_function_replace_fail=:
8888
# _LT_PROG_REPLACE_SHELLFNS
8889
# -------------------------
8890
# Replace existing portable implementations of several shell functions with
8891
# equivalent extended shell implementations where those features are available..
8892
m4_defun([_LT_PROG_REPLACE_SHELLFNS],
8893
[if test x"$xsi_shell" = xyes; then
8894
_LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
8896
*/*) func_dirname_result="${1%/*}${2}" ;;
8897
* ) func_dirname_result="${3}" ;;
8900
_LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
8901
func_basename_result="${1##*/}"])
8903
_LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
8905
*/*) func_dirname_result="${1%/*}${2}" ;;
8906
* ) func_dirname_result="${3}" ;;
8908
func_basename_result="${1##*/}"])
8910
_LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
8911
# pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
8912
# positional parameters, so assign one to ordinary parameter first.
8913
func_stripname_result=${3}
8914
func_stripname_result=${func_stripname_result#"${1}"}
8915
func_stripname_result=${func_stripname_result%"${2}"}])
8917
_LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
8918
func_split_long_opt_name=${1%%=*}
8919
func_split_long_opt_arg=${1#*=}])
8921
_LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
8922
func_split_short_opt_arg=${1#??}
8923
func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
8925
_LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
8927
*.lo) func_lo2o_result=${1%.lo}.${objext} ;;
8928
*) func_lo2o_result=${1} ;;
8931
_LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
8933
_LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
8935
_LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
8938
if test x"$lt_shell_append" = xyes; then
8939
_LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
8941
_LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
8942
func_quote_for_eval "${2}"
8943
dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
8944
eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
8946
# Save a `func_append' function call where possible by direct use of '+='
8947
sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
8948
&& mv -f "$cfgfile.tmp" "$cfgfile" \
8949
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
8950
test 0 -eq $? || _lt_function_replace_fail=:
8952
# Save a `func_append' function call even when '+=' is not available
8953
sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
8954
&& mv -f "$cfgfile.tmp" "$cfgfile" \
8955
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
8956
test 0 -eq $? || _lt_function_replace_fail=:
8959
if test x"$_lt_function_replace_fail" = x":"; then
8960
AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
8964
# _LT_PATH_CONVERSION_FUNCTIONS
8965
# -----------------------------
8966
# Determine which file name conversion functions should be used by
8967
# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
8968
# for certain cross-compile configurations and native mingw.
8969
m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8970
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8971
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8972
AC_MSG_CHECKING([how to convert $build file names to $host format])
8973
AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8977
*-*-mingw* ) # actually msys
8978
lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8981
lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8983
* ) # otherwise, assume *nix
8984
lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8990
*-*-mingw* ) # actually msys
8991
lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8994
lt_cv_to_host_file_cmd=func_convert_file_noop
8996
* ) # otherwise, assume *nix
8997
lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
9001
* ) # unhandled hosts (and "normal" native builds)
9002
lt_cv_to_host_file_cmd=func_convert_file_noop
9006
to_host_file_cmd=$lt_cv_to_host_file_cmd
9007
AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
9008
_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
9009
[0], [convert $build file names to $host format])dnl
9011
AC_MSG_CHECKING([how to convert $build file names to toolchain format])
9012
AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
9013
[#assume ordinary cross tools, or native build.
9014
lt_cv_to_tool_file_cmd=func_convert_file_noop
9018
*-*-mingw* ) # actually msys
9019
lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
9025
to_tool_file_cmd=$lt_cv_to_tool_file_cmd
9026
AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
9027
_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
9028
[0], [convert $build files to toolchain format])dnl
9029
])# _LT_PATH_CONVERSION_FUNCTIONS
9031
# Helper functions for option handling. -*- Autoconf -*-
9033
# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
9035
# Written by Gary V. Vaughan, 2004
9037
# This file is free software; the Free Software Foundation gives
9038
# unlimited permission to copy and/or distribute it, with or without
9039
# modifications, as long as this notice is preserved.
9041
# serial 7 ltoptions.m4
9043
# This is to help aclocal find these macros, as it can't see m4_define.
9044
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
9047
# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
9048
# ------------------------------------------
9049
m4_define([_LT_MANGLE_OPTION],
9050
[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
9053
# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
9054
# ---------------------------------------
9055
# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
9056
# matching handler defined, dispatch to it. Other OPTION-NAMEs are
9058
m4_define([_LT_SET_OPTION],
9059
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
9060
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
9061
_LT_MANGLE_DEFUN([$1], [$2]),
9062
[m4_warning([Unknown $1 option `$2'])])[]dnl
9066
# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
9067
# ------------------------------------------------------------
9068
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9069
m4_define([_LT_IF_OPTION],
9070
[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
9073
# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
9074
# -------------------------------------------------------
9075
# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
9077
m4_define([_LT_UNLESS_OPTIONS],
9078
[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
9079
[m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
9080
[m4_define([$0_found])])])[]dnl
9081
m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
9086
# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
9087
# ----------------------------------------
9088
# OPTION-LIST is a space-separated list of Libtool options associated
9089
# with MACRO-NAME. If any OPTION has a matching handler declared with
9090
# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
9091
# the unknown option and exit.
9092
m4_defun([_LT_SET_OPTIONS],
9094
m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
9095
[_LT_SET_OPTION([$1], _LT_Option)])
9097
m4_if([$1],[LT_INIT],[
9099
dnl Simply set some default values (i.e off) if boolean options were not
9101
_LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
9103
_LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
9106
dnl If no reference was made to various pairs of opposing options, then
9107
dnl we run the default mode handler for the pair. For example, if neither
9108
dnl `shared' nor `disable-shared' was passed, we enable building of shared
9109
dnl archives by default:
9110
_LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
9111
_LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
9112
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
9113
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
9114
[_LT_ENABLE_FAST_INSTALL])
9120
# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
9121
# -----------------------------------------
9122
m4_define([_LT_MANGLE_DEFUN],
9123
[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
9126
# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
9127
# -----------------------------------------------
9128
m4_define([LT_OPTION_DEFINE],
9129
[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
9130
])# LT_OPTION_DEFINE
9135
LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
9138
AU_DEFUN([AC_LIBTOOL_DLOPEN],
9139
[_LT_SET_OPTION([LT_INIT], [dlopen])
9140
AC_DIAGNOSE([obsolete],
9141
[$0: Remove this warning and the call to _LT_SET_OPTION when you
9142
put the `dlopen' option into LT_INIT's first parameter.])
9145
dnl aclocal-1.4 backwards compatibility:
9146
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
9151
# Declare package support for building win32 dll's.
9152
LT_OPTION_DEFINE([LT_INIT], [win32-dll],
9153
[enable_win32_dll=yes
9156
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
9157
AC_CHECK_TOOL(AS, as, false)
9158
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
9159
AC_CHECK_TOOL(OBJDUMP, objdump, false)
9163
test -z "$AS" && AS=as
9164
_LT_DECL([], [AS], [1], [Assembler program])dnl
9166
test -z "$DLLTOOL" && DLLTOOL=dlltool
9167
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
9169
test -z "$OBJDUMP" && OBJDUMP=objdump
9170
_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
9173
AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
9174
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
9175
_LT_SET_OPTION([LT_INIT], [win32-dll])
9176
AC_DIAGNOSE([obsolete],
9177
[$0: Remove this warning and the call to _LT_SET_OPTION when you
9178
put the `win32-dll' option into LT_INIT's first parameter.])
9181
dnl aclocal-1.4 backwards compatibility:
9182
dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
9185
# _LT_ENABLE_SHARED([DEFAULT])
9186
# ----------------------------
9187
# implement the --enable-shared flag, and supports the `shared' and
9188
# `disable-shared' LT_INIT options.
9189
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
9190
m4_define([_LT_ENABLE_SHARED],
9191
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
9192
AC_ARG_ENABLE([shared],
9193
[AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
9194
[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
9195
[p=${PACKAGE-default}
9197
yes) enable_shared=yes ;;
9198
no) enable_shared=no ;;
9201
# Look at the argument we got. We use all the common list separators.
9202
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
9203
for pkg in $enableval; do
9205
if test "X$pkg" = "X$p"; then
9212
[enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
9214
_LT_DECL([build_libtool_libs], [enable_shared], [0],
9215
[Whether or not to build shared libraries])
9216
])# _LT_ENABLE_SHARED
9218
LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
9219
LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
9222
AC_DEFUN([AC_ENABLE_SHARED],
9223
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
9226
AC_DEFUN([AC_DISABLE_SHARED],
9227
[_LT_SET_OPTION([LT_INIT], [disable-shared])
9230
AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
9231
AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
9233
dnl aclocal-1.4 backwards compatibility:
9234
dnl AC_DEFUN([AM_ENABLE_SHARED], [])
9235
dnl AC_DEFUN([AM_DISABLE_SHARED], [])
9239
# _LT_ENABLE_STATIC([DEFAULT])
9240
# ----------------------------
9241
# implement the --enable-static flag, and support the `static' and
9242
# `disable-static' LT_INIT options.
9243
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
9244
m4_define([_LT_ENABLE_STATIC],
9245
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
9246
AC_ARG_ENABLE([static],
9247
[AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
9248
[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
9249
[p=${PACKAGE-default}
9251
yes) enable_static=yes ;;
9252
no) enable_static=no ;;
9255
# Look at the argument we got. We use all the common list separators.
9256
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
9257
for pkg in $enableval; do
9259
if test "X$pkg" = "X$p"; then
9266
[enable_static=]_LT_ENABLE_STATIC_DEFAULT)
9268
_LT_DECL([build_old_libs], [enable_static], [0],
9269
[Whether or not to build static libraries])
9270
])# _LT_ENABLE_STATIC
9272
LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
9273
LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
9276
AC_DEFUN([AC_ENABLE_STATIC],
9277
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
9280
AC_DEFUN([AC_DISABLE_STATIC],
9281
[_LT_SET_OPTION([LT_INIT], [disable-static])
9284
AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
9285
AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
9287
dnl aclocal-1.4 backwards compatibility:
9288
dnl AC_DEFUN([AM_ENABLE_STATIC], [])
9289
dnl AC_DEFUN([AM_DISABLE_STATIC], [])
9293
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
9294
# ----------------------------------
9295
# implement the --enable-fast-install flag, and support the `fast-install'
9296
# and `disable-fast-install' LT_INIT options.
9297
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
9298
m4_define([_LT_ENABLE_FAST_INSTALL],
9299
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
9300
AC_ARG_ENABLE([fast-install],
9301
[AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
9302
[optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
9303
[p=${PACKAGE-default}
9305
yes) enable_fast_install=yes ;;
9306
no) enable_fast_install=no ;;
9308
enable_fast_install=no
9309
# Look at the argument we got. We use all the common list separators.
9310
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
9311
for pkg in $enableval; do
9313
if test "X$pkg" = "X$p"; then
9314
enable_fast_install=yes
9320
[enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
9322
_LT_DECL([fast_install], [enable_fast_install], [0],
9323
[Whether or not to optimize for fast installation])dnl
9324
])# _LT_ENABLE_FAST_INSTALL
9326
LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
9327
LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
9330
AU_DEFUN([AC_ENABLE_FAST_INSTALL],
9331
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
9332
AC_DIAGNOSE([obsolete],
9333
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
9334
the `fast-install' option into LT_INIT's first parameter.])
9337
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
9338
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
9339
AC_DIAGNOSE([obsolete],
9340
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
9341
the `disable-fast-install' option into LT_INIT's first parameter.])
9344
dnl aclocal-1.4 backwards compatibility:
9345
dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
9346
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
9349
# _LT_WITH_PIC([MODE])
9350
# --------------------
9351
# implement the --with-pic flag, and support the `pic-only' and `no-pic'
9353
# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
9354
m4_define([_LT_WITH_PIC],
9356
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
9357
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
9358
[lt_p=${PACKAGE-default}
9360
yes|no) pic_mode=$withval ;;
9363
# Look at the argument we got. We use all the common list separators.
9364
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
9365
for lt_pkg in $withval; do
9367
if test "X$lt_pkg" = "X$lt_p"; then
9376
test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
9378
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
9381
LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
9382
LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
9385
AU_DEFUN([AC_LIBTOOL_PICMODE],
9386
[_LT_SET_OPTION([LT_INIT], [pic-only])
9387
AC_DIAGNOSE([obsolete],
9388
[$0: Remove this warning and the call to _LT_SET_OPTION when you
9389
put the `pic-only' option into LT_INIT's first parameter.])
9392
dnl aclocal-1.4 backwards compatibility:
9393
dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
9396
m4_define([_LTDL_MODE], [])
9397
LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
9398
[m4_define([_LTDL_MODE], [nonrecursive])])
9399
LT_OPTION_DEFINE([LTDL_INIT], [recursive],
9400
[m4_define([_LTDL_MODE], [recursive])])
9401
LT_OPTION_DEFINE([LTDL_INIT], [subproject],
9402
[m4_define([_LTDL_MODE], [subproject])])
9404
m4_define([_LTDL_TYPE], [])
9405
LT_OPTION_DEFINE([LTDL_INIT], [installable],
9406
[m4_define([_LTDL_TYPE], [installable])])
9407
LT_OPTION_DEFINE([LTDL_INIT], [convenience],
9408
[m4_define([_LTDL_TYPE], [convenience])])
9410
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
9412
# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
9413
# Written by Gary V. Vaughan, 2004
9415
# This file is free software; the Free Software Foundation gives
9416
# unlimited permission to copy and/or distribute it, with or without
9417
# modifications, as long as this notice is preserved.
9419
# serial 6 ltsugar.m4
9421
# This is to help aclocal find these macros, as it can't see m4_define.
9422
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
9425
# lt_join(SEP, ARG1, [ARG2...])
9426
# -----------------------------
9427
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
9428
# associated separator.
9429
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
9430
# versions in m4sugar had bugs.
9431
m4_define([lt_join],
9432
[m4_if([$#], [1], [],
9434
[m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
9435
m4_define([_lt_join],
9436
[m4_if([$#$2], [2], [],
9437
[m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
9443
# Manipulate m4 lists.
9444
# These macros are necessary as long as will still need to support
9445
# Autoconf-2.59 which quotes differently.
9446
m4_define([lt_car], [[$1]])
9448
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
9450
[m4_dquote(m4_shift($@))])])
9451
m4_define([lt_unquote], $1)
9454
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
9455
# ------------------------------------------
9456
# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
9457
# Note that neither SEPARATOR nor STRING are expanded; they are appended
9458
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
9459
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
9460
# than defined and empty).
9462
# This macro is needed until we can rely on Autoconf 2.62, since earlier
9463
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
9464
m4_define([lt_append],
9466
m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
9470
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
9471
# ----------------------------------------------------------
9472
# Produce a SEP delimited list of all paired combinations of elements of
9473
# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
9474
# has the form PREFIXmINFIXSUFFIXn.
9475
# Needed until we can rely on m4_combine added in Autoconf 2.62.
9476
m4_define([lt_combine],
9477
[m4_if(m4_eval([$# > 3]), [1],
9478
[m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
9479
[[m4_foreach([_Lt_prefix], [$2],
9480
[m4_foreach([_Lt_suffix],
9481
]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
9482
[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
9485
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
9486
# -----------------------------------------------------------------------
9487
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
9488
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
9489
m4_define([lt_if_append_uniq],
9491
[m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
9492
[lt_append([$1], [$2], [$3])$4],
9494
[lt_append([$1], [$2], [$3])$4])])
9497
# lt_dict_add(DICT, KEY, VALUE)
9498
# -----------------------------
9499
m4_define([lt_dict_add],
9500
[m4_define([$1($2)], [$3])])
9503
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
9504
# --------------------------------------------
9505
m4_define([lt_dict_add_subkey],
9506
[m4_define([$1($2:$3)], [$4])])
9509
# lt_dict_fetch(DICT, KEY, [SUBKEY])
9510
# ----------------------------------
9511
m4_define([lt_dict_fetch],
9513
m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
9514
m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
9517
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
9518
# -----------------------------------------------------------------
9519
m4_define([lt_if_dict_fetch],
9520
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
9525
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
9526
# --------------------------------------------------------------
9527
m4_define([lt_dict_filter],
9528
[m4_if([$5], [], [],
9529
[lt_join(m4_quote(m4_default([$4], [[, ]])),
9530
lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
9531
[lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
9534
# ltversion.m4 -- version numbers -*- Autoconf -*-
9536
# Copyright (C) 2004 Free Software Foundation, Inc.
9537
# Written by Scott James Remnant, 2004
9539
# This file is free software; the Free Software Foundation gives
9540
# unlimited permission to copy and/or distribute it, with or without
9541
# modifications, as long as this notice is preserved.
9545
# serial 3337 ltversion.m4
9546
# This file is part of GNU Libtool
9548
m4_define([LT_PACKAGE_VERSION], [2.4.2])
9549
m4_define([LT_PACKAGE_REVISION], [1.3337])
9551
AC_DEFUN([LTVERSION_VERSION],
9552
[macro_version='2.4.2'
9553
macro_revision='1.3337'
9554
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
9555
_LT_DECL(, macro_revision, 0)
9558
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
9560
# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
9561
# Written by Scott James Remnant, 2004.
9563
# This file is free software; the Free Software Foundation gives
9564
# unlimited permission to copy and/or distribute it, with or without
9565
# modifications, as long as this notice is preserved.
9567
# serial 5 lt~obsolete.m4
9569
# These exist entirely to fool aclocal when bootstrapping libtool.
9571
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
9572
# which have later been changed to m4_define as they aren't part of the
9573
# exported API, or moved to Autoconf or Automake where they belong.
9575
# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
9576
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
9577
# using a macro with the same name in our local m4/libtool.m4 it'll
9578
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
9579
# and doesn't know about Autoconf macros at all.)
9581
# So we provide this file, which has a silly filename so it's always
9582
# included after everything else. This provides aclocal with the
9583
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
9584
# because those macros already exist, or will be overwritten later.
9585
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
9587
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
9588
# Yes, that means every name once taken will need to remain here until
9589
# we give up compatibility with versions before 1.7, at which point
9590
# we need to keep only those names which we still refer to.
9592
# This is to help aclocal find these macros, as it can't see m4_define.
9593
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
9595
m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
9596
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
9597
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
9598
m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
9599
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
9600
m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
9601
m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
9602
m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
9603
m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
9604
m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
9605
m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
9606
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
9607
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
9608
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
9609
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9610
m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9611
m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
9612
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9613
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9614
m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
9615
m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
9616
m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9617
m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9618
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9619
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9620
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9621
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9622
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9623
m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
9624
m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
9625
m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
9626
m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9627
m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9628
m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
9629
m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
9630
m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9631
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9632
m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
9633
m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9634
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
9635
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
9636
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
9637
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9638
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9639
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9640
m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9641
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9642
m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9643
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9644
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9645
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9646
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9647
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
9648
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
9649
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9650
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9651
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9652
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9653
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
9654
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
9655
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
9657
793
# nls.m4 serial 5 (gettext-0.18)
9658
794
dnl Copyright (C) 1995-2003, 2005-2006, 2008-2013 Free Software Foundation,