19
20
If you have problems, you may need to regenerate the build system entirely.
20
21
To do so, use the procedure documented by the package, typically `autoreconf'.])])
23
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
25
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
26
# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
28
# Written by Gordon Matzigkeit, 1996
30
# This file is free software; the Free Software Foundation gives
31
# unlimited permission to copy and/or distribute it, with or without
32
# modifications, as long as this notice is preserved.
34
m4_define([_LT_COPYING], [dnl
35
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
36
# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
38
# Written by Gordon Matzigkeit, 1996
40
# This file is part of GNU Libtool.
42
# GNU Libtool is free software; you can redistribute it and/or
43
# modify it under the terms of the GNU General Public License as
44
# published by the Free Software Foundation; either version 2 of
45
# the License, or (at your option) any later version.
47
# As a special exception to the GNU General Public License,
48
# if you distribute this file as part of a program or library that
49
# is built using GNU Libtool, you may include this file under the
50
# same distribution terms that you use for the rest of that program.
52
# GNU Libtool is distributed in the hope that it will be useful,
53
# but WITHOUT ANY WARRANTY; without even the implied warranty of
54
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
55
# GNU General Public License for more details.
57
# You should have received a copy of the GNU General Public License
58
# along with GNU Libtool; see the file COPYING. If not, a copy
59
# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
60
# obtained by writing to the Free Software Foundation, Inc.,
61
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
69
# Complain and exit if this libtool version is less that VERSION.
71
[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
73
[m4_fatal([Libtool version $1 or higher is required],
80
# Complain if the absolute build directory name contains unusual characters
81
m4_defun([_LT_CHECK_BUILDDIR],
84
AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
92
[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
93
AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
94
AC_BEFORE([$0], [LT_LANG])dnl
95
AC_BEFORE([$0], [LT_OUTPUT])dnl
96
AC_BEFORE([$0], [LTDL_INIT])dnl
97
m4_require([_LT_CHECK_BUILDDIR])dnl
99
dnl Autoconf doesn't catch unexpanded LT_ macros by default:
100
m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
101
m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
102
dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
103
dnl unless we require an AC_DEFUNed macro:
104
AC_REQUIRE([LTOPTIONS_VERSION])dnl
105
AC_REQUIRE([LTSUGAR_VERSION])dnl
106
AC_REQUIRE([LTVERSION_VERSION])dnl
107
AC_REQUIRE([LTOBSOLETE_VERSION])dnl
108
m4_require([_LT_PROG_LTMAIN])dnl
110
_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
113
_LT_SET_OPTIONS([$0], [$1])
115
# This can be used to rebuild libtool when needed
116
LIBTOOL_DEPS="$ltmain"
118
# Always use our own libtool.
119
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
129
AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
130
AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
131
dnl aclocal-1.4 backwards compatibility:
132
dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
133
dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
136
# _LT_CC_BASENAME(CC)
137
# -------------------
138
# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
139
m4_defun([_LT_CC_BASENAME],
140
[for cc_temp in $1""; do
142
compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
143
distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
148
cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
152
# _LT_FILEUTILS_DEFAULTS
153
# ----------------------
154
# It is okay to use these file commands and assume they have been set
155
# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
156
m4_defun([_LT_FILEUTILS_DEFAULTS],
160
])# _LT_FILEUTILS_DEFAULTS
165
m4_defun([_LT_SETUP],
166
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
167
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
168
AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
169
AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
171
_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
173
_LT_DECL([], [host_alias], [0], [The host system])dnl
174
_LT_DECL([], [host], [0])dnl
175
_LT_DECL([], [host_os], [0])dnl
177
_LT_DECL([], [build_alias], [0], [The build system])dnl
178
_LT_DECL([], [build], [0])dnl
179
_LT_DECL([], [build_os], [0])dnl
181
AC_REQUIRE([AC_PROG_CC])dnl
182
AC_REQUIRE([LT_PATH_LD])dnl
183
AC_REQUIRE([LT_PATH_NM])dnl
185
AC_REQUIRE([AC_PROG_LN_S])dnl
186
test -z "$LN_S" && LN_S="ln -s"
187
_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
189
AC_REQUIRE([LT_CMD_MAX_LEN])dnl
190
_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
191
_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
193
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
194
m4_require([_LT_CHECK_SHELL_FEATURES])dnl
195
m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
196
m4_require([_LT_CMD_RELOAD])dnl
197
m4_require([_LT_CHECK_MAGIC_METHOD])dnl
198
m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
199
m4_require([_LT_CMD_OLD_ARCHIVE])dnl
200
m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
201
m4_require([_LT_WITH_SYSROOT])dnl
203
_LT_CONFIG_LIBTOOL_INIT([
204
# See if we are running on zsh, and set the options which allow our
205
# commands through without removal of \ escapes INIT.
206
if test -n "\${ZSH_VERSION+set}" ; then
210
if test -n "${ZSH_VERSION+set}" ; then
216
m4_require([_LT_TAG_COMPILER])dnl
220
# AIX sometimes has problems with the GCC collect2 program. For some
221
# reason, if we set the COLLECT_NAMES environment variable, the problems
222
# vanish in a puff of smoke.
223
if test "X${COLLECT_NAMES+set}" != Xset; then
234
# All known linkers require a `.a' archive for static linking (except MSVC,
235
# which needs '.lib').
238
with_gnu_ld="$lt_cv_prog_gnu_ld"
243
# Set sane defaults for various variables
244
test -z "$CC" && CC=cc
245
test -z "$LTCC" && LTCC=$CC
246
test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
247
test -z "$LD" && LD=ld
248
test -z "$ac_objext" && ac_objext=o
250
_LT_CC_BASENAME([$compiler])
252
# Only perform the check for file, if the check method requires it
253
test -z "$MAGIC_CMD" && MAGIC_CMD=file
254
case $deplibs_check_method in
256
if test "$file_magic_cmd" = '$MAGIC_CMD'; then
262
# Use C for the default configuration in the libtool script
263
LT_SUPPORTED_TAG([CC])
265
_LT_LANG_DEFAULT_CONFIG
270
# _LT_PREPARE_SED_QUOTE_VARS
271
# --------------------------
272
# Define a few sed substitution that help us do robust quoting.
273
m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
274
[# Backslashify metacharacters that are still active within
275
# double-quoted strings.
276
sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
278
# Same as above, but do not quote variable references.
279
double_quote_subst='s/\([["`\\]]\)/\\\1/g'
281
# Sed substitution to delay expansion of an escaped shell variable in a
282
# double_quote_subst'ed string.
283
delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
285
# Sed substitution to delay expansion of an escaped single quote.
286
delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
288
# Sed substitution to avoid accidental globbing in evaled expressions
289
no_glob_subst='s/\*/\\\*/g'
294
# Note that this code is called both from `configure', and `config.status'
295
# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
296
# `config.status' has no value for ac_aux_dir unless we are using Automake,
297
# so we pass a copy along to make sure it has a sensible value anyway.
298
m4_defun([_LT_PROG_LTMAIN],
299
[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
300
_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
301
ltmain="$ac_aux_dir/ltmain.sh"
306
# So that we can recreate a full libtool script including additional
307
# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
308
# in macros and then make a single call at the end using the `libtool'
312
# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
313
# ----------------------------------------
314
# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
315
m4_define([_LT_CONFIG_LIBTOOL_INIT],
317
[m4_append([_LT_OUTPUT_LIBTOOL_INIT],
322
m4_define([_LT_OUTPUT_LIBTOOL_INIT])
325
# _LT_CONFIG_LIBTOOL([COMMANDS])
326
# ------------------------------
327
# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
328
m4_define([_LT_CONFIG_LIBTOOL],
330
[m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
335
m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
338
# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
339
# -----------------------------------------------------
340
m4_defun([_LT_CONFIG_SAVE_COMMANDS],
341
[_LT_CONFIG_LIBTOOL([$1])
342
_LT_CONFIG_LIBTOOL_INIT([$2])
346
# _LT_FORMAT_COMMENT([COMMENT])
347
# -----------------------------
348
# Add leading comment marks to the start of each line, and a trailing
349
# full-stop to the whole comment if one is not present already.
350
m4_define([_LT_FORMAT_COMMENT],
352
m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
353
[['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
360
# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
361
# -------------------------------------------------------------------
362
# CONFIGNAME is the name given to the value in the libtool script.
363
# VARNAME is the (base) name used in the configure script.
364
# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
365
# VARNAME. Any other value will be used directly.
366
m4_define([_LT_DECL],
367
[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
368
[lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
369
[m4_ifval([$1], [$1], [$2])])
370
lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
372
[lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
373
lt_dict_add_subkey([lt_decl_dict], [$2],
374
[tagged?], [m4_ifval([$5], [yes], [no])])])
378
# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
379
# --------------------------------------------------------
380
m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
383
# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
384
# ------------------------------------------------
385
m4_define([lt_decl_tag_varnames],
386
[_lt_decl_filter([tagged?], [yes], $@)])
389
# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
390
# ---------------------------------------------------------
391
m4_define([_lt_decl_filter],
393
[0], [m4_fatal([$0: too few arguments: $#])],
394
[1], [m4_fatal([$0: too few arguments: $#: $1])],
395
[2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
396
[3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
397
[lt_dict_filter([lt_decl_dict], $@)])[]dnl
401
# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
402
# --------------------------------------------------
403
m4_define([lt_decl_quote_varnames],
404
[_lt_decl_filter([value], [1], $@)])
407
# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
408
# ---------------------------------------------------
409
m4_define([lt_decl_dquote_varnames],
410
[_lt_decl_filter([value], [2], $@)])
413
# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
414
# ---------------------------------------------------
415
m4_define([lt_decl_varnames_tagged],
416
[m4_assert([$# <= 2])dnl
417
_$0(m4_quote(m4_default([$1], [[, ]])),
418
m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
419
m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
420
m4_define([_lt_decl_varnames_tagged],
421
[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
424
# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
425
# ------------------------------------------------
426
m4_define([lt_decl_all_varnames],
427
[_$0(m4_quote(m4_default([$1], [[, ]])),
429
m4_quote(lt_decl_varnames),
430
m4_quote(m4_shift($@))))[]dnl
432
m4_define([_lt_decl_all_varnames],
433
[lt_join($@, lt_decl_varnames_tagged([$1],
434
lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
438
# _LT_CONFIG_STATUS_DECLARE([VARNAME])
439
# ------------------------------------
440
# Quote a variable value, and forward it to `config.status' so that its
441
# declaration there will have the same value as in `configure'. VARNAME
442
# must have a single quote delimited value for this to work.
443
m4_define([_LT_CONFIG_STATUS_DECLARE],
444
[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
447
# _LT_CONFIG_STATUS_DECLARATIONS
448
# ------------------------------
449
# We delimit libtool config variables with single quotes, so when
450
# we write them to config.status, we have to be sure to quote all
451
# embedded single quotes properly. In configure, this macro expands
452
# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
454
# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
455
m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
456
[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
457
[m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
462
# Output comment and list of tags supported by the script
463
m4_defun([_LT_LIBTOOL_TAGS],
464
[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
465
available_tags="_LT_TAGS"dnl
469
# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
470
# -----------------------------------
471
# Extract the dictionary values for VARNAME (optionally with TAG) and
472
# expand to a commented shell variable setting:
474
# # Some comment about what VAR is for.
475
# visible_name=$lt_internal_name
476
m4_define([_LT_LIBTOOL_DECLARE],
477
[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
478
[description])))[]dnl
479
m4_pushdef([_libtool_name],
480
m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
481
m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
482
[0], [_libtool_name=[$]$1],
483
[1], [_libtool_name=$lt_[]$1],
484
[2], [_libtool_name=$lt_[]$1],
485
[_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
486
m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
490
# _LT_LIBTOOL_CONFIG_VARS
491
# -----------------------
492
# Produce commented declarations of non-tagged libtool config variables
493
# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
494
# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
495
# section) are produced by _LT_LIBTOOL_TAG_VARS.
496
m4_defun([_LT_LIBTOOL_CONFIG_VARS],
497
[m4_foreach([_lt_var],
498
m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
499
[m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
502
# _LT_LIBTOOL_TAG_VARS(TAG)
503
# -------------------------
504
m4_define([_LT_LIBTOOL_TAG_VARS],
505
[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
506
[m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
509
# _LT_TAGVAR(VARNAME, [TAGNAME])
510
# ------------------------------
511
m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
514
# _LT_CONFIG_COMMANDS
515
# -------------------
516
# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
517
# variables for single and double quote escaping we saved from calls
518
# to _LT_DECL, we can put quote escaped variables declarations
519
# into `config.status', and then the shell code to quote escape them in
520
# for loops in `config.status'. Finally, any additional code accumulated
521
# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
522
m4_defun([_LT_CONFIG_COMMANDS],
523
[AC_PROVIDE_IFELSE([LT_OUTPUT],
524
dnl If the libtool generation code has been placed in $CONFIG_LT,
525
dnl instead of duplicating it all over again into config.status,
526
dnl then we will have config.status run $CONFIG_LT later, so it
527
dnl needs to know what name is stored there:
528
[AC_CONFIG_COMMANDS([libtool],
529
[$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
530
dnl If the libtool generation code is destined for config.status,
531
dnl expand the accumulated commands and init code now:
532
[AC_CONFIG_COMMANDS([libtool],
533
[_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
534
])#_LT_CONFIG_COMMANDS
538
m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
541
# The HP-UX ksh and POSIX shell print the target directory to stdout
543
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
545
sed_quote_subst='$sed_quote_subst'
546
double_quote_subst='$double_quote_subst'
547
delay_variable_subst='$delay_variable_subst'
548
_LT_CONFIG_STATUS_DECLARATIONS
551
compiler='$compiler_DEFAULT'
553
# A function that is used when there is no print builtin or printf.
554
func_fallback_echo ()
556
eval 'cat <<_LTECHO_EOF
561
# Quote evaled strings.
562
for var in lt_decl_all_varnames([[ \
563
]], lt_decl_quote_varnames); do
564
case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
565
*[[\\\\\\\`\\"\\\$]]*)
566
eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
569
eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
574
# Double-quote double-evaled strings.
575
for var in lt_decl_all_varnames([[ \
576
]], lt_decl_dquote_varnames); do
577
case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
578
*[[\\\\\\\`\\"\\\$]]*)
579
eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
582
eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
587
_LT_OUTPUT_LIBTOOL_INIT
590
# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
591
# ------------------------------------
592
# Generate a child script FILE with all initialization necessary to
593
# reuse the environment learned by the parent script, and make the
594
# file executable. If COMMENT is supplied, it is inserted after the
595
# `#!' sequence but before initialization text begins. After this
596
# macro, additional text can be appended to FILE to form the body of
597
# the child script. The macro ends with non-zero status if the
598
# file could not be fully written (such as if the disk is full).
599
m4_ifdef([AS_INIT_GENERATED],
600
[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
601
[m4_defun([_LT_GENERATED_FILE_INIT],
602
[m4_require([AS_PREPARE])]dnl
603
[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
605
cat >$1 <<_ASEOF || lt_write_fail=1
607
# Generated by $as_me.
609
SHELL=\${CONFIG_SHELL-$SHELL}
612
cat >>$1 <<\_ASEOF || lt_write_fail=1
615
exec AS_MESSAGE_FD>&1
617
test $lt_write_fail = 0 && chmod +x $1[]dnl
618
m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
622
# This macro allows early generation of the libtool script (before
623
# AC_OUTPUT is called), incase it is used in configure for compilation
625
AC_DEFUN([LT_OUTPUT],
626
[: ${CONFIG_LT=./config.lt}
627
AC_MSG_NOTICE([creating $CONFIG_LT])
628
_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
629
[# Run this file to recreate a libtool stub with the current configuration.])
631
cat >>"$CONFIG_LT" <<\_LTEOF
633
exec AS_MESSAGE_LOG_FD>>config.log
636
AS_BOX([Running $as_me.])
637
} >&AS_MESSAGE_LOG_FD
640
\`$as_me' creates a local libtool stub from the current configuration,
641
for use in further configure time tests before the real libtool is
644
Usage: $[0] [[OPTIONS]]
646
-h, --help print this help, then exit
647
-V, --version print version number, then exit
648
-q, --quiet do not print progress messages
649
-d, --debug don't remove temporary files
651
Report bugs to <bug-libtool@gnu.org>."
654
m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
655
m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
656
configured by $[0], generated by m4_PACKAGE_STRING.
658
Copyright (C) 2011 Free Software Foundation, Inc.
659
This config.lt script is free software; the Free Software Foundation
660
gives unlimited permision to copy, distribute and modify it."
665
--version | --v* | -V )
666
echo "$lt_cl_version"; exit 0 ;;
668
echo "$lt_cl_help"; exit 0 ;;
669
--debug | --d* | -d )
671
--quiet | --q* | --silent | --s* | -q )
674
-*) AC_MSG_ERROR([unrecognized option: $[1]
675
Try \`$[0] --help' for more information.]) ;;
677
*) AC_MSG_ERROR([unrecognized argument: $[1]
678
Try \`$[0] --help' for more information.]) ;;
683
if $lt_cl_silent; then
684
exec AS_MESSAGE_FD>/dev/null
688
cat >>"$CONFIG_LT" <<_LTEOF
689
_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
692
cat >>"$CONFIG_LT" <<\_LTEOF
693
AC_MSG_NOTICE([creating $ofile])
694
_LT_OUTPUT_LIBTOOL_COMMANDS
697
chmod +x "$CONFIG_LT"
699
# configure is writing to config.log, but config.lt does its own redirection,
700
# appending to config.log, which fails on DOS, as config.log is still kept
701
# open by configure. Here we exec the FD to /dev/null, effectively closing
702
# config.log, so it can be properly (re)opened and appended to by config.lt.
704
test "$silent" = yes &&
705
lt_config_lt_args="$lt_config_lt_args --quiet"
706
exec AS_MESSAGE_LOG_FD>/dev/null
707
$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
708
exec AS_MESSAGE_LOG_FD>>config.log
709
$lt_cl_success || AS_EXIT(1)
715
# If TAG is the built-in tag, create an initial libtool script with a
716
# default configuration from the untagged config vars. Otherwise add code
717
# to config.status for appending the configuration named by TAG from the
718
# matching tagged config vars.
719
m4_defun([_LT_CONFIG],
720
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
721
_LT_CONFIG_SAVE_COMMANDS([
722
m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
723
m4_if(_LT_TAG, [C], [
724
# See if we are running on zsh, and set the options which allow our
725
# commands through without removal of \ escapes.
726
if test -n "${ZSH_VERSION+set}" ; then
731
trap "$RM \"$cfgfile\"; exit 1" 1 2 15
734
cat <<_LT_EOF >> "$cfgfile"
737
# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
738
# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
739
# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
740
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
745
# ### BEGIN LIBTOOL CONFIG
746
_LT_LIBTOOL_CONFIG_VARS
748
# ### END LIBTOOL CONFIG
754
cat <<\_LT_EOF >> "$cfgfile"
755
# AIX sometimes has problems with the GCC collect2 program. For some
756
# reason, if we set the COLLECT_NAMES environment variable, the problems
757
# vanish in a puff of smoke.
758
if test "X${COLLECT_NAMES+set}" != Xset; then
768
# We use sed instead of cat because bash on DJGPP gets confused if
769
# if finds mixed CR/LF and LF-only lines. Since sed operates in
770
# text mode, it properly converts lines to CR/LF. This bash problem
771
# is reportedly fixed, but why not run on old versions too?
772
sed '$q' "$ltmain" >> "$cfgfile" \
773
|| (rm -f "$cfgfile"; exit 1)
775
_LT_PROG_REPLACE_SHELLFNS
777
mv -f "$cfgfile" "$ofile" ||
778
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
781
[cat <<_LT_EOF >> "$ofile"
783
dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
784
dnl in a comment (ie after a #).
785
# ### BEGIN LIBTOOL TAG CONFIG: $1
786
_LT_LIBTOOL_TAG_VARS(_LT_TAG)
787
# ### END LIBTOOL TAG CONFIG: $1
794
TIMESTAMP='$TIMESTAMP'
797
])dnl /_LT_CONFIG_SAVE_COMMANDS
801
# LT_SUPPORTED_TAG(TAG)
802
# ---------------------
803
# Trace this macro to discover what tags are supported by the libtool
804
# --tag option, using:
805
# autoconf --trace 'LT_SUPPORTED_TAG:$1'
806
AC_DEFUN([LT_SUPPORTED_TAG], [])
809
# C support is built-in for now
810
m4_define([_LT_LANG_C_enabled], [])
811
m4_define([_LT_TAGS], [])
816
# Enable libtool support for the given language if not already enabled.
818
[AC_BEFORE([$0], [LT_OUTPUT])dnl
821
[C++], [_LT_LANG(CXX)],
822
[Go], [_LT_LANG(GO)],
823
[Java], [_LT_LANG(GCJ)],
824
[Fortran 77], [_LT_LANG(F77)],
825
[Fortran], [_LT_LANG(FC)],
826
[Windows Resource], [_LT_LANG(RC)],
827
[m4_ifdef([_LT_LANG_]$1[_CONFIG],
829
[m4_fatal([$0: unsupported language: "$1"])])])dnl
836
[m4_ifdef([_LT_LANG_]$1[_enabled], [],
837
[LT_SUPPORTED_TAG([$1])dnl
838
m4_append([_LT_TAGS], [$1 ])dnl
839
m4_define([_LT_LANG_]$1[_enabled], [])dnl
840
_LT_LANG_$1_CONFIG($1)])dnl
844
m4_ifndef([AC_PROG_GO], [
845
# NOTE: This macro has been submitted for inclusion into #
846
# GNU Autoconf as AC_PROG_GO. When it is available in #
847
# a released version of Autoconf we should remove this #
848
# macro and use it instead. #
849
m4_defun([AC_PROG_GO],
851
AC_ARG_VAR([GOC], [Go compiler command])dnl
852
AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
853
_AC_ARG_VAR_LDFLAGS()dnl
854
AC_CHECK_TOOL(GOC, gccgo)
855
if test -z "$GOC"; then
856
if test -n "$ac_tool_prefix"; then
857
AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
860
if test -z "$GOC"; then
861
AC_CHECK_PROG(GOC, gccgo, gccgo, false)
867
# _LT_LANG_DEFAULT_CONFIG
868
# -----------------------
869
m4_defun([_LT_LANG_DEFAULT_CONFIG],
870
[AC_PROVIDE_IFELSE([AC_PROG_CXX],
872
[m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
874
AC_PROVIDE_IFELSE([AC_PROG_F77],
876
[m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
878
AC_PROVIDE_IFELSE([AC_PROG_FC],
880
[m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
882
dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
883
dnl pulling things in needlessly.
884
AC_PROVIDE_IFELSE([AC_PROG_GCJ],
886
[AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
888
[AC_PROVIDE_IFELSE([LT_PROG_GCJ],
890
[m4_ifdef([AC_PROG_GCJ],
891
[m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
892
m4_ifdef([A][M_PROG_GCJ],
893
[m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
894
m4_ifdef([LT_PROG_GCJ],
895
[m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
897
AC_PROVIDE_IFELSE([AC_PROG_GO],
899
[m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
901
AC_PROVIDE_IFELSE([LT_PROG_RC],
903
[m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
904
])# _LT_LANG_DEFAULT_CONFIG
907
AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
908
AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
909
AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
910
AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
911
AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
912
dnl aclocal-1.4 backwards compatibility:
913
dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
914
dnl AC_DEFUN([AC_LIBTOOL_F77], [])
915
dnl AC_DEFUN([AC_LIBTOOL_FC], [])
916
dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
917
dnl AC_DEFUN([AC_LIBTOOL_RC], [])
922
m4_defun([_LT_TAG_COMPILER],
923
[AC_REQUIRE([AC_PROG_CC])dnl
925
_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
926
_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
927
_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
928
_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
930
# If no C compiler was specified, use CC.
933
# If no C compiler flags were specified, use CFLAGS.
934
LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
936
# Allow CC to be a program name with arguments.
941
# _LT_COMPILER_BOILERPLATE
942
# ------------------------
943
# Check for compiler boilerplate output or warnings with
944
# the simple compiler test code.
945
m4_defun([_LT_COMPILER_BOILERPLATE],
946
[m4_require([_LT_DECL_SED])dnl
947
ac_outfile=conftest.$ac_objext
948
echo "$lt_simple_compile_test_code" >conftest.$ac_ext
949
eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
950
_lt_compiler_boilerplate=`cat conftest.err`
952
])# _LT_COMPILER_BOILERPLATE
955
# _LT_LINKER_BOILERPLATE
956
# ----------------------
957
# Check for linker boilerplate output or warnings with
958
# the simple link test code.
959
m4_defun([_LT_LINKER_BOILERPLATE],
960
[m4_require([_LT_DECL_SED])dnl
961
ac_outfile=conftest.$ac_objext
962
echo "$lt_simple_link_test_code" >conftest.$ac_ext
963
eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
964
_lt_linker_boilerplate=`cat conftest.err`
966
])# _LT_LINKER_BOILERPLATE
968
# _LT_REQUIRED_DARWIN_CHECKS
969
# -------------------------
970
m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
973
AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
974
AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
975
AC_CHECK_TOOL([LIPO], [lipo], [:])
976
AC_CHECK_TOOL([OTOOL], [otool], [:])
977
AC_CHECK_TOOL([OTOOL64], [otool64], [:])
978
_LT_DECL([], [DSYMUTIL], [1],
979
[Tool to manipulate archived DWARF debug symbol files on Mac OS X])
980
_LT_DECL([], [NMEDIT], [1],
981
[Tool to change global to local symbols on Mac OS X])
982
_LT_DECL([], [LIPO], [1],
983
[Tool to manipulate fat objects and archives on Mac OS X])
984
_LT_DECL([], [OTOOL], [1],
985
[ldd/readelf like tool for Mach-O binaries on Mac OS X])
986
_LT_DECL([], [OTOOL64], [1],
987
[ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
989
AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
990
[lt_cv_apple_cc_single_mod=no
991
if test -z "${LT_MULTI_MODULE}"; then
992
# By default we will add the -single_module flag. You can override
993
# by either setting the environment variable LT_MULTI_MODULE
994
# non-empty at configure time, or by adding -multi_module to the
996
rm -rf libconftest.dylib*
997
echo "int foo(void){return 1;}" > conftest.c
998
echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
999
-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1000
$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1001
-dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1003
# If there is a non-empty error log, and "single_module"
1004
# appears in it, assume the flag caused a linker warning
1005
if test -s conftest.err && $GREP single_module conftest.err; then
1006
cat conftest.err >&AS_MESSAGE_LOG_FD
1007
# Otherwise, if the output was created with a 0 exit code from
1008
# the compiler, it worked.
1009
elif test -f libconftest.dylib && test $_lt_result -eq 0; then
1010
lt_cv_apple_cc_single_mod=yes
1012
cat conftest.err >&AS_MESSAGE_LOG_FD
1014
rm -rf libconftest.dylib*
1018
AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1019
[lt_cv_ld_exported_symbols_list],
1020
[lt_cv_ld_exported_symbols_list=no
1021
save_LDFLAGS=$LDFLAGS
1022
echo "_main" > conftest.sym
1023
LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1024
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1025
[lt_cv_ld_exported_symbols_list=yes],
1026
[lt_cv_ld_exported_symbols_list=no])
1027
LDFLAGS="$save_LDFLAGS"
1030
AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1031
[lt_cv_ld_force_load=no
1032
cat > conftest.c << _LT_EOF
1033
int forced_loaded() { return 2;}
1035
echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1036
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1037
echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1038
$AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1039
echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1040
$RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1041
cat > conftest.c << _LT_EOF
1042
int main() { return 0;}
1044
echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1045
$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1047
if test -s conftest.err && $GREP force_load conftest.err; then
1048
cat conftest.err >&AS_MESSAGE_LOG_FD
1049
elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
1050
lt_cv_ld_force_load=yes
1052
cat conftest.err >&AS_MESSAGE_LOG_FD
1054
rm -f conftest.err libconftest.a conftest conftest.c
1055
rm -rf conftest.dSYM
1058
rhapsody* | darwin1.[[012]])
1059
_lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
1061
_lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1062
darwin*) # darwin 5.x on
1063
# if running on 10.5 or later, the deployment target defaults
1064
# to the OS version, if on x86, and 10.4, the deployment
1065
# target defaults to 10.4. Don't you love it?
1066
case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1067
10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1068
_lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1070
_lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1072
_lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1076
if test "$lt_cv_apple_cc_single_mod" = "yes"; then
1077
_lt_dar_single_mod='$single_module'
1079
if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
1080
_lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
1082
_lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
1084
if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
1085
_lt_dsymutil='~$DSYMUTIL $lib || :'
1094
# _LT_DARWIN_LINKER_FEATURES([TAG])
1095
# ---------------------------------
1096
# Checks for linker and compiler features on darwin
1097
m4_defun([_LT_DARWIN_LINKER_FEATURES],
1099
m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1100
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
1101
_LT_TAGVAR(hardcode_direct, $1)=no
1102
_LT_TAGVAR(hardcode_automatic, $1)=yes
1103
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1104
if test "$lt_cv_ld_force_load" = "yes"; then
1105
_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\"`'
1106
m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1107
[FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1109
_LT_TAGVAR(whole_archive_flag_spec, $1)=''
1111
_LT_TAGVAR(link_all_deplibs, $1)=yes
1112
_LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1113
case $cc_basename in
1114
ifort*) _lt_dar_can_shared=yes ;;
1115
*) _lt_dar_can_shared=$GCC ;;
1117
if test "$_lt_dar_can_shared" = "yes"; then
1118
output_verbose_link_cmd=func_echo_all
1119
_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}"
1120
_LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1121
_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}"
1122
_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}"
1124
[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1125
_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}"
1126
_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}"
1130
_LT_TAGVAR(ld_shlibs, $1)=no
1134
# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1135
# ----------------------------------
1136
# Links a minimal program and checks the executable
1137
# for the system default hardcoded library path. In most cases,
1138
# this is /usr/lib:/lib, but when the MPI compilers are used
1139
# the location of the communication and MPI libs are included too.
1140
# If we don't find anything, use the default library path according
1141
# to the aix ld manual.
1142
# Store the results from the different compilers for each TAGNAME.
1143
# Allow to override them for all tags through lt_cv_aix_libpath.
1144
m4_defun([_LT_SYS_MODULE_PATH_AIX],
1145
[m4_require([_LT_DECL_SED])dnl
1146
if test "${lt_cv_aix_libpath+set}" = set; then
1147
aix_libpath=$lt_cv_aix_libpath
1149
AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1150
[AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1151
lt_aix_libpath_sed='[
1152
/Import File Strings/,/^$/ {
1154
s/^0 *\([^ ]*\) *$/\1/
1158
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1159
# Check for a 64-bit object if we didn't find anything.
1160
if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1161
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1163
if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1164
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1167
aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1169
])# _LT_SYS_MODULE_PATH_AIX
1172
# _LT_SHELL_INIT(ARG)
1173
# -------------------
1174
m4_define([_LT_SHELL_INIT],
1175
[m4_divert_text([M4SH-INIT], [$1
1176
])])# _LT_SHELL_INIT
1180
# _LT_PROG_ECHO_BACKSLASH
1181
# -----------------------
1182
# Find how we can fake an echo command that does not interpret backslash.
1183
# In particular, with Autoconf 2.60 or later we add some code to the start
1184
# of the generated configure script which will find a shell with a builtin
1185
# printf (which we can use as an echo command).
1186
m4_defun([_LT_PROG_ECHO_BACKSLASH],
1187
[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1188
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1189
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1191
AC_MSG_CHECKING([how to print strings])
1192
# Test print first, because it will be a builtin if present.
1193
if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1194
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1196
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1199
# Use this function as a fallback that always works.
1200
func_fallback_echo ()
1202
eval 'cat <<_LTECHO_EOF
1206
ECHO='func_fallback_echo'
1209
# func_echo_all arg...
1210
# Invoke $ECHO with all args, space-separated.
1217
printf*) AC_MSG_RESULT([printf]) ;;
1218
print*) AC_MSG_RESULT([print -r]) ;;
1219
*) AC_MSG_RESULT([cat]) ;;
1222
m4_ifdef([_AS_DETECT_SUGGESTED],
1223
[_AS_DETECT_SUGGESTED([
1224
test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1225
ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1226
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1227
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1228
PATH=/empty FPATH=/empty; export PATH FPATH
1229
test "X`printf %s $ECHO`" = "X$ECHO" \
1230
|| test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1232
_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1233
_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1234
])# _LT_PROG_ECHO_BACKSLASH
1239
AC_DEFUN([_LT_WITH_SYSROOT],
1240
[AC_MSG_CHECKING([for sysroot])
1241
AC_ARG_WITH([sysroot],
1242
[ --with-sysroot[=DIR] Search for dependent libraries within DIR
1243
(or the compiler's sysroot if not specified).],
1244
[], [with_sysroot=no])
1246
dnl lt_sysroot will always be passed unquoted. We quote it here
1247
dnl in case the user passed a directory name.
1249
case ${with_sysroot} in #(
1251
if test "$GCC" = yes; then
1252
lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1256
lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1261
AC_MSG_RESULT([${with_sysroot}])
1262
AC_MSG_ERROR([The sysroot must be an absolute path.])
1266
AC_MSG_RESULT([${lt_sysroot:-no}])
1267
_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1268
[dependent libraries, and in which our libraries should be installed.])])
1272
m4_defun([_LT_ENABLE_LOCK],
1273
[AC_ARG_ENABLE([libtool-lock],
1274
[AS_HELP_STRING([--disable-libtool-lock],
1275
[avoid locking (might break parallel builds)])])
1276
test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1278
# Some flags need to be propagated to the compiler or linker for good
1282
# Find out which ABI we are using.
1283
echo 'int i;' > conftest.$ac_ext
1284
if AC_TRY_EVAL(ac_compile); then
1285
case `/usr/bin/file conftest.$ac_objext` in
1297
# Find out which ABI we are using.
1298
echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1299
if AC_TRY_EVAL(ac_compile); then
1300
if test "$lt_cv_prog_gnu_ld" = yes; then
1301
case `/usr/bin/file conftest.$ac_objext` in
1303
LD="${LD-ld} -melf32bsmip"
1306
LD="${LD-ld} -melf32bmipn32"
1309
LD="${LD-ld} -melf64bmip"
1313
case `/usr/bin/file conftest.$ac_objext` in
1329
x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1330
s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1331
# Find out which ABI we are using.
1332
echo 'int i;' > conftest.$ac_ext
1333
if AC_TRY_EVAL(ac_compile); then
1334
case `/usr/bin/file conftest.o` in
1337
x86_64-*kfreebsd*-gnu)
1338
LD="${LD-ld} -m elf_i386_fbsd"
1341
LD="${LD-ld} -m elf_i386"
1343
ppc64-*linux*|powerpc64-*linux*)
1344
LD="${LD-ld} -m elf32ppclinux"
1347
LD="${LD-ld} -m elf_s390"
1350
LD="${LD-ld} -m elf32_sparc"
1356
x86_64-*kfreebsd*-gnu)
1357
LD="${LD-ld} -m elf_x86_64_fbsd"
1360
LD="${LD-ld} -m elf_x86_64"
1362
ppc*-*linux*|powerpc*-*linux*)
1363
LD="${LD-ld} -m elf64ppc"
1365
s390*-*linux*|s390*-*tpf*)
1366
LD="${LD-ld} -m elf64_s390"
1369
LD="${LD-ld} -m elf64_sparc"
1379
# On SCO OpenServer 5, we need -belf to get full-featured binaries.
1380
SAVE_CFLAGS="$CFLAGS"
1381
CFLAGS="$CFLAGS -belf"
1382
AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1384
AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1386
if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1387
# this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1388
CFLAGS="$SAVE_CFLAGS"
1392
# Find out which ABI we are using.
1393
echo 'int i;' > conftest.$ac_ext
1394
if AC_TRY_EVAL(ac_compile); then
1395
case `/usr/bin/file conftest.o` in
1397
case $lt_cv_prog_gnu_ld in
1401
LD="${LD-ld} -m elf_x86_64"
1404
LD="${LD-ld} -m elf64_sparc"
1407
# GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1408
if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1413
if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1425
need_locks="$enable_libtool_lock"
1431
m4_defun([_LT_PROG_AR],
1432
[AC_CHECK_TOOLS(AR, [ar], false)
1435
_LT_DECL([], [AR], [1], [The archiver])
1436
_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1438
AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1439
[lt_cv_ar_at_file=no
1440
AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1441
[echo conftest.$ac_objext > conftest.lst
1442
lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1443
AC_TRY_EVAL([lt_ar_try])
1444
if test "$ac_status" -eq 0; then
1445
# Ensure the archiver fails upon bogus file names.
1446
rm -f conftest.$ac_objext libconftest.a
1447
AC_TRY_EVAL([lt_ar_try])
1448
if test "$ac_status" -ne 0; then
1452
rm -f conftest.* libconftest.a
1456
if test "x$lt_cv_ar_at_file" = xno; then
1459
archiver_list_spec=$lt_cv_ar_at_file
1461
_LT_DECL([], [archiver_list_spec], [1],
1462
[How to feed a file listing to the archiver])
1466
# _LT_CMD_OLD_ARCHIVE
1467
# -------------------
1468
m4_defun([_LT_CMD_OLD_ARCHIVE],
1471
AC_CHECK_TOOL(STRIP, strip, :)
1472
test -z "$STRIP" && STRIP=:
1473
_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1475
AC_CHECK_TOOL(RANLIB, ranlib, :)
1476
test -z "$RANLIB" && RANLIB=:
1477
_LT_DECL([], [RANLIB], [1],
1478
[Commands used to install an old-style archive])
1480
# Determine commands to create old-style static archives.
1481
old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1482
old_postinstall_cmds='chmod 644 $oldlib'
1483
old_postuninstall_cmds=
1485
if test -n "$RANLIB"; then
1488
old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
1491
old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
1494
old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
1499
lock_old_archive_extraction=yes ;;
1501
lock_old_archive_extraction=no ;;
1503
_LT_DECL([], [old_postinstall_cmds], [2])
1504
_LT_DECL([], [old_postuninstall_cmds], [2])
1505
_LT_TAGDECL([], [old_archive_cmds], [2],
1506
[Commands used to build an old-style archive])
1507
_LT_DECL([], [lock_old_archive_extraction], [0],
1508
[Whether to use a lock for old archive extraction])
1509
])# _LT_CMD_OLD_ARCHIVE
1512
# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1513
# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1514
# ----------------------------------------------------------------
1515
# Check whether the given compiler option works
1516
AC_DEFUN([_LT_COMPILER_OPTION],
1517
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1518
m4_require([_LT_DECL_SED])dnl
1519
AC_CACHE_CHECK([$1], [$2],
1521
m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1522
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1523
lt_compiler_flag="$3"
1524
# Insert the option either (1) after the last *FLAGS variable, or
1525
# (2) before a word containing "conftest.", or (3) at the end.
1526
# Note that $ac_compile itself does not contain backslashes and begins
1527
# with a dollar sign (not a hyphen), so the echo should work correctly.
1528
# The option is referenced via a variable to avoid confusing sed.
1529
lt_compile=`echo "$ac_compile" | $SED \
1530
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1531
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1532
-e 's:$: $lt_compiler_flag:'`
1533
(eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1534
(eval "$lt_compile" 2>conftest.err)
1536
cat conftest.err >&AS_MESSAGE_LOG_FD
1537
echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1538
if (exit $ac_status) && test -s "$ac_outfile"; then
1539
# The compiler can only warn and ignore the option if not recognized
1540
# So say no if there are warnings other than the usual output.
1541
$ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1542
$SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1543
if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1550
if test x"[$]$2" = xyes; then
1551
m4_if([$5], , :, [$5])
1553
m4_if([$6], , :, [$6])
1555
])# _LT_COMPILER_OPTION
1558
AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1559
dnl aclocal-1.4 backwards compatibility:
1560
dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1563
# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1564
# [ACTION-SUCCESS], [ACTION-FAILURE])
1565
# ----------------------------------------------------
1566
# Check whether the given linker option works
1567
AC_DEFUN([_LT_LINKER_OPTION],
1568
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1569
m4_require([_LT_DECL_SED])dnl
1570
AC_CACHE_CHECK([$1], [$2],
1572
save_LDFLAGS="$LDFLAGS"
1573
LDFLAGS="$LDFLAGS $3"
1574
echo "$lt_simple_link_test_code" > conftest.$ac_ext
1575
if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1576
# The linker can only warn and ignore the option if not recognized
1577
# So say no if there are warnings
1578
if test -s conftest.err; then
1579
# Append any errors to the config.log.
1580
cat conftest.err 1>&AS_MESSAGE_LOG_FD
1581
$ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1582
$SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1583
if diff conftest.exp conftest.er2 >/dev/null; then
1591
LDFLAGS="$save_LDFLAGS"
1594
if test x"[$]$2" = xyes; then
1595
m4_if([$4], , :, [$4])
1597
m4_if([$5], , :, [$5])
1599
])# _LT_LINKER_OPTION
1602
AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1603
dnl aclocal-1.4 backwards compatibility:
1604
dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1609
AC_DEFUN([LT_CMD_MAX_LEN],
1610
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1611
# find the maximum length of command line arguments
1612
AC_MSG_CHECKING([the maximum length of command line arguments])
1613
AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1619
# On DJGPP, this test can blow up pretty badly due to problems in libc
1620
# (any single argument exceeding 2000 bytes causes a buffer overrun
1621
# during glob expansion). Even if it were fixed, the result of this
1622
# check would be larger than it should be.
1623
lt_cv_sys_max_cmd_len=12288; # 12K is about right
1627
# Under GNU Hurd, this test is not required because there is
1628
# no limit to the length of command line arguments.
1629
# Libtool will interpret -1 as no limit whatsoever
1630
lt_cv_sys_max_cmd_len=-1;
1633
cygwin* | mingw* | cegcc*)
1634
# On Win9x/ME, this test blows up -- it succeeds, but takes
1635
# about 5 minutes as the teststring grows exponentially.
1636
# Worse, since 9x/ME are not pre-emptively multitasking,
1637
# you end up with a "frozen" computer, even though with patience
1638
# the test eventually succeeds (with a max line length of 256k).
1639
# Instead, let's just punt: use the minimum linelength reported by
1640
# all of the supported platforms: 8192 (on NT/2K/XP).
1641
lt_cv_sys_max_cmd_len=8192;
1645
# On MiNT this can take a long time and run out of memory.
1646
lt_cv_sys_max_cmd_len=8192;
1650
# On AmigaOS with pdksh, this test takes hours, literally.
1651
# So we just punt and use a minimum line length of 8192.
1652
lt_cv_sys_max_cmd_len=8192;
1655
netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1656
# This has been around since 386BSD, at least. Likely further.
1657
if test -x /sbin/sysctl; then
1658
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1659
elif test -x /usr/sbin/sysctl; then
1660
lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1662
lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1664
# And add a safety zone
1665
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1666
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1670
# We know the value 262144 and hardcode it with a safety zone (like BSD)
1671
lt_cv_sys_max_cmd_len=196608
1675
# The test takes a long time on OS/2.
1676
lt_cv_sys_max_cmd_len=8192
1680
# Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1681
# due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1682
# nice to cause kernel panics so lets avoid the loop below.
1683
# First set a reasonable default.
1684
lt_cv_sys_max_cmd_len=16384
1686
if test -x /sbin/sysconfig; then
1687
case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1688
*1*) lt_cv_sys_max_cmd_len=-1 ;;
1693
lt_cv_sys_max_cmd_len=102400
1695
sysv5* | sco5v6* | sysv4.2uw2*)
1696
kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1697
if test -n "$kargmax"; then
1698
lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1700
lt_cv_sys_max_cmd_len=32768
1704
lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1705
if test -n "$lt_cv_sys_max_cmd_len"; then
1706
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1707
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1709
# Make teststring a little bigger before we do anything with it.
1710
# a 1K string should be a reasonable start.
1711
for i in 1 2 3 4 5 6 7 8 ; do
1712
teststring=$teststring$teststring
1714
SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1715
# If test is not a shell built-in, we'll probably end up computing a
1716
# maximum length that is only half of the actual maximum length, but
1718
while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
1719
= "X$teststring$teststring"; } >/dev/null 2>&1 &&
1720
test $i != 17 # 1/2 MB should be enough
1723
teststring=$teststring$teststring
1725
# Only check the string length outside the loop.
1726
lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1728
# Add a significant safety factor because C++ compilers can tack on
1729
# massive amounts of additional arguments before passing them to the
1730
# linker. It appears as though 1/2 is a usable value.
1731
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1736
if test -n $lt_cv_sys_max_cmd_len ; then
1737
AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1741
max_cmd_len=$lt_cv_sys_max_cmd_len
1742
_LT_DECL([], [max_cmd_len], [0],
1743
[What is the maximum length of a command?])
1747
AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1748
dnl aclocal-1.4 backwards compatibility:
1749
dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1754
m4_defun([_LT_HEADER_DLFCN],
1755
[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1756
])# _LT_HEADER_DLFCN
1759
# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1760
# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1761
# ----------------------------------------------------------------
1762
m4_defun([_LT_TRY_DLOPEN_SELF],
1763
[m4_require([_LT_HEADER_DLFCN])dnl
1764
if test "$cross_compiling" = yes; then :
1767
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1768
lt_status=$lt_dlunknown
1769
cat > conftest.$ac_ext <<_LT_EOF
1770
[#line $LINENO "configure"
1771
#include "confdefs.h"
1780
# define LT_DLGLOBAL RTLD_GLOBAL
1783
# define LT_DLGLOBAL DL_GLOBAL
1785
# define LT_DLGLOBAL 0
1789
/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1790
find out it does not work in some platform. */
1791
#ifndef LT_DLLAZY_OR_NOW
1793
# define LT_DLLAZY_OR_NOW RTLD_LAZY
1796
# define LT_DLLAZY_OR_NOW DL_LAZY
1799
# define LT_DLLAZY_OR_NOW RTLD_NOW
1802
# define LT_DLLAZY_OR_NOW DL_NOW
1804
# define LT_DLLAZY_OR_NOW 0
1811
/* When -fvisbility=hidden is used, assume the code has been annotated
1812
correspondingly for the symbols needed. */
1813
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1814
int fnord () __attribute__((visibility("default")));
1817
int fnord () { return 42; }
1820
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1821
int status = $lt_dlunknown;
1825
if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1828
if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1829
else puts (dlerror ());
1831
/* dlclose (self); */
1839
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1840
(./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1843
x$lt_dlno_uscore) $1 ;;
1844
x$lt_dlneed_uscore) $2 ;;
1845
x$lt_dlunknown|x*) $3 ;;
1848
# compilation failed
1853
])# _LT_TRY_DLOPEN_SELF
1856
# LT_SYS_DLOPEN_SELF
1857
# ------------------
1858
AC_DEFUN([LT_SYS_DLOPEN_SELF],
1859
[m4_require([_LT_HEADER_DLFCN])dnl
1860
if test "x$enable_dlopen" != xyes; then
1861
enable_dlopen=unknown
1862
enable_dlopen_self=unknown
1863
enable_dlopen_self_static=unknown
1870
lt_cv_dlopen="load_add_on"
1872
lt_cv_dlopen_self=yes
1875
mingw* | pw32* | cegcc*)
1876
lt_cv_dlopen="LoadLibrary"
1881
lt_cv_dlopen="dlopen"
1886
# if libdl is installed we need to link against it
1887
AC_CHECK_LIB([dl], [dlopen],
1888
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1891
lt_cv_dlopen_self=yes
1896
AC_CHECK_FUNC([shl_load],
1897
[lt_cv_dlopen="shl_load"],
1898
[AC_CHECK_LIB([dld], [shl_load],
1899
[lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1900
[AC_CHECK_FUNC([dlopen],
1901
[lt_cv_dlopen="dlopen"],
1902
[AC_CHECK_LIB([dl], [dlopen],
1903
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1904
[AC_CHECK_LIB([svld], [dlopen],
1905
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1906
[AC_CHECK_LIB([dld], [dld_link],
1907
[lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1916
if test "x$lt_cv_dlopen" != xno; then
1922
case $lt_cv_dlopen in
1924
save_CPPFLAGS="$CPPFLAGS"
1925
test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1927
save_LDFLAGS="$LDFLAGS"
1928
wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1931
LIBS="$lt_cv_dlopen_libs $LIBS"
1933
AC_CACHE_CHECK([whether a program can dlopen itself],
1934
lt_cv_dlopen_self, [dnl
1935
_LT_TRY_DLOPEN_SELF(
1936
lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1937
lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1940
if test "x$lt_cv_dlopen_self" = xyes; then
1941
wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1942
AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1943
lt_cv_dlopen_self_static, [dnl
1944
_LT_TRY_DLOPEN_SELF(
1945
lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1946
lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1950
CPPFLAGS="$save_CPPFLAGS"
1951
LDFLAGS="$save_LDFLAGS"
1956
case $lt_cv_dlopen_self in
1957
yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1958
*) enable_dlopen_self=unknown ;;
1961
case $lt_cv_dlopen_self_static in
1962
yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1963
*) enable_dlopen_self_static=unknown ;;
1966
_LT_DECL([dlopen_support], [enable_dlopen], [0],
1967
[Whether dlopen is supported])
1968
_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1969
[Whether dlopen of programs is supported])
1970
_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1971
[Whether dlopen of statically linked programs is supported])
1972
])# LT_SYS_DLOPEN_SELF
1975
AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1976
dnl aclocal-1.4 backwards compatibility:
1977
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
1980
# _LT_COMPILER_C_O([TAGNAME])
1981
# ---------------------------
1982
# Check to see if options -c and -o are simultaneously supported by compiler.
1983
# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1984
m4_defun([_LT_COMPILER_C_O],
1985
[m4_require([_LT_DECL_SED])dnl
1986
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1987
m4_require([_LT_TAG_COMPILER])dnl
1988
AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1989
[_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1990
[_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1991
$RM -r conftest 2>/dev/null
1995
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1997
lt_compiler_flag="-o out/conftest2.$ac_objext"
1998
# Insert the option either (1) after the last *FLAGS variable, or
1999
# (2) before a word containing "conftest.", or (3) at the end.
2000
# Note that $ac_compile itself does not contain backslashes and begins
2001
# with a dollar sign (not a hyphen), so the echo should work correctly.
2002
lt_compile=`echo "$ac_compile" | $SED \
2003
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2004
-e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2005
-e 's:$: $lt_compiler_flag:'`
2006
(eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2007
(eval "$lt_compile" 2>out/conftest.err)
2009
cat out/conftest.err >&AS_MESSAGE_LOG_FD
2010
echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2011
if (exit $ac_status) && test -s out/conftest2.$ac_objext
2013
# The compiler can only warn and ignore the option if not recognized
2014
# So say no if there are warnings
2015
$ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2016
$SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2017
if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2018
_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2021
chmod u+w . 2>&AS_MESSAGE_LOG_FD
2023
# SGI C++ compiler will create directory out/ii_files/ for
2024
# template instantiation
2025
test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2026
$RM out/* && rmdir out
2031
_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2032
[Does compiler simultaneously support -c and -o options?])
2033
])# _LT_COMPILER_C_O
2036
# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2037
# ----------------------------------
2038
# Check to see if we can do hard links to lock some files if needed
2039
m4_defun([_LT_COMPILER_FILE_LOCKS],
2040
[m4_require([_LT_ENABLE_LOCK])dnl
2041
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2042
_LT_COMPILER_C_O([$1])
2044
hard_links="nottested"
2045
if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
2046
# do not overwrite the value of need_locks provided by the user
2047
AC_MSG_CHECKING([if we can lock with hard links])
2050
ln conftest.a conftest.b 2>/dev/null && hard_links=no
2052
ln conftest.a conftest.b 2>&5 || hard_links=no
2053
ln conftest.a conftest.b 2>/dev/null && hard_links=no
2054
AC_MSG_RESULT([$hard_links])
2055
if test "$hard_links" = no; then
2056
AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
2062
_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2063
])# _LT_COMPILER_FILE_LOCKS
2068
m4_defun([_LT_CHECK_OBJDIR],
2069
[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2070
[rm -f .libs 2>/dev/null
2071
mkdir .libs 2>/dev/null
2072
if test -d .libs; then
2075
# MS-DOS does not allow filenames that begin with a dot.
2078
rmdir .libs 2>/dev/null])
2079
objdir=$lt_cv_objdir
2080
_LT_DECL([], [objdir], [0],
2081
[The name of the directory that contains temporary libtool files])dnl
2082
m4_pattern_allow([LT_OBJDIR])dnl
2083
AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2084
[Define to the sub-directory in which libtool stores uninstalled libraries.])
2085
])# _LT_CHECK_OBJDIR
2088
# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2089
# --------------------------------------
2090
# Check hardcoding attributes.
2091
m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2092
[AC_MSG_CHECKING([how to hardcode library paths into programs])
2093
_LT_TAGVAR(hardcode_action, $1)=
2094
if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2095
test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2096
test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
2098
# We can hardcode non-existent directories.
2099
if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
2100
# If the only mechanism to avoid hardcoding is shlibpath_var, we
2101
# have to relink, otherwise we might link with an installed library
2102
# when we should be linking with a yet-to-be-installed one
2103
## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2104
test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
2105
# Linking always hardcodes the temporary library directory.
2106
_LT_TAGVAR(hardcode_action, $1)=relink
2108
# We can link without hardcoding, and we can hardcode nonexisting dirs.
2109
_LT_TAGVAR(hardcode_action, $1)=immediate
2112
# We cannot hardcode anything, or else we can only hardcode existing
2114
_LT_TAGVAR(hardcode_action, $1)=unsupported
2116
AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2118
if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2119
test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
2120
# Fast installation is not supported
2121
enable_fast_install=no
2122
elif test "$shlibpath_overrides_runpath" = yes ||
2123
test "$enable_shared" = no; then
2124
# Fast installation is not necessary
2125
enable_fast_install=needless
2127
_LT_TAGDECL([], [hardcode_action], [0],
2128
[How to hardcode a shared library path into an executable])
2129
])# _LT_LINKER_HARDCODE_LIBPATH
2134
m4_defun([_LT_CMD_STRIPLIB],
2135
[m4_require([_LT_DECL_EGREP])
2138
AC_MSG_CHECKING([whether stripping libraries is possible])
2139
if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2140
test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2141
test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2142
AC_MSG_RESULT([yes])
2144
# FIXME - insert some real tests, host_os isn't really good enough
2147
if test -n "$STRIP" ; then
2148
striplib="$STRIP -x"
2149
old_striplib="$STRIP -S"
2150
AC_MSG_RESULT([yes])
2160
_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2161
_LT_DECL([], [striplib], [1])
2162
])# _LT_CMD_STRIPLIB
2165
# _LT_SYS_DYNAMIC_LINKER([TAG])
2166
# -----------------------------
2167
# PORTME Fill in your ld.so characteristics
2168
m4_defun([_LT_SYS_DYNAMIC_LINKER],
2169
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2170
m4_require([_LT_DECL_EGREP])dnl
2171
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2172
m4_require([_LT_DECL_OBJDUMP])dnl
2173
m4_require([_LT_DECL_SED])dnl
2174
m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2175
AC_MSG_CHECKING([dynamic linker characteristics])
2178
if test "$GCC" = yes; then
2180
darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2181
*) lt_awk_arg="/^libraries:/" ;;
2184
mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2185
*) lt_sed_strip_eq="s,=/,/,g" ;;
2187
lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2188
case $lt_search_path_spec in
2190
# if the path contains ";" then we assume it to be the separator
2191
# otherwise default to the standard path separator (i.e. ":") - it is
2192
# assumed that no part of a normal pathname contains ";" but that should
2193
# okay in the real world where ";" in dirpaths is itself problematic.
2194
lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2197
lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2200
# Ok, now we have the path, separated by spaces, we can step through it
2201
# and add multilib dir if necessary.
2202
lt_tmp_lt_search_path_spec=
2203
lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2204
for lt_sys_path in $lt_search_path_spec; do
2205
if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2206
lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2208
test -d "$lt_sys_path" && \
2209
lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2212
lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2213
BEGIN {RS=" "; FS="/|\n";} {
2216
for (lt_i = NF; lt_i > 0; lt_i--) {
2217
if ($lt_i != "" && $lt_i != ".") {
2218
if ($lt_i == "..") {
2221
if (lt_count == 0) {
2222
lt_foo="/" $lt_i lt_foo;
2229
if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2230
if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2232
# AWK program above erroneously prepends '/' to C:/dos/paths
2235
mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2236
$SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2238
sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2240
sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2243
libname_spec='lib$name'
2251
shlibpath_overrides_runpath=unknown
2253
dynamic_linker="$host_os ld.so"
2254
sys_lib_dlsearch_path_spec="/lib /usr/lib"
2255
need_lib_prefix=unknown
2256
hardcode_into_libs=no
2258
# when you set need_version to no, make sure it does not cause -set_version
2259
# flags to be left without arguments
2260
need_version=unknown
2264
version_type=linux # correct to gnu/linux during the next big refactor
2265
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2266
shlibpath_var=LIBPATH
2268
# AIX 3 has no versioning support, so we append a major version to the name.
2269
soname_spec='${libname}${release}${shared_ext}$major'
2273
version_type=linux # correct to gnu/linux during the next big refactor
2276
hardcode_into_libs=yes
2277
if test "$host_cpu" = ia64; then
2278
# AIX 5 supports IA64
2279
library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2280
shlibpath_var=LD_LIBRARY_PATH
2282
# With GCC up to 2.95.x, collect2 would create an import file
2283
# for dependence libraries. The import file would start with
2284
# the line `#! .'. This would cause the generated library to
2285
# depend on `.', always an invalid library. This was fixed in
2286
# development snapshots of GCC prior to 3.0.
2288
aix4 | aix4.[[01]] | aix4.[[01]].*)
2289
if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2291
echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
2298
# AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2299
# soname into executable. Probably we can add versioning support to
2300
# collect2, so additional links can be useful in future.
2301
if test "$aix_use_runtimelinking" = yes; then
2302
# If using run time linking (on AIX 4.2 or later) use lib<name>.so
2303
# instead of lib<name>.a to let people know that these are not
2304
# typical AIX shared libraries.
2305
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2307
# We preserve .a as extension for shared libraries through AIX4.2
2308
# and later when we are not doing run time linking.
2309
library_names_spec='${libname}${release}.a $libname.a'
2310
soname_spec='${libname}${release}${shared_ext}$major'
2312
shlibpath_var=LIBPATH
2319
# Since July 2007 AmigaOS4 officially supports .so libraries.
2320
# When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2321
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2324
library_names_spec='$libname.ixlibrary $libname.a'
2325
# Create ${libname}_ixlibrary.a entries in /sys/libs.
2326
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'
2332
library_names_spec='${libname}${shared_ext}'
2333
dynamic_linker="$host_os ld.so"
2334
shlibpath_var=LIBRARY_PATH
2338
version_type=linux # correct to gnu/linux during the next big refactor
2340
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2341
soname_spec='${libname}${release}${shared_ext}$major'
2342
finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2343
shlibpath_var=LD_LIBRARY_PATH
2344
sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2345
sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2346
# the default ld.so.conf also contains /usr/contrib/lib and
2347
# /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2348
# libtool to hard-code these into programs
2351
cygwin* | mingw* | pw32* | cegcc*)
2352
version_type=windows
2357
case $GCC,$cc_basename in
2360
library_names_spec='$libname.dll.a'
2361
# DLL is installed to $(libdir)/../bin by postinstall_cmds
2362
postinstall_cmds='base_file=`basename \${file}`~
2363
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2364
dldir=$destdir/`dirname \$dlpath`~
2365
test -d \$dldir || mkdir -p \$dldir~
2366
$install_prog $dir/$dlname \$dldir/$dlname~
2367
chmod a+x \$dldir/$dlname~
2368
if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2369
eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2371
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2372
dlpath=$dir/\$dldll~
2374
shlibpath_overrides_runpath=yes
2378
# Cygwin DLLs use 'cyg' prefix rather than 'lib'
2379
soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2381
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2384
# MinGW DLLs use traditional 'lib' prefix
2385
soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2388
# pw32 DLLs use 'pw' prefix rather than 'lib'
2389
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2392
dynamic_linker='Win32 ld.exe'
2397
libname_spec='$name'
2398
soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2399
library_names_spec='${libname}.dll.lib'
2403
sys_lib_search_path_spec=
2409
# Let DOS variable expansion print the short 8.3 style file name.
2410
lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2411
sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2414
# Convert to MSYS style.
2415
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2418
# Convert to unix form, then to dos form, then back to unix form
2419
# but this time dos style (no spaces!) so that the unix form looks
2420
# like /cygdrive/c/PROGRA~1:/cygdr...
2421
sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2422
sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2423
sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2426
sys_lib_search_path_spec="$LIB"
2427
if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2428
# It is most probably a Windows format PATH.
2429
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2431
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2433
# FIXME: find the short name or the path components, as spaces are
2434
# common. (e.g. "Program Files" -> "PROGRA~1")
2438
# DLL is installed to $(libdir)/../bin by postinstall_cmds
2439
postinstall_cmds='base_file=`basename \${file}`~
2440
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2441
dldir=$destdir/`dirname \$dlpath`~
2442
test -d \$dldir || mkdir -p \$dldir~
2443
$install_prog $dir/$dlname \$dldir/$dlname'
2444
postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2445
dlpath=$dir/\$dldll~
2447
shlibpath_overrides_runpath=yes
2448
dynamic_linker='Win32 link.exe'
2452
# Assume MSVC wrapper
2453
library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2454
dynamic_linker='Win32 ld.exe'
2457
# FIXME: first we should search . and the directory the executable is in
2461
darwin* | rhapsody*)
2462
dynamic_linker="$host_os dyld"
2466
library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
2467
soname_spec='${libname}${release}${major}$shared_ext'
2468
shlibpath_overrides_runpath=yes
2469
shlibpath_var=DYLD_LIBRARY_PATH
2470
shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2472
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2473
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2477
version_type=linux # correct to gnu/linux during the next big refactor
2480
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2481
soname_spec='${libname}${release}${shared_ext}$major'
2482
shlibpath_var=LD_LIBRARY_PATH
2485
freebsd* | dragonfly*)
2486
# DragonFly does not have aout. When/if they implement a new
2487
# versioning mechanism, adjust this.
2488
if test -x /usr/bin/objformat; then
2489
objformat=`/usr/bin/objformat`
2492
freebsd[[23]].*) objformat=aout ;;
2496
version_type=freebsd-$objformat
2497
case $version_type in
2499
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2504
library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2508
shlibpath_var=LD_LIBRARY_PATH
2511
shlibpath_overrides_runpath=yes
2513
freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2514
shlibpath_overrides_runpath=yes
2515
hardcode_into_libs=yes
2517
freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2518
freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2519
shlibpath_overrides_runpath=no
2520
hardcode_into_libs=yes
2522
*) # from 4.6 on, and DragonFly
2523
shlibpath_overrides_runpath=yes
2524
hardcode_into_libs=yes
2530
version_type=linux # correct to gnu/linux during the next big refactor
2533
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2534
soname_spec='${libname}${release}${shared_ext}$major'
2535
shlibpath_var=LD_LIBRARY_PATH
2536
shlibpath_overrides_runpath=no
2537
hardcode_into_libs=yes
2541
version_type=linux # correct to gnu/linux during the next big refactor
2544
dynamic_linker="$host_os runtime_loader"
2545
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2546
soname_spec='${libname}${release}${shared_ext}$major'
2547
shlibpath_var=LIBRARY_PATH
2548
shlibpath_overrides_runpath=yes
2549
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2550
hardcode_into_libs=yes
2553
hpux9* | hpux10* | hpux11*)
2554
# Give a soname corresponding to the major version so that dld.sl refuses to
2555
# link against other versions.
2562
hardcode_into_libs=yes
2563
dynamic_linker="$host_os dld.so"
2564
shlibpath_var=LD_LIBRARY_PATH
2565
shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2566
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2567
soname_spec='${libname}${release}${shared_ext}$major'
2568
if test "X$HPUX_IA64_MODE" = X32; then
2569
sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2571
sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2573
sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2577
hardcode_into_libs=yes
2578
dynamic_linker="$host_os dld.sl"
2579
shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2580
shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2581
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2582
soname_spec='${libname}${release}${shared_ext}$major'
2583
sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2584
sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2588
dynamic_linker="$host_os dld.sl"
2589
shlibpath_var=SHLIB_PATH
2590
shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2591
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2592
soname_spec='${libname}${release}${shared_ext}$major'
2595
# HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2596
postinstall_cmds='chmod 555 $lib'
2597
# or fails outright, so override atomically:
2598
install_override_mode=555
2602
version_type=linux # correct to gnu/linux during the next big refactor
2605
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2606
soname_spec='${libname}${release}${shared_ext}$major'
2607
dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2608
shlibpath_var=LD_LIBRARY_PATH
2609
shlibpath_overrides_runpath=no
2610
hardcode_into_libs=yes
2613
irix5* | irix6* | nonstopux*)
2615
nonstopux*) version_type=nonstopux ;;
2617
if test "$lt_cv_prog_gnu_ld" = yes; then
2618
version_type=linux # correct to gnu/linux during the next big refactor
2625
soname_spec='${libname}${release}${shared_ext}$major'
2626
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2628
irix5* | nonstopux*)
2632
case $LD in # libtool.m4 will add one of these switches to LD
2633
*-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2634
libsuff= shlibsuff= libmagic=32-bit;;
2635
*-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2636
libsuff=32 shlibsuff=N32 libmagic=N32;;
2637
*-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2638
libsuff=64 shlibsuff=64 libmagic=64-bit;;
2639
*) libsuff= shlibsuff= libmagic=never-match;;
2643
shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2644
shlibpath_overrides_runpath=no
2645
sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2646
sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2647
hardcode_into_libs=yes
2650
# No shared lib support for Linux oldld, aout, or coff.
2651
linux*oldld* | linux*aout* | linux*coff*)
2655
# This must be glibc/ELF.
2656
linux* | k*bsd*-gnu | kopensolaris*-gnu)
2657
version_type=linux # correct to gnu/linux during the next big refactor
2660
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2661
soname_spec='${libname}${release}${shared_ext}$major'
2662
finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2663
shlibpath_var=LD_LIBRARY_PATH
2664
shlibpath_overrides_runpath=no
2666
# Some binutils ld are patched to set DT_RUNPATH
2667
AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2668
[lt_cv_shlibpath_overrides_runpath=no
2669
save_LDFLAGS=$LDFLAGS
2671
eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2672
LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2673
AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2674
[AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2675
[lt_cv_shlibpath_overrides_runpath=yes])])
2676
LDFLAGS=$save_LDFLAGS
2679
shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2681
# This implies no fast_install, which is unacceptable.
2682
# Some rework will be needed to allow for fast_install
2683
# before this can be enabled.
2684
hardcode_into_libs=yes
2686
# Append ld.so.conf contents to the search path
2687
if test -f /etc/ld.so.conf; then
2688
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' ' '`
2689
sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2692
# We used to test for /lib/ld.so.1 and disable shared libraries on
2693
# powerpc, because MkLinux only supported shared libraries with the
2694
# GNU dynamic linker. Since this was broken with cross compilers,
2695
# most powerpc-linux boxes support dynamic linking these days and
2696
# people can always --disable-shared, the test was removed, and we
2697
# assume the GNU/Linux dynamic linker is in use.
2698
dynamic_linker='GNU/Linux ld.so'
2705
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2706
soname_spec='${libname}${release}${shared_ext}$major'
2707
shlibpath_var=LD_LIBRARY_PATH
2708
shlibpath_overrides_runpath=no
2709
hardcode_into_libs=yes
2710
dynamic_linker='NetBSD ld.elf_so'
2717
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2718
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2719
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2720
dynamic_linker='NetBSD (a.out) ld.so'
2722
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2723
soname_spec='${libname}${release}${shared_ext}$major'
2724
dynamic_linker='NetBSD ld.elf_so'
2726
shlibpath_var=LD_LIBRARY_PATH
2727
shlibpath_overrides_runpath=yes
2728
hardcode_into_libs=yes
2732
version_type=linux # correct to gnu/linux during the next big refactor
2733
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2734
shlibpath_var=LD_LIBRARY_PATH
2735
shlibpath_overrides_runpath=yes
2742
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2743
soname_spec='${libname}${release}${shared_ext}$major'
2744
shlibpath_var=LD_LIBRARY_PATH
2745
shlibpath_overrides_runpath=no
2746
hardcode_into_libs=yes
2747
dynamic_linker='ldqnx.so'
2752
sys_lib_dlsearch_path_spec="/usr/lib"
2754
# Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2756
openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2757
*) need_version=no ;;
2759
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2760
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2761
shlibpath_var=LD_LIBRARY_PATH
2762
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2764
openbsd2.[[89]] | openbsd2.[[89]].*)
2765
shlibpath_overrides_runpath=no
2768
shlibpath_overrides_runpath=yes
2772
shlibpath_overrides_runpath=yes
2777
libname_spec='$name'
2780
library_names_spec='$libname${shared_ext} $libname.a'
2781
dynamic_linker='OS/2 ld.exe'
2782
shlibpath_var=LIBPATH
2785
osf3* | osf4* | osf5*)
2789
soname_spec='${libname}${release}${shared_ext}$major'
2790
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2791
shlibpath_var=LD_LIBRARY_PATH
2792
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2793
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2801
version_type=linux # correct to gnu/linux during the next big refactor
2804
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2805
soname_spec='${libname}${release}${shared_ext}$major'
2806
shlibpath_var=LD_LIBRARY_PATH
2807
shlibpath_overrides_runpath=yes
2808
hardcode_into_libs=yes
2809
# ldd complains unless libraries are executable
2810
postinstall_cmds='chmod +x $lib'
2815
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2816
finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2817
shlibpath_var=LD_LIBRARY_PATH
2818
shlibpath_overrides_runpath=yes
2819
if test "$with_gnu_ld" = yes; then
2826
version_type=linux # correct to gnu/linux during the next big refactor
2827
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2828
soname_spec='${libname}${release}${shared_ext}$major'
2829
shlibpath_var=LD_LIBRARY_PATH
2830
case $host_vendor in
2832
shlibpath_overrides_runpath=no
2834
runpath_var=LD_RUN_PATH
2842
shlibpath_overrides_runpath=no
2843
sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2849
if test -d /usr/nec ;then
2850
version_type=linux # correct to gnu/linux during the next big refactor
2851
library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2852
soname_spec='$libname${shared_ext}.$major'
2853
shlibpath_var=LD_LIBRARY_PATH
2857
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2858
version_type=freebsd-elf
2861
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2862
soname_spec='${libname}${release}${shared_ext}$major'
2863
shlibpath_var=LD_LIBRARY_PATH
2864
shlibpath_overrides_runpath=yes
2865
hardcode_into_libs=yes
2866
if test "$with_gnu_ld" = yes; then
2867
sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
2869
sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
2872
sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2876
sys_lib_dlsearch_path_spec='/usr/lib'
2880
# TPF is a cross-target only. Preferred cross-host = GNU/Linux.
2881
version_type=linux # correct to gnu/linux during the next big refactor
2884
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2885
shlibpath_var=LD_LIBRARY_PATH
2886
shlibpath_overrides_runpath=no
2887
hardcode_into_libs=yes
2891
version_type=linux # correct to gnu/linux during the next big refactor
2892
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2893
soname_spec='${libname}${release}${shared_ext}$major'
2894
shlibpath_var=LD_LIBRARY_PATH
2901
AC_MSG_RESULT([$dynamic_linker])
2902
test "$dynamic_linker" = no && can_build_shared=no
2904
variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2905
if test "$GCC" = yes; then
2906
variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2909
if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2910
sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2912
if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2913
sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2916
_LT_DECL([], [variables_saved_for_relink], [1],
2917
[Variables whose values should be saved in libtool wrapper scripts and
2918
restored at link time])
2919
_LT_DECL([], [need_lib_prefix], [0],
2920
[Do we need the "lib" prefix for modules?])
2921
_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2922
_LT_DECL([], [version_type], [0], [Library versioning type])
2923
_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2924
_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2925
_LT_DECL([], [shlibpath_overrides_runpath], [0],
2926
[Is shlibpath searched before the hard-coded library search path?])
2927
_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2928
_LT_DECL([], [library_names_spec], [1],
2929
[[List of archive names. First name is the real one, the rest are links.
2930
The last name is the one that the linker finds with -lNAME]])
2931
_LT_DECL([], [soname_spec], [1],
2932
[[The coded name of the library, if different from the real name]])
2933
_LT_DECL([], [install_override_mode], [1],
2934
[Permission mode override for installation of shared libraries])
2935
_LT_DECL([], [postinstall_cmds], [2],
2936
[Command to use after installation of a shared archive])
2937
_LT_DECL([], [postuninstall_cmds], [2],
2938
[Command to use after uninstallation of a shared archive])
2939
_LT_DECL([], [finish_cmds], [2],
2940
[Commands used to finish a libtool library installation in a directory])
2941
_LT_DECL([], [finish_eval], [1],
2942
[[As "finish_cmds", except a single script fragment to be evaled but
2944
_LT_DECL([], [hardcode_into_libs], [0],
2945
[Whether we should hardcode library paths into libraries])
2946
_LT_DECL([], [sys_lib_search_path_spec], [2],
2947
[Compile-time system search path for libraries])
2948
_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2949
[Run-time system search path for libraries])
2950
])# _LT_SYS_DYNAMIC_LINKER
2953
# _LT_PATH_TOOL_PREFIX(TOOL)
2954
# --------------------------
2955
# find a file program which can recognize shared library
2956
AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2957
[m4_require([_LT_DECL_EGREP])dnl
2958
AC_MSG_CHECKING([for $1])
2959
AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2961
[[\\/*] | ?:[\\/]*])
2962
lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2965
lt_save_MAGIC_CMD="$MAGIC_CMD"
2966
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2967
dnl $ac_dummy forces splitting on constant user-supplied paths.
2968
dnl POSIX.2 word splitting is done only on the output of word expansions,
2969
dnl not every word. This closes a longstanding sh security hole.
2970
ac_dummy="m4_if([$2], , $PATH, [$2])"
2971
for ac_dir in $ac_dummy; do
2973
test -z "$ac_dir" && ac_dir=.
2974
if test -f $ac_dir/$1; then
2975
lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2976
if test -n "$file_magic_test_file"; then
2977
case $deplibs_check_method in
2979
file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2980
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2981
if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2982
$EGREP "$file_magic_regex" > /dev/null; then
2987
*** Warning: the command libtool uses to detect shared libraries,
2988
*** $file_magic_cmd, produces output that libtool cannot recognize.
2989
*** The result is that libtool may fail to recognize shared libraries
2990
*** as such. This will affect the creation of libtool libraries that
2991
*** depend on shared libraries, but programs linked with such libtool
2992
*** libraries will work regardless of this problem. Nevertheless, you
2993
*** may want to report the problem to your system manager and/or to
2994
*** bug-libtool@gnu.org
3004
MAGIC_CMD="$lt_save_MAGIC_CMD"
3007
MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
3008
if test -n "$MAGIC_CMD"; then
3009
AC_MSG_RESULT($MAGIC_CMD)
3013
_LT_DECL([], [MAGIC_CMD], [0],
3014
[Used to examine libraries when file_magic_cmd begins with "file"])dnl
3015
])# _LT_PATH_TOOL_PREFIX
3018
AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3019
dnl aclocal-1.4 backwards compatibility:
3020
dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
3025
# find a file program which can recognize a shared library
3026
m4_defun([_LT_PATH_MAGIC],
3027
[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
3028
if test -z "$lt_cv_path_MAGIC_CMD"; then
3029
if test -n "$ac_tool_prefix"; then
3030
_LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
3040
# find the pathname to the GNU or non-GNU linker
3041
AC_DEFUN([LT_PATH_LD],
3042
[AC_REQUIRE([AC_PROG_CC])dnl
3043
AC_REQUIRE([AC_CANONICAL_HOST])dnl
3044
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3045
m4_require([_LT_DECL_SED])dnl
3046
m4_require([_LT_DECL_EGREP])dnl
3047
m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
3049
AC_ARG_WITH([gnu-ld],
3050
[AS_HELP_STRING([--with-gnu-ld],
3051
[assume the C compiler uses GNU ld @<:@default=no@:>@])],
3052
[test "$withval" = no || with_gnu_ld=yes],
3053
[with_gnu_ld=no])dnl
3056
if test "$GCC" = yes; then
3057
# Check if gcc -print-prog-name=ld gives a path.
3058
AC_MSG_CHECKING([for ld used by $CC])
3061
# gcc leaves a trailing carriage return which upsets mingw
3062
ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3064
ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3067
# Accept absolute paths.
3068
[[\\/]]* | ?:[[\\/]]*)
3069
re_direlt='/[[^/]][[^/]]*/\.\./'
3070
# Canonicalize the pathname of ld
3071
ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3072
while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3073
ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3075
test -z "$LD" && LD="$ac_prog"
3078
# If it fails, then pretend we aren't using GCC.
3082
# If it is relative, then search for the first ld in PATH.
3086
elif test "$with_gnu_ld" = yes; then
3087
AC_MSG_CHECKING([for GNU ld])
3089
AC_MSG_CHECKING([for non-GNU ld])
3091
AC_CACHE_VAL(lt_cv_path_LD,
3092
[if test -z "$LD"; then
3093
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3094
for ac_dir in $PATH; do
3096
test -z "$ac_dir" && ac_dir=.
3097
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3098
lt_cv_path_LD="$ac_dir/$ac_prog"
3099
# Check to see if the program is GNU ld. I'd rather use --version,
3100
# but apparently some variants of GNU ld only accept -v.
3101
# Break only if it was the GNU/non-GNU ld that we prefer.
3102
case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3103
*GNU* | *'with BFD'*)
3104
test "$with_gnu_ld" != no && break
3107
test "$with_gnu_ld" != yes && break
3114
lt_cv_path_LD="$LD" # Let the user override the test with a path.
3117
if test -n "$LD"; then
3122
test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3126
_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3130
AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3131
AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3132
dnl aclocal-1.4 backwards compatibility:
3133
dnl AC_DEFUN([AM_PROG_LD], [])
3134
dnl AC_DEFUN([AC_PROG_LD], [])
3139
m4_defun([_LT_PATH_LD_GNU],
3140
[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3141
[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3142
case `$LD -v 2>&1 </dev/null` in
3143
*GNU* | *'with BFD'*)
3144
lt_cv_prog_gnu_ld=yes
3147
lt_cv_prog_gnu_ld=no
3150
with_gnu_ld=$lt_cv_prog_gnu_ld
3156
# find reload flag for linker
3157
# -- PORTME Some linkers may need a different reload flag.
3158
m4_defun([_LT_CMD_RELOAD],
3159
[AC_CACHE_CHECK([for $LD option to reload object files],
3160
lt_cv_ld_reload_flag,
3161
[lt_cv_ld_reload_flag='-r'])
3162
reload_flag=$lt_cv_ld_reload_flag
3163
case $reload_flag in
3165
*) reload_flag=" $reload_flag" ;;
3167
reload_cmds='$LD$reload_flag -o $output$reload_objs'
3169
cygwin* | mingw* | pw32* | cegcc*)
3170
if test "$GCC" != yes; then
3175
if test "$GCC" = yes; then
3176
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
3178
reload_cmds='$LD$reload_flag -o $output$reload_objs'
3182
_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3183
_LT_TAGDECL([], [reload_cmds], [2])dnl
3187
# _LT_CHECK_MAGIC_METHOD
3188
# ----------------------
3189
# how to check for library dependencies
3190
# -- PORTME fill in with the dynamic library characteristics
3191
m4_defun([_LT_CHECK_MAGIC_METHOD],
3192
[m4_require([_LT_DECL_EGREP])
3193
m4_require([_LT_DECL_OBJDUMP])
3194
AC_CACHE_CHECK([how to recognize dependent libraries],
3195
lt_cv_deplibs_check_method,
3196
[lt_cv_file_magic_cmd='$MAGIC_CMD'
3197
lt_cv_file_magic_test_file=
3198
lt_cv_deplibs_check_method='unknown'
3199
# Need to set the preceding variable on all platforms that support
3200
# interlibrary dependencies.
3201
# 'none' -- dependencies not supported.
3202
# `unknown' -- same as none, but documents that we really don't know.
3203
# 'pass_all' -- all dependencies passed with no checks.
3204
# 'test_compile' -- check by making test program.
3205
# 'file_magic [[regex]]' -- check by looking for files in library path
3206
# which responds to the $file_magic_cmd with a given extended regex.
3207
# If you have `file' or equivalent on your system and you're not sure
3208
# whether `pass_all' will *always* work, you probably want this one.
3212
lt_cv_deplibs_check_method=pass_all
3216
lt_cv_deplibs_check_method=pass_all
3220
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3221
lt_cv_file_magic_cmd='/usr/bin/file -L'
3222
lt_cv_file_magic_test_file=/shlib/libc.so
3226
# func_win32_libid is a shell function defined in ltmain.sh
3227
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3228
lt_cv_file_magic_cmd='func_win32_libid'
3232
# Base MSYS/MinGW do not provide the 'file' command needed by
3233
# func_win32_libid shell function, so use a weaker test based on 'objdump',
3234
# unless we find 'file', for example because we are cross-compiling.
3235
# func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3236
if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
3237
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3238
lt_cv_file_magic_cmd='func_win32_libid'
3240
# Keep this pattern in sync with the one in func_win32_libid.
3241
lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3242
lt_cv_file_magic_cmd='$OBJDUMP -f'
3247
# use the weaker test based on 'objdump'. See mingw*.
3248
lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3249
lt_cv_file_magic_cmd='$OBJDUMP -f'
3252
darwin* | rhapsody*)
3253
lt_cv_deplibs_check_method=pass_all
3256
freebsd* | dragonfly*)
3257
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3260
# Not sure whether the presence of OpenBSD here was a mistake.
3261
# Let's accept both of them until this is cleared up.
3262
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3263
lt_cv_file_magic_cmd=/usr/bin/file
3264
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3268
lt_cv_deplibs_check_method=pass_all
3273
lt_cv_deplibs_check_method=pass_all
3277
lt_cv_deplibs_check_method=pass_all
3280
hpux10.20* | hpux11*)
3281
lt_cv_file_magic_cmd=/usr/bin/file
3284
lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3285
lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3288
[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]']
3289
lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3292
lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3293
lt_cv_file_magic_test_file=/usr/lib/libc.sl
3299
# PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3300
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3303
irix5* | irix6* | nonstopux*)
3305
*-32|*"-32 ") libmagic=32-bit;;
3306
*-n32|*"-n32 ") libmagic=N32;;
3307
*-64|*"-64 ") libmagic=64-bit;;
3308
*) libmagic=never-match;;
3310
lt_cv_deplibs_check_method=pass_all
3313
# This must be glibc/ELF.
3314
linux* | k*bsd*-gnu | kopensolaris*-gnu)
3315
lt_cv_deplibs_check_method=pass_all
3318
netbsd* | netbsdelf*-gnu)
3319
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3320
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3322
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3327
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3328
lt_cv_file_magic_cmd=/usr/bin/file
3329
lt_cv_file_magic_test_file=/usr/lib/libnls.so
3333
lt_cv_deplibs_check_method=pass_all
3337
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3338
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3340
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3344
osf3* | osf4* | osf5*)
3345
lt_cv_deplibs_check_method=pass_all
3349
lt_cv_deplibs_check_method=pass_all
3353
lt_cv_deplibs_check_method=pass_all
3356
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3357
lt_cv_deplibs_check_method=pass_all
3361
case $host_vendor in
3363
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]]'
3364
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3367
lt_cv_deplibs_check_method=pass_all
3370
lt_cv_file_magic_cmd='/bin/file'
3371
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3374
lt_cv_file_magic_cmd='/bin/file'
3375
lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3376
lt_cv_file_magic_test_file=/lib/libc.so
3379
lt_cv_deplibs_check_method=pass_all
3382
lt_cv_deplibs_check_method=pass_all
3388
lt_cv_deplibs_check_method=pass_all
3395
if test "$build" = "$host"; then
3398
if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3401
file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3407
file_magic_cmd=$lt_cv_file_magic_cmd
3408
deplibs_check_method=$lt_cv_deplibs_check_method
3409
test -z "$deplibs_check_method" && deplibs_check_method=unknown
3411
_LT_DECL([], [deplibs_check_method], [1],
3412
[Method to check whether dependent libraries are shared objects])
3413
_LT_DECL([], [file_magic_cmd], [1],
3414
[Command to use when deplibs_check_method = "file_magic"])
3415
_LT_DECL([], [file_magic_glob], [1],
3416
[How to find potential files when deplibs_check_method = "file_magic"])
3417
_LT_DECL([], [want_nocaseglob], [1],
3418
[Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3419
])# _LT_CHECK_MAGIC_METHOD
3424
# find the pathname to a BSD- or MS-compatible name lister
3425
AC_DEFUN([LT_PATH_NM],
3426
[AC_REQUIRE([AC_PROG_CC])dnl
3427
AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3428
[if test -n "$NM"; then
3429
# Let the user override the test.
3432
lt_nm_to_check="${ac_tool_prefix}nm"
3433
if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3434
lt_nm_to_check="$lt_nm_to_check nm"
3436
for lt_tmp_nm in $lt_nm_to_check; do
3437
lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3438
for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3440
test -z "$ac_dir" && ac_dir=.
3441
tmp_nm="$ac_dir/$lt_tmp_nm"
3442
if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3443
# Check to see if the nm accepts a BSD-compat flag.
3444
# Adding the `sed 1q' prevents false positives on HP-UX, which says:
3445
# nm: unknown option "B" ignored
3446
# Tru64's nm complains that /dev/null is an invalid object file
3447
case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3448
*/dev/null* | *'Invalid file or object type'*)
3449
lt_cv_path_NM="$tmp_nm -B"
3453
case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3455
lt_cv_path_NM="$tmp_nm -p"
3459
lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3460
continue # so that we can try to find one that supports BSD flags
3469
: ${lt_cv_path_NM=no}
3471
if test "$lt_cv_path_NM" != "no"; then
3474
# Didn't find any BSD compatible name lister, look for dumpbin.
3475
if test -n "$DUMPBIN"; then :
3476
# Let the user override the test.
3478
AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3479
case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
3481
DUMPBIN="$DUMPBIN -symbols"
3489
if test "$DUMPBIN" != ":"; then
3493
test -z "$NM" && NM=nm
3495
_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3497
AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3498
[lt_cv_nm_interface="BSD nm"
3499
echo "int some_variable = 0;" > conftest.$ac_ext
3500
(eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3501
(eval "$ac_compile" 2>conftest.err)
3502
cat conftest.err >&AS_MESSAGE_LOG_FD
3503
(eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3504
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3505
cat conftest.err >&AS_MESSAGE_LOG_FD
3506
(eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3507
cat conftest.out >&AS_MESSAGE_LOG_FD
3508
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3509
lt_cv_nm_interface="MS dumpbin"
3515
AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3516
AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3517
dnl aclocal-1.4 backwards compatibility:
3518
dnl AC_DEFUN([AM_PROG_NM], [])
3519
dnl AC_DEFUN([AC_PROG_NM], [])
3521
# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3522
# --------------------------------
3523
# how to determine the name of the shared library
3524
# associated with a specific link library.
3525
# -- PORTME fill in with the dynamic library characteristics
3526
m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3527
[m4_require([_LT_DECL_EGREP])
3528
m4_require([_LT_DECL_OBJDUMP])
3529
m4_require([_LT_DECL_DLLTOOL])
3530
AC_CACHE_CHECK([how to associate runtime and link libraries],
3531
lt_cv_sharedlib_from_linklib_cmd,
3532
[lt_cv_sharedlib_from_linklib_cmd='unknown'
3535
cygwin* | mingw* | pw32* | cegcc*)
3536
# two different shell functions defined in ltmain.sh
3537
# decide which to use based on capabilities of $DLLTOOL
3538
case `$DLLTOOL --help 2>&1` in
3539
*--identify-strict*)
3540
lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3543
lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3548
# fallback: assume linklib IS sharedlib
3549
lt_cv_sharedlib_from_linklib_cmd="$ECHO"
3553
sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3554
test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3556
_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3557
[Command to associate shared and link libraries])
3558
])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3561
# _LT_PATH_MANIFEST_TOOL
3562
# ----------------------
3563
# locate the manifest tool
3564
m4_defun([_LT_PATH_MANIFEST_TOOL],
3565
[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3566
test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3567
AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3568
[lt_cv_path_mainfest_tool=no
3569
echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3570
$MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3571
cat conftest.err >&AS_MESSAGE_LOG_FD
3572
if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3573
lt_cv_path_mainfest_tool=yes
3576
if test "x$lt_cv_path_mainfest_tool" != xyes; then
3579
_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3580
])# _LT_PATH_MANIFEST_TOOL
3585
# check for math library
3586
AC_DEFUN([LT_LIB_M],
3587
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3590
*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3591
# These system don't have libm, or don't need it
3594
AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3595
AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3598
AC_CHECK_LIB(m, cos, LIBM="-lm")
3605
AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3606
dnl aclocal-1.4 backwards compatibility:
3607
dnl AC_DEFUN([AC_CHECK_LIBM], [])
3610
# _LT_COMPILER_NO_RTTI([TAGNAME])
3611
# -------------------------------
3612
m4_defun([_LT_COMPILER_NO_RTTI],
3613
[m4_require([_LT_TAG_COMPILER])dnl
3615
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3617
if test "$GCC" = yes; then
3618
case $cc_basename in
3620
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3622
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3625
_LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3626
lt_cv_prog_compiler_rtti_exceptions,
3627
[-fno-rtti -fno-exceptions], [],
3628
[_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3630
_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3631
[Compiler flag to turn off builtin functions])
3632
])# _LT_COMPILER_NO_RTTI
3635
# _LT_CMD_GLOBAL_SYMBOLS
3636
# ----------------------
3637
m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3638
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3639
AC_REQUIRE([AC_PROG_CC])dnl
3640
AC_REQUIRE([AC_PROG_AWK])dnl
3641
AC_REQUIRE([LT_PATH_NM])dnl
3642
AC_REQUIRE([LT_PATH_LD])dnl
3643
m4_require([_LT_DECL_SED])dnl
3644
m4_require([_LT_DECL_EGREP])dnl
3645
m4_require([_LT_TAG_COMPILER])dnl
3647
# Check for command to grab the raw symbol name followed by C symbol from nm.
3648
AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3649
AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3651
# These are sane defaults that work on at least a few old systems.
3652
# [They come from Ultrix. What could be older than Ultrix?!! ;)]
3654
# Character class describing NM global symbol codes.
3655
symcode='[[BCDEGRST]]'
3657
# Regexp to match symbols that can be accessed directly from C.
3658
sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3660
# Define system-specific variables.
3665
cygwin* | mingw* | pw32* | cegcc*)
3666
symcode='[[ABCDGISTW]]'
3669
if test "$host_cpu" = ia64; then
3670
symcode='[[ABCDEGRST]]'
3674
symcode='[[BCDEGRST]]'
3677
symcode='[[BCDEGQRST]]'
3688
sysv5* | sco5v6* | unixware* | OpenUNIX*)
3692
symcode='[[DFNSTU]]'
3696
# If we're using GNU nm, then use its standard symbol codes.
3697
case `$NM -V 2>&1` in
3698
*GNU* | *'with BFD'*)
3699
symcode='[[ABCDGIRSTW]]' ;;
3702
# Transform an extracted symbol line into a proper C declaration.
3703
# Some systems (esp. on ia64) link data and code symbols differently,
3704
# so use this general approach.
3705
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3707
# Transform an extracted symbol line into symbol name and symbol address
3708
lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3709
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'"
3711
# Handle CRLF in mingw tool chain
3715
opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3719
# Try without a prefix underscore, then with it.
3720
for ac_symprfx in "" "_"; do
3722
# Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3723
symxfrm="\\1 $ac_symprfx\\2 \\2"
3725
# Write the raw and C identifiers.
3726
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3727
# Fake it for dumpbin and say T for any non-static function
3728
# and D for any global variable.
3729
# Also find C++ and __fastcall symbols from MSVC++,
3730
# which start with @ or ?.
3731
lt_cv_sys_global_symbol_pipe="$AWK ['"\
3732
" {last_section=section; section=\$ 3};"\
3733
" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
3734
" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3735
" \$ 0!~/External *\|/{next};"\
3736
" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3737
" {if(hide[section]) next};"\
3738
" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3739
" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3740
" s[1]~/^[@?]/{print s[1], s[1]; next};"\
3741
" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3742
" ' prfx=^$ac_symprfx]"
3744
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3746
lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
3748
# Check to see that the pipe works correctly.
3752
cat > conftest.$ac_ext <<_LT_EOF
3757
void nm_test_func(void);
3758
void nm_test_func(void){}
3762
int main(){nm_test_var='a';nm_test_func();return(0);}
3765
if AC_TRY_EVAL(ac_compile); then
3766
# Now try to grab the symbols.
3768
if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
3769
# Try sorting and uniquifying the output.
3770
if sort "$nlist" | uniq > "$nlist"T; then
3771
mv -f "$nlist"T "$nlist"
3776
# Make sure that we snagged all the symbols we need.
3777
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3778
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3779
cat <<_LT_EOF > conftest.$ac_ext
3780
/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
3781
#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
3782
/* DATA imports from DLLs on WIN32 con't be const, because runtime
3783
relocations are performed -- see ld's documentation on pseudo-relocs. */
3784
# define LT@&t@_DLSYM_CONST
3785
#elif defined(__osf__)
3786
/* This system does not cope well with relocations in const data. */
3787
# define LT@&t@_DLSYM_CONST
3789
# define LT@&t@_DLSYM_CONST const
3797
# Now generate the symbol file.
3798
eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
3800
cat <<_LT_EOF >> conftest.$ac_ext
3802
/* The mapping between symbol names and symbols. */
3803
LT@&t@_DLSYM_CONST struct {
3807
lt__PROGRAM__LTX_preloaded_symbols[[]] =
3809
{ "@PROGRAM@", (void *) 0 },
3811
$SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3812
cat <<\_LT_EOF >> conftest.$ac_ext
3816
/* This works around a problem in FreeBSD linker */
3817
#ifdef FREEBSD_WORKAROUND
3818
static const void *lt_preloaded_setup() {
3819
return lt__PROGRAM__LTX_preloaded_symbols;
3827
# Now try linking the two files.
3828
mv conftest.$ac_objext conftstm.$ac_objext
3829
lt_globsym_save_LIBS=$LIBS
3830
lt_globsym_save_CFLAGS=$CFLAGS
3831
LIBS="conftstm.$ac_objext"
3832
CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3833
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3836
LIBS=$lt_globsym_save_LIBS
3837
CFLAGS=$lt_globsym_save_CFLAGS
3839
echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3842
echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3845
echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
3848
echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3849
cat conftest.$ac_ext >&5
3851
rm -rf conftest* conftst*
3853
# Do not use the global_symbol_pipe unless it works.
3854
if test "$pipe_works" = yes; then
3857
lt_cv_sys_global_symbol_pipe=
3861
if test -z "$lt_cv_sys_global_symbol_pipe"; then
3862
lt_cv_sys_global_symbol_to_cdecl=
3864
if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3865
AC_MSG_RESULT(failed)
3870
# Response file support.
3871
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3872
nm_file_list_spec='@'
3873
elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
3874
nm_file_list_spec='@'
3877
_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3878
[Take the output of nm and produce a listing of raw symbols and C names])
3879
_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3880
[Transform the output of nm in a proper C declaration])
3881
_LT_DECL([global_symbol_to_c_name_address],
3882
[lt_cv_sys_global_symbol_to_c_name_address], [1],
3883
[Transform the output of nm in a C name address pair])
3884
_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3885
[lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3886
[Transform the output of nm in a C name address pair when lib prefix is needed])
3887
_LT_DECL([], [nm_file_list_spec], [1],
3888
[Specify filename containing input files for $NM])
3889
]) # _LT_CMD_GLOBAL_SYMBOLS
3892
# _LT_COMPILER_PIC([TAGNAME])
3893
# ---------------------------
3894
m4_defun([_LT_COMPILER_PIC],
3895
[m4_require([_LT_TAG_COMPILER])dnl
3896
_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3897
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3898
_LT_TAGVAR(lt_prog_compiler_static, $1)=
3900
m4_if([$1], [CXX], [
3901
# C++ specific cases for pic, static, wl, etc.
3902
if test "$GXX" = yes; then
3903
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3904
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
3908
# All AIX code is PIC.
3909
if test "$host_cpu" = ia64; then
3910
# AIX 5 now supports IA64 processor
3911
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3918
# see comment about AmigaOS4 .so support
3919
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3922
# FIXME: we need at least 68020 code to build shared libraries, but
3923
# adding the `-m68020' flag to GCC prevents building anything better,
3925
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3930
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
3931
# PIC is the default for these OSes.
3933
mingw* | cygwin* | os2* | pw32* | cegcc*)
3934
# This hack is so that the source file can tell whether it is being
3935
# built for inclusion in a dll (and should export symbols for example).
3936
# Although the cygwin gcc ignores -fPIC, still need this for old-style
3937
# (--disable-auto-import) libraries
3938
m4_if([$1], [GCJ], [],
3939
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3941
darwin* | rhapsody*)
3942
# PIC is the default on this platform
3943
# Common symbols not allowed in MH_DYLIB files
3944
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
3947
# DJGPP does not support shared libraries at all
3948
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3951
# PIC is the default for Haiku.
3952
# The "-static" flag exists, but is broken.
3953
_LT_TAGVAR(lt_prog_compiler_static, $1)=
3956
# Interix 3.x gcc -fpic/-fPIC options generate broken code.
3957
# Instead, we relocate shared libraries at runtime.
3960
if test -d /usr/nec; then
3961
_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
3965
# PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3966
# PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3967
# sets the default TLS model and affects inlining.
3972
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3977
# QNX uses GNU C++, but need to define -shared option too, otherwise
3979
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3982
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3988
# All AIX code is PIC.
3989
if test "$host_cpu" = ia64; then
3990
# AIX 5 now supports IA64 processor
3991
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3993
_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
3997
case $cc_basename in
3999
# Green Hills C++ Compiler
4000
# _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"
4004
mingw* | cygwin* | os2* | pw32* | cegcc*)
4005
# This hack is so that the source file can tell whether it is being
4006
# built for inclusion in a dll (and should export symbols for example).
4007
m4_if([$1], [GCJ], [],
4008
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4011
case $cc_basename in
4013
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4016
# Green Hills C++ Compiler
4017
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4023
freebsd* | dragonfly*)
4024
# FreeBSD uses GNU C++
4026
hpux9* | hpux10* | hpux11*)
4027
case $cc_basename in
4029
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4030
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4031
if test "$host_cpu" != ia64; then
4032
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4036
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4037
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4043
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4052
# This is c89, which is MS Visual C++ (no shared libs)
4053
# Anyone wants to do a port?
4055
irix5* | irix6* | nonstopux*)
4056
case $cc_basename in
4058
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4059
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4060
# CC pic flag -KPIC is the default.
4066
linux* | k*bsd*-gnu | kopensolaris*-gnu)
4067
case $cc_basename in
4070
_LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4071
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4074
# old Intel C++ for x86_64 which still supported -KPIC.
4075
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4076
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4077
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4080
# Intel C++, used to be incompatible with GCC.
4081
# ICC 10 doesn't accept -KPIC any more.
4082
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4083
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4084
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4087
# Portland Group C++ compiler
4088
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4089
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4090
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4094
# Make sure the PIC flag is empty. It appears that all Alpha
4095
# Linux and Compaq Tru64 Unix objects are PIC.
4096
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4097
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4099
xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4100
# IBM XL 8.0, 9.0 on PPC and BlueGene
4101
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4102
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4103
_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4106
case `$CC -V 2>&1 | sed 5q` in
4109
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4110
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4111
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4122
case $cc_basename in
4124
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4130
netbsd* | netbsdelf*-gnu)
4133
# QNX uses GNU C++, but need to define -shared option too, otherwise
4135
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4137
osf3* | osf4* | osf5*)
4138
case $cc_basename in
4140
_LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4143
# Rational C++ 2.4.1
4144
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4147
# Digital/Compaq C++
4148
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4149
# Make sure the PIC flag is empty. It appears that all Alpha
4150
# Linux and Compaq Tru64 Unix objects are PIC.
4151
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4152
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4161
case $cc_basename in
4163
# Sun C++ 4.2, 5.x and Centerline C++
4164
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4165
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4166
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4169
# Green Hills C++ Compiler
4170
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4177
case $cc_basename in
4180
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4181
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4185
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4191
sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4192
case $cc_basename in
4194
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4195
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4196
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4201
case $cc_basename in
4203
# NonStop-UX NCC 3.20
4204
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4213
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4219
if test "$GCC" = yes; then
4220
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4221
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4225
# All AIX code is PIC.
4226
if test "$host_cpu" = ia64; then
4227
# AIX 5 now supports IA64 processor
4228
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4235
# see comment about AmigaOS4 .so support
4236
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4239
# FIXME: we need at least 68020 code to build shared libraries, but
4240
# adding the `-m68020' flag to GCC prevents building anything better,
4242
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4247
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4248
# PIC is the default for these OSes.
4251
mingw* | cygwin* | pw32* | os2* | cegcc*)
4252
# This hack is so that the source file can tell whether it is being
4253
# built for inclusion in a dll (and should export symbols for example).
4254
# Although the cygwin gcc ignores -fPIC, still need this for old-style
4255
# (--disable-auto-import) libraries
4256
m4_if([$1], [GCJ], [],
4257
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4260
darwin* | rhapsody*)
4261
# PIC is the default on this platform
4262
# Common symbols not allowed in MH_DYLIB files
4263
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4267
# PIC is the default for Haiku.
4268
# The "-static" flag exists, but is broken.
4269
_LT_TAGVAR(lt_prog_compiler_static, $1)=
4273
# PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4274
# PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4275
# sets the default TLS model and affects inlining.
4281
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4287
# Interix 3.x gcc -fpic/-fPIC options generate broken code.
4288
# Instead, we relocate shared libraries at runtime.
4292
# Just because we use GCC doesn't mean we suddenly get shared libraries
4293
# on systems that don't support them.
4294
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4299
# QNX uses GNU C++, but need to define -shared option too, otherwise
4301
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4305
if test -d /usr/nec; then
4306
_LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4311
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4315
case $cc_basename in
4316
nvcc*) # Cuda Compiler Driver 2.2
4317
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4318
if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4319
_LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4324
# PORTME Check for flag to pass linker flags through the system compiler.
4327
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4328
if test "$host_cpu" = ia64; then
4329
# AIX 5 now supports IA64 processor
4330
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4332
_LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4336
mingw* | cygwin* | pw32* | os2* | cegcc*)
4337
# This hack is so that the source file can tell whether it is being
4338
# built for inclusion in a dll (and should export symbols for example).
4339
m4_if([$1], [GCJ], [],
4340
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4343
hpux9* | hpux10* | hpux11*)
4344
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4345
# PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4352
_LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4355
# Is there a better lt_prog_compiler_static that works with the bundled CC?
4356
_LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4359
irix5* | irix6* | nonstopux*)
4360
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4361
# PIC (with -KPIC) is the default.
4362
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4365
linux* | k*bsd*-gnu | kopensolaris*-gnu)
4366
case $cc_basename in
4367
# old Intel for x86_64 which still supported -KPIC.
4369
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4370
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4371
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4373
# icc used to be incompatible with GCC.
4374
# ICC 10 doesn't accept -KPIC any more.
4376
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4377
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4378
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4380
# Lahey Fortran 8.1.
4382
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4383
_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4384
_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4387
# NAG Fortran compiler
4388
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4389
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4390
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4392
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4393
# Portland Group compilers (*not* the Pentium gcc compiler,
4394
# which looks to be a dead project)
4395
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4396
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4397
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4400
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4401
# All Alpha code is PIC.
4402
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4404
xl* | bgxl* | bgf* | mpixl*)
4405
# IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4406
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4407
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4408
_LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4411
case `$CC -V 2>&1 | sed 5q` in
4412
*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4413
# Sun Fortran 8.3 passes all unrecognized flags to the linker
4414
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4415
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4416
_LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4418
*Sun\ F* | *Sun*Fortran*)
4419
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4420
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4421
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4425
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4426
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4427
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4429
*Intel*\ [[CF]]*Compiler*)
4430
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4431
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4432
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4435
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4436
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4437
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4445
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4446
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4450
# QNX uses GNU C++, but need to define -shared option too, otherwise
4452
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4455
osf3* | osf4* | osf5*)
4456
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4457
# All OSF/1 code is PIC.
4458
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4462
_LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4466
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4467
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4468
case $cc_basename in
4469
f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4470
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4472
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4477
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4478
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4479
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4482
sysv4 | sysv4.2uw2* | sysv4.3*)
4483
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4484
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4485
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4489
if test -d /usr/nec ;then
4490
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4491
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4495
sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4496
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4497
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4498
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4502
_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4503
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4507
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4508
_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4512
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4518
# For platforms which do not support PIC, -DPIC is meaningless:
4520
_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4523
_LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4527
AC_CACHE_CHECK([for $compiler option to produce PIC],
4528
[_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4529
[_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4530
_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4533
# Check to make sure the PIC flag actually works.
4535
if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4536
_LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4537
[_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4538
[$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4539
[case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4541
*) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4543
[_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4544
_LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4546
_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4547
[Additional compiler flags for building library objects])
4549
_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4550
[How to pass a linker flag through the compiler])
4552
# Check to make sure the static flag actually works.
4554
wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4555
_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4556
_LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4557
$lt_tmp_static_flag,
4559
[_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4560
_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4561
[Compiler flag to prevent dynamic linking])
4562
])# _LT_COMPILER_PIC
4565
# _LT_LINKER_SHLIBS([TAGNAME])
4566
# ----------------------------
4567
# See if the linker supports building shared libraries.
4568
m4_defun([_LT_LINKER_SHLIBS],
4569
[AC_REQUIRE([LT_PATH_LD])dnl
4570
AC_REQUIRE([LT_PATH_NM])dnl
4571
m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4572
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4573
m4_require([_LT_DECL_EGREP])dnl
4574
m4_require([_LT_DECL_SED])dnl
4575
m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4576
m4_require([_LT_TAG_COMPILER])dnl
4577
AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4578
m4_if([$1], [CXX], [
4579
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4580
_LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4583
# If we're using GNU nm, then we don't want the "-C" option.
4584
# -C means demangle to AIX nm, but means don't demangle with GNU nm
4585
# Also, AIX nm treats weak defined symbols like other global defined
4586
# symbols, whereas GNU nm marks them as "W".
4587
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4588
_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'
4590
_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'
4594
_LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
4596
cygwin* | mingw* | cegcc*)
4597
case $cc_basename in
4599
_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4602
_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'
4603
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4607
linux* | k*bsd*-gnu | gnu*)
4608
_LT_TAGVAR(link_all_deplibs, $1)=no
4611
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4616
_LT_TAGVAR(allow_undefined_flag, $1)=
4617
_LT_TAGVAR(always_export_symbols, $1)=no
4618
_LT_TAGVAR(archive_cmds, $1)=
4619
_LT_TAGVAR(archive_expsym_cmds, $1)=
4620
_LT_TAGVAR(compiler_needs_object, $1)=no
4621
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4622
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
4623
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4624
_LT_TAGVAR(hardcode_automatic, $1)=no
4625
_LT_TAGVAR(hardcode_direct, $1)=no
4626
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
4627
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4628
_LT_TAGVAR(hardcode_libdir_separator, $1)=
4629
_LT_TAGVAR(hardcode_minus_L, $1)=no
4630
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4631
_LT_TAGVAR(inherit_rpath, $1)=no
4632
_LT_TAGVAR(link_all_deplibs, $1)=unknown
4633
_LT_TAGVAR(module_cmds, $1)=
4634
_LT_TAGVAR(module_expsym_cmds, $1)=
4635
_LT_TAGVAR(old_archive_from_new_cmds, $1)=
4636
_LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4637
_LT_TAGVAR(thread_safe_flag_spec, $1)=
4638
_LT_TAGVAR(whole_archive_flag_spec, $1)=
4639
# include_expsyms should be a list of space-separated symbols to be *always*
4640
# included in the symbol list
4641
_LT_TAGVAR(include_expsyms, $1)=
4642
# exclude_expsyms can be an extended regexp of symbols to exclude
4643
# it will be wrapped by ` (' and `)$', so one must not match beginning or
4644
# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4645
# as well as any symbol that contains `d'.
4646
_LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4647
# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4648
# platforms (ab)use it in PIC code, but their linkers get confused if
4649
# the symbol is explicitly referenced. Since portable code cannot
4650
# rely on this symbol name, it's probably fine to never include it in
4651
# preloaded symbol tables.
4652
# Exclude shared library initialization/finalization symbols.
4653
dnl Note also adjust exclude_expsyms for C++ above.
4654
extract_expsyms_cmds=
4657
cygwin* | mingw* | pw32* | cegcc*)
4658
# FIXME: the MSVC++ port hasn't been tested in a loooong time
4659
# When not using gcc, we currently assume that we are using
4660
# Microsoft Visual C++.
4661
if test "$GCC" != yes; then
4666
# we just hope/assume this is gcc and not c89 (= MSVC++)
4672
linux* | k*bsd*-gnu | gnu*)
4673
_LT_TAGVAR(link_all_deplibs, $1)=no
4677
_LT_TAGVAR(ld_shlibs, $1)=yes
4679
# On some targets, GNU ld is compatible enough with the native linker
4680
# that we're better off using the native interface for both.
4681
lt_use_gnu_ld_interface=no
4682
if test "$with_gnu_ld" = yes; then
4685
# The AIX port of GNU ld has always aspired to compatibility
4686
# with the native linker. However, as the warning in the GNU ld
4687
# block says, versions before 2.19.5* couldn't really create working
4688
# shared libraries, regardless of the interface used.
4689
case `$LD -v 2>&1` in
4690
*\ \(GNU\ Binutils\)\ 2.19.5*) ;;
4691
*\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
4692
*\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
4694
lt_use_gnu_ld_interface=yes
4699
lt_use_gnu_ld_interface=yes
4704
if test "$lt_use_gnu_ld_interface" = yes; then
4705
# If archive_cmds runs LD, not CC, wlarc should be empty
4708
# Set some defaults for GNU ld with shared library support. These
4709
# are reset later if shared libraries are not supported. Putting them
4710
# here allows them to be overridden if necessary.
4711
runpath_var=LD_RUN_PATH
4712
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4713
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
4714
# ancient GNU ld didn't support --whole-archive et. al.
4715
if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4716
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4718
_LT_TAGVAR(whole_archive_flag_spec, $1)=
4720
supports_anon_versioning=no
4721
case `$LD -v 2>&1` in
4722
*GNU\ gold*) supports_anon_versioning=yes ;;
4723
*\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4724
*\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4725
*\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4726
*\ 2.11.*) ;; # other 2.11 versions
4727
*) supports_anon_versioning=yes ;;
4730
# See if GNU ld supports shared libraries.
4733
# On AIX/PPC, the GNU linker is very broken
4734
if test "$host_cpu" != ia64; then
4735
_LT_TAGVAR(ld_shlibs, $1)=no
4738
*** Warning: the GNU linker, at least up to release 2.19, is reported
4739
*** to be unable to reliably create shared libraries on AIX.
4740
*** Therefore, libtool is disabling shared libraries support. If you
4741
*** really care for shared libraries, you may want to install binutils
4742
*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
4743
*** You will then need to restart the configuration process.
4752
# see comment about AmigaOS4 .so support
4753
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4754
_LT_TAGVAR(archive_expsym_cmds, $1)=''
4757
_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)'
4758
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4759
_LT_TAGVAR(hardcode_minus_L, $1)=yes
4765
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4766
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4767
# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4768
# support --undefined. This deserves some investigation. FIXME
4769
_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4771
_LT_TAGVAR(ld_shlibs, $1)=no
4775
cygwin* | mingw* | pw32* | cegcc*)
4776
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
4777
# as there is no search path for DLLs.
4778
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4779
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
4780
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4781
_LT_TAGVAR(always_export_symbols, $1)=no
4782
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
4783
_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'
4784
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4786
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4787
_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'
4788
# If the export-symbols file already is a .def file (1st line
4789
# is EXPORTS), use it as is; otherwise, prepend...
4790
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
4791
cp $export_symbols $output_objdir/$soname.def;
4793
echo EXPORTS > $output_objdir/$soname.def;
4794
cat $export_symbols >> $output_objdir/$soname.def;
4796
$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4798
_LT_TAGVAR(ld_shlibs, $1)=no
4803
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4804
_LT_TAGVAR(link_all_deplibs, $1)=yes
4808
_LT_TAGVAR(hardcode_direct, $1)=no
4809
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4810
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4811
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4812
# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4813
# Instead, shared libraries are loaded at an image base (0x10000000 by
4814
# default) and relocated if they conflict, which is a slow very memory
4815
# consuming and fragmenting process. To avoid this, we pick a random,
4816
# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4817
# time. Moving up from 0x10000000 also allows more sbrk(2) space.
4818
_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'
4819
_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'
4822
gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
4824
if test "$host_os" = linux-dietlibc; then
4825
case $cc_basename in
4826
diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
4829
if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4830
&& test "$tmp_diet" = no
4832
tmp_addflag=' $pic_flag'
4833
tmp_sharedflag='-shared'
4834
case $cc_basename,$host_cpu in
4835
pgcc*) # Portland Group C compiler
4836
_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'
4837
tmp_addflag=' $pic_flag'
4839
pgf77* | pgf90* | pgf95* | pgfortran*)
4840
# Portland Group f77 and f90 compilers
4841
_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'
4842
tmp_addflag=' $pic_flag -Mnomain' ;;
4843
ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
4844
tmp_addflag=' -i_dynamic' ;;
4845
efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
4846
tmp_addflag=' -i_dynamic -nofor_main' ;;
4847
ifc* | ifort*) # Intel Fortran compiler
4848
tmp_addflag=' -nofor_main' ;;
4849
lf95*) # Lahey Fortran 8.1
4850
_LT_TAGVAR(whole_archive_flag_spec, $1)=
4851
tmp_sharedflag='--shared' ;;
4852
xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
4853
tmp_sharedflag='-qmkshrobj'
4855
nvcc*) # Cuda Compiler Driver 2.2
4856
_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'
4857
_LT_TAGVAR(compiler_needs_object, $1)=yes
4860
case `$CC -V 2>&1 | sed 5q` in
4861
*Sun\ C*) # Sun C 5.9
4862
_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'
4863
_LT_TAGVAR(compiler_needs_object, $1)=yes
4864
tmp_sharedflag='-G' ;;
4865
*Sun\ F*) # Sun Fortran 8.3
4866
tmp_sharedflag='-G' ;;
4868
_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4870
if test "x$supports_anon_versioning" = xyes; then
4871
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4872
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4873
echo "local: *; };" >> $output_objdir/$libname.ver~
4874
$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4877
case $cc_basename in
4878
xlf* | bgf* | bgxlf* | mpixlf*)
4879
# IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4880
_LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
4881
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4882
_LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
4883
if test "x$supports_anon_versioning" = xyes; then
4884
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4885
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4886
echo "local: *; };" >> $output_objdir/$libname.ver~
4887
$LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
4892
_LT_TAGVAR(ld_shlibs, $1)=no
4896
netbsd* | netbsdelf*-gnu)
4897
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4898
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
4901
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4902
_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'
4907
if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4908
_LT_TAGVAR(ld_shlibs, $1)=no
4911
*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4912
*** create shared libraries on Solaris systems. Therefore, libtool
4913
*** is disabling shared libraries support. We urge you to upgrade GNU
4914
*** binutils to release 2.9.1 or newer. Another option is to modify
4915
*** your PATH or compiler configuration so that the native linker is
4916
*** used, and then restart.
4919
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4920
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4921
_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'
4923
_LT_TAGVAR(ld_shlibs, $1)=no
4927
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4928
case `$LD -v 2>&1` in
4929
*\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
4930
_LT_TAGVAR(ld_shlibs, $1)=no
4933
*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4934
*** reliably create shared libraries on SCO systems. Therefore, libtool
4935
*** is disabling shared libraries support. We urge you to upgrade GNU
4936
*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
4937
*** your PATH or compiler configuration so that the native linker is
4938
*** used, and then restart.
4943
# For security reasons, it is highly recommended that you always
4944
# use absolute paths for naming shared libraries, and exclude the
4945
# DT_RUNPATH tag from executables and libraries. But doing so
4946
# requires that you compile everything twice, which is a pain.
4947
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4948
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4949
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4950
_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'
4952
_LT_TAGVAR(ld_shlibs, $1)=no
4959
_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4961
_LT_TAGVAR(hardcode_direct, $1)=yes
4962
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4966
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4967
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4968
_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'
4970
_LT_TAGVAR(ld_shlibs, $1)=no
4975
if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
4977
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4978
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
4979
_LT_TAGVAR(whole_archive_flag_spec, $1)=
4982
# PORTME fill in a description of your system's linker (not GNU ld)
4985
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4986
_LT_TAGVAR(always_export_symbols, $1)=yes
4987
_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'
4988
# Note: this linker hardcodes the directories in LIBPATH if there
4989
# are no directories specified by -L.
4990
_LT_TAGVAR(hardcode_minus_L, $1)=yes
4991
if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
4992
# Neither direct hardcoding nor static linking is supported with a
4994
_LT_TAGVAR(hardcode_direct, $1)=unsupported
4999
if test "$host_cpu" = ia64; then
5000
# On IA64, the linker does run time linking by default, so we don't
5001
# have to do anything special.
5002
aix_use_runtimelinking=no
5003
exp_sym_flag='-Bexport'
5006
# If we're using GNU nm, then we don't want the "-C" option.
5007
# -C means demangle to AIX nm, but means don't demangle with GNU nm
5008
# Also, AIX nm treats weak defined symbols like other global
5009
# defined symbols, whereas GNU nm marks them as "W".
5010
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5011
_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'
5013
_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'
5015
aix_use_runtimelinking=no
5017
# Test if we are trying to use run time linking or normal
5018
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
5019
# need to do runtime linking.
5020
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5021
for ld_flag in $LDFLAGS; do
5022
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
5023
aix_use_runtimelinking=yes
5030
exp_sym_flag='-bexport'
5031
no_entry_flag='-bnoentry'
5034
# When large executables or shared objects are built, AIX ld can
5035
# have problems creating the table of contents. If linking a library
5036
# or program results in "error TOC overflow" add -mminimal-toc to
5037
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5038
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5040
_LT_TAGVAR(archive_cmds, $1)=''
5041
_LT_TAGVAR(hardcode_direct, $1)=yes
5042
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5043
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5044
_LT_TAGVAR(link_all_deplibs, $1)=yes
5045
_LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
5047
if test "$GCC" = yes; then
5048
case $host_os in aix4.[[012]]|aix4.[[012]].*)
5049
# We only want to do this on AIX 4.2 and lower, the check
5050
# below for broken collect2 doesn't work under 4.3+
5051
collect2name=`${CC} -print-prog-name=collect2`
5052
if test -f "$collect2name" &&
5053
strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5055
# We have reworked collect2
5058
# We have old collect2
5059
_LT_TAGVAR(hardcode_direct, $1)=unsupported
5060
# It fails to find uninstalled libraries when the uninstalled
5061
# path is not listed in the libpath. Setting hardcode_minus_L
5062
# to unsupported forces relinking
5063
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5064
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5065
_LT_TAGVAR(hardcode_libdir_separator, $1)=
5069
shared_flag='-shared'
5070
if test "$aix_use_runtimelinking" = yes; then
5071
shared_flag="$shared_flag "'${wl}-G'
5073
_LT_TAGVAR(link_all_deplibs, $1)=no
5076
if test "$host_cpu" = ia64; then
5077
# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5078
# chokes on -Wl,-G. The following line is correct:
5081
if test "$aix_use_runtimelinking" = yes; then
5082
shared_flag='${wl}-G'
5084
shared_flag='${wl}-bM:SRE'
5089
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
5090
# It seems that -bexpall does not export symbols beginning with
5091
# underscore (_), so it is better to generate a list of symbols to export.
5092
_LT_TAGVAR(always_export_symbols, $1)=yes
5093
if test "$aix_use_runtimelinking" = yes; then
5094
# Warning - without using the other runtime loading flags (-brtl),
5095
# -berok will link without error, but may produce a broken library.
5096
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5097
# Determine the default libpath from the value encoded in an
5099
_LT_SYS_MODULE_PATH_AIX([$1])
5100
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5101
_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"
5103
if test "$host_cpu" = ia64; then
5104
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5105
_LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5106
_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"
5108
# Determine the default libpath from the value encoded in an
5110
_LT_SYS_MODULE_PATH_AIX([$1])
5111
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5112
# Warning - without using the other run time loading flags,
5113
# -berok will link without error, but may produce a broken library.
5114
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5115
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
5116
if test "$with_gnu_ld" = yes; then
5117
# We only use this code for GNU lds that support --whole-archive.
5118
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5120
# Exported symbols can be pulled into shared objects from archives
5121
_LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5123
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5124
# This is similar to how AIX traditionally builds its shared libraries.
5125
_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'
5133
# see comment about AmigaOS4 .so support
5134
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5135
_LT_TAGVAR(archive_expsym_cmds, $1)=''
5138
_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)'
5139
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5140
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5146
_LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5149
cygwin* | mingw* | pw32* | cegcc*)
5150
# When not using gcc, we currently assume that we are using
5151
# Microsoft Visual C++.
5152
# hardcode_libdir_flag_spec is actually meaningless, as there is
5153
# no search path for DLLs.
5154
case $cc_basename in
5157
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5158
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5159
_LT_TAGVAR(always_export_symbols, $1)=yes
5160
_LT_TAGVAR(file_list_spec, $1)='@'
5161
# Tell ltmain to make .lib files, not .a files.
5163
# Tell ltmain to make .dll files, not .so files.
5165
# FIXME: Setting linknames here is a bad hack.
5166
_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
5167
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5168
sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
5170
sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
5172
$CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5174
# The linker will not automatically build a static lib if we build a DLL.
5175
# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5176
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5177
_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5178
_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'
5180
_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5181
_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5182
lt_tool_outputfile="@TOOL_OUTPUT@"~
5183
case $lt_outputfile in
5186
lt_outputfile="$lt_outputfile.exe"
5187
lt_tool_outputfile="$lt_tool_outputfile.exe"
5190
if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
5191
$MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5192
$RM "$lt_outputfile.manifest";
5196
# Assume MSVC wrapper
5197
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5198
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5199
# Tell ltmain to make .lib files, not .a files.
5201
# Tell ltmain to make .dll files, not .so files.
5203
# FIXME: Setting linknames here is a bad hack.
5204
_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5205
# The linker will automatically build a .lib file if we build a DLL.
5206
_LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5207
# FIXME: Should let the user specify the lib program.
5208
_LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5209
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5214
darwin* | rhapsody*)
5215
_LT_DARWIN_LINKER_FEATURES($1)
5219
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5220
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5221
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5224
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5225
# support. Future versions do this automatically, but an explicit c++rt0.o
5226
# does not break anything, and helps significantly (at the cost of a little
5229
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5230
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5231
_LT_TAGVAR(hardcode_direct, $1)=yes
5232
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5235
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
5237
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5238
_LT_TAGVAR(hardcode_direct, $1)=yes
5239
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5240
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5243
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5244
freebsd* | dragonfly*)
5245
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5246
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5247
_LT_TAGVAR(hardcode_direct, $1)=yes
5248
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5252
if test "$GCC" = yes; then
5253
_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'
5255
_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'
5257
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5258
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5259
_LT_TAGVAR(hardcode_direct, $1)=yes
5261
# hardcode_minus_L: Not really in the search PATH,
5262
# but as the default location of the library.
5263
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5264
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5268
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5269
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5271
_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5273
if test "$with_gnu_ld" = no; then
5274
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5275
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5276
_LT_TAGVAR(hardcode_direct, $1)=yes
5277
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5278
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5279
# hardcode_minus_L: Not really in the search PATH,
5280
# but as the default location of the library.
5281
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5286
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5289
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5292
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5295
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5301
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5304
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5308
# Older versions of the 11.00 compiler do not understand -b yet
5309
# (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5310
_LT_LINKER_OPTION([if $CC understands -b],
5311
_LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5312
[_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5313
[_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5314
[_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5318
if test "$with_gnu_ld" = no; then
5319
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5320
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5324
_LT_TAGVAR(hardcode_direct, $1)=no
5325
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5328
_LT_TAGVAR(hardcode_direct, $1)=yes
5329
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5330
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5332
# hardcode_minus_L: Not really in the search PATH,
5333
# but as the default location of the library.
5334
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5340
irix5* | irix6* | nonstopux*)
5341
if test "$GCC" = yes; then
5342
_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'
5343
# Try to use the -exported_symbol ld option, if it does not
5344
# work, assume that -exports_file does not work either and
5345
# implicitly export all symbols.
5346
# This should be the same for all languages, so no per-tag cache variable.
5347
AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5348
[lt_cv_irix_exported_symbol],
5349
[save_LDFLAGS="$LDFLAGS"
5350
LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
5353
[AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5354
[C++], [[int foo (void) { return 0; }]],
5361
[lt_cv_irix_exported_symbol=yes],
5362
[lt_cv_irix_exported_symbol=no])
5363
LDFLAGS="$save_LDFLAGS"])
5364
if test "$lt_cv_irix_exported_symbol" = yes; then
5365
_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'
5368
_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'
5369
_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'
5371
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5372
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5373
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5374
_LT_TAGVAR(inherit_rpath, $1)=yes
5375
_LT_TAGVAR(link_all_deplibs, $1)=yes
5378
netbsd* | netbsdelf*-gnu)
5379
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5380
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5382
_LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5384
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5385
_LT_TAGVAR(hardcode_direct, $1)=yes
5386
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5390
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5391
_LT_TAGVAR(hardcode_direct, $1)=yes
5392
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5393
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5394
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5401
if test -f /usr/libexec/ld.so; then
5402
_LT_TAGVAR(hardcode_direct, $1)=yes
5403
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5404
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5405
if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
5406
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5407
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
5408
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5409
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5412
openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
5413
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5414
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5417
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5418
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5423
_LT_TAGVAR(ld_shlibs, $1)=no
5428
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5429
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5430
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5431
_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'
5432
_LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
5436
if test "$GCC" = yes; then
5437
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
5438
_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'
5440
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5441
_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'
5443
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5444
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5445
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5448
osf4* | osf5*) # as osf3* with the addition of -msym flag
5449
if test "$GCC" = yes; then
5450
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
5451
_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'
5452
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5454
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5455
_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'
5456
_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~
5457
$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'
5459
# Both c and cxx compiler support -rpath directly
5460
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5462
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5463
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
5467
_LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5468
if test "$GCC" = yes; then
5470
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5471
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5472
$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'
5474
case `$CC -V 2>&1` in
5477
_LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5478
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5479
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5483
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5484
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5485
$CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5489
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5490
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5492
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5494
# The compiler driver will combine and reorder linker options,
5495
# but understands `-z linker_flag'. GCC discards it without `$wl',
5496
# but is careful enough not to reorder.
5497
# Supported since Solaris 2.6 (maybe 2.5.1?)
5498
if test "$GCC" = yes; then
5499
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
5501
_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5505
_LT_TAGVAR(link_all_deplibs, $1)=yes
5509
if test "x$host_vendor" = xsequent; then
5510
# Use $CC to link under sequent, because it throws in some extra .o
5511
# files that make .init and .fini sections work.
5512
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5514
_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5516
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5517
_LT_TAGVAR(hardcode_direct, $1)=yes
5518
_LT_TAGVAR(hardcode_minus_L, $1)=yes
5519
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5523
case $host_vendor in
5525
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5526
_LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5529
## LD is ld it makes a PLAMLIB
5530
## CC just makes a GrossModule.
5531
_LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5532
_LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5533
_LT_TAGVAR(hardcode_direct, $1)=no
5536
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5537
_LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5540
runpath_var='LD_RUN_PATH'
5541
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5545
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5546
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5547
_LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5551
if test -d /usr/nec; then
5552
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5553
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5554
runpath_var=LD_RUN_PATH
5555
hardcode_runpath_var=yes
5556
_LT_TAGVAR(ld_shlibs, $1)=yes
5560
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
5561
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5562
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5563
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5564
runpath_var='LD_RUN_PATH'
5566
if test "$GCC" = yes; then
5567
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5568
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5570
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5571
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5575
sysv5* | sco3.2v5* | sco5v6*)
5576
# Note: We can NOT use -z defs as we might desire, because we do not
5577
# link with -lc, and that would cause any symbols used from libc to
5578
# always be unresolved, which means just about no library would
5579
# ever link correctly. If we're not using GNU ld we use -z text
5580
# though, which does catch some bad symbols but isn't as heavy-handed
5582
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5583
_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5584
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5585
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5586
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5587
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5588
_LT_TAGVAR(link_all_deplibs, $1)=yes
5589
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
5590
runpath_var='LD_RUN_PATH'
5592
if test "$GCC" = yes; then
5593
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5594
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5596
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5597
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5602
_LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5603
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5604
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5608
_LT_TAGVAR(ld_shlibs, $1)=no
5612
if test x$host_vendor = xsni; then
5614
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5615
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5621
AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5622
test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
5624
_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
5626
_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5627
_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5628
_LT_DECL([], [extract_expsyms_cmds], [2],
5629
[The commands to extract the exported symbol list from a shared archive])
5632
# Do we need to explicitly link libc?
5634
case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
5636
# Assume -lc should be added
5637
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5639
if test "$enable_shared" = yes && test "$GCC" = yes; then
5640
case $_LT_TAGVAR(archive_cmds, $1) in
5642
# FIXME: we may have to deal with multi-command sequences.
5645
# Test whether the compiler implicitly links with -lc since on some
5646
# systems, -lgcc has to come before -lc. If gcc already passes -lc
5647
# to ld, don't add -lc before -lgcc.
5648
AC_CACHE_CHECK([whether -lc should be explicitly linked in],
5649
[lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
5651
echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5653
if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5656
libobjs=conftest.$ac_objext
5658
wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5659
pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5665
lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5666
_LT_TAGVAR(allow_undefined_flag, $1)=
5667
if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5669
lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5671
lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5673
_LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5675
cat conftest.err 1>&5
5679
_LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
5686
_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5687
[Whether or not to add -lc for building shared libraries])
5688
_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5689
[enable_shared_with_static_runtimes], [0],
5690
[Whether or not to disallow shared libs when runtime libs are static])
5691
_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5692
[Compiler flag to allow reflexive dlopens])
5693
_LT_TAGDECL([], [whole_archive_flag_spec], [1],
5694
[Compiler flag to generate shared objects directly from archives])
5695
_LT_TAGDECL([], [compiler_needs_object], [1],
5696
[Whether the compiler copes with passing no objects directly])
5697
_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5698
[Create an old-style archive from a shared archive])
5699
_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5700
[Create a temporary old-style archive to link instead of a shared archive])
5701
_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5702
_LT_TAGDECL([], [archive_expsym_cmds], [2])
5703
_LT_TAGDECL([], [module_cmds], [2],
5704
[Commands used to build a loadable module if different from building
5706
_LT_TAGDECL([], [module_expsym_cmds], [2])
5707
_LT_TAGDECL([], [with_gnu_ld], [1],
5708
[Whether we are building with GNU ld or not])
5709
_LT_TAGDECL([], [allow_undefined_flag], [1],
5710
[Flag that allows shared libraries with undefined symbols to be built])
5711
_LT_TAGDECL([], [no_undefined_flag], [1],
5712
[Flag that enforces no undefined symbols])
5713
_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5714
[Flag to hardcode $libdir into a binary during linking.
5715
This must work even if $libdir does not exist])
5716
_LT_TAGDECL([], [hardcode_libdir_separator], [1],
5717
[Whether we need a single "-rpath" flag with a separated argument])
5718
_LT_TAGDECL([], [hardcode_direct], [0],
5719
[Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5720
DIR into the resulting binary])
5721
_LT_TAGDECL([], [hardcode_direct_absolute], [0],
5722
[Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5723
DIR into the resulting binary and the resulting library dependency is
5724
"absolute", i.e impossible to change by setting ${shlibpath_var} if the
5725
library is relocated])
5726
_LT_TAGDECL([], [hardcode_minus_L], [0],
5727
[Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5728
into the resulting binary])
5729
_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5730
[Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5731
into the resulting binary])
5732
_LT_TAGDECL([], [hardcode_automatic], [0],
5733
[Set to "yes" if building a shared library automatically hardcodes DIR
5734
into the library and all subsequent libraries and executables linked
5736
_LT_TAGDECL([], [inherit_rpath], [0],
5737
[Set to yes if linker adds runtime paths of dependent libraries
5738
to runtime path list])
5739
_LT_TAGDECL([], [link_all_deplibs], [0],
5740
[Whether libtool must link a program against all its dependency libraries])
5741
_LT_TAGDECL([], [always_export_symbols], [0],
5742
[Set to "yes" if exported symbols are required])
5743
_LT_TAGDECL([], [export_symbols_cmds], [2],
5744
[The commands to list exported symbols])
5745
_LT_TAGDECL([], [exclude_expsyms], [1],
5746
[Symbols that should not be listed in the preloaded symbols])
5747
_LT_TAGDECL([], [include_expsyms], [1],
5748
[Symbols that must always be exported])
5749
_LT_TAGDECL([], [prelink_cmds], [2],
5750
[Commands necessary for linking programs (against libraries) with templates])
5751
_LT_TAGDECL([], [postlink_cmds], [2],
5752
[Commands necessary for finishing linking programs])
5753
_LT_TAGDECL([], [file_list_spec], [1],
5754
[Specify filename containing input files])
5755
dnl FIXME: Not yet implemented
5756
dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5757
dnl [Compiler flag to generate thread safe objects])
5758
])# _LT_LINKER_SHLIBS
5761
# _LT_LANG_C_CONFIG([TAG])
5762
# ------------------------
5763
# Ensure that the configuration variables for a C compiler are suitably
5764
# defined. These variables are subsequently used by _LT_CONFIG to write
5765
# the compiler configuration to `libtool'.
5766
m4_defun([_LT_LANG_C_CONFIG],
5767
[m4_require([_LT_DECL_EGREP])dnl
5771
# Source file extension for C test sources.
5774
# Object file extension for compiled C test sources.
5776
_LT_TAGVAR(objext, $1)=$objext
5778
# Code to be used in simple compile tests
5779
lt_simple_compile_test_code="int some_variable = 0;"
5781
# Code to be used in simple link tests
5782
lt_simple_link_test_code='int main(){return(0);}'
5785
# Save the default compiler, since it gets overwritten when the other
5786
# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5787
compiler_DEFAULT=$CC
5789
# save warnings/boilerplate of simple test code
5790
_LT_COMPILER_BOILERPLATE
5791
_LT_LINKER_BOILERPLATE
5793
if test -n "$compiler"; then
5794
_LT_COMPILER_NO_RTTI($1)
5795
_LT_COMPILER_PIC($1)
5796
_LT_COMPILER_C_O($1)
5797
_LT_COMPILER_FILE_LOCKS($1)
5798
_LT_LINKER_SHLIBS($1)
5799
_LT_SYS_DYNAMIC_LINKER($1)
5800
_LT_LINKER_HARDCODE_LIBPATH($1)
5804
# Report which library types will actually be built
5805
AC_MSG_CHECKING([if libtool supports shared libraries])
5806
AC_MSG_RESULT([$can_build_shared])
5808
AC_MSG_CHECKING([whether to build shared libraries])
5809
test "$can_build_shared" = "no" && enable_shared=no
5811
# On AIX, shared libraries and static libraries use the same namespace, and
5812
# are all built from PIC.
5815
test "$enable_shared" = yes && enable_static=no
5816
if test -n "$RANLIB"; then
5817
archive_cmds="$archive_cmds~\$RANLIB \$lib"
5818
postinstall_cmds='$RANLIB $lib'
5823
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5824
test "$enable_shared" = yes && enable_static=no
5828
AC_MSG_RESULT([$enable_shared])
5830
AC_MSG_CHECKING([whether to build static libraries])
5831
# Make sure either enable_shared or enable_static is yes.
5832
test "$enable_shared" = yes || enable_static=yes
5833
AC_MSG_RESULT([$enable_static])
5839
])# _LT_LANG_C_CONFIG
5842
# _LT_LANG_CXX_CONFIG([TAG])
5843
# --------------------------
5844
# Ensure that the configuration variables for a C++ compiler are suitably
5845
# defined. These variables are subsequently used by _LT_CONFIG to write
5846
# the compiler configuration to `libtool'.
5847
m4_defun([_LT_LANG_CXX_CONFIG],
5848
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5849
m4_require([_LT_DECL_EGREP])dnl
5850
m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5851
if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5852
( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5853
(test "X$CXX" != "Xg++"))) ; then
5856
_lt_caught_CXX_error=yes
5860
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5861
_LT_TAGVAR(allow_undefined_flag, $1)=
5862
_LT_TAGVAR(always_export_symbols, $1)=no
5863
_LT_TAGVAR(archive_expsym_cmds, $1)=
5864
_LT_TAGVAR(compiler_needs_object, $1)=no
5865
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5866
_LT_TAGVAR(hardcode_direct, $1)=no
5867
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5868
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5869
_LT_TAGVAR(hardcode_libdir_separator, $1)=
5870
_LT_TAGVAR(hardcode_minus_L, $1)=no
5871
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5872
_LT_TAGVAR(hardcode_automatic, $1)=no
5873
_LT_TAGVAR(inherit_rpath, $1)=no
5874
_LT_TAGVAR(module_cmds, $1)=
5875
_LT_TAGVAR(module_expsym_cmds, $1)=
5876
_LT_TAGVAR(link_all_deplibs, $1)=unknown
5877
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
5878
_LT_TAGVAR(reload_flag, $1)=$reload_flag
5879
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5880
_LT_TAGVAR(no_undefined_flag, $1)=
5881
_LT_TAGVAR(whole_archive_flag_spec, $1)=
5882
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5884
# Source file extension for C++ test sources.
5887
# Object file extension for compiled C++ test sources.
5889
_LT_TAGVAR(objext, $1)=$objext
5891
# No sense in running all these tests if we already determined that
5892
# the CXX compiler isn't working. Some variables (like enable_shared)
5893
# are currently assumed to apply to all compilers on this platform,
5894
# and will be corrupted by setting them based on a non-working compiler.
5895
if test "$_lt_caught_CXX_error" != yes; then
5896
# Code to be used in simple compile tests
5897
lt_simple_compile_test_code="int some_variable = 0;"
5899
# Code to be used in simple link tests
5900
lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5902
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
5905
# save warnings/boilerplate of simple test code
5906
_LT_COMPILER_BOILERPLATE
5907
_LT_LINKER_BOILERPLATE
5909
# Allow CC to be a program name with arguments.
5911
lt_save_CFLAGS=$CFLAGS
5915
lt_save_with_gnu_ld=$with_gnu_ld
5916
lt_save_path_LD=$lt_cv_path_LD
5917
if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5918
lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
5920
$as_unset lt_cv_prog_gnu_ld
5922
if test -n "${lt_cv_path_LDCXX+set}"; then
5923
lt_cv_path_LD=$lt_cv_path_LDCXX
5925
$as_unset lt_cv_path_LD
5927
test -z "${LDCXX+set}" || LD=$LDCXX
5931
_LT_TAGVAR(compiler, $1)=$CC
5932
_LT_CC_BASENAME([$compiler])
5934
if test -n "$compiler"; then
5935
# We don't want -fno-exception when compiling C++ code, so set the
5936
# no_builtin_flag separately
5937
if test "$GXX" = yes; then
5938
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5940
_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5943
if test "$GXX" = yes; then
5944
# Set up default GNU C++ configuration
5948
# Check if GNU C++ uses GNU ld as the underlying linker, since the
5949
# archiving commands below assume that GNU ld is being used.
5950
if test "$with_gnu_ld" = yes; then
5951
_LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5952
_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'
5954
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5955
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5957
# If archive_cmds runs LD, not CC, wlarc should be empty
5958
# XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5959
# investigate it a little bit more. (MM)
5962
# ancient GNU ld didn't support --whole-archive et. al.
5963
if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5964
$GREP 'no-whole-archive' > /dev/null; then
5965
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5967
_LT_TAGVAR(whole_archive_flag_spec, $1)=
5973
# A generic and very simple default shared library creation
5974
# command for GNU C++ for the case where it uses the native
5975
# linker, instead of GNU ld. If possible, this setting should
5976
# overridden to take advantage of the native linker features on
5977
# the platform it is being used on.
5978
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
5981
# Commands to make compiler produce verbose output that lists
5982
# what "hidden" libraries, object files and flags are used when
5983
# linking a shared library.
5984
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5992
# PORTME: fill in a description of your system's C++ link characteristics
5993
AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5994
_LT_TAGVAR(ld_shlibs, $1)=yes
5997
# FIXME: insert proper C++ library support
5998
_LT_TAGVAR(ld_shlibs, $1)=no
6001
if test "$host_cpu" = ia64; then
6002
# On IA64, the linker does run time linking by default, so we don't
6003
# have to do anything special.
6004
aix_use_runtimelinking=no
6005
exp_sym_flag='-Bexport'
6008
aix_use_runtimelinking=no
6010
# Test if we are trying to use run time linking or normal
6011
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
6012
# need to do runtime linking.
6013
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6014
for ld_flag in $LDFLAGS; do
6017
aix_use_runtimelinking=yes
6025
exp_sym_flag='-bexport'
6026
no_entry_flag='-bnoentry'
6029
# When large executables or shared objects are built, AIX ld can
6030
# have problems creating the table of contents. If linking a library
6031
# or program results in "error TOC overflow" add -mminimal-toc to
6032
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6033
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6035
_LT_TAGVAR(archive_cmds, $1)=''
6036
_LT_TAGVAR(hardcode_direct, $1)=yes
6037
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6038
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6039
_LT_TAGVAR(link_all_deplibs, $1)=yes
6040
_LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
6042
if test "$GXX" = yes; then
6043
case $host_os in aix4.[[012]]|aix4.[[012]].*)
6044
# We only want to do this on AIX 4.2 and lower, the check
6045
# below for broken collect2 doesn't work under 4.3+
6046
collect2name=`${CC} -print-prog-name=collect2`
6047
if test -f "$collect2name" &&
6048
strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6050
# We have reworked collect2
6053
# We have old collect2
6054
_LT_TAGVAR(hardcode_direct, $1)=unsupported
6055
# It fails to find uninstalled libraries when the uninstalled
6056
# path is not listed in the libpath. Setting hardcode_minus_L
6057
# to unsupported forces relinking
6058
_LT_TAGVAR(hardcode_minus_L, $1)=yes
6059
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6060
_LT_TAGVAR(hardcode_libdir_separator, $1)=
6063
shared_flag='-shared'
6064
if test "$aix_use_runtimelinking" = yes; then
6065
shared_flag="$shared_flag "'${wl}-G'
6069
if test "$host_cpu" = ia64; then
6070
# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6071
# chokes on -Wl,-G. The following line is correct:
6074
if test "$aix_use_runtimelinking" = yes; then
6075
shared_flag='${wl}-G'
6077
shared_flag='${wl}-bM:SRE'
6082
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
6083
# It seems that -bexpall does not export symbols beginning with
6084
# underscore (_), so it is better to generate a list of symbols to
6086
_LT_TAGVAR(always_export_symbols, $1)=yes
6087
if test "$aix_use_runtimelinking" = yes; then
6088
# Warning - without using the other runtime loading flags (-brtl),
6089
# -berok will link without error, but may produce a broken library.
6090
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
6091
# Determine the default libpath from the value encoded in an empty
6093
_LT_SYS_MODULE_PATH_AIX([$1])
6094
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6096
_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"
6098
if test "$host_cpu" = ia64; then
6099
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6100
_LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6101
_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"
6103
# Determine the default libpath from the value encoded in an
6105
_LT_SYS_MODULE_PATH_AIX([$1])
6106
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6107
# Warning - without using the other run time loading flags,
6108
# -berok will link without error, but may produce a broken library.
6109
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6110
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
6111
if test "$with_gnu_ld" = yes; then
6112
# We only use this code for GNU lds that support --whole-archive.
6113
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6115
# Exported symbols can be pulled into shared objects from archives
6116
_LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6118
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6119
# This is similar to how AIX traditionally builds its shared
6121
_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'
6127
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6128
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6129
# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6130
# support --undefined. This deserves some investigation. FIXME
6131
_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6133
_LT_TAGVAR(ld_shlibs, $1)=no
6138
case $cc_basename in
6140
# FIXME: insert proper C++ library support
6141
_LT_TAGVAR(ld_shlibs, $1)=no
6146
cygwin* | mingw* | pw32* | cegcc*)
6147
case $GXX,$cc_basename in
6150
# hardcode_libdir_flag_spec is actually meaningless, as there is
6151
# no search path for DLLs.
6152
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6153
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6154
_LT_TAGVAR(always_export_symbols, $1)=yes
6155
_LT_TAGVAR(file_list_spec, $1)='@'
6156
# Tell ltmain to make .lib files, not .a files.
6158
# Tell ltmain to make .dll files, not .so files.
6160
# FIXME: Setting linknames here is a bad hack.
6161
_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6162
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6163
$SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6165
$SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6167
$CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6169
# The linker will not automatically build a static lib if we build a DLL.
6170
# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6171
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6173
_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6174
_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6175
lt_tool_outputfile="@TOOL_OUTPUT@"~
6176
case $lt_outputfile in
6179
lt_outputfile="$lt_outputfile.exe"
6180
lt_tool_outputfile="$lt_tool_outputfile.exe"
6183
func_to_tool_file "$lt_outputfile"~
6184
if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6185
$MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6186
$RM "$lt_outputfile.manifest";
6191
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6192
# as there is no search path for DLLs.
6193
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6194
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
6195
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6196
_LT_TAGVAR(always_export_symbols, $1)=no
6197
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6199
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6200
_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'
6201
# If the export-symbols file already is a .def file (1st line
6202
# is EXPORTS), use it as is; otherwise, prepend...
6203
_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6204
cp $export_symbols $output_objdir/$soname.def;
6206
echo EXPORTS > $output_objdir/$soname.def;
6207
cat $export_symbols >> $output_objdir/$soname.def;
6209
$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'
6211
_LT_TAGVAR(ld_shlibs, $1)=no
6216
darwin* | rhapsody*)
6217
_LT_DARWIN_LINKER_FEATURES($1)
6221
case $cc_basename in
6223
# FIXME: insert proper C++ library support
6224
_LT_TAGVAR(ld_shlibs, $1)=no
6227
# Green Hills C++ Compiler
6228
# FIXME: insert proper C++ library support
6229
_LT_TAGVAR(ld_shlibs, $1)=no
6232
# FIXME: insert proper C++ library support
6233
_LT_TAGVAR(ld_shlibs, $1)=no
6239
# C++ shared libraries reported to be fairly broken before
6241
_LT_TAGVAR(ld_shlibs, $1)=no
6245
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6248
freebsd* | dragonfly*)
6249
# FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6251
_LT_TAGVAR(ld_shlibs, $1)=yes
6258
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6259
_LT_TAGVAR(link_all_deplibs, $1)=yes
6263
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6264
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6265
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6266
_LT_TAGVAR(hardcode_direct, $1)=yes
6267
_LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6268
# but as the default
6269
# location of the library.
6271
case $cc_basename in
6273
# FIXME: insert proper C++ library support
6274
_LT_TAGVAR(ld_shlibs, $1)=no
6277
_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'
6278
# Commands to make compiler produce verbose output that lists
6279
# what "hidden" libraries, object files and flags are used when
6280
# linking a shared library.
6282
# There doesn't appear to be a way to prevent this compiler from
6283
# explicitly linking system object files so we need to strip them
6284
# from the output so that they don't get included in the library
6286
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"'
6289
if test "$GXX" = yes; then
6290
_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'
6292
# FIXME: insert proper C++ library support
6293
_LT_TAGVAR(ld_shlibs, $1)=no
6300
if test $with_gnu_ld = no; then
6301
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6302
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6308
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6314
_LT_TAGVAR(hardcode_direct, $1)=no
6315
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6318
_LT_TAGVAR(hardcode_direct, $1)=yes
6319
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6320
_LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6321
# but as the default
6322
# location of the library.
6326
case $cc_basename in
6328
# FIXME: insert proper C++ library support
6329
_LT_TAGVAR(ld_shlibs, $1)=no
6334
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6337
_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6340
_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'
6343
# Commands to make compiler produce verbose output that lists
6344
# what "hidden" libraries, object files and flags are used when
6345
# linking a shared library.
6347
# There doesn't appear to be a way to prevent this compiler from
6348
# explicitly linking system object files so we need to strip them
6349
# from the output so that they don't get included in the library
6351
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"'
6354
if test "$GXX" = yes; then
6355
if test $with_gnu_ld = no; then
6358
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6361
_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'
6364
_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'
6369
# FIXME: insert proper C++ library support
6370
_LT_TAGVAR(ld_shlibs, $1)=no
6377
_LT_TAGVAR(hardcode_direct, $1)=no
6378
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6379
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6380
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6381
# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6382
# Instead, shared libraries are loaded at an image base (0x10000000 by
6383
# default) and relocated if they conflict, which is a slow very memory
6384
# consuming and fragmenting process. To avoid this, we pick a random,
6385
# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6386
# time. Moving up from 0x10000000 also allows more sbrk(2) space.
6387
_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'
6388
_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'
6391
case $cc_basename in
6394
_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'
6396
# Archives containing C++ object files must be created using
6397
# "CC -ar", where "CC" is the IRIX C++ compiler. This is
6398
# necessary to make sure instantiated templates are included
6400
_LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6403
if test "$GXX" = yes; then
6404
if test "$with_gnu_ld" = no; then
6405
_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'
6407
_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'
6410
_LT_TAGVAR(link_all_deplibs, $1)=yes
6413
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6414
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6415
_LT_TAGVAR(inherit_rpath, $1)=yes
6418
linux* | k*bsd*-gnu | kopensolaris*-gnu)
6419
case $cc_basename in
6421
# Kuck and Associates, Inc. (KAI) C++ Compiler
6423
# KCC will only create a shared library if the output file
6424
# ends with ".so" (or ".sl" for HP-UX), so rename the library
6425
# to its proper name (with version) after linking.
6426
_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'
6427
_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'
6428
# Commands to make compiler produce verbose output that lists
6429
# what "hidden" libraries, object files and flags are used when
6430
# linking a shared library.
6432
# There doesn't appear to be a way to prevent this compiler from
6433
# explicitly linking system object files so we need to strip them
6434
# from the output so that they don't get included in the library
6436
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"'
6438
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6439
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6441
# Archives containing C++ object files must be created using
6442
# "CC -Bstatic", where "CC" is the KAI C++ compiler.
6443
_LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6448
# version 8.0 and above of icpc choke on multiply defined symbols
6449
# if we add $predep_objects and $postdep_objects, however 7.1 and
6450
# earlier do not add the objects themselves.
6451
case `$CC -V 2>&1` in
6453
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6454
_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'
6456
*) # Version 8.0 or newer
6459
ia64*) tmp_idyn=' -i_dynamic';;
6461
_LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6462
_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'
6465
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6466
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6467
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6468
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6471
# Portland Group C++ compiler
6473
*pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
6474
_LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6476
$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
6477
compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
6478
_LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6480
$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
6481
$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
6483
_LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6485
$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
6486
$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6487
_LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
6489
$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
6490
$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'
6492
*) # Version 6 and above use weak symbols
6493
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6494
_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'
6498
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6499
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6500
_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'
6504
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6505
_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'
6507
runpath_var=LD_RUN_PATH
6508
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6509
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6511
# Commands to make compiler produce verbose output that lists
6512
# what "hidden" libraries, object files and flags are used when
6513
# linking a shared library.
6515
# There doesn't appear to be a way to prevent this compiler from
6516
# explicitly linking system object files so we need to strip them
6517
# from the output so that they don't get included in the library
6519
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'
6521
xl* | mpixl* | bgxl*)
6522
# IBM XL 8.0 on PPC, with GNU ld
6523
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6524
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6525
_LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6526
if test "x$supports_anon_versioning" = xyes; then
6527
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6528
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6529
echo "local: *; };" >> $output_objdir/$libname.ver~
6530
$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6534
case `$CC -V 2>&1 | sed 5q` in
6537
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6538
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6539
_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'
6540
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6541
_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'
6542
_LT_TAGVAR(compiler_needs_object, $1)=yes
6544
# Not sure whether something based on
6545
# $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6547
output_verbose_link_cmd='func_echo_all'
6549
# Archives containing C++ object files must be created using
6550
# "CC -xar", where "CC" is the Sun C++ compiler. This is
6551
# necessary to make sure instantiated templates are included
6553
_LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6561
# FIXME: insert proper C++ library support
6562
_LT_TAGVAR(ld_shlibs, $1)=no
6566
# FIXME: insert proper C++ library support
6567
_LT_TAGVAR(ld_shlibs, $1)=no
6571
case $cc_basename in
6573
# FIXME: insert proper C++ library support
6574
_LT_TAGVAR(ld_shlibs, $1)=no
6577
# FIXME: insert proper C++ library support
6578
_LT_TAGVAR(ld_shlibs, $1)=no
6584
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6585
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6587
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6588
_LT_TAGVAR(hardcode_direct, $1)=yes
6589
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6591
# Workaround some broken pre-1.5 toolchains
6592
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6596
_LT_TAGVAR(ld_shlibs, $1)=yes
6600
# C++ shared libraries are fairly broken
6601
_LT_TAGVAR(ld_shlibs, $1)=no
6605
if test -f /usr/libexec/ld.so; then
6606
_LT_TAGVAR(hardcode_direct, $1)=yes
6607
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6608
_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6609
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6610
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6611
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6612
_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'
6613
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6614
_LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6616
output_verbose_link_cmd=func_echo_all
6618
_LT_TAGVAR(ld_shlibs, $1)=no
6622
osf3* | osf4* | osf5*)
6623
case $cc_basename in
6625
# Kuck and Associates, Inc. (KAI) C++ Compiler
6627
# KCC will only create a shared library if the output file
6628
# ends with ".so" (or ".sl" for HP-UX), so rename the library
6629
# to its proper name (with version) after linking.
6630
_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'
6632
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6633
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6635
# Archives containing C++ object files must be created using
6636
# the KAI C++ compiler.
6638
osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6639
*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6643
# Rational C++ 2.4.1
6644
# FIXME: insert proper C++ library support
6645
_LT_TAGVAR(ld_shlibs, $1)=no
6650
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6651
_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'
6652
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6655
_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6656
_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'
6657
_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6658
echo "-hidden">> $lib.exp~
6659
$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~
6661
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6665
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6667
# Commands to make compiler produce verbose output that lists
6668
# what "hidden" libraries, object files and flags are used when
6669
# linking a shared library.
6671
# There doesn't appear to be a way to prevent this compiler from
6672
# explicitly linking system object files so we need to strip them
6673
# from the output so that they don't get included in the library
6675
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"'
6678
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6679
_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6682
_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'
6685
_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'
6689
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6690
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
6692
# Commands to make compiler produce verbose output that lists
6693
# what "hidden" libraries, object files and flags are used when
6694
# linking a shared library.
6695
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6698
# FIXME: insert proper C++ library support
6699
_LT_TAGVAR(ld_shlibs, $1)=no
6706
# FIXME: insert proper C++ library support
6707
_LT_TAGVAR(ld_shlibs, $1)=no
6711
case $cc_basename in
6714
# FIXME: insert proper C++ library support
6715
_LT_TAGVAR(ld_shlibs, $1)=no
6719
# FIXME: insert proper C++ library support
6720
_LT_TAGVAR(ld_shlibs, $1)=no
6723
# FIXME: insert proper C++ library support
6724
_LT_TAGVAR(ld_shlibs, $1)=no
6730
case $cc_basename in
6732
# Sun C++ 4.2, 5.x and Centerline C++
6733
_LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6734
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6735
_LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6736
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6737
$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'
6739
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6740
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6742
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6744
# The compiler driver will combine and reorder linker options,
6745
# but understands `-z linker_flag'.
6746
# Supported since Solaris 2.6 (maybe 2.5.1?)
6747
_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6750
_LT_TAGVAR(link_all_deplibs, $1)=yes
6752
output_verbose_link_cmd='func_echo_all'
6754
# Archives containing C++ object files must be created using
6755
# "CC -xar", where "CC" is the Sun C++ compiler. This is
6756
# necessary to make sure instantiated templates are included
6758
_LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6761
# Green Hills C++ Compiler
6762
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6764
# The C++ compiler must be used to create the archive.
6765
_LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
6768
# GNU C++ compiler with Solaris linker
6769
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6770
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6771
if $CC --version | $GREP -v '^2\.7' > /dev/null; then
6772
_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'
6773
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6774
$CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6776
# Commands to make compiler produce verbose output that lists
6777
# what "hidden" libraries, object files and flags are used when
6778
# linking a shared library.
6779
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6781
# g++ 2.7 appears to require `-G' NOT `-shared' on this
6783
_LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6784
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6785
$CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6787
# Commands to make compiler produce verbose output that lists
6788
# what "hidden" libraries, object files and flags are used when
6789
# linking a shared library.
6790
output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6793
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6795
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6797
_LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6805
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6806
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6807
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6808
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6809
runpath_var='LD_RUN_PATH'
6811
case $cc_basename in
6813
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6814
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6817
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6818
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6823
sysv5* | sco3.2v5* | sco5v6*)
6824
# Note: We can NOT use -z defs as we might desire, because we do not
6825
# link with -lc, and that would cause any symbols used from libc to
6826
# always be unresolved, which means just about no library would
6827
# ever link correctly. If we're not using GNU ld we use -z text
6828
# though, which does catch some bad symbols but isn't as heavy-handed
6830
_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6831
_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6832
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6833
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6834
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6835
_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6836
_LT_TAGVAR(link_all_deplibs, $1)=yes
6837
_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6838
runpath_var='LD_RUN_PATH'
6840
case $cc_basename in
6842
_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6843
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6844
_LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6845
'"$_LT_TAGVAR(old_archive_cmds, $1)"
6846
_LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6847
'"$_LT_TAGVAR(reload_cmds, $1)"
6850
_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6851
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6857
case $cc_basename in
6859
# NonStop-UX NCC 3.20
6860
# FIXME: insert proper C++ library support
6861
_LT_TAGVAR(ld_shlibs, $1)=no
6864
# FIXME: insert proper C++ library support
6865
_LT_TAGVAR(ld_shlibs, $1)=no
6871
# FIXME: insert proper C++ library support
6872
_LT_TAGVAR(ld_shlibs, $1)=no
6876
# FIXME: insert proper C++ library support
6877
_LT_TAGVAR(ld_shlibs, $1)=no
6881
AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6882
test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6884
_LT_TAGVAR(GCC, $1)="$GXX"
6885
_LT_TAGVAR(LD, $1)="$LD"
6888
## There is no encapsulation within the following macros, do not change
6889
## the running order or otherwise move them around unless you know exactly
6890
## what you are doing...
6891
_LT_SYS_HIDDEN_LIBDEPS($1)
6892
_LT_COMPILER_PIC($1)
6893
_LT_COMPILER_C_O($1)
6894
_LT_COMPILER_FILE_LOCKS($1)
6895
_LT_LINKER_SHLIBS($1)
6896
_LT_SYS_DYNAMIC_LINKER($1)
6897
_LT_LINKER_HARDCODE_LIBPATH($1)
6900
fi # test -n "$compiler"
6903
CFLAGS=$lt_save_CFLAGS
6907
with_gnu_ld=$lt_save_with_gnu_ld
6908
lt_cv_path_LDCXX=$lt_cv_path_LD
6909
lt_cv_path_LD=$lt_save_path_LD
6910
lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6911
lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6912
fi # test "$_lt_caught_CXX_error" != yes
6915
])# _LT_LANG_CXX_CONFIG
6918
# _LT_FUNC_STRIPNAME_CNF
6919
# ----------------------
6920
# func_stripname_cnf prefix suffix name
6921
# strip PREFIX and SUFFIX off of NAME.
6922
# PREFIX and SUFFIX must not contain globbing or regex special
6923
# characters, hashes, percent signs, but SUFFIX may contain a leading
6924
# dot (in which case that matches only a dot).
6926
# This function is identical to the (non-XSI) version of func_stripname,
6927
# except this one can be used by m4 code that may be executed by configure,
6928
# rather than the libtool script.
6929
m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6930
AC_REQUIRE([_LT_DECL_SED])
6931
AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6932
func_stripname_cnf ()
6935
.*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6936
*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6938
} # func_stripname_cnf
6939
])# _LT_FUNC_STRIPNAME_CNF
6941
# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6942
# ---------------------------------
6943
# Figure out "hidden" library dependencies from verbose
6944
# compiler output when linking a shared library.
6945
# Parse the compiler output and extract the necessary
6946
# objects, libraries and library flags.
6947
m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6948
[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6949
AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
6950
# Dependencies to place before and after the object being linked:
6951
_LT_TAGVAR(predep_objects, $1)=
6952
_LT_TAGVAR(postdep_objects, $1)=
6953
_LT_TAGVAR(predeps, $1)=
6954
_LT_TAGVAR(postdeps, $1)=
6955
_LT_TAGVAR(compiler_lib_search_path, $1)=
6957
dnl we can't use the lt_simple_compile_test_code here,
6958
dnl because it contains code intended for an executable,
6959
dnl not a library. It's possible we should let each
6960
dnl tag define a new lt_????_link_test_code variable,
6961
dnl but it's only used here...
6962
m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6964
void foo (void) { a = 0; }
6966
], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6970
Foo (void) { a = 0; }
6975
], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6983
], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6991
], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6994
public void bar (void) {
6999
], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7006
_lt_libdeps_save_CFLAGS=$CFLAGS
7007
case "$CC $CFLAGS " in #(
7008
*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7009
*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7010
*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7013
dnl Parse the compiler output and extract the necessary
7014
dnl objects, libraries and library flags.
7015
if AC_TRY_EVAL(ac_compile); then
7016
# Parse the compiler output and extract the necessary
7017
# objects, libraries and library flags.
7019
# Sentinel used to keep track of whether or not we are before
7020
# the conftest object file.
7021
pre_test_object_deps_done=no
7023
for p in `eval "$output_verbose_link_cmd"`; do
7027
# Some compilers place space between "-{L,R}" and the path.
7029
if test $p = "-L" ||
7030
test $p = "-R"; then
7035
# Expand the sysroot to ease extracting the directories later.
7036
if test -z "$prev"; then
7038
-L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7039
-R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7040
-l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7044
=*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7046
if test "$pre_test_object_deps_done" = no; then
7049
# Internal compiler library paths should come after those
7050
# provided the user. The postdeps already come after the
7051
# user supplied libs so there is no need to process them.
7052
if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7053
_LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
7055
_LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
7058
# The "-l" case would never come before the object being
7059
# linked, so don't bother handling this case.
7062
if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7063
_LT_TAGVAR(postdeps, $1)="${prev}${p}"
7065
_LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
7071
*.lto.$objext) ;; # Ignore GCC LTO objects
7073
# This assumes that the test object file only shows up
7074
# once in the compiler output.
7075
if test "$p" = "conftest.$objext"; then
7076
pre_test_object_deps_done=yes
7080
if test "$pre_test_object_deps_done" = no; then
7081
if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7082
_LT_TAGVAR(predep_objects, $1)="$p"
7084
_LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7087
if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7088
_LT_TAGVAR(postdep_objects, $1)="$p"
7090
_LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7095
*) ;; # Ignore the rest.
7103
echo "libtool.m4: error: problem compiling $1 test program"
7106
$RM -f confest.$objext
7107
CFLAGS=$_lt_libdeps_save_CFLAGS
7109
# PORTME: override above test on systems where it is broken
7113
# Interix 3.5 installs completely hosed .la files for C++, so rather than
7114
# hack all around it, let's just trust "g++" to DTRT.
7115
_LT_TAGVAR(predep_objects,$1)=
7116
_LT_TAGVAR(postdep_objects,$1)=
7117
_LT_TAGVAR(postdeps,$1)=
7121
case `$CC -V 2>&1 | sed 5q` in
7125
# The more standards-conforming stlport4 library is
7126
# incompatible with the Cstd library. Avoid specifying
7127
# it if it's in CXXFLAGS. Ignore libCrun as
7128
# -library=stlport4 depends on it.
7129
case " $CXX $CXXFLAGS " in
7130
*" -library=stlport4 "*)
7131
solaris_use_stlport4=yes
7135
if test "$solaris_use_stlport4" != yes; then
7136
_LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7143
case $cc_basename in
7145
# The more standards-conforming stlport4 library is
7146
# incompatible with the Cstd library. Avoid specifying
7147
# it if it's in CXXFLAGS. Ignore libCrun as
7148
# -library=stlport4 depends on it.
7149
case " $CXX $CXXFLAGS " in
7150
*" -library=stlport4 "*)
7151
solaris_use_stlport4=yes
7155
# Adding this requires a known-good setup of shared libraries for
7156
# Sun compiler versions before 5.6, else PIC objects from an old
7157
# archive will be linked into the output, leading to subtle bugs.
7158
if test "$solaris_use_stlport4" != yes; then
7159
_LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7167
case " $_LT_TAGVAR(postdeps, $1) " in
7168
*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7170
_LT_TAGVAR(compiler_lib_search_dirs, $1)=
7171
if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7172
_LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
7174
_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7175
[The directories searched by this compiler when creating a shared library])
7176
_LT_TAGDECL([], [predep_objects], [1],
7177
[Dependencies to place before and after the objects being linked to
7178
create a shared library])
7179
_LT_TAGDECL([], [postdep_objects], [1])
7180
_LT_TAGDECL([], [predeps], [1])
7181
_LT_TAGDECL([], [postdeps], [1])
7182
_LT_TAGDECL([], [compiler_lib_search_path], [1],
7183
[The library search path used internally by the compiler when linking
7185
])# _LT_SYS_HIDDEN_LIBDEPS
7188
# _LT_LANG_F77_CONFIG([TAG])
7189
# --------------------------
7190
# Ensure that the configuration variables for a Fortran 77 compiler are
7191
# suitably defined. These variables are subsequently used by _LT_CONFIG
7192
# to write the compiler configuration to `libtool'.
7193
m4_defun([_LT_LANG_F77_CONFIG],
7194
[AC_LANG_PUSH(Fortran 77)
7195
if test -z "$F77" || test "X$F77" = "Xno"; then
7199
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7200
_LT_TAGVAR(allow_undefined_flag, $1)=
7201
_LT_TAGVAR(always_export_symbols, $1)=no
7202
_LT_TAGVAR(archive_expsym_cmds, $1)=
7203
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7204
_LT_TAGVAR(hardcode_direct, $1)=no
7205
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7206
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7207
_LT_TAGVAR(hardcode_libdir_separator, $1)=
7208
_LT_TAGVAR(hardcode_minus_L, $1)=no
7209
_LT_TAGVAR(hardcode_automatic, $1)=no
7210
_LT_TAGVAR(inherit_rpath, $1)=no
7211
_LT_TAGVAR(module_cmds, $1)=
7212
_LT_TAGVAR(module_expsym_cmds, $1)=
7213
_LT_TAGVAR(link_all_deplibs, $1)=unknown
7214
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7215
_LT_TAGVAR(reload_flag, $1)=$reload_flag
7216
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7217
_LT_TAGVAR(no_undefined_flag, $1)=
7218
_LT_TAGVAR(whole_archive_flag_spec, $1)=
7219
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7221
# Source file extension for f77 test sources.
7224
# Object file extension for compiled f77 test sources.
7226
_LT_TAGVAR(objext, $1)=$objext
7228
# No sense in running all these tests if we already determined that
7229
# the F77 compiler isn't working. Some variables (like enable_shared)
7230
# are currently assumed to apply to all compilers on this platform,
7231
# and will be corrupted by setting them based on a non-working compiler.
7232
if test "$_lt_disable_F77" != yes; then
7233
# Code to be used in simple compile tests
7234
lt_simple_compile_test_code="\
7240
# Code to be used in simple link tests
7241
lt_simple_link_test_code="\
7246
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7249
# save warnings/boilerplate of simple test code
7250
_LT_COMPILER_BOILERPLATE
7251
_LT_LINKER_BOILERPLATE
7253
# Allow CC to be a program name with arguments.
7256
lt_save_CFLAGS=$CFLAGS
7260
_LT_TAGVAR(compiler, $1)=$CC
7261
_LT_CC_BASENAME([$compiler])
7263
if test -n "$compiler"; then
7264
AC_MSG_CHECKING([if libtool supports shared libraries])
7265
AC_MSG_RESULT([$can_build_shared])
7267
AC_MSG_CHECKING([whether to build shared libraries])
7268
test "$can_build_shared" = "no" && enable_shared=no
7270
# On AIX, shared libraries and static libraries use the same namespace, and
7271
# are all built from PIC.
7274
test "$enable_shared" = yes && enable_static=no
7275
if test -n "$RANLIB"; then
7276
archive_cmds="$archive_cmds~\$RANLIB \$lib"
7277
postinstall_cmds='$RANLIB $lib'
7281
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7282
test "$enable_shared" = yes && enable_static=no
7286
AC_MSG_RESULT([$enable_shared])
7288
AC_MSG_CHECKING([whether to build static libraries])
7289
# Make sure either enable_shared or enable_static is yes.
7290
test "$enable_shared" = yes || enable_static=yes
7291
AC_MSG_RESULT([$enable_static])
7293
_LT_TAGVAR(GCC, $1)="$G77"
7294
_LT_TAGVAR(LD, $1)="$LD"
7297
## There is no encapsulation within the following macros, do not change
7298
## the running order or otherwise move them around unless you know exactly
7299
## what you are doing...
7300
_LT_COMPILER_PIC($1)
7301
_LT_COMPILER_C_O($1)
7302
_LT_COMPILER_FILE_LOCKS($1)
7303
_LT_LINKER_SHLIBS($1)
7304
_LT_SYS_DYNAMIC_LINKER($1)
7305
_LT_LINKER_HARDCODE_LIBPATH($1)
7308
fi # test -n "$compiler"
7312
CFLAGS="$lt_save_CFLAGS"
7313
fi # test "$_lt_disable_F77" != yes
7316
])# _LT_LANG_F77_CONFIG
7319
# _LT_LANG_FC_CONFIG([TAG])
7320
# -------------------------
7321
# Ensure that the configuration variables for a Fortran compiler are
7322
# suitably defined. These variables are subsequently used by _LT_CONFIG
7323
# to write the compiler configuration to `libtool'.
7324
m4_defun([_LT_LANG_FC_CONFIG],
7325
[AC_LANG_PUSH(Fortran)
7327
if test -z "$FC" || test "X$FC" = "Xno"; then
7331
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7332
_LT_TAGVAR(allow_undefined_flag, $1)=
7333
_LT_TAGVAR(always_export_symbols, $1)=no
7334
_LT_TAGVAR(archive_expsym_cmds, $1)=
7335
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7336
_LT_TAGVAR(hardcode_direct, $1)=no
7337
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7338
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7339
_LT_TAGVAR(hardcode_libdir_separator, $1)=
7340
_LT_TAGVAR(hardcode_minus_L, $1)=no
7341
_LT_TAGVAR(hardcode_automatic, $1)=no
7342
_LT_TAGVAR(inherit_rpath, $1)=no
7343
_LT_TAGVAR(module_cmds, $1)=
7344
_LT_TAGVAR(module_expsym_cmds, $1)=
7345
_LT_TAGVAR(link_all_deplibs, $1)=unknown
7346
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7347
_LT_TAGVAR(reload_flag, $1)=$reload_flag
7348
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7349
_LT_TAGVAR(no_undefined_flag, $1)=
7350
_LT_TAGVAR(whole_archive_flag_spec, $1)=
7351
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7353
# Source file extension for fc test sources.
7354
ac_ext=${ac_fc_srcext-f}
7356
# Object file extension for compiled fc test sources.
7358
_LT_TAGVAR(objext, $1)=$objext
7360
# No sense in running all these tests if we already determined that
7361
# the FC compiler isn't working. Some variables (like enable_shared)
7362
# are currently assumed to apply to all compilers on this platform,
7363
# and will be corrupted by setting them based on a non-working compiler.
7364
if test "$_lt_disable_FC" != yes; then
7365
# Code to be used in simple compile tests
7366
lt_simple_compile_test_code="\
7372
# Code to be used in simple link tests
7373
lt_simple_link_test_code="\
7378
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7381
# save warnings/boilerplate of simple test code
7382
_LT_COMPILER_BOILERPLATE
7383
_LT_LINKER_BOILERPLATE
7385
# Allow CC to be a program name with arguments.
7388
lt_save_CFLAGS=$CFLAGS
7392
GCC=$ac_cv_fc_compiler_gnu
7394
_LT_TAGVAR(compiler, $1)=$CC
7395
_LT_CC_BASENAME([$compiler])
7397
if test -n "$compiler"; then
7398
AC_MSG_CHECKING([if libtool supports shared libraries])
7399
AC_MSG_RESULT([$can_build_shared])
7401
AC_MSG_CHECKING([whether to build shared libraries])
7402
test "$can_build_shared" = "no" && enable_shared=no
7404
# On AIX, shared libraries and static libraries use the same namespace, and
7405
# are all built from PIC.
7408
test "$enable_shared" = yes && enable_static=no
7409
if test -n "$RANLIB"; then
7410
archive_cmds="$archive_cmds~\$RANLIB \$lib"
7411
postinstall_cmds='$RANLIB $lib'
7415
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7416
test "$enable_shared" = yes && enable_static=no
7420
AC_MSG_RESULT([$enable_shared])
7422
AC_MSG_CHECKING([whether to build static libraries])
7423
# Make sure either enable_shared or enable_static is yes.
7424
test "$enable_shared" = yes || enable_static=yes
7425
AC_MSG_RESULT([$enable_static])
7427
_LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
7428
_LT_TAGVAR(LD, $1)="$LD"
7431
## There is no encapsulation within the following macros, do not change
7432
## the running order or otherwise move them around unless you know exactly
7433
## what you are doing...
7434
_LT_SYS_HIDDEN_LIBDEPS($1)
7435
_LT_COMPILER_PIC($1)
7436
_LT_COMPILER_C_O($1)
7437
_LT_COMPILER_FILE_LOCKS($1)
7438
_LT_LINKER_SHLIBS($1)
7439
_LT_SYS_DYNAMIC_LINKER($1)
7440
_LT_LINKER_HARDCODE_LIBPATH($1)
7443
fi # test -n "$compiler"
7447
CFLAGS=$lt_save_CFLAGS
7448
fi # test "$_lt_disable_FC" != yes
7451
])# _LT_LANG_FC_CONFIG
7454
# _LT_LANG_GCJ_CONFIG([TAG])
7455
# --------------------------
7456
# Ensure that the configuration variables for the GNU Java Compiler compiler
7457
# are suitably defined. These variables are subsequently used by _LT_CONFIG
7458
# to write the compiler configuration to `libtool'.
7459
m4_defun([_LT_LANG_GCJ_CONFIG],
7460
[AC_REQUIRE([LT_PROG_GCJ])dnl
7463
# Source file extension for Java test sources.
7466
# Object file extension for compiled Java test sources.
7468
_LT_TAGVAR(objext, $1)=$objext
7470
# Code to be used in simple compile tests
7471
lt_simple_compile_test_code="class foo {}"
7473
# Code to be used in simple link tests
7474
lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7476
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7479
# save warnings/boilerplate of simple test code
7480
_LT_COMPILER_BOILERPLATE
7481
_LT_LINKER_BOILERPLATE
7483
# Allow CC to be a program name with arguments.
7485
lt_save_CFLAGS=$CFLAGS
7491
_LT_TAGVAR(compiler, $1)=$CC
7492
_LT_TAGVAR(LD, $1)="$LD"
7493
_LT_CC_BASENAME([$compiler])
7495
# GCJ did not exist at the time GCC didn't implicitly link libc in.
7496
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7498
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7499
_LT_TAGVAR(reload_flag, $1)=$reload_flag
7500
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7502
if test -n "$compiler"; then
7503
_LT_COMPILER_NO_RTTI($1)
7504
_LT_COMPILER_PIC($1)
7505
_LT_COMPILER_C_O($1)
7506
_LT_COMPILER_FILE_LOCKS($1)
7507
_LT_LINKER_SHLIBS($1)
7508
_LT_LINKER_HARDCODE_LIBPATH($1)
7517
CFLAGS=$lt_save_CFLAGS
7518
])# _LT_LANG_GCJ_CONFIG
7521
# _LT_LANG_GO_CONFIG([TAG])
7522
# --------------------------
7523
# Ensure that the configuration variables for the GNU Go compiler
7524
# are suitably defined. These variables are subsequently used by _LT_CONFIG
7525
# to write the compiler configuration to `libtool'.
7526
m4_defun([_LT_LANG_GO_CONFIG],
7527
[AC_REQUIRE([LT_PROG_GO])dnl
7530
# Source file extension for Go test sources.
7533
# Object file extension for compiled Go test sources.
7535
_LT_TAGVAR(objext, $1)=$objext
7537
# Code to be used in simple compile tests
7538
lt_simple_compile_test_code="package main; func main() { }"
7540
# Code to be used in simple link tests
7541
lt_simple_link_test_code='package main; func main() { }'
7543
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7546
# save warnings/boilerplate of simple test code
7547
_LT_COMPILER_BOILERPLATE
7548
_LT_LINKER_BOILERPLATE
7550
# Allow CC to be a program name with arguments.
7552
lt_save_CFLAGS=$CFLAGS
7558
_LT_TAGVAR(compiler, $1)=$CC
7559
_LT_TAGVAR(LD, $1)="$LD"
7560
_LT_CC_BASENAME([$compiler])
7562
# Go did not exist at the time GCC didn't implicitly link libc in.
7563
_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7565
_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7566
_LT_TAGVAR(reload_flag, $1)=$reload_flag
7567
_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7569
if test -n "$compiler"; then
7570
_LT_COMPILER_NO_RTTI($1)
7571
_LT_COMPILER_PIC($1)
7572
_LT_COMPILER_C_O($1)
7573
_LT_COMPILER_FILE_LOCKS($1)
7574
_LT_LINKER_SHLIBS($1)
7575
_LT_LINKER_HARDCODE_LIBPATH($1)
7584
CFLAGS=$lt_save_CFLAGS
7585
])# _LT_LANG_GO_CONFIG
7588
# _LT_LANG_RC_CONFIG([TAG])
7589
# -------------------------
7590
# Ensure that the configuration variables for the Windows resource compiler
7591
# are suitably defined. These variables are subsequently used by _LT_CONFIG
7592
# to write the compiler configuration to `libtool'.
7593
m4_defun([_LT_LANG_RC_CONFIG],
7594
[AC_REQUIRE([LT_PROG_RC])dnl
7597
# Source file extension for RC test sources.
7600
# Object file extension for compiled RC test sources.
7602
_LT_TAGVAR(objext, $1)=$objext
7604
# Code to be used in simple compile tests
7605
lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
7607
# Code to be used in simple link tests
7608
lt_simple_link_test_code="$lt_simple_compile_test_code"
7610
# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7613
# save warnings/boilerplate of simple test code
7614
_LT_COMPILER_BOILERPLATE
7615
_LT_LINKER_BOILERPLATE
7617
# Allow CC to be a program name with arguments.
7619
lt_save_CFLAGS=$CFLAGS
7625
_LT_TAGVAR(compiler, $1)=$CC
7626
_LT_CC_BASENAME([$compiler])
7627
_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
7629
if test -n "$compiler"; then
7637
CFLAGS=$lt_save_CFLAGS
7638
])# _LT_LANG_RC_CONFIG
7643
AC_DEFUN([LT_PROG_GCJ],
7644
[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
7645
[m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
7646
[AC_CHECK_TOOL(GCJ, gcj,)
7647
test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
7648
AC_SUBST(GCJFLAGS)])])[]dnl
7652
AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7653
dnl aclocal-1.4 backwards compatibility:
7654
dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
7659
AC_DEFUN([LT_PROG_GO],
7660
[AC_CHECK_TOOL(GOC, gccgo,)
7666
AC_DEFUN([LT_PROG_RC],
7667
[AC_CHECK_TOOL(RC, windres,)
7671
AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7672
dnl aclocal-1.4 backwards compatibility:
7673
dnl AC_DEFUN([LT_AC_PROG_RC], [])
7678
# If we don't have a new enough Autoconf to choose the best grep
7679
# available, choose the one first in the user's PATH.
7680
m4_defun([_LT_DECL_EGREP],
7681
[AC_REQUIRE([AC_PROG_EGREP])dnl
7682
AC_REQUIRE([AC_PROG_FGREP])dnl
7683
test -z "$GREP" && GREP=grep
7684
_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7685
_LT_DECL([], [EGREP], [1], [An ERE matcher])
7686
_LT_DECL([], [FGREP], [1], [A literal string matcher])
7687
dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7694
# If we don't have a new enough Autoconf to choose the best objdump
7695
# available, choose the one first in the user's PATH.
7696
m4_defun([_LT_DECL_OBJDUMP],
7697
[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7698
test -z "$OBJDUMP" && OBJDUMP=objdump
7699
_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7705
# Ensure DLLTOOL variable is set.
7706
m4_defun([_LT_DECL_DLLTOOL],
7707
[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7708
test -z "$DLLTOOL" && DLLTOOL=dlltool
7709
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7715
# Check for a fully-functional sed program, that truncates
7716
# as few characters as possible. Prefer GNU sed if found.
7717
m4_defun([_LT_DECL_SED],
7719
test -z "$SED" && SED=sed
7720
Xsed="$SED -e 1s/^X//"
7721
_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7722
_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7723
[Sed that helps us avoid accidentally triggering echo(1) options like -n])
7726
m4_ifndef([AC_PROG_SED], [
7727
# NOTE: This macro has been submitted for inclusion into #
7728
# GNU Autoconf as AC_PROG_SED. When it is available in #
7729
# a released version of Autoconf we should remove this #
7730
# macro and use it instead. #
7732
m4_defun([AC_PROG_SED],
7733
[AC_MSG_CHECKING([for a sed that does not truncate output])
7734
AC_CACHE_VAL(lt_cv_path_SED,
7735
[# Loop through the user's path and test for sed and gsed.
7736
# Then use that list of sed's as ones to test for truncation.
7737
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7741
test -z "$as_dir" && as_dir=.
7742
for lt_ac_prog in sed gsed; do
7743
for ac_exec_ext in '' $ac_executable_extensions; do
7744
if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7745
lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
7753
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7754
# along with /bin/sed that truncates output.
7755
for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
7756
test ! -f $lt_ac_sed && continue
7757
cat /dev/null > conftest.in
7759
echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7760
# Check for GNU sed and select it if it is found.
7761
if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7762
lt_cv_path_SED=$lt_ac_sed
7766
cat conftest.in conftest.in >conftest.tmp
7767
mv conftest.tmp conftest.in
7768
cp conftest.in conftest.nl
7770
$lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7771
cmp -s conftest.out conftest.nl || break
7772
# 10000 chars as input seems more than enough
7773
test $lt_ac_count -gt 10 && break
7774
lt_ac_count=`expr $lt_ac_count + 1`
7775
if test $lt_ac_count -gt $lt_ac_max; then
7776
lt_ac_max=$lt_ac_count
7777
lt_cv_path_SED=$lt_ac_sed
7784
AC_MSG_RESULT([$SED])
7789
AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7790
dnl aclocal-1.4 backwards compatibility:
7791
dnl AC_DEFUN([LT_AC_PROG_SED], [])
7794
# _LT_CHECK_SHELL_FEATURES
7795
# ------------------------
7796
# Find out whether the shell is Bourne or XSI compatible,
7797
# or has some other useful features.
7798
m4_defun([_LT_CHECK_SHELL_FEATURES],
7799
[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7800
# Try some XSI features
7803
test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7805
&& eval 'test $(( 1 + 1 )) -eq 2 \
7806
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7808
AC_MSG_RESULT([$xsi_shell])
7809
_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7811
AC_MSG_CHECKING([whether the shell understands "+="])
7813
( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7815
&& lt_shell_append=yes
7816
AC_MSG_RESULT([$lt_shell_append])
7817
_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7819
if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7824
_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7826
# test EBCDIC or ASCII
7827
case `echo X|tr X '\101'` in
7828
A) # ASCII based system
7829
# \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7830
lt_SP2NL='tr \040 \012'
7831
lt_NL2SP='tr \015\012 \040\040'
7833
*) # EBCDIC based system
7834
lt_SP2NL='tr \100 \n'
7835
lt_NL2SP='tr \r\n \100\100'
7838
_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7839
_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7840
])# _LT_CHECK_SHELL_FEATURES
7843
# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7844
# ------------------------------------------------------
7845
# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7846
# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7847
m4_defun([_LT_PROG_FUNCTION_REPLACE],
7849
sed -e '/^$1 ()$/,/^} # $1 /c\
7852
m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
7853
} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7854
&& mv -f "$cfgfile.tmp" "$cfgfile" \
7855
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7856
test 0 -eq $? || _lt_function_replace_fail=:
7860
# _LT_PROG_REPLACE_SHELLFNS
7861
# -------------------------
7862
# Replace existing portable implementations of several shell functions with
7863
# equivalent extended shell implementations where those features are available..
7864
m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7865
[if test x"$xsi_shell" = xyes; then
7866
_LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7868
*/*) func_dirname_result="${1%/*}${2}" ;;
7869
* ) func_dirname_result="${3}" ;;
7872
_LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7873
func_basename_result="${1##*/}"])
7875
_LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7877
*/*) func_dirname_result="${1%/*}${2}" ;;
7878
* ) func_dirname_result="${3}" ;;
7880
func_basename_result="${1##*/}"])
7882
_LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7883
# pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7884
# positional parameters, so assign one to ordinary parameter first.
7885
func_stripname_result=${3}
7886
func_stripname_result=${func_stripname_result#"${1}"}
7887
func_stripname_result=${func_stripname_result%"${2}"}])
7889
_LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7890
func_split_long_opt_name=${1%%=*}
7891
func_split_long_opt_arg=${1#*=}])
7893
_LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7894
func_split_short_opt_arg=${1#??}
7895
func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
7897
_LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7899
*.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7900
*) func_lo2o_result=${1} ;;
7903
_LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
7905
_LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
7907
_LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
7910
if test x"$lt_shell_append" = xyes; then
7911
_LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
7913
_LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7914
func_quote_for_eval "${2}"
7915
dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7916
eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
7918
# Save a `func_append' function call where possible by direct use of '+='
7919
sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7920
&& mv -f "$cfgfile.tmp" "$cfgfile" \
7921
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7922
test 0 -eq $? || _lt_function_replace_fail=:
7924
# Save a `func_append' function call even when '+=' is not available
7925
sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7926
&& mv -f "$cfgfile.tmp" "$cfgfile" \
7927
|| (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7928
test 0 -eq $? || _lt_function_replace_fail=:
7931
if test x"$_lt_function_replace_fail" = x":"; then
7932
AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7936
# _LT_PATH_CONVERSION_FUNCTIONS
7937
# -----------------------------
7938
# Determine which file name conversion functions should be used by
7939
# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
7940
# for certain cross-compile configurations and native mingw.
7941
m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7942
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7943
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7944
AC_MSG_CHECKING([how to convert $build file names to $host format])
7945
AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7949
*-*-mingw* ) # actually msys
7950
lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7953
lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7955
* ) # otherwise, assume *nix
7956
lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7962
*-*-mingw* ) # actually msys
7963
lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7966
lt_cv_to_host_file_cmd=func_convert_file_noop
7968
* ) # otherwise, assume *nix
7969
lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7973
* ) # unhandled hosts (and "normal" native builds)
7974
lt_cv_to_host_file_cmd=func_convert_file_noop
7978
to_host_file_cmd=$lt_cv_to_host_file_cmd
7979
AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7980
_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7981
[0], [convert $build file names to $host format])dnl
7983
AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7984
AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7985
[#assume ordinary cross tools, or native build.
7986
lt_cv_to_tool_file_cmd=func_convert_file_noop
7990
*-*-mingw* ) # actually msys
7991
lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7997
to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7998
AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7999
_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8000
[0], [convert $build files to toolchain format])dnl
8001
])# _LT_PATH_CONVERSION_FUNCTIONS
8003
# Helper functions for option handling. -*- Autoconf -*-
8005
# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
8007
# Written by Gary V. Vaughan, 2004
8009
# This file is free software; the Free Software Foundation gives
8010
# unlimited permission to copy and/or distribute it, with or without
8011
# modifications, as long as this notice is preserved.
8013
# serial 7 ltoptions.m4
8015
# This is to help aclocal find these macros, as it can't see m4_define.
8016
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8019
# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8020
# ------------------------------------------
8021
m4_define([_LT_MANGLE_OPTION],
8022
[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8025
# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8026
# ---------------------------------------
8027
# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8028
# matching handler defined, dispatch to it. Other OPTION-NAMEs are
8030
m4_define([_LT_SET_OPTION],
8031
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8032
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8033
_LT_MANGLE_DEFUN([$1], [$2]),
8034
[m4_warning([Unknown $1 option `$2'])])[]dnl
8038
# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8039
# ------------------------------------------------------------
8040
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8041
m4_define([_LT_IF_OPTION],
8042
[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8045
# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8046
# -------------------------------------------------------
8047
# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8049
m4_define([_LT_UNLESS_OPTIONS],
8050
[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8051
[m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8052
[m4_define([$0_found])])])[]dnl
8053
m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8058
# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8059
# ----------------------------------------
8060
# OPTION-LIST is a space-separated list of Libtool options associated
8061
# with MACRO-NAME. If any OPTION has a matching handler declared with
8062
# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8063
# the unknown option and exit.
8064
m4_defun([_LT_SET_OPTIONS],
8066
m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8067
[_LT_SET_OPTION([$1], _LT_Option)])
8069
m4_if([$1],[LT_INIT],[
8071
dnl Simply set some default values (i.e off) if boolean options were not
8073
_LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8075
_LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8078
dnl If no reference was made to various pairs of opposing options, then
8079
dnl we run the default mode handler for the pair. For example, if neither
8080
dnl `shared' nor `disable-shared' was passed, we enable building of shared
8081
dnl archives by default:
8082
_LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8083
_LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8084
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8085
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8086
[_LT_ENABLE_FAST_INSTALL])
8092
# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8093
# -----------------------------------------
8094
m4_define([_LT_MANGLE_DEFUN],
8095
[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8098
# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8099
# -----------------------------------------------
8100
m4_define([LT_OPTION_DEFINE],
8101
[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8102
])# LT_OPTION_DEFINE
8107
LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8110
AU_DEFUN([AC_LIBTOOL_DLOPEN],
8111
[_LT_SET_OPTION([LT_INIT], [dlopen])
8112
AC_DIAGNOSE([obsolete],
8113
[$0: Remove this warning and the call to _LT_SET_OPTION when you
8114
put the `dlopen' option into LT_INIT's first parameter.])
8117
dnl aclocal-1.4 backwards compatibility:
8118
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8123
# Declare package support for building win32 dll's.
8124
LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8125
[enable_win32_dll=yes
8128
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8129
AC_CHECK_TOOL(AS, as, false)
8130
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8131
AC_CHECK_TOOL(OBJDUMP, objdump, false)
8135
test -z "$AS" && AS=as
8136
_LT_DECL([], [AS], [1], [Assembler program])dnl
8138
test -z "$DLLTOOL" && DLLTOOL=dlltool
8139
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8141
test -z "$OBJDUMP" && OBJDUMP=objdump
8142
_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8145
AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8146
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8147
_LT_SET_OPTION([LT_INIT], [win32-dll])
8148
AC_DIAGNOSE([obsolete],
8149
[$0: Remove this warning and the call to _LT_SET_OPTION when you
8150
put the `win32-dll' option into LT_INIT's first parameter.])
8153
dnl aclocal-1.4 backwards compatibility:
8154
dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8157
# _LT_ENABLE_SHARED([DEFAULT])
8158
# ----------------------------
8159
# implement the --enable-shared flag, and supports the `shared' and
8160
# `disable-shared' LT_INIT options.
8161
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8162
m4_define([_LT_ENABLE_SHARED],
8163
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8164
AC_ARG_ENABLE([shared],
8165
[AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8166
[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8167
[p=${PACKAGE-default}
8169
yes) enable_shared=yes ;;
8170
no) enable_shared=no ;;
8173
# Look at the argument we got. We use all the common list separators.
8174
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8175
for pkg in $enableval; do
8177
if test "X$pkg" = "X$p"; then
8184
[enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8186
_LT_DECL([build_libtool_libs], [enable_shared], [0],
8187
[Whether or not to build shared libraries])
8188
])# _LT_ENABLE_SHARED
8190
LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8191
LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8194
AC_DEFUN([AC_ENABLE_SHARED],
8195
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8198
AC_DEFUN([AC_DISABLE_SHARED],
8199
[_LT_SET_OPTION([LT_INIT], [disable-shared])
8202
AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8203
AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8205
dnl aclocal-1.4 backwards compatibility:
8206
dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8207
dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8211
# _LT_ENABLE_STATIC([DEFAULT])
8212
# ----------------------------
8213
# implement the --enable-static flag, and support the `static' and
8214
# `disable-static' LT_INIT options.
8215
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8216
m4_define([_LT_ENABLE_STATIC],
8217
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8218
AC_ARG_ENABLE([static],
8219
[AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8220
[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8221
[p=${PACKAGE-default}
8223
yes) enable_static=yes ;;
8224
no) enable_static=no ;;
8227
# Look at the argument we got. We use all the common list separators.
8228
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8229
for pkg in $enableval; do
8231
if test "X$pkg" = "X$p"; then
8238
[enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8240
_LT_DECL([build_old_libs], [enable_static], [0],
8241
[Whether or not to build static libraries])
8242
])# _LT_ENABLE_STATIC
8244
LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8245
LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8248
AC_DEFUN([AC_ENABLE_STATIC],
8249
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8252
AC_DEFUN([AC_DISABLE_STATIC],
8253
[_LT_SET_OPTION([LT_INIT], [disable-static])
8256
AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8257
AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8259
dnl aclocal-1.4 backwards compatibility:
8260
dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8261
dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8265
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8266
# ----------------------------------
8267
# implement the --enable-fast-install flag, and support the `fast-install'
8268
# and `disable-fast-install' LT_INIT options.
8269
# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8270
m4_define([_LT_ENABLE_FAST_INSTALL],
8271
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8272
AC_ARG_ENABLE([fast-install],
8273
[AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8274
[optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8275
[p=${PACKAGE-default}
8277
yes) enable_fast_install=yes ;;
8278
no) enable_fast_install=no ;;
8280
enable_fast_install=no
8281
# Look at the argument we got. We use all the common list separators.
8282
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8283
for pkg in $enableval; do
8285
if test "X$pkg" = "X$p"; then
8286
enable_fast_install=yes
8292
[enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8294
_LT_DECL([fast_install], [enable_fast_install], [0],
8295
[Whether or not to optimize for fast installation])dnl
8296
])# _LT_ENABLE_FAST_INSTALL
8298
LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8299
LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8302
AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8303
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8304
AC_DIAGNOSE([obsolete],
8305
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8306
the `fast-install' option into LT_INIT's first parameter.])
8309
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8310
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8311
AC_DIAGNOSE([obsolete],
8312
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8313
the `disable-fast-install' option into LT_INIT's first parameter.])
8316
dnl aclocal-1.4 backwards compatibility:
8317
dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8318
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8321
# _LT_WITH_PIC([MODE])
8322
# --------------------
8323
# implement the --with-pic flag, and support the `pic-only' and `no-pic'
8325
# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
8326
m4_define([_LT_WITH_PIC],
8328
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8329
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8330
[lt_p=${PACKAGE-default}
8332
yes|no) pic_mode=$withval ;;
8335
# Look at the argument we got. We use all the common list separators.
8336
lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8337
for lt_pkg in $withval; do
8339
if test "X$lt_pkg" = "X$lt_p"; then
8348
test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
8350
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8353
LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8354
LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8357
AU_DEFUN([AC_LIBTOOL_PICMODE],
8358
[_LT_SET_OPTION([LT_INIT], [pic-only])
8359
AC_DIAGNOSE([obsolete],
8360
[$0: Remove this warning and the call to _LT_SET_OPTION when you
8361
put the `pic-only' option into LT_INIT's first parameter.])
8364
dnl aclocal-1.4 backwards compatibility:
8365
dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8368
m4_define([_LTDL_MODE], [])
8369
LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8370
[m4_define([_LTDL_MODE], [nonrecursive])])
8371
LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8372
[m4_define([_LTDL_MODE], [recursive])])
8373
LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8374
[m4_define([_LTDL_MODE], [subproject])])
8376
m4_define([_LTDL_TYPE], [])
8377
LT_OPTION_DEFINE([LTDL_INIT], [installable],
8378
[m4_define([_LTDL_TYPE], [installable])])
8379
LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8380
[m4_define([_LTDL_TYPE], [convenience])])
8382
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8384
# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
8385
# Written by Gary V. Vaughan, 2004
8387
# This file is free software; the Free Software Foundation gives
8388
# unlimited permission to copy and/or distribute it, with or without
8389
# modifications, as long as this notice is preserved.
8391
# serial 6 ltsugar.m4
8393
# This is to help aclocal find these macros, as it can't see m4_define.
8394
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8397
# lt_join(SEP, ARG1, [ARG2...])
8398
# -----------------------------
8399
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8400
# associated separator.
8401
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8402
# versions in m4sugar had bugs.
8403
m4_define([lt_join],
8404
[m4_if([$#], [1], [],
8406
[m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8407
m4_define([_lt_join],
8408
[m4_if([$#$2], [2], [],
8409
[m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8415
# Manipulate m4 lists.
8416
# These macros are necessary as long as will still need to support
8417
# Autoconf-2.59 which quotes differently.
8418
m4_define([lt_car], [[$1]])
8420
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8422
[m4_dquote(m4_shift($@))])])
8423
m4_define([lt_unquote], $1)
8426
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8427
# ------------------------------------------
8428
# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
8429
# Note that neither SEPARATOR nor STRING are expanded; they are appended
8430
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8431
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8432
# than defined and empty).
8434
# This macro is needed until we can rely on Autoconf 2.62, since earlier
8435
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8436
m4_define([lt_append],
8438
m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8442
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8443
# ----------------------------------------------------------
8444
# Produce a SEP delimited list of all paired combinations of elements of
8445
# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8446
# has the form PREFIXmINFIXSUFFIXn.
8447
# Needed until we can rely on m4_combine added in Autoconf 2.62.
8448
m4_define([lt_combine],
8449
[m4_if(m4_eval([$# > 3]), [1],
8450
[m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8451
[[m4_foreach([_Lt_prefix], [$2],
8452
[m4_foreach([_Lt_suffix],
8453
]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8454
[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8457
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8458
# -----------------------------------------------------------------------
8459
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8460
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8461
m4_define([lt_if_append_uniq],
8463
[m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8464
[lt_append([$1], [$2], [$3])$4],
8466
[lt_append([$1], [$2], [$3])$4])])
8469
# lt_dict_add(DICT, KEY, VALUE)
8470
# -----------------------------
8471
m4_define([lt_dict_add],
8472
[m4_define([$1($2)], [$3])])
8475
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8476
# --------------------------------------------
8477
m4_define([lt_dict_add_subkey],
8478
[m4_define([$1($2:$3)], [$4])])
8481
# lt_dict_fetch(DICT, KEY, [SUBKEY])
8482
# ----------------------------------
8483
m4_define([lt_dict_fetch],
8485
m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8486
m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8489
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8490
# -----------------------------------------------------------------
8491
m4_define([lt_if_dict_fetch],
8492
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8497
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8498
# --------------------------------------------------------------
8499
m4_define([lt_dict_filter],
8500
[m4_if([$5], [], [],
8501
[lt_join(m4_quote(m4_default([$4], [[, ]])),
8502
lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8503
[lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8506
# ltversion.m4 -- version numbers -*- Autoconf -*-
8508
# Copyright (C) 2004 Free Software Foundation, Inc.
8509
# Written by Scott James Remnant, 2004
8511
# This file is free software; the Free Software Foundation gives
8512
# unlimited permission to copy and/or distribute it, with or without
8513
# modifications, as long as this notice is preserved.
8517
# serial 3337 ltversion.m4
8518
# This file is part of GNU Libtool
8520
m4_define([LT_PACKAGE_VERSION], [2.4.2])
8521
m4_define([LT_PACKAGE_REVISION], [1.3337])
8523
AC_DEFUN([LTVERSION_VERSION],
8524
[macro_version='2.4.2'
8525
macro_revision='1.3337'
8526
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8527
_LT_DECL(, macro_revision, 0)
8530
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8532
# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
8533
# Written by Scott James Remnant, 2004.
8535
# This file is free software; the Free Software Foundation gives
8536
# unlimited permission to copy and/or distribute it, with or without
8537
# modifications, as long as this notice is preserved.
8539
# serial 5 lt~obsolete.m4
8541
# These exist entirely to fool aclocal when bootstrapping libtool.
8543
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
8544
# which have later been changed to m4_define as they aren't part of the
8545
# exported API, or moved to Autoconf or Automake where they belong.
8547
# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8548
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8549
# using a macro with the same name in our local m4/libtool.m4 it'll
8550
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8551
# and doesn't know about Autoconf macros at all.)
8553
# So we provide this file, which has a silly filename so it's always
8554
# included after everything else. This provides aclocal with the
8555
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8556
# because those macros already exist, or will be overwritten later.
8557
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8559
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8560
# Yes, that means every name once taken will need to remain here until
8561
# we give up compatibility with versions before 1.7, at which point
8562
# we need to keep only those names which we still refer to.
8564
# This is to help aclocal find these macros, as it can't see m4_define.
8565
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8567
m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8568
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8569
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8570
m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8571
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8572
m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8573
m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8574
m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8575
m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8576
m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
8577
m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
8578
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8579
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8580
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8581
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
8582
m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
8583
m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
8584
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
8585
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
8586
m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
8587
m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
8588
m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
8589
m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
8590
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
8591
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
8592
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
8593
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
8594
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
8595
m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
8596
m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
8597
m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
8598
m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
8599
m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
8600
m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
8601
m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
8602
m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
8603
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
8604
m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
8605
m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
8606
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
8607
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
8608
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
8609
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
8610
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
8611
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
8612
m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
8613
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
8614
m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
8615
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
8616
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
8617
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
8618
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
8619
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
8620
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
8621
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
8622
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
8623
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
8624
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
8625
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
8626
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
8627
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
22
8629
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
23
8630
# serial 1 (pkg-config-0.24)