]> jfr.im git - solanum.git/blame - librb/aclocal.m4
rename libratbox to librb, since its pretty modified anyway
[solanum.git] / librb / aclocal.m4
CommitLineData
6f57a957 1# generated automatically by aclocal 1.15 -*- Autoconf -*-
bf4e01a4 2
6f57a957 3# Copyright (C) 1996-2014 Free Software Foundation, Inc.
db137867 4
db137867
AC
5# This file is free software; the Free Software Foundation
6# gives unlimited permission to copy and/or distribute it,
7# with or without modifications, as long as this notice is preserved.
8
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12# PARTICULAR PURPOSE.
13
bf4e01a4 14m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
b676ea3b
AC
15m4_ifndef([AC_AUTOCONF_VERSION],
16 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
e4cf89d4
AB
17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
18[m4_warning([this file was generated for autoconf 2.69.
b676ea3b
AC
19You have another version of autoconf. It may work, but is not guaranteed to.
20If you have problems, you may need to regenerate the build system entirely.
bf4e01a4 21To do so, use the procedure documented by the package, typically 'autoreconf'.])])
db137867
AC
22
23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
7083c021 24#
6f57a957 25# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
7083c021
AC
26# Written by Gordon Matzigkeit, 1996
27#
28# This file is free software; the Free Software Foundation gives
29# unlimited permission to copy and/or distribute it, with or without
30# modifications, as long as this notice is preserved.
31
32m4_define([_LT_COPYING], [dnl
6f57a957
AC
33# Copyright (C) 2014 Free Software Foundation, Inc.
34# This is free software; see the source for copying conditions. There is NO
35# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
36
37# GNU Libtool is free software; you can redistribute it and/or modify
38# it under the terms of the GNU General Public License as published by
39# the Free Software Foundation; either version 2 of of the License, or
40# (at your option) any later version.
7083c021 41#
6f57a957
AC
42# As a special exception to the GNU General Public License, if you
43# distribute this file as part of a program or library that is built
44# using GNU Libtool, you may include this file under the same
45# distribution terms that you use for the rest of that program.
7083c021 46#
6f57a957
AC
47# GNU Libtool is distributed in the hope that it will be useful, but
48# WITHOUT ANY WARRANTY; without even the implied warranty of
7083c021
AC
49# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
50# GNU General Public License for more details.
51#
52# You should have received a copy of the GNU General Public License
6f57a957 53# along with this program. If not, see <http://www.gnu.org/licenses/>.
7083c021 54])
db137867 55
6f57a957 56# serial 58 LT_INIT
db137867
AC
57
58
7083c021
AC
59# LT_PREREQ(VERSION)
60# ------------------
61# Complain and exit if this libtool version is less that VERSION.
62m4_defun([LT_PREREQ],
63[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
64 [m4_default([$3],
65 [m4_fatal([Libtool version $1 or higher is required],
66 63)])],
67 [$2])])
db137867
AC
68
69
7083c021
AC
70# _LT_CHECK_BUILDDIR
71# ------------------
72# Complain if the absolute build directory name contains unusual characters
73m4_defun([_LT_CHECK_BUILDDIR],
74[case `pwd` in
75 *\ * | *\ *)
76 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
77esac
78])
79
80
81# LT_INIT([OPTIONS])
82# ------------------
83AC_DEFUN([LT_INIT],
6f57a957 84[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
b6d0720c 85AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
7083c021
AC
86AC_BEFORE([$0], [LT_LANG])dnl
87AC_BEFORE([$0], [LT_OUTPUT])dnl
88AC_BEFORE([$0], [LTDL_INIT])dnl
89m4_require([_LT_CHECK_BUILDDIR])dnl
90
91dnl Autoconf doesn't catch unexpanded LT_ macros by default:
92m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
93m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
94dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
95dnl unless we require an AC_DEFUNed macro:
96AC_REQUIRE([LTOPTIONS_VERSION])dnl
97AC_REQUIRE([LTSUGAR_VERSION])dnl
98AC_REQUIRE([LTVERSION_VERSION])dnl
99AC_REQUIRE([LTOBSOLETE_VERSION])dnl
100m4_require([_LT_PROG_LTMAIN])dnl
101
b6d0720c
AC
102_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
103
7083c021
AC
104dnl Parse OPTIONS
105_LT_SET_OPTIONS([$0], [$1])
db137867
AC
106
107# This can be used to rebuild libtool when needed
6f57a957 108LIBTOOL_DEPS=$ltmain
db137867
AC
109
110# Always use our own libtool.
111LIBTOOL='$(SHELL) $(top_builddir)/libtool'
112AC_SUBST(LIBTOOL)dnl
113
7083c021 114_LT_SETUP
db137867 115
7083c021
AC
116# Only expand once:
117m4_define([LT_INIT])
118])# LT_INIT
db137867 119
7083c021
AC
120# Old names:
121AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
122AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
123dnl aclocal-1.4 backwards compatibility:
124dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
125dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
126
127
6f57a957
AC
128# _LT_PREPARE_CC_BASENAME
129# -----------------------
130m4_defun([_LT_PREPARE_CC_BASENAME], [
131# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
132func_cc_basename ()
133{
134 for cc_temp in @S|@*""; do
135 case $cc_temp in
136 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
137 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
138 \-*) ;;
139 *) break;;
140 esac
141 done
142 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
143}
144])# _LT_PREPARE_CC_BASENAME
145
146
7083c021
AC
147# _LT_CC_BASENAME(CC)
148# -------------------
6f57a957
AC
149# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
150# but that macro is also expanded into generated libtool script, which
151# arranges for $SED and $ECHO to be set by different means.
7083c021 152m4_defun([_LT_CC_BASENAME],
6f57a957
AC
153[m4_require([_LT_PREPARE_CC_BASENAME])dnl
154AC_REQUIRE([_LT_DECL_SED])dnl
155AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
156func_cc_basename $1
157cc_basename=$func_cc_basename_result
7083c021
AC
158])
159
160
161# _LT_FILEUTILS_DEFAULTS
162# ----------------------
163# It is okay to use these file commands and assume they have been set
6f57a957 164# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
7083c021
AC
165m4_defun([_LT_FILEUTILS_DEFAULTS],
166[: ${CP="cp -f"}
167: ${MV="mv -f"}
168: ${RM="rm -f"}
169])# _LT_FILEUTILS_DEFAULTS
170
171
172# _LT_SETUP
173# ---------
174m4_defun([_LT_SETUP],
175[AC_REQUIRE([AC_CANONICAL_HOST])dnl
db137867 176AC_REQUIRE([AC_CANONICAL_BUILD])dnl
b6d0720c
AC
177AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
178AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
179
a949ab1a
AC
180_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
181dnl
7083c021
AC
182_LT_DECL([], [host_alias], [0], [The host system])dnl
183_LT_DECL([], [host], [0])dnl
184_LT_DECL([], [host_os], [0])dnl
185dnl
186_LT_DECL([], [build_alias], [0], [The build system])dnl
187_LT_DECL([], [build], [0])dnl
188_LT_DECL([], [build_os], [0])dnl
189dnl
db137867 190AC_REQUIRE([AC_PROG_CC])dnl
7083c021
AC
191AC_REQUIRE([LT_PATH_LD])dnl
192AC_REQUIRE([LT_PATH_NM])dnl
193dnl
db137867 194AC_REQUIRE([AC_PROG_LN_S])dnl
7083c021
AC
195test -z "$LN_S" && LN_S="ln -s"
196_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
197dnl
198AC_REQUIRE([LT_CMD_MAX_LEN])dnl
199_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
200_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
db137867 201dnl
7083c021
AC
202m4_require([_LT_FILEUTILS_DEFAULTS])dnl
203m4_require([_LT_CHECK_SHELL_FEATURES])dnl
b6d0720c 204m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
7083c021
AC
205m4_require([_LT_CMD_RELOAD])dnl
206m4_require([_LT_CHECK_MAGIC_METHOD])dnl
b6d0720c 207m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
7083c021
AC
208m4_require([_LT_CMD_OLD_ARCHIVE])dnl
209m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
b6d0720c 210m4_require([_LT_WITH_SYSROOT])dnl
6f57a957 211m4_require([_LT_CMD_TRUNCATE])dnl
7083c021
AC
212
213_LT_CONFIG_LIBTOOL_INIT([
6f57a957 214# See if we are running on zsh, and set the options that allow our
7083c021 215# commands through without removal of \ escapes INIT.
6f57a957 216if test -n "\${ZSH_VERSION+set}"; then
7083c021
AC
217 setopt NO_GLOB_SUBST
218fi
219])
6f57a957 220if test -n "${ZSH_VERSION+set}"; then
7083c021
AC
221 setopt NO_GLOB_SUBST
222fi
223
224_LT_CHECK_OBJDIR
db137867 225
7083c021 226m4_require([_LT_TAG_COMPILER])dnl
db137867
AC
227
228case $host_os in
229aix3*)
230 # AIX sometimes has problems with the GCC collect2 program. For some
231 # reason, if we set the COLLECT_NAMES environment variable, the problems
232 # vanish in a puff of smoke.
6f57a957 233 if test set != "${COLLECT_NAMES+set}"; then
db137867
AC
234 COLLECT_NAMES=
235 export COLLECT_NAMES
236 fi
237 ;;
238esac
239
db137867 240# Global variables:
7083c021 241ofile=libtool
db137867
AC
242can_build_shared=yes
243
6f57a957 244# All known linkers require a '.a' archive for static linking (except MSVC,
db137867
AC
245# which needs '.lib').
246libext=a
db137867 247
6f57a957 248with_gnu_ld=$lt_cv_prog_gnu_ld
db137867 249
6f57a957
AC
250old_CC=$CC
251old_CFLAGS=$CFLAGS
db137867
AC
252
253# Set sane defaults for various variables
db137867
AC
254test -z "$CC" && CC=cc
255test -z "$LTCC" && LTCC=$CC
256test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
db137867 257test -z "$LD" && LD=ld
db137867
AC
258test -z "$ac_objext" && ac_objext=o
259
db137867
AC
260_LT_CC_BASENAME([$compiler])
261
262# Only perform the check for file, if the check method requires it
7083c021 263test -z "$MAGIC_CMD" && MAGIC_CMD=file
db137867
AC
264case $deplibs_check_method in
265file_magic*)
266 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
7083c021 267 _LT_PATH_MAGIC
db137867
AC
268 fi
269 ;;
270esac
271
7083c021
AC
272# Use C for the default configuration in the libtool script
273LT_SUPPORTED_TAG([CC])
274_LT_LANG_C_CONFIG
275_LT_LANG_DEFAULT_CONFIG
276_LT_CONFIG_COMMANDS
277])# _LT_SETUP
b676ea3b 278
db137867 279
b6d0720c
AC
280# _LT_PREPARE_SED_QUOTE_VARS
281# --------------------------
282# Define a few sed substitution that help us do robust quoting.
283m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
284[# Backslashify metacharacters that are still active within
285# double-quoted strings.
286sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
287
288# Same as above, but do not quote variable references.
289double_quote_subst='s/\([["`\\]]\)/\\\1/g'
290
291# Sed substitution to delay expansion of an escaped shell variable in a
292# double_quote_subst'ed string.
293delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
294
295# Sed substitution to delay expansion of an escaped single quote.
296delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
297
298# Sed substitution to avoid accidental globbing in evaled expressions
299no_glob_subst='s/\*/\\\*/g'
300])
301
7083c021
AC
302# _LT_PROG_LTMAIN
303# ---------------
6f57a957 304# Note that this code is called both from 'configure', and 'config.status'
7083c021 305# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
6f57a957 306# 'config.status' has no value for ac_aux_dir unless we are using Automake,
7083c021
AC
307# so we pass a copy along to make sure it has a sensible value anyway.
308m4_defun([_LT_PROG_LTMAIN],
309[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
310_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
6f57a957 311ltmain=$ac_aux_dir/ltmain.sh
7083c021 312])# _LT_PROG_LTMAIN
db137867 313
db137867 314
7083c021
AC
315
316# So that we can recreate a full libtool script including additional
317# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
6f57a957 318# in macros and then make a single call at the end using the 'libtool'
7083c021
AC
319# label.
320
321
322# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
323# ----------------------------------------
324# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
325m4_define([_LT_CONFIG_LIBTOOL_INIT],
326[m4_ifval([$1],
327 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
328 [$1
329])])])
330
331# Initialize.
332m4_define([_LT_OUTPUT_LIBTOOL_INIT])
333
334
335# _LT_CONFIG_LIBTOOL([COMMANDS])
336# ------------------------------
337# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
338m4_define([_LT_CONFIG_LIBTOOL],
339[m4_ifval([$1],
340 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
341 [$1
342])])])
343
344# Initialize.
345m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
346
347
348# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
349# -----------------------------------------------------
350m4_defun([_LT_CONFIG_SAVE_COMMANDS],
351[_LT_CONFIG_LIBTOOL([$1])
352_LT_CONFIG_LIBTOOL_INIT([$2])
353])
354
355
356# _LT_FORMAT_COMMENT([COMMENT])
357# -----------------------------
358# Add leading comment marks to the start of each line, and a trailing
359# full-stop to the whole comment if one is not present already.
360m4_define([_LT_FORMAT_COMMENT],
361[m4_ifval([$1], [
362m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
363 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
364)])
365
366
367
368
369
370# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
371# -------------------------------------------------------------------
372# CONFIGNAME is the name given to the value in the libtool script.
373# VARNAME is the (base) name used in the configure script.
374# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
375# VARNAME. Any other value will be used directly.
376m4_define([_LT_DECL],
377[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
378 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
379 [m4_ifval([$1], [$1], [$2])])
380 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
381 m4_ifval([$4],
382 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
383 lt_dict_add_subkey([lt_decl_dict], [$2],
384 [tagged?], [m4_ifval([$5], [yes], [no])])])
385])
386
387
388# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
389# --------------------------------------------------------
390m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
391
392
393# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
394# ------------------------------------------------
395m4_define([lt_decl_tag_varnames],
396[_lt_decl_filter([tagged?], [yes], $@)])
397
398
399# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
400# ---------------------------------------------------------
401m4_define([_lt_decl_filter],
402[m4_case([$#],
403 [0], [m4_fatal([$0: too few arguments: $#])],
404 [1], [m4_fatal([$0: too few arguments: $#: $1])],
405 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
406 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
407 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
408])
409
410
411# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
412# --------------------------------------------------
413m4_define([lt_decl_quote_varnames],
414[_lt_decl_filter([value], [1], $@)])
415
416
417# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
418# ---------------------------------------------------
419m4_define([lt_decl_dquote_varnames],
420[_lt_decl_filter([value], [2], $@)])
421
422
423# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
424# ---------------------------------------------------
425m4_define([lt_decl_varnames_tagged],
426[m4_assert([$# <= 2])dnl
427_$0(m4_quote(m4_default([$1], [[, ]])),
428 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
429 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
430m4_define([_lt_decl_varnames_tagged],
431[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
432
433
434# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
435# ------------------------------------------------
436m4_define([lt_decl_all_varnames],
437[_$0(m4_quote(m4_default([$1], [[, ]])),
438 m4_if([$2], [],
439 m4_quote(lt_decl_varnames),
440 m4_quote(m4_shift($@))))[]dnl
441])
442m4_define([_lt_decl_all_varnames],
443[lt_join($@, lt_decl_varnames_tagged([$1],
444 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
445])
446
447
448# _LT_CONFIG_STATUS_DECLARE([VARNAME])
449# ------------------------------------
6f57a957
AC
450# Quote a variable value, and forward it to 'config.status' so that its
451# declaration there will have the same value as in 'configure'. VARNAME
7083c021
AC
452# must have a single quote delimited value for this to work.
453m4_define([_LT_CONFIG_STATUS_DECLARE],
b6d0720c 454[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
7083c021
AC
455
456
457# _LT_CONFIG_STATUS_DECLARATIONS
458# ------------------------------
459# We delimit libtool config variables with single quotes, so when
460# we write them to config.status, we have to be sure to quote all
461# embedded single quotes properly. In configure, this macro expands
462# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
463#
b6d0720c 464# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
7083c021
AC
465m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
466[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
467 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
db137867
AC
468
469
7083c021
AC
470# _LT_LIBTOOL_TAGS
471# ----------------
472# Output comment and list of tags supported by the script
473m4_defun([_LT_LIBTOOL_TAGS],
474[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
6f57a957 475available_tags='_LT_TAGS'dnl
7083c021
AC
476])
477
478
479# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
480# -----------------------------------
481# Extract the dictionary values for VARNAME (optionally with TAG) and
482# expand to a commented shell variable setting:
483#
484# # Some comment about what VAR is for.
485# visible_name=$lt_internal_name
486m4_define([_LT_LIBTOOL_DECLARE],
487[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
488 [description])))[]dnl
489m4_pushdef([_libtool_name],
490 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
491m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
492 [0], [_libtool_name=[$]$1],
493 [1], [_libtool_name=$lt_[]$1],
494 [2], [_libtool_name=$lt_[]$1],
495 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
496m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
497])
498
499
500# _LT_LIBTOOL_CONFIG_VARS
501# -----------------------
502# Produce commented declarations of non-tagged libtool config variables
6f57a957 503# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
7083c021
AC
504# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
505# section) are produced by _LT_LIBTOOL_TAG_VARS.
506m4_defun([_LT_LIBTOOL_CONFIG_VARS],
507[m4_foreach([_lt_var],
508 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
509 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
510
511
512# _LT_LIBTOOL_TAG_VARS(TAG)
513# -------------------------
514m4_define([_LT_LIBTOOL_TAG_VARS],
515[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
516 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
517
518
519# _LT_TAGVAR(VARNAME, [TAGNAME])
520# ------------------------------
521m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
522
523
524# _LT_CONFIG_COMMANDS
db137867 525# -------------------
7083c021
AC
526# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
527# variables for single and double quote escaping we saved from calls
528# to _LT_DECL, we can put quote escaped variables declarations
6f57a957
AC
529# into 'config.status', and then the shell code to quote escape them in
530# for loops in 'config.status'. Finally, any additional code accumulated
7083c021
AC
531# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
532m4_defun([_LT_CONFIG_COMMANDS],
533[AC_PROVIDE_IFELSE([LT_OUTPUT],
534 dnl If the libtool generation code has been placed in $CONFIG_LT,
535 dnl instead of duplicating it all over again into config.status,
536 dnl then we will have config.status run $CONFIG_LT later, so it
537 dnl needs to know what name is stored there:
538 [AC_CONFIG_COMMANDS([libtool],
539 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
540 dnl If the libtool generation code is destined for config.status,
541 dnl expand the accumulated commands and init code now:
542 [AC_CONFIG_COMMANDS([libtool],
543 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
544])#_LT_CONFIG_COMMANDS
545
546
547# Initialize.
548m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
549[
550
551# The HP-UX ksh and POSIX shell print the target directory to stdout
552# if CDPATH is set.
553(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
554
555sed_quote_subst='$sed_quote_subst'
556double_quote_subst='$double_quote_subst'
557delay_variable_subst='$delay_variable_subst'
558_LT_CONFIG_STATUS_DECLARATIONS
559LTCC='$LTCC'
560LTCFLAGS='$LTCFLAGS'
561compiler='$compiler_DEFAULT'
562
b6d0720c
AC
563# A function that is used when there is no print builtin or printf.
564func_fallback_echo ()
565{
566 eval 'cat <<_LTECHO_EOF
567\$[]1
568_LTECHO_EOF'
569}
570
7083c021
AC
571# Quote evaled strings.
572for var in lt_decl_all_varnames([[ \
573]], lt_decl_quote_varnames); do
b6d0720c 574 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
7083c021 575 *[[\\\\\\\`\\"\\\$]]*)
6f57a957 576 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
7083c021
AC
577 ;;
578 *)
579 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
580 ;;
581 esac
582done
583
584# Double-quote double-evaled strings.
585for var in lt_decl_all_varnames([[ \
586]], lt_decl_dquote_varnames); do
b6d0720c 587 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
7083c021 588 *[[\\\\\\\`\\"\\\$]]*)
6f57a957 589 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
7083c021
AC
590 ;;
591 *)
592 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
593 ;;
594 esac
595done
596
7083c021
AC
597_LT_OUTPUT_LIBTOOL_INIT
598])
599
b6d0720c
AC
600# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
601# ------------------------------------
602# Generate a child script FILE with all initialization necessary to
603# reuse the environment learned by the parent script, and make the
604# file executable. If COMMENT is supplied, it is inserted after the
6f57a957 605# '#!' sequence but before initialization text begins. After this
b6d0720c
AC
606# macro, additional text can be appended to FILE to form the body of
607# the child script. The macro ends with non-zero status if the
608# file could not be fully written (such as if the disk is full).
609m4_ifdef([AS_INIT_GENERATED],
610[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
611[m4_defun([_LT_GENERATED_FILE_INIT],
612[m4_require([AS_PREPARE])]dnl
613[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
614[lt_write_fail=0
615cat >$1 <<_ASEOF || lt_write_fail=1
616#! $SHELL
617# Generated by $as_me.
618$2
619SHELL=\${CONFIG_SHELL-$SHELL}
620export SHELL
621_ASEOF
622cat >>$1 <<\_ASEOF || lt_write_fail=1
623AS_SHELL_SANITIZE
624_AS_PREPARE
625exec AS_MESSAGE_FD>&1
626_ASEOF
6f57a957 627test 0 = "$lt_write_fail" && chmod +x $1[]dnl
b6d0720c 628m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
7083c021
AC
629
630# LT_OUTPUT
631# ---------
632# This macro allows early generation of the libtool script (before
633# AC_OUTPUT is called), incase it is used in configure for compilation
634# tests.
635AC_DEFUN([LT_OUTPUT],
636[: ${CONFIG_LT=./config.lt}
637AC_MSG_NOTICE([creating $CONFIG_LT])
b6d0720c
AC
638_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
639[# Run this file to recreate a libtool stub with the current configuration.])
7083c021
AC
640
641cat >>"$CONFIG_LT" <<\_LTEOF
b6d0720c 642lt_cl_silent=false
7083c021
AC
643exec AS_MESSAGE_LOG_FD>>config.log
644{
645 echo
646 AS_BOX([Running $as_me.])
647} >&AS_MESSAGE_LOG_FD
648
649lt_cl_help="\
6f57a957 650'$as_me' creates a local libtool stub from the current configuration,
7083c021
AC
651for use in further configure time tests before the real libtool is
652generated.
653
654Usage: $[0] [[OPTIONS]]
655
656 -h, --help print this help, then exit
657 -V, --version print version number, then exit
658 -q, --quiet do not print progress messages
659 -d, --debug don't remove temporary files
660
661Report bugs to <bug-libtool@gnu.org>."
662
663lt_cl_version="\
664m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
665m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
666configured by $[0], generated by m4_PACKAGE_STRING.
667
a949ab1a 668Copyright (C) 2011 Free Software Foundation, Inc.
7083c021
AC
669This config.lt script is free software; the Free Software Foundation
670gives unlimited permision to copy, distribute and modify it."
671
6f57a957 672while test 0 != $[#]
7083c021
AC
673do
674 case $[1] in
675 --version | --v* | -V )
676 echo "$lt_cl_version"; exit 0 ;;
677 --help | --h* | -h )
678 echo "$lt_cl_help"; exit 0 ;;
679 --debug | --d* | -d )
680 debug=: ;;
681 --quiet | --q* | --silent | --s* | -q )
682 lt_cl_silent=: ;;
683
684 -*) AC_MSG_ERROR([unrecognized option: $[1]
6f57a957 685Try '$[0] --help' for more information.]) ;;
7083c021
AC
686
687 *) AC_MSG_ERROR([unrecognized argument: $[1]
6f57a957 688Try '$[0] --help' for more information.]) ;;
7083c021
AC
689 esac
690 shift
691done
692
693if $lt_cl_silent; then
694 exec AS_MESSAGE_FD>/dev/null
695fi
696_LTEOF
697
698cat >>"$CONFIG_LT" <<_LTEOF
699_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
700_LTEOF
701
702cat >>"$CONFIG_LT" <<\_LTEOF
703AC_MSG_NOTICE([creating $ofile])
704_LT_OUTPUT_LIBTOOL_COMMANDS
705AS_EXIT(0)
706_LTEOF
707chmod +x "$CONFIG_LT"
708
709# configure is writing to config.log, but config.lt does its own redirection,
710# appending to config.log, which fails on DOS, as config.log is still kept
711# open by configure. Here we exec the FD to /dev/null, effectively closing
712# config.log, so it can be properly (re)opened and appended to by config.lt.
b6d0720c 713lt_cl_success=:
6f57a957 714test yes = "$silent" &&
b6d0720c
AC
715 lt_config_lt_args="$lt_config_lt_args --quiet"
716exec AS_MESSAGE_LOG_FD>/dev/null
717$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
718exec AS_MESSAGE_LOG_FD>>config.log
719$lt_cl_success || AS_EXIT(1)
7083c021
AC
720])# LT_OUTPUT
721
722
723# _LT_CONFIG(TAG)
724# ---------------
725# If TAG is the built-in tag, create an initial libtool script with a
726# default configuration from the untagged config vars. Otherwise add code
727# to config.status for appending the configuration named by TAG from the
728# matching tagged config vars.
729m4_defun([_LT_CONFIG],
730[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
731_LT_CONFIG_SAVE_COMMANDS([
732 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
733 m4_if(_LT_TAG, [C], [
6f57a957 734 # See if we are running on zsh, and set the options that allow our
7083c021 735 # commands through without removal of \ escapes.
6f57a957 736 if test -n "${ZSH_VERSION+set}"; then
7083c021
AC
737 setopt NO_GLOB_SUBST
738 fi
739
6f57a957 740 cfgfile=${ofile}T
7083c021
AC
741 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
742 $RM "$cfgfile"
743
744 cat <<_LT_EOF >> "$cfgfile"
745#! $SHELL
6f57a957 746# Generated automatically by $as_me ($PACKAGE) $VERSION
7083c021
AC
747# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
748# NOTE: Changes made to this file will be lost: look at ltmain.sh.
6f57a957
AC
749
750# Provide generalized library-building support services.
751# Written by Gordon Matzigkeit, 1996
752
7083c021
AC
753_LT_COPYING
754_LT_LIBTOOL_TAGS
755
6f57a957
AC
756# Configured defaults for sys_lib_dlsearch_path munging.
757: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
758
7083c021
AC
759# ### BEGIN LIBTOOL CONFIG
760_LT_LIBTOOL_CONFIG_VARS
761_LT_LIBTOOL_TAG_VARS
762# ### END LIBTOOL CONFIG
763
6f57a957
AC
764_LT_EOF
765
766 cat <<'_LT_EOF' >> "$cfgfile"
767
768# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
769
770_LT_PREPARE_MUNGE_PATH_LIST
771_LT_PREPARE_CC_BASENAME
772
773# ### END FUNCTIONS SHARED WITH CONFIGURE
774
7083c021
AC
775_LT_EOF
776
777 case $host_os in
778 aix3*)
779 cat <<\_LT_EOF >> "$cfgfile"
780# AIX sometimes has problems with the GCC collect2 program. For some
781# reason, if we set the COLLECT_NAMES environment variable, the problems
782# vanish in a puff of smoke.
6f57a957 783if test set != "${COLLECT_NAMES+set}"; then
7083c021
AC
784 COLLECT_NAMES=
785 export COLLECT_NAMES
786fi
787_LT_EOF
788 ;;
789 esac
790
791 _LT_PROG_LTMAIN
792
793 # We use sed instead of cat because bash on DJGPP gets confused if
794 # if finds mixed CR/LF and LF-only lines. Since sed operates in
795 # text mode, it properly converts lines to CR/LF. This bash problem
796 # is reportedly fixed, but why not run on old versions too?
b6d0720c
AC
797 sed '$q' "$ltmain" >> "$cfgfile" \
798 || (rm -f "$cfgfile"; exit 1)
7083c021 799
b6d0720c 800 mv -f "$cfgfile" "$ofile" ||
7083c021
AC
801 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
802 chmod +x "$ofile"
803],
804[cat <<_LT_EOF >> "$ofile"
805
806dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
807dnl in a comment (ie after a #).
808# ### BEGIN LIBTOOL TAG CONFIG: $1
809_LT_LIBTOOL_TAG_VARS(_LT_TAG)
810# ### END LIBTOOL TAG CONFIG: $1
811_LT_EOF
812])dnl /m4_if
813],
814[m4_if([$1], [], [
815 PACKAGE='$PACKAGE'
816 VERSION='$VERSION'
7083c021
AC
817 RM='$RM'
818 ofile='$ofile'], [])
819])dnl /_LT_CONFIG_SAVE_COMMANDS
820])# _LT_CONFIG
821
822
823# LT_SUPPORTED_TAG(TAG)
824# ---------------------
825# Trace this macro to discover what tags are supported by the libtool
826# --tag option, using:
827# autoconf --trace 'LT_SUPPORTED_TAG:$1'
828AC_DEFUN([LT_SUPPORTED_TAG], [])
829
830
831# C support is built-in for now
832m4_define([_LT_LANG_C_enabled], [])
833m4_define([_LT_TAGS], [])
834
835
836# LT_LANG(LANG)
837# -------------
838# Enable libtool support for the given language if not already enabled.
839AC_DEFUN([LT_LANG],
840[AC_BEFORE([$0], [LT_OUTPUT])dnl
841m4_case([$1],
842 [C], [_LT_LANG(C)],
843 [C++], [_LT_LANG(CXX)],
a949ab1a 844 [Go], [_LT_LANG(GO)],
7083c021
AC
845 [Java], [_LT_LANG(GCJ)],
846 [Fortran 77], [_LT_LANG(F77)],
847 [Fortran], [_LT_LANG(FC)],
848 [Windows Resource], [_LT_LANG(RC)],
849 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
850 [_LT_LANG($1)],
851 [m4_fatal([$0: unsupported language: "$1"])])])dnl
852])# LT_LANG
853
854
855# _LT_LANG(LANGNAME)
856# ------------------
857m4_defun([_LT_LANG],
858[m4_ifdef([_LT_LANG_]$1[_enabled], [],
859 [LT_SUPPORTED_TAG([$1])dnl
860 m4_append([_LT_TAGS], [$1 ])dnl
861 m4_define([_LT_LANG_]$1[_enabled], [])dnl
862 _LT_LANG_$1_CONFIG($1)])dnl
863])# _LT_LANG
864
865
a949ab1a
AC
866m4_ifndef([AC_PROG_GO], [
867# NOTE: This macro has been submitted for inclusion into #
868# GNU Autoconf as AC_PROG_GO. When it is available in #
869# a released version of Autoconf we should remove this #
870# macro and use it instead. #
871m4_defun([AC_PROG_GO],
872[AC_LANG_PUSH(Go)dnl
873AC_ARG_VAR([GOC], [Go compiler command])dnl
874AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
875_AC_ARG_VAR_LDFLAGS()dnl
876AC_CHECK_TOOL(GOC, gccgo)
877if test -z "$GOC"; then
878 if test -n "$ac_tool_prefix"; then
879 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
880 fi
881fi
882if test -z "$GOC"; then
883 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
884fi
885])#m4_defun
886])#m4_ifndef
887
888
7083c021
AC
889# _LT_LANG_DEFAULT_CONFIG
890# -----------------------
891m4_defun([_LT_LANG_DEFAULT_CONFIG],
892[AC_PROVIDE_IFELSE([AC_PROG_CXX],
893 [LT_LANG(CXX)],
894 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
895
896AC_PROVIDE_IFELSE([AC_PROG_F77],
897 [LT_LANG(F77)],
898 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
899
900AC_PROVIDE_IFELSE([AC_PROG_FC],
901 [LT_LANG(FC)],
902 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
903
904dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
905dnl pulling things in needlessly.
906AC_PROVIDE_IFELSE([AC_PROG_GCJ],
907 [LT_LANG(GCJ)],
908 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
909 [LT_LANG(GCJ)],
910 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
911 [LT_LANG(GCJ)],
912 [m4_ifdef([AC_PROG_GCJ],
913 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
914 m4_ifdef([A][M_PROG_GCJ],
915 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
916 m4_ifdef([LT_PROG_GCJ],
917 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
918
a949ab1a
AC
919AC_PROVIDE_IFELSE([AC_PROG_GO],
920 [LT_LANG(GO)],
921 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
922
7083c021
AC
923AC_PROVIDE_IFELSE([LT_PROG_RC],
924 [LT_LANG(RC)],
925 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
926])# _LT_LANG_DEFAULT_CONFIG
927
928# Obsolete macros:
929AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
930AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
931AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
932AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
b6d0720c 933AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
7083c021
AC
934dnl aclocal-1.4 backwards compatibility:
935dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
936dnl AC_DEFUN([AC_LIBTOOL_F77], [])
937dnl AC_DEFUN([AC_LIBTOOL_FC], [])
938dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
b6d0720c 939dnl AC_DEFUN([AC_LIBTOOL_RC], [])
7083c021
AC
940
941
942# _LT_TAG_COMPILER
943# ----------------
944m4_defun([_LT_TAG_COMPILER],
db137867
AC
945[AC_REQUIRE([AC_PROG_CC])dnl
946
7083c021
AC
947_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
948_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
949_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
950_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
951
db137867
AC
952# If no C compiler was specified, use CC.
953LTCC=${LTCC-"$CC"}
954
955# If no C compiler flags were specified, use CFLAGS.
956LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
957
958# Allow CC to be a program name with arguments.
959compiler=$CC
7083c021 960])# _LT_TAG_COMPILER
db137867
AC
961
962
963# _LT_COMPILER_BOILERPLATE
964# ------------------------
965# Check for compiler boilerplate output or warnings with
966# the simple compiler test code.
7083c021
AC
967m4_defun([_LT_COMPILER_BOILERPLATE],
968[m4_require([_LT_DECL_SED])dnl
db137867
AC
969ac_outfile=conftest.$ac_objext
970echo "$lt_simple_compile_test_code" >conftest.$ac_ext
971eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
972_lt_compiler_boilerplate=`cat conftest.err`
7083c021 973$RM conftest*
db137867
AC
974])# _LT_COMPILER_BOILERPLATE
975
976
977# _LT_LINKER_BOILERPLATE
978# ----------------------
979# Check for linker boilerplate output or warnings with
980# the simple link test code.
7083c021
AC
981m4_defun([_LT_LINKER_BOILERPLATE],
982[m4_require([_LT_DECL_SED])dnl
db137867
AC
983ac_outfile=conftest.$ac_objext
984echo "$lt_simple_link_test_code" >conftest.$ac_ext
985eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
986_lt_linker_boilerplate=`cat conftest.err`
7083c021 987$RM -r conftest*
db137867
AC
988])# _LT_LINKER_BOILERPLATE
989
b676ea3b 990# _LT_REQUIRED_DARWIN_CHECKS
7083c021
AC
991# -------------------------
992m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
b676ea3b
AC
993 case $host_os in
994 rhapsody* | darwin*)
995 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
996 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
7083c021
AC
997 AC_CHECK_TOOL([LIPO], [lipo], [:])
998 AC_CHECK_TOOL([OTOOL], [otool], [:])
999 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
1000 _LT_DECL([], [DSYMUTIL], [1],
1001 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
1002 _LT_DECL([], [NMEDIT], [1],
1003 [Tool to change global to local symbols on Mac OS X])
1004 _LT_DECL([], [LIPO], [1],
1005 [Tool to manipulate fat objects and archives on Mac OS X])
1006 _LT_DECL([], [OTOOL], [1],
1007 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
1008 _LT_DECL([], [OTOOL64], [1],
1009 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
b676ea3b
AC
1010
1011 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
1012 [lt_cv_apple_cc_single_mod=no
6f57a957 1013 if test -z "$LT_MULTI_MODULE"; then
7083c021
AC
1014 # By default we will add the -single_module flag. You can override
1015 # by either setting the environment variable LT_MULTI_MODULE
1016 # non-empty at configure time, or by adding -multi_module to the
1017 # link flags.
1018 rm -rf libconftest.dylib*
1019 echo "int foo(void){return 1;}" > conftest.c
1020 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1021-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1022 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1023 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1024 _lt_result=$?
a949ab1a
AC
1025 # If there is a non-empty error log, and "single_module"
1026 # appears in it, assume the flag caused a linker warning
1027 if test -s conftest.err && $GREP single_module conftest.err; then
1028 cat conftest.err >&AS_MESSAGE_LOG_FD
1029 # Otherwise, if the output was created with a 0 exit code from
1030 # the compiler, it worked.
6f57a957 1031 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
7083c021
AC
1032 lt_cv_apple_cc_single_mod=yes
1033 else
1034 cat conftest.err >&AS_MESSAGE_LOG_FD
1035 fi
1036 rm -rf libconftest.dylib*
1037 rm -f conftest.*
b676ea3b 1038 fi])
a949ab1a 1039
b676ea3b
AC
1040 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1041 [lt_cv_ld_exported_symbols_list],
1042 [lt_cv_ld_exported_symbols_list=no
1043 save_LDFLAGS=$LDFLAGS
1044 echo "_main" > conftest.sym
1045 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1046 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
7083c021
AC
1047 [lt_cv_ld_exported_symbols_list=yes],
1048 [lt_cv_ld_exported_symbols_list=no])
6f57a957 1049 LDFLAGS=$save_LDFLAGS
b676ea3b 1050 ])
a949ab1a 1051
b6d0720c
AC
1052 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1053 [lt_cv_ld_force_load=no
1054 cat > conftest.c << _LT_EOF
1055int forced_loaded() { return 2;}
1056_LT_EOF
1057 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1058 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1059 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1060 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1061 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1062 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1063 cat > conftest.c << _LT_EOF
1064int main() { return 0;}
1065_LT_EOF
1066 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1067 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1068 _lt_result=$?
a949ab1a
AC
1069 if test -s conftest.err && $GREP force_load conftest.err; then
1070 cat conftest.err >&AS_MESSAGE_LOG_FD
6f57a957 1071 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
b6d0720c
AC
1072 lt_cv_ld_force_load=yes
1073 else
1074 cat conftest.err >&AS_MESSAGE_LOG_FD
1075 fi
1076 rm -f conftest.err libconftest.a conftest conftest.c
1077 rm -rf conftest.dSYM
1078 ])
b676ea3b 1079 case $host_os in
7083c021 1080 rhapsody* | darwin1.[[012]])
6f57a957 1081 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
b676ea3b 1082 darwin1.*)
6f57a957 1083 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
7083c021 1084 darwin*) # darwin 5.x on
b676ea3b
AC
1085 # if running on 10.5 or later, the deployment target defaults
1086 # to the OS version, if on x86, and 10.4, the deployment
1087 # target defaults to 10.4. Don't you love it?
1088 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
7083c021 1089 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
6f57a957
AC
1090 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1091 10.[[012]][[,.]]*)
1092 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
7083c021 1093 10.*)
6f57a957 1094 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
b676ea3b
AC
1095 esac
1096 ;;
1097 esac
6f57a957 1098 if test yes = "$lt_cv_apple_cc_single_mod"; then
b676ea3b
AC
1099 _lt_dar_single_mod='$single_module'
1100 fi
6f57a957
AC
1101 if test yes = "$lt_cv_ld_exported_symbols_list"; then
1102 _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
b676ea3b 1103 else
6f57a957 1104 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
b676ea3b 1105 fi
6f57a957 1106 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
7083c021 1107 _lt_dsymutil='~$DSYMUTIL $lib || :'
b676ea3b
AC
1108 else
1109 _lt_dsymutil=
1110 fi
1111 ;;
1112 esac
1113])
db137867 1114
7083c021 1115
a949ab1a
AC
1116# _LT_DARWIN_LINKER_FEATURES([TAG])
1117# ---------------------------------
7083c021
AC
1118# Checks for linker and compiler features on darwin
1119m4_defun([_LT_DARWIN_LINKER_FEATURES],
1120[
1121 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1122 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1123 _LT_TAGVAR(hardcode_direct, $1)=no
1124 _LT_TAGVAR(hardcode_automatic, $1)=yes
1125 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6f57a957
AC
1126 if test yes = "$lt_cv_ld_force_load"; then
1127 _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\"`'
a949ab1a
AC
1128 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1129 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
b6d0720c
AC
1130 else
1131 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1132 fi
7083c021 1133 _LT_TAGVAR(link_all_deplibs, $1)=yes
6f57a957 1134 _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
7083c021 1135 case $cc_basename in
6f57a957 1136 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
7083c021
AC
1137 *) _lt_dar_can_shared=$GCC ;;
1138 esac
6f57a957 1139 if test yes = "$_lt_dar_can_shared"; then
b6d0720c 1140 output_verbose_link_cmd=func_echo_all
6f57a957
AC
1141 _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"
1142 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
1143 _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"
1144 _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"
7083c021 1145 m4_if([$1], [CXX],
6f57a957
AC
1146[ if test yes != "$lt_cv_apple_cc_single_mod"; then
1147 _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"
1148 _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"
7083c021
AC
1149 fi
1150],[])
1151 else
1152 _LT_TAGVAR(ld_shlibs, $1)=no
1153 fi
1154])
1155
b6d0720c
AC
1156# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1157# ----------------------------------
db137867
AC
1158# Links a minimal program and checks the executable
1159# for the system default hardcoded library path. In most cases,
1160# this is /usr/lib:/lib, but when the MPI compilers are used
1161# the location of the communication and MPI libs are included too.
1162# If we don't find anything, use the default library path according
1163# to the aix ld manual.
b6d0720c
AC
1164# Store the results from the different compilers for each TAGNAME.
1165# Allow to override them for all tags through lt_cv_aix_libpath.
7083c021
AC
1166m4_defun([_LT_SYS_MODULE_PATH_AIX],
1167[m4_require([_LT_DECL_SED])dnl
6f57a957 1168if test set = "${lt_cv_aix_libpath+set}"; then
b6d0720c
AC
1169 aix_libpath=$lt_cv_aix_libpath
1170else
1171 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1172 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1173 lt_aix_libpath_sed='[
1174 /Import File Strings/,/^$/ {
1175 /^0/ {
1176 s/^0 *\([^ ]*\) *$/\1/
1177 p
1178 }
1179 }]'
1180 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1181 # Check for a 64-bit object if we didn't find anything.
1182 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1183 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1184 fi],[])
1185 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
6f57a957 1186 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
b6d0720c
AC
1187 fi
1188 ])
1189 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1190fi
7083c021 1191])# _LT_SYS_MODULE_PATH_AIX
db137867
AC
1192
1193
7083c021
AC
1194# _LT_SHELL_INIT(ARG)
1195# -------------------
1196m4_define([_LT_SHELL_INIT],
b6d0720c
AC
1197[m4_divert_text([M4SH-INIT], [$1
1198])])# _LT_SHELL_INIT
1199
db137867
AC
1200
1201
7083c021
AC
1202# _LT_PROG_ECHO_BACKSLASH
1203# -----------------------
b6d0720c
AC
1204# Find how we can fake an echo command that does not interpret backslash.
1205# In particular, with Autoconf 2.60 or later we add some code to the start
6f57a957
AC
1206# of the generated configure script that will find a shell with a builtin
1207# printf (that we can use as an echo command).
7083c021 1208m4_defun([_LT_PROG_ECHO_BACKSLASH],
b6d0720c
AC
1209[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1210ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1211ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1212
1213AC_MSG_CHECKING([how to print strings])
1214# Test print first, because it will be a builtin if present.
1215if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1216 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1217 ECHO='print -r --'
1218elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1219 ECHO='printf %s\n'
db137867 1220else
b6d0720c
AC
1221 # Use this function as a fallback that always works.
1222 func_fallback_echo ()
1223 {
1224 eval 'cat <<_LTECHO_EOF
1225$[]1
1226_LTECHO_EOF'
1227 }
1228 ECHO='func_fallback_echo'
db137867
AC
1229fi
1230
b6d0720c
AC
1231# func_echo_all arg...
1232# Invoke $ECHO with all args, space-separated.
1233func_echo_all ()
1234{
6f57a957 1235 $ECHO "$*"
b6d0720c 1236}
db137867 1237
6f57a957 1238case $ECHO in
b6d0720c
AC
1239 printf*) AC_MSG_RESULT([printf]) ;;
1240 print*) AC_MSG_RESULT([print -r]) ;;
1241 *) AC_MSG_RESULT([cat]) ;;
1242esac
db137867 1243
b6d0720c
AC
1244m4_ifdef([_AS_DETECT_SUGGESTED],
1245[_AS_DETECT_SUGGESTED([
1246 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1247 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1248 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1249 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1250 PATH=/empty FPATH=/empty; export PATH FPATH
1251 test "X`printf %s $ECHO`" = "X$ECHO" \
1252 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
db137867 1253
7083c021 1254_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
b6d0720c 1255_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
7083c021 1256])# _LT_PROG_ECHO_BACKSLASH
db137867
AC
1257
1258
b6d0720c
AC
1259# _LT_WITH_SYSROOT
1260# ----------------
1261AC_DEFUN([_LT_WITH_SYSROOT],
1262[AC_MSG_CHECKING([for sysroot])
1263AC_ARG_WITH([sysroot],
6f57a957
AC
1264[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
1265 [Search for dependent libraries within DIR (or the compiler's sysroot
1266 if not specified).])],
b6d0720c
AC
1267[], [with_sysroot=no])
1268
1269dnl lt_sysroot will always be passed unquoted. We quote it here
1270dnl in case the user passed a directory name.
1271lt_sysroot=
6f57a957 1272case $with_sysroot in #(
b6d0720c 1273 yes)
6f57a957 1274 if test yes = "$GCC"; then
b6d0720c
AC
1275 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1276 fi
1277 ;; #(
1278 /*)
1279 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1280 ;; #(
1281 no|'')
1282 ;; #(
1283 *)
6f57a957 1284 AC_MSG_RESULT([$with_sysroot])
b6d0720c
AC
1285 AC_MSG_ERROR([The sysroot must be an absolute path.])
1286 ;;
1287esac
1288
1289 AC_MSG_RESULT([${lt_sysroot:-no}])
1290_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
6f57a957 1291[dependent libraries, and where our libraries should be installed.])])
b6d0720c 1292
7083c021
AC
1293# _LT_ENABLE_LOCK
1294# ---------------
1295m4_defun([_LT_ENABLE_LOCK],
db137867 1296[AC_ARG_ENABLE([libtool-lock],
7083c021
AC
1297 [AS_HELP_STRING([--disable-libtool-lock],
1298 [avoid locking (might break parallel builds)])])
6f57a957 1299test no = "$enable_libtool_lock" || enable_libtool_lock=yes
db137867
AC
1300
1301# Some flags need to be propagated to the compiler or linker for good
1302# libtool support.
1303case $host in
1304ia64-*-hpux*)
6f57a957
AC
1305 # Find out what ABI is being produced by ac_compile, and set mode
1306 # options accordingly.
db137867
AC
1307 echo 'int i;' > conftest.$ac_ext
1308 if AC_TRY_EVAL(ac_compile); then
1309 case `/usr/bin/file conftest.$ac_objext` in
7083c021 1310 *ELF-32*)
6f57a957 1311 HPUX_IA64_MODE=32
7083c021
AC
1312 ;;
1313 *ELF-64*)
6f57a957 1314 HPUX_IA64_MODE=64
7083c021 1315 ;;
db137867
AC
1316 esac
1317 fi
1318 rm -rf conftest*
1319 ;;
1320*-*-irix6*)
6f57a957
AC
1321 # Find out what ABI is being produced by ac_compile, and set linker
1322 # options accordingly.
b6d0720c 1323 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
db137867 1324 if AC_TRY_EVAL(ac_compile); then
6f57a957 1325 if test yes = "$lt_cv_prog_gnu_ld"; then
7083c021
AC
1326 case `/usr/bin/file conftest.$ac_objext` in
1327 *32-bit*)
1328 LD="${LD-ld} -melf32bsmip"
1329 ;;
1330 *N32*)
1331 LD="${LD-ld} -melf32bmipn32"
1332 ;;
1333 *64-bit*)
1334 LD="${LD-ld} -melf64bmip"
1335 ;;
1336 esac
1337 else
1338 case `/usr/bin/file conftest.$ac_objext` in
1339 *32-bit*)
1340 LD="${LD-ld} -32"
1341 ;;
1342 *N32*)
1343 LD="${LD-ld} -n32"
1344 ;;
1345 *64-bit*)
1346 LD="${LD-ld} -64"
1347 ;;
1348 esac
1349 fi
db137867
AC
1350 fi
1351 rm -rf conftest*
1352 ;;
1353
6f57a957
AC
1354mips64*-*linux*)
1355 # Find out what ABI is being produced by ac_compile, and set linker
1356 # options accordingly.
1357 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1358 if AC_TRY_EVAL(ac_compile); then
1359 emul=elf
1360 case `/usr/bin/file conftest.$ac_objext` in
1361 *32-bit*)
1362 emul="${emul}32"
1363 ;;
1364 *64-bit*)
1365 emul="${emul}64"
1366 ;;
1367 esac
1368 case `/usr/bin/file conftest.$ac_objext` in
1369 *MSB*)
1370 emul="${emul}btsmip"
1371 ;;
1372 *LSB*)
1373 emul="${emul}ltsmip"
1374 ;;
1375 esac
1376 case `/usr/bin/file conftest.$ac_objext` in
1377 *N32*)
1378 emul="${emul}n32"
1379 ;;
1380 esac
1381 LD="${LD-ld} -m $emul"
1382 fi
1383 rm -rf conftest*
1384 ;;
1385
1386x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
7083c021 1387s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
6f57a957
AC
1388 # Find out what ABI is being produced by ac_compile, and set linker
1389 # options accordingly. Note that the listed cases only cover the
1390 # situations where additional linker options are needed (such as when
1391 # doing 32-bit compilation for a host where ld defaults to 64-bit, or
1392 # vice versa); the common cases where no linker options are needed do
1393 # not appear in the list.
db137867
AC
1394 echo 'int i;' > conftest.$ac_ext
1395 if AC_TRY_EVAL(ac_compile); then
1396 case `/usr/bin/file conftest.o` in
7083c021
AC
1397 *32-bit*)
1398 case $host in
1399 x86_64-*kfreebsd*-gnu)
1400 LD="${LD-ld} -m elf_i386_fbsd"
1401 ;;
1402 x86_64-*linux*)
6f57a957
AC
1403 case `/usr/bin/file conftest.o` in
1404 *x86-64*)
1405 LD="${LD-ld} -m elf32_x86_64"
1406 ;;
1407 *)
1408 LD="${LD-ld} -m elf_i386"
1409 ;;
1410 esac
1411 ;;
1412 powerpc64le-*linux*)
1413 LD="${LD-ld} -m elf32lppclinux"
7083c021 1414 ;;
6f57a957 1415 powerpc64-*linux*)
7083c021
AC
1416 LD="${LD-ld} -m elf32ppclinux"
1417 ;;
1418 s390x-*linux*)
1419 LD="${LD-ld} -m elf_s390"
1420 ;;
1421 sparc64-*linux*)
1422 LD="${LD-ld} -m elf32_sparc"
1423 ;;
1424 esac
1425 ;;
1426 *64-bit*)
1427 case $host in
1428 x86_64-*kfreebsd*-gnu)
1429 LD="${LD-ld} -m elf_x86_64_fbsd"
1430 ;;
1431 x86_64-*linux*)
1432 LD="${LD-ld} -m elf_x86_64"
1433 ;;
6f57a957
AC
1434 powerpcle-*linux*)
1435 LD="${LD-ld} -m elf64lppc"
1436 ;;
1437 powerpc-*linux*)
7083c021
AC
1438 LD="${LD-ld} -m elf64ppc"
1439 ;;
1440 s390*-*linux*|s390*-*tpf*)
1441 LD="${LD-ld} -m elf64_s390"
1442 ;;
1443 sparc*-*linux*)
1444 LD="${LD-ld} -m elf64_sparc"
1445 ;;
1446 esac
1447 ;;
db137867
AC
1448 esac
1449 fi
1450 rm -rf conftest*
1451 ;;
1452
1453*-*-sco3.2v5*)
1454 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
6f57a957 1455 SAVE_CFLAGS=$CFLAGS
db137867
AC
1456 CFLAGS="$CFLAGS -belf"
1457 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1458 [AC_LANG_PUSH(C)
7083c021 1459 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
db137867 1460 AC_LANG_POP])
6f57a957 1461 if test yes != "$lt_cv_cc_needs_belf"; then
db137867 1462 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
6f57a957 1463 CFLAGS=$SAVE_CFLAGS
db137867
AC
1464 fi
1465 ;;
a949ab1a 1466*-*solaris*)
6f57a957
AC
1467 # Find out what ABI is being produced by ac_compile, and set linker
1468 # options accordingly.
db137867
AC
1469 echo 'int i;' > conftest.$ac_ext
1470 if AC_TRY_EVAL(ac_compile); then
1471 case `/usr/bin/file conftest.o` in
1472 *64-bit*)
1473 case $lt_cv_prog_gnu_ld in
a949ab1a
AC
1474 yes*)
1475 case $host in
6f57a957 1476 i?86-*-solaris*|x86_64-*-solaris*)
a949ab1a
AC
1477 LD="${LD-ld} -m elf_x86_64"
1478 ;;
1479 sparc*-*-solaris*)
1480 LD="${LD-ld} -m elf64_sparc"
1481 ;;
1482 esac
1483 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1484 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
6f57a957 1485 LD=${LD-ld}_sol2
a949ab1a
AC
1486 fi
1487 ;;
b676ea3b 1488 *)
7083c021 1489 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
b676ea3b
AC
1490 LD="${LD-ld} -64"
1491 fi
1492 ;;
db137867
AC
1493 esac
1494 ;;
1495 esac
1496 fi
1497 rm -rf conftest*
1498 ;;
db137867
AC
1499esac
1500
6f57a957 1501need_locks=$enable_libtool_lock
7083c021
AC
1502])# _LT_ENABLE_LOCK
1503
1504
b6d0720c
AC
1505# _LT_PROG_AR
1506# -----------
1507m4_defun([_LT_PROG_AR],
1508[AC_CHECK_TOOLS(AR, [ar], false)
1509: ${AR=ar}
1510: ${AR_FLAGS=cru}
1511_LT_DECL([], [AR], [1], [The archiver])
1512_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1513
1514AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1515 [lt_cv_ar_at_file=no
1516 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1517 [echo conftest.$ac_objext > conftest.lst
1518 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1519 AC_TRY_EVAL([lt_ar_try])
6f57a957 1520 if test 0 -eq "$ac_status"; then
b6d0720c
AC
1521 # Ensure the archiver fails upon bogus file names.
1522 rm -f conftest.$ac_objext libconftest.a
1523 AC_TRY_EVAL([lt_ar_try])
6f57a957 1524 if test 0 -ne "$ac_status"; then
b6d0720c
AC
1525 lt_cv_ar_at_file=@
1526 fi
1527 fi
1528 rm -f conftest.* libconftest.a
1529 ])
1530 ])
1531
6f57a957 1532if test no = "$lt_cv_ar_at_file"; then
b6d0720c
AC
1533 archiver_list_spec=
1534else
1535 archiver_list_spec=$lt_cv_ar_at_file
1536fi
1537_LT_DECL([], [archiver_list_spec], [1],
1538 [How to feed a file listing to the archiver])
1539])# _LT_PROG_AR
1540
1541
7083c021
AC
1542# _LT_CMD_OLD_ARCHIVE
1543# -------------------
1544m4_defun([_LT_CMD_OLD_ARCHIVE],
b6d0720c 1545[_LT_PROG_AR
7083c021
AC
1546
1547AC_CHECK_TOOL(STRIP, strip, :)
1548test -z "$STRIP" && STRIP=:
1549_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1550
1551AC_CHECK_TOOL(RANLIB, ranlib, :)
1552test -z "$RANLIB" && RANLIB=:
1553_LT_DECL([], [RANLIB], [1],
1554 [Commands used to install an old-style archive])
1555
1556# Determine commands to create old-style static archives.
1557old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1558old_postinstall_cmds='chmod 644 $oldlib'
1559old_postuninstall_cmds=
db137867 1560
7083c021
AC
1561if test -n "$RANLIB"; then
1562 case $host_os in
6f57a957 1563 bitrig* | openbsd*)
a949ab1a 1564 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
7083c021
AC
1565 ;;
1566 *)
a949ab1a 1567 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
7083c021
AC
1568 ;;
1569 esac
a949ab1a 1570 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
7083c021 1571fi
b6d0720c
AC
1572
1573case $host_os in
1574 darwin*)
1575 lock_old_archive_extraction=yes ;;
1576 *)
1577 lock_old_archive_extraction=no ;;
1578esac
7083c021
AC
1579_LT_DECL([], [old_postinstall_cmds], [2])
1580_LT_DECL([], [old_postuninstall_cmds], [2])
1581_LT_TAGDECL([], [old_archive_cmds], [2],
1582 [Commands used to build an old-style archive])
b6d0720c
AC
1583_LT_DECL([], [lock_old_archive_extraction], [0],
1584 [Whether to use a lock for old archive extraction])
7083c021 1585])# _LT_CMD_OLD_ARCHIVE
db137867
AC
1586
1587
7083c021 1588# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
db137867
AC
1589# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1590# ----------------------------------------------------------------
1591# Check whether the given compiler option works
7083c021
AC
1592AC_DEFUN([_LT_COMPILER_OPTION],
1593[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1594m4_require([_LT_DECL_SED])dnl
db137867
AC
1595AC_CACHE_CHECK([$1], [$2],
1596 [$2=no
7083c021 1597 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
db137867 1598 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6f57a957 1599 lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment
db137867
AC
1600 # Insert the option either (1) after the last *FLAGS variable, or
1601 # (2) before a word containing "conftest.", or (3) at the end.
1602 # Note that $ac_compile itself does not contain backslashes and begins
1603 # with a dollar sign (not a hyphen), so the echo should work correctly.
1604 # The option is referenced via a variable to avoid confusing sed.
1605 lt_compile=`echo "$ac_compile" | $SED \
1606 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1607 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1608 -e 's:$: $lt_compiler_flag:'`
b6d0720c 1609 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
db137867
AC
1610 (eval "$lt_compile" 2>conftest.err)
1611 ac_status=$?
1612 cat conftest.err >&AS_MESSAGE_LOG_FD
b6d0720c 1613 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
db137867
AC
1614 if (exit $ac_status) && test -s "$ac_outfile"; then
1615 # The compiler can only warn and ignore the option if not recognized
1616 # So say no if there are warnings other than the usual output.
b6d0720c 1617 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
db137867
AC
1618 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1619 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1620 $2=yes
1621 fi
1622 fi
7083c021 1623 $RM conftest*
db137867
AC
1624])
1625
6f57a957 1626if test yes = "[$]$2"; then
7083c021 1627 m4_if([$5], , :, [$5])
db137867 1628else
7083c021 1629 m4_if([$6], , :, [$6])
db137867 1630fi
7083c021 1631])# _LT_COMPILER_OPTION
db137867 1632
7083c021
AC
1633# Old name:
1634AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1635dnl aclocal-1.4 backwards compatibility:
1636dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
db137867 1637
7083c021
AC
1638
1639# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1640# [ACTION-SUCCESS], [ACTION-FAILURE])
1641# ----------------------------------------------------
1642# Check whether the given linker option works
1643AC_DEFUN([_LT_LINKER_OPTION],
1644[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1645m4_require([_LT_DECL_SED])dnl
db137867
AC
1646AC_CACHE_CHECK([$1], [$2],
1647 [$2=no
6f57a957 1648 save_LDFLAGS=$LDFLAGS
db137867
AC
1649 LDFLAGS="$LDFLAGS $3"
1650 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1651 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1652 # The linker can only warn and ignore the option if not recognized
1653 # So say no if there are warnings
1654 if test -s conftest.err; then
1655 # Append any errors to the config.log.
1656 cat conftest.err 1>&AS_MESSAGE_LOG_FD
b6d0720c 1657 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
db137867
AC
1658 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1659 if diff conftest.exp conftest.er2 >/dev/null; then
1660 $2=yes
1661 fi
1662 else
1663 $2=yes
1664 fi
1665 fi
7083c021 1666 $RM -r conftest*
6f57a957 1667 LDFLAGS=$save_LDFLAGS
db137867
AC
1668])
1669
6f57a957 1670if test yes = "[$]$2"; then
7083c021 1671 m4_if([$4], , :, [$4])
db137867 1672else
7083c021 1673 m4_if([$5], , :, [$5])
db137867 1674fi
7083c021 1675])# _LT_LINKER_OPTION
db137867 1676
7083c021
AC
1677# Old name:
1678AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1679dnl aclocal-1.4 backwards compatibility:
1680dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
db137867 1681
7083c021
AC
1682
1683# LT_CMD_MAX_LEN
1684#---------------
1685AC_DEFUN([LT_CMD_MAX_LEN],
1686[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1687# find the maximum length of command line arguments
db137867
AC
1688AC_MSG_CHECKING([the maximum length of command line arguments])
1689AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1690 i=0
6f57a957 1691 teststring=ABCD
db137867
AC
1692
1693 case $build_os in
1694 msdosdjgpp*)
1695 # On DJGPP, this test can blow up pretty badly due to problems in libc
1696 # (any single argument exceeding 2000 bytes causes a buffer overrun
1697 # during glob expansion). Even if it were fixed, the result of this
1698 # check would be larger than it should be.
1699 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1700 ;;
1701
1702 gnu*)
1703 # Under GNU Hurd, this test is not required because there is
1704 # no limit to the length of command line arguments.
1705 # Libtool will interpret -1 as no limit whatsoever
1706 lt_cv_sys_max_cmd_len=-1;
1707 ;;
1708
7083c021 1709 cygwin* | mingw* | cegcc*)
db137867
AC
1710 # On Win9x/ME, this test blows up -- it succeeds, but takes
1711 # about 5 minutes as the teststring grows exponentially.
1712 # Worse, since 9x/ME are not pre-emptively multitasking,
1713 # you end up with a "frozen" computer, even though with patience
1714 # the test eventually succeeds (with a max line length of 256k).
1715 # Instead, let's just punt: use the minimum linelength reported by
1716 # all of the supported platforms: 8192 (on NT/2K/XP).
1717 lt_cv_sys_max_cmd_len=8192;
1718 ;;
1719
b6d0720c
AC
1720 mint*)
1721 # On MiNT this can take a long time and run out of memory.
1722 lt_cv_sys_max_cmd_len=8192;
1723 ;;
1724
db137867
AC
1725 amigaos*)
1726 # On AmigaOS with pdksh, this test takes hours, literally.
1727 # So we just punt and use a minimum line length of 8192.
1728 lt_cv_sys_max_cmd_len=8192;
1729 ;;
1730
6f57a957 1731 bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
db137867
AC
1732 # This has been around since 386BSD, at least. Likely further.
1733 if test -x /sbin/sysctl; then
1734 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1735 elif test -x /usr/sbin/sysctl; then
1736 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1737 else
1738 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1739 fi
1740 # And add a safety zone
1741 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1742 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1743 ;;
1744
1745 interix*)
1746 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1747 lt_cv_sys_max_cmd_len=196608
1748 ;;
1749
a949ab1a
AC
1750 os2*)
1751 # The test takes a long time on OS/2.
1752 lt_cv_sys_max_cmd_len=8192
1753 ;;
1754
db137867
AC
1755 osf*)
1756 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1757 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1758 # nice to cause kernel panics so lets avoid the loop below.
1759 # First set a reasonable default.
1760 lt_cv_sys_max_cmd_len=16384
1761 #
1762 if test -x /sbin/sysconfig; then
1763 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1764 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1765 esac
1766 fi
1767 ;;
1768 sco3.2v5*)
1769 lt_cv_sys_max_cmd_len=102400
1770 ;;
1771 sysv5* | sco5v6* | sysv4.2uw2*)
1772 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1773 if test -n "$kargmax"; then
7083c021 1774 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
db137867
AC
1775 else
1776 lt_cv_sys_max_cmd_len=32768
1777 fi
1778 ;;
1779 *)
1780 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
6f57a957
AC
1781 if test -n "$lt_cv_sys_max_cmd_len" && \
1782 test undefined != "$lt_cv_sys_max_cmd_len"; then
db137867
AC
1783 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1784 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1785 else
7083c021
AC
1786 # Make teststring a little bigger before we do anything with it.
1787 # a 1K string should be a reasonable start.
6f57a957 1788 for i in 1 2 3 4 5 6 7 8; do
7083c021
AC
1789 teststring=$teststring$teststring
1790 done
db137867 1791 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
7083c021
AC
1792 # If test is not a shell built-in, we'll probably end up computing a
1793 # maximum length that is only half of the actual maximum length, but
1794 # we can't tell.
6f57a957 1795 while { test X`env echo "$teststring$teststring" 2>/dev/null` \
b6d0720c 1796 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
6f57a957 1797 test 17 != "$i" # 1/2 MB should be enough
db137867
AC
1798 do
1799 i=`expr $i + 1`
1800 teststring=$teststring$teststring
1801 done
7083c021
AC
1802 # Only check the string length outside the loop.
1803 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
db137867 1804 teststring=
7083c021
AC
1805 # Add a significant safety factor because C++ compilers can tack on
1806 # massive amounts of additional arguments before passing them to the
1807 # linker. It appears as though 1/2 is a usable value.
db137867
AC
1808 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1809 fi
1810 ;;
1811 esac
1812])
6f57a957 1813if test -n "$lt_cv_sys_max_cmd_len"; then
db137867
AC
1814 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1815else
1816 AC_MSG_RESULT(none)
1817fi
7083c021
AC
1818max_cmd_len=$lt_cv_sys_max_cmd_len
1819_LT_DECL([], [max_cmd_len], [0],
1820 [What is the maximum length of a command?])
1821])# LT_CMD_MAX_LEN
db137867 1822
7083c021
AC
1823# Old name:
1824AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1825dnl aclocal-1.4 backwards compatibility:
1826dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
db137867 1827
7083c021
AC
1828
1829# _LT_HEADER_DLFCN
1830# ----------------
1831m4_defun([_LT_HEADER_DLFCN],
1832[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1833])# _LT_HEADER_DLFCN
db137867
AC
1834
1835
7083c021
AC
1836# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1837# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1838# ----------------------------------------------------------------
1839m4_defun([_LT_TRY_DLOPEN_SELF],
1840[m4_require([_LT_HEADER_DLFCN])dnl
6f57a957 1841if test yes = "$cross_compiling"; then :
db137867
AC
1842 [$4]
1843else
1844 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1845 lt_status=$lt_dlunknown
7083c021 1846 cat > conftest.$ac_ext <<_LT_EOF
b6d0720c 1847[#line $LINENO "configure"
db137867
AC
1848#include "confdefs.h"
1849
1850#if HAVE_DLFCN_H
1851#include <dlfcn.h>
1852#endif
1853
1854#include <stdio.h>
1855
1856#ifdef RTLD_GLOBAL
1857# define LT_DLGLOBAL RTLD_GLOBAL
1858#else
1859# ifdef DL_GLOBAL
1860# define LT_DLGLOBAL DL_GLOBAL
1861# else
1862# define LT_DLGLOBAL 0
1863# endif
1864#endif
1865
1866/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1867 find out it does not work in some platform. */
1868#ifndef LT_DLLAZY_OR_NOW
1869# ifdef RTLD_LAZY
1870# define LT_DLLAZY_OR_NOW RTLD_LAZY
1871# else
1872# ifdef DL_LAZY
1873# define LT_DLLAZY_OR_NOW DL_LAZY
1874# else
1875# ifdef RTLD_NOW
1876# define LT_DLLAZY_OR_NOW RTLD_NOW
1877# else
1878# ifdef DL_NOW
1879# define LT_DLLAZY_OR_NOW DL_NOW
1880# else
1881# define LT_DLLAZY_OR_NOW 0
1882# endif
1883# endif
1884# endif
1885# endif
1886#endif
1887
6f57a957 1888/* When -fvisibility=hidden is used, assume the code has been annotated
b6d0720c 1889 correspondingly for the symbols needed. */
6f57a957 1890#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
b6d0720c
AC
1891int fnord () __attribute__((visibility("default")));
1892#endif
1893
1894int fnord () { return 42; }
db137867
AC
1895int main ()
1896{
1897 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1898 int status = $lt_dlunknown;
1899
1900 if (self)
1901 {
1902 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
b6d0720c
AC
1903 else
1904 {
1905 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1906 else puts (dlerror ());
1907 }
db137867
AC
1908 /* dlclose (self); */
1909 }
1910 else
1911 puts (dlerror ());
1912
7083c021 1913 return status;
db137867 1914}]
7083c021 1915_LT_EOF
6f57a957 1916 if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
db137867
AC
1917 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1918 lt_status=$?
1919 case x$lt_status in
1920 x$lt_dlno_uscore) $1 ;;
1921 x$lt_dlneed_uscore) $2 ;;
1922 x$lt_dlunknown|x*) $3 ;;
1923 esac
1924 else :
1925 # compilation failed
1926 $3
1927 fi
1928fi
1929rm -fr conftest*
7083c021 1930])# _LT_TRY_DLOPEN_SELF
db137867
AC
1931
1932
7083c021
AC
1933# LT_SYS_DLOPEN_SELF
1934# ------------------
1935AC_DEFUN([LT_SYS_DLOPEN_SELF],
1936[m4_require([_LT_HEADER_DLFCN])dnl
6f57a957 1937if test yes != "$enable_dlopen"; then
db137867
AC
1938 enable_dlopen=unknown
1939 enable_dlopen_self=unknown
1940 enable_dlopen_self_static=unknown
1941else
1942 lt_cv_dlopen=no
1943 lt_cv_dlopen_libs=
1944
1945 case $host_os in
1946 beos*)
6f57a957 1947 lt_cv_dlopen=load_add_on
db137867
AC
1948 lt_cv_dlopen_libs=
1949 lt_cv_dlopen_self=yes
1950 ;;
1951
7083c021 1952 mingw* | pw32* | cegcc*)
6f57a957 1953 lt_cv_dlopen=LoadLibrary
db137867 1954 lt_cv_dlopen_libs=
7083c021 1955 ;;
db137867
AC
1956
1957 cygwin*)
6f57a957 1958 lt_cv_dlopen=dlopen
db137867 1959 lt_cv_dlopen_libs=
7083c021 1960 ;;
db137867
AC
1961
1962 darwin*)
6f57a957 1963 # if libdl is installed we need to link against it
db137867 1964 AC_CHECK_LIB([dl], [dlopen],
6f57a957
AC
1965 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
1966 lt_cv_dlopen=dyld
db137867
AC
1967 lt_cv_dlopen_libs=
1968 lt_cv_dlopen_self=yes
1969 ])
7083c021 1970 ;;
db137867 1971
6f57a957
AC
1972 tpf*)
1973 # Don't try to run any link tests for TPF. We know it's impossible
1974 # because TPF is a cross-compiler, and we know how we open DSOs.
1975 lt_cv_dlopen=dlopen
1976 lt_cv_dlopen_libs=
1977 lt_cv_dlopen_self=no
1978 ;;
1979
db137867
AC
1980 *)
1981 AC_CHECK_FUNC([shl_load],
6f57a957 1982 [lt_cv_dlopen=shl_load],
db137867 1983 [AC_CHECK_LIB([dld], [shl_load],
6f57a957 1984 [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
db137867 1985 [AC_CHECK_FUNC([dlopen],
6f57a957 1986 [lt_cv_dlopen=dlopen],
db137867 1987 [AC_CHECK_LIB([dl], [dlopen],
6f57a957 1988 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
db137867 1989 [AC_CHECK_LIB([svld], [dlopen],
6f57a957 1990 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
db137867 1991 [AC_CHECK_LIB([dld], [dld_link],
6f57a957 1992 [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
db137867
AC
1993 ])
1994 ])
1995 ])
1996 ])
1997 ])
1998 ;;
1999 esac
2000
6f57a957 2001 if test no = "$lt_cv_dlopen"; then
db137867 2002 enable_dlopen=no
6f57a957
AC
2003 else
2004 enable_dlopen=yes
db137867
AC
2005 fi
2006
2007 case $lt_cv_dlopen in
2008 dlopen)
6f57a957
AC
2009 save_CPPFLAGS=$CPPFLAGS
2010 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
db137867 2011
6f57a957 2012 save_LDFLAGS=$LDFLAGS
db137867
AC
2013 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2014
6f57a957 2015 save_LIBS=$LIBS
db137867
AC
2016 LIBS="$lt_cv_dlopen_libs $LIBS"
2017
2018 AC_CACHE_CHECK([whether a program can dlopen itself],
2019 lt_cv_dlopen_self, [dnl
7083c021 2020 _LT_TRY_DLOPEN_SELF(
db137867
AC
2021 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
2022 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
2023 ])
2024
6f57a957 2025 if test yes = "$lt_cv_dlopen_self"; then
db137867
AC
2026 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
2027 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
7083c021
AC
2028 lt_cv_dlopen_self_static, [dnl
2029 _LT_TRY_DLOPEN_SELF(
db137867
AC
2030 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
2031 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
2032 ])
2033 fi
2034
6f57a957
AC
2035 CPPFLAGS=$save_CPPFLAGS
2036 LDFLAGS=$save_LDFLAGS
2037 LIBS=$save_LIBS
db137867
AC
2038 ;;
2039 esac
2040
2041 case $lt_cv_dlopen_self in
2042 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
2043 *) enable_dlopen_self=unknown ;;
2044 esac
2045
2046 case $lt_cv_dlopen_self_static in
2047 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
2048 *) enable_dlopen_self_static=unknown ;;
2049 esac
2050fi
7083c021
AC
2051_LT_DECL([dlopen_support], [enable_dlopen], [0],
2052 [Whether dlopen is supported])
2053_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
2054 [Whether dlopen of programs is supported])
2055_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
2056 [Whether dlopen of statically linked programs is supported])
2057])# LT_SYS_DLOPEN_SELF
db137867 2058
7083c021
AC
2059# Old name:
2060AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
2061dnl aclocal-1.4 backwards compatibility:
2062dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
db137867 2063
7083c021
AC
2064
2065# _LT_COMPILER_C_O([TAGNAME])
2066# ---------------------------
2067# Check to see if options -c and -o are simultaneously supported by compiler.
2068# This macro does not hard code the compiler like AC_PROG_CC_C_O.
2069m4_defun([_LT_COMPILER_C_O],
2070[m4_require([_LT_DECL_SED])dnl
2071m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2072m4_require([_LT_TAG_COMPILER])dnl
db137867 2073AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
7083c021
AC
2074 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
2075 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
2076 $RM -r conftest 2>/dev/null
db137867
AC
2077 mkdir conftest
2078 cd conftest
2079 mkdir out
2080 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2081
2082 lt_compiler_flag="-o out/conftest2.$ac_objext"
2083 # Insert the option either (1) after the last *FLAGS variable, or
2084 # (2) before a word containing "conftest.", or (3) at the end.
2085 # Note that $ac_compile itself does not contain backslashes and begins
2086 # with a dollar sign (not a hyphen), so the echo should work correctly.
2087 lt_compile=`echo "$ac_compile" | $SED \
2088 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2089 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2090 -e 's:$: $lt_compiler_flag:'`
b6d0720c 2091 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
db137867
AC
2092 (eval "$lt_compile" 2>out/conftest.err)
2093 ac_status=$?
2094 cat out/conftest.err >&AS_MESSAGE_LOG_FD
b6d0720c 2095 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
db137867
AC
2096 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2097 then
2098 # The compiler can only warn and ignore the option if not recognized
2099 # So say no if there are warnings
b6d0720c 2100 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
db137867
AC
2101 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2102 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
7083c021 2103 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
db137867
AC
2104 fi
2105 fi
2106 chmod u+w . 2>&AS_MESSAGE_LOG_FD
7083c021 2107 $RM conftest*
db137867
AC
2108 # SGI C++ compiler will create directory out/ii_files/ for
2109 # template instantiation
7083c021
AC
2110 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2111 $RM out/* && rmdir out
db137867 2112 cd ..
7083c021
AC
2113 $RM -r conftest
2114 $RM conftest*
db137867 2115])
7083c021
AC
2116_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2117 [Does compiler simultaneously support -c and -o options?])
2118])# _LT_COMPILER_C_O
db137867
AC
2119
2120
7083c021
AC
2121# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2122# ----------------------------------
db137867 2123# Check to see if we can do hard links to lock some files if needed
7083c021
AC
2124m4_defun([_LT_COMPILER_FILE_LOCKS],
2125[m4_require([_LT_ENABLE_LOCK])dnl
2126m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2127_LT_COMPILER_C_O([$1])
db137867 2128
6f57a957
AC
2129hard_links=nottested
2130if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
db137867
AC
2131 # do not overwrite the value of need_locks provided by the user
2132 AC_MSG_CHECKING([if we can lock with hard links])
2133 hard_links=yes
7083c021 2134 $RM conftest*
db137867
AC
2135 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2136 touch conftest.a
2137 ln conftest.a conftest.b 2>&5 || hard_links=no
2138 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2139 AC_MSG_RESULT([$hard_links])
6f57a957
AC
2140 if test no = "$hard_links"; then
2141 AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
db137867
AC
2142 need_locks=warn
2143 fi
2144else
2145 need_locks=no
2146fi
7083c021
AC
2147_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2148])# _LT_COMPILER_FILE_LOCKS
db137867
AC
2149
2150
7083c021
AC
2151# _LT_CHECK_OBJDIR
2152# ----------------
2153m4_defun([_LT_CHECK_OBJDIR],
db137867
AC
2154[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2155[rm -f .libs 2>/dev/null
2156mkdir .libs 2>/dev/null
2157if test -d .libs; then
2158 lt_cv_objdir=.libs
2159else
2160 # MS-DOS does not allow filenames that begin with a dot.
2161 lt_cv_objdir=_libs
2162fi
2163rmdir .libs 2>/dev/null])
2164objdir=$lt_cv_objdir
7083c021
AC
2165_LT_DECL([], [objdir], [0],
2166 [The name of the directory that contains temporary libtool files])dnl
2167m4_pattern_allow([LT_OBJDIR])dnl
6f57a957
AC
2168AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
2169 [Define to the sub-directory where libtool stores uninstalled libraries.])
7083c021 2170])# _LT_CHECK_OBJDIR
db137867
AC
2171
2172
7083c021
AC
2173# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2174# --------------------------------------
db137867 2175# Check hardcoding attributes.
7083c021 2176m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
db137867 2177[AC_MSG_CHECKING([how to hardcode library paths into programs])
7083c021
AC
2178_LT_TAGVAR(hardcode_action, $1)=
2179if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2180 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
6f57a957 2181 test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
db137867 2182
7083c021 2183 # We can hardcode non-existent directories.
6f57a957 2184 if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
db137867
AC
2185 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2186 # have to relink, otherwise we might link with an installed library
2187 # when we should be linking with a yet-to-be-installed one
6f57a957
AC
2188 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
2189 test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
db137867 2190 # Linking always hardcodes the temporary library directory.
7083c021 2191 _LT_TAGVAR(hardcode_action, $1)=relink
db137867
AC
2192 else
2193 # We can link without hardcoding, and we can hardcode nonexisting dirs.
7083c021 2194 _LT_TAGVAR(hardcode_action, $1)=immediate
db137867
AC
2195 fi
2196else
2197 # We cannot hardcode anything, or else we can only hardcode existing
2198 # directories.
7083c021 2199 _LT_TAGVAR(hardcode_action, $1)=unsupported
db137867 2200fi
7083c021 2201AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
db137867 2202
6f57a957
AC
2203if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
2204 test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
db137867
AC
2205 # Fast installation is not supported
2206 enable_fast_install=no
6f57a957
AC
2207elif test yes = "$shlibpath_overrides_runpath" ||
2208 test no = "$enable_shared"; then
db137867
AC
2209 # Fast installation is not necessary
2210 enable_fast_install=needless
2211fi
7083c021
AC
2212_LT_TAGDECL([], [hardcode_action], [0],
2213 [How to hardcode a shared library path into an executable])
2214])# _LT_LINKER_HARDCODE_LIBPATH
db137867
AC
2215
2216
7083c021
AC
2217# _LT_CMD_STRIPLIB
2218# ----------------
2219m4_defun([_LT_CMD_STRIPLIB],
2220[m4_require([_LT_DECL_EGREP])
2221striplib=
db137867
AC
2222old_striplib=
2223AC_MSG_CHECKING([whether stripping libraries is possible])
7083c021 2224if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
db137867
AC
2225 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2226 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2227 AC_MSG_RESULT([yes])
2228else
2229# FIXME - insert some real tests, host_os isn't really good enough
2230 case $host_os in
7083c021 2231 darwin*)
6f57a957 2232 if test -n "$STRIP"; then
7083c021
AC
2233 striplib="$STRIP -x"
2234 old_striplib="$STRIP -S"
2235 AC_MSG_RESULT([yes])
2236 else
2237 AC_MSG_RESULT([no])
2238 fi
2239 ;;
2240 *)
2241 AC_MSG_RESULT([no])
db137867
AC
2242 ;;
2243 esac
2244fi
7083c021
AC
2245_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2246_LT_DECL([], [striplib], [1])
2247])# _LT_CMD_STRIPLIB
db137867
AC
2248
2249
6f57a957
AC
2250# _LT_PREPARE_MUNGE_PATH_LIST
2251# ---------------------------
2252# Make sure func_munge_path_list() is defined correctly.
2253m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
2254[[# func_munge_path_list VARIABLE PATH
2255# -----------------------------------
2256# VARIABLE is name of variable containing _space_ separated list of
2257# directories to be munged by the contents of PATH, which is string
2258# having a format:
2259# "DIR[:DIR]:"
2260# string "DIR[ DIR]" will be prepended to VARIABLE
2261# ":DIR[:DIR]"
2262# string "DIR[ DIR]" will be appended to VARIABLE
2263# "DIRP[:DIRP]::[DIRA:]DIRA"
2264# string "DIRP[ DIRP]" will be prepended to VARIABLE and string
2265# "DIRA[ DIRA]" will be appended to VARIABLE
2266# "DIR[:DIR]"
2267# VARIABLE will be replaced by "DIR[ DIR]"
2268func_munge_path_list ()
2269{
2270 case x@S|@2 in
2271 x)
2272 ;;
2273 *:)
2274 eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
2275 ;;
2276 x:*)
2277 eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
2278 ;;
2279 *::*)
2280 eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
2281 eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
2282 ;;
2283 *)
2284 eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
2285 ;;
2286 esac
2287}
2288]])# _LT_PREPARE_PATH_LIST
2289
2290
7083c021 2291# _LT_SYS_DYNAMIC_LINKER([TAG])
db137867
AC
2292# -----------------------------
2293# PORTME Fill in your ld.so characteristics
7083c021
AC
2294m4_defun([_LT_SYS_DYNAMIC_LINKER],
2295[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2296m4_require([_LT_DECL_EGREP])dnl
2297m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2298m4_require([_LT_DECL_OBJDUMP])dnl
2299m4_require([_LT_DECL_SED])dnl
b6d0720c 2300m4_require([_LT_CHECK_SHELL_FEATURES])dnl
6f57a957 2301m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
db137867 2302AC_MSG_CHECKING([dynamic linker characteristics])
7083c021
AC
2303m4_if([$1],
2304 [], [
6f57a957 2305if test yes = "$GCC"; then
db137867 2306 case $host_os in
6f57a957
AC
2307 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
2308 *) lt_awk_arg='/^libraries:/' ;;
db137867 2309 esac
b6d0720c 2310 case $host_os in
6f57a957
AC
2311 mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
2312 *) lt_sed_strip_eq='s|=/|/|g' ;;
b6d0720c
AC
2313 esac
2314 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2315 case $lt_search_path_spec in
2316 *\;*)
db137867
AC
2317 # if the path contains ";" then we assume it to be the separator
2318 # otherwise default to the standard path separator (i.e. ":") - it is
2319 # assumed that no part of a normal pathname contains ";" but that should
2320 # okay in the real world where ";" in dirpaths is itself problematic.
b6d0720c
AC
2321 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2322 ;;
2323 *)
2324 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2325 ;;
2326 esac
db137867 2327 # Ok, now we have the path, separated by spaces, we can step through it
6f57a957 2328 # and add multilib dir if necessary...
db137867 2329 lt_tmp_lt_search_path_spec=
6f57a957
AC
2330 lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2331 # ...but if some path component already ends with the multilib dir we assume
2332 # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
2333 case "$lt_multi_os_dir; $lt_search_path_spec " in
2334 "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
2335 lt_multi_os_dir=
2336 ;;
2337 esac
db137867 2338 for lt_sys_path in $lt_search_path_spec; do
6f57a957
AC
2339 if test -d "$lt_sys_path$lt_multi_os_dir"; then
2340 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
2341 elif test -n "$lt_multi_os_dir"; then
db137867
AC
2342 test -d "$lt_sys_path" && \
2343 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2344 fi
2345 done
b6d0720c 2346 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
6f57a957
AC
2347BEGIN {RS = " "; FS = "/|\n";} {
2348 lt_foo = "";
2349 lt_count = 0;
db137867
AC
2350 for (lt_i = NF; lt_i > 0; lt_i--) {
2351 if ($lt_i != "" && $lt_i != ".") {
2352 if ($lt_i == "..") {
2353 lt_count++;
2354 } else {
2355 if (lt_count == 0) {
6f57a957 2356 lt_foo = "/" $lt_i lt_foo;
db137867
AC
2357 } else {
2358 lt_count--;
2359 }
2360 }
2361 }
2362 }
2363 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2364 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2365}'`
b6d0720c
AC
2366 # AWK program above erroneously prepends '/' to C:/dos/paths
2367 # for these hosts.
2368 case $host_os in
2369 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
6f57a957 2370 $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
b6d0720c
AC
2371 esac
2372 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
db137867
AC
2373else
2374 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2375fi])
7083c021
AC
2376library_names_spec=
2377libname_spec='lib$name'
2378soname_spec=
6f57a957 2379shrext_cmds=.so
7083c021
AC
2380postinstall_cmds=
2381postuninstall_cmds=
2382finish_cmds=
2383finish_eval=
2384shlibpath_var=
2385shlibpath_overrides_runpath=unknown
2386version_type=none
2387dynamic_linker="$host_os ld.so"
2388sys_lib_dlsearch_path_spec="/lib /usr/lib"
db137867
AC
2389need_lib_prefix=unknown
2390hardcode_into_libs=no
2391
2392# when you set need_version to no, make sure it does not cause -set_version
2393# flags to be left without arguments
2394need_version=unknown
2395
6f57a957
AC
2396AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
2397[User-defined run-time library search path.])
2398
db137867
AC
2399case $host_os in
2400aix3*)
a949ab1a 2401 version_type=linux # correct to gnu/linux during the next big refactor
6f57a957 2402 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
db137867
AC
2403 shlibpath_var=LIBPATH
2404
2405 # AIX 3 has no versioning support, so we append a major version to the name.
6f57a957 2406 soname_spec='$libname$release$shared_ext$major'
db137867
AC
2407 ;;
2408
b676ea3b 2409aix[[4-9]]*)
a949ab1a 2410 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2411 need_lib_prefix=no
2412 need_version=no
2413 hardcode_into_libs=yes
6f57a957 2414 if test ia64 = "$host_cpu"; then
db137867 2415 # AIX 5 supports IA64
6f57a957 2416 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
db137867
AC
2417 shlibpath_var=LD_LIBRARY_PATH
2418 else
2419 # With GCC up to 2.95.x, collect2 would create an import file
2420 # for dependence libraries. The import file would start with
6f57a957
AC
2421 # the line '#! .'. This would cause the generated library to
2422 # depend on '.', always an invalid library. This was fixed in
db137867
AC
2423 # development snapshots of GCC prior to 3.0.
2424 case $host_os in
2425 aix4 | aix4.[[01]] | aix4.[[01]].*)
2426 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2427 echo ' yes '
6f57a957 2428 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
db137867
AC
2429 :
2430 else
2431 can_build_shared=no
2432 fi
2433 ;;
2434 esac
6f57a957
AC
2435 # Using Import Files as archive members, it is possible to support
2436 # filename-based versioning of shared library archives on AIX. While
2437 # this would work for both with and without runtime linking, it will
2438 # prevent static linking of such archives. So we do filename-based
2439 # shared library versioning with .so extension only, which is used
2440 # when both runtime linking and shared linking is enabled.
2441 # Unfortunately, runtime linking may impact performance, so we do
2442 # not want this to be the default eventually. Also, we use the
2443 # versioned .so libs for executables only if there is the -brtl
2444 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
2445 # To allow for filename-based versioning support, we need to create
2446 # libNAME.so.V as an archive file, containing:
2447 # *) an Import File, referring to the versioned filename of the
2448 # archive as well as the shared archive member, telling the
2449 # bitwidth (32 or 64) of that shared object, and providing the
2450 # list of exported symbols of that shared object, eventually
2451 # decorated with the 'weak' keyword
2452 # *) the shared object with the F_LOADONLY flag set, to really avoid
2453 # it being seen by the linker.
2454 # At run time we better use the real file rather than another symlink,
2455 # but for link time we create the symlink libNAME.so -> libNAME.so.V
2456
2457 case $with_aix_soname,$aix_use_runtimelinking in
2458 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
db137867
AC
2459 # soname into executable. Probably we can add versioning support to
2460 # collect2, so additional links can be useful in future.
6f57a957
AC
2461 aix,yes) # traditional libtool
2462 dynamic_linker='AIX unversionable lib.so'
db137867
AC
2463 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2464 # instead of lib<name>.a to let people know that these are not
2465 # typical AIX shared libraries.
6f57a957
AC
2466 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2467 ;;
2468 aix,no) # traditional AIX only
2469 dynamic_linker='AIX lib.a[(]lib.so.V[)]'
db137867
AC
2470 # We preserve .a as extension for shared libraries through AIX4.2
2471 # and later when we are not doing run time linking.
6f57a957
AC
2472 library_names_spec='$libname$release.a $libname.a'
2473 soname_spec='$libname$release$shared_ext$major'
2474 ;;
2475 svr4,*) # full svr4 only
2476 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
2477 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2478 # We do not specify a path in Import Files, so LIBPATH fires.
2479 shlibpath_overrides_runpath=yes
2480 ;;
2481 *,yes) # both, prefer svr4
2482 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
2483 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2484 # unpreferred sharedlib libNAME.a needs extra handling
2485 postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
2486 postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
2487 # We do not specify a path in Import Files, so LIBPATH fires.
2488 shlibpath_overrides_runpath=yes
2489 ;;
2490 *,no) # both, prefer aix
2491 dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
2492 library_names_spec='$libname$release.a $libname.a'
2493 soname_spec='$libname$release$shared_ext$major'
2494 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
2495 postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
2496 postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
2497 ;;
2498 esac
db137867
AC
2499 shlibpath_var=LIBPATH
2500 fi
2501 ;;
2502
2503amigaos*)
7083c021
AC
2504 case $host_cpu in
2505 powerpc)
2506 # Since July 2007 AmigaOS4 officially supports .so libraries.
2507 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
6f57a957 2508 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
7083c021
AC
2509 ;;
2510 m68k)
2511 library_names_spec='$libname.ixlibrary $libname.a'
2512 # Create ${libname}_ixlibrary.a entries in /sys/libs.
6f57a957 2513 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
7083c021
AC
2514 ;;
2515 esac
db137867
AC
2516 ;;
2517
2518beos*)
6f57a957 2519 library_names_spec='$libname$shared_ext'
db137867
AC
2520 dynamic_linker="$host_os ld.so"
2521 shlibpath_var=LIBRARY_PATH
2522 ;;
2523
2524bsdi[[45]]*)
a949ab1a 2525 version_type=linux # correct to gnu/linux during the next big refactor
db137867 2526 need_version=no
6f57a957
AC
2527 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2528 soname_spec='$libname$release$shared_ext$major'
db137867
AC
2529 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2530 shlibpath_var=LD_LIBRARY_PATH
2531 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2532 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2533 # the default ld.so.conf also contains /usr/contrib/lib and
2534 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2535 # libtool to hard-code these into programs
2536 ;;
2537
7083c021 2538cygwin* | mingw* | pw32* | cegcc*)
db137867 2539 version_type=windows
6f57a957 2540 shrext_cmds=.dll
db137867
AC
2541 need_version=no
2542 need_lib_prefix=no
2543
b6d0720c
AC
2544 case $GCC,$cc_basename in
2545 yes,*)
2546 # gcc
db137867
AC
2547 library_names_spec='$libname.dll.a'
2548 # DLL is installed to $(libdir)/../bin by postinstall_cmds
6f57a957
AC
2549 postinstall_cmds='base_file=`basename \$file`~
2550 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
db137867
AC
2551 dldir=$destdir/`dirname \$dlpath`~
2552 test -d \$dldir || mkdir -p \$dldir~
2553 $install_prog $dir/$dlname \$dldir/$dlname~
7083c021
AC
2554 chmod a+x \$dldir/$dlname~
2555 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2556 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2557 fi'
db137867
AC
2558 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2559 dlpath=$dir/\$dldll~
7083c021 2560 $RM \$dlpath'
db137867
AC
2561 shlibpath_overrides_runpath=yes
2562
2563 case $host_os in
2564 cygwin*)
2565 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
6f57a957 2566 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
b6d0720c
AC
2567m4_if([$1], [],[
2568 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
db137867 2569 ;;
7083c021 2570 mingw* | cegcc*)
db137867 2571 # MinGW DLLs use traditional 'lib' prefix
6f57a957 2572 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
db137867
AC
2573 ;;
2574 pw32*)
2575 # pw32 DLLs use 'pw' prefix rather than 'lib'
6f57a957 2576 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
db137867
AC
2577 ;;
2578 esac
b6d0720c
AC
2579 dynamic_linker='Win32 ld.exe'
2580 ;;
2581
2582 *,cl*)
2583 # Native MSVC
2584 libname_spec='$name'
6f57a957
AC
2585 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2586 library_names_spec='$libname.dll.lib'
b6d0720c
AC
2587
2588 case $build_os in
2589 mingw*)
2590 sys_lib_search_path_spec=
2591 lt_save_ifs=$IFS
2592 IFS=';'
2593 for lt_path in $LIB
2594 do
2595 IFS=$lt_save_ifs
2596 # Let DOS variable expansion print the short 8.3 style file name.
2597 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2598 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2599 done
2600 IFS=$lt_save_ifs
2601 # Convert to MSYS style.
2602 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2603 ;;
2604 cygwin*)
2605 # Convert to unix form, then to dos form, then back to unix form
2606 # but this time dos style (no spaces!) so that the unix form looks
2607 # like /cygdrive/c/PROGRA~1:/cygdr...
2608 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2609 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2610 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2611 ;;
2612 *)
6f57a957 2613 sys_lib_search_path_spec=$LIB
b6d0720c
AC
2614 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2615 # It is most probably a Windows format PATH.
2616 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2617 else
2618 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2619 fi
2620 # FIXME: find the short name or the path components, as spaces are
2621 # common. (e.g. "Program Files" -> "PROGRA~1")
2622 ;;
2623 esac
2624
2625 # DLL is installed to $(libdir)/../bin by postinstall_cmds
6f57a957
AC
2626 postinstall_cmds='base_file=`basename \$file`~
2627 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
b6d0720c
AC
2628 dldir=$destdir/`dirname \$dlpath`~
2629 test -d \$dldir || mkdir -p \$dldir~
2630 $install_prog $dir/$dlname \$dldir/$dlname'
2631 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2632 dlpath=$dir/\$dldll~
2633 $RM \$dlpath'
2634 shlibpath_overrides_runpath=yes
2635 dynamic_linker='Win32 link.exe'
db137867
AC
2636 ;;
2637
2638 *)
b6d0720c 2639 # Assume MSVC wrapper
6f57a957 2640 library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
b6d0720c 2641 dynamic_linker='Win32 ld.exe'
db137867
AC
2642 ;;
2643 esac
db137867
AC
2644 # FIXME: first we should search . and the directory the executable is in
2645 shlibpath_var=PATH
2646 ;;
2647
2648darwin* | rhapsody*)
2649 dynamic_linker="$host_os dyld"
2650 version_type=darwin
2651 need_lib_prefix=no
2652 need_version=no
6f57a957
AC
2653 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
2654 soname_spec='$libname$release$major$shared_ext'
db137867
AC
2655 shlibpath_overrides_runpath=yes
2656 shlibpath_var=DYLD_LIBRARY_PATH
2657 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
7083c021
AC
2658m4_if([$1], [],[
2659 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
db137867
AC
2660 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2661 ;;
2662
2663dgux*)
a949ab1a 2664 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2665 need_lib_prefix=no
2666 need_version=no
6f57a957
AC
2667 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2668 soname_spec='$libname$release$shared_ext$major'
db137867
AC
2669 shlibpath_var=LD_LIBRARY_PATH
2670 ;;
2671
db137867
AC
2672freebsd* | dragonfly*)
2673 # DragonFly does not have aout. When/if they implement a new
2674 # versioning mechanism, adjust this.
2675 if test -x /usr/bin/objformat; then
2676 objformat=`/usr/bin/objformat`
2677 else
2678 case $host_os in
a949ab1a 2679 freebsd[[23]].*) objformat=aout ;;
db137867
AC
2680 *) objformat=elf ;;
2681 esac
2682 fi
f0718c93 2683 version_type=freebsd-$objformat
db137867
AC
2684 case $version_type in
2685 freebsd-elf*)
6f57a957
AC
2686 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2687 soname_spec='$libname$release$shared_ext$major'
db137867
AC
2688 need_version=no
2689 need_lib_prefix=no
2690 ;;
2691 freebsd-*)
6f57a957 2692 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
db137867
AC
2693 need_version=yes
2694 ;;
2695 esac
2696 shlibpath_var=LD_LIBRARY_PATH
2697 case $host_os in
a949ab1a 2698 freebsd2.*)
db137867
AC
2699 shlibpath_overrides_runpath=yes
2700 ;;
2701 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2702 shlibpath_overrides_runpath=yes
2703 hardcode_into_libs=yes
2704 ;;
2705 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2706 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2707 shlibpath_overrides_runpath=no
2708 hardcode_into_libs=yes
2709 ;;
2710 *) # from 4.6 on, and DragonFly
2711 shlibpath_overrides_runpath=yes
2712 hardcode_into_libs=yes
2713 ;;
2714 esac
2715 ;;
2716
b6d0720c 2717haiku*)
a949ab1a 2718 version_type=linux # correct to gnu/linux during the next big refactor
b6d0720c
AC
2719 need_lib_prefix=no
2720 need_version=no
2721 dynamic_linker="$host_os runtime_loader"
6f57a957
AC
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'
b6d0720c 2724 shlibpath_var=LIBRARY_PATH
6f57a957 2725 shlibpath_overrides_runpath=no
b6d0720c
AC
2726 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2727 hardcode_into_libs=yes
2728 ;;
2729
db137867
AC
2730hpux9* | hpux10* | hpux11*)
2731 # Give a soname corresponding to the major version so that dld.sl refuses to
2732 # link against other versions.
2733 version_type=sunos
2734 need_lib_prefix=no
2735 need_version=no
2736 case $host_cpu in
2737 ia64*)
2738 shrext_cmds='.so'
2739 hardcode_into_libs=yes
2740 dynamic_linker="$host_os dld.so"
2741 shlibpath_var=LD_LIBRARY_PATH
2742 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
6f57a957
AC
2743 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2744 soname_spec='$libname$release$shared_ext$major'
2745 if test 32 = "$HPUX_IA64_MODE"; then
db137867 2746 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
6f57a957 2747 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
db137867
AC
2748 else
2749 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
6f57a957 2750 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
db137867 2751 fi
db137867 2752 ;;
7083c021
AC
2753 hppa*64*)
2754 shrext_cmds='.sl'
2755 hardcode_into_libs=yes
2756 dynamic_linker="$host_os dld.sl"
2757 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2758 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
6f57a957
AC
2759 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2760 soname_spec='$libname$release$shared_ext$major'
7083c021
AC
2761 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2762 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2763 ;;
2764 *)
db137867
AC
2765 shrext_cmds='.sl'
2766 dynamic_linker="$host_os dld.sl"
2767 shlibpath_var=SHLIB_PATH
2768 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
6f57a957
AC
2769 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2770 soname_spec='$libname$release$shared_ext$major'
db137867
AC
2771 ;;
2772 esac
b6d0720c 2773 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
db137867 2774 postinstall_cmds='chmod 555 $lib'
b6d0720c
AC
2775 # or fails outright, so override atomically:
2776 install_override_mode=555
db137867
AC
2777 ;;
2778
2779interix[[3-9]]*)
a949ab1a 2780 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2781 need_lib_prefix=no
2782 need_version=no
6f57a957
AC
2783 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2784 soname_spec='$libname$release$shared_ext$major'
db137867
AC
2785 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2786 shlibpath_var=LD_LIBRARY_PATH
2787 shlibpath_overrides_runpath=no
2788 hardcode_into_libs=yes
2789 ;;
2790
2791irix5* | irix6* | nonstopux*)
2792 case $host_os in
2793 nonstopux*) version_type=nonstopux ;;
2794 *)
6f57a957 2795 if test yes = "$lt_cv_prog_gnu_ld"; then
a949ab1a 2796 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2797 else
2798 version_type=irix
2799 fi ;;
2800 esac
2801 need_lib_prefix=no
2802 need_version=no
6f57a957
AC
2803 soname_spec='$libname$release$shared_ext$major'
2804 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
db137867
AC
2805 case $host_os in
2806 irix5* | nonstopux*)
2807 libsuff= shlibsuff=
2808 ;;
2809 *)
2810 case $LD in # libtool.m4 will add one of these switches to LD
2811 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2812 libsuff= shlibsuff= libmagic=32-bit;;
2813 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2814 libsuff=32 shlibsuff=N32 libmagic=N32;;
2815 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2816 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2817 *) libsuff= shlibsuff= libmagic=never-match;;
2818 esac
2819 ;;
2820 esac
2821 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2822 shlibpath_overrides_runpath=no
6f57a957
AC
2823 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
2824 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
db137867
AC
2825 hardcode_into_libs=yes
2826 ;;
2827
2828# No shared lib support for Linux oldld, aout, or coff.
2829linux*oldld* | linux*aout* | linux*coff*)
2830 dynamic_linker=no
2831 ;;
2832
6f57a957
AC
2833linux*android*)
2834 version_type=none # Android doesn't support versioned libraries.
2835 need_lib_prefix=no
2836 need_version=no
2837 library_names_spec='$libname$release$shared_ext'
2838 soname_spec='$libname$release$shared_ext'
2839 finish_cmds=
2840 shlibpath_var=LD_LIBRARY_PATH
2841 shlibpath_overrides_runpath=yes
2842
2843 # This implies no fast_install, which is unacceptable.
2844 # Some rework will be needed to allow for fast_install
2845 # before this can be enabled.
2846 hardcode_into_libs=yes
2847
2848 dynamic_linker='Android linker'
2849 # Don't embed -rpath directories since the linker doesn't support them.
2850 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2851 ;;
2852
a949ab1a 2853# This must be glibc/ELF.
6f57a957 2854linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
a949ab1a 2855 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2856 need_lib_prefix=no
2857 need_version=no
6f57a957
AC
2858 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2859 soname_spec='$libname$release$shared_ext$major'
db137867
AC
2860 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2861 shlibpath_var=LD_LIBRARY_PATH
2862 shlibpath_overrides_runpath=no
b6d0720c 2863
7083c021 2864 # Some binutils ld are patched to set DT_RUNPATH
b6d0720c
AC
2865 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2866 [lt_cv_shlibpath_overrides_runpath=no
2867 save_LDFLAGS=$LDFLAGS
2868 save_libdir=$libdir
2869 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2870 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2871 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2872 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2873 [lt_cv_shlibpath_overrides_runpath=yes])])
2874 LDFLAGS=$save_LDFLAGS
2875 libdir=$save_libdir
2876 ])
2877 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
7083c021 2878
db137867
AC
2879 # This implies no fast_install, which is unacceptable.
2880 # Some rework will be needed to allow for fast_install
2881 # before this can be enabled.
2882 hardcode_into_libs=yes
2883
6f57a957
AC
2884 # Ideally, we could use ldconfig to report *all* directores which are
2885 # searched for libraries, however this is still not possible. Aside from not
2886 # being certain /sbin/ldconfig is available, command
2887 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
2888 # even though it is searched at run-time. Try to do the best guess by
2889 # appending ld.so.conf contents (and includes) to the search path.
db137867 2890 if test -f /etc/ld.so.conf; then
b6d0720c
AC
2891 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' ' '`
2892 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
db137867
AC
2893 fi
2894
2895 # We used to test for /lib/ld.so.1 and disable shared libraries on
2896 # powerpc, because MkLinux only supported shared libraries with the
2897 # GNU dynamic linker. Since this was broken with cross compilers,
2898 # most powerpc-linux boxes support dynamic linking these days and
2899 # people can always --disable-shared, the test was removed, and we
2900 # assume the GNU/Linux dynamic linker is in use.
2901 dynamic_linker='GNU/Linux ld.so'
2902 ;;
2903
db137867
AC
2904netbsd*)
2905 version_type=sunos
2906 need_lib_prefix=no
2907 need_version=no
7083c021 2908 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6f57a957 2909 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
db137867
AC
2910 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2911 dynamic_linker='NetBSD (a.out) ld.so'
2912 else
6f57a957
AC
2913 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2914 soname_spec='$libname$release$shared_ext$major'
db137867
AC
2915 dynamic_linker='NetBSD ld.elf_so'
2916 fi
2917 shlibpath_var=LD_LIBRARY_PATH
2918 shlibpath_overrides_runpath=yes
2919 hardcode_into_libs=yes
2920 ;;
2921
2922newsos6)
a949ab1a 2923 version_type=linux # correct to gnu/linux during the next big refactor
6f57a957 2924 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
db137867
AC
2925 shlibpath_var=LD_LIBRARY_PATH
2926 shlibpath_overrides_runpath=yes
2927 ;;
2928
7083c021
AC
2929*nto* | *qnx*)
2930 version_type=qnx
db137867
AC
2931 need_lib_prefix=no
2932 need_version=no
6f57a957
AC
2933 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2934 soname_spec='$libname$release$shared_ext$major'
db137867 2935 shlibpath_var=LD_LIBRARY_PATH
7083c021
AC
2936 shlibpath_overrides_runpath=no
2937 hardcode_into_libs=yes
2938 dynamic_linker='ldqnx.so'
db137867
AC
2939 ;;
2940
6f57a957 2941openbsd* | bitrig*)
db137867 2942 version_type=sunos
6f57a957 2943 sys_lib_dlsearch_path_spec=/usr/lib
db137867 2944 need_lib_prefix=no
6f57a957
AC
2945 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
2946 need_version=no
db137867 2947 else
6f57a957 2948 need_version=yes
db137867 2949 fi
6f57a957
AC
2950 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2951 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2952 shlibpath_var=LD_LIBRARY_PATH
2953 shlibpath_overrides_runpath=yes
db137867
AC
2954 ;;
2955
2956os2*)
2957 libname_spec='$name'
6f57a957
AC
2958 version_type=windows
2959 shrext_cmds=.dll
2960 need_version=no
db137867 2961 need_lib_prefix=no
6f57a957
AC
2962 # OS/2 can only load a DLL with a base name of 8 characters or less.
2963 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
2964 v=$($ECHO $release$versuffix | tr -d .-);
2965 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
2966 $ECHO $n$v`$shared_ext'
2967 library_names_spec='${libname}_dll.$libext'
db137867 2968 dynamic_linker='OS/2 ld.exe'
6f57a957
AC
2969 shlibpath_var=BEGINLIBPATH
2970 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2971 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2972 postinstall_cmds='base_file=`basename \$file`~
2973 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
2974 dldir=$destdir/`dirname \$dlpath`~
2975 test -d \$dldir || mkdir -p \$dldir~
2976 $install_prog $dir/$dlname \$dldir/$dlname~
2977 chmod a+x \$dldir/$dlname~
2978 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2979 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2980 fi'
2981 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
2982 dlpath=$dir/\$dldll~
2983 $RM \$dlpath'
db137867
AC
2984 ;;
2985
2986osf3* | osf4* | osf5*)
2987 version_type=osf
2988 need_lib_prefix=no
2989 need_version=no
6f57a957
AC
2990 soname_spec='$libname$release$shared_ext$major'
2991 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
db137867
AC
2992 shlibpath_var=LD_LIBRARY_PATH
2993 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
6f57a957 2994 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
db137867
AC
2995 ;;
2996
2997rdos*)
2998 dynamic_linker=no
2999 ;;
3000
3001solaris*)
a949ab1a 3002 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
3003 need_lib_prefix=no
3004 need_version=no
6f57a957
AC
3005 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3006 soname_spec='$libname$release$shared_ext$major'
db137867
AC
3007 shlibpath_var=LD_LIBRARY_PATH
3008 shlibpath_overrides_runpath=yes
3009 hardcode_into_libs=yes
3010 # ldd complains unless libraries are executable
3011 postinstall_cmds='chmod +x $lib'
3012 ;;
3013
3014sunos4*)
3015 version_type=sunos
6f57a957 3016 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
db137867
AC
3017 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
3018 shlibpath_var=LD_LIBRARY_PATH
3019 shlibpath_overrides_runpath=yes
6f57a957 3020 if test yes = "$with_gnu_ld"; then
db137867
AC
3021 need_lib_prefix=no
3022 fi
3023 need_version=yes
3024 ;;
3025
3026sysv4 | sysv4.3*)
a949ab1a 3027 version_type=linux # correct to gnu/linux during the next big refactor
6f57a957
AC
3028 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3029 soname_spec='$libname$release$shared_ext$major'
db137867
AC
3030 shlibpath_var=LD_LIBRARY_PATH
3031 case $host_vendor in
3032 sni)
3033 shlibpath_overrides_runpath=no
3034 need_lib_prefix=no
db137867
AC
3035 runpath_var=LD_RUN_PATH
3036 ;;
3037 siemens)
3038 need_lib_prefix=no
3039 ;;
3040 motorola)
3041 need_lib_prefix=no
3042 need_version=no
3043 shlibpath_overrides_runpath=no
3044 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
3045 ;;
3046 esac
3047 ;;
3048
3049sysv4*MP*)
6f57a957 3050 if test -d /usr/nec; then
a949ab1a 3051 version_type=linux # correct to gnu/linux during the next big refactor
6f57a957
AC
3052 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
3053 soname_spec='$libname$shared_ext.$major'
db137867
AC
3054 shlibpath_var=LD_LIBRARY_PATH
3055 fi
3056 ;;
3057
3058sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
6f57a957 3059 version_type=sco
db137867
AC
3060 need_lib_prefix=no
3061 need_version=no
6f57a957
AC
3062 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
3063 soname_spec='$libname$release$shared_ext$major'
db137867 3064 shlibpath_var=LD_LIBRARY_PATH
7083c021 3065 shlibpath_overrides_runpath=yes
db137867 3066 hardcode_into_libs=yes
6f57a957 3067 if test yes = "$with_gnu_ld"; then
db137867 3068 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
db137867
AC
3069 else
3070 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
db137867
AC
3071 case $host_os in
3072 sco3.2v5*)
3073 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
3074 ;;
3075 esac
3076 fi
3077 sys_lib_dlsearch_path_spec='/usr/lib'
3078 ;;
3079
7083c021
AC
3080tpf*)
3081 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
a949ab1a 3082 version_type=linux # correct to gnu/linux during the next big refactor
7083c021
AC
3083 need_lib_prefix=no
3084 need_version=no
6f57a957 3085 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
7083c021
AC
3086 shlibpath_var=LD_LIBRARY_PATH
3087 shlibpath_overrides_runpath=no
3088 hardcode_into_libs=yes
3089 ;;
3090
db137867 3091uts4*)
a949ab1a 3092 version_type=linux # correct to gnu/linux during the next big refactor
6f57a957
AC
3093 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3094 soname_spec='$libname$release$shared_ext$major'
db137867
AC
3095 shlibpath_var=LD_LIBRARY_PATH
3096 ;;
3097
3098*)
3099 dynamic_linker=no
3100 ;;
3101esac
3102AC_MSG_RESULT([$dynamic_linker])
6f57a957 3103test no = "$dynamic_linker" && can_build_shared=no
db137867
AC
3104
3105variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
6f57a957 3106if test yes = "$GCC"; then
db137867
AC
3107 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3108fi
db137867 3109
6f57a957
AC
3110if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
3111 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
7083c021 3112fi
6f57a957
AC
3113
3114if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
3115 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
7083c021 3116fi
db137867 3117
6f57a957
AC
3118# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
3119configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
3120
3121# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
3122func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
3123
3124# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
3125configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
3126
7083c021
AC
3127_LT_DECL([], [variables_saved_for_relink], [1],
3128 [Variables whose values should be saved in libtool wrapper scripts and
3129 restored at link time])
3130_LT_DECL([], [need_lib_prefix], [0],
3131 [Do we need the "lib" prefix for modules?])
3132_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
3133_LT_DECL([], [version_type], [0], [Library versioning type])
3134_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
3135_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
3136_LT_DECL([], [shlibpath_overrides_runpath], [0],
3137 [Is shlibpath searched before the hard-coded library search path?])
3138_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
3139_LT_DECL([], [library_names_spec], [1],
3140 [[List of archive names. First name is the real one, the rest are links.
3141 The last name is the one that the linker finds with -lNAME]])
3142_LT_DECL([], [soname_spec], [1],
3143 [[The coded name of the library, if different from the real name]])
b6d0720c
AC
3144_LT_DECL([], [install_override_mode], [1],
3145 [Permission mode override for installation of shared libraries])
7083c021
AC
3146_LT_DECL([], [postinstall_cmds], [2],
3147 [Command to use after installation of a shared archive])
3148_LT_DECL([], [postuninstall_cmds], [2],
3149 [Command to use after uninstallation of a shared archive])
3150_LT_DECL([], [finish_cmds], [2],
3151 [Commands used to finish a libtool library installation in a directory])
3152_LT_DECL([], [finish_eval], [1],
3153 [[As "finish_cmds", except a single script fragment to be evaled but
3154 not shown]])
3155_LT_DECL([], [hardcode_into_libs], [0],
3156 [Whether we should hardcode library paths into libraries])
3157_LT_DECL([], [sys_lib_search_path_spec], [2],
3158 [Compile-time system search path for libraries])
6f57a957
AC
3159_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
3160 [Detected run-time system search path for libraries])
3161_LT_DECL([], [configure_time_lt_sys_library_path], [2],
3162 [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
7083c021
AC
3163])# _LT_SYS_DYNAMIC_LINKER
3164
3165
3166# _LT_PATH_TOOL_PREFIX(TOOL)
db137867 3167# --------------------------
6f57a957 3168# find a file program that can recognize shared library
7083c021
AC
3169AC_DEFUN([_LT_PATH_TOOL_PREFIX],
3170[m4_require([_LT_DECL_EGREP])dnl
db137867
AC
3171AC_MSG_CHECKING([for $1])
3172AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3173[case $MAGIC_CMD in
3174[[\\/*] | ?:[\\/]*])
6f57a957 3175 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
db137867
AC
3176 ;;
3177*)
6f57a957
AC
3178 lt_save_MAGIC_CMD=$MAGIC_CMD
3179 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
db137867
AC
3180dnl $ac_dummy forces splitting on constant user-supplied paths.
3181dnl POSIX.2 word splitting is done only on the output of word expansions,
3182dnl not every word. This closes a longstanding sh security hole.
7083c021 3183 ac_dummy="m4_if([$2], , $PATH, [$2])"
db137867 3184 for ac_dir in $ac_dummy; do
6f57a957 3185 IFS=$lt_save_ifs
db137867 3186 test -z "$ac_dir" && ac_dir=.
6f57a957
AC
3187 if test -f "$ac_dir/$1"; then
3188 lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
db137867
AC
3189 if test -n "$file_magic_test_file"; then
3190 case $deplibs_check_method in
3191 "file_magic "*)
3192 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
6f57a957 3193 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
db137867
AC
3194 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3195 $EGREP "$file_magic_regex" > /dev/null; then
3196 :
3197 else
7083c021 3198 cat <<_LT_EOF 1>&2
db137867
AC
3199
3200*** Warning: the command libtool uses to detect shared libraries,
3201*** $file_magic_cmd, produces output that libtool cannot recognize.
3202*** The result is that libtool may fail to recognize shared libraries
3203*** as such. This will affect the creation of libtool libraries that
3204*** depend on shared libraries, but programs linked with such libtool
3205*** libraries will work regardless of this problem. Nevertheless, you
3206*** may want to report the problem to your system manager and/or to
3207*** bug-libtool@gnu.org
3208
7083c021 3209_LT_EOF
db137867
AC
3210 fi ;;
3211 esac
3212 fi
3213 break
3214 fi
3215 done
6f57a957
AC
3216 IFS=$lt_save_ifs
3217 MAGIC_CMD=$lt_save_MAGIC_CMD
db137867
AC
3218 ;;
3219esac])
6f57a957 3220MAGIC_CMD=$lt_cv_path_MAGIC_CMD
db137867
AC
3221if test -n "$MAGIC_CMD"; then
3222 AC_MSG_RESULT($MAGIC_CMD)
3223else
3224 AC_MSG_RESULT(no)
3225fi
7083c021
AC
3226_LT_DECL([], [MAGIC_CMD], [0],
3227 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3228])# _LT_PATH_TOOL_PREFIX
db137867 3229
7083c021
AC
3230# Old name:
3231AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3232dnl aclocal-1.4 backwards compatibility:
3233dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
db137867 3234
7083c021
AC
3235
3236# _LT_PATH_MAGIC
3237# --------------
6f57a957 3238# find a file program that can recognize a shared library
7083c021
AC
3239m4_defun([_LT_PATH_MAGIC],
3240[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
db137867
AC
3241if test -z "$lt_cv_path_MAGIC_CMD"; then
3242 if test -n "$ac_tool_prefix"; then
7083c021 3243 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
db137867
AC
3244 else
3245 MAGIC_CMD=:
3246 fi
3247fi
7083c021 3248])# _LT_PATH_MAGIC
db137867
AC
3249
3250
7083c021 3251# LT_PATH_LD
db137867
AC
3252# ----------
3253# find the pathname to the GNU or non-GNU linker
7083c021
AC
3254AC_DEFUN([LT_PATH_LD],
3255[AC_REQUIRE([AC_PROG_CC])dnl
db137867
AC
3256AC_REQUIRE([AC_CANONICAL_HOST])dnl
3257AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7083c021
AC
3258m4_require([_LT_DECL_SED])dnl
3259m4_require([_LT_DECL_EGREP])dnl
b6d0720c 3260m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
7083c021
AC
3261
3262AC_ARG_WITH([gnu-ld],
3263 [AS_HELP_STRING([--with-gnu-ld],
3264 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
6f57a957 3265 [test no = "$withval" || with_gnu_ld=yes],
7083c021
AC
3266 [with_gnu_ld=no])dnl
3267
db137867 3268ac_prog=ld
6f57a957 3269if test yes = "$GCC"; then
db137867
AC
3270 # Check if gcc -print-prog-name=ld gives a path.
3271 AC_MSG_CHECKING([for ld used by $CC])
3272 case $host in
3273 *-*-mingw*)
6f57a957 3274 # gcc leaves a trailing carriage return, which upsets mingw
db137867
AC
3275 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3276 *)
3277 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3278 esac
3279 case $ac_prog in
3280 # Accept absolute paths.
3281 [[\\/]]* | ?:[[\\/]]*)
3282 re_direlt='/[[^/]][[^/]]*/\.\./'
3283 # Canonicalize the pathname of ld
7083c021
AC
3284 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3285 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3286 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
db137867 3287 done
6f57a957 3288 test -z "$LD" && LD=$ac_prog
db137867
AC
3289 ;;
3290 "")
3291 # If it fails, then pretend we aren't using GCC.
3292 ac_prog=ld
3293 ;;
3294 *)
3295 # If it is relative, then search for the first ld in PATH.
3296 with_gnu_ld=unknown
3297 ;;
3298 esac
6f57a957 3299elif test yes = "$with_gnu_ld"; then
db137867
AC
3300 AC_MSG_CHECKING([for GNU ld])
3301else
3302 AC_MSG_CHECKING([for non-GNU ld])
3303fi
3304AC_CACHE_VAL(lt_cv_path_LD,
3305[if test -z "$LD"; then
6f57a957 3306 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
db137867 3307 for ac_dir in $PATH; do
6f57a957 3308 IFS=$lt_save_ifs
db137867
AC
3309 test -z "$ac_dir" && ac_dir=.
3310 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
6f57a957 3311 lt_cv_path_LD=$ac_dir/$ac_prog
db137867
AC
3312 # Check to see if the program is GNU ld. I'd rather use --version,
3313 # but apparently some variants of GNU ld only accept -v.
3314 # Break only if it was the GNU/non-GNU ld that we prefer.
3315 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3316 *GNU* | *'with BFD'*)
6f57a957 3317 test no != "$with_gnu_ld" && break
db137867
AC
3318 ;;
3319 *)
6f57a957 3320 test yes != "$with_gnu_ld" && break
db137867
AC
3321 ;;
3322 esac
3323 fi
3324 done
6f57a957 3325 IFS=$lt_save_ifs
db137867 3326else
6f57a957 3327 lt_cv_path_LD=$LD # Let the user override the test with a path.
db137867 3328fi])
6f57a957 3329LD=$lt_cv_path_LD
db137867
AC
3330if test -n "$LD"; then
3331 AC_MSG_RESULT($LD)
3332else
3333 AC_MSG_RESULT(no)
3334fi
3335test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
7083c021
AC
3336_LT_PATH_LD_GNU
3337AC_SUBST([LD])
db137867 3338
7083c021
AC
3339_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3340])# LT_PATH_LD
db137867 3341
7083c021
AC
3342# Old names:
3343AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3344AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3345dnl aclocal-1.4 backwards compatibility:
3346dnl AC_DEFUN([AM_PROG_LD], [])
3347dnl AC_DEFUN([AC_PROG_LD], [])
3348
3349
3350# _LT_PATH_LD_GNU
3351#- --------------
3352m4_defun([_LT_PATH_LD_GNU],
3353[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
db137867
AC
3354[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3355case `$LD -v 2>&1 </dev/null` in
3356*GNU* | *'with BFD'*)
3357 lt_cv_prog_gnu_ld=yes
3358 ;;
3359*)
3360 lt_cv_prog_gnu_ld=no
3361 ;;
3362esac])
3363with_gnu_ld=$lt_cv_prog_gnu_ld
7083c021 3364])# _LT_PATH_LD_GNU
db137867
AC
3365
3366
7083c021
AC
3367# _LT_CMD_RELOAD
3368# --------------
db137867
AC
3369# find reload flag for linker
3370# -- PORTME Some linkers may need a different reload flag.
7083c021 3371m4_defun([_LT_CMD_RELOAD],
db137867
AC
3372[AC_CACHE_CHECK([for $LD option to reload object files],
3373 lt_cv_ld_reload_flag,
3374 [lt_cv_ld_reload_flag='-r'])
3375reload_flag=$lt_cv_ld_reload_flag
3376case $reload_flag in
3377"" | " "*) ;;
3378*) reload_flag=" $reload_flag" ;;
3379esac
3380reload_cmds='$LD$reload_flag -o $output$reload_objs'
3381case $host_os in
b6d0720c 3382 cygwin* | mingw* | pw32* | cegcc*)
6f57a957 3383 if test yes != "$GCC"; then
b6d0720c
AC
3384 reload_cmds=false
3385 fi
3386 ;;
db137867 3387 darwin*)
6f57a957
AC
3388 if test yes = "$GCC"; then
3389 reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
db137867
AC
3390 else
3391 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3392 fi
3393 ;;
3394esac
b6d0720c
AC
3395_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3396_LT_TAGDECL([], [reload_cmds], [2])dnl
7083c021 3397])# _LT_CMD_RELOAD
db137867
AC
3398
3399
6f57a957
AC
3400# _LT_PATH_DD
3401# -----------
3402# find a working dd
3403m4_defun([_LT_PATH_DD],
3404[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
3405[printf 0123456789abcdef0123456789abcdef >conftest.i
3406cat conftest.i conftest.i >conftest2.i
3407: ${lt_DD:=$DD}
3408AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
3409[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3410 cmp -s conftest.i conftest.out \
3411 && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
3412fi])
3413rm -f conftest.i conftest2.i conftest.out])
3414])# _LT_PATH_DD
3415
3416
3417# _LT_CMD_TRUNCATE
3418# ----------------
3419# find command to truncate a binary pipe
3420m4_defun([_LT_CMD_TRUNCATE],
3421[m4_require([_LT_PATH_DD])
3422AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
3423[printf 0123456789abcdef0123456789abcdef >conftest.i
3424cat conftest.i conftest.i >conftest2.i
3425lt_cv_truncate_bin=
3426if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3427 cmp -s conftest.i conftest.out \
3428 && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
3429fi
3430rm -f conftest.i conftest2.i conftest.out
3431test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
3432_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
3433 [Command to truncate a binary pipe])
3434])# _LT_CMD_TRUNCATE
3435
3436
7083c021
AC
3437# _LT_CHECK_MAGIC_METHOD
3438# ----------------------
db137867
AC
3439# how to check for library dependencies
3440# -- PORTME fill in with the dynamic library characteristics
7083c021
AC
3441m4_defun([_LT_CHECK_MAGIC_METHOD],
3442[m4_require([_LT_DECL_EGREP])
3443m4_require([_LT_DECL_OBJDUMP])
3444AC_CACHE_CHECK([how to recognize dependent libraries],
db137867
AC
3445lt_cv_deplibs_check_method,
3446[lt_cv_file_magic_cmd='$MAGIC_CMD'
3447lt_cv_file_magic_test_file=
3448lt_cv_deplibs_check_method='unknown'
3449# Need to set the preceding variable on all platforms that support
3450# interlibrary dependencies.
3451# 'none' -- dependencies not supported.
6f57a957 3452# 'unknown' -- same as none, but documents that we really don't know.
db137867
AC
3453# 'pass_all' -- all dependencies passed with no checks.
3454# 'test_compile' -- check by making test program.
3455# 'file_magic [[regex]]' -- check by looking for files in library path
6f57a957
AC
3456# that responds to the $file_magic_cmd with a given extended regex.
3457# If you have 'file' or equivalent on your system and you're not sure
3458# whether 'pass_all' will *always* work, you probably want this one.
db137867
AC
3459
3460case $host_os in
b676ea3b 3461aix[[4-9]]*)
db137867
AC
3462 lt_cv_deplibs_check_method=pass_all
3463 ;;
3464
3465beos*)
3466 lt_cv_deplibs_check_method=pass_all
3467 ;;
3468
3469bsdi[[45]]*)
3470 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3471 lt_cv_file_magic_cmd='/usr/bin/file -L'
3472 lt_cv_file_magic_test_file=/shlib/libc.so
3473 ;;
3474
3475cygwin*)
3476 # func_win32_libid is a shell function defined in ltmain.sh
3477 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3478 lt_cv_file_magic_cmd='func_win32_libid'
3479 ;;
3480
3481mingw* | pw32*)
3482 # Base MSYS/MinGW do not provide the 'file' command needed by
3483 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3484 # unless we find 'file', for example because we are cross-compiling.
6f57a957 3485 if ( file / ) >/dev/null 2>&1; then
db137867
AC
3486 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3487 lt_cv_file_magic_cmd='func_win32_libid'
3488 else
b6d0720c
AC
3489 # Keep this pattern in sync with the one in func_win32_libid.
3490 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
db137867
AC
3491 lt_cv_file_magic_cmd='$OBJDUMP -f'
3492 fi
3493 ;;
3494
b6d0720c 3495cegcc*)
7083c021
AC
3496 # use the weaker test based on 'objdump'. See mingw*.
3497 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3498 lt_cv_file_magic_cmd='$OBJDUMP -f'
3499 ;;
3500
db137867
AC
3501darwin* | rhapsody*)
3502 lt_cv_deplibs_check_method=pass_all
3503 ;;
3504
3505freebsd* | dragonfly*)
7083c021 3506 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
db137867
AC
3507 case $host_cpu in
3508 i*86 )
3509 # Not sure whether the presence of OpenBSD here was a mistake.
3510 # Let's accept both of them until this is cleared up.
3511 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3512 lt_cv_file_magic_cmd=/usr/bin/file
3513 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3514 ;;
3515 esac
3516 else
3517 lt_cv_deplibs_check_method=pass_all
3518 fi
3519 ;;
3520
b6d0720c
AC
3521haiku*)
3522 lt_cv_deplibs_check_method=pass_all
3523 ;;
3524
db137867
AC
3525hpux10.20* | hpux11*)
3526 lt_cv_file_magic_cmd=/usr/bin/file
3527 case $host_cpu in
3528 ia64*)
3529 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3530 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3531 ;;
3532 hppa*64*)
b6d0720c 3533 [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]']
db137867
AC
3534 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3535 ;;
3536 *)
b6d0720c 3537 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
db137867
AC
3538 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3539 ;;
3540 esac
3541 ;;
3542
3543interix[[3-9]]*)
3544 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3545 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3546 ;;
3547
3548irix5* | irix6* | nonstopux*)
3549 case $LD in
3550 *-32|*"-32 ") libmagic=32-bit;;
3551 *-n32|*"-n32 ") libmagic=N32;;
3552 *-64|*"-64 ") libmagic=64-bit;;
3553 *) libmagic=never-match;;
3554 esac
3555 lt_cv_deplibs_check_method=pass_all
3556 ;;
3557
a949ab1a 3558# This must be glibc/ELF.
6f57a957 3559linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
db137867
AC
3560 lt_cv_deplibs_check_method=pass_all
3561 ;;
3562
bf4e01a4 3563netbsd*)
7083c021 3564 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
db137867
AC
3565 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3566 else
3567 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3568 fi
3569 ;;
3570
3571newos6*)
3572 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3573 lt_cv_file_magic_cmd=/usr/bin/file
3574 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3575 ;;
3576
7083c021
AC
3577*nto* | *qnx*)
3578 lt_cv_deplibs_check_method=pass_all
db137867
AC
3579 ;;
3580
6f57a957
AC
3581openbsd* | bitrig*)
3582 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
db137867
AC
3583 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3584 else
3585 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3586 fi
3587 ;;
3588
3589osf3* | osf4* | osf5*)
3590 lt_cv_deplibs_check_method=pass_all
3591 ;;
3592
3593rdos*)
3594 lt_cv_deplibs_check_method=pass_all
3595 ;;
3596
3597solaris*)
3598 lt_cv_deplibs_check_method=pass_all
3599 ;;
3600
7083c021
AC
3601sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3602 lt_cv_deplibs_check_method=pass_all
3603 ;;
3604
db137867
AC
3605sysv4 | sysv4.3*)
3606 case $host_vendor in
3607 motorola)
3608 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]]'
3609 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3610 ;;
3611 ncr)
3612 lt_cv_deplibs_check_method=pass_all
3613 ;;
3614 sequent)
3615 lt_cv_file_magic_cmd='/bin/file'
3616 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3617 ;;
3618 sni)
3619 lt_cv_file_magic_cmd='/bin/file'
3620 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3621 lt_cv_file_magic_test_file=/lib/libc.so
3622 ;;
3623 siemens)
3624 lt_cv_deplibs_check_method=pass_all
3625 ;;
3626 pc)
3627 lt_cv_deplibs_check_method=pass_all
3628 ;;
3629 esac
3630 ;;
3631
7083c021 3632tpf*)
db137867
AC
3633 lt_cv_deplibs_check_method=pass_all
3634 ;;
6f57a957
AC
3635os2*)
3636 lt_cv_deplibs_check_method=pass_all
3637 ;;
db137867
AC
3638esac
3639])
b6d0720c
AC
3640
3641file_magic_glob=
3642want_nocaseglob=no
3643if test "$build" = "$host"; then
3644 case $host_os in
3645 mingw* | pw32*)
3646 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3647 want_nocaseglob=yes
3648 else
3649 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3650 fi
3651 ;;
3652 esac
3653fi
3654
db137867
AC
3655file_magic_cmd=$lt_cv_file_magic_cmd
3656deplibs_check_method=$lt_cv_deplibs_check_method
3657test -z "$deplibs_check_method" && deplibs_check_method=unknown
7083c021
AC
3658
3659_LT_DECL([], [deplibs_check_method], [1],
3660 [Method to check whether dependent libraries are shared objects])
3661_LT_DECL([], [file_magic_cmd], [1],
b6d0720c
AC
3662 [Command to use when deplibs_check_method = "file_magic"])
3663_LT_DECL([], [file_magic_glob], [1],
3664 [How to find potential files when deplibs_check_method = "file_magic"])
3665_LT_DECL([], [want_nocaseglob], [1],
3666 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
7083c021 3667])# _LT_CHECK_MAGIC_METHOD
db137867
AC
3668
3669
7083c021 3670# LT_PATH_NM
db137867 3671# ----------
7083c021
AC
3672# find the pathname to a BSD- or MS-compatible name lister
3673AC_DEFUN([LT_PATH_NM],
3674[AC_REQUIRE([AC_PROG_CC])dnl
3675AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
db137867
AC
3676[if test -n "$NM"; then
3677 # Let the user override the test.
6f57a957 3678 lt_cv_path_NM=$NM
db137867 3679else
6f57a957 3680 lt_nm_to_check=${ac_tool_prefix}nm
db137867
AC
3681 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3682 lt_nm_to_check="$lt_nm_to_check nm"
3683 fi
3684 for lt_tmp_nm in $lt_nm_to_check; do
6f57a957 3685 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
db137867 3686 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
6f57a957 3687 IFS=$lt_save_ifs
db137867 3688 test -z "$ac_dir" && ac_dir=.
6f57a957
AC
3689 tmp_nm=$ac_dir/$lt_tmp_nm
3690 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
db137867 3691 # Check to see if the nm accepts a BSD-compat flag.
6f57a957 3692 # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
db137867
AC
3693 # nm: unknown option "B" ignored
3694 # Tru64's nm complains that /dev/null is an invalid object file
6f57a957
AC
3695 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
3696 case $build_os in
3697 mingw*) lt_bad_file=conftest.nm/nofile ;;
3698 *) lt_bad_file=/dev/null ;;
3699 esac
3700 case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
3701 *$lt_bad_file* | *'Invalid file or object type'*)
db137867 3702 lt_cv_path_NM="$tmp_nm -B"
6f57a957 3703 break 2
db137867
AC
3704 ;;
3705 *)
3706 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3707 */dev/null*)
3708 lt_cv_path_NM="$tmp_nm -p"
6f57a957 3709 break 2
db137867
AC
3710 ;;
3711 *)
3712 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3713 continue # so that we can try to find one that supports BSD flags
3714 ;;
3715 esac
3716 ;;
3717 esac
3718 fi
3719 done
6f57a957 3720 IFS=$lt_save_ifs
db137867 3721 done
7083c021 3722 : ${lt_cv_path_NM=no}
db137867 3723fi])
6f57a957
AC
3724if test no != "$lt_cv_path_NM"; then
3725 NM=$lt_cv_path_NM
7083c021
AC
3726else
3727 # Didn't find any BSD compatible name lister, look for dumpbin.
b6d0720c
AC
3728 if test -n "$DUMPBIN"; then :
3729 # Let the user override the test.
3730 else
3731 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
6f57a957 3732 case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
b6d0720c 3733 *COFF*)
6f57a957 3734 DUMPBIN="$DUMPBIN -symbols -headers"
b6d0720c
AC
3735 ;;
3736 *)
3737 DUMPBIN=:
3738 ;;
3739 esac
3740 fi
7083c021 3741 AC_SUBST([DUMPBIN])
6f57a957
AC
3742 if test : != "$DUMPBIN"; then
3743 NM=$DUMPBIN
7083c021
AC
3744 fi
3745fi
3746test -z "$NM" && NM=nm
3747AC_SUBST([NM])
3748_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3749
3750AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3751 [lt_cv_nm_interface="BSD nm"
3752 echo "int some_variable = 0;" > conftest.$ac_ext
b6d0720c 3753 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
7083c021
AC
3754 (eval "$ac_compile" 2>conftest.err)
3755 cat conftest.err >&AS_MESSAGE_LOG_FD
b6d0720c 3756 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
7083c021
AC
3757 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3758 cat conftest.err >&AS_MESSAGE_LOG_FD
b6d0720c 3759 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
7083c021
AC
3760 cat conftest.out >&AS_MESSAGE_LOG_FD
3761 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3762 lt_cv_nm_interface="MS dumpbin"
3763 fi
3764 rm -f conftest*])
3765])# LT_PATH_NM
db137867 3766
7083c021
AC
3767# Old names:
3768AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3769AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3770dnl aclocal-1.4 backwards compatibility:
3771dnl AC_DEFUN([AM_PROG_NM], [])
3772dnl AC_DEFUN([AC_PROG_NM], [])
db137867 3773
b6d0720c
AC
3774# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3775# --------------------------------
3776# how to determine the name of the shared library
3777# associated with a specific link library.
3778# -- PORTME fill in with the dynamic library characteristics
3779m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3780[m4_require([_LT_DECL_EGREP])
3781m4_require([_LT_DECL_OBJDUMP])
3782m4_require([_LT_DECL_DLLTOOL])
3783AC_CACHE_CHECK([how to associate runtime and link libraries],
3784lt_cv_sharedlib_from_linklib_cmd,
3785[lt_cv_sharedlib_from_linklib_cmd='unknown'
3786
3787case $host_os in
3788cygwin* | mingw* | pw32* | cegcc*)
6f57a957
AC
3789 # two different shell functions defined in ltmain.sh;
3790 # decide which one to use based on capabilities of $DLLTOOL
b6d0720c
AC
3791 case `$DLLTOOL --help 2>&1` in
3792 *--identify-strict*)
3793 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3794 ;;
3795 *)
3796 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3797 ;;
3798 esac
3799 ;;
3800*)
3801 # fallback: assume linklib IS sharedlib
6f57a957 3802 lt_cv_sharedlib_from_linklib_cmd=$ECHO
b6d0720c
AC
3803 ;;
3804esac
3805])
3806sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3807test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3808
3809_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3810 [Command to associate shared and link libraries])
3811])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3812
3813
3814# _LT_PATH_MANIFEST_TOOL
3815# ----------------------
3816# locate the manifest tool
3817m4_defun([_LT_PATH_MANIFEST_TOOL],
3818[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3819test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3820AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3821 [lt_cv_path_mainfest_tool=no
3822 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3823 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3824 cat conftest.err >&AS_MESSAGE_LOG_FD
3825 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3826 lt_cv_path_mainfest_tool=yes
3827 fi
3828 rm -f conftest*])
6f57a957 3829if test yes != "$lt_cv_path_mainfest_tool"; then
b6d0720c
AC
3830 MANIFEST_TOOL=:
3831fi
3832_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3833])# _LT_PATH_MANIFEST_TOOL
3834
7083c021 3835
6f57a957
AC
3836# _LT_DLL_DEF_P([FILE])
3837# ---------------------
3838# True iff FILE is a Windows DLL '.def' file.
3839# Keep in sync with func_dll_def_p in the libtool script
3840AC_DEFUN([_LT_DLL_DEF_P],
3841[dnl
3842 test DEF = "`$SED -n dnl
3843 -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace
3844 -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments
3845 -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl
3846 -e q dnl Only consider the first "real" line
3847 $1`" dnl
3848])# _LT_DLL_DEF_P
3849
3850
7083c021
AC
3851# LT_LIB_M
3852# --------
db137867 3853# check for math library
7083c021 3854AC_DEFUN([LT_LIB_M],
db137867
AC
3855[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3856LIBM=
3857case $host in
b6d0720c 3858*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
db137867
AC
3859 # These system don't have libm, or don't need it
3860 ;;
3861*-ncr-sysv4.3*)
6f57a957 3862 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
db137867
AC
3863 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3864 ;;
3865*)
6f57a957 3866 AC_CHECK_LIB(m, cos, LIBM=-lm)
db137867
AC
3867 ;;
3868esac
7083c021
AC
3869AC_SUBST([LIBM])
3870])# LT_LIB_M
db137867 3871
7083c021
AC
3872# Old name:
3873AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3874dnl aclocal-1.4 backwards compatibility:
3875dnl AC_DEFUN([AC_CHECK_LIBM], [])
db137867 3876
db137867 3877
7083c021
AC
3878# _LT_COMPILER_NO_RTTI([TAGNAME])
3879# -------------------------------
3880m4_defun([_LT_COMPILER_NO_RTTI],
3881[m4_require([_LT_TAG_COMPILER])dnl
db137867 3882
7083c021 3883_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
db137867 3884
6f57a957 3885if test yes = "$GCC"; then
b6d0720c
AC
3886 case $cc_basename in
3887 nvcc*)
3888 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3889 *)
3890 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3891 esac
db137867 3892
7083c021
AC
3893 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3894 lt_cv_prog_compiler_rtti_exceptions,
3895 [-fno-rtti -fno-exceptions], [],
3896 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3897fi
3898_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3899 [Compiler flag to turn off builtin functions])
3900])# _LT_COMPILER_NO_RTTI
db137867
AC
3901
3902
7083c021
AC
3903# _LT_CMD_GLOBAL_SYMBOLS
3904# ----------------------
3905m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3906[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3907AC_REQUIRE([AC_PROG_CC])dnl
b6d0720c 3908AC_REQUIRE([AC_PROG_AWK])dnl
7083c021
AC
3909AC_REQUIRE([LT_PATH_NM])dnl
3910AC_REQUIRE([LT_PATH_LD])dnl
3911m4_require([_LT_DECL_SED])dnl
3912m4_require([_LT_DECL_EGREP])dnl
3913m4_require([_LT_TAG_COMPILER])dnl
db137867 3914
7083c021
AC
3915# Check for command to grab the raw symbol name followed by C symbol from nm.
3916AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3917AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
db137867 3918[
7083c021
AC
3919# These are sane defaults that work on at least a few old systems.
3920# [They come from Ultrix. What could be older than Ultrix?!! ;)]
db137867 3921
7083c021
AC
3922# Character class describing NM global symbol codes.
3923symcode='[[BCDEGRST]]'
db137867 3924
7083c021
AC
3925# Regexp to match symbols that can be accessed directly from C.
3926sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
db137867 3927
7083c021
AC
3928# Define system-specific variables.
3929case $host_os in
3930aix*)
3931 symcode='[[BCDT]]'
3932 ;;
3933cygwin* | mingw* | pw32* | cegcc*)
3934 symcode='[[ABCDGISTW]]'
3935 ;;
3936hpux*)
6f57a957 3937 if test ia64 = "$host_cpu"; then
7083c021
AC
3938 symcode='[[ABCDEGRST]]'
3939 fi
3940 ;;
3941irix* | nonstopux*)
3942 symcode='[[BCDEGRST]]'
3943 ;;
3944osf*)
3945 symcode='[[BCDEGQRST]]'
3946 ;;
3947solaris*)
3948 symcode='[[BDRT]]'
3949 ;;
3950sco3.2v5*)
3951 symcode='[[DT]]'
3952 ;;
3953sysv4.2uw2*)
3954 symcode='[[DT]]'
3955 ;;
3956sysv5* | sco5v6* | unixware* | OpenUNIX*)
3957 symcode='[[ABDT]]'
3958 ;;
3959sysv4)
3960 symcode='[[DFNSTU]]'
3961 ;;
3962esac
db137867 3963
7083c021
AC
3964# If we're using GNU nm, then use its standard symbol codes.
3965case `$NM -V 2>&1` in
3966*GNU* | *'with BFD'*)
3967 symcode='[[ABCDGIRSTW]]' ;;
3968esac
db137867 3969
6f57a957
AC
3970if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3971 # Gets list of data symbols to import.
3972 lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
3973 # Adjust the below global symbol transforms to fixup imported variables.
3974 lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
3975 lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
3976 lt_c_name_lib_hook="\
3977 -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
3978 -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
3979else
3980 # Disable hooks by default.
3981 lt_cv_sys_global_symbol_to_import=
3982 lt_cdecl_hook=
3983 lt_c_name_hook=
3984 lt_c_name_lib_hook=
3985fi
3986
7083c021
AC
3987# Transform an extracted symbol line into a proper C declaration.
3988# Some systems (esp. on ia64) link data and code symbols differently,
3989# so use this general approach.
6f57a957
AC
3990lt_cv_sys_global_symbol_to_cdecl="sed -n"\
3991$lt_cdecl_hook\
3992" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
3993" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
db137867 3994
7083c021 3995# Transform an extracted symbol line into symbol name and symbol address
6f57a957
AC
3996lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
3997$lt_c_name_hook\
3998" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
3999" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
4000
4001# Transform an extracted symbol line into symbol name with lib prefix and
4002# symbol address.
4003lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
4004$lt_c_name_lib_hook\
4005" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
4006" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
4007" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
db137867 4008
7083c021
AC
4009# Handle CRLF in mingw tool chain
4010opt_cr=
4011case $build_os in
4012mingw*)
4013 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
4014 ;;
4015esac
db137867 4016
7083c021
AC
4017# Try without a prefix underscore, then with it.
4018for ac_symprfx in "" "_"; do
db137867 4019
7083c021
AC
4020 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
4021 symxfrm="\\1 $ac_symprfx\\2 \\2"
db137867 4022
7083c021
AC
4023 # Write the raw and C identifiers.
4024 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
6f57a957
AC
4025 # Fake it for dumpbin and say T for any non-static function,
4026 # D for any global variable and I for any imported variable.
7083c021
AC
4027 # Also find C++ and __fastcall symbols from MSVC++,
4028 # which start with @ or ?.
4029 lt_cv_sys_global_symbol_pipe="$AWK ['"\
4030" {last_section=section; section=\$ 3};"\
a949ab1a 4031" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
7083c021 4032" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
6f57a957
AC
4033" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
4034" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
4035" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
7083c021
AC
4036" \$ 0!~/External *\|/{next};"\
4037" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
4038" {if(hide[section]) next};"\
6f57a957
AC
4039" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
4040" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
4041" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
4042" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
7083c021
AC
4043" ' prfx=^$ac_symprfx]"
4044 else
4045 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
4046 fi
b6d0720c 4047 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
db137867 4048
7083c021
AC
4049 # Check to see that the pipe works correctly.
4050 pipe_works=no
db137867 4051
7083c021
AC
4052 rm -f conftest*
4053 cat > conftest.$ac_ext <<_LT_EOF
4054#ifdef __cplusplus
4055extern "C" {
4056#endif
4057char nm_test_var;
4058void nm_test_func(void);
4059void nm_test_func(void){}
4060#ifdef __cplusplus
4061}
4062#endif
4063int main(){nm_test_var='a';nm_test_func();return(0);}
4064_LT_EOF
db137867 4065
7083c021
AC
4066 if AC_TRY_EVAL(ac_compile); then
4067 # Now try to grab the symbols.
4068 nlist=conftest.nm
b6d0720c 4069 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
7083c021
AC
4070 # Try sorting and uniquifying the output.
4071 if sort "$nlist" | uniq > "$nlist"T; then
4072 mv -f "$nlist"T "$nlist"
4073 else
4074 rm -f "$nlist"T
4075 fi
db137867 4076
7083c021
AC
4077 # Make sure that we snagged all the symbols we need.
4078 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4079 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4080 cat <<_LT_EOF > conftest.$ac_ext
b6d0720c 4081/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
6f57a957
AC
4082#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4083/* DATA imports from DLLs on WIN32 can't be const, because runtime
b6d0720c
AC
4084 relocations are performed -- see ld's documentation on pseudo-relocs. */
4085# define LT@&t@_DLSYM_CONST
6f57a957 4086#elif defined __osf__
b6d0720c
AC
4087/* This system does not cope well with relocations in const data. */
4088# define LT@&t@_DLSYM_CONST
4089#else
4090# define LT@&t@_DLSYM_CONST const
4091#endif
4092
7083c021
AC
4093#ifdef __cplusplus
4094extern "C" {
4095#endif
db137867 4096
7083c021
AC
4097_LT_EOF
4098 # Now generate the symbol file.
4099 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
db137867 4100
7083c021 4101 cat <<_LT_EOF >> conftest.$ac_ext
db137867 4102
7083c021 4103/* The mapping between symbol names and symbols. */
b6d0720c 4104LT@&t@_DLSYM_CONST struct {
7083c021
AC
4105 const char *name;
4106 void *address;
4107}
4108lt__PROGRAM__LTX_preloaded_symbols[[]] =
4109{
4110 { "@PROGRAM@", (void *) 0 },
4111_LT_EOF
6f57a957 4112 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
7083c021
AC
4113 cat <<\_LT_EOF >> conftest.$ac_ext
4114 {0, (void *) 0}
4115};
db137867 4116
7083c021
AC
4117/* This works around a problem in FreeBSD linker */
4118#ifdef FREEBSD_WORKAROUND
4119static const void *lt_preloaded_setup() {
4120 return lt__PROGRAM__LTX_preloaded_symbols;
4121}
4122#endif
db137867 4123
7083c021
AC
4124#ifdef __cplusplus
4125}
4126#endif
4127_LT_EOF
4128 # Now try linking the two files.
4129 mv conftest.$ac_objext conftstm.$ac_objext
b6d0720c
AC
4130 lt_globsym_save_LIBS=$LIBS
4131 lt_globsym_save_CFLAGS=$CFLAGS
6f57a957 4132 LIBS=conftstm.$ac_objext
7083c021 4133 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
6f57a957 4134 if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
7083c021
AC
4135 pipe_works=yes
4136 fi
b6d0720c
AC
4137 LIBS=$lt_globsym_save_LIBS
4138 CFLAGS=$lt_globsym_save_CFLAGS
7083c021
AC
4139 else
4140 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4141 fi
4142 else
4143 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4144 fi
db137867 4145 else
7083c021 4146 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
db137867
AC
4147 fi
4148 else
7083c021
AC
4149 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4150 cat conftest.$ac_ext >&5
db137867 4151 fi
7083c021 4152 rm -rf conftest* conftst*
db137867 4153
7083c021 4154 # Do not use the global_symbol_pipe unless it works.
6f57a957 4155 if test yes = "$pipe_works"; then
7083c021
AC
4156 break
4157 else
4158 lt_cv_sys_global_symbol_pipe=
4159 fi
4160done
4161])
4162if test -z "$lt_cv_sys_global_symbol_pipe"; then
4163 lt_cv_sys_global_symbol_to_cdecl=
4164fi
4165if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4166 AC_MSG_RESULT(failed)
db137867 4167else
7083c021 4168 AC_MSG_RESULT(ok)
db137867
AC
4169fi
4170
b6d0720c
AC
4171# Response file support.
4172if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4173 nm_file_list_spec='@'
4174elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4175 nm_file_list_spec='@'
4176fi
4177
4178_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
7083c021
AC
4179 [Take the output of nm and produce a listing of raw symbols and C names])
4180_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4181 [Transform the output of nm in a proper C declaration])
6f57a957
AC
4182_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
4183 [Transform the output of nm into a list of symbols to manually relocate])
7083c021
AC
4184_LT_DECL([global_symbol_to_c_name_address],
4185 [lt_cv_sys_global_symbol_to_c_name_address], [1],
4186 [Transform the output of nm in a C name address pair])
4187_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4188 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4189 [Transform the output of nm in a C name address pair when lib prefix is needed])
6f57a957
AC
4190_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4191 [The name lister interface])
b6d0720c
AC
4192_LT_DECL([], [nm_file_list_spec], [1],
4193 [Specify filename containing input files for $NM])
7083c021 4194]) # _LT_CMD_GLOBAL_SYMBOLS
db137867 4195
db137867 4196
7083c021
AC
4197# _LT_COMPILER_PIC([TAGNAME])
4198# ---------------------------
4199m4_defun([_LT_COMPILER_PIC],
4200[m4_require([_LT_TAG_COMPILER])dnl
4201_LT_TAGVAR(lt_prog_compiler_wl, $1)=
4202_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4203_LT_TAGVAR(lt_prog_compiler_static, $1)=
db137867 4204
7083c021
AC
4205m4_if([$1], [CXX], [
4206 # C++ specific cases for pic, static, wl, etc.
6f57a957 4207 if test yes = "$GXX"; then
7083c021
AC
4208 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4209 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
db137867 4210
7083c021
AC
4211 case $host_os in
4212 aix*)
4213 # All AIX code is PIC.
6f57a957 4214 if test ia64 = "$host_cpu"; then
7083c021
AC
4215 # AIX 5 now supports IA64 processor
4216 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
db137867 4217 fi
6f57a957 4218 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7083c021 4219 ;;
db137867 4220
7083c021
AC
4221 amigaos*)
4222 case $host_cpu in
4223 powerpc)
4224 # see comment about AmigaOS4 .so support
4225 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4226 ;;
4227 m68k)
4228 # FIXME: we need at least 68020 code to build shared libraries, but
6f57a957
AC
4229 # adding the '-m68020' flag to GCC prevents building anything better,
4230 # like '-m68040'.
7083c021 4231 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
db137867 4232 ;;
7083c021
AC
4233 esac
4234 ;;
db137867 4235
7083c021
AC
4236 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4237 # PIC is the default for these OSes.
4238 ;;
4239 mingw* | cygwin* | os2* | pw32* | cegcc*)
4240 # This hack is so that the source file can tell whether it is being
4241 # built for inclusion in a dll (and should export symbols for example).
4242 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4243 # (--disable-auto-import) libraries
4244 m4_if([$1], [GCJ], [],
4245 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
6f57a957
AC
4246 case $host_os in
4247 os2*)
4248 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4249 ;;
4250 esac
7083c021
AC
4251 ;;
4252 darwin* | rhapsody*)
4253 # PIC is the default on this platform
4254 # Common symbols not allowed in MH_DYLIB files
4255 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4256 ;;
4257 *djgpp*)
4258 # DJGPP does not support shared libraries at all
4259 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4260 ;;
b6d0720c
AC
4261 haiku*)
4262 # PIC is the default for Haiku.
4263 # The "-static" flag exists, but is broken.
4264 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4265 ;;
7083c021
AC
4266 interix[[3-9]]*)
4267 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4268 # Instead, we relocate shared libraries at runtime.
4269 ;;
4270 sysv4*MP*)
4271 if test -d /usr/nec; then
4272 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4273 fi
4274 ;;
4275 hpux*)
4276 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4277 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4278 # sets the default TLS model and affects inlining.
4279 case $host_cpu in
4280 hppa*64*)
db137867
AC
4281 ;;
4282 *)
7083c021 4283 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
db137867 4284 ;;
7083c021 4285 esac
db137867 4286 ;;
7083c021
AC
4287 *qnx* | *nto*)
4288 # QNX uses GNU C++, but need to define -shared option too, otherwise
4289 # it will coredump.
4290 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
db137867
AC
4291 ;;
4292 *)
7083c021 4293 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
db137867
AC
4294 ;;
4295 esac
7083c021
AC
4296 else
4297 case $host_os in
4298 aix[[4-9]]*)
4299 # All AIX code is PIC.
6f57a957 4300 if test ia64 = "$host_cpu"; then
7083c021
AC
4301 # AIX 5 now supports IA64 processor
4302 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4303 else
4304 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4305 fi
db137867 4306 ;;
7083c021
AC
4307 chorus*)
4308 case $cc_basename in
4309 cxch68*)
4310 # Green Hills C++ Compiler
4311 # _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"
db137867
AC
4312 ;;
4313 esac
db137867 4314 ;;
b6d0720c
AC
4315 mingw* | cygwin* | os2* | pw32* | cegcc*)
4316 # This hack is so that the source file can tell whether it is being
4317 # built for inclusion in a dll (and should export symbols for example).
4318 m4_if([$1], [GCJ], [],
4319 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4320 ;;
7083c021
AC
4321 dgux*)
4322 case $cc_basename in
4323 ec++*)
4324 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4325 ;;
4326 ghcx*)
4327 # Green Hills C++ Compiler
4328 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4329 ;;
4330 *)
4331 ;;
4332 esac
4333 ;;
4334 freebsd* | dragonfly*)
4335 # FreeBSD uses GNU C++
4336 ;;
4337 hpux9* | hpux10* | hpux11*)
4338 case $cc_basename in
4339 CC*)
4340 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
6f57a957
AC
4341 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4342 if test ia64 != "$host_cpu"; then
7083c021
AC
4343 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4344 fi
4345 ;;
4346 aCC*)
4347 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
6f57a957 4348 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
db137867 4349 case $host_cpu in
7083c021
AC
4350 hppa*64*|ia64*)
4351 # +Z the default
db137867
AC
4352 ;;
4353 *)
7083c021 4354 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
db137867
AC
4355 ;;
4356 esac
7083c021
AC
4357 ;;
4358 *)
4359 ;;
db137867 4360 esac
db137867 4361 ;;
7083c021
AC
4362 interix*)
4363 # This is c89, which is MS Visual C++ (no shared libs)
4364 # Anyone wants to do a port?
db137867 4365 ;;
7083c021
AC
4366 irix5* | irix6* | nonstopux*)
4367 case $cc_basename in
4368 CC*)
4369 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4370 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4371 # CC pic flag -KPIC is the default.
4372 ;;
4373 *)
4374 ;;
db137867
AC
4375 esac
4376 ;;
6f57a957 4377 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
7083c021
AC
4378 case $cc_basename in
4379 KCC*)
4380 # KAI C++ Compiler
4381 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4382 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4383 ;;
4384 ecpc* )
6f57a957 4385 # old Intel C++ for x86_64, which still supported -KPIC.
7083c021
AC
4386 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4387 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4388 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4389 ;;
4390 icpc* )
4391 # Intel C++, used to be incompatible with GCC.
4392 # ICC 10 doesn't accept -KPIC any more.
4393 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4394 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4395 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4396 ;;
4397 pgCC* | pgcpp*)
4398 # Portland Group C++ compiler
4399 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4400 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4401 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4402 ;;
4403 cxx*)
4404 # Compaq C++
4405 # Make sure the PIC flag is empty. It appears that all Alpha
4406 # Linux and Compaq Tru64 Unix objects are PIC.
4407 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4408 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4409 ;;
b6d0720c
AC
4410 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4411 # IBM XL 8.0, 9.0 on PPC and BlueGene
7083c021
AC
4412 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4413 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4414 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4415 ;;
4416 *)
4417 case `$CC -V 2>&1 | sed 5q` in
4418 *Sun\ C*)
4419 # Sun C++ 5.9
4420 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4421 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4422 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4423 ;;
4424 esac
4425 ;;
4426 esac
db137867 4427 ;;
7083c021 4428 lynxos*)
db137867 4429 ;;
7083c021 4430 m88k*)
db137867 4431 ;;
7083c021
AC
4432 mvs*)
4433 case $cc_basename in
4434 cxx*)
4435 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4436 ;;
4437 *)
4438 ;;
4439 esac
db137867 4440 ;;
bf4e01a4 4441 netbsd*)
db137867 4442 ;;
7083c021
AC
4443 *qnx* | *nto*)
4444 # QNX uses GNU C++, but need to define -shared option too, otherwise
4445 # it will coredump.
4446 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4447 ;;
4448 osf3* | osf4* | osf5*)
4449 case $cc_basename in
4450 KCC*)
4451 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4452 ;;
4453 RCC*)
4454 # Rational C++ 2.4.1
4455 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4456 ;;
4457 cxx*)
4458 # Digital/Compaq C++
4459 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4460 # Make sure the PIC flag is empty. It appears that all Alpha
4461 # Linux and Compaq Tru64 Unix objects are PIC.
4462 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4463 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4464 ;;
4465 *)
4466 ;;
4467 esac
db137867 4468 ;;
7083c021 4469 psos*)
db137867 4470 ;;
7083c021
AC
4471 solaris*)
4472 case $cc_basename in
b6d0720c 4473 CC* | sunCC*)
7083c021
AC
4474 # Sun C++ 4.2, 5.x and Centerline C++
4475 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4476 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4477 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4478 ;;
4479 gcx*)
4480 # Green Hills C++ Compiler
4481 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4482 ;;
db137867 4483 *)
db137867
AC
4484 ;;
4485 esac
db137867 4486 ;;
7083c021
AC
4487 sunos4*)
4488 case $cc_basename in
4489 CC*)
4490 # Sun C++ 4.x
4491 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4492 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4493 ;;
4494 lcc*)
4495 # Lucid
4496 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4497 ;;
db137867 4498 *)
db137867 4499 ;;
7083c021 4500 esac
db137867 4501 ;;
7083c021
AC
4502 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4503 case $cc_basename in
4504 CC*)
4505 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4506 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4507 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4508 ;;
4509 esac
db137867 4510 ;;
7083c021
AC
4511 tandem*)
4512 case $cc_basename in
4513 NCC*)
4514 # NonStop-UX NCC 3.20
4515 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4516 ;;
4517 *)
4518 ;;
4519 esac
db137867 4520 ;;
7083c021 4521 vxworks*)
db137867
AC
4522 ;;
4523 *)
7083c021 4524 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
db137867
AC
4525 ;;
4526 esac
7083c021
AC
4527 fi
4528],
4529[
6f57a957 4530 if test yes = "$GCC"; then
7083c021
AC
4531 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4532 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
db137867 4533
7083c021
AC
4534 case $host_os in
4535 aix*)
4536 # All AIX code is PIC.
6f57a957 4537 if test ia64 = "$host_cpu"; then
7083c021
AC
4538 # AIX 5 now supports IA64 processor
4539 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4540 fi
6f57a957 4541 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
7083c021 4542 ;;
db137867 4543
7083c021
AC
4544 amigaos*)
4545 case $host_cpu in
4546 powerpc)
4547 # see comment about AmigaOS4 .so support
4548 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4549 ;;
4550 m68k)
4551 # FIXME: we need at least 68020 code to build shared libraries, but
6f57a957
AC
4552 # adding the '-m68020' flag to GCC prevents building anything better,
4553 # like '-m68040'.
7083c021
AC
4554 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4555 ;;
4556 esac
4557 ;;
db137867 4558
7083c021
AC
4559 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4560 # PIC is the default for these OSes.
4561 ;;
db137867 4562
7083c021
AC
4563 mingw* | cygwin* | pw32* | os2* | cegcc*)
4564 # This hack is so that the source file can tell whether it is being
4565 # built for inclusion in a dll (and should export symbols for example).
4566 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4567 # (--disable-auto-import) libraries
4568 m4_if([$1], [GCJ], [],
4569 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
6f57a957
AC
4570 case $host_os in
4571 os2*)
4572 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4573 ;;
4574 esac
7083c021 4575 ;;
db137867 4576
7083c021
AC
4577 darwin* | rhapsody*)
4578 # PIC is the default on this platform
4579 # Common symbols not allowed in MH_DYLIB files
4580 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4581 ;;
db137867 4582
b6d0720c
AC
4583 haiku*)
4584 # PIC is the default for Haiku.
4585 # The "-static" flag exists, but is broken.
4586 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4587 ;;
4588
7083c021
AC
4589 hpux*)
4590 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4591 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4592 # sets the default TLS model and affects inlining.
4593 case $host_cpu in
4594 hppa*64*)
4595 # +Z the default
4596 ;;
4597 *)
4598 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4599 ;;
4600 esac
4601 ;;
db137867 4602
7083c021
AC
4603 interix[[3-9]]*)
4604 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4605 # Instead, we relocate shared libraries at runtime.
4606 ;;
db137867 4607
7083c021
AC
4608 msdosdjgpp*)
4609 # Just because we use GCC doesn't mean we suddenly get shared libraries
4610 # on systems that don't support them.
4611 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4612 enable_shared=no
4613 ;;
db137867 4614
7083c021
AC
4615 *nto* | *qnx*)
4616 # QNX uses GNU C++, but need to define -shared option too, otherwise
4617 # it will coredump.
4618 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4619 ;;
db137867 4620
7083c021
AC
4621 sysv4*MP*)
4622 if test -d /usr/nec; then
4623 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4624 fi
4625 ;;
db137867 4626
7083c021
AC
4627 *)
4628 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4629 ;;
4630 esac
b6d0720c
AC
4631
4632 case $cc_basename in
4633 nvcc*) # Cuda Compiler Driver 2.2
4634 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
a949ab1a
AC
4635 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4636 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4637 fi
b6d0720c
AC
4638 ;;
4639 esac
7083c021
AC
4640 else
4641 # PORTME Check for flag to pass linker flags through the system compiler.
4642 case $host_os in
4643 aix*)
4644 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
6f57a957 4645 if test ia64 = "$host_cpu"; then
7083c021
AC
4646 # AIX 5 now supports IA64 processor
4647 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4648 else
4649 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4650 fi
4651 ;;
db137867 4652
6f57a957
AC
4653 darwin* | rhapsody*)
4654 # PIC is the default on this platform
4655 # Common symbols not allowed in MH_DYLIB files
4656 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4657 case $cc_basename in
4658 nagfor*)
4659 # NAG Fortran compiler
4660 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4661 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4662 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4663 ;;
4664 esac
4665 ;;
4666
7083c021
AC
4667 mingw* | cygwin* | pw32* | os2* | cegcc*)
4668 # This hack is so that the source file can tell whether it is being
4669 # built for inclusion in a dll (and should export symbols for example).
4670 m4_if([$1], [GCJ], [],
4671 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
6f57a957
AC
4672 case $host_os in
4673 os2*)
4674 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4675 ;;
4676 esac
7083c021 4677 ;;
db137867 4678
7083c021
AC
4679 hpux9* | hpux10* | hpux11*)
4680 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4681 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4682 # not for PA HP-UX.
4683 case $host_cpu in
4684 hppa*64*|ia64*)
4685 # +Z the default
4686 ;;
4687 *)
4688 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4689 ;;
4690 esac
4691 # Is there a better lt_prog_compiler_static that works with the bundled CC?
6f57a957 4692 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
7083c021 4693 ;;
db137867 4694
7083c021
AC
4695 irix5* | irix6* | nonstopux*)
4696 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4697 # PIC (with -KPIC) is the default.
4698 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4699 ;;
db137867 4700
6f57a957 4701 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
7083c021 4702 case $cc_basename in
6f57a957 4703 # old Intel for x86_64, which still supported -KPIC.
7083c021
AC
4704 ecc*)
4705 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4706 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4707 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4708 ;;
4709 # icc used to be incompatible with GCC.
4710 # ICC 10 doesn't accept -KPIC any more.
4711 icc* | ifort*)
4712 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4713 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4714 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4715 ;;
4716 # Lahey Fortran 8.1.
4717 lf95*)
4718 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4719 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4720 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4721 ;;
b6d0720c
AC
4722 nagfor*)
4723 # NAG Fortran compiler
4724 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4725 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4726 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4727 ;;
6f57a957
AC
4728 tcc*)
4729 # Fabrice Bellard et al's Tiny C Compiler
4730 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4731 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4732 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4733 ;;
b6d0720c 4734 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
7083c021
AC
4735 # Portland Group compilers (*not* the Pentium gcc compiler,
4736 # which looks to be a dead project)
4737 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4738 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4739 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4740 ;;
4741 ccc*)
4742 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4743 # All Alpha code is PIC.
4744 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4745 ;;
b6d0720c
AC
4746 xl* | bgxl* | bgf* | mpixl*)
4747 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
7083c021
AC
4748 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4749 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4750 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4751 ;;
4752 *)
4753 case `$CC -V 2>&1 | sed 5q` in
a949ab1a 4754 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
b6d0720c 4755 # Sun Fortran 8.3 passes all unrecognized flags to the linker
7083c021
AC
4756 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4757 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b6d0720c 4758 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
7083c021 4759 ;;
a949ab1a
AC
4760 *Sun\ F* | *Sun*Fortran*)
4761 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4762 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4763 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4764 ;;
b6d0720c
AC
4765 *Sun\ C*)
4766 # Sun C 5.9
7083c021
AC
4767 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4768 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b6d0720c 4769 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7083c021 4770 ;;
a949ab1a
AC
4771 *Intel*\ [[CF]]*Compiler*)
4772 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4773 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4774 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4775 ;;
4776 *Portland\ Group*)
4777 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4778 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4779 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4780 ;;
7083c021
AC
4781 esac
4782 ;;
4783 esac
4784 ;;
db137867 4785
7083c021
AC
4786 newsos6)
4787 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4788 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4789 ;;
b676ea3b 4790
7083c021
AC
4791 *nto* | *qnx*)
4792 # QNX uses GNU C++, but need to define -shared option too, otherwise
4793 # it will coredump.
4794 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4795 ;;
db137867 4796
7083c021
AC
4797 osf3* | osf4* | osf5*)
4798 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4799 # All OSF/1 code is PIC.
4800 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
db137867 4801 ;;
db137867 4802
7083c021
AC
4803 rdos*)
4804 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
db137867 4805 ;;
db137867 4806
7083c021
AC
4807 solaris*)
4808 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4809 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4810 case $cc_basename in
b6d0720c 4811 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
7083c021
AC
4812 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4813 *)
4814 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4815 esac
4816 ;;
db137867 4817
7083c021
AC
4818 sunos4*)
4819 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4820 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4821 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4822 ;;
db137867 4823
7083c021
AC
4824 sysv4 | sysv4.2uw2* | sysv4.3*)
4825 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4826 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4827 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4828 ;;
db137867 4829
7083c021 4830 sysv4*MP*)
6f57a957 4831 if test -d /usr/nec; then
7083c021
AC
4832 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4833 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4834 fi
4835 ;;
db137867 4836
7083c021
AC
4837 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4838 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4839 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4840 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4841 ;;
db137867 4842
7083c021
AC
4843 unicos*)
4844 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4845 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4846 ;;
db137867 4847
7083c021
AC
4848 uts4*)
4849 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4850 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4851 ;;
db137867 4852
7083c021
AC
4853 *)
4854 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4855 ;;
4856 esac
4857 fi
4858])
4859case $host_os in
6f57a957 4860 # For platforms that do not support PIC, -DPIC is meaningless:
7083c021
AC
4861 *djgpp*)
4862 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4863 ;;
4864 *)
4865 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4866 ;;
4867esac
b6d0720c
AC
4868
4869AC_CACHE_CHECK([for $compiler option to produce PIC],
4870 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4871 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4872_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
db137867 4873
7083c021
AC
4874#
4875# Check to make sure the PIC flag actually works.
4876#
4877if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4878 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4879 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4880 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4881 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4882 "" | " "*) ;;
4883 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4884 esac],
4885 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4886 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4887fi
4888_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4889 [Additional compiler flags for building library objects])
db137867 4890
b6d0720c
AC
4891_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4892 [How to pass a linker flag through the compiler])
7083c021
AC
4893#
4894# Check to make sure the static flag actually works.
4895#
4896wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4897_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4898 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4899 $lt_tmp_static_flag,
4900 [],
4901 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4902_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4903 [Compiler flag to prevent dynamic linking])
4904])# _LT_COMPILER_PIC
db137867 4905
db137867 4906
7083c021
AC
4907# _LT_LINKER_SHLIBS([TAGNAME])
4908# ----------------------------
4909# See if the linker supports building shared libraries.
4910m4_defun([_LT_LINKER_SHLIBS],
4911[AC_REQUIRE([LT_PATH_LD])dnl
4912AC_REQUIRE([LT_PATH_NM])dnl
b6d0720c 4913m4_require([_LT_PATH_MANIFEST_TOOL])dnl
7083c021
AC
4914m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4915m4_require([_LT_DECL_EGREP])dnl
4916m4_require([_LT_DECL_SED])dnl
4917m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4918m4_require([_LT_TAG_COMPILER])dnl
4919AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4920m4_if([$1], [CXX], [
4921 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
b6d0720c 4922 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
7083c021
AC
4923 case $host_os in
4924 aix[[4-9]]*)
4925 # If we're using GNU nm, then we don't want the "-C" option.
6f57a957
AC
4926 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
4927 # Without the "-l" option, or with the "-B" option, AIX nm treats
4928 # weak defined symbols like other global defined symbols, whereas
4929 # GNU nm marks them as "W".
4930 # While the 'weak' keyword is ignored in the Export File, we need
4931 # it in the Import File for the 'aix-soname' feature, so we have
4932 # to replace the "-B" option with "-P" for AIX nm.
7083c021 4933 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
6f57a957 4934 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
7083c021 4935 else
6f57a957 4936 _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
7083c021
AC
4937 fi
4938 ;;
4939 pw32*)
6f57a957 4940 _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
b6d0720c 4941 ;;
7083c021 4942 cygwin* | mingw* | cegcc*)
b6d0720c 4943 case $cc_basename in
a949ab1a
AC
4944 cl*)
4945 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4946 ;;
b6d0720c
AC
4947 *)
4948 _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'
4949 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4950 ;;
4951 esac
4952 ;;
7083c021
AC
4953 *)
4954 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
b6d0720c 4955 ;;
7083c021 4956 esac
7083c021
AC
4957], [
4958 runpath_var=
4959 _LT_TAGVAR(allow_undefined_flag, $1)=
4960 _LT_TAGVAR(always_export_symbols, $1)=no
4961 _LT_TAGVAR(archive_cmds, $1)=
4962 _LT_TAGVAR(archive_expsym_cmds, $1)=
4963 _LT_TAGVAR(compiler_needs_object, $1)=no
4964 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4965 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4966 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4967 _LT_TAGVAR(hardcode_automatic, $1)=no
4968 _LT_TAGVAR(hardcode_direct, $1)=no
4969 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4970 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7083c021
AC
4971 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4972 _LT_TAGVAR(hardcode_minus_L, $1)=no
4973 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4974 _LT_TAGVAR(inherit_rpath, $1)=no
4975 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4976 _LT_TAGVAR(module_cmds, $1)=
4977 _LT_TAGVAR(module_expsym_cmds, $1)=
4978 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4979 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4980 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4981 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4982 # include_expsyms should be a list of space-separated symbols to be *always*
4983 # included in the symbol list
4984 _LT_TAGVAR(include_expsyms, $1)=
4985 # exclude_expsyms can be an extended regexp of symbols to exclude
6f57a957
AC
4986 # it will be wrapped by ' (' and ')$', so one must not match beginning or
4987 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
4988 # as well as any symbol that contains 'd'.
7083c021
AC
4989 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4990 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4991 # platforms (ab)use it in PIC code, but their linkers get confused if
4992 # the symbol is explicitly referenced. Since portable code cannot
4993 # rely on this symbol name, it's probably fine to never include it in
4994 # preloaded symbol tables.
4995 # Exclude shared library initialization/finalization symbols.
4996dnl Note also adjust exclude_expsyms for C++ above.
4997 extract_expsyms_cmds=
db137867 4998
7083c021
AC
4999 case $host_os in
5000 cygwin* | mingw* | pw32* | cegcc*)
5001 # FIXME: the MSVC++ port hasn't been tested in a loooong time
5002 # When not using gcc, we currently assume that we are using
5003 # Microsoft Visual C++.
6f57a957 5004 if test yes != "$GCC"; then
7083c021
AC
5005 with_gnu_ld=no
5006 fi
5007 ;;
5008 interix*)
5009 # we just hope/assume this is gcc and not c89 (= MSVC++)
5010 with_gnu_ld=yes
5011 ;;
6f57a957 5012 openbsd* | bitrig*)
7083c021
AC
5013 with_gnu_ld=no
5014 ;;
7083c021 5015 esac
db137867 5016
7083c021 5017 _LT_TAGVAR(ld_shlibs, $1)=yes
b6d0720c
AC
5018
5019 # On some targets, GNU ld is compatible enough with the native linker
5020 # that we're better off using the native interface for both.
5021 lt_use_gnu_ld_interface=no
6f57a957 5022 if test yes = "$with_gnu_ld"; then
b6d0720c
AC
5023 case $host_os in
5024 aix*)
5025 # The AIX port of GNU ld has always aspired to compatibility
5026 # with the native linker. However, as the warning in the GNU ld
5027 # block says, versions before 2.19.5* couldn't really create working
5028 # shared libraries, regardless of the interface used.
5029 case `$LD -v 2>&1` in
5030 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5031 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5032 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5033 *)
5034 lt_use_gnu_ld_interface=yes
5035 ;;
5036 esac
5037 ;;
5038 *)
5039 lt_use_gnu_ld_interface=yes
5040 ;;
5041 esac
5042 fi
5043
6f57a957 5044 if test yes = "$lt_use_gnu_ld_interface"; then
7083c021 5045 # If archive_cmds runs LD, not CC, wlarc should be empty
6f57a957 5046 wlarc='$wl'
db137867 5047
7083c021
AC
5048 # Set some defaults for GNU ld with shared library support. These
5049 # are reset later if shared libraries are not supported. Putting them
5050 # here allows them to be overridden if necessary.
5051 runpath_var=LD_RUN_PATH
6f57a957
AC
5052 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5053 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7083c021
AC
5054 # ancient GNU ld didn't support --whole-archive et. al.
5055 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
6f57a957 5056 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7083c021
AC
5057 else
5058 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5059 fi
5060 supports_anon_versioning=no
6f57a957 5061 case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
b6d0720c 5062 *GNU\ gold*) supports_anon_versioning=yes ;;
7083c021
AC
5063 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5064 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5065 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5066 *\ 2.11.*) ;; # other 2.11 versions
5067 *) supports_anon_versioning=yes ;;
5068 esac
db137867 5069
7083c021
AC
5070 # See if GNU ld supports shared libraries.
5071 case $host_os in
5072 aix[[3-9]]*)
5073 # On AIX/PPC, the GNU linker is very broken
6f57a957 5074 if test ia64 != "$host_cpu"; then
7083c021
AC
5075 _LT_TAGVAR(ld_shlibs, $1)=no
5076 cat <<_LT_EOF 1>&2
db137867 5077
b6d0720c 5078*** Warning: the GNU linker, at least up to release 2.19, is reported
7083c021
AC
5079*** to be unable to reliably create shared libraries on AIX.
5080*** Therefore, libtool is disabling shared libraries support. If you
b6d0720c
AC
5081*** really care for shared libraries, you may want to install binutils
5082*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5083*** You will then need to restart the configuration process.
db137867 5084
7083c021
AC
5085_LT_EOF
5086 fi
5087 ;;
db137867 5088
7083c021
AC
5089 amigaos*)
5090 case $host_cpu in
5091 powerpc)
5092 # see comment about AmigaOS4 .so support
6f57a957 5093 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7083c021
AC
5094 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5095 ;;
5096 m68k)
5097 _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)'
5098 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5099 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5100 ;;
5101 esac
5102 ;;
db137867 5103
7083c021
AC
5104 beos*)
5105 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5106 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5107 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5108 # support --undefined. This deserves some investigation. FIXME
6f57a957 5109 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7083c021
AC
5110 else
5111 _LT_TAGVAR(ld_shlibs, $1)=no
5112 fi
5113 ;;
db137867 5114
7083c021
AC
5115 cygwin* | mingw* | pw32* | cegcc*)
5116 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5117 # as there is no search path for DLLs.
5118 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6f57a957 5119 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
7083c021
AC
5120 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5121 _LT_TAGVAR(always_export_symbols, $1)=no
5122 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
b6d0720c
AC
5123 _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'
5124 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
7083c021
AC
5125
5126 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6f57a957
AC
5127 _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'
5128 # If the export-symbols file already is a .def file, use it as
5129 # is; otherwise, prepend EXPORTS...
5130 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5131 cp $export_symbols $output_objdir/$soname.def;
5132 else
5133 echo EXPORTS > $output_objdir/$soname.def;
5134 cat $export_symbols >> $output_objdir/$soname.def;
5135 fi~
5136 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
7083c021
AC
5137 else
5138 _LT_TAGVAR(ld_shlibs, $1)=no
5139 fi
5140 ;;
db137867 5141
b6d0720c 5142 haiku*)
6f57a957 5143 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
b6d0720c
AC
5144 _LT_TAGVAR(link_all_deplibs, $1)=yes
5145 ;;
5146
6f57a957
AC
5147 os2*)
5148 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5149 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5150 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5151 shrext_cmds=.dll
5152 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5153 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5154 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5155 $ECHO EXPORTS >> $output_objdir/$libname.def~
5156 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5157 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5158 emximp -o $lib $output_objdir/$libname.def'
5159 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5160 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5161 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5162 $ECHO EXPORTS >> $output_objdir/$libname.def~
5163 prefix_cmds="$SED"~
5164 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5165 prefix_cmds="$prefix_cmds -e 1d";
5166 fi~
5167 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5168 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5169 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5170 emximp -o $lib $output_objdir/$libname.def'
5171 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5172 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5173 ;;
5174
7083c021
AC
5175 interix[[3-9]]*)
5176 _LT_TAGVAR(hardcode_direct, $1)=no
5177 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6f57a957
AC
5178 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5179 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7083c021
AC
5180 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5181 # Instead, shared libraries are loaded at an image base (0x10000000 by
5182 # default) and relocated if they conflict, which is a slow very memory
5183 # consuming and fragmenting process. To avoid this, we pick a random,
5184 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5185 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6f57a957
AC
5186 _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'
5187 _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'
7083c021 5188 ;;
db137867 5189
b6d0720c 5190 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
7083c021 5191 tmp_diet=no
6f57a957 5192 if test linux-dietlibc = "$host_os"; then
7083c021
AC
5193 case $cc_basename in
5194 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
5195 esac
5196 fi
5197 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
6f57a957 5198 && test no = "$tmp_diet"
7083c021 5199 then
b6d0720c 5200 tmp_addflag=' $pic_flag'
7083c021
AC
5201 tmp_sharedflag='-shared'
5202 case $cc_basename,$host_cpu in
5203 pgcc*) # Portland Group C compiler
6f57a957 5204 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
7083c021
AC
5205 tmp_addflag=' $pic_flag'
5206 ;;
b6d0720c
AC
5207 pgf77* | pgf90* | pgf95* | pgfortran*)
5208 # Portland Group f77 and f90 compilers
6f57a957 5209 _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'
7083c021
AC
5210 tmp_addflag=' $pic_flag -Mnomain' ;;
5211 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
5212 tmp_addflag=' -i_dynamic' ;;
5213 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
5214 tmp_addflag=' -i_dynamic -nofor_main' ;;
5215 ifc* | ifort*) # Intel Fortran compiler
5216 tmp_addflag=' -nofor_main' ;;
5217 lf95*) # Lahey Fortran 8.1
5218 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5219 tmp_sharedflag='--shared' ;;
6f57a957
AC
5220 nagfor*) # NAGFOR 5.3
5221 tmp_sharedflag='-Wl,-shared' ;;
b6d0720c 5222 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
7083c021
AC
5223 tmp_sharedflag='-qmkshrobj'
5224 tmp_addflag= ;;
b6d0720c 5225 nvcc*) # Cuda Compiler Driver 2.2
6f57a957 5226 _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'
b6d0720c
AC
5227 _LT_TAGVAR(compiler_needs_object, $1)=yes
5228 ;;
7083c021
AC
5229 esac
5230 case `$CC -V 2>&1 | sed 5q` in
5231 *Sun\ C*) # Sun C 5.9
6f57a957 5232 _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'
7083c021
AC
5233 _LT_TAGVAR(compiler_needs_object, $1)=yes
5234 tmp_sharedflag='-G' ;;
5235 *Sun\ F*) # Sun Fortran 8.3
5236 tmp_sharedflag='-G' ;;
5237 esac
6f57a957 5238 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
db137867 5239
6f57a957 5240 if test yes = "$supports_anon_versioning"; then
7083c021 5241 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6f57a957
AC
5242 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5243 echo "local: *; };" >> $output_objdir/$libname.ver~
5244 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7083c021 5245 fi
db137867 5246
7083c021 5247 case $cc_basename in
6f57a957
AC
5248 tcc*)
5249 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5250 ;;
b6d0720c 5251 xlf* | bgf* | bgxlf* | mpixlf*)
7083c021
AC
5252 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5253 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
6f57a957 5254 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
b6d0720c 5255 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
6f57a957 5256 if test yes = "$supports_anon_versioning"; then
7083c021 5257 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6f57a957
AC
5258 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5259 echo "local: *; };" >> $output_objdir/$libname.ver~
5260 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
7083c021
AC
5261 fi
5262 ;;
5263 esac
5264 else
5265 _LT_TAGVAR(ld_shlibs, $1)=no
5266 fi
5267 ;;
db137867 5268
bf4e01a4 5269 netbsd*)
7083c021
AC
5270 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5271 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5272 wlarc=
5273 else
6f57a957
AC
5274 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5275 _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'
7083c021
AC
5276 fi
5277 ;;
db137867 5278
7083c021
AC
5279 solaris*)
5280 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5281 _LT_TAGVAR(ld_shlibs, $1)=no
5282 cat <<_LT_EOF 1>&2
db137867 5283
7083c021
AC
5284*** Warning: The releases 2.8.* of the GNU linker cannot reliably
5285*** create shared libraries on Solaris systems. Therefore, libtool
5286*** is disabling shared libraries support. We urge you to upgrade GNU
5287*** binutils to release 2.9.1 or newer. Another option is to modify
5288*** your PATH or compiler configuration so that the native linker is
5289*** used, and then restart.
db137867 5290
7083c021
AC
5291_LT_EOF
5292 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6f57a957
AC
5293 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5294 _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'
7083c021
AC
5295 else
5296 _LT_TAGVAR(ld_shlibs, $1)=no
5297 fi
5298 ;;
db137867 5299
7083c021
AC
5300 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5301 case `$LD -v 2>&1` in
5302 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5303 _LT_TAGVAR(ld_shlibs, $1)=no
5304 cat <<_LT_EOF 1>&2
db137867 5305
6f57a957 5306*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
7083c021
AC
5307*** reliably create shared libraries on SCO systems. Therefore, libtool
5308*** is disabling shared libraries support. We urge you to upgrade GNU
5309*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
5310*** your PATH or compiler configuration so that the native linker is
5311*** used, and then restart.
db137867 5312
7083c021
AC
5313_LT_EOF
5314 ;;
5315 *)
5316 # For security reasons, it is highly recommended that you always
5317 # use absolute paths for naming shared libraries, and exclude the
5318 # DT_RUNPATH tag from executables and libraries. But doing so
5319 # requires that you compile everything twice, which is a pain.
5320 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6f57a957
AC
5321 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5322 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5323 _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'
7083c021
AC
5324 else
5325 _LT_TAGVAR(ld_shlibs, $1)=no
5326 fi
5327 ;;
5328 esac
5329 ;;
db137867 5330
7083c021
AC
5331 sunos4*)
5332 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5333 wlarc=
5334 _LT_TAGVAR(hardcode_direct, $1)=yes
5335 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
db137867 5336 ;;
7083c021 5337
db137867 5338 *)
7083c021 5339 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6f57a957
AC
5340 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5341 _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'
7083c021
AC
5342 else
5343 _LT_TAGVAR(ld_shlibs, $1)=no
5344 fi
db137867
AC
5345 ;;
5346 esac
db137867 5347
6f57a957 5348 if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
7083c021
AC
5349 runpath_var=
5350 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5351 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5352 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5353 fi
5354 else
5355 # PORTME fill in a description of your system's linker (not GNU ld)
5356 case $host_os in
5357 aix3*)
5358 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5359 _LT_TAGVAR(always_export_symbols, $1)=yes
5360 _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'
5361 # Note: this linker hardcodes the directories in LIBPATH if there
5362 # are no directories specified by -L.
5363 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6f57a957 5364 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
7083c021
AC
5365 # Neither direct hardcoding nor static linking is supported with a
5366 # broken collect2.
5367 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5368 fi
5369 ;;
db137867 5370
7083c021 5371 aix[[4-9]]*)
6f57a957 5372 if test ia64 = "$host_cpu"; then
7083c021
AC
5373 # On IA64, the linker does run time linking by default, so we don't
5374 # have to do anything special.
5375 aix_use_runtimelinking=no
5376 exp_sym_flag='-Bexport'
6f57a957 5377 no_entry_flag=
7083c021
AC
5378 else
5379 # If we're using GNU nm, then we don't want the "-C" option.
6f57a957
AC
5380 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
5381 # Without the "-l" option, or with the "-B" option, AIX nm treats
5382 # weak defined symbols like other global defined symbols, whereas
5383 # GNU nm marks them as "W".
5384 # While the 'weak' keyword is ignored in the Export File, we need
5385 # it in the Import File for the 'aix-soname' feature, so we have
5386 # to replace the "-B" option with "-P" for AIX nm.
7083c021 5387 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
6f57a957 5388 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
7083c021 5389 else
6f57a957 5390 _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
7083c021
AC
5391 fi
5392 aix_use_runtimelinking=no
db137867 5393
7083c021
AC
5394 # Test if we are trying to use run time linking or normal
5395 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6f57a957
AC
5396 # have runtime linking enabled, and use it for executables.
5397 # For shared libraries, we enable/disable runtime linking
5398 # depending on the kind of the shared library created -
5399 # when "with_aix_soname,aix_use_runtimelinking" is:
5400 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
5401 # "aix,yes" lib.so shared, rtl:yes, for executables
5402 # lib.a static archive
5403 # "both,no" lib.so.V(shr.o) shared, rtl:yes
5404 # lib.a(lib.so.V) shared, rtl:no, for executables
5405 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
5406 # lib.a(lib.so.V) shared, rtl:no
5407 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
5408 # lib.a static archive
7083c021
AC
5409 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5410 for ld_flag in $LDFLAGS; do
6f57a957 5411 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
7083c021
AC
5412 aix_use_runtimelinking=yes
5413 break
5414 fi
5415 done
6f57a957
AC
5416 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
5417 # With aix-soname=svr4, we create the lib.so.V shared archives only,
5418 # so we don't have lib.a shared libs to link our executables.
5419 # We have to force runtime linking in this case.
5420 aix_use_runtimelinking=yes
5421 LDFLAGS="$LDFLAGS -Wl,-brtl"
5422 fi
7083c021
AC
5423 ;;
5424 esac
db137867 5425
7083c021
AC
5426 exp_sym_flag='-bexport'
5427 no_entry_flag='-bnoentry'
5428 fi
db137867 5429
7083c021
AC
5430 # When large executables or shared objects are built, AIX ld can
5431 # have problems creating the table of contents. If linking a library
5432 # or program results in "error TOC overflow" add -mminimal-toc to
5433 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5434 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
db137867 5435
7083c021
AC
5436 _LT_TAGVAR(archive_cmds, $1)=''
5437 _LT_TAGVAR(hardcode_direct, $1)=yes
5438 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5439 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5440 _LT_TAGVAR(link_all_deplibs, $1)=yes
6f57a957
AC
5441 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
5442 case $with_aix_soname,$aix_use_runtimelinking in
5443 aix,*) ;; # traditional, no import file
5444 svr4,* | *,yes) # use import file
5445 # The Import File defines what to hardcode.
5446 _LT_TAGVAR(hardcode_direct, $1)=no
5447 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
5448 ;;
5449 esac
db137867 5450
6f57a957 5451 if test yes = "$GCC"; then
7083c021
AC
5452 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5453 # We only want to do this on AIX 4.2 and lower, the check
5454 # below for broken collect2 doesn't work under 4.3+
6f57a957 5455 collect2name=`$CC -print-prog-name=collect2`
7083c021
AC
5456 if test -f "$collect2name" &&
5457 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5458 then
5459 # We have reworked collect2
5460 :
5461 else
5462 # We have old collect2
5463 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5464 # It fails to find uninstalled libraries when the uninstalled
5465 # path is not listed in the libpath. Setting hardcode_minus_L
5466 # to unsupported forces relinking
5467 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5468 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5469 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5470 fi
5471 ;;
5472 esac
5473 shared_flag='-shared'
6f57a957
AC
5474 if test yes = "$aix_use_runtimelinking"; then
5475 shared_flag="$shared_flag "'$wl-G'
7083c021 5476 fi
6f57a957
AC
5477 # Need to ensure runtime linking is disabled for the traditional
5478 # shared library, or the linker may eventually find shared libraries
5479 # /with/ Import File - we do not want to mix them.
5480 shared_flag_aix='-shared'
5481 shared_flag_svr4='-shared $wl-G'
7083c021
AC
5482 else
5483 # not using gcc
6f57a957 5484 if test ia64 = "$host_cpu"; then
7083c021
AC
5485 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5486 # chokes on -Wl,-G. The following line is correct:
5487 shared_flag='-G'
5488 else
6f57a957
AC
5489 if test yes = "$aix_use_runtimelinking"; then
5490 shared_flag='$wl-G'
7083c021 5491 else
6f57a957 5492 shared_flag='$wl-bM:SRE'
7083c021 5493 fi
6f57a957
AC
5494 shared_flag_aix='$wl-bM:SRE'
5495 shared_flag_svr4='$wl-G'
7083c021
AC
5496 fi
5497 fi
db137867 5498
6f57a957 5499 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
7083c021
AC
5500 # It seems that -bexpall does not export symbols beginning with
5501 # underscore (_), so it is better to generate a list of symbols to export.
5502 _LT_TAGVAR(always_export_symbols, $1)=yes
6f57a957 5503 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
7083c021
AC
5504 # Warning - without using the other runtime loading flags (-brtl),
5505 # -berok will link without error, but may produce a broken library.
5506 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5507 # Determine the default libpath from the value encoded in an
5508 # empty executable.
b6d0720c 5509 _LT_SYS_MODULE_PATH_AIX([$1])
6f57a957
AC
5510 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5511 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
7083c021 5512 else
6f57a957
AC
5513 if test ia64 = "$host_cpu"; then
5514 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
7083c021 5515 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6f57a957 5516 _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"
7083c021
AC
5517 else
5518 # Determine the default libpath from the value encoded in an
5519 # empty executable.
b6d0720c 5520 _LT_SYS_MODULE_PATH_AIX([$1])
6f57a957 5521 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
7083c021
AC
5522 # Warning - without using the other run time loading flags,
5523 # -berok will link without error, but may produce a broken library.
6f57a957
AC
5524 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
5525 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
5526 if test yes = "$with_gnu_ld"; then
b6d0720c 5527 # We only use this code for GNU lds that support --whole-archive.
6f57a957 5528 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
b6d0720c
AC
5529 else
5530 # Exported symbols can be pulled into shared objects from archives
5531 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5532 fi
7083c021 5533 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6f57a957
AC
5534 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
5535 # -brtl affects multiple linker settings, -berok does not and is overridden later
5536 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
5537 if test svr4 != "$with_aix_soname"; then
5538 # This is similar to how AIX traditionally builds its shared libraries.
5539 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
5540 fi
5541 if test aix != "$with_aix_soname"; then
5542 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
5543 else
5544 # used by -dlpreopen to get the symbols
5545 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
5546 fi
5547 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
7083c021
AC
5548 fi
5549 fi
5550 ;;
db137867 5551
7083c021
AC
5552 amigaos*)
5553 case $host_cpu in
5554 powerpc)
5555 # see comment about AmigaOS4 .so support
6f57a957 5556 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7083c021
AC
5557 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5558 ;;
5559 m68k)
5560 _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)'
5561 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5562 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5563 ;;
5564 esac
5565 ;;
db137867 5566
7083c021
AC
5567 bsdi[[45]]*)
5568 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5569 ;;
db137867 5570
7083c021
AC
5571 cygwin* | mingw* | pw32* | cegcc*)
5572 # When not using gcc, we currently assume that we are using
5573 # Microsoft Visual C++.
5574 # hardcode_libdir_flag_spec is actually meaningless, as there is
5575 # no search path for DLLs.
b6d0720c
AC
5576 case $cc_basename in
5577 cl*)
5578 # Native MSVC
5579 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5580 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5581 _LT_TAGVAR(always_export_symbols, $1)=yes
5582 _LT_TAGVAR(file_list_spec, $1)='@'
5583 # Tell ltmain to make .lib files, not .a files.
5584 libext=lib
5585 # Tell ltmain to make .dll files, not .so files.
6f57a957 5586 shrext_cmds=.dll
b6d0720c 5587 # FIXME: Setting linknames here is a bad hack.
6f57a957
AC
5588 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
5589 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5590 cp "$export_symbols" "$output_objdir/$soname.def";
5591 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
5592 else
5593 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
5594 fi~
5595 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5596 linknames='
b6d0720c
AC
5597 # The linker will not automatically build a static lib if we build a DLL.
5598 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5599 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
a949ab1a 5600 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
b6d0720c
AC
5601 _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'
5602 # Don't use ranlib
5603 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5604 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6f57a957
AC
5605 lt_tool_outputfile="@TOOL_OUTPUT@"~
5606 case $lt_outputfile in
5607 *.exe|*.EXE) ;;
5608 *)
5609 lt_outputfile=$lt_outputfile.exe
5610 lt_tool_outputfile=$lt_tool_outputfile.exe
5611 ;;
5612 esac~
5613 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
5614 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5615 $RM "$lt_outputfile.manifest";
5616 fi'
b6d0720c
AC
5617 ;;
5618 *)
5619 # Assume MSVC wrapper
5620 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5621 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5622 # Tell ltmain to make .lib files, not .a files.
5623 libext=lib
5624 # Tell ltmain to make .dll files, not .so files.
6f57a957 5625 shrext_cmds=.dll
b6d0720c
AC
5626 # FIXME: Setting linknames here is a bad hack.
5627 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5628 # The linker will automatically build a .lib file if we build a DLL.
5629 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5630 # FIXME: Should let the user specify the lib program.
5631 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5632 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5633 ;;
5634 esac
7083c021 5635 ;;
db137867 5636
7083c021
AC
5637 darwin* | rhapsody*)
5638 _LT_DARWIN_LINKER_FEATURES($1)
5639 ;;
db137867 5640
7083c021
AC
5641 dgux*)
5642 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5643 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5644 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5645 ;;
db137867 5646
7083c021
AC
5647 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5648 # support. Future versions do this automatically, but an explicit c++rt0.o
5649 # does not break anything, and helps significantly (at the cost of a little
5650 # extra space).
5651 freebsd2.2*)
5652 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5653 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5654 _LT_TAGVAR(hardcode_direct, $1)=yes
5655 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5656 ;;
db137867 5657
7083c021 5658 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
a949ab1a 5659 freebsd2.*)
7083c021
AC
5660 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5661 _LT_TAGVAR(hardcode_direct, $1)=yes
5662 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5663 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5664 ;;
db137867 5665
7083c021
AC
5666 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5667 freebsd* | dragonfly*)
b6d0720c 5668 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5669 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5670 _LT_TAGVAR(hardcode_direct, $1)=yes
5671 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5672 ;;
db137867 5673
7083c021 5674 hpux9*)
6f57a957
AC
5675 if test yes = "$GCC"; then
5676 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
7083c021 5677 else
6f57a957 5678 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
7083c021 5679 fi
6f57a957 5680 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
7083c021
AC
5681 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5682 _LT_TAGVAR(hardcode_direct, $1)=yes
db137867 5683
7083c021
AC
5684 # hardcode_minus_L: Not really in the search PATH,
5685 # but as the default location of the library.
5686 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6f57a957 5687 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7083c021 5688 ;;
db137867 5689
7083c021 5690 hpux10*)
6f57a957
AC
5691 if test yes,no = "$GCC,$with_gnu_ld"; then
5692 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5693 else
5694 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5695 fi
6f57a957
AC
5696 if test no = "$with_gnu_ld"; then
5697 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
7083c021
AC
5698 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5699 _LT_TAGVAR(hardcode_direct, $1)=yes
5700 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6f57a957 5701 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7083c021
AC
5702 # hardcode_minus_L: Not really in the search PATH,
5703 # but as the default location of the library.
5704 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5705 fi
5706 ;;
db137867 5707
7083c021 5708 hpux11*)
6f57a957 5709 if test yes,no = "$GCC,$with_gnu_ld"; then
7083c021
AC
5710 case $host_cpu in
5711 hppa*64*)
6f57a957 5712 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5713 ;;
5714 ia64*)
6f57a957 5715 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5716 ;;
5717 *)
6f57a957 5718 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5719 ;;
5720 esac
5721 else
5722 case $host_cpu in
5723 hppa*64*)
6f57a957 5724 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5725 ;;
5726 ia64*)
6f57a957 5727 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5728 ;;
5729 *)
b6d0720c
AC
5730 m4_if($1, [], [
5731 # Older versions of the 11.00 compiler do not understand -b yet
5732 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5733 _LT_LINKER_OPTION([if $CC understands -b],
5734 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
6f57a957 5735 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
b6d0720c 5736 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
6f57a957 5737 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
7083c021
AC
5738 ;;
5739 esac
5740 fi
6f57a957
AC
5741 if test no = "$with_gnu_ld"; then
5742 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
7083c021 5743 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
db137867 5744
7083c021
AC
5745 case $host_cpu in
5746 hppa*64*|ia64*)
5747 _LT_TAGVAR(hardcode_direct, $1)=no
5748 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5749 ;;
5750 *)
5751 _LT_TAGVAR(hardcode_direct, $1)=yes
5752 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6f57a957 5753 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
db137867 5754
7083c021
AC
5755 # hardcode_minus_L: Not really in the search PATH,
5756 # but as the default location of the library.
5757 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5758 ;;
5759 esac
5760 fi
5761 ;;
db137867 5762
7083c021 5763 irix5* | irix6* | nonstopux*)
6f57a957
AC
5764 if test yes = "$GCC"; then
5765 _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'
7083c021
AC
5766 # Try to use the -exported_symbol ld option, if it does not
5767 # work, assume that -exports_file does not work either and
5768 # implicitly export all symbols.
b6d0720c
AC
5769 # This should be the same for all languages, so no per-tag cache variable.
5770 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5771 [lt_cv_irix_exported_symbol],
6f57a957
AC
5772 [save_LDFLAGS=$LDFLAGS
5773 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
b6d0720c
AC
5774 AC_LINK_IFELSE(
5775 [AC_LANG_SOURCE(
5776 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5777 [C++], [[int foo (void) { return 0; }]],
5778 [Fortran 77], [[
5779 subroutine foo
5780 end]],
5781 [Fortran], [[
5782 subroutine foo
5783 end]])])],
5784 [lt_cv_irix_exported_symbol=yes],
5785 [lt_cv_irix_exported_symbol=no])
6f57a957
AC
5786 LDFLAGS=$save_LDFLAGS])
5787 if test yes = "$lt_cv_irix_exported_symbol"; then
5788 _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'
b6d0720c 5789 fi
7083c021 5790 else
6f57a957
AC
5791 _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'
5792 _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'
7083c021
AC
5793 fi
5794 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
6f57a957 5795 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7083c021
AC
5796 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5797 _LT_TAGVAR(inherit_rpath, $1)=yes
5798 _LT_TAGVAR(link_all_deplibs, $1)=yes
5799 ;;
db137867 5800
6f57a957
AC
5801 linux*)
5802 case $cc_basename in
5803 tcc*)
5804 # Fabrice Bellard et al's Tiny C Compiler
5805 _LT_TAGVAR(ld_shlibs, $1)=yes
5806 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5807 ;;
5808 esac
5809 ;;
5810
bf4e01a4 5811 netbsd*)
7083c021
AC
5812 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5813 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5814 else
5815 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5816 fi
5817 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5818 _LT_TAGVAR(hardcode_direct, $1)=yes
5819 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5820 ;;
db137867 5821
7083c021
AC
5822 newsos6)
5823 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5824 _LT_TAGVAR(hardcode_direct, $1)=yes
6f57a957 5825 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7083c021
AC
5826 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5827 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5828 ;;
db137867 5829
7083c021
AC
5830 *nto* | *qnx*)
5831 ;;
db137867 5832
6f57a957 5833 openbsd* | bitrig*)
7083c021
AC
5834 if test -f /usr/libexec/ld.so; then
5835 _LT_TAGVAR(hardcode_direct, $1)=yes
5836 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5837 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6f57a957 5838 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
7083c021 5839 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
6f57a957
AC
5840 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
5841 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5842 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7083c021 5843 else
6f57a957
AC
5844 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5845 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7083c021
AC
5846 fi
5847 else
5848 _LT_TAGVAR(ld_shlibs, $1)=no
5849 fi
5850 ;;
db137867 5851
7083c021
AC
5852 os2*)
5853 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5854 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5855 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6f57a957
AC
5856 shrext_cmds=.dll
5857 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5858 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5859 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5860 $ECHO EXPORTS >> $output_objdir/$libname.def~
5861 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5862 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5863 emximp -o $lib $output_objdir/$libname.def'
5864 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5865 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5866 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5867 $ECHO EXPORTS >> $output_objdir/$libname.def~
5868 prefix_cmds="$SED"~
5869 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5870 prefix_cmds="$prefix_cmds -e 1d";
5871 fi~
5872 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5873 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5874 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5875 emximp -o $lib $output_objdir/$libname.def'
5876 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5877 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
7083c021 5878 ;;
db137867 5879
7083c021 5880 osf3*)
6f57a957
AC
5881 if test yes = "$GCC"; then
5882 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5883 _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'
7083c021
AC
5884 else
5885 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6f57a957 5886 _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'
7083c021
AC
5887 fi
5888 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
6f57a957 5889 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7083c021
AC
5890 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5891 ;;
db137867 5892
7083c021 5893 osf4* | osf5*) # as osf3* with the addition of -msym flag
6f57a957
AC
5894 if test yes = "$GCC"; then
5895 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5896 _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'
5897 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7083c021
AC
5898 else
5899 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6f57a957 5900 _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'
7083c021 5901 _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~
6f57a957 5902 $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'
db137867 5903
7083c021
AC
5904 # Both c and cxx compiler support -rpath directly
5905 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5906 fi
5907 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5908 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5909 ;;
db137867 5910
7083c021
AC
5911 solaris*)
5912 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
6f57a957
AC
5913 if test yes = "$GCC"; then
5914 wlarc='$wl'
5915 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021 5916 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6f57a957 5917 $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'
7083c021
AC
5918 else
5919 case `$CC -V 2>&1` in
5920 *"Compilers 5.0"*)
5921 wlarc=''
6f57a957 5922 _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
7083c021 5923 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6f57a957 5924 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
7083c021
AC
5925 ;;
5926 *)
6f57a957
AC
5927 wlarc='$wl'
5928 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021 5929 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6f57a957 5930 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
7083c021
AC
5931 ;;
5932 esac
5933 fi
5934 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5935 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5936 case $host_os in
5937 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5938 *)
5939 # The compiler driver will combine and reorder linker options,
6f57a957 5940 # but understands '-z linker_flag'. GCC discards it without '$wl',
7083c021
AC
5941 # but is careful enough not to reorder.
5942 # Supported since Solaris 2.6 (maybe 2.5.1?)
6f57a957
AC
5943 if test yes = "$GCC"; then
5944 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7083c021
AC
5945 else
5946 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5947 fi
5948 ;;
5949 esac
5950 _LT_TAGVAR(link_all_deplibs, $1)=yes
5951 ;;
db137867 5952
7083c021 5953 sunos4*)
6f57a957 5954 if test sequent = "$host_vendor"; then
7083c021
AC
5955 # Use $CC to link under sequent, because it throws in some extra .o
5956 # files that make .init and .fini sections work.
6f57a957 5957 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5958 else
5959 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5960 fi
5961 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5962 _LT_TAGVAR(hardcode_direct, $1)=yes
5963 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5964 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5965 ;;
db137867 5966
7083c021
AC
5967 sysv4)
5968 case $host_vendor in
5969 sni)
5970 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5971 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5972 ;;
5973 siemens)
5974 ## LD is ld it makes a PLAMLIB
5975 ## CC just makes a GrossModule.
5976 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5977 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5978 _LT_TAGVAR(hardcode_direct, $1)=no
5979 ;;
5980 motorola)
5981 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5982 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5983 ;;
5984 esac
5985 runpath_var='LD_RUN_PATH'
5986 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5987 ;;
db137867 5988
7083c021
AC
5989 sysv4.3*)
5990 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5991 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5992 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5993 ;;
db137867 5994
7083c021
AC
5995 sysv4*MP*)
5996 if test -d /usr/nec; then
5997 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5998 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5999 runpath_var=LD_RUN_PATH
6000 hardcode_runpath_var=yes
6001 _LT_TAGVAR(ld_shlibs, $1)=yes
6002 fi
6003 ;;
db137867 6004
7083c021 6005 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6f57a957 6006 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7083c021
AC
6007 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6008 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6009 runpath_var='LD_RUN_PATH'
db137867 6010
6f57a957
AC
6011 if test yes = "$GCC"; then
6012 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6013 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021 6014 else
6f57a957
AC
6015 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6016 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
6017 fi
6018 ;;
db137867 6019
7083c021 6020 sysv5* | sco3.2v5* | sco5v6*)
6f57a957 6021 # Note: We CANNOT use -z defs as we might desire, because we do not
7083c021
AC
6022 # link with -lc, and that would cause any symbols used from libc to
6023 # always be unresolved, which means just about no library would
6024 # ever link correctly. If we're not using GNU ld we use -z text
6025 # though, which does catch some bad symbols but isn't as heavy-handed
6026 # as -z defs.
6f57a957
AC
6027 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6028 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7083c021
AC
6029 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6030 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6f57a957 6031 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7083c021
AC
6032 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6033 _LT_TAGVAR(link_all_deplibs, $1)=yes
6f57a957 6034 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7083c021 6035 runpath_var='LD_RUN_PATH'
db137867 6036
6f57a957
AC
6037 if test yes = "$GCC"; then
6038 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6039 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021 6040 else
6f57a957
AC
6041 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6042 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
6043 fi
6044 ;;
db137867 6045
7083c021
AC
6046 uts4*)
6047 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6048 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6049 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6050 ;;
db137867 6051
7083c021
AC
6052 *)
6053 _LT_TAGVAR(ld_shlibs, $1)=no
6054 ;;
6055 esac
db137867 6056
6f57a957 6057 if test sni = "$host_vendor"; then
7083c021
AC
6058 case $host in
6059 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6f57a957 6060 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
7083c021
AC
6061 ;;
6062 esac
6063 fi
6064 fi
6065])
6066AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6f57a957 6067test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
db137867 6068
7083c021 6069_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
b676ea3b 6070
7083c021
AC
6071_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6072_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6073_LT_DECL([], [extract_expsyms_cmds], [2],
6074 [The commands to extract the exported symbol list from a shared archive])
db137867 6075
7083c021
AC
6076#
6077# Do we need to explicitly link libc?
6078#
6079case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6080x|xyes)
6081 # Assume -lc should be added
6082 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
db137867 6083
6f57a957 6084 if test yes,yes = "$GCC,$enable_shared"; then
7083c021
AC
6085 case $_LT_TAGVAR(archive_cmds, $1) in
6086 *'~'*)
6087 # FIXME: we may have to deal with multi-command sequences.
6088 ;;
6089 '$CC '*)
6090 # Test whether the compiler implicitly links with -lc since on some
6091 # systems, -lgcc has to come before -lc. If gcc already passes -lc
6092 # to ld, don't add -lc before -lgcc.
b6d0720c
AC
6093 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6094 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6095 [$RM conftest*
6096 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6097
6098 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6099 soname=conftest
6100 lib=conftest
6101 libobjs=conftest.$ac_objext
6102 deplibs=
6103 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6104 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6105 compiler_flags=-v
6106 linker_flags=-v
6107 verstring=
6108 output_objdir=.
6109 libname=conftest
6110 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6111 _LT_TAGVAR(allow_undefined_flag, $1)=
6112 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6113 then
6114 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6115 else
6116 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6117 fi
6118 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6119 else
6120 cat conftest.err 1>&5
6121 fi
6122 $RM conftest*
6123 ])
6124 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
7083c021
AC
6125 ;;
6126 esac
6127 fi
6128 ;;
6129esac
db137867 6130
7083c021
AC
6131_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6132 [Whether or not to add -lc for building shared libraries])
6133_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6134 [enable_shared_with_static_runtimes], [0],
6135 [Whether or not to disallow shared libs when runtime libs are static])
6136_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6137 [Compiler flag to allow reflexive dlopens])
6138_LT_TAGDECL([], [whole_archive_flag_spec], [1],
6139 [Compiler flag to generate shared objects directly from archives])
6140_LT_TAGDECL([], [compiler_needs_object], [1],
6141 [Whether the compiler copes with passing no objects directly])
6142_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6143 [Create an old-style archive from a shared archive])
6144_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6145 [Create a temporary old-style archive to link instead of a shared archive])
6146_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6147_LT_TAGDECL([], [archive_expsym_cmds], [2])
6148_LT_TAGDECL([], [module_cmds], [2],
6149 [Commands used to build a loadable module if different from building
6150 a shared archive.])
6151_LT_TAGDECL([], [module_expsym_cmds], [2])
6152_LT_TAGDECL([], [with_gnu_ld], [1],
6153 [Whether we are building with GNU ld or not])
6154_LT_TAGDECL([], [allow_undefined_flag], [1],
6155 [Flag that allows shared libraries with undefined symbols to be built])
6156_LT_TAGDECL([], [no_undefined_flag], [1],
6157 [Flag that enforces no undefined symbols])
6158_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6159 [Flag to hardcode $libdir into a binary during linking.
6160 This must work even if $libdir does not exist])
7083c021
AC
6161_LT_TAGDECL([], [hardcode_libdir_separator], [1],
6162 [Whether we need a single "-rpath" flag with a separated argument])
6163_LT_TAGDECL([], [hardcode_direct], [0],
6f57a957 6164 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
7083c021
AC
6165 DIR into the resulting binary])
6166_LT_TAGDECL([], [hardcode_direct_absolute], [0],
6f57a957 6167 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
7083c021 6168 DIR into the resulting binary and the resulting library dependency is
6f57a957 6169 "absolute", i.e impossible to change by setting $shlibpath_var if the
7083c021
AC
6170 library is relocated])
6171_LT_TAGDECL([], [hardcode_minus_L], [0],
6172 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6173 into the resulting binary])
6174_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6175 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6176 into the resulting binary])
6177_LT_TAGDECL([], [hardcode_automatic], [0],
6178 [Set to "yes" if building a shared library automatically hardcodes DIR
6179 into the library and all subsequent libraries and executables linked
6180 against it])
6181_LT_TAGDECL([], [inherit_rpath], [0],
6182 [Set to yes if linker adds runtime paths of dependent libraries
6183 to runtime path list])
6184_LT_TAGDECL([], [link_all_deplibs], [0],
6185 [Whether libtool must link a program against all its dependency libraries])
7083c021
AC
6186_LT_TAGDECL([], [always_export_symbols], [0],
6187 [Set to "yes" if exported symbols are required])
6188_LT_TAGDECL([], [export_symbols_cmds], [2],
6189 [The commands to list exported symbols])
6190_LT_TAGDECL([], [exclude_expsyms], [1],
6191 [Symbols that should not be listed in the preloaded symbols])
6192_LT_TAGDECL([], [include_expsyms], [1],
6193 [Symbols that must always be exported])
6194_LT_TAGDECL([], [prelink_cmds], [2],
6195 [Commands necessary for linking programs (against libraries) with templates])
b6d0720c
AC
6196_LT_TAGDECL([], [postlink_cmds], [2],
6197 [Commands necessary for finishing linking programs])
7083c021
AC
6198_LT_TAGDECL([], [file_list_spec], [1],
6199 [Specify filename containing input files])
6200dnl FIXME: Not yet implemented
6201dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6202dnl [Compiler flag to generate thread safe objects])
6203])# _LT_LINKER_SHLIBS
6204
6205
6206# _LT_LANG_C_CONFIG([TAG])
6207# ------------------------
6208# Ensure that the configuration variables for a C compiler are suitably
6209# defined. These variables are subsequently used by _LT_CONFIG to write
6f57a957 6210# the compiler configuration to 'libtool'.
7083c021
AC
6211m4_defun([_LT_LANG_C_CONFIG],
6212[m4_require([_LT_DECL_EGREP])dnl
6f57a957 6213lt_save_CC=$CC
7083c021 6214AC_LANG_PUSH(C)
db137867 6215
7083c021
AC
6216# Source file extension for C test sources.
6217ac_ext=c
db137867 6218
7083c021
AC
6219# Object file extension for compiled C test sources.
6220objext=o
6221_LT_TAGVAR(objext, $1)=$objext
db137867 6222
7083c021
AC
6223# Code to be used in simple compile tests
6224lt_simple_compile_test_code="int some_variable = 0;"
db137867 6225
7083c021
AC
6226# Code to be used in simple link tests
6227lt_simple_link_test_code='int main(){return(0);}'
db137867 6228
7083c021
AC
6229_LT_TAG_COMPILER
6230# Save the default compiler, since it gets overwritten when the other
6231# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6232compiler_DEFAULT=$CC
db137867 6233
7083c021
AC
6234# save warnings/boilerplate of simple test code
6235_LT_COMPILER_BOILERPLATE
6236_LT_LINKER_BOILERPLATE
db137867 6237
7083c021
AC
6238if test -n "$compiler"; then
6239 _LT_COMPILER_NO_RTTI($1)
6240 _LT_COMPILER_PIC($1)
6241 _LT_COMPILER_C_O($1)
6242 _LT_COMPILER_FILE_LOCKS($1)
6243 _LT_LINKER_SHLIBS($1)
6244 _LT_SYS_DYNAMIC_LINKER($1)
6245 _LT_LINKER_HARDCODE_LIBPATH($1)
6246 LT_SYS_DLOPEN_SELF
6247 _LT_CMD_STRIPLIB
6248
6f57a957 6249 # Report what library types will actually be built
7083c021
AC
6250 AC_MSG_CHECKING([if libtool supports shared libraries])
6251 AC_MSG_RESULT([$can_build_shared])
6252
6253 AC_MSG_CHECKING([whether to build shared libraries])
6f57a957 6254 test no = "$can_build_shared" && enable_shared=no
7083c021
AC
6255
6256 # On AIX, shared libraries and static libraries use the same namespace, and
6257 # are all built from PIC.
6258 case $host_os in
6259 aix3*)
6f57a957 6260 test yes = "$enable_shared" && enable_static=no
7083c021
AC
6261 if test -n "$RANLIB"; then
6262 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6263 postinstall_cmds='$RANLIB $lib'
6264 fi
6265 ;;
db137867 6266
7083c021 6267 aix[[4-9]]*)
6f57a957
AC
6268 if test ia64 != "$host_cpu"; then
6269 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
6270 yes,aix,yes) ;; # shared object as lib.so file only
6271 yes,svr4,*) ;; # shared object as lib.so archive member only
6272 yes,*) enable_static=no ;; # shared object in lib.a archive as well
6273 esac
7083c021
AC
6274 fi
6275 ;;
6276 esac
6277 AC_MSG_RESULT([$enable_shared])
db137867 6278
7083c021
AC
6279 AC_MSG_CHECKING([whether to build static libraries])
6280 # Make sure either enable_shared or enable_static is yes.
6f57a957 6281 test yes = "$enable_shared" || enable_static=yes
7083c021 6282 AC_MSG_RESULT([$enable_static])
db137867 6283
7083c021
AC
6284 _LT_CONFIG($1)
6285fi
6286AC_LANG_POP
6f57a957 6287CC=$lt_save_CC
7083c021 6288])# _LT_LANG_C_CONFIG
db137867 6289
db137867 6290
7083c021
AC
6291# _LT_LANG_CXX_CONFIG([TAG])
6292# --------------------------
6293# Ensure that the configuration variables for a C++ compiler are suitably
6294# defined. These variables are subsequently used by _LT_CONFIG to write
6f57a957 6295# the compiler configuration to 'libtool'.
7083c021 6296m4_defun([_LT_LANG_CXX_CONFIG],
b6d0720c 6297[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7083c021 6298m4_require([_LT_DECL_EGREP])dnl
b6d0720c 6299m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6f57a957
AC
6300if test -n "$CXX" && ( test no != "$CXX" &&
6301 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6302 (test g++ != "$CXX"))); then
b6d0720c
AC
6303 AC_PROG_CXXCPP
6304else
6305 _lt_caught_CXX_error=yes
6306fi
7083c021
AC
6307
6308AC_LANG_PUSH(C++)
6309_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6310_LT_TAGVAR(allow_undefined_flag, $1)=
6311_LT_TAGVAR(always_export_symbols, $1)=no
6312_LT_TAGVAR(archive_expsym_cmds, $1)=
6313_LT_TAGVAR(compiler_needs_object, $1)=no
6314_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6315_LT_TAGVAR(hardcode_direct, $1)=no
6316_LT_TAGVAR(hardcode_direct_absolute, $1)=no
6317_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7083c021
AC
6318_LT_TAGVAR(hardcode_libdir_separator, $1)=
6319_LT_TAGVAR(hardcode_minus_L, $1)=no
6320_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6321_LT_TAGVAR(hardcode_automatic, $1)=no
6322_LT_TAGVAR(inherit_rpath, $1)=no
6323_LT_TAGVAR(module_cmds, $1)=
6324_LT_TAGVAR(module_expsym_cmds, $1)=
6325_LT_TAGVAR(link_all_deplibs, $1)=unknown
6326_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
b6d0720c
AC
6327_LT_TAGVAR(reload_flag, $1)=$reload_flag
6328_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7083c021
AC
6329_LT_TAGVAR(no_undefined_flag, $1)=
6330_LT_TAGVAR(whole_archive_flag_spec, $1)=
6331_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
db137867 6332
7083c021
AC
6333# Source file extension for C++ test sources.
6334ac_ext=cpp
db137867 6335
7083c021
AC
6336# Object file extension for compiled C++ test sources.
6337objext=o
6338_LT_TAGVAR(objext, $1)=$objext
6339
6340# No sense in running all these tests if we already determined that
6341# the CXX compiler isn't working. Some variables (like enable_shared)
6342# are currently assumed to apply to all compilers on this platform,
6343# and will be corrupted by setting them based on a non-working compiler.
6f57a957 6344if test yes != "$_lt_caught_CXX_error"; then
7083c021
AC
6345 # Code to be used in simple compile tests
6346 lt_simple_compile_test_code="int some_variable = 0;"
6347
6348 # Code to be used in simple link tests
6349 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6350
6351 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6352 _LT_TAG_COMPILER
6353
6354 # save warnings/boilerplate of simple test code
6355 _LT_COMPILER_BOILERPLATE
6356 _LT_LINKER_BOILERPLATE
6357
6358 # Allow CC to be a program name with arguments.
6359 lt_save_CC=$CC
b6d0720c 6360 lt_save_CFLAGS=$CFLAGS
7083c021
AC
6361 lt_save_LD=$LD
6362 lt_save_GCC=$GCC
6363 GCC=$GXX
6364 lt_save_with_gnu_ld=$with_gnu_ld
6365 lt_save_path_LD=$lt_cv_path_LD
6366 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6367 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6368 else
6369 $as_unset lt_cv_prog_gnu_ld
6370 fi
6371 if test -n "${lt_cv_path_LDCXX+set}"; then
6372 lt_cv_path_LD=$lt_cv_path_LDCXX
6373 else
6374 $as_unset lt_cv_path_LD
6375 fi
6376 test -z "${LDCXX+set}" || LD=$LDCXX
6377 CC=${CXX-"c++"}
b6d0720c 6378 CFLAGS=$CXXFLAGS
7083c021
AC
6379 compiler=$CC
6380 _LT_TAGVAR(compiler, $1)=$CC
6381 _LT_CC_BASENAME([$compiler])
db137867 6382
7083c021
AC
6383 if test -n "$compiler"; then
6384 # We don't want -fno-exception when compiling C++ code, so set the
6385 # no_builtin_flag separately
6f57a957 6386 if test yes = "$GXX"; then
7083c021
AC
6387 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6388 else
6389 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6390 fi
db137867 6391
6f57a957 6392 if test yes = "$GXX"; then
7083c021 6393 # Set up default GNU C++ configuration
db137867 6394
7083c021 6395 LT_PATH_LD
db137867 6396
7083c021
AC
6397 # Check if GNU C++ uses GNU ld as the underlying linker, since the
6398 # archiving commands below assume that GNU ld is being used.
6f57a957
AC
6399 if test yes = "$with_gnu_ld"; then
6400 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6401 _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'
db137867 6402
6f57a957
AC
6403 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6404 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
db137867 6405
7083c021
AC
6406 # If archive_cmds runs LD, not CC, wlarc should be empty
6407 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6408 # investigate it a little bit more. (MM)
6f57a957 6409 wlarc='$wl'
db137867 6410
7083c021
AC
6411 # ancient GNU ld didn't support --whole-archive et. al.
6412 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6413 $GREP 'no-whole-archive' > /dev/null; then
6f57a957 6414 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7083c021
AC
6415 else
6416 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6417 fi
6418 else
6419 with_gnu_ld=no
6420 wlarc=
6421
6422 # A generic and very simple default shared library creation
6423 # command for GNU C++ for the case where it uses the native
6424 # linker, instead of GNU ld. If possible, this setting should
6425 # overridden to take advantage of the native linker features on
6426 # the platform it is being used on.
6427 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6428 fi
db137867 6429
7083c021
AC
6430 # Commands to make compiler produce verbose output that lists
6431 # what "hidden" libraries, object files and flags are used when
6432 # linking a shared library.
b6d0720c 6433 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
db137867 6434
7083c021
AC
6435 else
6436 GXX=no
6437 with_gnu_ld=no
6438 wlarc=
6439 fi
db137867 6440
7083c021
AC
6441 # PORTME: fill in a description of your system's C++ link characteristics
6442 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
6443 _LT_TAGVAR(ld_shlibs, $1)=yes
6444 case $host_os in
6445 aix3*)
6446 # FIXME: insert proper C++ library support
6447 _LT_TAGVAR(ld_shlibs, $1)=no
6448 ;;
6449 aix[[4-9]]*)
6f57a957 6450 if test ia64 = "$host_cpu"; then
7083c021
AC
6451 # On IA64, the linker does run time linking by default, so we don't
6452 # have to do anything special.
6453 aix_use_runtimelinking=no
6454 exp_sym_flag='-Bexport'
6f57a957 6455 no_entry_flag=
7083c021
AC
6456 else
6457 aix_use_runtimelinking=no
6458
6459 # Test if we are trying to use run time linking or normal
6460 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6f57a957
AC
6461 # have runtime linking enabled, and use it for executables.
6462 # For shared libraries, we enable/disable runtime linking
6463 # depending on the kind of the shared library created -
6464 # when "with_aix_soname,aix_use_runtimelinking" is:
6465 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
6466 # "aix,yes" lib.so shared, rtl:yes, for executables
6467 # lib.a static archive
6468 # "both,no" lib.so.V(shr.o) shared, rtl:yes
6469 # lib.a(lib.so.V) shared, rtl:no, for executables
6470 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
6471 # lib.a(lib.so.V) shared, rtl:no
6472 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
6473 # lib.a static archive
7083c021
AC
6474 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6475 for ld_flag in $LDFLAGS; do
6476 case $ld_flag in
6477 *-brtl*)
6478 aix_use_runtimelinking=yes
6479 break
6480 ;;
6481 esac
6482 done
6f57a957
AC
6483 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
6484 # With aix-soname=svr4, we create the lib.so.V shared archives only,
6485 # so we don't have lib.a shared libs to link our executables.
6486 # We have to force runtime linking in this case.
6487 aix_use_runtimelinking=yes
6488 LDFLAGS="$LDFLAGS -Wl,-brtl"
6489 fi
7083c021
AC
6490 ;;
6491 esac
db137867 6492
7083c021
AC
6493 exp_sym_flag='-bexport'
6494 no_entry_flag='-bnoentry'
6495 fi
db137867 6496
7083c021
AC
6497 # When large executables or shared objects are built, AIX ld can
6498 # have problems creating the table of contents. If linking a library
6499 # or program results in "error TOC overflow" add -mminimal-toc to
6500 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6501 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6502
6503 _LT_TAGVAR(archive_cmds, $1)=''
6504 _LT_TAGVAR(hardcode_direct, $1)=yes
6505 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6506 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6507 _LT_TAGVAR(link_all_deplibs, $1)=yes
6f57a957
AC
6508 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
6509 case $with_aix_soname,$aix_use_runtimelinking in
6510 aix,*) ;; # no import file
6511 svr4,* | *,yes) # use import file
6512 # The Import File defines what to hardcode.
6513 _LT_TAGVAR(hardcode_direct, $1)=no
6514 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6515 ;;
6516 esac
7083c021 6517
6f57a957 6518 if test yes = "$GXX"; then
7083c021
AC
6519 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6520 # We only want to do this on AIX 4.2 and lower, the check
6521 # below for broken collect2 doesn't work under 4.3+
6f57a957 6522 collect2name=`$CC -print-prog-name=collect2`
7083c021
AC
6523 if test -f "$collect2name" &&
6524 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6525 then
6526 # We have reworked collect2
6527 :
6528 else
6529 # We have old collect2
6530 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6531 # It fails to find uninstalled libraries when the uninstalled
6532 # path is not listed in the libpath. Setting hardcode_minus_L
6533 # to unsupported forces relinking
6534 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6535 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6536 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6537 fi
6538 esac
6539 shared_flag='-shared'
6f57a957
AC
6540 if test yes = "$aix_use_runtimelinking"; then
6541 shared_flag=$shared_flag' $wl-G'
7083c021 6542 fi
6f57a957
AC
6543 # Need to ensure runtime linking is disabled for the traditional
6544 # shared library, or the linker may eventually find shared libraries
6545 # /with/ Import File - we do not want to mix them.
6546 shared_flag_aix='-shared'
6547 shared_flag_svr4='-shared $wl-G'
7083c021
AC
6548 else
6549 # not using gcc
6f57a957 6550 if test ia64 = "$host_cpu"; then
7083c021
AC
6551 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6552 # chokes on -Wl,-G. The following line is correct:
6553 shared_flag='-G'
6554 else
6f57a957
AC
6555 if test yes = "$aix_use_runtimelinking"; then
6556 shared_flag='$wl-G'
7083c021 6557 else
6f57a957 6558 shared_flag='$wl-bM:SRE'
7083c021 6559 fi
6f57a957
AC
6560 shared_flag_aix='$wl-bM:SRE'
6561 shared_flag_svr4='$wl-G'
7083c021
AC
6562 fi
6563 fi
db137867 6564
6f57a957 6565 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
7083c021
AC
6566 # It seems that -bexpall does not export symbols beginning with
6567 # underscore (_), so it is better to generate a list of symbols to
6568 # export.
6569 _LT_TAGVAR(always_export_symbols, $1)=yes
6f57a957 6570 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
7083c021
AC
6571 # Warning - without using the other runtime loading flags (-brtl),
6572 # -berok will link without error, but may produce a broken library.
6f57a957
AC
6573 # The "-G" linker flag allows undefined symbols.
6574 _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
7083c021
AC
6575 # Determine the default libpath from the value encoded in an empty
6576 # executable.
b6d0720c 6577 _LT_SYS_MODULE_PATH_AIX([$1])
6f57a957 6578 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
7083c021 6579
6f57a957 6580 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
7083c021 6581 else
6f57a957
AC
6582 if test ia64 = "$host_cpu"; then
6583 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
7083c021 6584 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6f57a957 6585 _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"
7083c021
AC
6586 else
6587 # Determine the default libpath from the value encoded in an
6588 # empty executable.
b6d0720c 6589 _LT_SYS_MODULE_PATH_AIX([$1])
6f57a957 6590 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
7083c021
AC
6591 # Warning - without using the other run time loading flags,
6592 # -berok will link without error, but may produce a broken library.
6f57a957
AC
6593 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
6594 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
6595 if test yes = "$with_gnu_ld"; then
b6d0720c 6596 # We only use this code for GNU lds that support --whole-archive.
6f57a957 6597 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
b6d0720c
AC
6598 else
6599 # Exported symbols can be pulled into shared objects from archives
6600 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6601 fi
7083c021 6602 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6f57a957
AC
6603 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
6604 # -brtl affects multiple linker settings, -berok does not and is overridden later
6605 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
6606 if test svr4 != "$with_aix_soname"; then
6607 # This is similar to how AIX traditionally builds its shared
6608 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
6609 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
6610 fi
6611 if test aix != "$with_aix_soname"; then
6612 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
6613 else
6614 # used by -dlpreopen to get the symbols
6615 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
6616 fi
6617 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
7083c021
AC
6618 fi
6619 fi
6620 ;;
db137867 6621
7083c021
AC
6622 beos*)
6623 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6624 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6625 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6626 # support --undefined. This deserves some investigation. FIXME
6f57a957 6627 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7083c021
AC
6628 else
6629 _LT_TAGVAR(ld_shlibs, $1)=no
6630 fi
6631 ;;
db137867 6632
7083c021
AC
6633 chorus*)
6634 case $cc_basename in
6635 *)
6636 # FIXME: insert proper C++ library support
6637 _LT_TAGVAR(ld_shlibs, $1)=no
6638 ;;
6639 esac
6640 ;;
db137867 6641
7083c021 6642 cygwin* | mingw* | pw32* | cegcc*)
b6d0720c
AC
6643 case $GXX,$cc_basename in
6644 ,cl* | no,cl*)
6645 # Native MSVC
6646 # hardcode_libdir_flag_spec is actually meaningless, as there is
6647 # no search path for DLLs.
6648 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6649 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6650 _LT_TAGVAR(always_export_symbols, $1)=yes
6651 _LT_TAGVAR(file_list_spec, $1)='@'
6652 # Tell ltmain to make .lib files, not .a files.
6653 libext=lib
6654 # Tell ltmain to make .dll files, not .so files.
6f57a957 6655 shrext_cmds=.dll
b6d0720c 6656 # FIXME: Setting linknames here is a bad hack.
6f57a957
AC
6657 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
6658 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6659 cp "$export_symbols" "$output_objdir/$soname.def";
6660 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
6661 else
6662 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
6663 fi~
6664 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6665 linknames='
b6d0720c
AC
6666 # The linker will not automatically build a static lib if we build a DLL.
6667 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6668 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6669 # Don't use ranlib
6670 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6671 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6f57a957
AC
6672 lt_tool_outputfile="@TOOL_OUTPUT@"~
6673 case $lt_outputfile in
6674 *.exe|*.EXE) ;;
6675 *)
6676 lt_outputfile=$lt_outputfile.exe
6677 lt_tool_outputfile=$lt_tool_outputfile.exe
6678 ;;
6679 esac~
6680 func_to_tool_file "$lt_outputfile"~
6681 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
6682 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6683 $RM "$lt_outputfile.manifest";
6684 fi'
b6d0720c
AC
6685 ;;
6686 *)
6687 # g++
6688 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6689 # as there is no search path for DLLs.
6690 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6f57a957 6691 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
b6d0720c
AC
6692 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6693 _LT_TAGVAR(always_export_symbols, $1)=no
6694 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6695
6696 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6f57a957
AC
6697 _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'
6698 # If the export-symbols file already is a .def file, use it as
6699 # is; otherwise, prepend EXPORTS...
6700 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6701 cp $export_symbols $output_objdir/$soname.def;
6702 else
6703 echo EXPORTS > $output_objdir/$soname.def;
6704 cat $export_symbols >> $output_objdir/$soname.def;
6705 fi~
6706 $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'
b6d0720c
AC
6707 else
6708 _LT_TAGVAR(ld_shlibs, $1)=no
6709 fi
6710 ;;
6711 esac
6712 ;;
7083c021
AC
6713 darwin* | rhapsody*)
6714 _LT_DARWIN_LINKER_FEATURES($1)
6715 ;;
db137867 6716
6f57a957
AC
6717 os2*)
6718 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6719 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6720 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6721 shrext_cmds=.dll
6722 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6723 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6724 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6725 $ECHO EXPORTS >> $output_objdir/$libname.def~
6726 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
6727 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6728 emximp -o $lib $output_objdir/$libname.def'
6729 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6730 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6731 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6732 $ECHO EXPORTS >> $output_objdir/$libname.def~
6733 prefix_cmds="$SED"~
6734 if test EXPORTS = "`$SED 1q $export_symbols`"; then
6735 prefix_cmds="$prefix_cmds -e 1d";
6736 fi~
6737 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
6738 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
6739 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6740 emximp -o $lib $output_objdir/$libname.def'
6741 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
6742 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6743 ;;
6744
7083c021
AC
6745 dgux*)
6746 case $cc_basename in
6747 ec++*)
6748 # FIXME: insert proper C++ library support
6749 _LT_TAGVAR(ld_shlibs, $1)=no
6750 ;;
6751 ghcx*)
6752 # Green Hills C++ Compiler
6753 # FIXME: insert proper C++ library support
6754 _LT_TAGVAR(ld_shlibs, $1)=no
6755 ;;
6756 *)
6757 # FIXME: insert proper C++ library support
6758 _LT_TAGVAR(ld_shlibs, $1)=no
6759 ;;
6760 esac
6761 ;;
db137867 6762
a949ab1a 6763 freebsd2.*)
7083c021
AC
6764 # C++ shared libraries reported to be fairly broken before
6765 # switch to ELF
6766 _LT_TAGVAR(ld_shlibs, $1)=no
6767 ;;
db137867 6768
7083c021
AC
6769 freebsd-elf*)
6770 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6771 ;;
db137867 6772
7083c021
AC
6773 freebsd* | dragonfly*)
6774 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6775 # conventions
6776 _LT_TAGVAR(ld_shlibs, $1)=yes
6777 ;;
db137867 6778
b6d0720c 6779 haiku*)
6f57a957 6780 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
b6d0720c
AC
6781 _LT_TAGVAR(link_all_deplibs, $1)=yes
6782 ;;
6783
7083c021 6784 hpux9*)
6f57a957 6785 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
7083c021 6786 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6f57a957 6787 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7083c021
AC
6788 _LT_TAGVAR(hardcode_direct, $1)=yes
6789 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6790 # but as the default
6791 # location of the library.
6792
6793 case $cc_basename in
6794 CC*)
6795 # FIXME: insert proper C++ library support
6796 _LT_TAGVAR(ld_shlibs, $1)=no
6797 ;;
6798 aCC*)
6f57a957 6799 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
7083c021
AC
6800 # Commands to make compiler produce verbose output that lists
6801 # what "hidden" libraries, object files and flags are used when
6802 # linking a shared library.
6803 #
6804 # There doesn't appear to be a way to prevent this compiler from
6805 # explicitly linking system object files so we need to strip them
6806 # from the output so that they don't get included in the library
6807 # dependencies.
6f57a957 6808 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"'
7083c021
AC
6809 ;;
6810 *)
6f57a957
AC
6811 if test yes = "$GXX"; then
6812 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
7083c021
AC
6813 else
6814 # FIXME: insert proper C++ library support
6815 _LT_TAGVAR(ld_shlibs, $1)=no
6816 fi
6817 ;;
6818 esac
6819 ;;
db137867 6820
7083c021 6821 hpux10*|hpux11*)
6f57a957
AC
6822 if test no = "$with_gnu_ld"; then
6823 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
7083c021
AC
6824 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6825
6826 case $host_cpu in
6827 hppa*64*|ia64*)
6828 ;;
6829 *)
6f57a957 6830 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7083c021
AC
6831 ;;
6832 esac
6833 fi
6834 case $host_cpu in
6835 hppa*64*|ia64*)
6836 _LT_TAGVAR(hardcode_direct, $1)=no
6837 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6838 ;;
6839 *)
6840 _LT_TAGVAR(hardcode_direct, $1)=yes
6841 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6842 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6843 # but as the default
6844 # location of the library.
6845 ;;
6846 esac
6847
6848 case $cc_basename in
6849 CC*)
6850 # FIXME: insert proper C++ library support
6851 _LT_TAGVAR(ld_shlibs, $1)=no
6852 ;;
6853 aCC*)
6854 case $host_cpu in
6855 hppa*64*)
6f57a957 6856 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7083c021
AC
6857 ;;
6858 ia64*)
6f57a957 6859 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7083c021
AC
6860 ;;
6861 *)
6f57a957 6862 _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'
7083c021
AC
6863 ;;
6864 esac
6865 # Commands to make compiler produce verbose output that lists
6866 # what "hidden" libraries, object files and flags are used when
6867 # linking a shared library.
6868 #
6869 # There doesn't appear to be a way to prevent this compiler from
6870 # explicitly linking system object files so we need to strip them
6871 # from the output so that they don't get included in the library
6872 # dependencies.
6f57a957 6873 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"'
7083c021
AC
6874 ;;
6875 *)
6f57a957
AC
6876 if test yes = "$GXX"; then
6877 if test no = "$with_gnu_ld"; then
7083c021
AC
6878 case $host_cpu in
6879 hppa*64*)
6f57a957 6880 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7083c021
AC
6881 ;;
6882 ia64*)
6f57a957 6883 _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'
7083c021
AC
6884 ;;
6885 *)
6f57a957 6886 _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'
7083c021
AC
6887 ;;
6888 esac
6889 fi
6890 else
6891 # FIXME: insert proper C++ library support
6892 _LT_TAGVAR(ld_shlibs, $1)=no
6893 fi
6894 ;;
6895 esac
6896 ;;
db137867 6897
7083c021
AC
6898 interix[[3-9]]*)
6899 _LT_TAGVAR(hardcode_direct, $1)=no
6900 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6f57a957
AC
6901 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6902 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7083c021
AC
6903 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6904 # Instead, shared libraries are loaded at an image base (0x10000000 by
6905 # default) and relocated if they conflict, which is a slow very memory
6906 # consuming and fragmenting process. To avoid this, we pick a random,
6907 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6908 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6f57a957
AC
6909 _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'
6910 _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'
7083c021
AC
6911 ;;
6912 irix5* | irix6*)
6913 case $cc_basename in
6914 CC*)
6915 # SGI C++
6f57a957 6916 _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'
7083c021
AC
6917
6918 # Archives containing C++ object files must be created using
6919 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6920 # necessary to make sure instantiated templates are included
6921 # in the archive.
6922 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6923 ;;
6924 *)
6f57a957
AC
6925 if test yes = "$GXX"; then
6926 if test no = "$with_gnu_ld"; then
6927 _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'
7083c021 6928 else
6f57a957 6929 _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'
7083c021
AC
6930 fi
6931 fi
6932 _LT_TAGVAR(link_all_deplibs, $1)=yes
6933 ;;
6934 esac
6f57a957 6935 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7083c021
AC
6936 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6937 _LT_TAGVAR(inherit_rpath, $1)=yes
6938 ;;
db137867 6939
6f57a957 6940 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
7083c021
AC
6941 case $cc_basename in
6942 KCC*)
6943 # Kuck and Associates, Inc. (KAI) C++ Compiler
6944
6945 # KCC will only create a shared library if the output file
6946 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6947 # to its proper name (with version) after linking.
6f57a957
AC
6948 _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'
6949 _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'
7083c021
AC
6950 # Commands to make compiler produce verbose output that lists
6951 # what "hidden" libraries, object files and flags are used when
6952 # linking a shared library.
6953 #
6954 # There doesn't appear to be a way to prevent this compiler from
6955 # explicitly linking system object files so we need to strip them
6956 # from the output so that they don't get included in the library
6957 # dependencies.
6f57a957 6958 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"'
7083c021 6959
6f57a957
AC
6960 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6961 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7083c021
AC
6962
6963 # Archives containing C++ object files must be created using
6964 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6965 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6966 ;;
6967 icpc* | ecpc* )
6968 # Intel C++
6969 with_gnu_ld=yes
6970 # version 8.0 and above of icpc choke on multiply defined symbols
6971 # if we add $predep_objects and $postdep_objects, however 7.1 and
6972 # earlier do not add the objects themselves.
6973 case `$CC -V 2>&1` in
6974 *"Version 7."*)
6f57a957
AC
6975 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6976 _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'
7083c021
AC
6977 ;;
6978 *) # Version 8.0 or newer
6979 tmp_idyn=
6980 case $host_cpu in
6981 ia64*) tmp_idyn=' -i_dynamic';;
6982 esac
6f57a957
AC
6983 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6984 _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'
7083c021
AC
6985 ;;
6986 esac
6987 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6f57a957
AC
6988 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6989 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6990 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
7083c021
AC
6991 ;;
6992 pgCC* | pgcpp*)
6993 # Portland Group C++ compiler
6994 case `$CC -V` in
b6d0720c 6995 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7083c021 6996 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6f57a957
AC
6997 rm -rf $tpldir~
6998 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
6999 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7083c021 7000 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6f57a957
AC
7001 rm -rf $tpldir~
7002 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
7003 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7004 $RANLIB $oldlib'
7083c021 7005 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6f57a957
AC
7006 rm -rf $tpldir~
7007 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7008 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7083c021 7009 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
6f57a957
AC
7010 rm -rf $tpldir~
7011 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7012 $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'
7083c021 7013 ;;
b6d0720c 7014 *) # Version 6 and above use weak symbols
6f57a957
AC
7015 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7016 _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'
7083c021
AC
7017 ;;
7018 esac
db137867 7019
6f57a957
AC
7020 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
7021 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7022 _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'
7083c021
AC
7023 ;;
7024 cxx*)
7025 # Compaq C++
6f57a957
AC
7026 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7027 _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'
db137867 7028
7083c021
AC
7029 runpath_var=LD_RUN_PATH
7030 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7031 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
db137867 7032
7083c021
AC
7033 # Commands to make compiler produce verbose output that lists
7034 # what "hidden" libraries, object files and flags are used when
7035 # linking a shared library.
7036 #
7037 # There doesn't appear to be a way to prevent this compiler from
7038 # explicitly linking system object files so we need to strip them
7039 # from the output so that they don't get included in the library
7040 # dependencies.
6f57a957 7041 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'
7083c021 7042 ;;
b6d0720c 7043 xl* | mpixl* | bgxl*)
7083c021 7044 # IBM XL 8.0 on PPC, with GNU ld
6f57a957
AC
7045 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7046 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7047 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7048 if test yes = "$supports_anon_versioning"; then
7083c021 7049 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6f57a957
AC
7050 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7051 echo "local: *; };" >> $output_objdir/$libname.ver~
7052 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7083c021
AC
7053 fi
7054 ;;
7055 *)
7056 case `$CC -V 2>&1 | sed 5q` in
7057 *Sun\ C*)
7058 # Sun C++ 5.9
7059 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6f57a957
AC
7060 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7061 _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'
7083c021 7062 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6f57a957 7063 _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'
7083c021
AC
7064 _LT_TAGVAR(compiler_needs_object, $1)=yes
7065
7066 # Not sure whether something based on
7067 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7068 # would be better.
b6d0720c 7069 output_verbose_link_cmd='func_echo_all'
7083c021
AC
7070
7071 # Archives containing C++ object files must be created using
7072 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7073 # necessary to make sure instantiated templates are included
7074 # in the archive.
7075 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7076 ;;
7077 esac
7078 ;;
7079 esac
7080 ;;
db137867 7081
7083c021
AC
7082 lynxos*)
7083 # FIXME: insert proper C++ library support
7084 _LT_TAGVAR(ld_shlibs, $1)=no
7085 ;;
db137867 7086
7083c021
AC
7087 m88k*)
7088 # FIXME: insert proper C++ library support
7089 _LT_TAGVAR(ld_shlibs, $1)=no
7090 ;;
db137867 7091
7083c021
AC
7092 mvs*)
7093 case $cc_basename in
7094 cxx*)
7095 # FIXME: insert proper C++ library support
7096 _LT_TAGVAR(ld_shlibs, $1)=no
7097 ;;
7098 *)
7099 # FIXME: insert proper C++ library support
7100 _LT_TAGVAR(ld_shlibs, $1)=no
7101 ;;
7102 esac
7103 ;;
db137867 7104
7083c021
AC
7105 netbsd*)
7106 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7107 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7108 wlarc=
7109 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7110 _LT_TAGVAR(hardcode_direct, $1)=yes
7111 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7112 fi
7113 # Workaround some broken pre-1.5 toolchains
7114 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7115 ;;
db137867 7116
7083c021
AC
7117 *nto* | *qnx*)
7118 _LT_TAGVAR(ld_shlibs, $1)=yes
7119 ;;
db137867 7120
6f57a957 7121 openbsd* | bitrig*)
7083c021
AC
7122 if test -f /usr/libexec/ld.so; then
7123 _LT_TAGVAR(hardcode_direct, $1)=yes
7124 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7125 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7126 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6f57a957
AC
7127 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7128 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
7129 _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'
7130 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7131 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7083c021 7132 fi
b6d0720c 7133 output_verbose_link_cmd=func_echo_all
7083c021
AC
7134 else
7135 _LT_TAGVAR(ld_shlibs, $1)=no
7136 fi
7137 ;;
db137867 7138
7083c021
AC
7139 osf3* | osf4* | osf5*)
7140 case $cc_basename in
7141 KCC*)
7142 # Kuck and Associates, Inc. (KAI) C++ Compiler
7143
7144 # KCC will only create a shared library if the output file
7145 # ends with ".so" (or ".sl" for HP-UX), so rename the library
7146 # to its proper name (with version) after linking.
6f57a957 7147 _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'
7083c021 7148
6f57a957 7149 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7083c021
AC
7150 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7151
7152 # Archives containing C++ object files must be created using
7153 # the KAI C++ compiler.
7154 case $host in
7155 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7156 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7157 esac
7158 ;;
7159 RCC*)
7160 # Rational C++ 2.4.1
7161 # FIXME: insert proper C++ library support
7162 _LT_TAGVAR(ld_shlibs, $1)=no
7163 ;;
7164 cxx*)
7165 case $host in
7166 osf3*)
6f57a957
AC
7167 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7168 _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'
7169 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7083c021
AC
7170 ;;
7171 *)
7172 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6f57a957 7173 _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'
7083c021 7174 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6f57a957
AC
7175 echo "-hidden">> $lib.exp~
7176 $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~
7177 $RM $lib.exp'
7083c021
AC
7178 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7179 ;;
7180 esac
db137867 7181
7083c021 7182 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
db137867 7183
7083c021
AC
7184 # Commands to make compiler produce verbose output that lists
7185 # what "hidden" libraries, object files and flags are used when
7186 # linking a shared library.
7187 #
7188 # There doesn't appear to be a way to prevent this compiler from
7189 # explicitly linking system object files so we need to strip them
7190 # from the output so that they don't get included in the library
7191 # dependencies.
6f57a957 7192 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"'
7083c021
AC
7193 ;;
7194 *)
6f57a957
AC
7195 if test yes,no = "$GXX,$with_gnu_ld"; then
7196 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7083c021
AC
7197 case $host in
7198 osf3*)
6f57a957 7199 _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'
7083c021
AC
7200 ;;
7201 *)
6f57a957 7202 _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'
7083c021
AC
7203 ;;
7204 esac
7205
6f57a957 7206 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7083c021
AC
7207 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7208
7209 # Commands to make compiler produce verbose output that lists
7210 # what "hidden" libraries, object files and flags are used when
7211 # linking a shared library.
b6d0720c 7212 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7083c021
AC
7213
7214 else
7215 # FIXME: insert proper C++ library support
7216 _LT_TAGVAR(ld_shlibs, $1)=no
7217 fi
7218 ;;
7219 esac
7220 ;;
db137867 7221
7083c021
AC
7222 psos*)
7223 # FIXME: insert proper C++ library support
7224 _LT_TAGVAR(ld_shlibs, $1)=no
7225 ;;
db137867 7226
7083c021
AC
7227 sunos4*)
7228 case $cc_basename in
7229 CC*)
7230 # Sun C++ 4.x
7231 # FIXME: insert proper C++ library support
7232 _LT_TAGVAR(ld_shlibs, $1)=no
7233 ;;
7234 lcc*)
7235 # Lucid
7236 # FIXME: insert proper C++ library support
7237 _LT_TAGVAR(ld_shlibs, $1)=no
7238 ;;
7239 *)
7240 # FIXME: insert proper C++ library support
7241 _LT_TAGVAR(ld_shlibs, $1)=no
7242 ;;
7243 esac
7244 ;;
db137867 7245
7083c021
AC
7246 solaris*)
7247 case $cc_basename in
b6d0720c 7248 CC* | sunCC*)
7083c021
AC
7249 # Sun C++ 4.2, 5.x and Centerline C++
7250 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7251 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6f57a957 7252 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7083c021 7253 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6f57a957 7254 $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'
7083c021
AC
7255
7256 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7257 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7258 case $host_os in
7259 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7260 *)
7261 # The compiler driver will combine and reorder linker options,
6f57a957 7262 # but understands '-z linker_flag'.
7083c021
AC
7263 # Supported since Solaris 2.6 (maybe 2.5.1?)
7264 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7265 ;;
7266 esac
7267 _LT_TAGVAR(link_all_deplibs, $1)=yes
db137867 7268
b6d0720c 7269 output_verbose_link_cmd='func_echo_all'
db137867 7270
7083c021
AC
7271 # Archives containing C++ object files must be created using
7272 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7273 # necessary to make sure instantiated templates are included
7274 # in the archive.
7275 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
db137867 7276 ;;
7083c021 7277 gcx*)
db137867 7278 # Green Hills C++ Compiler
6f57a957 7279 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7083c021
AC
7280
7281 # The C++ compiler must be used to create the archive.
7282 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
db137867 7283 ;;
7083c021
AC
7284 *)
7285 # GNU C++ compiler with Solaris linker
6f57a957
AC
7286 if test yes,no = "$GXX,$with_gnu_ld"; then
7287 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
7083c021 7288 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
6f57a957 7289 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7083c021 7290 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6f57a957 7291 $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7083c021
AC
7292
7293 # Commands to make compiler produce verbose output that lists
7294 # what "hidden" libraries, object files and flags are used when
7295 # linking a shared library.
b6d0720c 7296 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7083c021 7297 else
6f57a957 7298 # g++ 2.7 appears to require '-G' NOT '-shared' on this
7083c021 7299 # platform.
6f57a957 7300 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7083c021 7301 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6f57a957 7302 $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7083c021
AC
7303
7304 # Commands to make compiler produce verbose output that lists
7305 # what "hidden" libraries, object files and flags are used when
7306 # linking a shared library.
b6d0720c 7307 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7083c021
AC
7308 fi
7309
6f57a957 7310 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
7083c021
AC
7311 case $host_os in
7312 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7313 *)
6f57a957 7314 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7083c021
AC
7315 ;;
7316 esac
db137867
AC
7317 fi
7318 ;;
7083c021
AC
7319 esac
7320 ;;
7321
7322 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6f57a957 7323 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7083c021
AC
7324 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7325 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7326 runpath_var='LD_RUN_PATH'
7327
7328 case $cc_basename in
7329 CC*)
6f57a957
AC
7330 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7331 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
7332 ;;
7333 *)
6f57a957
AC
7334 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7335 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
7336 ;;
7337 esac
7338 ;;
7339
7340 sysv5* | sco3.2v5* | sco5v6*)
6f57a957 7341 # Note: We CANNOT use -z defs as we might desire, because we do not
7083c021
AC
7342 # link with -lc, and that would cause any symbols used from libc to
7343 # always be unresolved, which means just about no library would
7344 # ever link correctly. If we're not using GNU ld we use -z text
7345 # though, which does catch some bad symbols but isn't as heavy-handed
7346 # as -z defs.
6f57a957
AC
7347 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7348 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7083c021
AC
7349 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7350 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6f57a957 7351 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7083c021
AC
7352 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7353 _LT_TAGVAR(link_all_deplibs, $1)=yes
6f57a957 7354 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7083c021
AC
7355 runpath_var='LD_RUN_PATH'
7356
db137867 7357 case $cc_basename in
7083c021 7358 CC*)
6f57a957
AC
7359 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7360 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
b6d0720c 7361 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6f57a957 7362 '"$_LT_TAGVAR(old_archive_cmds, $1)"
b6d0720c 7363 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6f57a957 7364 '"$_LT_TAGVAR(reload_cmds, $1)"
db137867
AC
7365 ;;
7366 *)
6f57a957
AC
7367 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7368 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
db137867
AC
7369 ;;
7370 esac
7083c021
AC
7371 ;;
7372
db137867 7373 tandem*)
7083c021
AC
7374 case $cc_basename in
7375 NCC*)
db137867 7376 # NonStop-UX NCC 3.20
7083c021
AC
7377 # FIXME: insert proper C++ library support
7378 _LT_TAGVAR(ld_shlibs, $1)=no
db137867 7379 ;;
7083c021
AC
7380 *)
7381 # FIXME: insert proper C++ library support
7382 _LT_TAGVAR(ld_shlibs, $1)=no
db137867 7383 ;;
7083c021
AC
7384 esac
7385 ;;
7386
db137867 7387 vxworks*)
7083c021
AC
7388 # FIXME: insert proper C++ library support
7389 _LT_TAGVAR(ld_shlibs, $1)=no
7390 ;;
7391
7392 *)
7393 # FIXME: insert proper C++ library support
7394 _LT_TAGVAR(ld_shlibs, $1)=no
7395 ;;
db137867 7396 esac
7083c021
AC
7397
7398 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6f57a957 7399 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
7083c021 7400
6f57a957
AC
7401 _LT_TAGVAR(GCC, $1)=$GXX
7402 _LT_TAGVAR(LD, $1)=$LD
7083c021
AC
7403
7404 ## CAVEAT EMPTOR:
7405 ## There is no encapsulation within the following macros, do not change
7406 ## the running order or otherwise move them around unless you know exactly
7407 ## what you are doing...
7408 _LT_SYS_HIDDEN_LIBDEPS($1)
7409 _LT_COMPILER_PIC($1)
7410 _LT_COMPILER_C_O($1)
7411 _LT_COMPILER_FILE_LOCKS($1)
7412 _LT_LINKER_SHLIBS($1)
7413 _LT_SYS_DYNAMIC_LINKER($1)
7414 _LT_LINKER_HARDCODE_LIBPATH($1)
7415
7416 _LT_CONFIG($1)
7417 fi # test -n "$compiler"
7418
7419 CC=$lt_save_CC
b6d0720c 7420 CFLAGS=$lt_save_CFLAGS
7083c021
AC
7421 LDCXX=$LD
7422 LD=$lt_save_LD
7423 GCC=$lt_save_GCC
7424 with_gnu_ld=$lt_save_with_gnu_ld
7425 lt_cv_path_LDCXX=$lt_cv_path_LD
7426 lt_cv_path_LD=$lt_save_path_LD
7427 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7428 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6f57a957 7429fi # test yes != "$_lt_caught_CXX_error"
7083c021
AC
7430
7431AC_LANG_POP
7432])# _LT_LANG_CXX_CONFIG
7433
7434
b6d0720c
AC
7435# _LT_FUNC_STRIPNAME_CNF
7436# ----------------------
7437# func_stripname_cnf prefix suffix name
7438# strip PREFIX and SUFFIX off of NAME.
7439# PREFIX and SUFFIX must not contain globbing or regex special
7440# characters, hashes, percent signs, but SUFFIX may contain a leading
7441# dot (in which case that matches only a dot).
7442#
7443# This function is identical to the (non-XSI) version of func_stripname,
7444# except this one can be used by m4 code that may be executed by configure,
7445# rather than the libtool script.
7446m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7447AC_REQUIRE([_LT_DECL_SED])
7448AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7449func_stripname_cnf ()
7450{
6f57a957
AC
7451 case @S|@2 in
7452 .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
7453 *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
b6d0720c
AC
7454 esac
7455} # func_stripname_cnf
7456])# _LT_FUNC_STRIPNAME_CNF
7457
6f57a957 7458
7083c021
AC
7459# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7460# ---------------------------------
7461# Figure out "hidden" library dependencies from verbose
7462# compiler output when linking a shared library.
7463# Parse the compiler output and extract the necessary
7464# objects, libraries and library flags.
7465m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7466[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
b6d0720c 7467AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7083c021
AC
7468# Dependencies to place before and after the object being linked:
7469_LT_TAGVAR(predep_objects, $1)=
7470_LT_TAGVAR(postdep_objects, $1)=
7471_LT_TAGVAR(predeps, $1)=
7472_LT_TAGVAR(postdeps, $1)=
7473_LT_TAGVAR(compiler_lib_search_path, $1)=
7474
7475dnl we can't use the lt_simple_compile_test_code here,
7476dnl because it contains code intended for an executable,
7477dnl not a library. It's possible we should let each
7478dnl tag define a new lt_????_link_test_code variable,
7479dnl but it's only used here...
7480m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7481int a;
7482void foo (void) { a = 0; }
7483_LT_EOF
7484], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7485class Foo
7486{
7487public:
7488 Foo (void) { a = 0; }
7489private:
7490 int a;
7491};
7492_LT_EOF
7493], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
7494 subroutine foo
7495 implicit none
7496 integer*4 a
7497 a=0
7498 return
7499 end
7500_LT_EOF
7501], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
7502 subroutine foo
7503 implicit none
7504 integer a
7505 a=0
7506 return
7507 end
7508_LT_EOF
7509], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
7510public class foo {
7511 private int a;
7512 public void bar (void) {
7513 a = 0;
7514 }
7515};
7516_LT_EOF
a949ab1a
AC
7517], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7518package foo
7519func foo() {
7520}
7521_LT_EOF
7083c021 7522])
b6d0720c
AC
7523
7524_lt_libdeps_save_CFLAGS=$CFLAGS
7525case "$CC $CFLAGS " in #(
7526*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7527*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
a949ab1a 7528*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
b6d0720c
AC
7529esac
7530
7083c021
AC
7531dnl Parse the compiler output and extract the necessary
7532dnl objects, libraries and library flags.
7533if AC_TRY_EVAL(ac_compile); then
7534 # Parse the compiler output and extract the necessary
7535 # objects, libraries and library flags.
7536
7537 # Sentinel used to keep track of whether or not we are before
7538 # the conftest object file.
7539 pre_test_object_deps_done=no
7540
7541 for p in `eval "$output_verbose_link_cmd"`; do
6f57a957 7542 case $prev$p in
7083c021
AC
7543
7544 -L* | -R* | -l*)
7545 # Some compilers place space between "-{L,R}" and the path.
7546 # Remove the space.
6f57a957
AC
7547 if test x-L = "$p" ||
7548 test x-R = "$p"; then
7083c021
AC
7549 prev=$p
7550 continue
7083c021
AC
7551 fi
7552
b6d0720c
AC
7553 # Expand the sysroot to ease extracting the directories later.
7554 if test -z "$prev"; then
7555 case $p in
7556 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7557 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7558 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7559 esac
7560 fi
7561 case $p in
7562 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7563 esac
6f57a957
AC
7564 if test no = "$pre_test_object_deps_done"; then
7565 case $prev in
b6d0720c 7566 -L | -R)
7083c021
AC
7567 # Internal compiler library paths should come after those
7568 # provided the user. The postdeps already come after the
7569 # user supplied libs so there is no need to process them.
7570 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
6f57a957 7571 _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
7083c021 7572 else
6f57a957 7573 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
7083c021
AC
7574 fi
7575 ;;
7576 # The "-l" case would never come before the object being
7577 # linked, so don't bother handling this case.
7578 esac
7579 else
7580 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
6f57a957 7581 _LT_TAGVAR(postdeps, $1)=$prev$p
7083c021 7582 else
6f57a957 7583 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
7083c021
AC
7584 fi
7585 fi
b6d0720c 7586 prev=
7083c021
AC
7587 ;;
7588
b6d0720c 7589 *.lto.$objext) ;; # Ignore GCC LTO objects
7083c021
AC
7590 *.$objext)
7591 # This assumes that the test object file only shows up
7592 # once in the compiler output.
7593 if test "$p" = "conftest.$objext"; then
7594 pre_test_object_deps_done=yes
7595 continue
7596 fi
7597
6f57a957 7598 if test no = "$pre_test_object_deps_done"; then
7083c021 7599 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
6f57a957 7600 _LT_TAGVAR(predep_objects, $1)=$p
7083c021
AC
7601 else
7602 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7603 fi
7604 else
7605 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
6f57a957 7606 _LT_TAGVAR(postdep_objects, $1)=$p
7083c021
AC
7607 else
7608 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7609 fi
7610 fi
7611 ;;
7612
7613 *) ;; # Ignore the rest.
7614
7615 esac
7616 done
7617
7618 # Clean up.
7619 rm -f a.out a.exe
7620else
7621 echo "libtool.m4: error: problem compiling $1 test program"
7622fi
7623
7624$RM -f confest.$objext
b6d0720c 7625CFLAGS=$_lt_libdeps_save_CFLAGS
7083c021
AC
7626
7627# PORTME: override above test on systems where it is broken
7628m4_if([$1], [CXX],
7629[case $host_os in
7630interix[[3-9]]*)
7631 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7632 # hack all around it, let's just trust "g++" to DTRT.
7633 _LT_TAGVAR(predep_objects,$1)=
7634 _LT_TAGVAR(postdep_objects,$1)=
7635 _LT_TAGVAR(postdeps,$1)=
7636 ;;
7083c021
AC
7637esac
7638])
7639
7640case " $_LT_TAGVAR(postdeps, $1) " in
7641*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7642esac
7643 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7644if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
6f57a957 7645 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
7083c021
AC
7646fi
7647_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7648 [The directories searched by this compiler when creating a shared library])
7649_LT_TAGDECL([], [predep_objects], [1],
7650 [Dependencies to place before and after the objects being linked to
7651 create a shared library])
7652_LT_TAGDECL([], [postdep_objects], [1])
7653_LT_TAGDECL([], [predeps], [1])
7654_LT_TAGDECL([], [postdeps], [1])
7655_LT_TAGDECL([], [compiler_lib_search_path], [1],
7656 [The library search path used internally by the compiler when linking
7657 a shared library])
7658])# _LT_SYS_HIDDEN_LIBDEPS
7659
7660
7083c021
AC
7661# _LT_LANG_F77_CONFIG([TAG])
7662# --------------------------
7663# Ensure that the configuration variables for a Fortran 77 compiler are
7664# suitably defined. These variables are subsequently used by _LT_CONFIG
6f57a957 7665# to write the compiler configuration to 'libtool'.
7083c021 7666m4_defun([_LT_LANG_F77_CONFIG],
b6d0720c 7667[AC_LANG_PUSH(Fortran 77)
6f57a957 7668if test -z "$F77" || test no = "$F77"; then
b6d0720c
AC
7669 _lt_disable_F77=yes
7670fi
7083c021
AC
7671
7672_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7673_LT_TAGVAR(allow_undefined_flag, $1)=
7674_LT_TAGVAR(always_export_symbols, $1)=no
7675_LT_TAGVAR(archive_expsym_cmds, $1)=
7676_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7677_LT_TAGVAR(hardcode_direct, $1)=no
7678_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7679_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7083c021
AC
7680_LT_TAGVAR(hardcode_libdir_separator, $1)=
7681_LT_TAGVAR(hardcode_minus_L, $1)=no
7682_LT_TAGVAR(hardcode_automatic, $1)=no
7683_LT_TAGVAR(inherit_rpath, $1)=no
7684_LT_TAGVAR(module_cmds, $1)=
7685_LT_TAGVAR(module_expsym_cmds, $1)=
7686_LT_TAGVAR(link_all_deplibs, $1)=unknown
7687_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
b6d0720c
AC
7688_LT_TAGVAR(reload_flag, $1)=$reload_flag
7689_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7083c021
AC
7690_LT_TAGVAR(no_undefined_flag, $1)=
7691_LT_TAGVAR(whole_archive_flag_spec, $1)=
7692_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7693
7694# Source file extension for f77 test sources.
7695ac_ext=f
7696
7697# Object file extension for compiled f77 test sources.
7698objext=o
7699_LT_TAGVAR(objext, $1)=$objext
7700
7701# No sense in running all these tests if we already determined that
7702# the F77 compiler isn't working. Some variables (like enable_shared)
7703# are currently assumed to apply to all compilers on this platform,
7704# and will be corrupted by setting them based on a non-working compiler.
6f57a957 7705if test yes != "$_lt_disable_F77"; then
7083c021
AC
7706 # Code to be used in simple compile tests
7707 lt_simple_compile_test_code="\
7708 subroutine t
7709 return
7710 end
7711"
7712
7713 # Code to be used in simple link tests
7714 lt_simple_link_test_code="\
7715 program t
7716 end
7717"
7718
7719 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7720 _LT_TAG_COMPILER
7721
7722 # save warnings/boilerplate of simple test code
7723 _LT_COMPILER_BOILERPLATE
7724 _LT_LINKER_BOILERPLATE
db137867 7725
7083c021 7726 # Allow CC to be a program name with arguments.
6f57a957 7727 lt_save_CC=$CC
7083c021 7728 lt_save_GCC=$GCC
b6d0720c 7729 lt_save_CFLAGS=$CFLAGS
7083c021 7730 CC=${F77-"f77"}
b6d0720c 7731 CFLAGS=$FFLAGS
7083c021
AC
7732 compiler=$CC
7733 _LT_TAGVAR(compiler, $1)=$CC
7734 _LT_CC_BASENAME([$compiler])
7735 GCC=$G77
7736 if test -n "$compiler"; then
7737 AC_MSG_CHECKING([if libtool supports shared libraries])
7738 AC_MSG_RESULT([$can_build_shared])
7739
7740 AC_MSG_CHECKING([whether to build shared libraries])
6f57a957 7741 test no = "$can_build_shared" && enable_shared=no
7083c021
AC
7742
7743 # On AIX, shared libraries and static libraries use the same namespace, and
7744 # are all built from PIC.
db137867 7745 case $host_os in
7083c021 7746 aix3*)
6f57a957 7747 test yes = "$enable_shared" && enable_static=no
7083c021
AC
7748 if test -n "$RANLIB"; then
7749 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7750 postinstall_cmds='$RANLIB $lib'
7751 fi
7752 ;;
7753 aix[[4-9]]*)
6f57a957
AC
7754 if test ia64 != "$host_cpu"; then
7755 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7756 yes,aix,yes) ;; # shared object as lib.so file only
7757 yes,svr4,*) ;; # shared object as lib.so archive member only
7758 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7759 esac
7083c021
AC
7760 fi
7761 ;;
7762 esac
7763 AC_MSG_RESULT([$enable_shared])
7764
7765 AC_MSG_CHECKING([whether to build static libraries])
7766 # Make sure either enable_shared or enable_static is yes.
6f57a957 7767 test yes = "$enable_shared" || enable_static=yes
7083c021
AC
7768 AC_MSG_RESULT([$enable_static])
7769
6f57a957
AC
7770 _LT_TAGVAR(GCC, $1)=$G77
7771 _LT_TAGVAR(LD, $1)=$LD
7083c021
AC
7772
7773 ## CAVEAT EMPTOR:
7774 ## There is no encapsulation within the following macros, do not change
7775 ## the running order or otherwise move them around unless you know exactly
7776 ## what you are doing...
7777 _LT_COMPILER_PIC($1)
7778 _LT_COMPILER_C_O($1)
7779 _LT_COMPILER_FILE_LOCKS($1)
7780 _LT_LINKER_SHLIBS($1)
7781 _LT_SYS_DYNAMIC_LINKER($1)
7782 _LT_LINKER_HARDCODE_LIBPATH($1)
7783
7784 _LT_CONFIG($1)
7785 fi # test -n "$compiler"
7786
7787 GCC=$lt_save_GCC
6f57a957
AC
7788 CC=$lt_save_CC
7789 CFLAGS=$lt_save_CFLAGS
7790fi # test yes != "$_lt_disable_F77"
7083c021
AC
7791
7792AC_LANG_POP
7793])# _LT_LANG_F77_CONFIG
7794
7795
7083c021
AC
7796# _LT_LANG_FC_CONFIG([TAG])
7797# -------------------------
7798# Ensure that the configuration variables for a Fortran compiler are
7799# suitably defined. These variables are subsequently used by _LT_CONFIG
6f57a957 7800# to write the compiler configuration to 'libtool'.
7083c021 7801m4_defun([_LT_LANG_FC_CONFIG],
b6d0720c
AC
7802[AC_LANG_PUSH(Fortran)
7803
6f57a957 7804if test -z "$FC" || test no = "$FC"; then
b6d0720c
AC
7805 _lt_disable_FC=yes
7806fi
7083c021
AC
7807
7808_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7809_LT_TAGVAR(allow_undefined_flag, $1)=
7810_LT_TAGVAR(always_export_symbols, $1)=no
7811_LT_TAGVAR(archive_expsym_cmds, $1)=
7812_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7813_LT_TAGVAR(hardcode_direct, $1)=no
7814_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7815_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7083c021
AC
7816_LT_TAGVAR(hardcode_libdir_separator, $1)=
7817_LT_TAGVAR(hardcode_minus_L, $1)=no
7818_LT_TAGVAR(hardcode_automatic, $1)=no
7819_LT_TAGVAR(inherit_rpath, $1)=no
7820_LT_TAGVAR(module_cmds, $1)=
7821_LT_TAGVAR(module_expsym_cmds, $1)=
7822_LT_TAGVAR(link_all_deplibs, $1)=unknown
7823_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
b6d0720c
AC
7824_LT_TAGVAR(reload_flag, $1)=$reload_flag
7825_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7083c021
AC
7826_LT_TAGVAR(no_undefined_flag, $1)=
7827_LT_TAGVAR(whole_archive_flag_spec, $1)=
7828_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7829
7830# Source file extension for fc test sources.
7831ac_ext=${ac_fc_srcext-f}
7832
7833# Object file extension for compiled fc test sources.
7834objext=o
7835_LT_TAGVAR(objext, $1)=$objext
7836
7837# No sense in running all these tests if we already determined that
7838# the FC compiler isn't working. Some variables (like enable_shared)
7839# are currently assumed to apply to all compilers on this platform,
7840# and will be corrupted by setting them based on a non-working compiler.
6f57a957 7841if test yes != "$_lt_disable_FC"; then
7083c021
AC
7842 # Code to be used in simple compile tests
7843 lt_simple_compile_test_code="\
7844 subroutine t
7845 return
7846 end
7847"
7848
7849 # Code to be used in simple link tests
7850 lt_simple_link_test_code="\
7851 program t
7852 end
7853"
7854
7855 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7856 _LT_TAG_COMPILER
7857
7858 # save warnings/boilerplate of simple test code
7859 _LT_COMPILER_BOILERPLATE
7860 _LT_LINKER_BOILERPLATE
7861
7862 # Allow CC to be a program name with arguments.
6f57a957 7863 lt_save_CC=$CC
7083c021 7864 lt_save_GCC=$GCC
b6d0720c 7865 lt_save_CFLAGS=$CFLAGS
7083c021 7866 CC=${FC-"f95"}
b6d0720c 7867 CFLAGS=$FCFLAGS
7083c021
AC
7868 compiler=$CC
7869 GCC=$ac_cv_fc_compiler_gnu
7870
7871 _LT_TAGVAR(compiler, $1)=$CC
7872 _LT_CC_BASENAME([$compiler])
7873
7874 if test -n "$compiler"; then
7875 AC_MSG_CHECKING([if libtool supports shared libraries])
7876 AC_MSG_RESULT([$can_build_shared])
7877
7878 AC_MSG_CHECKING([whether to build shared libraries])
6f57a957 7879 test no = "$can_build_shared" && enable_shared=no
7083c021
AC
7880
7881 # On AIX, shared libraries and static libraries use the same namespace, and
7882 # are all built from PIC.
7883 case $host_os in
7884 aix3*)
6f57a957 7885 test yes = "$enable_shared" && enable_static=no
7083c021
AC
7886 if test -n "$RANLIB"; then
7887 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7888 postinstall_cmds='$RANLIB $lib'
7889 fi
7890 ;;
7891 aix[[4-9]]*)
6f57a957
AC
7892 if test ia64 != "$host_cpu"; then
7893 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7894 yes,aix,yes) ;; # shared object as lib.so file only
7895 yes,svr4,*) ;; # shared object as lib.so archive member only
7896 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7897 esac
7083c021
AC
7898 fi
7899 ;;
7900 esac
7901 AC_MSG_RESULT([$enable_shared])
7902
7903 AC_MSG_CHECKING([whether to build static libraries])
7904 # Make sure either enable_shared or enable_static is yes.
6f57a957 7905 test yes = "$enable_shared" || enable_static=yes
7083c021
AC
7906 AC_MSG_RESULT([$enable_static])
7907
6f57a957
AC
7908 _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7909 _LT_TAGVAR(LD, $1)=$LD
7083c021
AC
7910
7911 ## CAVEAT EMPTOR:
7912 ## There is no encapsulation within the following macros, do not change
7913 ## the running order or otherwise move them around unless you know exactly
7914 ## what you are doing...
7915 _LT_SYS_HIDDEN_LIBDEPS($1)
7916 _LT_COMPILER_PIC($1)
7917 _LT_COMPILER_C_O($1)
7918 _LT_COMPILER_FILE_LOCKS($1)
7919 _LT_LINKER_SHLIBS($1)
7920 _LT_SYS_DYNAMIC_LINKER($1)
7921 _LT_LINKER_HARDCODE_LIBPATH($1)
7922
7923 _LT_CONFIG($1)
7924 fi # test -n "$compiler"
7925
7926 GCC=$lt_save_GCC
b6d0720c
AC
7927 CC=$lt_save_CC
7928 CFLAGS=$lt_save_CFLAGS
6f57a957 7929fi # test yes != "$_lt_disable_FC"
7083c021
AC
7930
7931AC_LANG_POP
7932])# _LT_LANG_FC_CONFIG
7933
7934
7935# _LT_LANG_GCJ_CONFIG([TAG])
7936# --------------------------
7937# Ensure that the configuration variables for the GNU Java Compiler compiler
7938# are suitably defined. These variables are subsequently used by _LT_CONFIG
6f57a957 7939# to write the compiler configuration to 'libtool'.
7083c021
AC
7940m4_defun([_LT_LANG_GCJ_CONFIG],
7941[AC_REQUIRE([LT_PROG_GCJ])dnl
7942AC_LANG_SAVE
7943
7944# Source file extension for Java test sources.
7945ac_ext=java
7946
7947# Object file extension for compiled Java test sources.
7948objext=o
7949_LT_TAGVAR(objext, $1)=$objext
7950
7951# Code to be used in simple compile tests
7952lt_simple_compile_test_code="class foo {}"
7953
7954# Code to be used in simple link tests
7955lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7956
7957# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7958_LT_TAG_COMPILER
7959
7960# save warnings/boilerplate of simple test code
7961_LT_COMPILER_BOILERPLATE
7962_LT_LINKER_BOILERPLATE
7963
7964# Allow CC to be a program name with arguments.
b6d0720c
AC
7965lt_save_CC=$CC
7966lt_save_CFLAGS=$CFLAGS
7083c021
AC
7967lt_save_GCC=$GCC
7968GCC=yes
7969CC=${GCJ-"gcj"}
b6d0720c 7970CFLAGS=$GCJFLAGS
7083c021
AC
7971compiler=$CC
7972_LT_TAGVAR(compiler, $1)=$CC
6f57a957 7973_LT_TAGVAR(LD, $1)=$LD
7083c021
AC
7974_LT_CC_BASENAME([$compiler])
7975
7976# GCJ did not exist at the time GCC didn't implicitly link libc in.
7977_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7978
7979_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
b6d0720c
AC
7980_LT_TAGVAR(reload_flag, $1)=$reload_flag
7981_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7083c021
AC
7982
7983if test -n "$compiler"; then
7984 _LT_COMPILER_NO_RTTI($1)
7985 _LT_COMPILER_PIC($1)
7986 _LT_COMPILER_C_O($1)
7987 _LT_COMPILER_FILE_LOCKS($1)
7988 _LT_LINKER_SHLIBS($1)
7989 _LT_LINKER_HARDCODE_LIBPATH($1)
7990
7991 _LT_CONFIG($1)
7992fi
7993
7994AC_LANG_RESTORE
7995
7996GCC=$lt_save_GCC
b6d0720c
AC
7997CC=$lt_save_CC
7998CFLAGS=$lt_save_CFLAGS
7083c021 7999])# _LT_LANG_GCJ_CONFIG
db137867 8000
db137867 8001
a949ab1a
AC
8002# _LT_LANG_GO_CONFIG([TAG])
8003# --------------------------
8004# Ensure that the configuration variables for the GNU Go compiler
8005# are suitably defined. These variables are subsequently used by _LT_CONFIG
6f57a957 8006# to write the compiler configuration to 'libtool'.
a949ab1a
AC
8007m4_defun([_LT_LANG_GO_CONFIG],
8008[AC_REQUIRE([LT_PROG_GO])dnl
8009AC_LANG_SAVE
8010
8011# Source file extension for Go test sources.
8012ac_ext=go
8013
8014# Object file extension for compiled Go test sources.
8015objext=o
8016_LT_TAGVAR(objext, $1)=$objext
8017
8018# Code to be used in simple compile tests
8019lt_simple_compile_test_code="package main; func main() { }"
8020
8021# Code to be used in simple link tests
8022lt_simple_link_test_code='package main; func main() { }'
8023
8024# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8025_LT_TAG_COMPILER
8026
8027# save warnings/boilerplate of simple test code
8028_LT_COMPILER_BOILERPLATE
8029_LT_LINKER_BOILERPLATE
8030
8031# Allow CC to be a program name with arguments.
8032lt_save_CC=$CC
8033lt_save_CFLAGS=$CFLAGS
8034lt_save_GCC=$GCC
8035GCC=yes
8036CC=${GOC-"gccgo"}
8037CFLAGS=$GOFLAGS
8038compiler=$CC
8039_LT_TAGVAR(compiler, $1)=$CC
6f57a957 8040_LT_TAGVAR(LD, $1)=$LD
a949ab1a
AC
8041_LT_CC_BASENAME([$compiler])
8042
8043# Go did not exist at the time GCC didn't implicitly link libc in.
8044_LT_TAGVAR(archive_cmds_need_lc, $1)=no
8045
8046_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8047_LT_TAGVAR(reload_flag, $1)=$reload_flag
8048_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8049
8050if test -n "$compiler"; then
8051 _LT_COMPILER_NO_RTTI($1)
8052 _LT_COMPILER_PIC($1)
8053 _LT_COMPILER_C_O($1)
8054 _LT_COMPILER_FILE_LOCKS($1)
8055 _LT_LINKER_SHLIBS($1)
8056 _LT_LINKER_HARDCODE_LIBPATH($1)
8057
8058 _LT_CONFIG($1)
8059fi
8060
8061AC_LANG_RESTORE
8062
8063GCC=$lt_save_GCC
8064CC=$lt_save_CC
8065CFLAGS=$lt_save_CFLAGS
8066])# _LT_LANG_GO_CONFIG
8067
8068
7083c021
AC
8069# _LT_LANG_RC_CONFIG([TAG])
8070# -------------------------
8071# Ensure that the configuration variables for the Windows resource compiler
8072# are suitably defined. These variables are subsequently used by _LT_CONFIG
6f57a957 8073# to write the compiler configuration to 'libtool'.
7083c021
AC
8074m4_defun([_LT_LANG_RC_CONFIG],
8075[AC_REQUIRE([LT_PROG_RC])dnl
8076AC_LANG_SAVE
db137867 8077
7083c021
AC
8078# Source file extension for RC test sources.
8079ac_ext=rc
db137867 8080
7083c021
AC
8081# Object file extension for compiled RC test sources.
8082objext=o
8083_LT_TAGVAR(objext, $1)=$objext
db137867 8084
7083c021
AC
8085# Code to be used in simple compile tests
8086lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
db137867 8087
7083c021 8088# Code to be used in simple link tests
6f57a957 8089lt_simple_link_test_code=$lt_simple_compile_test_code
db137867 8090
7083c021
AC
8091# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8092_LT_TAG_COMPILER
db137867 8093
7083c021
AC
8094# save warnings/boilerplate of simple test code
8095_LT_COMPILER_BOILERPLATE
8096_LT_LINKER_BOILERPLATE
db137867 8097
7083c021 8098# Allow CC to be a program name with arguments.
6f57a957 8099lt_save_CC=$CC
b6d0720c 8100lt_save_CFLAGS=$CFLAGS
7083c021
AC
8101lt_save_GCC=$GCC
8102GCC=
8103CC=${RC-"windres"}
b6d0720c 8104CFLAGS=
7083c021
AC
8105compiler=$CC
8106_LT_TAGVAR(compiler, $1)=$CC
8107_LT_CC_BASENAME([$compiler])
8108_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
db137867 8109
7083c021
AC
8110if test -n "$compiler"; then
8111 :
8112 _LT_CONFIG($1)
8113fi
db137867 8114
7083c021
AC
8115GCC=$lt_save_GCC
8116AC_LANG_RESTORE
b6d0720c
AC
8117CC=$lt_save_CC
8118CFLAGS=$lt_save_CFLAGS
7083c021 8119])# _LT_LANG_RC_CONFIG
db137867 8120
db137867 8121
7083c021
AC
8122# LT_PROG_GCJ
8123# -----------
8124AC_DEFUN([LT_PROG_GCJ],
8125[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8126 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8127 [AC_CHECK_TOOL(GCJ, gcj,)
6f57a957 8128 test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
7083c021
AC
8129 AC_SUBST(GCJFLAGS)])])[]dnl
8130])
db137867 8131
7083c021
AC
8132# Old name:
8133AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8134dnl aclocal-1.4 backwards compatibility:
8135dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
db137867 8136
db137867 8137
a949ab1a
AC
8138# LT_PROG_GO
8139# ----------
8140AC_DEFUN([LT_PROG_GO],
8141[AC_CHECK_TOOL(GOC, gccgo,)
8142])
8143
8144
7083c021
AC
8145# LT_PROG_RC
8146# ----------
8147AC_DEFUN([LT_PROG_RC],
8148[AC_CHECK_TOOL(RC, windres,)
8149])
db137867 8150
7083c021
AC
8151# Old name:
8152AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8153dnl aclocal-1.4 backwards compatibility:
8154dnl AC_DEFUN([LT_AC_PROG_RC], [])
db137867 8155
db137867 8156
7083c021
AC
8157# _LT_DECL_EGREP
8158# --------------
8159# If we don't have a new enough Autoconf to choose the best grep
8160# available, choose the one first in the user's PATH.
8161m4_defun([_LT_DECL_EGREP],
8162[AC_REQUIRE([AC_PROG_EGREP])dnl
8163AC_REQUIRE([AC_PROG_FGREP])dnl
8164test -z "$GREP" && GREP=grep
8165_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8166_LT_DECL([], [EGREP], [1], [An ERE matcher])
8167_LT_DECL([], [FGREP], [1], [A literal string matcher])
8168dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8169AC_SUBST([GREP])
8170])
db137867 8171
db137867 8172
7083c021
AC
8173# _LT_DECL_OBJDUMP
8174# --------------
8175# If we don't have a new enough Autoconf to choose the best objdump
8176# available, choose the one first in the user's PATH.
8177m4_defun([_LT_DECL_OBJDUMP],
8178[AC_CHECK_TOOL(OBJDUMP, objdump, false)
8179test -z "$OBJDUMP" && OBJDUMP=objdump
8180_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8181AC_SUBST([OBJDUMP])
8182])
db137867 8183
b6d0720c
AC
8184# _LT_DECL_DLLTOOL
8185# ----------------
8186# Ensure DLLTOOL variable is set.
8187m4_defun([_LT_DECL_DLLTOOL],
8188[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8189test -z "$DLLTOOL" && DLLTOOL=dlltool
8190_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8191AC_SUBST([DLLTOOL])
8192])
db137867 8193
7083c021
AC
8194# _LT_DECL_SED
8195# ------------
8196# Check for a fully-functional sed program, that truncates
8197# as few characters as possible. Prefer GNU sed if found.
8198m4_defun([_LT_DECL_SED],
8199[AC_PROG_SED
8200test -z "$SED" && SED=sed
8201Xsed="$SED -e 1s/^X//"
8202_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8203_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8204 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
8205])# _LT_DECL_SED
db137867 8206
7083c021
AC
8207m4_ifndef([AC_PROG_SED], [
8208# NOTE: This macro has been submitted for inclusion into #
8209# GNU Autoconf as AC_PROG_SED. When it is available in #
8210# a released version of Autoconf we should remove this #
8211# macro and use it instead. #
8212
8213m4_defun([AC_PROG_SED],
8214[AC_MSG_CHECKING([for a sed that does not truncate output])
8215AC_CACHE_VAL(lt_cv_path_SED,
8216[# Loop through the user's path and test for sed and gsed.
8217# Then use that list of sed's as ones to test for truncation.
8218as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8219for as_dir in $PATH
8220do
8221 IFS=$as_save_IFS
8222 test -z "$as_dir" && as_dir=.
8223 for lt_ac_prog in sed gsed; do
8224 for ac_exec_ext in '' $ac_executable_extensions; do
8225 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8226 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8227 fi
8228 done
8229 done
8230done
8231IFS=$as_save_IFS
8232lt_ac_max=0
8233lt_ac_count=0
8234# Add /usr/xpg4/bin/sed as it is typically found on Solaris
8235# along with /bin/sed that truncates output.
8236for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
6f57a957 8237 test ! -f "$lt_ac_sed" && continue
7083c021
AC
8238 cat /dev/null > conftest.in
8239 lt_ac_count=0
8240 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8241 # Check for GNU sed and select it if it is found.
8242 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8243 lt_cv_path_SED=$lt_ac_sed
8244 break
db137867 8245 fi
7083c021
AC
8246 while true; do
8247 cat conftest.in conftest.in >conftest.tmp
8248 mv conftest.tmp conftest.in
8249 cp conftest.in conftest.nl
8250 echo >>conftest.nl
8251 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8252 cmp -s conftest.out conftest.nl || break
8253 # 10000 chars as input seems more than enough
6f57a957 8254 test 10 -lt "$lt_ac_count" && break
7083c021 8255 lt_ac_count=`expr $lt_ac_count + 1`
6f57a957 8256 if test "$lt_ac_count" -gt "$lt_ac_max"; then
7083c021
AC
8257 lt_ac_max=$lt_ac_count
8258 lt_cv_path_SED=$lt_ac_sed
8259 fi
8260 done
8261done
db137867 8262])
7083c021
AC
8263SED=$lt_cv_path_SED
8264AC_SUBST([SED])
8265AC_MSG_RESULT([$SED])
8266])#AC_PROG_SED
8267])#m4_ifndef
8268
8269# Old name:
8270AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8271dnl aclocal-1.4 backwards compatibility:
8272dnl AC_DEFUN([LT_AC_PROG_SED], [])
8273
8274
8275# _LT_CHECK_SHELL_FEATURES
8276# ------------------------
8277# Find out whether the shell is Bourne or XSI compatible,
8278# or has some other useful features.
8279m4_defun([_LT_CHECK_SHELL_FEATURES],
6f57a957 8280[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7083c021
AC
8281 lt_unset=unset
8282else
8283 lt_unset=false
8284fi
8285_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8286
8287# test EBCDIC or ASCII
8288case `echo X|tr X '\101'` in
8289 A) # ASCII based system
8290 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8291 lt_SP2NL='tr \040 \012'
8292 lt_NL2SP='tr \015\012 \040\040'
8293 ;;
8294 *) # EBCDIC based system
8295 lt_SP2NL='tr \100 \n'
8296 lt_NL2SP='tr \r\n \100\100'
8297 ;;
8298esac
8299_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8300_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8301])# _LT_CHECK_SHELL_FEATURES
8302
8303
b6d0720c
AC
8304# _LT_PATH_CONVERSION_FUNCTIONS
8305# -----------------------------
6f57a957 8306# Determine what file name conversion functions should be used by
b6d0720c
AC
8307# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
8308# for certain cross-compile configurations and native mingw.
8309m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8310[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8311AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8312AC_MSG_CHECKING([how to convert $build file names to $host format])
8313AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8314[case $host in
8315 *-*-mingw* )
8316 case $build in
8317 *-*-mingw* ) # actually msys
8318 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8319 ;;
8320 *-*-cygwin* )
8321 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8322 ;;
8323 * ) # otherwise, assume *nix
8324 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8325 ;;
8326 esac
7083c021 8327 ;;
b6d0720c
AC
8328 *-*-cygwin* )
8329 case $build in
8330 *-*-mingw* ) # actually msys
8331 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8332 ;;
8333 *-*-cygwin* )
8334 lt_cv_to_host_file_cmd=func_convert_file_noop
8335 ;;
8336 * ) # otherwise, assume *nix
8337 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
8338 ;;
8339 esac
7083c021 8340 ;;
b6d0720c
AC
8341 * ) # unhandled hosts (and "normal" native builds)
8342 lt_cv_to_host_file_cmd=func_convert_file_noop
8343 ;;
8344esac
8345])
8346to_host_file_cmd=$lt_cv_to_host_file_cmd
8347AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
8348_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
8349 [0], [convert $build file names to $host format])dnl
8350
8351AC_MSG_CHECKING([how to convert $build file names to toolchain format])
8352AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
8353[#assume ordinary cross tools, or native build.
8354lt_cv_to_tool_file_cmd=func_convert_file_noop
8355case $host in
8356 *-*-mingw* )
8357 case $build in
8358 *-*-mingw* ) # actually msys
8359 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
8360 ;;
8361 esac
8362 ;;
8363esac
7083c021 8364])
b6d0720c
AC
8365to_tool_file_cmd=$lt_cv_to_tool_file_cmd
8366AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
8367_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8368 [0], [convert $build files to toolchain format])dnl
8369])# _LT_PATH_CONVERSION_FUNCTIONS
db137867 8370
7083c021
AC
8371# Helper functions for option handling. -*- Autoconf -*-
8372#
6f57a957
AC
8373# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8374# Foundation, Inc.
7083c021
AC
8375# Written by Gary V. Vaughan, 2004
8376#
8377# This file is free software; the Free Software Foundation gives
8378# unlimited permission to copy and/or distribute it, with or without
8379# modifications, as long as this notice is preserved.
db137867 8380
6f57a957 8381# serial 8 ltoptions.m4
db137867 8382
7083c021
AC
8383# This is to help aclocal find these macros, as it can't see m4_define.
8384AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
db137867 8385
db137867 8386
7083c021
AC
8387# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8388# ------------------------------------------
8389m4_define([_LT_MANGLE_OPTION],
8390[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
db137867 8391
db137867 8392
7083c021
AC
8393# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8394# ---------------------------------------
8395# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8396# matching handler defined, dispatch to it. Other OPTION-NAMEs are
8397# saved as a flag.
8398m4_define([_LT_SET_OPTION],
8399[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8400m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8401 _LT_MANGLE_DEFUN([$1], [$2]),
6f57a957 8402 [m4_warning([Unknown $1 option '$2'])])[]dnl
7083c021 8403])
db137867 8404
db137867 8405
7083c021
AC
8406# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8407# ------------------------------------------------------------
8408# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8409m4_define([_LT_IF_OPTION],
8410[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8411
8412
8413# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8414# -------------------------------------------------------
8415# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8416# are set.
8417m4_define([_LT_UNLESS_OPTIONS],
8418[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8419 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8420 [m4_define([$0_found])])])[]dnl
8421m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8422])[]dnl
8423])
db137867 8424
db137867 8425
7083c021
AC
8426# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8427# ----------------------------------------
8428# OPTION-LIST is a space-separated list of Libtool options associated
8429# with MACRO-NAME. If any OPTION has a matching handler declared with
8430# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8431# the unknown option and exit.
8432m4_defun([_LT_SET_OPTIONS],
8433[# Set options
8434m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8435 [_LT_SET_OPTION([$1], _LT_Option)])
8436
8437m4_if([$1],[LT_INIT],[
8438 dnl
8439 dnl Simply set some default values (i.e off) if boolean options were not
8440 dnl specified:
8441 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8442 ])
8443 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8444 ])
8445 dnl
8446 dnl If no reference was made to various pairs of opposing options, then
8447 dnl we run the default mode handler for the pair. For example, if neither
6f57a957 8448 dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
7083c021
AC
8449 dnl archives by default:
8450 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8451 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8452 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8453 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
6f57a957
AC
8454 [_LT_ENABLE_FAST_INSTALL])
8455 _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
8456 [_LT_WITH_AIX_SONAME([aix])])
7083c021
AC
8457 ])
8458])# _LT_SET_OPTIONS
db137867 8459
db137867 8460
db137867 8461
7083c021
AC
8462# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8463# -----------------------------------------
8464m4_define([_LT_MANGLE_DEFUN],
8465[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
db137867 8466
db137867 8467
7083c021
AC
8468# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8469# -----------------------------------------------
8470m4_define([LT_OPTION_DEFINE],
8471[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8472])# LT_OPTION_DEFINE
db137867 8473
db137867 8474
7083c021
AC
8475# dlopen
8476# ------
8477LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8478])
db137867 8479
7083c021
AC
8480AU_DEFUN([AC_LIBTOOL_DLOPEN],
8481[_LT_SET_OPTION([LT_INIT], [dlopen])
8482AC_DIAGNOSE([obsolete],
8483[$0: Remove this warning and the call to _LT_SET_OPTION when you
6f57a957 8484put the 'dlopen' option into LT_INIT's first parameter.])
7083c021 8485])
db137867 8486
7083c021
AC
8487dnl aclocal-1.4 backwards compatibility:
8488dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
db137867 8489
db137867 8490
7083c021
AC
8491# win32-dll
8492# ---------
8493# Declare package support for building win32 dll's.
8494LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8495[enable_win32_dll=yes
db137867 8496
7083c021 8497case $host in
b6d0720c 8498*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
7083c021
AC
8499 AC_CHECK_TOOL(AS, as, false)
8500 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8501 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8502 ;;
8503esac
db137867 8504
7083c021 8505test -z "$AS" && AS=as
b6d0720c 8506_LT_DECL([], [AS], [1], [Assembler program])dnl
db137867 8507
7083c021 8508test -z "$DLLTOOL" && DLLTOOL=dlltool
b6d0720c 8509_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
db137867 8510
7083c021 8511test -z "$OBJDUMP" && OBJDUMP=objdump
b6d0720c 8512_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
7083c021 8513])# win32-dll
db137867 8514
7083c021
AC
8515AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8516[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8517_LT_SET_OPTION([LT_INIT], [win32-dll])
8518AC_DIAGNOSE([obsolete],
8519[$0: Remove this warning and the call to _LT_SET_OPTION when you
6f57a957 8520put the 'win32-dll' option into LT_INIT's first parameter.])
7083c021 8521])
db137867 8522
7083c021
AC
8523dnl aclocal-1.4 backwards compatibility:
8524dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8525
8526
8527# _LT_ENABLE_SHARED([DEFAULT])
8528# ----------------------------
6f57a957
AC
8529# implement the --enable-shared flag, and supports the 'shared' and
8530# 'disable-shared' LT_INIT options.
8531# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
7083c021
AC
8532m4_define([_LT_ENABLE_SHARED],
8533[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8534AC_ARG_ENABLE([shared],
8535 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8536 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8537 [p=${PACKAGE-default}
8538 case $enableval in
8539 yes) enable_shared=yes ;;
8540 no) enable_shared=no ;;
8541 *)
8542 enable_shared=no
8543 # Look at the argument we got. We use all the common list separators.
6f57a957 8544 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7083c021 8545 for pkg in $enableval; do
6f57a957 8546 IFS=$lt_save_ifs
7083c021
AC
8547 if test "X$pkg" = "X$p"; then
8548 enable_shared=yes
8549 fi
8550 done
6f57a957 8551 IFS=$lt_save_ifs
db137867 8552 ;;
7083c021
AC
8553 esac],
8554 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
db137867 8555
7083c021
AC
8556 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8557 [Whether or not to build shared libraries])
8558])# _LT_ENABLE_SHARED
db137867 8559
7083c021
AC
8560LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8561LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
db137867 8562
7083c021
AC
8563# Old names:
8564AC_DEFUN([AC_ENABLE_SHARED],
8565[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8566])
db137867 8567
7083c021
AC
8568AC_DEFUN([AC_DISABLE_SHARED],
8569[_LT_SET_OPTION([LT_INIT], [disable-shared])
8570])
db137867 8571
7083c021
AC
8572AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8573AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
db137867 8574
7083c021
AC
8575dnl aclocal-1.4 backwards compatibility:
8576dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8577dnl AC_DEFUN([AM_DISABLE_SHARED], [])
db137867 8578
db137867 8579
db137867 8580
7083c021
AC
8581# _LT_ENABLE_STATIC([DEFAULT])
8582# ----------------------------
6f57a957
AC
8583# implement the --enable-static flag, and support the 'static' and
8584# 'disable-static' LT_INIT options.
8585# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
7083c021
AC
8586m4_define([_LT_ENABLE_STATIC],
8587[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8588AC_ARG_ENABLE([static],
8589 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8590 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8591 [p=${PACKAGE-default}
8592 case $enableval in
8593 yes) enable_static=yes ;;
8594 no) enable_static=no ;;
8595 *)
8596 enable_static=no
8597 # Look at the argument we got. We use all the common list separators.
6f57a957 8598 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7083c021 8599 for pkg in $enableval; do
6f57a957 8600 IFS=$lt_save_ifs
7083c021
AC
8601 if test "X$pkg" = "X$p"; then
8602 enable_static=yes
8603 fi
8604 done
6f57a957 8605 IFS=$lt_save_ifs
db137867 8606 ;;
7083c021
AC
8607 esac],
8608 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
db137867 8609
7083c021
AC
8610 _LT_DECL([build_old_libs], [enable_static], [0],
8611 [Whether or not to build static libraries])
8612])# _LT_ENABLE_STATIC
db137867 8613
7083c021
AC
8614LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8615LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
db137867 8616
7083c021
AC
8617# Old names:
8618AC_DEFUN([AC_ENABLE_STATIC],
8619[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8620])
db137867 8621
7083c021
AC
8622AC_DEFUN([AC_DISABLE_STATIC],
8623[_LT_SET_OPTION([LT_INIT], [disable-static])
8624])
db137867 8625
7083c021
AC
8626AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8627AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
db137867 8628
7083c021
AC
8629dnl aclocal-1.4 backwards compatibility:
8630dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8631dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8632
8633
8634
8635# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8636# ----------------------------------
6f57a957
AC
8637# implement the --enable-fast-install flag, and support the 'fast-install'
8638# and 'disable-fast-install' LT_INIT options.
8639# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
7083c021
AC
8640m4_define([_LT_ENABLE_FAST_INSTALL],
8641[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8642AC_ARG_ENABLE([fast-install],
8643 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8644 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8645 [p=${PACKAGE-default}
8646 case $enableval in
8647 yes) enable_fast_install=yes ;;
8648 no) enable_fast_install=no ;;
8649 *)
8650 enable_fast_install=no
8651 # Look at the argument we got. We use all the common list separators.
6f57a957 8652 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7083c021 8653 for pkg in $enableval; do
6f57a957 8654 IFS=$lt_save_ifs
7083c021
AC
8655 if test "X$pkg" = "X$p"; then
8656 enable_fast_install=yes
db137867 8657 fi
7083c021 8658 done
6f57a957 8659 IFS=$lt_save_ifs
db137867 8660 ;;
7083c021
AC
8661 esac],
8662 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
db137867 8663
7083c021
AC
8664_LT_DECL([fast_install], [enable_fast_install], [0],
8665 [Whether or not to optimize for fast installation])dnl
8666])# _LT_ENABLE_FAST_INSTALL
db137867 8667
7083c021
AC
8668LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8669LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
db137867 8670
7083c021
AC
8671# Old names:
8672AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8673[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8674AC_DIAGNOSE([obsolete],
8675[$0: Remove this warning and the call to _LT_SET_OPTION when you put
6f57a957 8676the 'fast-install' option into LT_INIT's first parameter.])
7083c021 8677])
db137867 8678
7083c021
AC
8679AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8680[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8681AC_DIAGNOSE([obsolete],
8682[$0: Remove this warning and the call to _LT_SET_OPTION when you put
6f57a957 8683the 'disable-fast-install' option into LT_INIT's first parameter.])
7083c021 8684])
db137867 8685
7083c021
AC
8686dnl aclocal-1.4 backwards compatibility:
8687dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8688dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
db137867 8689
db137867 8690
6f57a957
AC
8691# _LT_WITH_AIX_SONAME([DEFAULT])
8692# ----------------------------------
8693# implement the --with-aix-soname flag, and support the `aix-soname=aix'
8694# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
8695# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
8696m4_define([_LT_WITH_AIX_SONAME],
8697[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
8698shared_archive_member_spec=
8699case $host,$enable_shared in
8700power*-*-aix[[5-9]]*,yes)
8701 AC_MSG_CHECKING([which variant of shared library versioning to provide])
8702 AC_ARG_WITH([aix-soname],
8703 [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
8704 [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
8705 [case $withval in
8706 aix|svr4|both)
8707 ;;
8708 *)
8709 AC_MSG_ERROR([Unknown argument to --with-aix-soname])
8710 ;;
8711 esac
8712 lt_cv_with_aix_soname=$with_aix_soname],
8713 [AC_CACHE_VAL([lt_cv_with_aix_soname],
8714 [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
8715 with_aix_soname=$lt_cv_with_aix_soname])
8716 AC_MSG_RESULT([$with_aix_soname])
8717 if test aix != "$with_aix_soname"; then
8718 # For the AIX way of multilib, we name the shared archive member
8719 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8720 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8721 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8722 # the AIX toolchain works better with OBJECT_MODE set (default 32).
8723 if test 64 = "${OBJECT_MODE-32}"; then
8724 shared_archive_member_spec=shr_64
8725 else
8726 shared_archive_member_spec=shr
8727 fi
8728 fi
8729 ;;
8730*)
8731 with_aix_soname=aix
8732 ;;
8733esac
8734
8735_LT_DECL([], [shared_archive_member_spec], [0],
8736 [Shared archive member basename, for filename based shared library versioning on AIX])dnl
8737])# _LT_WITH_AIX_SONAME
8738
8739LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
8740LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
8741LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
8742
8743
7083c021
AC
8744# _LT_WITH_PIC([MODE])
8745# --------------------
6f57a957 8746# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
7083c021 8747# LT_INIT options.
6f57a957 8748# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
7083c021
AC
8749m4_define([_LT_WITH_PIC],
8750[AC_ARG_WITH([pic],
a949ab1a 8751 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
7083c021 8752 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
a949ab1a
AC
8753 [lt_p=${PACKAGE-default}
8754 case $withval in
8755 yes|no) pic_mode=$withval ;;
8756 *)
8757 pic_mode=default
8758 # Look at the argument we got. We use all the common list separators.
6f57a957 8759 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
a949ab1a 8760 for lt_pkg in $withval; do
6f57a957 8761 IFS=$lt_save_ifs
a949ab1a
AC
8762 if test "X$lt_pkg" = "X$lt_p"; then
8763 pic_mode=yes
8764 fi
8765 done
6f57a957 8766 IFS=$lt_save_ifs
a949ab1a
AC
8767 ;;
8768 esac],
6f57a957 8769 [pic_mode=m4_default([$1], [default])])
db137867 8770
7083c021
AC
8771_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8772])# _LT_WITH_PIC
db137867 8773
7083c021
AC
8774LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8775LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8776
8777# Old name:
8778AU_DEFUN([AC_LIBTOOL_PICMODE],
8779[_LT_SET_OPTION([LT_INIT], [pic-only])
8780AC_DIAGNOSE([obsolete],
8781[$0: Remove this warning and the call to _LT_SET_OPTION when you
6f57a957 8782put the 'pic-only' option into LT_INIT's first parameter.])
db137867 8783])
db137867 8784
7083c021
AC
8785dnl aclocal-1.4 backwards compatibility:
8786dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
db137867 8787
db137867 8788
7083c021
AC
8789m4_define([_LTDL_MODE], [])
8790LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8791 [m4_define([_LTDL_MODE], [nonrecursive])])
8792LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8793 [m4_define([_LTDL_MODE], [recursive])])
8794LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8795 [m4_define([_LTDL_MODE], [subproject])])
db137867 8796
7083c021
AC
8797m4_define([_LTDL_TYPE], [])
8798LT_OPTION_DEFINE([LTDL_INIT], [installable],
8799 [m4_define([_LTDL_TYPE], [installable])])
8800LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8801 [m4_define([_LTDL_TYPE], [convenience])])
db137867 8802
7083c021 8803# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
db137867 8804#
6f57a957
AC
8805# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8806# Foundation, Inc.
7083c021 8807# Written by Gary V. Vaughan, 2004
db137867 8808#
7083c021
AC
8809# This file is free software; the Free Software Foundation gives
8810# unlimited permission to copy and/or distribute it, with or without
8811# modifications, as long as this notice is preserved.
8812
8813# serial 6 ltsugar.m4
8814
8815# This is to help aclocal find these macros, as it can't see m4_define.
8816AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8817
8818
8819# lt_join(SEP, ARG1, [ARG2...])
8820# -----------------------------
8821# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8822# associated separator.
8823# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8824# versions in m4sugar had bugs.
8825m4_define([lt_join],
8826[m4_if([$#], [1], [],
8827 [$#], [2], [[$2]],
8828 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8829m4_define([_lt_join],
8830[m4_if([$#$2], [2], [],
8831 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8832
8833
8834# lt_car(LIST)
8835# lt_cdr(LIST)
8836# ------------
8837# Manipulate m4 lists.
8838# These macros are necessary as long as will still need to support
6f57a957 8839# Autoconf-2.59, which quotes differently.
7083c021
AC
8840m4_define([lt_car], [[$1]])
8841m4_define([lt_cdr],
8842[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8843 [$#], 1, [],
8844 [m4_dquote(m4_shift($@))])])
8845m4_define([lt_unquote], $1)
8846
8847
8848# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8849# ------------------------------------------
6f57a957 8850# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
7083c021
AC
8851# Note that neither SEPARATOR nor STRING are expanded; they are appended
8852# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8853# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8854# than defined and empty).
db137867 8855#
7083c021
AC
8856# This macro is needed until we can rely on Autoconf 2.62, since earlier
8857# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8858m4_define([lt_append],
8859[m4_define([$1],
8860 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8861
8862
8863
8864# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8865# ----------------------------------------------------------
8866# Produce a SEP delimited list of all paired combinations of elements of
8867# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8868# has the form PREFIXmINFIXSUFFIXn.
8869# Needed until we can rely on m4_combine added in Autoconf 2.62.
8870m4_define([lt_combine],
8871[m4_if(m4_eval([$# > 3]), [1],
8872 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8873[[m4_foreach([_Lt_prefix], [$2],
8874 [m4_foreach([_Lt_suffix],
8875 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8876 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8877
8878
8879# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8880# -----------------------------------------------------------------------
8881# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8882# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8883m4_define([lt_if_append_uniq],
8884[m4_ifdef([$1],
8885 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8886 [lt_append([$1], [$2], [$3])$4],
8887 [$5])],
8888 [lt_append([$1], [$2], [$3])$4])])
8889
8890
8891# lt_dict_add(DICT, KEY, VALUE)
8892# -----------------------------
8893m4_define([lt_dict_add],
8894[m4_define([$1($2)], [$3])])
db137867
AC
8895
8896
7083c021
AC
8897# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8898# --------------------------------------------
8899m4_define([lt_dict_add_subkey],
8900[m4_define([$1($2:$3)], [$4])])
db137867
AC
8901
8902
7083c021
AC
8903# lt_dict_fetch(DICT, KEY, [SUBKEY])
8904# ----------------------------------
8905m4_define([lt_dict_fetch],
8906[m4_ifval([$3],
8907 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8908 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
db137867 8909
db137867 8910
7083c021
AC
8911# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8912# -----------------------------------------------------------------
8913m4_define([lt_if_dict_fetch],
8914[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8915 [$5],
8916 [$6])])
db137867 8917
7083c021
AC
8918
8919# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8920# --------------------------------------------------------------
8921m4_define([lt_dict_filter],
8922[m4_if([$5], [], [],
8923 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8924 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8925 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
db137867
AC
8926])
8927
7083c021
AC
8928# ltversion.m4 -- version numbers -*- Autoconf -*-
8929#
6f57a957 8930# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
7083c021
AC
8931# Written by Scott James Remnant, 2004
8932#
8933# This file is free software; the Free Software Foundation gives
8934# unlimited permission to copy and/or distribute it, with or without
8935# modifications, as long as this notice is preserved.
db137867 8936
b6d0720c 8937# @configure_input@
db137867 8938
6f57a957 8939# serial 4179 ltversion.m4
7083c021 8940# This file is part of GNU Libtool
db137867 8941
6f57a957
AC
8942m4_define([LT_PACKAGE_VERSION], [2.4.6])
8943m4_define([LT_PACKAGE_REVISION], [2.4.6])
db137867 8944
7083c021 8945AC_DEFUN([LTVERSION_VERSION],
6f57a957
AC
8946[macro_version='2.4.6'
8947macro_revision='2.4.6'
7083c021
AC
8948_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8949_LT_DECL(, macro_revision, 0)
db137867
AC
8950])
8951
7083c021
AC
8952# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8953#
6f57a957
AC
8954# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8955# Foundation, Inc.
7083c021
AC
8956# Written by Scott James Remnant, 2004.
8957#
8958# This file is free software; the Free Software Foundation gives
8959# unlimited permission to copy and/or distribute it, with or without
8960# modifications, as long as this notice is preserved.
8961
b6d0720c 8962# serial 5 lt~obsolete.m4
7083c021
AC
8963
8964# These exist entirely to fool aclocal when bootstrapping libtool.
8965#
6f57a957 8966# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
7083c021
AC
8967# which have later been changed to m4_define as they aren't part of the
8968# exported API, or moved to Autoconf or Automake where they belong.
8969#
8970# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8971# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8972# using a macro with the same name in our local m4/libtool.m4 it'll
8973# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8974# and doesn't know about Autoconf macros at all.)
8975#
8976# So we provide this file, which has a silly filename so it's always
8977# included after everything else. This provides aclocal with the
8978# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8979# because those macros already exist, or will be overwritten later.
6f57a957 8980# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
7083c021
AC
8981#
8982# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8983# Yes, that means every name once taken will need to remain here until
8984# we give up compatibility with versions before 1.7, at which point
8985# we need to keep only those names which we still refer to.
8986
8987# This is to help aclocal find these macros, as it can't see m4_define.
8988AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8989
8990m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8991m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8992m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8993m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8994m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8995m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8996m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8997m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8998m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8999m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
9000m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
9001m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
9002m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
9003m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
9004m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9005m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9006m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
9007m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9008m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9009m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
9010m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
9011m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9012m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9013m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9014m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9015m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9016m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9017m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9018m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
9019m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
9020m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
9021m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9022m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9023m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
9024m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
9025m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9026m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9027m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
9028m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9029m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
9030m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
9031m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
7083c021
AC
9032m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9033m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9034m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9035m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9036m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9037m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9038m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9039m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9040m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9041m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9042m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
9043m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
b6d0720c
AC
9044m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9045m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9046m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9047m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9048m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
9049m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
9050m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
7083c021 9051
f0718c93
AC
9052dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
9053dnl serial 11 (pkg-config-0.29)
9054dnl
9055dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
9056dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
9057dnl
9058dnl This program is free software; you can redistribute it and/or modify
9059dnl it under the terms of the GNU General Public License as published by
9060dnl the Free Software Foundation; either version 2 of the License, or
9061dnl (at your option) any later version.
9062dnl
9063dnl This program is distributed in the hope that it will be useful, but
9064dnl WITHOUT ANY WARRANTY; without even the implied warranty of
9065dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9066dnl General Public License for more details.
9067dnl
9068dnl You should have received a copy of the GNU General Public License
9069dnl along with this program; if not, write to the Free Software
9070dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
9071dnl 02111-1307, USA.
9072dnl
9073dnl As a special exception to the GNU General Public License, if you
9074dnl distribute this file as part of a program that contains a
9075dnl configuration script generated by Autoconf, you may include it under
9076dnl the same distribution terms that you use for the rest of that
9077dnl program.
9078
9079dnl PKG_PREREQ(MIN-VERSION)
9080dnl -----------------------
9081dnl Since: 0.29
9082dnl
9083dnl Verify that the version of the pkg-config macros are at least
9084dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
9085dnl installed version of pkg-config, this checks the developer's version
9086dnl of pkg.m4 when generating configure.
9087dnl
9088dnl To ensure that this macro is defined, also add:
9089dnl m4_ifndef([PKG_PREREQ],
9090dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
9091dnl
9092dnl See the "Since" comment for each macro you use to see what version
9093dnl of the macros you require.
9094m4_defun([PKG_PREREQ],
9095[m4_define([PKG_MACROS_VERSION], [0.29])
9096m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
9097 [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
9098])dnl PKG_PREREQ
9099
9100dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
9101dnl ----------------------------------
9102dnl Since: 0.16
9103dnl
9104dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
9105dnl first found in the path. Checks that the version of pkg-config found
9106dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
9107dnl used since that's the first version where most current features of
9108dnl pkg-config existed.
e4cf89d4
AB
9109AC_DEFUN([PKG_PROG_PKG_CONFIG],
9110[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
9111m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
9112m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
9113AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
9114AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
9115AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
9116
9117if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
9118 AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
9119fi
9120if test -n "$PKG_CONFIG"; then
9121 _pkg_min_version=m4_default([$1], [0.9.0])
9122 AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
9123 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
9124 AC_MSG_RESULT([yes])
9125 else
9126 AC_MSG_RESULT([no])
9127 PKG_CONFIG=""
9128 fi
9129fi[]dnl
f0718c93 9130])dnl PKG_PROG_PKG_CONFIG
e4cf89d4 9131
f0718c93
AC
9132dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9133dnl -------------------------------------------------------------------
9134dnl Since: 0.18
9135dnl
9136dnl Check to see whether a particular set of modules exists. Similar to
9137dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
9138dnl
9139dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9140dnl only at the first occurence in configure.ac, so if the first place
9141dnl it's called might be skipped (such as if it is within an "if", you
9142dnl have to call PKG_CHECK_EXISTS manually
e4cf89d4
AB
9143AC_DEFUN([PKG_CHECK_EXISTS],
9144[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9145if test -n "$PKG_CONFIG" && \
9146 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
9147 m4_default([$2], [:])
9148m4_ifvaln([$3], [else
9149 $3])dnl
9150fi])
9151
f0718c93
AC
9152dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
9153dnl ---------------------------------------------
9154dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
9155dnl pkg_failed based on the result.
e4cf89d4
AB
9156m4_define([_PKG_CONFIG],
9157[if test -n "$$1"; then
9158 pkg_cv_[]$1="$$1"
9159 elif test -n "$PKG_CONFIG"; then
9160 PKG_CHECK_EXISTS([$3],
9161 [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
9162 test "x$?" != "x0" && pkg_failed=yes ],
9163 [pkg_failed=yes])
9164 else
9165 pkg_failed=untried
9166fi[]dnl
f0718c93 9167])dnl _PKG_CONFIG
e4cf89d4 9168
f0718c93
AC
9169dnl _PKG_SHORT_ERRORS_SUPPORTED
9170dnl ---------------------------
9171dnl Internal check to see if pkg-config supports short errors.
e4cf89d4
AB
9172AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
9173[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
9174if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
9175 _pkg_short_errors_supported=yes
9176else
9177 _pkg_short_errors_supported=no
9178fi[]dnl
f0718c93 9179])dnl _PKG_SHORT_ERRORS_SUPPORTED
e4cf89d4
AB
9180
9181
f0718c93
AC
9182dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9183dnl [ACTION-IF-NOT-FOUND])
9184dnl --------------------------------------------------------------
9185dnl Since: 0.4.0
9186dnl
9187dnl Note that if there is a possibility the first call to
9188dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
9189dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
e4cf89d4
AB
9190AC_DEFUN([PKG_CHECK_MODULES],
9191[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9192AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
9193AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
9194
9195pkg_failed=no
9196AC_MSG_CHECKING([for $1])
9197
9198_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
9199_PKG_CONFIG([$1][_LIBS], [libs], [$2])
9200
9201m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
9202and $1[]_LIBS to avoid the need to call pkg-config.
9203See the pkg-config man page for more details.])
9204
9205if test $pkg_failed = yes; then
9206 AC_MSG_RESULT([no])
9207 _PKG_SHORT_ERRORS_SUPPORTED
9208 if test $_pkg_short_errors_supported = yes; then
9209 $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
9210 else
9211 $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
9212 fi
9213 # Put the nasty error message in config.log where it belongs
9214 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
9215
9216 m4_default([$4], [AC_MSG_ERROR(
9217[Package requirements ($2) were not met:
9218
9219$$1_PKG_ERRORS
9220
9221Consider adjusting the PKG_CONFIG_PATH environment variable if you
9222installed software in a non-standard prefix.
9223
9224_PKG_TEXT])[]dnl
9225 ])
9226elif test $pkg_failed = untried; then
9227 AC_MSG_RESULT([no])
9228 m4_default([$4], [AC_MSG_FAILURE(
9229[The pkg-config script could not be found or is too old. Make sure it
9230is in your PATH or set the PKG_CONFIG environment variable to the full
9231path to pkg-config.
9232
9233_PKG_TEXT
9234
9235To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
9236 ])
9237else
9238 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
9239 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
9240 AC_MSG_RESULT([yes])
9241 $3
9242fi[]dnl
f0718c93 9243])dnl PKG_CHECK_MODULES
e4cf89d4 9244
f0718c93
AC
9245
9246dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
9247dnl [ACTION-IF-NOT-FOUND])
9248dnl ---------------------------------------------------------------------
9249dnl Since: 0.29
9250dnl
9251dnl Checks for existence of MODULES and gathers its build flags with
9252dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
9253dnl and VARIABLE-PREFIX_LIBS from --libs.
9254dnl
9255dnl Note that if there is a possibility the first call to
9256dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
9257dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
9258dnl configure.ac.
9259AC_DEFUN([PKG_CHECK_MODULES_STATIC],
9260[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9261_save_PKG_CONFIG=$PKG_CONFIG
9262PKG_CONFIG="$PKG_CONFIG --static"
9263PKG_CHECK_MODULES($@)
9264PKG_CONFIG=$_save_PKG_CONFIG[]dnl
9265])dnl PKG_CHECK_MODULES_STATIC
9266
9267
9268dnl PKG_INSTALLDIR([DIRECTORY])
9269dnl -------------------------
9270dnl Since: 0.27
9271dnl
9272dnl Substitutes the variable pkgconfigdir as the location where a module
9273dnl should install pkg-config .pc files. By default the directory is
9274dnl $libdir/pkgconfig, but the default can be changed by passing
9275dnl DIRECTORY. The user can override through the --with-pkgconfigdir
9276dnl parameter.
bf4e01a4
AC
9277AC_DEFUN([PKG_INSTALLDIR],
9278[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
9279m4_pushdef([pkg_description],
9280 [pkg-config installation directory @<:@]pkg_default[@:>@])
9281AC_ARG_WITH([pkgconfigdir],
9282 [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
9283 [with_pkgconfigdir=]pkg_default)
9284AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
9285m4_popdef([pkg_default])
9286m4_popdef([pkg_description])
f0718c93 9287])dnl PKG_INSTALLDIR
bf4e01a4
AC
9288
9289
f0718c93
AC
9290dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
9291dnl --------------------------------
9292dnl Since: 0.27
9293dnl
9294dnl Substitutes the variable noarch_pkgconfigdir as the location where a
9295dnl module should install arch-independent pkg-config .pc files. By
9296dnl default the directory is $datadir/pkgconfig, but the default can be
9297dnl changed by passing DIRECTORY. The user can override through the
9298dnl --with-noarch-pkgconfigdir parameter.
bf4e01a4
AC
9299AC_DEFUN([PKG_NOARCH_INSTALLDIR],
9300[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
9301m4_pushdef([pkg_description],
9302 [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
9303AC_ARG_WITH([noarch-pkgconfigdir],
9304 [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
9305 [with_noarch_pkgconfigdir=]pkg_default)
9306AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
9307m4_popdef([pkg_default])
9308m4_popdef([pkg_description])
f0718c93 9309])dnl PKG_NOARCH_INSTALLDIR
bf4e01a4
AC
9310
9311
f0718c93
AC
9312dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
9313dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
9314dnl -------------------------------------------
9315dnl Since: 0.28
9316dnl
9317dnl Retrieves the value of the pkg-config variable for the given module.
bf4e01a4
AC
9318AC_DEFUN([PKG_CHECK_VAR],
9319[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
9320AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
9321
9322_PKG_CONFIG([$1], [variable="][$3]["], [$2])
9323AS_VAR_COPY([$1], [pkg_cv_][$1])
9324
9325AS_VAR_IF([$1], [""], [$5], [$4])dnl
f0718c93 9326])dnl PKG_CHECK_VAR
bf4e01a4 9327
6f57a957 9328# Copyright (C) 2002-2014 Free Software Foundation, Inc.
db137867
AC
9329#
9330# This file is free software; the Free Software Foundation
9331# gives unlimited permission to copy and/or distribute it,
9332# with or without modifications, as long as this notice is preserved.
9333
9334# AM_AUTOMAKE_VERSION(VERSION)
9335# ----------------------------
9336# Automake X.Y traces this macro to ensure aclocal.m4 has been
9337# generated from the m4 files accompanying Automake X.Y.
9338# (This private macro should not be called outside this file.)
9339AC_DEFUN([AM_AUTOMAKE_VERSION],
6f57a957 9340[am__api_version='1.15'
db137867
AC
9341dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
9342dnl require some minimum version. Point them to the right macro.
6f57a957 9343m4_if([$1], [1.15], [],
db137867
AC
9344 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
9345])
9346
9347# _AM_AUTOCONF_VERSION(VERSION)
9348# -----------------------------
9349# aclocal traces this macro to find the Autoconf version.
9350# This is a private macro too. Using m4_define simplifies
9351# the logic in aclocal, which can simply ignore this definition.
9352m4_define([_AM_AUTOCONF_VERSION], [])
9353
9354# AM_SET_CURRENT_AUTOMAKE_VERSION
9355# -------------------------------
9356# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
030272f3 9357# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
db137867 9358AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
6f57a957 9359[AM_AUTOMAKE_VERSION([1.15])dnl
b676ea3b
AC
9360m4_ifndef([AC_AUTOCONF_VERSION],
9361 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
030272f3 9362_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
db137867
AC
9363
9364# AM_AUX_DIR_EXPAND -*- Autoconf -*-
9365
6f57a957 9366# Copyright (C) 2001-2014 Free Software Foundation, Inc.
db137867
AC
9367#
9368# This file is free software; the Free Software Foundation
9369# gives unlimited permission to copy and/or distribute it,
9370# with or without modifications, as long as this notice is preserved.
9371
9372# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
bf4e01a4
AC
9373# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
9374# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
db137867
AC
9375#
9376# Of course, Automake must honor this variable whenever it calls a
9377# tool from the auxiliary directory. The problem is that $srcdir (and
9378# therefore $ac_aux_dir as well) can be either absolute or relative,
9379# depending on how configure is run. This is pretty annoying, since
9380# it makes $ac_aux_dir quite unusable in subdirectories: in the top
9381# source directory, any form will work fine, but in subdirectories a
9382# relative path needs to be adjusted first.
9383#
9384# $ac_aux_dir/missing
9385# fails when called from a subdirectory if $ac_aux_dir is relative
9386# $top_srcdir/$ac_aux_dir/missing
9387# fails if $ac_aux_dir is absolute,
9388# fails when called from a subdirectory in a VPATH build with
9389# a relative $ac_aux_dir
9390#
9391# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
9392# are both prefixed by $srcdir. In an in-source build this is usually
bf4e01a4 9393# harmless because $srcdir is '.', but things will broke when you
db137867
AC
9394# start a VPATH build or use an absolute $srcdir.
9395#
9396# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
9397# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
9398# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
9399# and then we would define $MISSING as
9400# MISSING="\${SHELL} $am_aux_dir/missing"
9401# This will work as long as MISSING is not called from configure, because
9402# unfortunately $(top_srcdir) has no meaning in configure.
9403# However there are other variables, like CC, which are often used in
9404# configure, and could therefore not use this "fixed" $ac_aux_dir.
9405#
9406# Another solution, used here, is to always expand $ac_aux_dir to an
9407# absolute PATH. The drawback is that using absolute paths prevent a
9408# configured tree to be moved without reconfiguration.
9409
9410AC_DEFUN([AM_AUX_DIR_EXPAND],
6f57a957
AC
9411[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
9412# Expand $ac_aux_dir to an absolute path.
9413am_aux_dir=`cd "$ac_aux_dir" && pwd`
db137867
AC
9414])
9415
9416# AM_CONDITIONAL -*- Autoconf -*-
9417
6f57a957 9418# Copyright (C) 1997-2014 Free Software Foundation, Inc.
db137867
AC
9419#
9420# This file is free software; the Free Software Foundation
9421# gives unlimited permission to copy and/or distribute it,
9422# with or without modifications, as long as this notice is preserved.
9423
db137867
AC
9424# AM_CONDITIONAL(NAME, SHELL-CONDITION)
9425# -------------------------------------
9426# Define a conditional.
9427AC_DEFUN([AM_CONDITIONAL],
bf4e01a4
AC
9428[AC_PREREQ([2.52])dnl
9429 m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
9430 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
db137867
AC
9431AC_SUBST([$1_TRUE])dnl
9432AC_SUBST([$1_FALSE])dnl
9433_AM_SUBST_NOTMAKE([$1_TRUE])dnl
9434_AM_SUBST_NOTMAKE([$1_FALSE])dnl
7083c021 9435m4_define([_AM_COND_VALUE_$1], [$2])dnl
db137867
AC
9436if $2; then
9437 $1_TRUE=
9438 $1_FALSE='#'
9439else
9440 $1_TRUE='#'
9441 $1_FALSE=
9442fi
9443AC_CONFIG_COMMANDS_PRE(
9444[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
9445 AC_MSG_ERROR([[conditional "$1" was never defined.
9446Usually this means the macro was only invoked conditionally.]])
9447fi])])
9448
6f57a957 9449# Copyright (C) 1999-2014 Free Software Foundation, Inc.
db137867
AC
9450#
9451# This file is free software; the Free Software Foundation
9452# gives unlimited permission to copy and/or distribute it,
9453# with or without modifications, as long as this notice is preserved.
9454
db137867 9455
bf4e01a4 9456# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
db137867
AC
9457# written in clear, in which case automake, when reading aclocal.m4,
9458# will think it sees a *use*, and therefore will trigger all it's
9459# C support machinery. Also note that it means that autoscan, seeing
9460# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
9461
9462
9463# _AM_DEPENDENCIES(NAME)
9464# ----------------------
9465# See how the compiler implements dependency checking.
bf4e01a4 9466# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
db137867
AC
9467# We try a few techniques and use that to set a single cache variable.
9468#
9469# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
9470# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
9471# dependency, and given that the user is not expected to run this macro,
9472# just rely on AC_PROG_CC.
9473AC_DEFUN([_AM_DEPENDENCIES],
9474[AC_REQUIRE([AM_SET_DEPDIR])dnl
9475AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
9476AC_REQUIRE([AM_MAKE_INCLUDE])dnl
9477AC_REQUIRE([AM_DEP_TRACK])dnl
9478
bf4e01a4
AC
9479m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
9480 [$1], [CXX], [depcc="$CXX" am_compiler_list=],
9481 [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
9482 [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
9483 [$1], [UPC], [depcc="$UPC" am_compiler_list=],
9484 [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
9485 [depcc="$$1" am_compiler_list=])
db137867
AC
9486
9487AC_CACHE_CHECK([dependency style of $depcc],
9488 [am_cv_$1_dependencies_compiler_type],
9489[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
9490 # We make a subdir and do the tests there. Otherwise we can end up
9491 # making bogus files that we don't know about and never remove. For
9492 # instance it was reported that on HP-UX the gcc test will end up
bf4e01a4
AC
9493 # making a dummy file named 'D' -- because '-MD' means "put the output
9494 # in D".
e4cf89d4 9495 rm -rf conftest.dir
db137867
AC
9496 mkdir conftest.dir
9497 # Copy depcomp to subdir because otherwise we won't find it if we're
9498 # using a relative directory.
9499 cp "$am_depcomp" conftest.dir
9500 cd conftest.dir
9501 # We will build objects and dependencies in a subdirectory because
9502 # it helps to detect inapplicable dependency modes. For instance
9503 # both Tru64's cc and ICC support -MD to output dependencies as a
9504 # side effect of compilation, but ICC will put the dependencies in
9505 # the current directory while Tru64 will put them in the object
9506 # directory.
9507 mkdir sub
9508
9509 am_cv_$1_dependencies_compiler_type=none
9510 if test "$am_compiler_list" = ""; then
9511 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
9512 fi
7083c021
AC
9513 am__universal=false
9514 m4_case([$1], [CC],
9515 [case " $depcc " in #(
9516 *\ -arch\ *\ -arch\ *) am__universal=true ;;
9517 esac],
9518 [CXX],
9519 [case " $depcc " in #(
9520 *\ -arch\ *\ -arch\ *) am__universal=true ;;
9521 esac])
9522
db137867
AC
9523 for depmode in $am_compiler_list; do
9524 # Setup a source with many dependencies, because some compilers
9525 # like to wrap large dependency lists on column 80 (with \), and
9526 # we should not choose a depcomp mode which is confused by this.
9527 #
9528 # We need to recreate these files for each test, as the compiler may
9529 # overwrite some of them when testing with obscure command lines.
9530 # This happens at least with the AIX C compiler.
9531 : > sub/conftest.c
9532 for i in 1 2 3 4 5 6; do
9533 echo '#include "conftst'$i'.h"' >> sub/conftest.c
bf4e01a4
AC
9534 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
9535 # Solaris 10 /bin/sh.
9536 echo '/* dummy */' > sub/conftst$i.h
db137867
AC
9537 done
9538 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
9539
bf4e01a4 9540 # We check with '-c' and '-o' for the sake of the "dashmstdout"
7083c021 9541 # mode. It turns out that the SunPro C++ compiler does not properly
bf4e01a4
AC
9542 # handle '-M -o', and we need to detect this. Also, some Intel
9543 # versions had trouble with output in subdirs.
7083c021
AC
9544 am__obj=sub/conftest.${OBJEXT-o}
9545 am__minus_obj="-o $am__obj"
db137867 9546 case $depmode in
7083c021
AC
9547 gcc)
9548 # This depmode causes a compiler race in universal mode.
9549 test "$am__universal" = false || continue
9550 ;;
db137867 9551 nosideeffect)
bf4e01a4
AC
9552 # After this tag, mechanisms are not by side-effect, so they'll
9553 # only be used when explicitly requested.
db137867
AC
9554 if test "x$enable_dependency_tracking" = xyes; then
9555 continue
9556 else
9557 break
9558 fi
9559 ;;
e4cf89d4 9560 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
bf4e01a4 9561 # This compiler won't grok '-c -o', but also, the minuso test has
7083c021
AC
9562 # not run yet. These depmodes are late enough in the game, and
9563 # so weak that their functioning should not be impacted.
9564 am__obj=conftest.${OBJEXT-o}
9565 am__minus_obj=
9566 ;;
db137867
AC
9567 none) break ;;
9568 esac
db137867 9569 if depmode=$depmode \
7083c021 9570 source=sub/conftest.c object=$am__obj \
db137867 9571 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
7083c021 9572 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
db137867
AC
9573 >/dev/null 2>conftest.err &&
9574 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
9575 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
7083c021 9576 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
db137867
AC
9577 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
9578 # icc doesn't choke on unknown options, it will just issue warnings
9579 # or remarks (even with -Werror). So we grep stderr for any message
9580 # that says an option was ignored or not supported.
9581 # When given -MP, icc 7.0 and 7.1 complain thusly:
9582 # icc: Command line warning: ignoring option '-M'; no argument required
9583 # The diagnosis changed in icc 8.0:
9584 # icc: Command line remark: option '-MP' not supported
9585 if (grep 'ignoring option' conftest.err ||
9586 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
9587 am_cv_$1_dependencies_compiler_type=$depmode
9588 break
9589 fi
9590 fi
9591 done
9592
9593 cd ..
9594 rm -rf conftest.dir
9595else
9596 am_cv_$1_dependencies_compiler_type=none
9597fi
9598])
9599AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
9600AM_CONDITIONAL([am__fastdep$1], [
9601 test "x$enable_dependency_tracking" != xno \
9602 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
9603])
9604
9605
9606# AM_SET_DEPDIR
9607# -------------
9608# Choose a directory name for dependency files.
bf4e01a4 9609# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
db137867
AC
9610AC_DEFUN([AM_SET_DEPDIR],
9611[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9612AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
9613])
9614
9615
9616# AM_DEP_TRACK
9617# ------------
9618AC_DEFUN([AM_DEP_TRACK],
bf4e01a4
AC
9619[AC_ARG_ENABLE([dependency-tracking], [dnl
9620AS_HELP_STRING(
9621 [--enable-dependency-tracking],
9622 [do not reject slow dependency extractors])
9623AS_HELP_STRING(
9624 [--disable-dependency-tracking],
9625 [speeds up one-time build])])
db137867
AC
9626if test "x$enable_dependency_tracking" != xno; then
9627 am_depcomp="$ac_aux_dir/depcomp"
9628 AMDEPBACKSLASH='\'
e4cf89d4 9629 am__nodep='_no'
db137867
AC
9630fi
9631AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
9632AC_SUBST([AMDEPBACKSLASH])dnl
9633_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
e4cf89d4
AB
9634AC_SUBST([am__nodep])dnl
9635_AM_SUBST_NOTMAKE([am__nodep])dnl
db137867
AC
9636])
9637
9638# Generate code to set up dependency tracking. -*- Autoconf -*-
9639
6f57a957 9640# Copyright (C) 1999-2014 Free Software Foundation, Inc.
db137867
AC
9641#
9642# This file is free software; the Free Software Foundation
9643# gives unlimited permission to copy and/or distribute it,
9644# with or without modifications, as long as this notice is preserved.
9645
db137867
AC
9646
9647# _AM_OUTPUT_DEPENDENCY_COMMANDS
9648# ------------------------------
9649AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
7083c021 9650[{
bf4e01a4 9651 # Older Autoconf quotes --file arguments for eval, but not when files
7083c021
AC
9652 # are listed without --file. Let's play safe and only enable the eval
9653 # if we detect the quoting.
9654 case $CONFIG_FILES in
9655 *\'*) eval set x "$CONFIG_FILES" ;;
9656 *) set x $CONFIG_FILES ;;
9657 esac
9658 shift
9659 for mf
9660 do
9661 # Strip MF so we end up with the name of the file.
9662 mf=`echo "$mf" | sed -e 's/:.*$//'`
9663 # Check whether this is an Automake generated Makefile or not.
bf4e01a4 9664 # We used to match only the files named 'Makefile.in', but
7083c021
AC
9665 # some people rename them; so instead we look at the file content.
9666 # Grep'ing the first line is not enough: some people post-process
9667 # each Makefile.in and add a new line on top of each file to say so.
9668 # Grep'ing the whole file is not good either: AIX grep has a line
9669 # limit of 2048, but all sed's we know have understand at least 4000.
9670 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
9671 dirpart=`AS_DIRNAME("$mf")`
9672 else
9673 continue
9674 fi
9675 # Extract the definition of DEPDIR, am__include, and am__quote
bf4e01a4 9676 # from the Makefile without running 'make'.
7083c021
AC
9677 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
9678 test -z "$DEPDIR" && continue
9679 am__include=`sed -n 's/^am__include = //p' < "$mf"`
bf4e01a4 9680 test -z "$am__include" && continue
7083c021 9681 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
7083c021
AC
9682 # Find all dependency output files, they are included files with
9683 # $(DEPDIR) in their names. We invoke sed twice because it is the
9684 # simplest approach to changing $(DEPDIR) to its actual value in the
9685 # expansion.
9686 for file in `sed -n "
9687 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
bf4e01a4 9688 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
7083c021
AC
9689 # Make sure the directory exists.
9690 test -f "$dirpart/$file" && continue
9691 fdir=`AS_DIRNAME(["$file"])`
9692 AS_MKDIR_P([$dirpart/$fdir])
9693 # echo "creating $dirpart/$file"
9694 echo '# dummy' > "$dirpart/$file"
9695 done
db137867 9696 done
7083c021 9697}
db137867
AC
9698])# _AM_OUTPUT_DEPENDENCY_COMMANDS
9699
9700
9701# AM_OUTPUT_DEPENDENCY_COMMANDS
9702# -----------------------------
9703# This macro should only be invoked once -- use via AC_REQUIRE.
9704#
9705# This code is only required when automatic dependency tracking
bf4e01a4 9706# is enabled. FIXME. This creates each '.P' file that we will
db137867
AC
9707# need in order to bootstrap the dependency handling code.
9708AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9709[AC_CONFIG_COMMANDS([depfiles],
9710 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
9711 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
9712])
9713
db137867
AC
9714# Do all the work for Automake. -*- Autoconf -*-
9715
6f57a957 9716# Copyright (C) 1996-2014 Free Software Foundation, Inc.
db137867
AC
9717#
9718# This file is free software; the Free Software Foundation
9719# gives unlimited permission to copy and/or distribute it,
9720# with or without modifications, as long as this notice is preserved.
9721
db137867
AC
9722# This macro actually does too much. Some checks are only needed if
9723# your package does certain things. But this isn't really a big deal.
9724
bf4e01a4
AC
9725dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
9726m4_define([AC_PROG_CC],
9727m4_defn([AC_PROG_CC])
9728[_AM_PROG_CC_C_O
9729])
9730
db137867
AC
9731# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9732# AM_INIT_AUTOMAKE([OPTIONS])
9733# -----------------------------------------------
9734# The call with PACKAGE and VERSION arguments is the old style
9735# call (pre autoconf-2.50), which is being phased out. PACKAGE
9736# and VERSION should now be passed to AC_INIT and removed from
9737# the call to AM_INIT_AUTOMAKE.
9738# We support both call styles for the transition. After
9739# the next Automake release, Autoconf can make the AC_INIT
9740# arguments mandatory, and then we can depend on a new Autoconf
9741# release and drop the old call support.
9742AC_DEFUN([AM_INIT_AUTOMAKE],
bf4e01a4 9743[AC_PREREQ([2.65])dnl
db137867
AC
9744dnl Autoconf wants to disallow AM_ names. We explicitly allow
9745dnl the ones we care about.
9746m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9747AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9748AC_REQUIRE([AC_PROG_INSTALL])dnl
9749if test "`cd $srcdir && pwd`" != "`pwd`"; then
9750 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9751 # is not polluted with repeated "-I."
9752 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9753 # test to see if srcdir already configured
9754 if test -f $srcdir/config.status; then
9755 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9756 fi
9757fi
9758
9759# test whether we have cygpath
9760if test -z "$CYGPATH_W"; then
9761 if (cygpath --version) >/dev/null 2>/dev/null; then
9762 CYGPATH_W='cygpath -w'
9763 else
9764 CYGPATH_W=echo
9765 fi
9766fi
9767AC_SUBST([CYGPATH_W])
9768
9769# Define the identity of the package.
9770dnl Distinguish between old-style and new-style calls.
9771m4_ifval([$2],
bf4e01a4
AC
9772[AC_DIAGNOSE([obsolete],
9773 [$0: two- and three-arguments forms are deprecated.])
9774m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
db137867
AC
9775 AC_SUBST([PACKAGE], [$1])dnl
9776 AC_SUBST([VERSION], [$2])],
9777[_AM_SET_OPTIONS([$1])dnl
9778dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
bf4e01a4
AC
9779m4_if(
9780 m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
9781 [ok:ok],,
db137867
AC
9782 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
9783 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9784 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9785
9786_AM_IF_OPTION([no-define],,
bf4e01a4
AC
9787[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
9788 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
db137867
AC
9789
9790# Some tools Automake needs.
9791AC_REQUIRE([AM_SANITY_CHECK])dnl
9792AC_REQUIRE([AC_ARG_PROGRAM])dnl
bf4e01a4
AC
9793AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
9794AM_MISSING_PROG([AUTOCONF], [autoconf])
9795AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
9796AM_MISSING_PROG([AUTOHEADER], [autoheader])
9797AM_MISSING_PROG([MAKEINFO], [makeinfo])
7083c021
AC
9798AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9799AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
bf4e01a4
AC
9800AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9801# For better backward compatibility. To be removed once Automake 1.9.x
9802# dies out for good. For more background, see:
9803# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
9804# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
9805AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
6f57a957
AC
9806# We need awk for the "check" target (and possibly the TAP driver). The
9807# system "awk" is bad on some platforms.
db137867
AC
9808AC_REQUIRE([AC_PROG_AWK])dnl
9809AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9810AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9811_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
7083c021
AC
9812 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9813 [_AM_PROG_TAR([v7])])])
db137867
AC
9814_AM_IF_OPTION([no-dependencies],,
9815[AC_PROVIDE_IFELSE([AC_PROG_CC],
bf4e01a4
AC
9816 [_AM_DEPENDENCIES([CC])],
9817 [m4_define([AC_PROG_CC],
9818 m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
db137867 9819AC_PROVIDE_IFELSE([AC_PROG_CXX],
bf4e01a4
AC
9820 [_AM_DEPENDENCIES([CXX])],
9821 [m4_define([AC_PROG_CXX],
9822 m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
db137867 9823AC_PROVIDE_IFELSE([AC_PROG_OBJC],
bf4e01a4
AC
9824 [_AM_DEPENDENCIES([OBJC])],
9825 [m4_define([AC_PROG_OBJC],
9826 m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
9827AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
9828 [_AM_DEPENDENCIES([OBJCXX])],
9829 [m4_define([AC_PROG_OBJCXX],
9830 m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
db137867 9831])
bf4e01a4
AC
9832AC_REQUIRE([AM_SILENT_RULES])dnl
9833dnl The testsuite driver may need to know about EXEEXT, so add the
9834dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
9835dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
7083c021
AC
9836AC_CONFIG_COMMANDS_PRE(dnl
9837[m4_provide_if([_AM_COMPILER_EXEEXT],
9838 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
db137867 9839
bf4e01a4
AC
9840# POSIX will say in a future version that running "rm -f" with no argument
9841# is OK; and we want to be able to make that assumption in our Makefile
9842# recipes. So use an aggressive probe to check that the usage we want is
9843# actually supported "in the wild" to an acceptable degree.
9844# See automake bug#10828.
9845# To make any issue more visible, cause the running configure to be aborted
9846# by default if the 'rm' program in use doesn't match our expectations; the
9847# user can still override this though.
9848if rm -f && rm -fr && rm -rf; then : OK; else
9849 cat >&2 <<'END'
9850Oops!
9851
9852Your 'rm' program seems unable to run without file operands specified
9853on the command line, even when the '-f' option is present. This is contrary
9854to the behaviour of most rm programs out there, and not conforming with
9855the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
9856
9857Please tell bug-automake@gnu.org about your system, including the value
9858of your $PATH and any error possibly output before this message. This
9859can help us improve future automake versions.
9860
9861END
9862 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
9863 echo 'Configuration will proceed anyway, since you have set the' >&2
9864 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
9865 echo >&2
9866 else
9867 cat >&2 <<'END'
9868Aborting the configuration process, to ensure you take notice of the issue.
9869
9870You can download and install GNU coreutils to get an 'rm' implementation
9871that behaves properly: <http://www.gnu.org/software/coreutils/>.
9872
9873If you want to complete the configuration process using your problematic
9874'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
9875to "yes", and re-run configure.
9876
9877END
9878 AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
9879 fi
6f57a957
AC
9880fi
9881dnl The trailing newline in this macro's definition is deliberate, for
9882dnl backward compatibility and to allow trailing 'dnl'-style comments
9883dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
9884])
bf4e01a4
AC
9885
9886dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
7083c021
AC
9887dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9888dnl mangled by Autoconf and run in a shell conditional statement.
9889m4_define([_AC_COMPILER_EXEEXT],
9890m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9891
db137867
AC
9892# When config.status generates a header, we must update the stamp-h file.
9893# This file resides in the same directory as the config header
9894# that is generated. The stamp files are numbered to have different names.
9895
9896# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9897# loop where config.status creates the headers, so we can generate
9898# our stamp files there.
9899AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9900[# Compute $1's index in $config_headers.
b676ea3b 9901_am_arg=$1
db137867
AC
9902_am_stamp_count=1
9903for _am_header in $config_headers :; do
9904 case $_am_header in
b676ea3b 9905 $_am_arg | $_am_arg:* )
db137867
AC
9906 break ;;
9907 * )
9908 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9909 esac
9910done
b676ea3b 9911echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
db137867 9912
6f57a957 9913# Copyright (C) 2001-2014 Free Software Foundation, Inc.
db137867
AC
9914#
9915# This file is free software; the Free Software Foundation
9916# gives unlimited permission to copy and/or distribute it,
9917# with or without modifications, as long as this notice is preserved.
9918
9919# AM_PROG_INSTALL_SH
9920# ------------------
9921# Define $install_sh.
9922AC_DEFUN([AM_PROG_INSTALL_SH],
9923[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
6f57a957 9924if test x"${install_sh+set}" != xset; then
7083c021
AC
9925 case $am_aux_dir in
9926 *\ * | *\ *)
9927 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9928 *)
9929 install_sh="\${SHELL} $am_aux_dir/install-sh"
9930 esac
9931fi
bf4e01a4 9932AC_SUBST([install_sh])])
db137867 9933
6f57a957 9934# Copyright (C) 2003-2014 Free Software Foundation, Inc.
db137867
AC
9935#
9936# This file is free software; the Free Software Foundation
9937# gives unlimited permission to copy and/or distribute it,
9938# with or without modifications, as long as this notice is preserved.
9939
db137867
AC
9940# Check whether the underlying file-system supports filenames
9941# with a leading dot. For instance MS-DOS doesn't.
9942AC_DEFUN([AM_SET_LEADING_DOT],
9943[rm -rf .tst 2>/dev/null
9944mkdir .tst 2>/dev/null
9945if test -d .tst; then
9946 am__leading_dot=.
9947else
9948 am__leading_dot=_
9949fi
9950rmdir .tst 2>/dev/null
9951AC_SUBST([am__leading_dot])])
9952
9953# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
9954# From Jim Meyering
9955
6f57a957 9956# Copyright (C) 1996-2014 Free Software Foundation, Inc.
db137867
AC
9957#
9958# This file is free software; the Free Software Foundation
9959# gives unlimited permission to copy and/or distribute it,
9960# with or without modifications, as long as this notice is preserved.
9961
7083c021
AC
9962# AM_MAINTAINER_MODE([DEFAULT-MODE])
9963# ----------------------------------
9964# Control maintainer-specific portions of Makefiles.
bf4e01a4
AC
9965# Default is to disable them, unless 'enable' is passed literally.
9966# For symmetry, 'disable' may be passed as well. Anyway, the user
7083c021 9967# can override the default with the --enable/--disable switch.
db137867 9968AC_DEFUN([AM_MAINTAINER_MODE],
7083c021
AC
9969[m4_case(m4_default([$1], [disable]),
9970 [enable], [m4_define([am_maintainer_other], [disable])],
9971 [disable], [m4_define([am_maintainer_other], [enable])],
9972 [m4_define([am_maintainer_other], [enable])
9973 m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
e4cf89d4 9974AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
7083c021
AC
9975 dnl maintainer-mode's default is 'disable' unless 'enable' is passed
9976 AC_ARG_ENABLE([maintainer-mode],
bf4e01a4
AC
9977 [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
9978 am_maintainer_other[ make rules and dependencies not useful
9979 (and sometimes confusing) to the casual installer])],
9980 [USE_MAINTAINER_MODE=$enableval],
9981 [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
db137867 9982 AC_MSG_RESULT([$USE_MAINTAINER_MODE])
7083c021 9983 AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
db137867 9984 MAINT=$MAINTAINER_MODE_TRUE
7083c021 9985 AC_SUBST([MAINT])dnl
db137867
AC
9986]
9987)
9988
db137867
AC
9989# Check to see how 'make' treats includes. -*- Autoconf -*-
9990
6f57a957 9991# Copyright (C) 2001-2014 Free Software Foundation, Inc.
db137867
AC
9992#
9993# This file is free software; the Free Software Foundation
9994# gives unlimited permission to copy and/or distribute it,
9995# with or without modifications, as long as this notice is preserved.
9996
db137867
AC
9997# AM_MAKE_INCLUDE()
9998# -----------------
9999# Check to see how make treats includes.
10000AC_DEFUN([AM_MAKE_INCLUDE],
10001[am_make=${MAKE-make}
10002cat > confinc << 'END'
10003am__doit:
7083c021 10004 @echo this is the am__doit target
db137867
AC
10005.PHONY: am__doit
10006END
10007# If we don't find an include directive, just comment out the code.
10008AC_MSG_CHECKING([for style of include used by $am_make])
10009am__include="#"
10010am__quote=
10011_am_result=none
10012# First try GNU make style include.
10013echo "include confinc" > confmf
bf4e01a4 10014# Ignore all kinds of additional output from 'make'.
7083c021
AC
10015case `$am_make -s -f confmf 2> /dev/null` in #(
10016*the\ am__doit\ target*)
10017 am__include=include
10018 am__quote=
10019 _am_result=GNU
10020 ;;
10021esac
db137867
AC
10022# Now try BSD make style include.
10023if test "$am__include" = "#"; then
10024 echo '.include "confinc"' > confmf
7083c021
AC
10025 case `$am_make -s -f confmf 2> /dev/null` in #(
10026 *the\ am__doit\ target*)
10027 am__include=.include
10028 am__quote="\""
10029 _am_result=BSD
10030 ;;
10031 esac
db137867
AC
10032fi
10033AC_SUBST([am__include])
10034AC_SUBST([am__quote])
10035AC_MSG_RESULT([$_am_result])
10036rm -f confinc confmf
10037])
10038
10039# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
10040
6f57a957 10041# Copyright (C) 1997-2014 Free Software Foundation, Inc.
db137867
AC
10042#
10043# This file is free software; the Free Software Foundation
10044# gives unlimited permission to copy and/or distribute it,
10045# with or without modifications, as long as this notice is preserved.
10046
db137867
AC
10047# AM_MISSING_PROG(NAME, PROGRAM)
10048# ------------------------------
10049AC_DEFUN([AM_MISSING_PROG],
10050[AC_REQUIRE([AM_MISSING_HAS_RUN])
10051$1=${$1-"${am_missing_run}$2"}
10052AC_SUBST($1)])
10053
db137867
AC
10054# AM_MISSING_HAS_RUN
10055# ------------------
bf4e01a4
AC
10056# Define MISSING if not defined so far and test if it is modern enough.
10057# If it is, set am_missing_run to use it, otherwise, to nothing.
db137867
AC
10058AC_DEFUN([AM_MISSING_HAS_RUN],
10059[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
10060AC_REQUIRE_AUX_FILE([missing])dnl
7083c021
AC
10061if test x"${MISSING+set}" != xset; then
10062 case $am_aux_dir in
10063 *\ * | *\ *)
10064 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
10065 *)
10066 MISSING="\${SHELL} $am_aux_dir/missing" ;;
10067 esac
10068fi
db137867 10069# Use eval to expand $SHELL
bf4e01a4
AC
10070if eval "$MISSING --is-lightweight"; then
10071 am_missing_run="$MISSING "
db137867
AC
10072else
10073 am_missing_run=
bf4e01a4 10074 AC_MSG_WARN(['missing' script is too old or missing])
db137867
AC
10075fi
10076])
10077
bf4e01a4
AC
10078# -*- Autoconf -*-
10079# Obsolete and "removed" macros, that must however still report explicit
10080# error messages when used, to smooth transition.
10081#
6f57a957 10082# Copyright (C) 1996-2014 Free Software Foundation, Inc.
db137867
AC
10083#
10084# This file is free software; the Free Software Foundation
10085# gives unlimited permission to copy and/or distribute it,
10086# with or without modifications, as long as this notice is preserved.
10087
bf4e01a4
AC
10088AC_DEFUN([AM_CONFIG_HEADER],
10089[AC_DIAGNOSE([obsolete],
10090['$0': this macro is obsolete.
10091You should use the 'AC][_CONFIG_HEADERS' macro instead.])dnl
10092AC_CONFIG_HEADERS($@)])
e4cf89d4 10093
bf4e01a4
AC
10094AC_DEFUN([AM_PROG_CC_STDC],
10095[AC_PROG_CC
10096am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc
10097AC_DIAGNOSE([obsolete],
10098['$0': this macro is obsolete.
10099You should simply use the 'AC][_PROG_CC' macro instead.
10100Also, your code should no longer depend upon 'am_cv_prog_cc_stdc',
10101but upon 'ac_cv_prog_cc_stdc'.])])
10102
10103AC_DEFUN([AM_C_PROTOTYPES],
10104 [AC_FATAL([automatic de-ANSI-fication support has been removed])])
10105AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES])
db137867
AC
10106
10107# Helper functions for option handling. -*- Autoconf -*-
10108
6f57a957 10109# Copyright (C) 2001-2014 Free Software Foundation, Inc.
db137867
AC
10110#
10111# This file is free software; the Free Software Foundation
10112# gives unlimited permission to copy and/or distribute it,
10113# with or without modifications, as long as this notice is preserved.
10114
db137867
AC
10115# _AM_MANGLE_OPTION(NAME)
10116# -----------------------
10117AC_DEFUN([_AM_MANGLE_OPTION],
10118[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
10119
10120# _AM_SET_OPTION(NAME)
e4cf89d4 10121# --------------------
db137867
AC
10122# Set option NAME. Presently that only means defining a flag for this option.
10123AC_DEFUN([_AM_SET_OPTION],
bf4e01a4 10124[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
db137867
AC
10125
10126# _AM_SET_OPTIONS(OPTIONS)
e4cf89d4 10127# ------------------------
db137867
AC
10128# OPTIONS is a space-separated list of Automake options.
10129AC_DEFUN([_AM_SET_OPTIONS],
030272f3 10130[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
db137867
AC
10131
10132# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
10133# -------------------------------------------
10134# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
10135AC_DEFUN([_AM_IF_OPTION],
10136[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
10137
6f57a957 10138# Copyright (C) 1999-2014 Free Software Foundation, Inc.
bf4e01a4
AC
10139#
10140# This file is free software; the Free Software Foundation
10141# gives unlimited permission to copy and/or distribute it,
10142# with or without modifications, as long as this notice is preserved.
10143
10144# _AM_PROG_CC_C_O
10145# ---------------
10146# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
10147# to automatically call this.
10148AC_DEFUN([_AM_PROG_CC_C_O],
10149[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
10150AC_REQUIRE_AUX_FILE([compile])dnl
10151AC_LANG_PUSH([C])dnl
10152AC_CACHE_CHECK(
10153 [whether $CC understands -c and -o together],
10154 [am_cv_prog_cc_c_o],
10155 [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
10156 # Make sure it works both with $CC and with simple cc.
10157 # Following AC_PROG_CC_C_O, we do the test twice because some
10158 # compilers refuse to overwrite an existing .o file with -o,
10159 # though they will create one.
10160 am_cv_prog_cc_c_o=yes
10161 for am_i in 1 2; do
10162 if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
10163 && test -f conftest2.$ac_objext; then
10164 : OK
10165 else
10166 am_cv_prog_cc_c_o=no
10167 break
10168 fi
10169 done
10170 rm -f core conftest*
10171 unset am_i])
10172if test "$am_cv_prog_cc_c_o" != yes; then
10173 # Losing compiler, so override with the script.
10174 # FIXME: It is wrong to rewrite CC.
10175 # But if we don't then we get into trouble of one sort or another.
10176 # A longer-term fix would be to have automake use am__CC in this case,
10177 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
10178 CC="$am_aux_dir/compile $CC"
10179fi
10180AC_LANG_POP([C])])
10181
10182# For backward compatibility.
10183AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
db137867 10184
6f57a957 10185# Copyright (C) 2001-2014 Free Software Foundation, Inc.
db137867
AC
10186#
10187# This file is free software; the Free Software Foundation
10188# gives unlimited permission to copy and/or distribute it,
10189# with or without modifications, as long as this notice is preserved.
10190
bf4e01a4
AC
10191# AM_RUN_LOG(COMMAND)
10192# -------------------
10193# Run COMMAND, save the exit status in ac_status, and log it.
10194# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
10195AC_DEFUN([AM_RUN_LOG],
10196[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
10197 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
10198 ac_status=$?
10199 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
10200 (exit $ac_status); }])
10201
10202# Check to make sure that the build environment is sane. -*- Autoconf -*-
10203
6f57a957 10204# Copyright (C) 1996-2014 Free Software Foundation, Inc.
bf4e01a4
AC
10205#
10206# This file is free software; the Free Software Foundation
10207# gives unlimited permission to copy and/or distribute it,
10208# with or without modifications, as long as this notice is preserved.
db137867
AC
10209
10210# AM_SANITY_CHECK
10211# ---------------
10212AC_DEFUN([AM_SANITY_CHECK],
10213[AC_MSG_CHECKING([whether build environment is sane])
7083c021
AC
10214# Reject unsafe characters in $srcdir or the absolute working directory
10215# name. Accept space and tab only in the latter.
10216am_lf='
10217'
10218case `pwd` in
10219 *[[\\\"\#\$\&\'\`$am_lf]]*)
10220 AC_MSG_ERROR([unsafe absolute working directory name]);;
10221esac
10222case $srcdir in
10223 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
bf4e01a4 10224 AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
7083c021
AC
10225esac
10226
bf4e01a4 10227# Do 'set' in a subshell so we don't clobber the current shell's
db137867
AC
10228# arguments. Must try -L first in case configure is actually a
10229# symlink; some systems play weird games with the mod time of symlinks
10230# (eg FreeBSD returns the mod time of the symlink's containing
10231# directory).
10232if (
bf4e01a4
AC
10233 am_has_slept=no
10234 for am_try in 1 2; do
10235 echo "timestamp, slept: $am_has_slept" > conftest.file
10236 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
10237 if test "$[*]" = "X"; then
10238 # -L didn't work.
10239 set X `ls -t "$srcdir/configure" conftest.file`
10240 fi
10241 if test "$[*]" != "X $srcdir/configure conftest.file" \
10242 && test "$[*]" != "X conftest.file $srcdir/configure"; then
10243
10244 # If neither matched, then we have a broken ls. This can happen
10245 # if, for instance, CONFIG_SHELL is bash and it inherits a
10246 # broken ls alias from the environment. This has actually
10247 # happened. Such a system could not be considered "sane".
10248 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
10249 alias in your environment])
10250 fi
10251 if test "$[2]" = conftest.file || test $am_try -eq 2; then
10252 break
10253 fi
10254 # Just in case.
10255 sleep 1
10256 am_has_slept=yes
10257 done
db137867
AC
10258 test "$[2]" = conftest.file
10259 )
10260then
10261 # Ok.
10262 :
10263else
10264 AC_MSG_ERROR([newly created file is older than distributed files!
10265Check your system clock])
10266fi
bf4e01a4
AC
10267AC_MSG_RESULT([yes])
10268# If we didn't sleep, we still need to ensure time stamps of config.status and
10269# generated files are strictly newer.
10270am_sleep_pid=
10271if grep 'slept: no' conftest.file >/dev/null 2>&1; then
10272 ( sleep 1 ) &
10273 am_sleep_pid=$!
10274fi
10275AC_CONFIG_COMMANDS_PRE(
10276 [AC_MSG_CHECKING([that generated files are newer than configure])
10277 if test -n "$am_sleep_pid"; then
10278 # Hide warnings about reused PIDs.
10279 wait $am_sleep_pid 2>/dev/null
10280 fi
10281 AC_MSG_RESULT([done])])
10282rm -f conftest.file
10283])
db137867 10284
6f57a957 10285# Copyright (C) 2009-2014 Free Software Foundation, Inc.
db137867
AC
10286#
10287# This file is free software; the Free Software Foundation
10288# gives unlimited permission to copy and/or distribute it,
10289# with or without modifications, as long as this notice is preserved.
10290
bf4e01a4
AC
10291# AM_SILENT_RULES([DEFAULT])
10292# --------------------------
10293# Enable less verbose build rules; with the default set to DEFAULT
10294# ("yes" being less verbose, "no" or empty being verbose).
10295AC_DEFUN([AM_SILENT_RULES],
10296[AC_ARG_ENABLE([silent-rules], [dnl
10297AS_HELP_STRING(
10298 [--enable-silent-rules],
10299 [less verbose build output (undo: "make V=1")])
10300AS_HELP_STRING(
10301 [--disable-silent-rules],
10302 [verbose build output (undo: "make V=0")])dnl
10303])
10304case $enable_silent_rules in @%:@ (((
10305 yes) AM_DEFAULT_VERBOSITY=0;;
10306 no) AM_DEFAULT_VERBOSITY=1;;
10307 *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
10308esac
10309dnl
10310dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
10311dnl do not support nested variable expansions.
10312dnl See automake bug#9928 and bug#10237.
10313am_make=${MAKE-make}
10314AC_CACHE_CHECK([whether $am_make supports nested variables],
10315 [am_cv_make_support_nested_variables],
10316 [if AS_ECHO([['TRUE=$(BAR$(V))
10317BAR0=false
10318BAR1=true
10319V=1
10320am__doit:
10321 @$(TRUE)
10322.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
10323 am_cv_make_support_nested_variables=yes
10324else
10325 am_cv_make_support_nested_variables=no
10326fi])
10327if test $am_cv_make_support_nested_variables = yes; then
10328 dnl Using '$V' instead of '$(V)' breaks IRIX make.
10329 AM_V='$(V)'
10330 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
10331else
10332 AM_V=$AM_DEFAULT_VERBOSITY
10333 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
10334fi
10335AC_SUBST([AM_V])dnl
10336AM_SUBST_NOTMAKE([AM_V])dnl
10337AC_SUBST([AM_DEFAULT_V])dnl
10338AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
10339AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
10340AM_BACKSLASH='\'
10341AC_SUBST([AM_BACKSLASH])dnl
10342_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
10343])
10344
6f57a957 10345# Copyright (C) 2001-2014 Free Software Foundation, Inc.
bf4e01a4
AC
10346#
10347# This file is free software; the Free Software Foundation
10348# gives unlimited permission to copy and/or distribute it,
10349# with or without modifications, as long as this notice is preserved.
e4cf89d4 10350
db137867
AC
10351# AM_PROG_INSTALL_STRIP
10352# ---------------------
bf4e01a4 10353# One issue with vendor 'install' (even GNU) is that you can't
db137867
AC
10354# specify the program used to strip binaries. This is especially
10355# annoying in cross-compiling environments, where the build's strip
10356# is unlikely to handle the host's binaries.
10357# Fortunately install-sh will honor a STRIPPROG variable, so we
bf4e01a4 10358# always use install-sh in "make install-strip", and initialize
db137867
AC
10359# STRIPPROG with the value of the STRIP variable (set by the user).
10360AC_DEFUN([AM_PROG_INSTALL_STRIP],
10361[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
bf4e01a4
AC
10362# Installed binaries are usually stripped using 'strip' when the user
10363# run "make install-strip". However 'strip' might not be the right
db137867 10364# tool to use in cross-compilation environments, therefore Automake
bf4e01a4
AC
10365# will honor the 'STRIP' environment variable to overrule this program.
10366dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
db137867
AC
10367if test "$cross_compiling" != no; then
10368 AC_CHECK_TOOL([STRIP], [strip], :)
10369fi
10370INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
10371AC_SUBST([INSTALL_STRIP_PROGRAM])])
10372
6f57a957 10373# Copyright (C) 2006-2014 Free Software Foundation, Inc.
db137867
AC
10374#
10375# This file is free software; the Free Software Foundation
10376# gives unlimited permission to copy and/or distribute it,
10377# with or without modifications, as long as this notice is preserved.
10378
10379# _AM_SUBST_NOTMAKE(VARIABLE)
10380# ---------------------------
b676ea3b 10381# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
db137867
AC
10382# This macro is traced by Automake.
10383AC_DEFUN([_AM_SUBST_NOTMAKE])
10384
7083c021 10385# AM_SUBST_NOTMAKE(VARIABLE)
e4cf89d4 10386# --------------------------
7083c021
AC
10387# Public sister of _AM_SUBST_NOTMAKE.
10388AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
10389
db137867
AC
10390# Check how to create a tarball. -*- Autoconf -*-
10391
6f57a957 10392# Copyright (C) 2004-2014 Free Software Foundation, Inc.
db137867
AC
10393#
10394# This file is free software; the Free Software Foundation
10395# gives unlimited permission to copy and/or distribute it,
10396# with or without modifications, as long as this notice is preserved.
10397
db137867
AC
10398# _AM_PROG_TAR(FORMAT)
10399# --------------------
10400# Check how to create a tarball in format FORMAT.
bf4e01a4 10401# FORMAT should be one of 'v7', 'ustar', or 'pax'.
db137867
AC
10402#
10403# Substitute a variable $(am__tar) that is a command
10404# writing to stdout a FORMAT-tarball containing the directory
10405# $tardir.
10406# tardir=directory && $(am__tar) > result.tar
10407#
10408# Substitute a variable $(am__untar) that extract such
10409# a tarball read from stdin.
10410# $(am__untar) < result.tar
bf4e01a4 10411#
db137867 10412AC_DEFUN([_AM_PROG_TAR],
e4cf89d4
AB
10413[# Always define AMTAR for backward compatibility. Yes, it's still used
10414# in the wild :-( We should find a proper way to deprecate it ...
10415AC_SUBST([AMTAR], ['$${TAR-tar}'])
bf4e01a4
AC
10416
10417# We'll loop over all known methods to create a tar archive until one works.
db137867 10418_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
db137867 10419
bf4e01a4
AC
10420m4_if([$1], [v7],
10421 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
10422
10423 [m4_case([$1],
10424 [ustar],
10425 [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
10426 # There is notably a 21 bits limit for the UID and the GID. In fact,
10427 # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
10428 # and bug#13588).
10429 am_max_uid=2097151 # 2^21 - 1
10430 am_max_gid=$am_max_uid
10431 # The $UID and $GID variables are not portable, so we need to resort
10432 # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
10433 # below are definitely unexpected, so allow the users to see them
10434 # (that is, avoid stderr redirection).
10435 am_uid=`id -u || echo unknown`
10436 am_gid=`id -g || echo unknown`
10437 AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
10438 if test $am_uid -le $am_max_uid; then
10439 AC_MSG_RESULT([yes])
10440 else
10441 AC_MSG_RESULT([no])
10442 _am_tools=none
10443 fi
10444 AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
10445 if test $am_gid -le $am_max_gid; then
10446 AC_MSG_RESULT([yes])
10447 else
10448 AC_MSG_RESULT([no])
10449 _am_tools=none
10450 fi],
db137867 10451
bf4e01a4
AC
10452 [pax],
10453 [],
10454
10455 [m4_fatal([Unknown tar format])])
10456
10457 AC_MSG_CHECKING([how to create a $1 tar archive])
10458
10459 # Go ahead even if we have the value already cached. We do so because we
10460 # need to set the values for the 'am__tar' and 'am__untar' variables.
10461 _am_tools=${am_cv_prog_tar_$1-$_am_tools}
10462
10463 for _am_tool in $_am_tools; do
10464 case $_am_tool in
10465 gnutar)
10466 for _am_tar in tar gnutar gtar; do
10467 AM_RUN_LOG([$_am_tar --version]) && break
10468 done
10469 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
10470 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
10471 am__untar="$_am_tar -xf -"
10472 ;;
10473 plaintar)
10474 # Must skip GNU tar: if it does not support --format= it doesn't create
10475 # ustar tarball either.
10476 (tar --version) >/dev/null 2>&1 && continue
10477 am__tar='tar chf - "$$tardir"'
10478 am__tar_='tar chf - "$tardir"'
10479 am__untar='tar xf -'
10480 ;;
10481 pax)
10482 am__tar='pax -L -x $1 -w "$$tardir"'
10483 am__tar_='pax -L -x $1 -w "$tardir"'
10484 am__untar='pax -r'
10485 ;;
10486 cpio)
10487 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
10488 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
10489 am__untar='cpio -i -H $1 -d'
10490 ;;
10491 none)
10492 am__tar=false
10493 am__tar_=false
10494 am__untar=false
10495 ;;
10496 esac
10497
10498 # If the value was cached, stop now. We just wanted to have am__tar
10499 # and am__untar set.
10500 test -n "${am_cv_prog_tar_$1}" && break
10501
10502 # tar/untar a dummy directory, and stop if the command works.
10503 rm -rf conftest.dir
10504 mkdir conftest.dir
10505 echo GrepMe > conftest.dir/file
10506 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
10507 rm -rf conftest.dir
10508 if test -s conftest.tar; then
10509 AM_RUN_LOG([$am__untar <conftest.tar])
10510 AM_RUN_LOG([cat conftest.dir/file])
10511 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
10512 fi
10513 done
db137867 10514 rm -rf conftest.dir
db137867 10515
bf4e01a4
AC
10516 AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
10517 AC_MSG_RESULT([$am_cv_prog_tar_$1])])
10518
db137867
AC
10519AC_SUBST([am__tar])
10520AC_SUBST([am__untar])
10521]) # _AM_PROG_TAR
10522
10523m4_include([acinclude.m4])