]> andersk Git - libyaml.git/blame - aclocal.m4
debian: Release libyaml 0.2.1-1
[libyaml.git] / aclocal.m4
CommitLineData
c45550e5 1# generated automatically by aclocal 1.15 -*- Autoconf -*-
0044e680 2
c45550e5 3# Copyright (C) 1996-2014 Free Software Foundation, Inc.
b9668ba4 4
b9668ba4
AK
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
0044e680 14m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
5c706339
AK
15m4_ifndef([AC_AUTOCONF_VERSION],
16 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
0044e680
AK
17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
18[m4_warning([this file was generated for autoconf 2.69.
5c706339
AK
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.
0044e680 21To do so, use the procedure documented by the package, typically 'autoreconf'.])])
5c706339 22
b9668ba4 23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
5c706339 24#
c45550e5 25# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
5c706339
AK
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
c45550e5
AK
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.
5c706339 41#
c45550e5
AK
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.
5c706339 46#
c45550e5
AK
47# GNU Libtool is distributed in the hope that it will be useful, but
48# WITHOUT ANY WARRANTY; without even the implied warranty of
5c706339
AK
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
c45550e5 53# along with this program. If not, see <http://www.gnu.org/licenses/>.
5c706339 54])
b9668ba4 55
c45550e5 56# serial 58 LT_INIT
b9668ba4
AK
57
58
5c706339
AK
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])])
b9668ba4
AK
68
69
5c706339
AK
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],
c45550e5 84[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
059850b5 85AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
5c706339
AK
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
059850b5
AK
102_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
103
5c706339
AK
104dnl Parse OPTIONS
105_LT_SET_OPTIONS([$0], [$1])
b9668ba4
AK
106
107# This can be used to rebuild libtool when needed
c45550e5 108LIBTOOL_DEPS=$ltmain
b9668ba4
AK
109
110# Always use our own libtool.
111LIBTOOL='$(SHELL) $(top_builddir)/libtool'
112AC_SUBST(LIBTOOL)dnl
113
5c706339 114_LT_SETUP
b9668ba4 115
5c706339
AK
116# Only expand once:
117m4_define([LT_INIT])
118])# LT_INIT
b9668ba4 119
5c706339
AK
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
c45550e5
AK
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
5c706339
AK
147# _LT_CC_BASENAME(CC)
148# -------------------
c45550e5
AK
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.
5c706339 152m4_defun([_LT_CC_BASENAME],
c45550e5
AK
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
5c706339
AK
158])
159
160
161# _LT_FILEUTILS_DEFAULTS
162# ----------------------
163# It is okay to use these file commands and assume they have been set
c45550e5 164# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
5c706339
AK
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
b9668ba4 176AC_REQUIRE([AC_CANONICAL_BUILD])dnl
059850b5
AK
177AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
178AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
179
180_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
181dnl
5c706339
AK
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
b9668ba4 190AC_REQUIRE([AC_PROG_CC])dnl
5c706339
AK
191AC_REQUIRE([LT_PATH_LD])dnl
192AC_REQUIRE([LT_PATH_NM])dnl
193dnl
b9668ba4 194AC_REQUIRE([AC_PROG_LN_S])dnl
5c706339
AK
195test -z "$LN_S" && LN_S="ln -s"
196_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
b9668ba4 197dnl
5c706339
AK
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
201dnl
202m4_require([_LT_FILEUTILS_DEFAULTS])dnl
203m4_require([_LT_CHECK_SHELL_FEATURES])dnl
059850b5 204m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
5c706339
AK
205m4_require([_LT_CMD_RELOAD])dnl
206m4_require([_LT_CHECK_MAGIC_METHOD])dnl
059850b5 207m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
5c706339
AK
208m4_require([_LT_CMD_OLD_ARCHIVE])dnl
209m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
059850b5 210m4_require([_LT_WITH_SYSROOT])dnl
c45550e5 211m4_require([_LT_CMD_TRUNCATE])dnl
5c706339
AK
212
213_LT_CONFIG_LIBTOOL_INIT([
c45550e5 214# See if we are running on zsh, and set the options that allow our
5c706339 215# commands through without removal of \ escapes INIT.
c45550e5 216if test -n "\${ZSH_VERSION+set}"; then
5c706339
AK
217 setopt NO_GLOB_SUBST
218fi
219])
c45550e5 220if test -n "${ZSH_VERSION+set}"; then
5c706339
AK
221 setopt NO_GLOB_SUBST
222fi
b9668ba4 223
5c706339 224_LT_CHECK_OBJDIR
b9668ba4 225
5c706339 226m4_require([_LT_TAG_COMPILER])dnl
b9668ba4
AK
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.
c45550e5 233 if test set != "${COLLECT_NAMES+set}"; then
b9668ba4
AK
234 COLLECT_NAMES=
235 export COLLECT_NAMES
236 fi
237 ;;
238esac
239
b9668ba4 240# Global variables:
5c706339 241ofile=libtool
b9668ba4
AK
242can_build_shared=yes
243
c45550e5 244# All known linkers require a '.a' archive for static linking (except MSVC,
b9668ba4
AK
245# which needs '.lib').
246libext=a
b9668ba4 247
c45550e5 248with_gnu_ld=$lt_cv_prog_gnu_ld
b9668ba4 249
c45550e5
AK
250old_CC=$CC
251old_CFLAGS=$CFLAGS
b9668ba4
AK
252
253# Set sane defaults for various variables
b9668ba4
AK
254test -z "$CC" && CC=cc
255test -z "$LTCC" && LTCC=$CC
256test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
b9668ba4 257test -z "$LD" && LD=ld
b9668ba4
AK
258test -z "$ac_objext" && ac_objext=o
259
b9668ba4
AK
260_LT_CC_BASENAME([$compiler])
261
262# Only perform the check for file, if the check method requires it
5c706339 263test -z "$MAGIC_CMD" && MAGIC_CMD=file
b9668ba4
AK
264case $deplibs_check_method in
265file_magic*)
266 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
5c706339 267 _LT_PATH_MAGIC
b9668ba4
AK
268 fi
269 ;;
270esac
271
5c706339
AK
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
b9668ba4 278
b9668ba4 279
059850b5
AK
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
5c706339
AK
302# _LT_PROG_LTMAIN
303# ---------------
c45550e5 304# Note that this code is called both from 'configure', and 'config.status'
5c706339 305# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
c45550e5 306# 'config.status' has no value for ac_aux_dir unless we are using Automake,
5c706339
AK
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'])
c45550e5 311ltmain=$ac_aux_dir/ltmain.sh
5c706339 312])# _LT_PROG_LTMAIN
b9668ba4 313
b9668ba4
AK
314
315
5c706339
AK
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
c45550e5 318# in macros and then make a single call at the end using the 'libtool'
5c706339 319# label.
b9668ba4 320
b9668ba4 321
5c706339
AK
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])])])
b9668ba4 330
5c706339
AK
331# Initialize.
332m4_define([_LT_OUTPUT_LIBTOOL_INIT])
b9668ba4
AK
333
334
5c706339
AK
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])
b9668ba4
AK
353])
354
355
5c706339
AK
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])
b9668ba4
AK
386
387
5c706339
AK
388# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
389# --------------------------------------------------------
390m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
b9668ba4
AK
391
392
5c706339
AK
393# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
394# ------------------------------------------------
395m4_define([lt_decl_tag_varnames],
396[_lt_decl_filter([tagged?], [yes], $@)])
b9668ba4
AK
397
398
5c706339
AK
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])
b9668ba4
AK
409
410
5c706339
AK
411# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
412# --------------------------------------------------
413m4_define([lt_decl_quote_varnames],
414[_lt_decl_filter([value], [1], $@)])
b9668ba4 415
b9668ba4 416
5c706339
AK
417# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
418# ---------------------------------------------------
419m4_define([lt_decl_dquote_varnames],
420[_lt_decl_filter([value], [2], $@)])
b9668ba4 421
b9668ba4 422
5c706339
AK
423# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
424# ---------------------------------------------------
425m4_define([lt_decl_varnames_tagged],
47dc80f6
AK
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)])])
b9668ba4 432
b9668ba4 433
5c706339
AK
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])
b9668ba4 446
b9668ba4 447
5c706339
AK
448# _LT_CONFIG_STATUS_DECLARE([VARNAME])
449# ------------------------------------
c45550e5
AK
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
5c706339
AK
452# must have a single quote delimited value for this to work.
453m4_define([_LT_CONFIG_STATUS_DECLARE],
059850b5 454[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
b9668ba4 455
b9668ba4 456
5c706339
AK
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#
059850b5 464# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
5c706339
AK
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)])])])
b9668ba4 468
b9668ba4 469
5c706339
AK
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
c45550e5 475available_tags='_LT_TAGS'dnl
5c706339 476])
b9668ba4
AK
477
478
5c706339
AK
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])
b9668ba4 498
5c706339
AK
499
500# _LT_LIBTOOL_CONFIG_VARS
501# -----------------------
502# Produce commented declarations of non-tagged libtool config variables
c45550e5 503# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
5c706339
AK
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
525# -------------------
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
c45550e5
AK
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
5c706339
AK
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
059850b5
AK
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
5c706339
AK
571# Quote evaled strings.
572for var in lt_decl_all_varnames([[ \
573]], lt_decl_quote_varnames); do
059850b5 574 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
5c706339 575 *[[\\\\\\\`\\"\\\$]]*)
c45550e5 576 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
b9668ba4 577 ;;
5c706339
AK
578 *)
579 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
b9668ba4
AK
580 ;;
581 esac
5c706339
AK
582done
583
584# Double-quote double-evaled strings.
585for var in lt_decl_all_varnames([[ \
586]], lt_decl_dquote_varnames); do
059850b5 587 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
5c706339 588 *[[\\\\\\\`\\"\\\$]]*)
c45550e5 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
b9668ba4 590 ;;
5c706339
AK
591 *)
592 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
b9668ba4
AK
593 ;;
594 esac
5c706339 595done
b9668ba4 596
5c706339
AK
597_LT_OUTPUT_LIBTOOL_INIT
598])
b9668ba4 599
059850b5
AK
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
c45550e5 605# '#!' sequence but before initialization text begins. After this
059850b5
AK
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
c45550e5 627test 0 = "$lt_write_fail" && chmod +x $1[]dnl
059850b5 628m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
b9668ba4 629
5c706339
AK
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])
059850b5
AK
638_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
639[# Run this file to recreate a libtool stub with the current configuration.])
5c706339
AK
640
641cat >>"$CONFIG_LT" <<\_LTEOF
059850b5 642lt_cl_silent=false
5c706339
AK
643exec AS_MESSAGE_LOG_FD>>config.log
644{
645 echo
646 AS_BOX([Running $as_me.])
647} >&AS_MESSAGE_LOG_FD
b9668ba4 648
5c706339 649lt_cl_help="\
c45550e5 650'$as_me' creates a local libtool stub from the current configuration,
5c706339
AK
651for use in further configure time tests before the real libtool is
652generated.
b9668ba4 653
5c706339 654Usage: $[0] [[OPTIONS]]
b9668ba4 655
5c706339
AK
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
b9668ba4 660
5c706339 661Report bugs to <bug-libtool@gnu.org>."
b9668ba4 662
5c706339
AK
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.
b9668ba4 667
059850b5 668Copyright (C) 2011 Free Software Foundation, Inc.
5c706339
AK
669This config.lt script is free software; the Free Software Foundation
670gives unlimited permision to copy, distribute and modify it."
b9668ba4 671
c45550e5 672while test 0 != $[#]
5c706339
AK
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]
c45550e5 685Try '$[0] --help' for more information.]) ;;
5c706339
AK
686
687 *) AC_MSG_ERROR([unrecognized argument: $[1]
c45550e5 688Try '$[0] --help' for more information.]) ;;
5c706339
AK
689 esac
690 shift
691done
b9668ba4 692
5c706339
AK
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.
059850b5 713lt_cl_success=:
c45550e5 714test yes = "$silent" &&
059850b5
AK
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)
5c706339 720])# LT_OUTPUT
b9668ba4 721
b9668ba4 722
5c706339
AK
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], [
c45550e5 734 # See if we are running on zsh, and set the options that allow our
5c706339 735 # commands through without removal of \ escapes.
c45550e5 736 if test -n "${ZSH_VERSION+set}"; then
5c706339
AK
737 setopt NO_GLOB_SUBST
738 fi
b9668ba4 739
c45550e5 740 cfgfile=${ofile}T
5c706339
AK
741 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
742 $RM "$cfgfile"
b9668ba4 743
5c706339
AK
744 cat <<_LT_EOF >> "$cfgfile"
745#! $SHELL
c45550e5 746# Generated automatically by $as_me ($PACKAGE) $VERSION
5c706339
AK
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.
c45550e5
AK
749
750# Provide generalized library-building support services.
751# Written by Gordon Matzigkeit, 1996
752
5c706339
AK
753_LT_COPYING
754_LT_LIBTOOL_TAGS
b9668ba4 755
c45550e5
AK
756# Configured defaults for sys_lib_dlsearch_path munging.
757: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
758
5c706339
AK
759# ### BEGIN LIBTOOL CONFIG
760_LT_LIBTOOL_CONFIG_VARS
761_LT_LIBTOOL_TAG_VARS
762# ### END LIBTOOL CONFIG
b9668ba4 763
c45550e5
AK
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
5c706339 775_LT_EOF
b9668ba4 776
5c706339
AK
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.
c45550e5 783if test set != "${COLLECT_NAMES+set}"; then
5c706339
AK
784 COLLECT_NAMES=
785 export COLLECT_NAMES
786fi
787_LT_EOF
b9668ba4
AK
788 ;;
789 esac
b9668ba4 790
5c706339 791 _LT_PROG_LTMAIN
b9668ba4 792
5c706339
AK
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?
059850b5
AK
797 sed '$q' "$ltmain" >> "$cfgfile" \
798 || (rm -f "$cfgfile"; exit 1)
b9668ba4 799
059850b5 800 mv -f "$cfgfile" "$ofile" ||
5c706339
AK
801 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
802 chmod +x "$ofile"
803],
804[cat <<_LT_EOF >> "$ofile"
b9668ba4 805
5c706339
AK
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'
5c706339
AK
817 RM='$RM'
818 ofile='$ofile'], [])
819])dnl /_LT_CONFIG_SAVE_COMMANDS
820])# _LT_CONFIG
b9668ba4 821
b9668ba4 822
5c706339
AK
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], [])
b9668ba4 829
b9668ba4 830
5c706339
AK
831# C support is built-in for now
832m4_define([_LT_LANG_C_enabled], [])
833m4_define([_LT_TAGS], [])
b9668ba4 834
b9668ba4 835
5c706339
AK
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)],
059850b5 844 [Go], [_LT_LANG(GO)],
5c706339
AK
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
b9668ba4 864
b9668ba4 865
059850b5
AK
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
5c706339
AK
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
059850b5
AK
919AC_PROVIDE_IFELSE([AC_PROG_GO],
920 [LT_LANG(GO)],
921 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
922
5c706339
AK
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)])
059850b5 933AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
5c706339
AK
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], [])
059850b5 939dnl AC_DEFUN([AC_LIBTOOL_RC], [])
5c706339
AK
940
941
942# _LT_TAG_COMPILER
943# ----------------
944m4_defun([_LT_TAG_COMPILER],
945[AC_REQUIRE([AC_PROG_CC])dnl
b9668ba4 946
5c706339
AK
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
b9668ba4 951
5c706339
AK
952# If no C compiler was specified, use CC.
953LTCC=${LTCC-"$CC"}
b9668ba4 954
5c706339
AK
955# If no C compiler flags were specified, use CFLAGS.
956LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
b9668ba4 957
5c706339
AK
958# Allow CC to be a program name with arguments.
959compiler=$CC
960])# _LT_TAG_COMPILER
b9668ba4 961
b9668ba4 962
5c706339
AK
963# _LT_COMPILER_BOILERPLATE
964# ------------------------
965# Check for compiler boilerplate output or warnings with
966# the simple compiler test code.
967m4_defun([_LT_COMPILER_BOILERPLATE],
968[m4_require([_LT_DECL_SED])dnl
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`
973$RM conftest*
974])# _LT_COMPILER_BOILERPLATE
b9668ba4 975
b9668ba4 976
5c706339
AK
977# _LT_LINKER_BOILERPLATE
978# ----------------------
979# Check for linker boilerplate output or warnings with
980# the simple link test code.
981m4_defun([_LT_LINKER_BOILERPLATE],
982[m4_require([_LT_DECL_SED])dnl
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`
987$RM -r conftest*
988])# _LT_LINKER_BOILERPLATE
b9668ba4 989
5c706339
AK
990# _LT_REQUIRED_DARWIN_CHECKS
991# -------------------------
992m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
993 case $host_os in
994 rhapsody* | darwin*)
995 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
996 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
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])
1010
1011 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
1012 [lt_cv_apple_cc_single_mod=no
c45550e5 1013 if test -z "$LT_MULTI_MODULE"; then
5c706339
AK
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=$?
059850b5
AK
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.
c45550e5 1031 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
5c706339
AK
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.*
1038 fi])
059850b5 1039
5c706339
AK
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([],[])],
1047 [lt_cv_ld_exported_symbols_list=yes],
1048 [lt_cv_ld_exported_symbols_list=no])
c45550e5 1049 LDFLAGS=$save_LDFLAGS
b9668ba4 1050 ])
059850b5
AK
1051
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=$?
1069 if test -s conftest.err && $GREP force_load conftest.err; then
1070 cat conftest.err >&AS_MESSAGE_LOG_FD
c45550e5 1071 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
059850b5
AK
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 ])
5c706339
AK
1079 case $host_os in
1080 rhapsody* | darwin1.[[012]])
c45550e5 1081 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
5c706339 1082 darwin1.*)
c45550e5 1083 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
47dc80f6 1084 darwin*) # darwin 5.x on
5c706339
AK
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
47dc80f6 1087 # target defaults to 10.4. Don't you love it?
5c706339
AK
1088 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1089 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
c45550e5
AK
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' ;;
5c706339 1093 10.*)
c45550e5 1094 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
5c706339 1095 esac
b9668ba4
AK
1096 ;;
1097 esac
c45550e5 1098 if test yes = "$lt_cv_apple_cc_single_mod"; then
5c706339
AK
1099 _lt_dar_single_mod='$single_module'
1100 fi
c45550e5
AK
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'
5c706339 1103 else
c45550e5 1104 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
5c706339 1105 fi
c45550e5 1106 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
5c706339
AK
1107 _lt_dsymutil='~$DSYMUTIL $lib || :'
1108 else
1109 _lt_dsymutil=
1110 fi
1111 ;;
b9668ba4 1112 esac
5c706339 1113])
b9668ba4 1114
b9668ba4 1115
059850b5
AK
1116# _LT_DARWIN_LINKER_FEATURES([TAG])
1117# ---------------------------------
5c706339
AK
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
c45550e5
AK
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\"`'
059850b5
AK
1128 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1129 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1130 else
1131 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1132 fi
5c706339 1133 _LT_TAGVAR(link_all_deplibs, $1)=yes
c45550e5 1134 _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
47dc80f6 1135 case $cc_basename in
c45550e5 1136 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
47dc80f6
AK
1137 *) _lt_dar_can_shared=$GCC ;;
1138 esac
c45550e5 1139 if test yes = "$_lt_dar_can_shared"; then
059850b5 1140 output_verbose_link_cmd=func_echo_all
c45550e5
AK
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"
5c706339 1145 m4_if([$1], [CXX],
c45550e5
AK
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"
5c706339
AK
1149 fi
1150],[])
1151 else
1152 _LT_TAGVAR(ld_shlibs, $1)=no
1153 fi
1154])
b9668ba4 1155
059850b5
AK
1156# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1157# ----------------------------------
5c706339
AK
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.
059850b5
AK
1164# Store the results from the different compilers for each TAGNAME.
1165# Allow to override them for all tags through lt_cv_aix_libpath.
5c706339
AK
1166m4_defun([_LT_SYS_MODULE_PATH_AIX],
1167[m4_require([_LT_DECL_SED])dnl
c45550e5 1168if test set = "${lt_cv_aix_libpath+set}"; then
059850b5
AK
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
c45550e5 1186 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
059850b5
AK
1187 fi
1188 ])
1189 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1190fi
5c706339 1191])# _LT_SYS_MODULE_PATH_AIX
b9668ba4 1192
b9668ba4 1193
5c706339
AK
1194# _LT_SHELL_INIT(ARG)
1195# -------------------
1196m4_define([_LT_SHELL_INIT],
059850b5
AK
1197[m4_divert_text([M4SH-INIT], [$1
1198])])# _LT_SHELL_INIT
1199
b9668ba4 1200
b9668ba4 1201
5c706339
AK
1202# _LT_PROG_ECHO_BACKSLASH
1203# -----------------------
059850b5
AK
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
c45550e5
AK
1206# of the generated configure script that will find a shell with a builtin
1207# printf (that we can use as an echo command).
5c706339 1208m4_defun([_LT_PROG_ECHO_BACKSLASH],
059850b5
AK
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'
b9668ba4 1220else
059850b5
AK
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'
5c706339 1229fi
b9668ba4 1230
059850b5
AK
1231# func_echo_all arg...
1232# Invoke $ECHO with all args, space-separated.
1233func_echo_all ()
1234{
c45550e5 1235 $ECHO "$*"
059850b5 1236}
b9668ba4 1237
c45550e5 1238case $ECHO in
059850b5
AK
1239 printf*) AC_MSG_RESULT([printf]) ;;
1240 print*) AC_MSG_RESULT([print -r]) ;;
1241 *) AC_MSG_RESULT([cat]) ;;
1242esac
b9668ba4 1243
059850b5
AK
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" )])])
b9668ba4 1253
5c706339 1254_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
059850b5 1255_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
5c706339 1256])# _LT_PROG_ECHO_BACKSLASH
b9668ba4 1257
b9668ba4 1258
059850b5
AK
1259# _LT_WITH_SYSROOT
1260# ----------------
1261AC_DEFUN([_LT_WITH_SYSROOT],
1262[AC_MSG_CHECKING([for sysroot])
1263AC_ARG_WITH([sysroot],
c45550e5
AK
1264[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
1265 [Search for dependent libraries within DIR (or the compiler's sysroot
1266 if not specified).])],
059850b5
AK
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=
c45550e5 1272case $with_sysroot in #(
059850b5 1273 yes)
c45550e5 1274 if test yes = "$GCC"; then
059850b5
AK
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 *)
c45550e5 1284 AC_MSG_RESULT([$with_sysroot])
059850b5
AK
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
c45550e5 1291[dependent libraries, and where our libraries should be installed.])])
059850b5 1292
5c706339
AK
1293# _LT_ENABLE_LOCK
1294# ---------------
1295m4_defun([_LT_ENABLE_LOCK],
1296[AC_ARG_ENABLE([libtool-lock],
1297 [AS_HELP_STRING([--disable-libtool-lock],
1298 [avoid locking (might break parallel builds)])])
c45550e5 1299test no = "$enable_libtool_lock" || enable_libtool_lock=yes
5c706339
AK
1300
1301# Some flags need to be propagated to the compiler or linker for good
1302# libtool support.
1303case $host in
1304ia64-*-hpux*)
c45550e5
AK
1305 # Find out what ABI is being produced by ac_compile, and set mode
1306 # options accordingly.
5c706339
AK
1307 echo 'int i;' > conftest.$ac_ext
1308 if AC_TRY_EVAL(ac_compile); then
1309 case `/usr/bin/file conftest.$ac_objext` in
1310 *ELF-32*)
c45550e5 1311 HPUX_IA64_MODE=32
5c706339
AK
1312 ;;
1313 *ELF-64*)
c45550e5 1314 HPUX_IA64_MODE=64
5c706339 1315 ;;
b9668ba4 1316 esac
5c706339
AK
1317 fi
1318 rm -rf conftest*
1319 ;;
1320*-*-irix6*)
c45550e5
AK
1321 # Find out what ABI is being produced by ac_compile, and set linker
1322 # options accordingly.
059850b5 1323 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
5c706339 1324 if AC_TRY_EVAL(ac_compile); then
c45550e5 1325 if test yes = "$lt_cv_prog_gnu_ld"; then
5c706339
AK
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
b9668ba4 1337 else
5c706339
AK
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
b9668ba4 1349 fi
b9668ba4 1350 fi
5c706339 1351 rm -rf conftest*
b9668ba4
AK
1352 ;;
1353
c45550e5
AK
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
0044e680 1386x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
5c706339 1387s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
c45550e5
AK
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.
5c706339
AK
1394 echo 'int i;' > conftest.$ac_ext
1395 if AC_TRY_EVAL(ac_compile); then
1396 case `/usr/bin/file conftest.o` in
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*)
0044e680
AK
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
5c706339 1411 ;;
c45550e5 1412 powerpc64le-*linux*)
0044e680
AK
1413 LD="${LD-ld} -m elf32lppclinux"
1414 ;;
c45550e5 1415 powerpc64-*linux*)
5c706339
AK
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 ;;
c45550e5 1434 powerpcle-*linux*)
0044e680
AK
1435 LD="${LD-ld} -m elf64lppc"
1436 ;;
c45550e5 1437 powerpc-*linux*)
5c706339
AK
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 ;;
1448 esac
1449 fi
1450 rm -rf conftest*
b9668ba4
AK
1451 ;;
1452
5c706339
AK
1453*-*-sco3.2v5*)
1454 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
c45550e5 1455 SAVE_CFLAGS=$CFLAGS
5c706339
AK
1456 CFLAGS="$CFLAGS -belf"
1457 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1458 [AC_LANG_PUSH(C)
1459 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1460 AC_LANG_POP])
c45550e5 1461 if test yes != "$lt_cv_cc_needs_belf"; then
5c706339 1462 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
c45550e5 1463 CFLAGS=$SAVE_CFLAGS
5c706339 1464 fi
b9668ba4 1465 ;;
059850b5 1466*-*solaris*)
c45550e5
AK
1467 # Find out what ABI is being produced by ac_compile, and set linker
1468 # options accordingly.
5c706339
AK
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
059850b5
AK
1474 yes*)
1475 case $host in
c45550e5 1476 i?86-*-solaris*|x86_64-*-solaris*)
059850b5
AK
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
c45550e5 1485 LD=${LD-ld}_sol2
059850b5
AK
1486 fi
1487 ;;
5c706339
AK
1488 *)
1489 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1490 LD="${LD-ld} -64"
1491 fi
1492 ;;
1493 esac
1494 ;;
1495 esac
1496 fi
1497 rm -rf conftest*
b9668ba4 1498 ;;
5c706339 1499esac
b9668ba4 1500
c45550e5 1501need_locks=$enable_libtool_lock
5c706339
AK
1502])# _LT_ENABLE_LOCK
1503
1504
059850b5
AK
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])
c45550e5 1520 if test 0 -eq "$ac_status"; then
059850b5
AK
1521 # Ensure the archiver fails upon bogus file names.
1522 rm -f conftest.$ac_objext libconftest.a
1523 AC_TRY_EVAL([lt_ar_try])
c45550e5 1524 if test 0 -ne "$ac_status"; then
059850b5
AK
1525 lt_cv_ar_at_file=@
1526 fi
1527 fi
1528 rm -f conftest.* libconftest.a
1529 ])
1530 ])
1531
c45550e5 1532if test no = "$lt_cv_ar_at_file"; then
059850b5
AK
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
5c706339
AK
1542# _LT_CMD_OLD_ARCHIVE
1543# -------------------
1544m4_defun([_LT_CMD_OLD_ARCHIVE],
059850b5 1545[_LT_PROG_AR
5c706339
AK
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=
1560
1561if test -n "$RANLIB"; then
1562 case $host_os in
c45550e5 1563 bitrig* | openbsd*)
059850b5 1564 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
5c706339
AK
1565 ;;
1566 *)
059850b5 1567 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
5c706339
AK
1568 ;;
1569 esac
059850b5 1570 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
5c706339 1571fi
059850b5
AK
1572
1573case $host_os in
1574 darwin*)
1575 lock_old_archive_extraction=yes ;;
1576 *)
1577 lock_old_archive_extraction=no ;;
1578esac
5c706339
AK
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])
059850b5
AK
1583_LT_DECL([], [lock_old_archive_extraction], [0],
1584 [Whether to use a lock for old archive extraction])
5c706339
AK
1585])# _LT_CMD_OLD_ARCHIVE
1586
1587
1588# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1589# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1590# ----------------------------------------------------------------
1591# Check whether the given compiler option works
1592AC_DEFUN([_LT_COMPILER_OPTION],
1593[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1594m4_require([_LT_DECL_SED])dnl
1595AC_CACHE_CHECK([$1], [$2],
1596 [$2=no
1597 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1598 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
c45550e5 1599 lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment
5c706339
AK
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:'`
059850b5 1609 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
1610 (eval "$lt_compile" 2>conftest.err)
1611 ac_status=$?
1612 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 1613 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
5c706339
AK
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.
059850b5 1617 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
5c706339
AK
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
1623 $RM conftest*
1624])
1625
c45550e5 1626if test yes = "[$]$2"; then
5c706339
AK
1627 m4_if([$5], , :, [$5])
1628else
1629 m4_if([$6], , :, [$6])
1630fi
1631])# _LT_COMPILER_OPTION
1632
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], [])
1637
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
1646AC_CACHE_CHECK([$1], [$2],
1647 [$2=no
c45550e5 1648 save_LDFLAGS=$LDFLAGS
5c706339
AK
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
059850b5 1657 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
5c706339
AK
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
1666 $RM -r conftest*
c45550e5 1667 LDFLAGS=$save_LDFLAGS
5c706339
AK
1668])
1669
c45550e5 1670if test yes = "[$]$2"; then
5c706339
AK
1671 m4_if([$4], , :, [$4])
1672else
1673 m4_if([$5], , :, [$5])
1674fi
1675])# _LT_LINKER_OPTION
1676
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], [])
1681
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
1688AC_MSG_CHECKING([the maximum length of command line arguments])
1689AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1690 i=0
c45550e5 1691 teststring=ABCD
5c706339
AK
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
47dc80f6 1709 cygwin* | mingw* | cegcc*)
5c706339
AK
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
059850b5
AK
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
5c706339
AK
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
c45550e5 1731 bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
5c706339
AK
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
059850b5
AK
1750 os2*)
1751 # The test takes a long time on OS/2.
1752 lt_cv_sys_max_cmd_len=8192
1753 ;;
1754
5c706339
AK
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
1774 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
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`
0044e680 1781 if test -n "$lt_cv_sys_max_cmd_len" && \
c45550e5 1782 test undefined != "$lt_cv_sys_max_cmd_len"; then
5c706339
AK
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
1786 # Make teststring a little bigger before we do anything with it.
1787 # a 1K string should be a reasonable start.
c45550e5 1788 for i in 1 2 3 4 5 6 7 8; do
5c706339
AK
1789 teststring=$teststring$teststring
1790 done
1791 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
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.
c45550e5 1795 while { test X`env echo "$teststring$teststring" 2>/dev/null` \
059850b5 1796 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
c45550e5 1797 test 17 != "$i" # 1/2 MB should be enough
5c706339
AK
1798 do
1799 i=`expr $i + 1`
1800 teststring=$teststring$teststring
1801 done
1802 # Only check the string length outside the loop.
1803 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1804 teststring=
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.
1808 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1809 fi
1810 ;;
1811 esac
1812])
c45550e5 1813if test -n "$lt_cv_sys_max_cmd_len"; then
5c706339
AK
1814 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1815else
1816 AC_MSG_RESULT(none)
1817fi
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
1822
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], [])
1827
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
1834
1835
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
c45550e5 1841if test yes = "$cross_compiling"; then :
5c706339
AK
1842 [$4]
1843else
1844 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1845 lt_status=$lt_dlunknown
1846 cat > conftest.$ac_ext <<_LT_EOF
059850b5 1847[#line $LINENO "configure"
5c706339
AK
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
c45550e5 1888/* When -fvisibility=hidden is used, assume the code has been annotated
059850b5 1889 correspondingly for the symbols needed. */
c45550e5 1890#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
059850b5
AK
1891int fnord () __attribute__((visibility("default")));
1892#endif
1893
1894int fnord () { return 42; }
5c706339
AK
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;
059850b5
AK
1903 else
1904 {
1905 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1906 else puts (dlerror ());
1907 }
5c706339
AK
1908 /* dlclose (self); */
1909 }
1910 else
1911 puts (dlerror ());
1912
47dc80f6 1913 return status;
5c706339
AK
1914}]
1915_LT_EOF
c45550e5 1916 if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
5c706339
AK
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*
1930])# _LT_TRY_DLOPEN_SELF
1931
1932
1933# LT_SYS_DLOPEN_SELF
1934# ------------------
1935AC_DEFUN([LT_SYS_DLOPEN_SELF],
1936[m4_require([_LT_HEADER_DLFCN])dnl
c45550e5 1937if test yes != "$enable_dlopen"; then
5c706339
AK
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*)
c45550e5 1947 lt_cv_dlopen=load_add_on
5c706339
AK
1948 lt_cv_dlopen_libs=
1949 lt_cv_dlopen_self=yes
1950 ;;
1951
47dc80f6 1952 mingw* | pw32* | cegcc*)
c45550e5 1953 lt_cv_dlopen=LoadLibrary
5c706339
AK
1954 lt_cv_dlopen_libs=
1955 ;;
1956
1957 cygwin*)
c45550e5 1958 lt_cv_dlopen=dlopen
5c706339
AK
1959 lt_cv_dlopen_libs=
1960 ;;
1961
1962 darwin*)
c45550e5 1963 # if libdl is installed we need to link against it
5c706339 1964 AC_CHECK_LIB([dl], [dlopen],
c45550e5
AK
1965 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
1966 lt_cv_dlopen=dyld
5c706339
AK
1967 lt_cv_dlopen_libs=
1968 lt_cv_dlopen_self=yes
1969 ])
1970 ;;
1971
c45550e5
AK
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
5c706339
AK
1980 *)
1981 AC_CHECK_FUNC([shl_load],
c45550e5 1982 [lt_cv_dlopen=shl_load],
5c706339 1983 [AC_CHECK_LIB([dld], [shl_load],
c45550e5 1984 [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
5c706339 1985 [AC_CHECK_FUNC([dlopen],
c45550e5 1986 [lt_cv_dlopen=dlopen],
5c706339 1987 [AC_CHECK_LIB([dl], [dlopen],
c45550e5 1988 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
5c706339 1989 [AC_CHECK_LIB([svld], [dlopen],
c45550e5 1990 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
5c706339 1991 [AC_CHECK_LIB([dld], [dld_link],
c45550e5 1992 [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
5c706339
AK
1993 ])
1994 ])
1995 ])
1996 ])
1997 ])
1998 ;;
1999 esac
2000
c45550e5 2001 if test no = "$lt_cv_dlopen"; then
5c706339 2002 enable_dlopen=no
c45550e5
AK
2003 else
2004 enable_dlopen=yes
5c706339
AK
2005 fi
2006
2007 case $lt_cv_dlopen in
2008 dlopen)
c45550e5
AK
2009 save_CPPFLAGS=$CPPFLAGS
2010 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
5c706339 2011
c45550e5 2012 save_LDFLAGS=$LDFLAGS
5c706339
AK
2013 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2014
c45550e5 2015 save_LIBS=$LIBS
5c706339
AK
2016 LIBS="$lt_cv_dlopen_libs $LIBS"
2017
2018 AC_CACHE_CHECK([whether a program can dlopen itself],
2019 lt_cv_dlopen_self, [dnl
2020 _LT_TRY_DLOPEN_SELF(
2021 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
2022 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
2023 ])
2024
c45550e5 2025 if test yes = "$lt_cv_dlopen_self"; then
5c706339
AK
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],
2028 lt_cv_dlopen_self_static, [dnl
2029 _LT_TRY_DLOPEN_SELF(
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
c45550e5
AK
2035 CPPFLAGS=$save_CPPFLAGS
2036 LDFLAGS=$save_LDFLAGS
2037 LIBS=$save_LIBS
5c706339
AK
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
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
2058
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], [])
2063
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
2073AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
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
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:'`
059850b5 2091 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
2092 (eval "$lt_compile" 2>out/conftest.err)
2093 ac_status=$?
2094 cat out/conftest.err >&AS_MESSAGE_LOG_FD
059850b5 2095 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
5c706339
AK
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
059850b5 2100 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
5c706339
AK
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
2103 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2104 fi
2105 fi
2106 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2107 $RM conftest*
2108 # SGI C++ compiler will create directory out/ii_files/ for
2109 # template instantiation
2110 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2111 $RM out/* && rmdir out
2112 cd ..
2113 $RM -r conftest
2114 $RM conftest*
2115])
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
2119
2120
2121# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2122# ----------------------------------
2123# Check to see if we can do hard links to lock some files if needed
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])
2128
c45550e5
AK
2129hard_links=nottested
2130if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
5c706339
AK
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
2134 $RM conftest*
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])
c45550e5
AK
2140 if test no = "$hard_links"; then
2141 AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
5c706339
AK
2142 need_locks=warn
2143 fi
2144else
2145 need_locks=no
2146fi
2147_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2148])# _LT_COMPILER_FILE_LOCKS
2149
2150
2151# _LT_CHECK_OBJDIR
2152# ----------------
2153m4_defun([_LT_CHECK_OBJDIR],
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
2165_LT_DECL([], [objdir], [0],
2166 [The name of the directory that contains temporary libtool files])dnl
2167m4_pattern_allow([LT_OBJDIR])dnl
c45550e5
AK
2168AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
2169 [Define to the sub-directory where libtool stores uninstalled libraries.])
5c706339
AK
2170])# _LT_CHECK_OBJDIR
2171
2172
2173# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2174# --------------------------------------
2175# Check hardcoding attributes.
2176m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2177[AC_MSG_CHECKING([how to hardcode library paths into programs])
2178_LT_TAGVAR(hardcode_action, $1)=
2179if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2180 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
c45550e5 2181 test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
5c706339
AK
2182
2183 # We can hardcode non-existent directories.
c45550e5 2184 if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
5c706339
AK
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
c45550e5
AK
2188 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
2189 test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
5c706339
AK
2190 # Linking always hardcodes the temporary library directory.
2191 _LT_TAGVAR(hardcode_action, $1)=relink
2192 else
2193 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2194 _LT_TAGVAR(hardcode_action, $1)=immediate
2195 fi
2196else
2197 # We cannot hardcode anything, or else we can only hardcode existing
2198 # directories.
2199 _LT_TAGVAR(hardcode_action, $1)=unsupported
2200fi
2201AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2202
c45550e5
AK
2203if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
2204 test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
5c706339
AK
2205 # Fast installation is not supported
2206 enable_fast_install=no
c45550e5
AK
2207elif test yes = "$shlibpath_overrides_runpath" ||
2208 test no = "$enable_shared"; then
5c706339
AK
2209 # Fast installation is not necessary
2210 enable_fast_install=needless
2211fi
2212_LT_TAGDECL([], [hardcode_action], [0],
2213 [How to hardcode a shared library path into an executable])
2214])# _LT_LINKER_HARDCODE_LIBPATH
2215
2216
2217# _LT_CMD_STRIPLIB
2218# ----------------
2219m4_defun([_LT_CMD_STRIPLIB],
2220[m4_require([_LT_DECL_EGREP])
2221striplib=
2222old_striplib=
2223AC_MSG_CHECKING([whether stripping libraries is possible])
2224if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
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
2231 darwin*)
c45550e5 2232 if test -n "$STRIP"; then
5c706339
AK
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])
2242 ;;
2243 esac
2244fi
2245_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2246_LT_DECL([], [striplib], [1])
2247])# _LT_CMD_STRIPLIB
2248
2249
c45550e5
AK
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
5c706339
AK
2291# _LT_SYS_DYNAMIC_LINKER([TAG])
2292# -----------------------------
2293# PORTME Fill in your ld.so characteristics
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
47dc80f6 2298m4_require([_LT_DECL_OBJDUMP])dnl
5c706339 2299m4_require([_LT_DECL_SED])dnl
059850b5 2300m4_require([_LT_CHECK_SHELL_FEATURES])dnl
c45550e5 2301m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
5c706339
AK
2302AC_MSG_CHECKING([dynamic linker characteristics])
2303m4_if([$1],
2304 [], [
c45550e5 2305if test yes = "$GCC"; then
5c706339 2306 case $host_os in
c45550e5
AK
2307 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
2308 *) lt_awk_arg='/^libraries:/' ;;
5c706339 2309 esac
059850b5 2310 case $host_os in
c45550e5
AK
2311 mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
2312 *) lt_sed_strip_eq='s|=/|/|g' ;;
059850b5
AK
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 *\;*)
5c706339
AK
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.
059850b5
AK
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
5c706339 2327 # Ok, now we have the path, separated by spaces, we can step through it
c45550e5 2328 # and add multilib dir if necessary...
5c706339 2329 lt_tmp_lt_search_path_spec=
c45550e5
AK
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
5c706339 2338 for lt_sys_path in $lt_search_path_spec; do
c45550e5
AK
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
5c706339
AK
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
059850b5 2346 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
c45550e5
AK
2347BEGIN {RS = " "; FS = "/|\n";} {
2348 lt_foo = "";
2349 lt_count = 0;
5c706339
AK
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) {
c45550e5 2356 lt_foo = "/" $lt_i lt_foo;
5c706339
AK
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}'`
059850b5
AK
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" |\
c45550e5 2370 $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
059850b5
AK
2371 esac
2372 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
5c706339
AK
2373else
2374 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2375fi])
2376library_names_spec=
2377libname_spec='lib$name'
2378soname_spec=
c45550e5 2379shrext_cmds=.so
5c706339
AK
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"
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
c45550e5
AK
2396AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
2397[User-defined run-time library search path.])
2398
5c706339
AK
2399case $host_os in
2400aix3*)
059850b5 2401 version_type=linux # correct to gnu/linux during the next big refactor
c45550e5 2402 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
5c706339
AK
2403 shlibpath_var=LIBPATH
2404
2405 # AIX 3 has no versioning support, so we append a major version to the name.
c45550e5 2406 soname_spec='$libname$release$shared_ext$major'
5c706339
AK
2407 ;;
2408
2409aix[[4-9]]*)
059850b5 2410 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2411 need_lib_prefix=no
2412 need_version=no
2413 hardcode_into_libs=yes
c45550e5 2414 if test ia64 = "$host_cpu"; then
5c706339 2415 # AIX 5 supports IA64
c45550e5 2416 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
5c706339
AK
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
c45550e5
AK
2421 # the line '#! .'. This would cause the generated library to
2422 # depend on '.', always an invalid library. This was fixed in
5c706339
AK
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 '
c45550e5 2428 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
5c706339
AK
2429 :
2430 else
2431 can_build_shared=no
2432 fi
2433 ;;
2434 esac
c45550e5
AK
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
5c706339
AK
2459 # soname into executable. Probably we can add versioning support to
2460 # collect2, so additional links can be useful in future.
c45550e5
AK
2461 aix,yes) # traditional libtool
2462 dynamic_linker='AIX unversionable lib.so'
5c706339
AK
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.
c45550e5
AK
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[)]'
5c706339
AK
2470 # We preserve .a as extension for shared libraries through AIX4.2
2471 # and later when we are not doing run time linking.
c45550e5
AK
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
5c706339
AK
2499 shlibpath_var=LIBPATH
2500 fi
2501 ;;
2502
2503amigaos*)
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.
c45550e5 2508 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
5c706339
AK
2509 ;;
2510 m68k)
2511 library_names_spec='$libname.ixlibrary $libname.a'
2512 # Create ${libname}_ixlibrary.a entries in /sys/libs.
c45550e5 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'
5c706339
AK
2514 ;;
2515 esac
2516 ;;
2517
2518beos*)
c45550e5 2519 library_names_spec='$libname$shared_ext'
5c706339
AK
2520 dynamic_linker="$host_os ld.so"
2521 shlibpath_var=LIBRARY_PATH
2522 ;;
2523
2524bsdi[[45]]*)
059850b5 2525 version_type=linux # correct to gnu/linux during the next big refactor
5c706339 2526 need_version=no
c45550e5
AK
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'
5c706339
AK
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
47dc80f6 2538cygwin* | mingw* | pw32* | cegcc*)
5c706339 2539 version_type=windows
c45550e5 2540 shrext_cmds=.dll
5c706339 2541 need_version=no
b9668ba4
AK
2542 need_lib_prefix=no
2543
059850b5
AK
2544 case $GCC,$cc_basename in
2545 yes,*)
2546 # gcc
b9668ba4
AK
2547 library_names_spec='$libname.dll.a'
2548 # DLL is installed to $(libdir)/../bin by postinstall_cmds
c45550e5
AK
2549 postinstall_cmds='base_file=`basename \$file`~
2550 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
b9668ba4
AK
2551 dldir=$destdir/`dirname \$dlpath`~
2552 test -d \$dldir || mkdir -p \$dldir~
2553 $install_prog $dir/$dlname \$dldir/$dlname~
5c706339
AK
2554 chmod a+x \$dldir/$dlname~
2555 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2556 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2557 fi'
b9668ba4
AK
2558 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2559 dlpath=$dir/\$dldll~
5c706339 2560 $RM \$dlpath'
b9668ba4
AK
2561 shlibpath_overrides_runpath=yes
2562
2563 case $host_os in
2564 cygwin*)
2565 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
c45550e5 2566 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
059850b5
AK
2567m4_if([$1], [],[
2568 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
b9668ba4 2569 ;;
47dc80f6 2570 mingw* | cegcc*)
b9668ba4 2571 # MinGW DLLs use traditional 'lib' prefix
c45550e5 2572 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
b9668ba4
AK
2573 ;;
2574 pw32*)
2575 # pw32 DLLs use 'pw' prefix rather than 'lib'
c45550e5 2576 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
b9668ba4
AK
2577 ;;
2578 esac
059850b5
AK
2579 dynamic_linker='Win32 ld.exe'
2580 ;;
2581
2582 *,cl*)
2583 # Native MSVC
2584 libname_spec='$name'
c45550e5
AK
2585 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2586 library_names_spec='$libname.dll.lib'
059850b5
AK
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 *)
c45550e5 2613 sys_lib_search_path_spec=$LIB
059850b5
AK
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
c45550e5
AK
2626 postinstall_cmds='base_file=`basename \$file`~
2627 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
059850b5
AK
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'
b9668ba4
AK
2636 ;;
2637
2638 *)
059850b5 2639 # Assume MSVC wrapper
c45550e5 2640 library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
059850b5 2641 dynamic_linker='Win32 ld.exe'
b9668ba4
AK
2642 ;;
2643 esac
b9668ba4
AK
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
c45550e5
AK
2653 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
2654 soname_spec='$libname$release$major$shared_ext'
b9668ba4
AK
2655 shlibpath_overrides_runpath=yes
2656 shlibpath_var=DYLD_LIBRARY_PATH
2657 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
5c706339
AK
2658m4_if([$1], [],[
2659 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
b9668ba4
AK
2660 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2661 ;;
2662
2663dgux*)
059850b5 2664 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2665 need_lib_prefix=no
2666 need_version=no
c45550e5
AK
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'
b9668ba4
AK
2669 shlibpath_var=LD_LIBRARY_PATH
2670 ;;
2671
b9668ba4
AK
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
059850b5 2679 freebsd[[23]].*) objformat=aout ;;
b9668ba4
AK
2680 *) objformat=elf ;;
2681 esac
2682 fi
2683 version_type=freebsd-$objformat
2684 case $version_type in
2685 freebsd-elf*)
c45550e5
AK
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'
b9668ba4
AK
2688 need_version=no
2689 need_lib_prefix=no
2690 ;;
2691 freebsd-*)
c45550e5 2692 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
b9668ba4
AK
2693 need_version=yes
2694 ;;
2695 esac
2696 shlibpath_var=LD_LIBRARY_PATH
2697 case $host_os in
059850b5 2698 freebsd2.*)
b9668ba4
AK
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 ;;
5c706339 2710 *) # from 4.6 on, and DragonFly
b9668ba4
AK
2711 shlibpath_overrides_runpath=yes
2712 hardcode_into_libs=yes
2713 ;;
2714 esac
2715 ;;
2716
059850b5
AK
2717haiku*)
2718 version_type=linux # correct to gnu/linux during the next big refactor
2719 need_lib_prefix=no
2720 need_version=no
2721 dynamic_linker="$host_os runtime_loader"
c45550e5
AK
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'
059850b5 2724 shlibpath_var=LIBRARY_PATH
c45550e5 2725 shlibpath_overrides_runpath=no
059850b5 2726 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
b9668ba4
AK
2727 hardcode_into_libs=yes
2728 ;;
2729
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.
c45550e5
AK
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
b9668ba4 2746 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
c45550e5 2747 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
b9668ba4
AK
2748 else
2749 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
c45550e5 2750 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
b9668ba4 2751 fi
b9668ba4 2752 ;;
5c706339
AK
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.
c45550e5
AK
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'
5c706339
AK
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 *)
b9668ba4
AK
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
c45550e5
AK
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'
b9668ba4
AK
2771 ;;
2772 esac
059850b5 2773 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
b9668ba4 2774 postinstall_cmds='chmod 555 $lib'
059850b5
AK
2775 # or fails outright, so override atomically:
2776 install_override_mode=555
b9668ba4
AK
2777 ;;
2778
5c706339 2779interix[[3-9]]*)
059850b5 2780 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2781 need_lib_prefix=no
2782 need_version=no
c45550e5
AK
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'
b9668ba4
AK
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 *)
c45550e5 2795 if test yes = "$lt_cv_prog_gnu_ld"; then
059850b5 2796 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2797 else
2798 version_type=irix
2799 fi ;;
2800 esac
2801 need_lib_prefix=no
2802 need_version=no
c45550e5
AK
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'
b9668ba4
AK
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
c45550e5
AK
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"
b9668ba4
AK
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
c45550e5
AK
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
059850b5 2853# This must be glibc/ELF.
0044e680 2854linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
059850b5 2855 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2856 need_lib_prefix=no
2857 need_version=no
c45550e5
AK
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'
b9668ba4
AK
2860 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2861 shlibpath_var=LD_LIBRARY_PATH
2862 shlibpath_overrides_runpath=no
059850b5 2863
5c706339 2864 # Some binutils ld are patched to set DT_RUNPATH
059850b5
AK
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
5c706339 2878
b9668ba4
AK
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
c45550e5
AK
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.
b9668ba4 2890 if test -f /etc/ld.so.conf; then
059850b5 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' ' '`
b9668ba4
AK
2892 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
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
b9668ba4
AK
2904netbsd*)
2905 version_type=sunos
2906 need_lib_prefix=no
2907 need_version=no
5c706339 2908 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
c45550e5 2909 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
b9668ba4
AK
2910 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2911 dynamic_linker='NetBSD (a.out) ld.so'
2912 else
c45550e5
AK
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'
b9668ba4
AK
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)
059850b5 2923 version_type=linux # correct to gnu/linux during the next big refactor
c45550e5 2924 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
b9668ba4
AK
2925 shlibpath_var=LD_LIBRARY_PATH
2926 shlibpath_overrides_runpath=yes
2927 ;;
2928
5c706339
AK
2929*nto* | *qnx*)
2930 version_type=qnx
b9668ba4
AK
2931 need_lib_prefix=no
2932 need_version=no
c45550e5
AK
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'
b9668ba4 2935 shlibpath_var=LD_LIBRARY_PATH
5c706339
AK
2936 shlibpath_overrides_runpath=no
2937 hardcode_into_libs=yes
2938 dynamic_linker='ldqnx.so'
b9668ba4
AK
2939 ;;
2940
c45550e5 2941openbsd* | bitrig*)
b9668ba4 2942 version_type=sunos
c45550e5 2943 sys_lib_dlsearch_path_spec=/usr/lib
b9668ba4 2944 need_lib_prefix=no
c45550e5
AK
2945 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
2946 need_version=no
b9668ba4 2947 else
c45550e5 2948 need_version=yes
b9668ba4 2949 fi
c45550e5
AK
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
b9668ba4
AK
2954 ;;
2955
2956os2*)
2957 libname_spec='$name'
c45550e5
AK
2958 version_type=windows
2959 shrext_cmds=.dll
2960 need_version=no
b9668ba4 2961 need_lib_prefix=no
c45550e5
AK
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'
b9668ba4 2968 dynamic_linker='OS/2 ld.exe'
c45550e5
AK
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'
b9668ba4
AK
2984 ;;
2985
2986osf3* | osf4* | osf5*)
2987 version_type=osf
2988 need_lib_prefix=no
2989 need_version=no
c45550e5
AK
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'
b9668ba4
AK
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"
c45550e5 2994 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
b9668ba4
AK
2995 ;;
2996
5c706339
AK
2997rdos*)
2998 dynamic_linker=no
2999 ;;
3000
b9668ba4 3001solaris*)
059850b5 3002 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
3003 need_lib_prefix=no
3004 need_version=no
c45550e5
AK
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'
b9668ba4
AK
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
c45550e5 3016 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
b9668ba4
AK
3017 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
3018 shlibpath_var=LD_LIBRARY_PATH
3019 shlibpath_overrides_runpath=yes
c45550e5 3020 if test yes = "$with_gnu_ld"; then
b9668ba4
AK
3021 need_lib_prefix=no
3022 fi
3023 need_version=yes
3024 ;;
3025
3026sysv4 | sysv4.3*)
059850b5 3027 version_type=linux # correct to gnu/linux during the next big refactor
c45550e5
AK
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'
b9668ba4
AK
3030 shlibpath_var=LD_LIBRARY_PATH
3031 case $host_vendor in
3032 sni)
3033 shlibpath_overrides_runpath=no
3034 need_lib_prefix=no
b9668ba4
AK
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 ;;
5c706339
AK
3046 esac
3047 ;;
b9668ba4 3048
5c706339 3049sysv4*MP*)
c45550e5 3050 if test -d /usr/nec; then
059850b5 3051 version_type=linux # correct to gnu/linux during the next big refactor
c45550e5
AK
3052 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
3053 soname_spec='$libname$shared_ext.$major'
5c706339
AK
3054 shlibpath_var=LD_LIBRARY_PATH
3055 fi
3056 ;;
b9668ba4 3057
5c706339 3058sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
c45550e5 3059 version_type=sco
5c706339
AK
3060 need_lib_prefix=no
3061 need_version=no
c45550e5
AK
3062 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
3063 soname_spec='$libname$release$shared_ext$major'
5c706339
AK
3064 shlibpath_var=LD_LIBRARY_PATH
3065 shlibpath_overrides_runpath=yes
3066 hardcode_into_libs=yes
c45550e5 3067 if test yes = "$with_gnu_ld"; then
5c706339
AK
3068 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
3069 else
3070 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
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 ;;
b9668ba4 3079
5c706339
AK
3080tpf*)
3081 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
059850b5 3082 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
3083 need_lib_prefix=no
3084 need_version=no
c45550e5 3085 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
5c706339
AK
3086 shlibpath_var=LD_LIBRARY_PATH
3087 shlibpath_overrides_runpath=no
3088 hardcode_into_libs=yes
3089 ;;
b9668ba4 3090
5c706339 3091uts4*)
059850b5 3092 version_type=linux # correct to gnu/linux during the next big refactor
c45550e5
AK
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'
5c706339
AK
3095 shlibpath_var=LD_LIBRARY_PATH
3096 ;;
b9668ba4 3097
5c706339
AK
3098*)
3099 dynamic_linker=no
3100 ;;
3101esac
3102AC_MSG_RESULT([$dynamic_linker])
c45550e5 3103test no = "$dynamic_linker" && can_build_shared=no
b9668ba4 3104
5c706339 3105variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
c45550e5 3106if test yes = "$GCC"; then
5c706339
AK
3107 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3108fi
47dc80f6 3109
c45550e5
AK
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
5c706339 3112fi
c45550e5
AK
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
5c706339
AK
3116fi
3117
c45550e5
AK
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
5c706339
AK
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]])
059850b5
AK
3144_LT_DECL([], [install_override_mode], [1],
3145 [Permission mode override for installation of shared libraries])
5c706339
AK
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])
c45550e5
AK
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])
5c706339
AK
3163])# _LT_SYS_DYNAMIC_LINKER
3164
3165
3166# _LT_PATH_TOOL_PREFIX(TOOL)
3167# --------------------------
c45550e5 3168# find a file program that can recognize shared library
5c706339
AK
3169AC_DEFUN([_LT_PATH_TOOL_PREFIX],
3170[m4_require([_LT_DECL_EGREP])dnl
b9668ba4
AK
3171AC_MSG_CHECKING([for $1])
3172AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3173[case $MAGIC_CMD in
3174[[\\/*] | ?:[\\/]*])
c45550e5 3175 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
b9668ba4
AK
3176 ;;
3177*)
c45550e5
AK
3178 lt_save_MAGIC_CMD=$MAGIC_CMD
3179 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
b9668ba4
AK
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.
5c706339 3183 ac_dummy="m4_if([$2], , $PATH, [$2])"
b9668ba4 3184 for ac_dir in $ac_dummy; do
c45550e5 3185 IFS=$lt_save_ifs
b9668ba4 3186 test -z "$ac_dir" && ac_dir=.
c45550e5
AK
3187 if test -f "$ac_dir/$1"; then
3188 lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
b9668ba4
AK
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 \(.*\)"`
c45550e5 3193 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
b9668ba4
AK
3194 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3195 $EGREP "$file_magic_regex" > /dev/null; then
3196 :
3197 else
5c706339 3198 cat <<_LT_EOF 1>&2
b9668ba4
AK
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
5c706339 3209_LT_EOF
b9668ba4
AK
3210 fi ;;
3211 esac
3212 fi
3213 break
3214 fi
3215 done
c45550e5
AK
3216 IFS=$lt_save_ifs
3217 MAGIC_CMD=$lt_save_MAGIC_CMD
b9668ba4
AK
3218 ;;
3219esac])
c45550e5 3220MAGIC_CMD=$lt_cv_path_MAGIC_CMD
b9668ba4
AK
3221if test -n "$MAGIC_CMD"; then
3222 AC_MSG_RESULT($MAGIC_CMD)
3223else
3224 AC_MSG_RESULT(no)
3225fi
5c706339
AK
3226_LT_DECL([], [MAGIC_CMD], [0],
3227 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3228])# _LT_PATH_TOOL_PREFIX
b9668ba4 3229
5c706339
AK
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], [])
b9668ba4 3234
5c706339
AK
3235
3236# _LT_PATH_MAGIC
3237# --------------
c45550e5 3238# find a file program that can recognize a shared library
5c706339
AK
3239m4_defun([_LT_PATH_MAGIC],
3240[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
b9668ba4
AK
3241if test -z "$lt_cv_path_MAGIC_CMD"; then
3242 if test -n "$ac_tool_prefix"; then
5c706339 3243 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
b9668ba4
AK
3244 else
3245 MAGIC_CMD=:
3246 fi
3247fi
5c706339 3248])# _LT_PATH_MAGIC
b9668ba4
AK
3249
3250
5c706339 3251# LT_PATH_LD
b9668ba4
AK
3252# ----------
3253# find the pathname to the GNU or non-GNU linker
5c706339
AK
3254AC_DEFUN([LT_PATH_LD],
3255[AC_REQUIRE([AC_PROG_CC])dnl
b9668ba4
AK
3256AC_REQUIRE([AC_CANONICAL_HOST])dnl
3257AC_REQUIRE([AC_CANONICAL_BUILD])dnl
5c706339
AK
3258m4_require([_LT_DECL_SED])dnl
3259m4_require([_LT_DECL_EGREP])dnl
059850b5 3260m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
5c706339
AK
3261
3262AC_ARG_WITH([gnu-ld],
3263 [AS_HELP_STRING([--with-gnu-ld],
3264 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
c45550e5 3265 [test no = "$withval" || with_gnu_ld=yes],
5c706339
AK
3266 [with_gnu_ld=no])dnl
3267
b9668ba4 3268ac_prog=ld
c45550e5 3269if test yes = "$GCC"; then
b9668ba4
AK
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*)
c45550e5 3274 # gcc leaves a trailing carriage return, which upsets mingw
b9668ba4
AK
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
5c706339
AK
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%/%"`
b9668ba4 3287 done
c45550e5 3288 test -z "$LD" && LD=$ac_prog
b9668ba4
AK
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
c45550e5 3299elif test yes = "$with_gnu_ld"; then
b9668ba4
AK
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
c45550e5 3306 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
b9668ba4 3307 for ac_dir in $PATH; do
c45550e5 3308 IFS=$lt_save_ifs
b9668ba4
AK
3309 test -z "$ac_dir" && ac_dir=.
3310 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
c45550e5 3311 lt_cv_path_LD=$ac_dir/$ac_prog
b9668ba4
AK
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'*)
c45550e5 3317 test no != "$with_gnu_ld" && break
b9668ba4
AK
3318 ;;
3319 *)
c45550e5 3320 test yes != "$with_gnu_ld" && break
b9668ba4
AK
3321 ;;
3322 esac
3323 fi
3324 done
c45550e5 3325 IFS=$lt_save_ifs
b9668ba4 3326else
c45550e5 3327 lt_cv_path_LD=$LD # Let the user override the test with a path.
b9668ba4 3328fi])
c45550e5 3329LD=$lt_cv_path_LD
b9668ba4
AK
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])
5c706339
AK
3336_LT_PATH_LD_GNU
3337AC_SUBST([LD])
b9668ba4 3338
5c706339
AK
3339_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3340])# LT_PATH_LD
b9668ba4 3341
5c706339
AK
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,
b9668ba4
AK
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
5c706339 3364])# _LT_PATH_LD_GNU
b9668ba4
AK
3365
3366
5c706339
AK
3367# _LT_CMD_RELOAD
3368# --------------
b9668ba4
AK
3369# find reload flag for linker
3370# -- PORTME Some linkers may need a different reload flag.
5c706339 3371m4_defun([_LT_CMD_RELOAD],
b9668ba4
AK
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
059850b5 3382 cygwin* | mingw* | pw32* | cegcc*)
c45550e5 3383 if test yes != "$GCC"; then
059850b5
AK
3384 reload_cmds=false
3385 fi
3386 ;;
b9668ba4 3387 darwin*)
c45550e5
AK
3388 if test yes = "$GCC"; then
3389 reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
b9668ba4
AK
3390 else
3391 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3392 fi
3393 ;;
3394esac
059850b5
AK
3395_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3396_LT_TAGDECL([], [reload_cmds], [2])dnl
5c706339 3397])# _LT_CMD_RELOAD
b9668ba4
AK
3398
3399
c45550e5
AK
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
5c706339
AK
3437# _LT_CHECK_MAGIC_METHOD
3438# ----------------------
b9668ba4
AK
3439# how to check for library dependencies
3440# -- PORTME fill in with the dynamic library characteristics
5c706339
AK
3441m4_defun([_LT_CHECK_MAGIC_METHOD],
3442[m4_require([_LT_DECL_EGREP])
47dc80f6 3443m4_require([_LT_DECL_OBJDUMP])
5c706339 3444AC_CACHE_CHECK([how to recognize dependent libraries],
b9668ba4
AK
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.
c45550e5 3452# 'unknown' -- same as none, but documents that we really don't know.
b9668ba4
AK
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
c45550e5
AK
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.
b9668ba4
AK
3459
3460case $host_os in
5c706339 3461aix[[4-9]]*)
b9668ba4
AK
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
5c706339
AK
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.
c45550e5 3485 if ( file / ) >/dev/null 2>&1; then
5c706339
AK
3486 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3487 lt_cv_file_magic_cmd='func_win32_libid'
3488 else
059850b5
AK
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)'
5c706339
AK
3491 lt_cv_file_magic_cmd='$OBJDUMP -f'
3492 fi
b9668ba4
AK
3493 ;;
3494
059850b5 3495cegcc*)
47dc80f6
AK
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
b9668ba4
AK
3501darwin* | rhapsody*)
3502 lt_cv_deplibs_check_method=pass_all
3503 ;;
3504
3505freebsd* | dragonfly*)
5c706339 3506 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
b9668ba4
AK
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
059850b5
AK
3521haiku*)
3522 lt_cv_deplibs_check_method=pass_all
3523 ;;
3524
b9668ba4
AK
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*)
059850b5 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]']
b9668ba4
AK
3534 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3535 ;;
3536 *)
059850b5 3537 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
b9668ba4
AK
3538 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3539 ;;
3540 esac
3541 ;;
3542
5c706339 3543interix[[3-9]]*)
b9668ba4
AK
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
059850b5 3558# This must be glibc/ELF.
0044e680 3559linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
b9668ba4
AK
3560 lt_cv_deplibs_check_method=pass_all
3561 ;;
3562
c45550e5 3563netbsd*)
5c706339 3564 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
b9668ba4
AK
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
5c706339
AK
3577*nto* | *qnx*)
3578 lt_cv_deplibs_check_method=pass_all
b9668ba4
AK
3579 ;;
3580
c45550e5
AK
3581openbsd* | bitrig*)
3582 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
b9668ba4
AK
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
5c706339
AK
3593rdos*)
3594 lt_cv_deplibs_check_method=pass_all
3595 ;;
3596
b9668ba4
AK
3597solaris*)
3598 lt_cv_deplibs_check_method=pass_all
3599 ;;
3600
5c706339
AK
3601sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3602 lt_cv_deplibs_check_method=pass_all
3603 ;;
3604
b9668ba4
AK
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
5c706339 3632tpf*)
b9668ba4
AK
3633 lt_cv_deplibs_check_method=pass_all
3634 ;;
c45550e5
AK
3635os2*)
3636 lt_cv_deplibs_check_method=pass_all
3637 ;;
b9668ba4
AK
3638esac
3639])
059850b5
AK
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
b9668ba4
AK
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
b9668ba4 3658
5c706339
AK
3659_LT_DECL([], [deplibs_check_method], [1],
3660 [Method to check whether dependent libraries are shared objects])
3661_LT_DECL([], [file_magic_cmd], [1],
059850b5
AK
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"])
5c706339 3667])# _LT_CHECK_MAGIC_METHOD
b9668ba4 3668
5c706339
AK
3669
3670# LT_PATH_NM
b9668ba4 3671# ----------
5c706339
AK
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,
b9668ba4
AK
3676[if test -n "$NM"; then
3677 # Let the user override the test.
c45550e5 3678 lt_cv_path_NM=$NM
b9668ba4 3679else
c45550e5 3680 lt_nm_to_check=${ac_tool_prefix}nm
5c706339 3681 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
b9668ba4
AK
3682 lt_nm_to_check="$lt_nm_to_check nm"
3683 fi
3684 for lt_tmp_nm in $lt_nm_to_check; do
c45550e5 3685 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
b9668ba4 3686 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
c45550e5 3687 IFS=$lt_save_ifs
b9668ba4 3688 test -z "$ac_dir" && ac_dir=.
c45550e5
AK
3689 tmp_nm=$ac_dir/$lt_tmp_nm
3690 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
b9668ba4 3691 # Check to see if the nm accepts a BSD-compat flag.
c45550e5 3692 # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
b9668ba4
AK
3693 # nm: unknown option "B" ignored
3694 # Tru64's nm complains that /dev/null is an invalid object file
c45550e5
AK
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'*)
b9668ba4 3702 lt_cv_path_NM="$tmp_nm -B"
c45550e5 3703 break 2
b9668ba4
AK
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"
c45550e5 3709 break 2
b9668ba4
AK
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
c45550e5 3720 IFS=$lt_save_ifs
b9668ba4 3721 done
5c706339 3722 : ${lt_cv_path_NM=no}
b9668ba4 3723fi])
c45550e5
AK
3724if test no != "$lt_cv_path_NM"; then
3725 NM=$lt_cv_path_NM
5c706339
AK
3726else
3727 # Didn't find any BSD compatible name lister, look for dumpbin.
059850b5
AK
3728 if test -n "$DUMPBIN"; then :
3729 # Let the user override the test.
3730 else
3731 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
c45550e5 3732 case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
059850b5 3733 *COFF*)
c45550e5 3734 DUMPBIN="$DUMPBIN -symbols -headers"
059850b5
AK
3735 ;;
3736 *)
3737 DUMPBIN=:
3738 ;;
3739 esac
3740 fi
5c706339 3741 AC_SUBST([DUMPBIN])
c45550e5
AK
3742 if test : != "$DUMPBIN"; then
3743 NM=$DUMPBIN
5c706339
AK
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
059850b5 3753 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
3754 (eval "$ac_compile" 2>conftest.err)
3755 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 3756 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
3757 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3758 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 3759 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
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
b9668ba4 3766
5c706339
AK
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], [])
b9668ba4 3773
059850b5
AK
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*)
c45550e5
AK
3789 # two different shell functions defined in ltmain.sh;
3790 # decide which one to use based on capabilities of $DLLTOOL
059850b5
AK
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
c45550e5 3802 lt_cv_sharedlib_from_linklib_cmd=$ECHO
059850b5
AK
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*])
c45550e5 3829if test yes != "$lt_cv_path_mainfest_tool"; then
059850b5
AK
3830 MANIFEST_TOOL=:
3831fi
3832_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3833])# _LT_PATH_MANIFEST_TOOL
3834
5c706339 3835
c45550e5
AK
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
5c706339
AK
3851# LT_LIB_M
3852# --------
b9668ba4 3853# check for math library
5c706339 3854AC_DEFUN([LT_LIB_M],
b9668ba4
AK
3855[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3856LIBM=
3857case $host in
059850b5 3858*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
b9668ba4
AK
3859 # These system don't have libm, or don't need it
3860 ;;
3861*-ncr-sysv4.3*)
c45550e5 3862 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
b9668ba4
AK
3863 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3864 ;;
3865*)
c45550e5 3866 AC_CHECK_LIB(m, cos, LIBM=-lm)
b9668ba4
AK
3867 ;;
3868esac
5c706339
AK
3869AC_SUBST([LIBM])
3870])# LT_LIB_M
b9668ba4 3871
5c706339
AK
3872# Old name:
3873AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3874dnl aclocal-1.4 backwards compatibility:
3875dnl AC_DEFUN([AC_CHECK_LIBM], [])
b9668ba4
AK
3876
3877
5c706339
AK
3878# _LT_COMPILER_NO_RTTI([TAGNAME])
3879# -------------------------------
3880m4_defun([_LT_COMPILER_NO_RTTI],
3881[m4_require([_LT_TAG_COMPILER])dnl
b9668ba4 3882
5c706339 3883_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
b9668ba4 3884
c45550e5 3885if test yes = "$GCC"; then
059850b5
AK
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
b9668ba4 3892
5c706339
AK
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"])
b9668ba4 3897fi
5c706339
AK
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
b9668ba4 3901
b9668ba4 3902
5c706339
AK
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
059850b5 3908AC_REQUIRE([AC_PROG_AWK])dnl
5c706339
AK
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
b9668ba4 3914
5c706339
AK
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],
3918[
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?!! ;)]
b9668ba4 3921
5c706339
AK
3922# Character class describing NM global symbol codes.
3923symcode='[[BCDEGRST]]'
b9668ba4 3924
5c706339
AK
3925# Regexp to match symbols that can be accessed directly from C.
3926sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
b9668ba4 3927
5c706339 3928# Define system-specific variables.
b9668ba4 3929case $host_os in
5c706339
AK
3930aix*)
3931 symcode='[[BCDT]]'
b9668ba4 3932 ;;
47dc80f6 3933cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
3934 symcode='[[ABCDGISTW]]'
3935 ;;
3936hpux*)
c45550e5 3937 if test ia64 = "$host_cpu"; then
5c706339 3938 symcode='[[ABCDEGRST]]'
b9668ba4 3939 fi
5c706339
AK
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 ;;
b9668ba4 3962esac
b9668ba4 3963
5c706339
AK
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
b9668ba4 3969
c45550e5
AK
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
5c706339
AK
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.
c45550e5
AK
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'"
b9668ba4 3994
5c706339 3995# Transform an extracted symbol line into symbol name and symbol address
c45550e5
AK
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'"
b9668ba4 4008
5c706339
AK
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
b9668ba4 4016
5c706339
AK
4017# Try without a prefix underscore, then with it.
4018for ac_symprfx in "" "_"; do
b9668ba4 4019
5c706339
AK
4020 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
4021 symxfrm="\\1 $ac_symprfx\\2 \\2"
b9668ba4 4022
5c706339
AK
4023 # Write the raw and C identifiers.
4024 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
c45550e5
AK
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.
5c706339
AK
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};"\
059850b5 4031" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
5c706339 4032" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
c45550e5
AK
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))};"\
5c706339
AK
4036" \$ 0!~/External *\|/{next};"\
4037" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
4038" {if(hide[section]) next};"\
c45550e5
AK
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))}"\
5c706339 4043" ' prfx=^$ac_symprfx]"
b9668ba4 4044 else
5c706339 4045 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
b9668ba4 4046 fi
059850b5 4047 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
b9668ba4 4048
5c706339
AK
4049 # Check to see that the pipe works correctly.
4050 pipe_works=no
b9668ba4 4051
5c706339
AK
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
b9668ba4 4065
5c706339
AK
4066 if AC_TRY_EVAL(ac_compile); then
4067 # Now try to grab the symbols.
4068 nlist=conftest.nm
059850b5 4069 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
5c706339
AK
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
b9668ba4 4076
5c706339
AK
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
059850b5 4081/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
c45550e5
AK
4082#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4083/* DATA imports from DLLs on WIN32 can't be const, because runtime
059850b5
AK
4084 relocations are performed -- see ld's documentation on pseudo-relocs. */
4085# define LT@&t@_DLSYM_CONST
c45550e5 4086#elif defined __osf__
059850b5
AK
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
5c706339
AK
4093#ifdef __cplusplus
4094extern "C" {
4095#endif
b9668ba4 4096
5c706339
AK
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'
b9668ba4 4100
5c706339 4101 cat <<_LT_EOF >> conftest.$ac_ext
b9668ba4 4102
5c706339 4103/* The mapping between symbol names and symbols. */
059850b5 4104LT@&t@_DLSYM_CONST struct {
5c706339
AK
4105 const char *name;
4106 void *address;
4107}
4108lt__PROGRAM__LTX_preloaded_symbols[[]] =
4109{
4110 { "@PROGRAM@", (void *) 0 },
4111_LT_EOF
c45550e5 4112 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
5c706339
AK
4113 cat <<\_LT_EOF >> conftest.$ac_ext
4114 {0, (void *) 0}
4115};
4116
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
4123
4124#ifdef __cplusplus
4125}
4126#endif
4127_LT_EOF
4128 # Now try linking the two files.
4129 mv conftest.$ac_objext conftstm.$ac_objext
059850b5
AK
4130 lt_globsym_save_LIBS=$LIBS
4131 lt_globsym_save_CFLAGS=$CFLAGS
c45550e5 4132 LIBS=conftstm.$ac_objext
5c706339 4133 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
c45550e5 4134 if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
5c706339
AK
4135 pipe_works=yes
4136 fi
059850b5
AK
4137 LIBS=$lt_globsym_save_LIBS
4138 CFLAGS=$lt_globsym_save_CFLAGS
b9668ba4 4139 else
5c706339 4140 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
b9668ba4 4141 fi
b9668ba4 4142 else
5c706339 4143 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
b9668ba4 4144 fi
5c706339
AK
4145 else
4146 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
b9668ba4 4147 fi
5c706339
AK
4148 else
4149 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4150 cat conftest.$ac_ext >&5
4151 fi
4152 rm -rf conftest* conftst*
b9668ba4 4153
5c706339 4154 # Do not use the global_symbol_pipe unless it works.
c45550e5 4155 if test yes = "$pipe_works"; then
5c706339
AK
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)
4167else
4168 AC_MSG_RESULT(ok)
4169fi
b9668ba4 4170
059850b5
AK
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
5c706339
AK
4178_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
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])
c45550e5
AK
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])
5c706339
AK
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])
c45550e5
AK
4190_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4191 [The name lister interface])
059850b5
AK
4192_LT_DECL([], [nm_file_list_spec], [1],
4193 [Specify filename containing input files for $NM])
5c706339 4194]) # _LT_CMD_GLOBAL_SYMBOLS
b9668ba4 4195
b9668ba4 4196
5c706339
AK
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)=
b9668ba4 4204
5c706339
AK
4205m4_if([$1], [CXX], [
4206 # C++ specific cases for pic, static, wl, etc.
c45550e5 4207 if test yes = "$GXX"; then
5c706339
AK
4208 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4209 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4210
4211 case $host_os in
4212 aix*)
4213 # All AIX code is PIC.
c45550e5 4214 if test ia64 = "$host_cpu"; then
5c706339
AK
4215 # AIX 5 now supports IA64 processor
4216 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4 4217 fi
c45550e5 4218 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
b9668ba4 4219 ;;
b9668ba4 4220
5c706339 4221 amigaos*)
b9668ba4 4222 case $host_cpu in
5c706339
AK
4223 powerpc)
4224 # see comment about AmigaOS4 .so support
4225 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
b9668ba4 4226 ;;
5c706339
AK
4227 m68k)
4228 # FIXME: we need at least 68020 code to build shared libraries, but
c45550e5
AK
4229 # adding the '-m68020' flag to GCC prevents building anything better,
4230 # like '-m68040'.
5c706339 4231 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
b9668ba4
AK
4232 ;;
4233 esac
b9668ba4 4234 ;;
b9668ba4 4235
5c706339
AK
4236 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4237 # PIC is the default for these OSes.
4238 ;;
47dc80f6 4239 mingw* | cygwin* | os2* | pw32* | cegcc*)
5c706339
AK
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'])
c45550e5
AK
4246 case $host_os in
4247 os2*)
4248 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4249 ;;
4250 esac
5c706339
AK
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 ;;
059850b5
AK
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 ;;
5c706339
AK
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*)
47dc80f6
AK
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.
5c706339 4279 case $host_cpu in
47dc80f6 4280 hppa*64*)
b9668ba4
AK
4281 ;;
4282 *)
5c706339 4283 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
b9668ba4 4284 ;;
5c706339
AK
4285 esac
4286 ;;
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'
4291 ;;
4292 *)
4293 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4294 ;;
b9668ba4 4295 esac
5c706339
AK
4296 else
4297 case $host_os in
4298 aix[[4-9]]*)
4299 # All AIX code is PIC.
c45550e5 4300 if test ia64 = "$host_cpu"; then
5c706339
AK
4301 # AIX 5 now supports IA64 processor
4302 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4 4303 else
5c706339 4304 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
b9668ba4
AK
4305 fi
4306 ;;
5c706339
AK
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"
4312 ;;
4313 esac
b9668ba4 4314 ;;
059850b5
AK
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 ;;
5c706339
AK
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
b9668ba4 4333 ;;
5c706339
AK
4334 freebsd* | dragonfly*)
4335 # FreeBSD uses GNU C++
b9668ba4 4336 ;;
5c706339
AK
4337 hpux9* | hpux10* | hpux11*)
4338 case $cc_basename in
4339 CC*)
4340 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
c45550e5
AK
4341 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4342 if test ia64 != "$host_cpu"; then
5c706339
AK
4343 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4344 fi
4345 ;;
4346 aCC*)
4347 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
c45550e5 4348 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
5c706339
AK
4349 case $host_cpu in
4350 hppa*64*|ia64*)
4351 # +Z the default
4352 ;;
4353 *)
4354 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4355 ;;
4356 esac
4357 ;;
b9668ba4 4358 *)
b9668ba4
AK
4359 ;;
4360 esac
b9668ba4 4361 ;;
5c706339
AK
4362 interix*)
4363 # This is c89, which is MS Visual C++ (no shared libs)
4364 # Anyone wants to do a port?
b9668ba4 4365 ;;
5c706339
AK
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 ;;
4375 esac
b9668ba4 4376 ;;
0044e680 4377 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
5c706339
AK
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 ;;
47dc80f6 4384 ecpc* )
c45550e5 4385 # old Intel C++ for x86_64, which still supported -KPIC.
5c706339
AK
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 ;;
47dc80f6
AK
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 ;;
5c706339
AK
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 ;;
059850b5
AK
4410 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4411 # IBM XL 8.0, 9.0 on PPC and BlueGene
5c706339
AK
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
b9668ba4 4427 ;;
5c706339 4428 lynxos*)
b9668ba4 4429 ;;
5c706339 4430 m88k*)
b9668ba4 4431 ;;
5c706339
AK
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
b9668ba4 4440 ;;
c45550e5 4441 netbsd*)
5c706339
AK
4442 ;;
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
4468 ;;
4469 psos*)
4470 ;;
4471 solaris*)
4472 case $cc_basename in
059850b5 4473 CC* | sunCC*)
5c706339
AK
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 ;;
4483 *)
4484 ;;
4485 esac
4486 ;;
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 ;;
4498 *)
4499 ;;
4500 esac
4501 ;;
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
4510 ;;
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
4520 ;;
4521 vxworks*)
4522 ;;
4523 *)
4524 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
b9668ba4
AK
4525 ;;
4526 esac
b9668ba4 4527 fi
5c706339
AK
4528],
4529[
c45550e5 4530 if test yes = "$GCC"; then
5c706339
AK
4531 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4532 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
b9668ba4 4533
5c706339
AK
4534 case $host_os in
4535 aix*)
4536 # All AIX code is PIC.
c45550e5 4537 if test ia64 = "$host_cpu"; then
5c706339
AK
4538 # AIX 5 now supports IA64 processor
4539 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4540 fi
c45550e5 4541 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5c706339 4542 ;;
b9668ba4 4543
5c706339
AK
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
c45550e5
AK
4552 # adding the '-m68020' flag to GCC prevents building anything better,
4553 # like '-m68040'.
5c706339
AK
4554 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4555 ;;
4556 esac
4557 ;;
b9668ba4 4558
5c706339
AK
4559 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4560 # PIC is the default for these OSes.
4561 ;;
b9668ba4 4562
47dc80f6 4563 mingw* | cygwin* | pw32* | os2* | cegcc*)
5c706339
AK
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'])
c45550e5
AK
4570 case $host_os in
4571 os2*)
4572 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4573 ;;
4574 esac
5c706339 4575 ;;
b9668ba4 4576
5c706339
AK
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 ;;
b9668ba4 4582
059850b5
AK
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
5c706339 4589 hpux*)
47dc80f6
AK
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.
5c706339 4593 case $host_cpu in
47dc80f6 4594 hppa*64*)
5c706339
AK
4595 # +Z the default
4596 ;;
4597 *)
4598 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4599 ;;
4600 esac
4601 ;;
b9668ba4 4602
5c706339
AK
4603 interix[[3-9]]*)
4604 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4605 # Instead, we relocate shared libraries at runtime.
4606 ;;
b9668ba4 4607
5c706339
AK
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 ;;
b9668ba4 4614
5c706339
AK
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 ;;
b9668ba4 4620
5c706339
AK
4621 sysv4*MP*)
4622 if test -d /usr/nec; then
4623 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4624 fi
4625 ;;
b9668ba4 4626
5c706339
AK
4627 *)
4628 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4629 ;;
4630 esac
059850b5
AK
4631
4632 case $cc_basename in
4633 nvcc*) # Cuda Compiler Driver 2.2
4634 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
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
4638 ;;
4639 esac
5c706339
AK
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,'
c45550e5 4645 if test ia64 = "$host_cpu"; then
5c706339
AK
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 ;;
b9668ba4 4652
c45550e5
AK
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
47dc80f6 4667 mingw* | cygwin* | pw32* | os2* | cegcc*)
5c706339
AK
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'])
c45550e5
AK
4672 case $host_os in
4673 os2*)
4674 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4675 ;;
4676 esac
5c706339 4677 ;;
b9668ba4 4678
5c706339
AK
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?
c45550e5 4692 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
5c706339 4693 ;;
b9668ba4 4694
5c706339
AK
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 ;;
b9668ba4 4700
0044e680 4701 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
5c706339 4702 case $cc_basename in
c45550e5 4703 # old Intel for x86_64, which still supported -KPIC.
47dc80f6 4704 ecc*)
5c706339
AK
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 ;;
47dc80f6
AK
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 ;;
059850b5
AK
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 ;;
c45550e5
AK
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 ;;
059850b5 4734 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
5c706339
AK
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 ;;
059850b5
AK
4746 xl* | bgxl* | bgf* | mpixl*)
4747 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
5c706339
AK
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
059850b5
AK
4754 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4755 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4756 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4757 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4758 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4759 ;;
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 ;;
5c706339
AK
4765 *Sun\ C*)
4766 # Sun C 5.9
4767 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4768 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4769 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4770 ;;
059850b5
AK
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'
5c706339 4779 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5c706339
AK
4780 ;;
4781 esac
4782 ;;
4783 esac
4784 ;;
b9668ba4 4785
5c706339
AK
4786 newsos6)
4787 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4788 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4789 ;;
b9668ba4 4790
5c706339
AK
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 ;;
b9668ba4 4796
5c706339
AK
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'
4801 ;;
b9668ba4 4802
5c706339
AK
4803 rdos*)
4804 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4805 ;;
b9668ba4 4806
5c706339
AK
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
059850b5 4811 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
5c706339
AK
4812 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4813 *)
4814 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4815 esac
4816 ;;
b9668ba4 4817
5c706339
AK
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 ;;
b9668ba4 4823
5c706339
AK
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 ;;
b9668ba4 4829
5c706339 4830 sysv4*MP*)
c45550e5 4831 if test -d /usr/nec; then
5c706339
AK
4832 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4833 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4834 fi
4835 ;;
b9668ba4 4836
5c706339
AK
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 ;;
b9668ba4 4842
5c706339
AK
4843 unicos*)
4844 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4845 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4846 ;;
b9668ba4 4847
5c706339
AK
4848 uts4*)
4849 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4850 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4 4851 ;;
5c706339 4852
b9668ba4 4853 *)
5c706339 4854 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
b9668ba4
AK
4855 ;;
4856 esac
5c706339
AK
4857 fi
4858])
4859case $host_os in
c45550e5 4860 # For platforms that do not support PIC, -DPIC is meaningless:
5c706339
AK
4861 *djgpp*)
4862 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
b9668ba4 4863 ;;
5c706339
AK
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
059850b5
AK
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)
b9668ba4 4873
b9668ba4 4874#
5c706339 4875# Check to make sure the PIC flag actually works.
b9668ba4 4876#
5c706339
AK
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])
4890
059850b5
AK
4891_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4892 [How to pass a linker flag through the compiler])
b9668ba4 4893#
5c706339 4894# Check to make sure the static flag actually works.
b9668ba4 4895#
5c706339
AK
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
b9668ba4 4905
b9668ba4 4906
5c706339
AK
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
059850b5 4913m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5c706339
AK
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'
059850b5 4922 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5c706339
AK
4923 case $host_os in
4924 aix[[4-9]]*)
4925 # If we're using GNU nm, then we don't want the "-C" option.
c45550e5
AK
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.
5c706339 4933 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
c45550e5 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'
5c706339 4935 else
c45550e5 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'
5c706339
AK
4937 fi
4938 ;;
4939 pw32*)
c45550e5 4940 _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
059850b5 4941 ;;
47dc80f6 4942 cygwin* | mingw* | cegcc*)
059850b5
AK
4943 case $cc_basename in
4944 cl*)
4945 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4946 ;;
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 ;;
5c706339
AK
4953 *)
4954 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
059850b5 4955 ;;
5c706339 4956 esac
5c706339
AK
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)=
5c706339
AK
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
c45550e5
AK
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'.
5c706339
AK
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=
b9668ba4 4998
5c706339 4999 case $host_os in
47dc80f6 5000 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
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++.
c45550e5 5004 if test yes != "$GCC"; then
5c706339
AK
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 ;;
c45550e5 5012 openbsd* | bitrig*)
5c706339
AK
5013 with_gnu_ld=no
5014 ;;
5015 esac
b9668ba4 5016
5c706339 5017 _LT_TAGVAR(ld_shlibs, $1)=yes
059850b5
AK
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
c45550e5 5022 if test yes = "$with_gnu_ld"; then
059850b5
AK
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
c45550e5 5044 if test yes = "$lt_use_gnu_ld_interface"; then
5c706339 5045 # If archive_cmds runs LD, not CC, wlarc should be empty
c45550e5 5046 wlarc='$wl'
b9668ba4 5047
5c706339
AK
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
c45550e5
AK
5052 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5053 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5c706339
AK
5054 # ancient GNU ld didn't support --whole-archive et. al.
5055 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
c45550e5 5056 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5c706339
AK
5057 else
5058 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5059 fi
5060 supports_anon_versioning=no
c45550e5 5061 case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
0fbeb4dc 5062 *GNU\ gold*) supports_anon_versioning=yes ;;
5c706339
AK
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
b9668ba4 5069
5c706339
AK
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
c45550e5 5074 if test ia64 != "$host_cpu"; then
5c706339
AK
5075 _LT_TAGVAR(ld_shlibs, $1)=no
5076 cat <<_LT_EOF 1>&2
b9668ba4 5077
059850b5 5078*** Warning: the GNU linker, at least up to release 2.19, is reported
5c706339
AK
5079*** to be unable to reliably create shared libraries on AIX.
5080*** Therefore, libtool is disabling shared libraries support. If you
059850b5
AK
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.
b9668ba4 5084
5c706339
AK
5085_LT_EOF
5086 fi
5087 ;;
b9668ba4 5088
5c706339
AK
5089 amigaos*)
5090 case $host_cpu in
5091 powerpc)
5092 # see comment about AmigaOS4 .so support
c45550e5 5093 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5c706339
AK
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 ;;
b9668ba4 5103
5c706339
AK
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
c45550e5 5109 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5c706339
AK
5110 else
5111 _LT_TAGVAR(ld_shlibs, $1)=no
5112 fi
5113 ;;
b9668ba4 5114
47dc80f6 5115 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
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'
c45550e5 5119 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
5c706339
AK
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
059850b5
AK
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']
5c706339
AK
5125
5126 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
c45550e5
AK
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'
5c706339
AK
5137 else
5138 _LT_TAGVAR(ld_shlibs, $1)=no
5139 fi
5140 ;;
b9668ba4 5141
059850b5 5142 haiku*)
c45550e5 5143 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
059850b5
AK
5144 _LT_TAGVAR(link_all_deplibs, $1)=yes
5145 ;;
5146
c45550e5
AK
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
5c706339
AK
5175 interix[[3-9]]*)
5176 _LT_TAGVAR(hardcode_direct, $1)=no
5177 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
c45550e5
AK
5178 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5179 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5c706339
AK
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.
c45550e5
AK
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'
5c706339 5188 ;;
b9668ba4 5189
0fbeb4dc 5190 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5c706339 5191 tmp_diet=no
c45550e5 5192 if test linux-dietlibc = "$host_os"; then
5c706339
AK
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 \
c45550e5 5198 && test no = "$tmp_diet"
5c706339 5199 then
059850b5 5200 tmp_addflag=' $pic_flag'
5c706339
AK
5201 tmp_sharedflag='-shared'
5202 case $cc_basename,$host_cpu in
5203 pgcc*) # Portland Group C compiler
c45550e5 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'
5c706339
AK
5205 tmp_addflag=' $pic_flag'
5206 ;;
059850b5
AK
5207 pgf77* | pgf90* | pgf95* | pgfortran*)
5208 # Portland Group f77 and f90 compilers
c45550e5 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'
5c706339
AK
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' ;;
47dc80f6
AK
5217 lf95*) # Lahey Fortran 8.1
5218 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5219 tmp_sharedflag='--shared' ;;
c45550e5
AK
5220 nagfor*) # NAGFOR 5.3
5221 tmp_sharedflag='-Wl,-shared' ;;
059850b5 5222 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5c706339
AK
5223 tmp_sharedflag='-qmkshrobj'
5224 tmp_addflag= ;;
059850b5 5225 nvcc*) # Cuda Compiler Driver 2.2
c45550e5 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'
059850b5
AK
5227 _LT_TAGVAR(compiler_needs_object, $1)=yes
5228 ;;
5c706339
AK
5229 esac
5230 case `$CC -V 2>&1 | sed 5q` in
5231 *Sun\ C*) # Sun C 5.9
c45550e5 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'
5c706339
AK
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
c45550e5 5238 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
b9668ba4 5239
c45550e5 5240 if test yes = "$supports_anon_versioning"; then
5c706339 5241 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
c45550e5
AK
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'
5c706339 5245 fi
b9668ba4 5246
5c706339 5247 case $cc_basename in
c45550e5
AK
5248 tcc*)
5249 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5250 ;;
059850b5 5251 xlf* | bgf* | bgxlf* | mpixlf*)
5c706339
AK
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'
c45550e5 5254 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
059850b5 5255 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
c45550e5 5256 if test yes = "$supports_anon_versioning"; then
5c706339 5257 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
c45550e5
AK
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'
5c706339
AK
5261 fi
5262 ;;
5263 esac
5264 else
5265 _LT_TAGVAR(ld_shlibs, $1)=no
5266 fi
5267 ;;
b9668ba4 5268
c45550e5 5269 netbsd*)
5c706339
AK
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
c45550e5
AK
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'
5c706339
AK
5276 fi
5277 ;;
b9668ba4 5278
5c706339
AK
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
b9668ba4 5283
5c706339
AK
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.
b9668ba4 5290
5c706339
AK
5291_LT_EOF
5292 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
c45550e5
AK
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'
5c706339
AK
5295 else
5296 _LT_TAGVAR(ld_shlibs, $1)=no
5297 fi
5298 ;;
b9668ba4 5299
5c706339
AK
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
b9668ba4 5305
c45550e5 5306*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
5c706339
AK
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.
b9668ba4 5312
5c706339
AK
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
c45550e5
AK
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'
5c706339
AK
5324 else
5325 _LT_TAGVAR(ld_shlibs, $1)=no
5326 fi
5327 ;;
5328 esac
5329 ;;
b9668ba4 5330
5c706339
AK
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
5336 ;;
b9668ba4 5337
5c706339
AK
5338 *)
5339 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
c45550e5
AK
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'
5c706339
AK
5342 else
5343 _LT_TAGVAR(ld_shlibs, $1)=no
5344 fi
5345 ;;
5346 esac
b9668ba4 5347
c45550e5 5348 if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
5c706339
AK
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
c45550e5 5364 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
5c706339
AK
5365 # Neither direct hardcoding nor static linking is supported with a
5366 # broken collect2.
5367 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5368 fi
5369 ;;
b9668ba4 5370
5c706339 5371 aix[[4-9]]*)
c45550e5 5372 if test ia64 = "$host_cpu"; then
5c706339
AK
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'
c45550e5 5377 no_entry_flag=
5c706339
AK
5378 else
5379 # If we're using GNU nm, then we don't want the "-C" option.
c45550e5
AK
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.
5c706339 5387 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
c45550e5 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'
5c706339 5389 else
c45550e5 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'
5c706339
AK
5391 fi
5392 aix_use_runtimelinking=no
b9668ba4 5393
5c706339
AK
5394 # Test if we are trying to use run time linking or normal
5395 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
c45550e5
AK
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
5c706339
AK
5409 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5410 for ld_flag in $LDFLAGS; do
c45550e5 5411 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
5c706339
AK
5412 aix_use_runtimelinking=yes
5413 break
5414 fi
5415 done
c45550e5
AK
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
5c706339
AK
5423 ;;
5424 esac
b9668ba4 5425
5c706339
AK
5426 exp_sym_flag='-bexport'
5427 no_entry_flag='-bnoentry'
5428 fi
b9668ba4 5429
5c706339
AK
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.
b9668ba4 5435
5c706339
AK
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
c45550e5
AK
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
b9668ba4 5450
c45550e5 5451 if test yes = "$GCC"; then
5c706339
AK
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+
c45550e5 5455 collect2name=`$CC -print-prog-name=collect2`
5c706339
AK
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'
c45550e5
AK
5474 if test yes = "$aix_use_runtimelinking"; then
5475 shared_flag="$shared_flag "'$wl-G'
5c706339 5476 fi
c45550e5
AK
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'
5c706339
AK
5482 else
5483 # not using gcc
c45550e5 5484 if test ia64 = "$host_cpu"; then
5c706339
AK
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
c45550e5
AK
5489 if test yes = "$aix_use_runtimelinking"; then
5490 shared_flag='$wl-G'
5c706339 5491 else
c45550e5 5492 shared_flag='$wl-bM:SRE'
5c706339 5493 fi
c45550e5
AK
5494 shared_flag_aix='$wl-bM:SRE'
5495 shared_flag_svr4='$wl-G'
5c706339
AK
5496 fi
5497 fi
b9668ba4 5498
c45550e5 5499 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5c706339
AK
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
c45550e5 5503 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5c706339
AK
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.
059850b5 5509 _LT_SYS_MODULE_PATH_AIX([$1])
c45550e5
AK
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
5c706339 5512 else
c45550e5
AK
5513 if test ia64 = "$host_cpu"; then
5514 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5c706339 5515 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
c45550e5 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"
5c706339
AK
5517 else
5518 # Determine the default libpath from the value encoded in an
5519 # empty executable.
059850b5 5520 _LT_SYS_MODULE_PATH_AIX([$1])
c45550e5 5521 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5c706339
AK
5522 # Warning - without using the other run time loading flags,
5523 # -berok will link without error, but may produce a broken library.
c45550e5
AK
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
059850b5 5527 # We only use this code for GNU lds that support --whole-archive.
c45550e5 5528 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
059850b5
AK
5529 else
5530 # Exported symbols can be pulled into shared objects from archives
5531 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5532 fi
5c706339 5533 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
c45550e5
AK
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'
5c706339
AK
5548 fi
5549 fi
5550 ;;
b9668ba4 5551
5c706339
AK
5552 amigaos*)
5553 case $host_cpu in
5554 powerpc)
5555 # see comment about AmigaOS4 .so support
c45550e5 5556 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5c706339
AK
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 ;;
b9668ba4 5566
5c706339
AK
5567 bsdi[[45]]*)
5568 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5569 ;;
b9668ba4 5570
47dc80f6 5571 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
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.
059850b5
AK
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.
c45550e5 5586 shrext_cmds=.dll
059850b5 5587 # FIXME: Setting linknames here is a bad hack.
c45550e5
AK
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='
059850b5
AK
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
5600 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
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@"~
c45550e5
AK
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'
059850b5
AK
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.
c45550e5 5625 shrext_cmds=.dll
059850b5
AK
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
5c706339 5635 ;;
b9668ba4 5636
5c706339
AK
5637 darwin* | rhapsody*)
5638 _LT_DARWIN_LINKER_FEATURES($1)
5639 ;;
b9668ba4 5640
5c706339
AK
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 ;;
b9668ba4 5646
5c706339
AK
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 ;;
b9668ba4 5657
5c706339 5658 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
059850b5 5659 freebsd2.*)
5c706339
AK
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 ;;
b9668ba4 5665
5c706339
AK
5666 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5667 freebsd* | dragonfly*)
059850b5 5668 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
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 ;;
b9668ba4 5673
5c706339 5674 hpux9*)
c45550e5
AK
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'
5c706339 5677 else
c45550e5 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'
5c706339 5679 fi
c45550e5 5680 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5c706339
AK
5681 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5682 _LT_TAGVAR(hardcode_direct, $1)=yes
b9668ba4 5683
5c706339
AK
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
c45550e5 5687 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5c706339 5688 ;;
b9668ba4 5689
5c706339 5690 hpux10*)
c45550e5
AK
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'
5c706339
AK
5693 else
5694 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5695 fi
c45550e5
AK
5696 if test no = "$with_gnu_ld"; then
5697 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5c706339
AK
5698 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5699 _LT_TAGVAR(hardcode_direct, $1)=yes
5700 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
c45550e5 5701 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5c706339
AK
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 ;;
b9668ba4 5707
5c706339 5708 hpux11*)
c45550e5 5709 if test yes,no = "$GCC,$with_gnu_ld"; then
5c706339
AK
5710 case $host_cpu in
5711 hppa*64*)
c45550e5 5712 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5713 ;;
5714 ia64*)
c45550e5 5715 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5716 ;;
5717 *)
c45550e5 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'
5c706339
AK
5719 ;;
5720 esac
5721 else
5722 case $host_cpu in
5723 hppa*64*)
c45550e5 5724 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5725 ;;
5726 ia64*)
c45550e5 5727 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5728 ;;
5729 *)
059850b5
AK
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],
c45550e5 5735 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
059850b5 5736 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
c45550e5 5737 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5c706339
AK
5738 ;;
5739 esac
5740 fi
c45550e5
AK
5741 if test no = "$with_gnu_ld"; then
5742 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5c706339 5743 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
b9668ba4 5744
5c706339
AK
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
c45550e5 5753 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
b9668ba4 5754
5c706339
AK
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 ;;
b9668ba4 5762
5c706339 5763 irix5* | irix6* | nonstopux*)
c45550e5
AK
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'
5c706339
AK
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.
059850b5
AK
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],
c45550e5
AK
5772 [save_LDFLAGS=$LDFLAGS
5773 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
059850b5
AK
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])
c45550e5
AK
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'
059850b5 5789 fi
5c706339 5790 else
c45550e5
AK
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'
5c706339
AK
5793 fi
5794 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
c45550e5 5795 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5c706339
AK
5796 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5797 _LT_TAGVAR(inherit_rpath, $1)=yes
5798 _LT_TAGVAR(link_all_deplibs, $1)=yes
5799 ;;
b9668ba4 5800
c45550e5
AK
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
5811 netbsd*)
5c706339
AK
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 ;;
b9668ba4 5821
5c706339
AK
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
c45550e5 5825 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5c706339
AK
5826 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5827 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5828 ;;
b9668ba4 5829
5c706339
AK
5830 *nto* | *qnx*)
5831 ;;
b9668ba4 5832
c45550e5 5833 openbsd* | bitrig*)
5c706339
AK
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
c45550e5 5838 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5c706339 5839 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
c45550e5
AK
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'
5c706339 5843 else
c45550e5
AK
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'
5c706339
AK
5846 fi
5847 else
5848 _LT_TAGVAR(ld_shlibs, $1)=no
5849 fi
5850 ;;
b9668ba4 5851
5c706339
AK
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
c45550e5
AK
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
5c706339 5878 ;;
b9668ba4 5879
5c706339 5880 osf3*)
c45550e5
AK
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'
5c706339
AK
5884 else
5885 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
c45550e5 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'
5c706339
AK
5887 fi
5888 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
c45550e5 5889 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5c706339
AK
5890 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5891 ;;
b9668ba4 5892
5c706339 5893 osf4* | osf5*) # as osf3* with the addition of -msym flag
c45550e5
AK
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'
5c706339
AK
5898 else
5899 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
c45550e5 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'
5c706339 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~
c45550e5 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'
b9668ba4 5903
5c706339
AK
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 ;;
b9668ba4 5910
5c706339
AK
5911 solaris*)
5912 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
c45550e5
AK
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'
5c706339 5916 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
c45550e5 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'
5c706339
AK
5918 else
5919 case `$CC -V 2>&1` in
5920 *"Compilers 5.0"*)
5921 wlarc=''
c45550e5 5922 _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
5c706339 5923 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
c45550e5 5924 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5c706339
AK
5925 ;;
5926 *)
c45550e5
AK
5927 wlarc='$wl'
5928 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5c706339 5929 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
c45550e5 5930 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5c706339
AK
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,
c45550e5 5940 # but understands '-z linker_flag'. GCC discards it without '$wl',
5c706339
AK
5941 # but is careful enough not to reorder.
5942 # Supported since Solaris 2.6 (maybe 2.5.1?)
c45550e5
AK
5943 if test yes = "$GCC"; then
5944 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5c706339
AK
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 ;;
b9668ba4 5952
5c706339 5953 sunos4*)
c45550e5 5954 if test sequent = "$host_vendor"; then
5c706339
AK
5955 # Use $CC to link under sequent, because it throws in some extra .o
5956 # files that make .init and .fini sections work.
c45550e5 5957 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
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 ;;
b9668ba4 5966
5c706339
AK
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 ;;
b9668ba4 5988
5c706339
AK
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 ;;
b9668ba4 5994
5c706339
AK
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 ;;
b9668ba4 6004
5c706339 6005 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
c45550e5 6006 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
5c706339
AK
6007 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6008 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6009 runpath_var='LD_RUN_PATH'
b9668ba4 6010
c45550e5
AK
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'
5c706339 6014 else
c45550e5
AK
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'
5c706339
AK
6017 fi
6018 ;;
b9668ba4 6019
5c706339 6020 sysv5* | sco3.2v5* | sco5v6*)
c45550e5 6021 # Note: We CANNOT use -z defs as we might desire, because we do not
5c706339
AK
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.
c45550e5
AK
6027 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6028 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
5c706339
AK
6029 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6030 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
c45550e5 6031 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
5c706339
AK
6032 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6033 _LT_TAGVAR(link_all_deplibs, $1)=yes
c45550e5 6034 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
5c706339 6035 runpath_var='LD_RUN_PATH'
b9668ba4 6036
c45550e5
AK
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'
5c706339 6040 else
c45550e5
AK
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'
5c706339
AK
6043 fi
6044 ;;
b9668ba4 6045
5c706339
AK
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 ;;
b9668ba4 6051
5c706339
AK
6052 *)
6053 _LT_TAGVAR(ld_shlibs, $1)=no
6054 ;;
6055 esac
b9668ba4 6056
c45550e5 6057 if test sni = "$host_vendor"; then
5c706339
AK
6058 case $host in
6059 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
c45550e5 6060 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
5c706339
AK
6061 ;;
6062 esac
6063 fi
6064 fi
6065])
6066AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
c45550e5 6067test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
b9668ba4 6068
5c706339 6069_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
b9668ba4 6070
5c706339
AK
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])
b9668ba4 6075
5c706339
AK
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
b9668ba4 6083
c45550e5 6084 if test yes,yes = "$GCC,$enable_shared"; then
5c706339
AK
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.
059850b5
AK
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)
5c706339
AK
6125 ;;
6126 esac
6127 fi
6128 ;;
6129esac
b9668ba4 6130
5c706339
AK
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])
5c706339
AK
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],
c45550e5 6164 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
5c706339
AK
6165 DIR into the resulting binary])
6166_LT_TAGDECL([], [hardcode_direct_absolute], [0],
c45550e5 6167 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
5c706339 6168 DIR into the resulting binary and the resulting library dependency is
c45550e5 6169 "absolute", i.e impossible to change by setting $shlibpath_var if the
5c706339
AK
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])
5c706339
AK
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])
059850b5
AK
6196_LT_TAGDECL([], [postlink_cmds], [2],
6197 [Commands necessary for finishing linking programs])
5c706339
AK
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
c45550e5 6210# the compiler configuration to 'libtool'.
5c706339
AK
6211m4_defun([_LT_LANG_C_CONFIG],
6212[m4_require([_LT_DECL_EGREP])dnl
c45550e5 6213lt_save_CC=$CC
5c706339 6214AC_LANG_PUSH(C)
b9668ba4 6215
5c706339
AK
6216# Source file extension for C test sources.
6217ac_ext=c
b9668ba4 6218
5c706339
AK
6219# Object file extension for compiled C test sources.
6220objext=o
6221_LT_TAGVAR(objext, $1)=$objext
b9668ba4 6222
5c706339
AK
6223# Code to be used in simple compile tests
6224lt_simple_compile_test_code="int some_variable = 0;"
b9668ba4 6225
5c706339
AK
6226# Code to be used in simple link tests
6227lt_simple_link_test_code='int main(){return(0);}'
b9668ba4 6228
5c706339
AK
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
b9668ba4 6233
5c706339
AK
6234# save warnings/boilerplate of simple test code
6235_LT_COMPILER_BOILERPLATE
6236_LT_LINKER_BOILERPLATE
b9668ba4 6237
5c706339
AK
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
c45550e5 6249 # Report what library types will actually be built
5c706339
AK
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])
c45550e5 6254 test no = "$can_build_shared" && enable_shared=no
5c706339
AK
6255
6256 # On AIX, shared libraries and static libraries use the same namespace, and
6257 # are all built from PIC.
b9668ba4
AK
6258 case $host_os in
6259 aix3*)
c45550e5 6260 test yes = "$enable_shared" && enable_static=no
5c706339
AK
6261 if test -n "$RANLIB"; then
6262 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6263 postinstall_cmds='$RANLIB $lib'
6264 fi
6265 ;;
b9668ba4 6266
5c706339 6267 aix[[4-9]]*)
c45550e5
AK
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
5c706339 6274 fi
b9668ba4
AK
6275 ;;
6276 esac
5c706339 6277 AC_MSG_RESULT([$enable_shared])
b9668ba4 6278
5c706339
AK
6279 AC_MSG_CHECKING([whether to build static libraries])
6280 # Make sure either enable_shared or enable_static is yes.
c45550e5 6281 test yes = "$enable_shared" || enable_static=yes
5c706339 6282 AC_MSG_RESULT([$enable_static])
b9668ba4 6283
5c706339 6284 _LT_CONFIG($1)
b9668ba4 6285fi
5c706339 6286AC_LANG_POP
c45550e5 6287CC=$lt_save_CC
5c706339 6288])# _LT_LANG_C_CONFIG
b9668ba4
AK
6289
6290
5c706339
AK
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
c45550e5 6295# the compiler configuration to 'libtool'.
5c706339 6296m4_defun([_LT_LANG_CXX_CONFIG],
059850b5 6297[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5c706339 6298m4_require([_LT_DECL_EGREP])dnl
059850b5 6299m4_require([_LT_PATH_MANIFEST_TOOL])dnl
c45550e5
AK
6300if test -n "$CXX" && ( test no != "$CXX" &&
6301 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6302 (test g++ != "$CXX"))); then
059850b5
AK
6303 AC_PROG_CXXCPP
6304else
6305 _lt_caught_CXX_error=yes
6306fi
5c706339
AK
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)=
5c706339
AK
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
059850b5
AK
6327_LT_TAGVAR(reload_flag, $1)=$reload_flag
6328_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
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
b9668ba4 6332
5c706339
AK
6333# Source file extension for C++ test sources.
6334ac_ext=cpp
6335
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.
c45550e5 6344if test yes != "$_lt_caught_CXX_error"; then
5c706339
AK
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
059850b5 6360 lt_save_CFLAGS=$CFLAGS
5c706339
AK
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
b9668ba4 6368 else
5c706339 6369 $as_unset lt_cv_prog_gnu_ld
b9668ba4 6370 fi
5c706339
AK
6371 if test -n "${lt_cv_path_LDCXX+set}"; then
6372 lt_cv_path_LD=$lt_cv_path_LDCXX
b9668ba4 6373 else
5c706339 6374 $as_unset lt_cv_path_LD
b9668ba4 6375 fi
5c706339
AK
6376 test -z "${LDCXX+set}" || LD=$LDCXX
6377 CC=${CXX-"c++"}
059850b5 6378 CFLAGS=$CXXFLAGS
5c706339
AK
6379 compiler=$CC
6380 _LT_TAGVAR(compiler, $1)=$CC
6381 _LT_CC_BASENAME([$compiler])
b9668ba4 6382
5c706339
AK
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
c45550e5 6386 if test yes = "$GXX"; then
5c706339
AK
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
b9668ba4 6391
c45550e5 6392 if test yes = "$GXX"; then
5c706339 6393 # Set up default GNU C++ configuration
b9668ba4 6394
5c706339 6395 LT_PATH_LD
b9668ba4 6396
5c706339
AK
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.
c45550e5
AK
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'
5c706339 6402
c45550e5
AK
6403 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6404 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5c706339
AK
6405
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)
c45550e5 6409 wlarc='$wl'
5c706339
AK
6410
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
c45550e5 6414 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5c706339
AK
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'
b9668ba4 6428 fi
5c706339
AK
6429
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.
059850b5 6433 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
6434
6435 else
6436 GXX=no
6437 with_gnu_ld=no
6438 wlarc=
6439 fi
6440
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
b9668ba4 6444 case $host_os in
5c706339
AK
6445 aix3*)
6446 # FIXME: insert proper C++ library support
6447 _LT_TAGVAR(ld_shlibs, $1)=no
6448 ;;
6449 aix[[4-9]]*)
c45550e5 6450 if test ia64 = "$host_cpu"; then
5c706339
AK
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'
c45550e5 6455 no_entry_flag=
5c706339
AK
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
c45550e5
AK
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
5c706339
AK
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
c45550e5
AK
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
5c706339
AK
6490 ;;
6491 esac
6492
6493 exp_sym_flag='-bexport'
6494 no_entry_flag='-bnoentry'
6495 fi
6496
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
c45550e5
AK
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
5c706339 6517
c45550e5 6518 if test yes = "$GXX"; then
5c706339
AK
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+
c45550e5 6522 collect2name=`$CC -print-prog-name=collect2`
5c706339
AK
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'
c45550e5
AK
6540 if test yes = "$aix_use_runtimelinking"; then
6541 shared_flag=$shared_flag' $wl-G'
5c706339 6542 fi
c45550e5
AK
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'
5c706339
AK
6548 else
6549 # not using gcc
c45550e5 6550 if test ia64 = "$host_cpu"; then
5c706339
AK
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
c45550e5
AK
6555 if test yes = "$aix_use_runtimelinking"; then
6556 shared_flag='$wl-G'
5c706339 6557 else
c45550e5 6558 shared_flag='$wl-bM:SRE'
5c706339 6559 fi
c45550e5
AK
6560 shared_flag_aix='$wl-bM:SRE'
6561 shared_flag_svr4='$wl-G'
5c706339
AK
6562 fi
6563 fi
6564
c45550e5 6565 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5c706339
AK
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
c45550e5 6570 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5c706339
AK
6571 # Warning - without using the other runtime loading flags (-brtl),
6572 # -berok will link without error, but may produce a broken library.
c45550e5
AK
6573 # The "-G" linker flag allows undefined symbols.
6574 _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
5c706339
AK
6575 # Determine the default libpath from the value encoded in an empty
6576 # executable.
059850b5 6577 _LT_SYS_MODULE_PATH_AIX([$1])
c45550e5 6578 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5c706339 6579
c45550e5 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
5c706339 6581 else
c45550e5
AK
6582 if test ia64 = "$host_cpu"; then
6583 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5c706339 6584 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
c45550e5 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"
5c706339
AK
6586 else
6587 # Determine the default libpath from the value encoded in an
6588 # empty executable.
059850b5 6589 _LT_SYS_MODULE_PATH_AIX([$1])
c45550e5 6590 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5c706339
AK
6591 # Warning - without using the other run time loading flags,
6592 # -berok will link without error, but may produce a broken library.
c45550e5
AK
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
059850b5 6596 # We only use this code for GNU lds that support --whole-archive.
c45550e5 6597 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
059850b5
AK
6598 else
6599 # Exported symbols can be pulled into shared objects from archives
6600 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6601 fi
5c706339 6602 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
c45550e5
AK
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'
5c706339
AK
6618 fi
6619 fi
6620 ;;
6621
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
c45550e5 6627 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
b9668ba4 6628 else
5c706339 6629 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
6630 fi
6631 ;;
5c706339 6632
b9668ba4 6633 chorus*)
5c706339
AK
6634 case $cc_basename in
6635 *)
6636 # FIXME: insert proper C++ library support
6637 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6638 ;;
5c706339
AK
6639 esac
6640 ;;
6641
47dc80f6 6642 cygwin* | mingw* | pw32* | cegcc*)
059850b5
AK
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.
c45550e5 6655 shrext_cmds=.dll
059850b5 6656 # FIXME: Setting linknames here is a bad hack.
c45550e5
AK
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='
059850b5
AK
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@"~
c45550e5
AK
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'
059850b5
AK
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'
c45550e5 6691 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
059850b5
AK
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
c45550e5
AK
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'
059850b5
AK
6707 else
6708 _LT_TAGVAR(ld_shlibs, $1)=no
6709 fi
6710 ;;
6711 esac
6712 ;;
5c706339
AK
6713 darwin* | rhapsody*)
6714 _LT_DARWIN_LINKER_FEATURES($1)
b9668ba4 6715 ;;
5c706339 6716
c45550e5
AK
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
b9668ba4 6745 dgux*)
5c706339
AK
6746 case $cc_basename in
6747 ec++*)
6748 # FIXME: insert proper C++ library support
6749 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6750 ;;
5c706339 6751 ghcx*)
b9668ba4 6752 # Green Hills C++ Compiler
5c706339
AK
6753 # FIXME: insert proper C++ library support
6754 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6755 ;;
5c706339
AK
6756 *)
6757 # FIXME: insert proper C++ library support
6758 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6759 ;;
5c706339
AK
6760 esac
6761 ;;
6762
059850b5 6763 freebsd2.*)
5c706339
AK
6764 # C++ shared libraries reported to be fairly broken before
6765 # switch to ELF
6766 _LT_TAGVAR(ld_shlibs, $1)=no
6767 ;;
6768
6769 freebsd-elf*)
6770 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6771 ;;
6772
b9668ba4 6773 freebsd* | dragonfly*)
5c706339
AK
6774 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6775 # conventions
6776 _LT_TAGVAR(ld_shlibs, $1)=yes
6777 ;;
6778
059850b5 6779 haiku*)
c45550e5 6780 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
059850b5
AK
6781 _LT_TAGVAR(link_all_deplibs, $1)=yes
6782 ;;
6783
5c706339 6784 hpux9*)
c45550e5 6785 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5c706339 6786 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
c45550e5 6787 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5c706339
AK
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*)
c45550e5 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'
5c706339
AK
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.
c45550e5 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"'
5c706339
AK
6809 ;;
6810 *)
c45550e5
AK
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'
5c706339
AK
6813 else
6814 # FIXME: insert proper C++ library support
6815 _LT_TAGVAR(ld_shlibs, $1)=no
6816 fi
6817 ;;
6818 esac
6819 ;;
6820
6821 hpux10*|hpux11*)
c45550e5
AK
6822 if test no = "$with_gnu_ld"; then
6823 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5c706339
AK
6824 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6825
6826 case $host_cpu in
6827 hppa*64*|ia64*)
6828 ;;
6829 *)
c45550e5 6830 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5c706339
AK
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
b9668ba4 6852 ;;
5c706339 6853 aCC*)
b9668ba4 6854 case $host_cpu in
5c706339 6855 hppa*64*)
c45550e5 6856 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5c706339
AK
6857 ;;
6858 ia64*)
c45550e5 6859 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5c706339
AK
6860 ;;
6861 *)
c45550e5 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'
5c706339 6863 ;;
b9668ba4 6864 esac
5c706339
AK
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.
c45550e5 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"'
b9668ba4 6874 ;;
5c706339 6875 *)
c45550e5
AK
6876 if test yes = "$GXX"; then
6877 if test no = "$with_gnu_ld"; then
5c706339
AK
6878 case $host_cpu in
6879 hppa*64*)
c45550e5 6880 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5c706339
AK
6881 ;;
6882 ia64*)
c45550e5 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'
5c706339
AK
6884 ;;
6885 *)
c45550e5 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'
5c706339
AK
6887 ;;
6888 esac
6889 fi
6890 else
6891 # FIXME: insert proper C++ library support
6892 _LT_TAGVAR(ld_shlibs, $1)=no
6893 fi
b9668ba4 6894 ;;
5c706339
AK
6895 esac
6896 ;;
6897
6898 interix[[3-9]]*)
6899 _LT_TAGVAR(hardcode_direct, $1)=no
6900 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
c45550e5
AK
6901 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6902 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5c706339
AK
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.
c45550e5
AK
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'
b9668ba4 6911 ;;
5c706339
AK
6912 irix5* | irix6*)
6913 case $cc_basename in
6914 CC*)
6915 # SGI C++
c45550e5 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'
5c706339
AK
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'
b9668ba4 6923 ;;
5c706339 6924 *)
c45550e5
AK
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'
5c706339 6928 else
c45550e5 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'
5c706339
AK
6930 fi
6931 fi
6932 _LT_TAGVAR(link_all_deplibs, $1)=yes
b9668ba4 6933 ;;
5c706339 6934 esac
c45550e5 6935 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5c706339
AK
6936 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6937 _LT_TAGVAR(inherit_rpath, $1)=yes
6938 ;;
6939
0044e680 6940 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
5c706339
AK
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.
c45550e5
AK
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'
5c706339
AK
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.
c45550e5 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"'
5c706339 6959
c45550e5
AK
6960 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6961 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5c706339
AK
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'
b9668ba4 6966 ;;
5c706339 6967 icpc* | ecpc* )
b9668ba4 6968 # Intel C++
5c706339
AK
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."*)
c45550e5
AK
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'
5c706339
AK
6977 ;;
6978 *) # Version 8.0 or newer
6979 tmp_idyn=
6980 case $host_cpu in
6981 ia64*) tmp_idyn=' -i_dynamic';;
6982 esac
c45550e5
AK
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'
5c706339
AK
6985 ;;
6986 esac
6987 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
c45550e5
AK
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'
b9668ba4 6991 ;;
5c706339
AK
6992 pgCC* | pgcpp*)
6993 # Portland Group C++ compiler
6994 case `$CC -V` in
059850b5 6995 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
5c706339 6996 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
c45550e5
AK
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`"'
5c706339 7000 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
c45550e5
AK
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'
5c706339 7005 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
c45550e5
AK
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'
5c706339 7009 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
c45550e5
AK
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'
5c706339 7013 ;;
059850b5 7014 *) # Version 6 and above use weak symbols
c45550e5
AK
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'
5c706339
AK
7017 ;;
7018 esac
7019
c45550e5
AK
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'
5c706339 7023 ;;
b9668ba4
AK
7024 cxx*)
7025 # Compaq C++
c45550e5
AK
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'
5c706339
AK
7028
7029 runpath_var=LD_RUN_PATH
7030 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7031 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7032
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.
c45550e5 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'
5c706339 7042 ;;
059850b5 7043 xl* | mpixl* | bgxl*)
5c706339 7044 # IBM XL 8.0 on PPC, with GNU ld
c45550e5
AK
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
5c706339 7049 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
c45550e5
AK
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'
5c706339 7053 fi
b9668ba4
AK
7054 ;;
7055 *)
5c706339
AK
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'
c45550e5
AK
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'
5c706339 7062 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
c45550e5 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'
5c706339
AK
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.
059850b5 7069 output_verbose_link_cmd='func_echo_all'
5c706339
AK
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
b9668ba4
AK
7078 ;;
7079 esac
7080 ;;
5c706339 7081
b9668ba4 7082 lynxos*)
5c706339
AK
7083 # FIXME: insert proper C++ library support
7084 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 7085 ;;
5c706339 7086
b9668ba4 7087 m88k*)
5c706339
AK
7088 # FIXME: insert proper C++ library support
7089 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 7090 ;;
5c706339 7091
b9668ba4 7092 mvs*)
5c706339
AK
7093 case $cc_basename in
7094 cxx*)
7095 # FIXME: insert proper C++ library support
7096 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
7097 ;;
7098 *)
5c706339
AK
7099 # FIXME: insert proper C++ library support
7100 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
7101 ;;
7102 esac
7103 ;;
5c706339
AK
7104
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 ;;
7116
7117 *nto* | *qnx*)
7118 _LT_TAGVAR(ld_shlibs, $1)=yes
7119 ;;
7120
c45550e5 7121 openbsd* | bitrig*)
5c706339
AK
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'
c45550e5
AK
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'
5c706339 7132 fi
059850b5 7133 output_verbose_link_cmd=func_echo_all
5c706339
AK
7134 else
7135 _LT_TAGVAR(ld_shlibs, $1)=no
7136 fi
b9668ba4 7137 ;;
5c706339 7138
b9668ba4 7139 osf3* | osf4* | osf5*)
5c706339
AK
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.
c45550e5 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'
5c706339 7148
c45550e5 7149 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5c706339
AK
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
b9668ba4 7158 ;;
5c706339 7159 RCC*)
b9668ba4 7160 # Rational C++ 2.4.1
5c706339
AK
7161 # FIXME: insert proper C++ library support
7162 _LT_TAGVAR(ld_shlibs, $1)=no
7163 ;;
7164 cxx*)
7165 case $host in
7166 osf3*)
c45550e5
AK
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'
5c706339
AK
7170 ;;
7171 *)
7172 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
c45550e5 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'
5c706339 7174 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
c45550e5
AK
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'
5c706339
AK
7178 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7179 ;;
7180 esac
7181
7182 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7183
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.
c45550e5 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"'
5c706339
AK
7193 ;;
7194 *)
c45550e5
AK
7195 if test yes,no = "$GXX,$with_gnu_ld"; then
7196 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5c706339
AK
7197 case $host in
7198 osf3*)
c45550e5 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'
5c706339
AK
7200 ;;
7201 *)
c45550e5 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'
5c706339
AK
7203 ;;
7204 esac
7205
c45550e5 7206 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5c706339
AK
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.
059850b5 7212 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
7213
7214 else
7215 # FIXME: insert proper C++ library support
7216 _LT_TAGVAR(ld_shlibs, $1)=no
7217 fi
7218 ;;
7219 esac
7220 ;;
7221
7222 psos*)
7223 # FIXME: insert proper C++ library support
7224 _LT_TAGVAR(ld_shlibs, $1)=no
7225 ;;
7226
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
b9668ba4 7233 ;;
5c706339
AK
7234 lcc*)
7235 # Lucid
7236 # FIXME: insert proper C++ library support
7237 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 7238 ;;
5c706339
AK
7239 *)
7240 # FIXME: insert proper C++ library support
7241 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 7242 ;;
5c706339
AK
7243 esac
7244 ;;
7245
b9668ba4 7246 solaris*)
5c706339 7247 case $cc_basename in
059850b5 7248 CC* | sunCC*)
b9668ba4 7249 # Sun C++ 4.2, 5.x and Centerline C++
5c706339
AK
7250 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7251 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
c45550e5 7252 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5c706339 7253 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
c45550e5 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'
5c706339
AK
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,
c45550e5 7262 # but understands '-z linker_flag'.
5c706339
AK
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
7268
059850b5 7269 output_verbose_link_cmd='func_echo_all'
5c706339
AK
7270
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'
b9668ba4 7276 ;;
5c706339 7277 gcx*)
b9668ba4 7278 # Green Hills C++ Compiler
c45550e5 7279 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
5c706339
AK
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'
b9668ba4 7283 ;;
5c706339
AK
7284 *)
7285 # GNU C++ compiler with Solaris linker
c45550e5
AK
7286 if test yes,no = "$GXX,$with_gnu_ld"; then
7287 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
5c706339 7288 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
c45550e5 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'
5c706339 7290 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
c45550e5 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'
5c706339
AK
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.
059850b5 7296 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339 7297 else
c45550e5 7298 # g++ 2.7 appears to require '-G' NOT '-shared' on this
5c706339 7299 # platform.
c45550e5 7300 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
5c706339 7301 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
c45550e5 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'
5c706339
AK
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.
059850b5 7307 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
7308 fi
7309
c45550e5 7310 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
5c706339
AK
7311 case $host_os in
7312 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7313 *)
c45550e5 7314 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5c706339
AK
7315 ;;
7316 esac
7317 fi
b9668ba4 7318 ;;
5c706339
AK
7319 esac
7320 ;;
7321
7322 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
c45550e5 7323 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
5c706339
AK
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*)
c45550e5
AK
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'
5c706339
AK
7332 ;;
7333 *)
c45550e5
AK
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'
5c706339
AK
7336 ;;
7337 esac
7338 ;;
7339
7340 sysv5* | sco3.2v5* | sco5v6*)
c45550e5 7341 # Note: We CANNOT use -z defs as we might desire, because we do not
5c706339
AK
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.
c45550e5
AK
7347 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7348 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
5c706339
AK
7349 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7350 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
c45550e5 7351 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
5c706339
AK
7352 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7353 _LT_TAGVAR(link_all_deplibs, $1)=yes
c45550e5 7354 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
5c706339
AK
7355 runpath_var='LD_RUN_PATH'
7356
b9668ba4 7357 case $cc_basename in
5c706339 7358 CC*)
c45550e5
AK
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'
059850b5 7361 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
c45550e5 7362 '"$_LT_TAGVAR(old_archive_cmds, $1)"
059850b5 7363 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
c45550e5 7364 '"$_LT_TAGVAR(reload_cmds, $1)"
b9668ba4
AK
7365 ;;
7366 *)
c45550e5
AK
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'
b9668ba4
AK
7369 ;;
7370 esac
5c706339
AK
7371 ;;
7372
b9668ba4 7373 tandem*)
5c706339
AK
7374 case $cc_basename in
7375 NCC*)
b9668ba4 7376 # NonStop-UX NCC 3.20
5c706339
AK
7377 # FIXME: insert proper C++ library support
7378 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 7379 ;;
5c706339
AK
7380 *)
7381 # FIXME: insert proper C++ library support
7382 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 7383 ;;
5c706339
AK
7384 esac
7385 ;;
7386
b9668ba4 7387 vxworks*)
5c706339
AK
7388 # FIXME: insert proper C++ library support
7389 _LT_TAGVAR(ld_shlibs, $1)=no
7390 ;;
7391
b9668ba4 7392 *)
5c706339
AK
7393 # FIXME: insert proper C++ library support
7394 _LT_TAGVAR(ld_shlibs, $1)=no
7395 ;;
b9668ba4 7396 esac
5c706339
AK
7397
7398 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
c45550e5 7399 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
5c706339 7400
c45550e5
AK
7401 _LT_TAGVAR(GCC, $1)=$GXX
7402 _LT_TAGVAR(LD, $1)=$LD
5c706339
AK
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
059850b5 7420 CFLAGS=$lt_save_CFLAGS
5c706339
AK
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
c45550e5 7429fi # test yes != "$_lt_caught_CXX_error"
5c706339
AK
7430
7431AC_LANG_POP
7432])# _LT_LANG_CXX_CONFIG
7433
7434
059850b5
AK
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{
c45550e5
AK
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\$%%"`;;
059850b5
AK
7454 esac
7455} # func_stripname_cnf
7456])# _LT_FUNC_STRIPNAME_CNF
7457
c45550e5 7458
5c706339
AK
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
059850b5 7467AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
5c706339
AK
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
059850b5
AK
7517], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7518package foo
7519func foo() {
7520}
7521_LT_EOF
5c706339 7522])
059850b5
AK
7523
7524_lt_libdeps_save_CFLAGS=$CFLAGS
7525case "$CC $CFLAGS " in #(
7526*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7527*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7528*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7529esac
7530
5c706339
AK
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
c45550e5 7542 case $prev$p in
5c706339
AK
7543
7544 -L* | -R* | -l*)
7545 # Some compilers place space between "-{L,R}" and the path.
7546 # Remove the space.
c45550e5
AK
7547 if test x-L = "$p" ||
7548 test x-R = "$p"; then
5c706339
AK
7549 prev=$p
7550 continue
5c706339
AK
7551 fi
7552
059850b5
AK
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
c45550e5
AK
7564 if test no = "$pre_test_object_deps_done"; then
7565 case $prev in
059850b5 7566 -L | -R)
5c706339
AK
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
c45550e5 7571 _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
5c706339 7572 else
c45550e5 7573 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
5c706339
AK
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
c45550e5 7581 _LT_TAGVAR(postdeps, $1)=$prev$p
5c706339 7582 else
c45550e5 7583 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
5c706339
AK
7584 fi
7585 fi
059850b5 7586 prev=
5c706339
AK
7587 ;;
7588
059850b5 7589 *.lto.$objext) ;; # Ignore GCC LTO objects
5c706339
AK
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
c45550e5 7598 if test no = "$pre_test_object_deps_done"; then
5c706339 7599 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
c45550e5 7600 _LT_TAGVAR(predep_objects, $1)=$p
5c706339
AK
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
c45550e5 7606 _LT_TAGVAR(postdep_objects, $1)=$p
5c706339
AK
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
059850b5 7625CFLAGS=$_lt_libdeps_save_CFLAGS
5c706339
AK
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 ;;
5c706339
AK
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
c45550e5 7645 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
5c706339
AK
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
5c706339
AK
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
c45550e5 7665# to write the compiler configuration to 'libtool'.
5c706339 7666m4_defun([_LT_LANG_F77_CONFIG],
059850b5 7667[AC_LANG_PUSH(Fortran 77)
c45550e5 7668if test -z "$F77" || test no = "$F77"; then
059850b5
AK
7669 _lt_disable_F77=yes
7670fi
5c706339
AK
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)=
5c706339
AK
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
059850b5
AK
7688_LT_TAGVAR(reload_flag, $1)=$reload_flag
7689_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
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.
c45550e5 7705if test yes != "$_lt_disable_F77"; then
5c706339
AK
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
7725
7726 # Allow CC to be a program name with arguments.
c45550e5 7727 lt_save_CC=$CC
5c706339 7728 lt_save_GCC=$GCC
059850b5 7729 lt_save_CFLAGS=$CFLAGS
5c706339 7730 CC=${F77-"f77"}
059850b5 7731 CFLAGS=$FFLAGS
5c706339
AK
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])
c45550e5 7741 test no = "$can_build_shared" && enable_shared=no
5c706339
AK
7742
7743 # On AIX, shared libraries and static libraries use the same namespace, and
7744 # are all built from PIC.
7745 case $host_os in
7746 aix3*)
c45550e5 7747 test yes = "$enable_shared" && enable_static=no
5c706339
AK
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]]*)
c45550e5
AK
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
5c706339
AK
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.
c45550e5 7767 test yes = "$enable_shared" || enable_static=yes
5c706339
AK
7768 AC_MSG_RESULT([$enable_static])
7769
c45550e5
AK
7770 _LT_TAGVAR(GCC, $1)=$G77
7771 _LT_TAGVAR(LD, $1)=$LD
5c706339
AK
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
c45550e5
AK
7788 CC=$lt_save_CC
7789 CFLAGS=$lt_save_CFLAGS
7790fi # test yes != "$_lt_disable_F77"
5c706339
AK
7791
7792AC_LANG_POP
7793])# _LT_LANG_F77_CONFIG
7794
7795
5c706339
AK
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
c45550e5 7800# to write the compiler configuration to 'libtool'.
5c706339 7801m4_defun([_LT_LANG_FC_CONFIG],
059850b5
AK
7802[AC_LANG_PUSH(Fortran)
7803
c45550e5 7804if test -z "$FC" || test no = "$FC"; then
059850b5
AK
7805 _lt_disable_FC=yes
7806fi
5c706339
AK
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)=
5c706339
AK
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
059850b5
AK
7824_LT_TAGVAR(reload_flag, $1)=$reload_flag
7825_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
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.
c45550e5 7841if test yes != "$_lt_disable_FC"; then
5c706339
AK
7842 # Code to be used in simple compile tests
7843 lt_simple_compile_test_code="\
7844 subroutine t
7845 return
7846 end
7847"
b9668ba4 7848
5c706339
AK
7849 # Code to be used in simple link tests
7850 lt_simple_link_test_code="\
7851 program t
7852 end
7853"
b9668ba4 7854
5c706339
AK
7855 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7856 _LT_TAG_COMPILER
b9668ba4 7857
5c706339
AK
7858 # save warnings/boilerplate of simple test code
7859 _LT_COMPILER_BOILERPLATE
7860 _LT_LINKER_BOILERPLATE
b9668ba4 7861
5c706339 7862 # Allow CC to be a program name with arguments.
c45550e5 7863 lt_save_CC=$CC
5c706339 7864 lt_save_GCC=$GCC
059850b5 7865 lt_save_CFLAGS=$CFLAGS
5c706339 7866 CC=${FC-"f95"}
059850b5 7867 CFLAGS=$FCFLAGS
5c706339
AK
7868 compiler=$CC
7869 GCC=$ac_cv_fc_compiler_gnu
b9668ba4 7870
5c706339
AK
7871 _LT_TAGVAR(compiler, $1)=$CC
7872 _LT_CC_BASENAME([$compiler])
b9668ba4 7873
5c706339
AK
7874 if test -n "$compiler"; then
7875 AC_MSG_CHECKING([if libtool supports shared libraries])
7876 AC_MSG_RESULT([$can_build_shared])
b9668ba4 7877
5c706339 7878 AC_MSG_CHECKING([whether to build shared libraries])
c45550e5 7879 test no = "$can_build_shared" && enable_shared=no
5c706339
AK
7880
7881 # On AIX, shared libraries and static libraries use the same namespace, and
7882 # are all built from PIC.
b9668ba4 7883 case $host_os in
5c706339 7884 aix3*)
c45550e5 7885 test yes = "$enable_shared" && enable_static=no
5c706339
AK
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]]*)
c45550e5
AK
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
5c706339
AK
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.
c45550e5 7905 test yes = "$enable_shared" || enable_static=yes
5c706339
AK
7906 AC_MSG_RESULT([$enable_static])
7907
c45550e5
AK
7908 _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7909 _LT_TAGVAR(LD, $1)=$LD
5c706339
AK
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
059850b5
AK
7927 CC=$lt_save_CC
7928 CFLAGS=$lt_save_CFLAGS
c45550e5 7929fi # test yes != "$_lt_disable_FC"
b9668ba4 7930
5c706339
AK
7931AC_LANG_POP
7932])# _LT_LANG_FC_CONFIG
b9668ba4 7933
b9668ba4 7934
5c706339
AK
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
c45550e5 7939# to write the compiler configuration to 'libtool'.
5c706339
AK
7940m4_defun([_LT_LANG_GCJ_CONFIG],
7941[AC_REQUIRE([LT_PROG_GCJ])dnl
7942AC_LANG_SAVE
b9668ba4 7943
5c706339
AK
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.
059850b5
AK
7965lt_save_CC=$CC
7966lt_save_CFLAGS=$CFLAGS
5c706339
AK
7967lt_save_GCC=$GCC
7968GCC=yes
7969CC=${GCJ-"gcj"}
059850b5 7970CFLAGS=$GCJFLAGS
5c706339
AK
7971compiler=$CC
7972_LT_TAGVAR(compiler, $1)=$CC
c45550e5 7973_LT_TAGVAR(LD, $1)=$LD
5c706339
AK
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
059850b5
AK
7980_LT_TAGVAR(reload_flag, $1)=$reload_flag
7981_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
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
059850b5
AK
7997CC=$lt_save_CC
7998CFLAGS=$lt_save_CFLAGS
5c706339
AK
7999])# _LT_LANG_GCJ_CONFIG
8000
8001
059850b5
AK
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
c45550e5 8006# to write the compiler configuration to 'libtool'.
059850b5
AK
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
c45550e5 8040_LT_TAGVAR(LD, $1)=$LD
059850b5
AK
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
5c706339
AK
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
c45550e5 8073# to write the compiler configuration to 'libtool'.
5c706339
AK
8074m4_defun([_LT_LANG_RC_CONFIG],
8075[AC_REQUIRE([LT_PROG_RC])dnl
8076AC_LANG_SAVE
8077
8078# Source file extension for RC test sources.
8079ac_ext=rc
8080
8081# Object file extension for compiled RC test sources.
8082objext=o
8083_LT_TAGVAR(objext, $1)=$objext
8084
8085# Code to be used in simple compile tests
8086lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8087
8088# Code to be used in simple link tests
c45550e5 8089lt_simple_link_test_code=$lt_simple_compile_test_code
5c706339
AK
8090
8091# ltmain only uses $CC for tagged configurations so make sure $CC is set.
8092_LT_TAG_COMPILER
8093
8094# save warnings/boilerplate of simple test code
8095_LT_COMPILER_BOILERPLATE
8096_LT_LINKER_BOILERPLATE
8097
8098# Allow CC to be a program name with arguments.
c45550e5 8099lt_save_CC=$CC
059850b5 8100lt_save_CFLAGS=$CFLAGS
5c706339
AK
8101lt_save_GCC=$GCC
8102GCC=
8103CC=${RC-"windres"}
059850b5 8104CFLAGS=
5c706339
AK
8105compiler=$CC
8106_LT_TAGVAR(compiler, $1)=$CC
8107_LT_CC_BASENAME([$compiler])
8108_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8109
8110if test -n "$compiler"; then
8111 :
8112 _LT_CONFIG($1)
8113fi
8114
8115GCC=$lt_save_GCC
8116AC_LANG_RESTORE
059850b5
AK
8117CC=$lt_save_CC
8118CFLAGS=$lt_save_CFLAGS
5c706339
AK
8119])# _LT_LANG_RC_CONFIG
8120
8121
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,)
c45550e5 8128 test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
5c706339
AK
8129 AC_SUBST(GCJFLAGS)])])[]dnl
8130])
8131
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], [])
8136
8137
059850b5
AK
8138# LT_PROG_GO
8139# ----------
8140AC_DEFUN([LT_PROG_GO],
8141[AC_CHECK_TOOL(GOC, gccgo,)
8142])
8143
8144
5c706339
AK
8145# LT_PROG_RC
8146# ----------
8147AC_DEFUN([LT_PROG_RC],
8148[AC_CHECK_TOOL(RC, windres,)
8149])
8150
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], [])
8155
8156
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])
8171
8172
47dc80f6
AK
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])
8183
059850b5
AK
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])
47dc80f6 8193
5c706339
AK
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
8206
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
c45550e5 8237 test ! -f "$lt_ac_sed" && continue
5c706339
AK
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
8245 fi
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
c45550e5 8254 test 10 -lt "$lt_ac_count" && break
5c706339 8255 lt_ac_count=`expr $lt_ac_count + 1`
c45550e5 8256 if test "$lt_ac_count" -gt "$lt_ac_max"; then
5c706339
AK
8257 lt_ac_max=$lt_ac_count
8258 lt_cv_path_SED=$lt_ac_sed
8259 fi
8260 done
8261done
8262])
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],
c45550e5 8280[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
5c706339
AK
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
b9668ba4 8302
b9668ba4 8303
059850b5
AK
8304# _LT_PATH_CONVERSION_FUNCTIONS
8305# -----------------------------
c45550e5 8306# Determine what file name conversion functions should be used by
059850b5
AK
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
5c706339 8327 ;;
059850b5
AK
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
5c706339 8340 ;;
059850b5
AK
8341 * ) # unhandled hosts (and "normal" native builds)
8342 lt_cv_to_host_file_cmd=func_convert_file_noop
8343 ;;
8344esac
5c706339 8345])
059850b5
AK
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
8364])
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
b9668ba4 8370
5c706339
AK
8371# Helper functions for option handling. -*- Autoconf -*-
8372#
c45550e5
AK
8373# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8374# Foundation, Inc.
5c706339
AK
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.
b9668ba4 8380
c45550e5 8381# serial 8 ltoptions.m4
b9668ba4 8382
5c706339
AK
8383# This is to help aclocal find these macros, as it can't see m4_define.
8384AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
b9668ba4 8385
b9668ba4 8386
5c706339
AK
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_]], [_])])
b9668ba4 8391
b9668ba4 8392
5c706339
AK
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]),
c45550e5 8402 [m4_warning([Unknown $1 option '$2'])])[]dnl
5c706339
AK
8403])
8404
8405
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])
8424
8425
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
c45550e5 8448 dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
5c706339
AK
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],
c45550e5
AK
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])])
5c706339
AK
8457 ])
8458])# _LT_SET_OPTIONS
8459
b9668ba4 8460
b9668ba4 8461
5c706339
AK
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_]], [_])])
b9668ba4 8466
b9668ba4 8467
5c706339
AK
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
b9668ba4 8473
b9668ba4 8474
5c706339
AK
8475# dlopen
8476# ------
8477LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8478])
b9668ba4 8479
5c706339
AK
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
c45550e5 8484put the 'dlopen' option into LT_INIT's first parameter.])
5c706339 8485])
b9668ba4 8486
5c706339
AK
8487dnl aclocal-1.4 backwards compatibility:
8488dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
b9668ba4 8489
b9668ba4 8490
5c706339
AK
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
b9668ba4 8496
5c706339 8497case $host in
059850b5 8498*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
5c706339
AK
8499 AC_CHECK_TOOL(AS, as, false)
8500 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8501 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8502 ;;
8503esac
b9668ba4 8504
5c706339 8505test -z "$AS" && AS=as
059850b5 8506_LT_DECL([], [AS], [1], [Assembler program])dnl
b9668ba4 8507
5c706339 8508test -z "$DLLTOOL" && DLLTOOL=dlltool
059850b5 8509_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
b9668ba4 8510
5c706339 8511test -z "$OBJDUMP" && OBJDUMP=objdump
059850b5 8512_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
5c706339 8513])# win32-dll
b9668ba4 8514
5c706339
AK
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
c45550e5 8520put the 'win32-dll' option into LT_INIT's first parameter.])
5c706339 8521])
b9668ba4 8522
5c706339
AK
8523dnl aclocal-1.4 backwards compatibility:
8524dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
b9668ba4 8525
b9668ba4 8526
5c706339
AK
8527# _LT_ENABLE_SHARED([DEFAULT])
8528# ----------------------------
c45550e5
AK
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'.
5c706339
AK
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.
c45550e5 8544 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
5c706339 8545 for pkg in $enableval; do
c45550e5 8546 IFS=$lt_save_ifs
5c706339
AK
8547 if test "X$pkg" = "X$p"; then
8548 enable_shared=yes
8549 fi
8550 done
c45550e5 8551 IFS=$lt_save_ifs
b9668ba4 8552 ;;
5c706339
AK
8553 esac],
8554 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
b9668ba4 8555
5c706339
AK
8556 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8557 [Whether or not to build shared libraries])
8558])# _LT_ENABLE_SHARED
b9668ba4 8559
5c706339
AK
8560LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8561LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
b9668ba4 8562
5c706339
AK
8563# Old names:
8564AC_DEFUN([AC_ENABLE_SHARED],
8565[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8566])
b9668ba4 8567
5c706339
AK
8568AC_DEFUN([AC_DISABLE_SHARED],
8569[_LT_SET_OPTION([LT_INIT], [disable-shared])
8570])
b9668ba4 8571
5c706339
AK
8572AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8573AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
b9668ba4 8574
5c706339
AK
8575dnl aclocal-1.4 backwards compatibility:
8576dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8577dnl AC_DEFUN([AM_DISABLE_SHARED], [])
b9668ba4 8578
b9668ba4 8579
b9668ba4 8580
5c706339
AK
8581# _LT_ENABLE_STATIC([DEFAULT])
8582# ----------------------------
c45550e5
AK
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'.
5c706339
AK
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.
c45550e5 8598 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
5c706339 8599 for pkg in $enableval; do
c45550e5 8600 IFS=$lt_save_ifs
5c706339
AK
8601 if test "X$pkg" = "X$p"; then
8602 enable_static=yes
8603 fi
8604 done
c45550e5 8605 IFS=$lt_save_ifs
b9668ba4 8606 ;;
5c706339
AK
8607 esac],
8608 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
b9668ba4 8609
5c706339
AK
8610 _LT_DECL([build_old_libs], [enable_static], [0],
8611 [Whether or not to build static libraries])
8612])# _LT_ENABLE_STATIC
b9668ba4 8613
5c706339
AK
8614LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8615LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
b9668ba4 8616
5c706339
AK
8617# Old names:
8618AC_DEFUN([AC_ENABLE_STATIC],
8619[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8620])
b9668ba4 8621
5c706339
AK
8622AC_DEFUN([AC_DISABLE_STATIC],
8623[_LT_SET_OPTION([LT_INIT], [disable-static])
8624])
b9668ba4 8625
5c706339
AK
8626AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8627AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
b9668ba4 8628
5c706339
AK
8629dnl aclocal-1.4 backwards compatibility:
8630dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8631dnl AC_DEFUN([AM_DISABLE_STATIC], [])
b9668ba4 8632
b9668ba4 8633
b9668ba4 8634
5c706339
AK
8635# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8636# ----------------------------------
c45550e5
AK
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'.
5c706339
AK
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.
c45550e5 8652 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
5c706339 8653 for pkg in $enableval; do
c45550e5 8654 IFS=$lt_save_ifs
5c706339
AK
8655 if test "X$pkg" = "X$p"; then
8656 enable_fast_install=yes
8657 fi
8658 done
c45550e5 8659 IFS=$lt_save_ifs
b9668ba4 8660 ;;
5c706339
AK
8661 esac],
8662 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
b9668ba4 8663
5c706339
AK
8664_LT_DECL([fast_install], [enable_fast_install], [0],
8665 [Whether or not to optimize for fast installation])dnl
8666])# _LT_ENABLE_FAST_INSTALL
b9668ba4 8667
5c706339
AK
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])])
b9668ba4 8670
5c706339
AK
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
c45550e5 8676the 'fast-install' option into LT_INIT's first parameter.])
5c706339 8677])
b9668ba4 8678
5c706339
AK
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
c45550e5 8683the 'disable-fast-install' option into LT_INIT's first parameter.])
5c706339 8684])
b9668ba4 8685
5c706339
AK
8686dnl aclocal-1.4 backwards compatibility:
8687dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8688dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
b9668ba4 8689
b9668ba4 8690
c45550e5
AK
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
5c706339
AK
8744# _LT_WITH_PIC([MODE])
8745# --------------------
c45550e5 8746# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
5c706339 8747# LT_INIT options.
c45550e5 8748# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
5c706339
AK
8749m4_define([_LT_WITH_PIC],
8750[AC_ARG_WITH([pic],
059850b5 8751 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
5c706339 8752 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
059850b5
AK
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.
c45550e5 8759 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
059850b5 8760 for lt_pkg in $withval; do
c45550e5 8761 IFS=$lt_save_ifs
059850b5
AK
8762 if test "X$lt_pkg" = "X$lt_p"; then
8763 pic_mode=yes
8764 fi
8765 done
c45550e5 8766 IFS=$lt_save_ifs
059850b5
AK
8767 ;;
8768 esac],
c45550e5 8769 [pic_mode=m4_default([$1], [default])])
b9668ba4 8770
5c706339
AK
8771_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8772])# _LT_WITH_PIC
b9668ba4 8773
5c706339
AK
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
c45550e5 8782put the 'pic-only' option into LT_INIT's first parameter.])
b9668ba4 8783])
b9668ba4 8784
5c706339
AK
8785dnl aclocal-1.4 backwards compatibility:
8786dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
b9668ba4 8787
b9668ba4 8788
5c706339
AK
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])])
b9668ba4 8796
5c706339
AK
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])])
b9668ba4 8802
5c706339 8803# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
b9668ba4 8804#
c45550e5
AK
8805# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8806# Foundation, Inc.
47dc80f6 8807# Written by Gary V. Vaughan, 2004
b9668ba4 8808#
5c706339
AK
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
47dc80f6 8813# serial 6 ltsugar.m4
5c706339
AK
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
c45550e5 8839# Autoconf-2.59, which quotes differently.
5c706339
AK
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# ------------------------------------------
c45550e5 8850# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
5c706339
AK
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).
b9668ba4 8855#
5c706339
AK
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.
47dc80f6 8869# Needed until we can rely on m4_combine added in Autoconf 2.62.
5c706339 8870m4_define([lt_combine],
47dc80f6
AK
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])])])])])
b9668ba4
AK
8877
8878
5c706339
AK
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])])
b9668ba4
AK
8889
8890
5c706339
AK
8891# lt_dict_add(DICT, KEY, VALUE)
8892# -----------------------------
8893m4_define([lt_dict_add],
8894[m4_define([$1($2)], [$3])])
b9668ba4 8895
b9668ba4 8896
5c706339
AK
8897# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8898# --------------------------------------------
8899m4_define([lt_dict_add_subkey],
8900[m4_define([$1($2:$3)], [$4])])
b9668ba4 8901
b9668ba4 8902
5c706339
AK
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)])]))])
8909
8910
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])])
8917
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
b9668ba4 8926])
5c706339
AK
8927
8928# ltversion.m4 -- version numbers -*- Autoconf -*-
8929#
c45550e5 8930# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
5c706339
AK
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.
8936
059850b5 8937# @configure_input@
5c706339 8938
c45550e5 8939# serial 4179 ltversion.m4
5c706339
AK
8940# This file is part of GNU Libtool
8941
c45550e5
AK
8942m4_define([LT_PACKAGE_VERSION], [2.4.6])
8943m4_define([LT_PACKAGE_REVISION], [2.4.6])
5c706339
AK
8944
8945AC_DEFUN([LTVERSION_VERSION],
c45550e5
AK
8946[macro_version='2.4.6'
8947macro_revision='2.4.6'
5c706339
AK
8948_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8949_LT_DECL(, macro_revision, 0)
b9668ba4
AK
8950])
8951
5c706339
AK
8952# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8953#
c45550e5
AK
8954# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8955# Foundation, Inc.
5c706339
AK
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
059850b5 8962# serial 5 lt~obsolete.m4
5c706339
AK
8963
8964# These exist entirely to fool aclocal when bootstrapping libtool.
8965#
c45550e5 8966# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
5c706339
AK
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.
c45550e5 8980# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
5c706339
AK
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])])
5c706339
AK
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])])
059850b5
AK
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])])
9051
c45550e5 9052# Copyright (C) 2002-2014 Free Software Foundation, Inc.
b9668ba4
AK
9053#
9054# This file is free software; the Free Software Foundation
9055# gives unlimited permission to copy and/or distribute it,
9056# with or without modifications, as long as this notice is preserved.
9057
9058# AM_AUTOMAKE_VERSION(VERSION)
9059# ----------------------------
9060# Automake X.Y traces this macro to ensure aclocal.m4 has been
9061# generated from the m4 files accompanying Automake X.Y.
5c706339
AK
9062# (This private macro should not be called outside this file.)
9063AC_DEFUN([AM_AUTOMAKE_VERSION],
c45550e5 9064[am__api_version='1.15'
5c706339
AK
9065dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
9066dnl require some minimum version. Point them to the right macro.
c45550e5 9067m4_if([$1], [1.15], [],
5c706339
AK
9068 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
9069])
9070
9071# _AM_AUTOCONF_VERSION(VERSION)
9072# -----------------------------
9073# aclocal traces this macro to find the Autoconf version.
9074# This is a private macro too. Using m4_define simplifies
9075# the logic in aclocal, which can simply ignore this definition.
9076m4_define([_AM_AUTOCONF_VERSION], [])
b9668ba4
AK
9077
9078# AM_SET_CURRENT_AUTOMAKE_VERSION
9079# -------------------------------
5c706339 9080# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
47dc80f6 9081# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
b9668ba4 9082AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
c45550e5 9083[AM_AUTOMAKE_VERSION([1.15])dnl
5c706339
AK
9084m4_ifndef([AC_AUTOCONF_VERSION],
9085 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
47dc80f6 9086_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
b9668ba4
AK
9087
9088# AM_AUX_DIR_EXPAND -*- Autoconf -*-
9089
c45550e5 9090# Copyright (C) 2001-2014 Free Software Foundation, Inc.
b9668ba4
AK
9091#
9092# This file is free software; the Free Software Foundation
9093# gives unlimited permission to copy and/or distribute it,
9094# with or without modifications, as long as this notice is preserved.
9095
9096# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
0044e680
AK
9097# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
9098# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
b9668ba4
AK
9099#
9100# Of course, Automake must honor this variable whenever it calls a
9101# tool from the auxiliary directory. The problem is that $srcdir (and
9102# therefore $ac_aux_dir as well) can be either absolute or relative,
9103# depending on how configure is run. This is pretty annoying, since
9104# it makes $ac_aux_dir quite unusable in subdirectories: in the top
9105# source directory, any form will work fine, but in subdirectories a
9106# relative path needs to be adjusted first.
9107#
9108# $ac_aux_dir/missing
9109# fails when called from a subdirectory if $ac_aux_dir is relative
9110# $top_srcdir/$ac_aux_dir/missing
9111# fails if $ac_aux_dir is absolute,
9112# fails when called from a subdirectory in a VPATH build with
9113# a relative $ac_aux_dir
9114#
9115# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
9116# are both prefixed by $srcdir. In an in-source build this is usually
0044e680 9117# harmless because $srcdir is '.', but things will broke when you
b9668ba4
AK
9118# start a VPATH build or use an absolute $srcdir.
9119#
9120# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
9121# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
9122# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
9123# and then we would define $MISSING as
9124# MISSING="\${SHELL} $am_aux_dir/missing"
9125# This will work as long as MISSING is not called from configure, because
9126# unfortunately $(top_srcdir) has no meaning in configure.
9127# However there are other variables, like CC, which are often used in
9128# configure, and could therefore not use this "fixed" $ac_aux_dir.
9129#
9130# Another solution, used here, is to always expand $ac_aux_dir to an
9131# absolute PATH. The drawback is that using absolute paths prevent a
9132# configured tree to be moved without reconfiguration.
9133
9134AC_DEFUN([AM_AUX_DIR_EXPAND],
c45550e5
AK
9135[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
9136# Expand $ac_aux_dir to an absolute path.
9137am_aux_dir=`cd "$ac_aux_dir" && pwd`
b9668ba4
AK
9138])
9139
9140# AM_CONDITIONAL -*- Autoconf -*-
9141
c45550e5 9142# Copyright (C) 1997-2014 Free Software Foundation, Inc.
b9668ba4
AK
9143#
9144# This file is free software; the Free Software Foundation
9145# gives unlimited permission to copy and/or distribute it,
9146# with or without modifications, as long as this notice is preserved.
9147
b9668ba4
AK
9148# AM_CONDITIONAL(NAME, SHELL-CONDITION)
9149# -------------------------------------
9150# Define a conditional.
9151AC_DEFUN([AM_CONDITIONAL],
0044e680
AK
9152[AC_PREREQ([2.52])dnl
9153 m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
9154 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
5c706339
AK
9155AC_SUBST([$1_TRUE])dnl
9156AC_SUBST([$1_FALSE])dnl
9157_AM_SUBST_NOTMAKE([$1_TRUE])dnl
9158_AM_SUBST_NOTMAKE([$1_FALSE])dnl
0fbeb4dc 9159m4_define([_AM_COND_VALUE_$1], [$2])dnl
b9668ba4
AK
9160if $2; then
9161 $1_TRUE=
9162 $1_FALSE='#'
9163else
9164 $1_TRUE='#'
9165 $1_FALSE=
9166fi
9167AC_CONFIG_COMMANDS_PRE(
9168[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
9169 AC_MSG_ERROR([[conditional "$1" was never defined.
9170Usually this means the macro was only invoked conditionally.]])
9171fi])])
9172
c45550e5 9173# Copyright (C) 1999-2014 Free Software Foundation, Inc.
b9668ba4
AK
9174#
9175# This file is free software; the Free Software Foundation
9176# gives unlimited permission to copy and/or distribute it,
9177# with or without modifications, as long as this notice is preserved.
9178
b9668ba4 9179
0044e680 9180# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
b9668ba4
AK
9181# written in clear, in which case automake, when reading aclocal.m4,
9182# will think it sees a *use*, and therefore will trigger all it's
9183# C support machinery. Also note that it means that autoscan, seeing
9184# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
9185
9186
9187# _AM_DEPENDENCIES(NAME)
9188# ----------------------
9189# See how the compiler implements dependency checking.
0044e680 9190# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
b9668ba4
AK
9191# We try a few techniques and use that to set a single cache variable.
9192#
9193# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
9194# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
9195# dependency, and given that the user is not expected to run this macro,
9196# just rely on AC_PROG_CC.
9197AC_DEFUN([_AM_DEPENDENCIES],
9198[AC_REQUIRE([AM_SET_DEPDIR])dnl
9199AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
9200AC_REQUIRE([AM_MAKE_INCLUDE])dnl
9201AC_REQUIRE([AM_DEP_TRACK])dnl
9202
0044e680
AK
9203m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
9204 [$1], [CXX], [depcc="$CXX" am_compiler_list=],
9205 [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
9206 [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
9207 [$1], [UPC], [depcc="$UPC" am_compiler_list=],
9208 [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
9209 [depcc="$$1" am_compiler_list=])
b9668ba4
AK
9210
9211AC_CACHE_CHECK([dependency style of $depcc],
9212 [am_cv_$1_dependencies_compiler_type],
9213[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
9214 # We make a subdir and do the tests there. Otherwise we can end up
9215 # making bogus files that we don't know about and never remove. For
9216 # instance it was reported that on HP-UX the gcc test will end up
0044e680
AK
9217 # making a dummy file named 'D' -- because '-MD' means "put the output
9218 # in D".
059850b5 9219 rm -rf conftest.dir
b9668ba4
AK
9220 mkdir conftest.dir
9221 # Copy depcomp to subdir because otherwise we won't find it if we're
9222 # using a relative directory.
9223 cp "$am_depcomp" conftest.dir
9224 cd conftest.dir
9225 # We will build objects and dependencies in a subdirectory because
9226 # it helps to detect inapplicable dependency modes. For instance
9227 # both Tru64's cc and ICC support -MD to output dependencies as a
9228 # side effect of compilation, but ICC will put the dependencies in
9229 # the current directory while Tru64 will put them in the object
9230 # directory.
9231 mkdir sub
9232
9233 am_cv_$1_dependencies_compiler_type=none
9234 if test "$am_compiler_list" = ""; then
9235 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
9236 fi
0fbeb4dc
AK
9237 am__universal=false
9238 m4_case([$1], [CC],
9239 [case " $depcc " in #(
9240 *\ -arch\ *\ -arch\ *) am__universal=true ;;
9241 esac],
9242 [CXX],
9243 [case " $depcc " in #(
9244 *\ -arch\ *\ -arch\ *) am__universal=true ;;
9245 esac])
9246
b9668ba4
AK
9247 for depmode in $am_compiler_list; do
9248 # Setup a source with many dependencies, because some compilers
9249 # like to wrap large dependency lists on column 80 (with \), and
9250 # we should not choose a depcomp mode which is confused by this.
9251 #
9252 # We need to recreate these files for each test, as the compiler may
9253 # overwrite some of them when testing with obscure command lines.
9254 # This happens at least with the AIX C compiler.
9255 : > sub/conftest.c
9256 for i in 1 2 3 4 5 6; do
9257 echo '#include "conftst'$i'.h"' >> sub/conftest.c
0044e680
AK
9258 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
9259 # Solaris 10 /bin/sh.
9260 echo '/* dummy */' > sub/conftst$i.h
b9668ba4
AK
9261 done
9262 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
9263
0044e680 9264 # We check with '-c' and '-o' for the sake of the "dashmstdout"
0fbeb4dc 9265 # mode. It turns out that the SunPro C++ compiler does not properly
0044e680
AK
9266 # handle '-M -o', and we need to detect this. Also, some Intel
9267 # versions had trouble with output in subdirs.
0fbeb4dc
AK
9268 am__obj=sub/conftest.${OBJEXT-o}
9269 am__minus_obj="-o $am__obj"
b9668ba4 9270 case $depmode in
0fbeb4dc
AK
9271 gcc)
9272 # This depmode causes a compiler race in universal mode.
9273 test "$am__universal" = false || continue
9274 ;;
b9668ba4 9275 nosideeffect)
0044e680
AK
9276 # After this tag, mechanisms are not by side-effect, so they'll
9277 # only be used when explicitly requested.
b9668ba4
AK
9278 if test "x$enable_dependency_tracking" = xyes; then
9279 continue
9280 else
9281 break
9282 fi
9283 ;;
059850b5 9284 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
0044e680 9285 # This compiler won't grok '-c -o', but also, the minuso test has
0fbeb4dc
AK
9286 # not run yet. These depmodes are late enough in the game, and
9287 # so weak that their functioning should not be impacted.
9288 am__obj=conftest.${OBJEXT-o}
9289 am__minus_obj=
9290 ;;
b9668ba4
AK
9291 none) break ;;
9292 esac
b9668ba4 9293 if depmode=$depmode \
0fbeb4dc 9294 source=sub/conftest.c object=$am__obj \
b9668ba4 9295 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
0fbeb4dc 9296 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
b9668ba4 9297 >/dev/null 2>conftest.err &&
5c706339 9298 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
b9668ba4 9299 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
0fbeb4dc 9300 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
b9668ba4
AK
9301 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
9302 # icc doesn't choke on unknown options, it will just issue warnings
9303 # or remarks (even with -Werror). So we grep stderr for any message
9304 # that says an option was ignored or not supported.
9305 # When given -MP, icc 7.0 and 7.1 complain thusly:
9306 # icc: Command line warning: ignoring option '-M'; no argument required
9307 # The diagnosis changed in icc 8.0:
9308 # icc: Command line remark: option '-MP' not supported
9309 if (grep 'ignoring option' conftest.err ||
9310 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
9311 am_cv_$1_dependencies_compiler_type=$depmode
9312 break
9313 fi
9314 fi
9315 done
9316
9317 cd ..
9318 rm -rf conftest.dir
9319else
9320 am_cv_$1_dependencies_compiler_type=none
9321fi
9322])
9323AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
9324AM_CONDITIONAL([am__fastdep$1], [
9325 test "x$enable_dependency_tracking" != xno \
9326 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
9327])
9328
9329
9330# AM_SET_DEPDIR
9331# -------------
9332# Choose a directory name for dependency files.
0044e680 9333# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
b9668ba4
AK
9334AC_DEFUN([AM_SET_DEPDIR],
9335[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9336AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
9337])
9338
9339
9340# AM_DEP_TRACK
9341# ------------
9342AC_DEFUN([AM_DEP_TRACK],
0044e680
AK
9343[AC_ARG_ENABLE([dependency-tracking], [dnl
9344AS_HELP_STRING(
9345 [--enable-dependency-tracking],
9346 [do not reject slow dependency extractors])
9347AS_HELP_STRING(
9348 [--disable-dependency-tracking],
9349 [speeds up one-time build])])
b9668ba4
AK
9350if test "x$enable_dependency_tracking" != xno; then
9351 am_depcomp="$ac_aux_dir/depcomp"
9352 AMDEPBACKSLASH='\'
059850b5 9353 am__nodep='_no'
b9668ba4
AK
9354fi
9355AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
5c706339
AK
9356AC_SUBST([AMDEPBACKSLASH])dnl
9357_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
059850b5
AK
9358AC_SUBST([am__nodep])dnl
9359_AM_SUBST_NOTMAKE([am__nodep])dnl
b9668ba4
AK
9360])
9361
9362# Generate code to set up dependency tracking. -*- Autoconf -*-
9363
c45550e5 9364# Copyright (C) 1999-2014 Free Software Foundation, Inc.
b9668ba4
AK
9365#
9366# This file is free software; the Free Software Foundation
9367# gives unlimited permission to copy and/or distribute it,
9368# with or without modifications, as long as this notice is preserved.
9369
b9668ba4
AK
9370
9371# _AM_OUTPUT_DEPENDENCY_COMMANDS
9372# ------------------------------
9373AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
47dc80f6 9374[{
0044e680 9375 # Older Autoconf quotes --file arguments for eval, but not when files
47dc80f6
AK
9376 # are listed without --file. Let's play safe and only enable the eval
9377 # if we detect the quoting.
9378 case $CONFIG_FILES in
9379 *\'*) eval set x "$CONFIG_FILES" ;;
9380 *) set x $CONFIG_FILES ;;
9381 esac
9382 shift
9383 for mf
9384 do
9385 # Strip MF so we end up with the name of the file.
9386 mf=`echo "$mf" | sed -e 's/:.*$//'`
9387 # Check whether this is an Automake generated Makefile or not.
0044e680 9388 # We used to match only the files named 'Makefile.in', but
47dc80f6
AK
9389 # some people rename them; so instead we look at the file content.
9390 # Grep'ing the first line is not enough: some people post-process
9391 # each Makefile.in and add a new line on top of each file to say so.
9392 # Grep'ing the whole file is not good either: AIX grep has a line
9393 # limit of 2048, but all sed's we know have understand at least 4000.
9394 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
9395 dirpart=`AS_DIRNAME("$mf")`
9396 else
9397 continue
9398 fi
9399 # Extract the definition of DEPDIR, am__include, and am__quote
0044e680 9400 # from the Makefile without running 'make'.
47dc80f6
AK
9401 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
9402 test -z "$DEPDIR" && continue
9403 am__include=`sed -n 's/^am__include = //p' < "$mf"`
0044e680 9404 test -z "$am__include" && continue
47dc80f6 9405 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
47dc80f6
AK
9406 # Find all dependency output files, they are included files with
9407 # $(DEPDIR) in their names. We invoke sed twice because it is the
9408 # simplest approach to changing $(DEPDIR) to its actual value in the
9409 # expansion.
9410 for file in `sed -n "
9411 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
0044e680 9412 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
47dc80f6
AK
9413 # Make sure the directory exists.
9414 test -f "$dirpart/$file" && continue
9415 fdir=`AS_DIRNAME(["$file"])`
9416 AS_MKDIR_P([$dirpart/$fdir])
9417 # echo "creating $dirpart/$file"
9418 echo '# dummy' > "$dirpart/$file"
9419 done
b9668ba4 9420 done
47dc80f6 9421}
b9668ba4
AK
9422])# _AM_OUTPUT_DEPENDENCY_COMMANDS
9423
9424
9425# AM_OUTPUT_DEPENDENCY_COMMANDS
9426# -----------------------------
9427# This macro should only be invoked once -- use via AC_REQUIRE.
9428#
9429# This code is only required when automatic dependency tracking
0044e680 9430# is enabled. FIXME. This creates each '.P' file that we will
b9668ba4
AK
9431# need in order to bootstrap the dependency handling code.
9432AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9433[AC_CONFIG_COMMANDS([depfiles],
9434 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
9435 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
9436])
9437
9438# Do all the work for Automake. -*- Autoconf -*-
9439
c45550e5 9440# Copyright (C) 1996-2014 Free Software Foundation, Inc.
b9668ba4
AK
9441#
9442# This file is free software; the Free Software Foundation
9443# gives unlimited permission to copy and/or distribute it,
9444# with or without modifications, as long as this notice is preserved.
9445
b9668ba4
AK
9446# This macro actually does too much. Some checks are only needed if
9447# your package does certain things. But this isn't really a big deal.
9448
0044e680
AK
9449dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
9450m4_define([AC_PROG_CC],
9451m4_defn([AC_PROG_CC])
9452[_AM_PROG_CC_C_O
9453])
9454
b9668ba4
AK
9455# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9456# AM_INIT_AUTOMAKE([OPTIONS])
9457# -----------------------------------------------
9458# The call with PACKAGE and VERSION arguments is the old style
9459# call (pre autoconf-2.50), which is being phased out. PACKAGE
9460# and VERSION should now be passed to AC_INIT and removed from
9461# the call to AM_INIT_AUTOMAKE.
9462# We support both call styles for the transition. After
9463# the next Automake release, Autoconf can make the AC_INIT
9464# arguments mandatory, and then we can depend on a new Autoconf
9465# release and drop the old call support.
9466AC_DEFUN([AM_INIT_AUTOMAKE],
0044e680 9467[AC_PREREQ([2.65])dnl
b9668ba4
AK
9468dnl Autoconf wants to disallow AM_ names. We explicitly allow
9469dnl the ones we care about.
9470m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9471AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9472AC_REQUIRE([AC_PROG_INSTALL])dnl
5c706339
AK
9473if test "`cd $srcdir && pwd`" != "`pwd`"; then
9474 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9475 # is not polluted with repeated "-I."
9476 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9477 # test to see if srcdir already configured
9478 if test -f $srcdir/config.status; then
9479 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9480 fi
b9668ba4
AK
9481fi
9482
9483# test whether we have cygpath
9484if test -z "$CYGPATH_W"; then
9485 if (cygpath --version) >/dev/null 2>/dev/null; then
9486 CYGPATH_W='cygpath -w'
9487 else
9488 CYGPATH_W=echo
9489 fi
9490fi
9491AC_SUBST([CYGPATH_W])
9492
9493# Define the identity of the package.
9494dnl Distinguish between old-style and new-style calls.
9495m4_ifval([$2],
0044e680
AK
9496[AC_DIAGNOSE([obsolete],
9497 [$0: two- and three-arguments forms are deprecated.])
9498m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
b9668ba4
AK
9499 AC_SUBST([PACKAGE], [$1])dnl
9500 AC_SUBST([VERSION], [$2])],
9501[_AM_SET_OPTIONS([$1])dnl
5c706339 9502dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
0044e680
AK
9503m4_if(
9504 m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
9505 [ok:ok],,
5c706339 9506 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
b9668ba4
AK
9507 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9508 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9509
9510_AM_IF_OPTION([no-define],,
0044e680
AK
9511[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
9512 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
b9668ba4
AK
9513
9514# Some tools Automake needs.
9515AC_REQUIRE([AM_SANITY_CHECK])dnl
9516AC_REQUIRE([AC_ARG_PROGRAM])dnl
0044e680
AK
9517AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
9518AM_MISSING_PROG([AUTOCONF], [autoconf])
9519AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
9520AM_MISSING_PROG([AUTOHEADER], [autoheader])
9521AM_MISSING_PROG([MAKEINFO], [makeinfo])
0fbeb4dc
AK
9522AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9523AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
0044e680
AK
9524AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9525# For better backward compatibility. To be removed once Automake 1.9.x
9526# dies out for good. For more background, see:
9527# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
9528# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
9529AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
c45550e5
AK
9530# We need awk for the "check" target (and possibly the TAP driver). The
9531# system "awk" is bad on some platforms.
b9668ba4
AK
9532AC_REQUIRE([AC_PROG_AWK])dnl
9533AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9534AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9535_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
0fbeb4dc
AK
9536 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9537 [_AM_PROG_TAR([v7])])])
b9668ba4
AK
9538_AM_IF_OPTION([no-dependencies],,
9539[AC_PROVIDE_IFELSE([AC_PROG_CC],
0044e680
AK
9540 [_AM_DEPENDENCIES([CC])],
9541 [m4_define([AC_PROG_CC],
9542 m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
b9668ba4 9543AC_PROVIDE_IFELSE([AC_PROG_CXX],
0044e680
AK
9544 [_AM_DEPENDENCIES([CXX])],
9545 [m4_define([AC_PROG_CXX],
9546 m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
5c706339 9547AC_PROVIDE_IFELSE([AC_PROG_OBJC],
0044e680
AK
9548 [_AM_DEPENDENCIES([OBJC])],
9549 [m4_define([AC_PROG_OBJC],
9550 m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
9551AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
9552 [_AM_DEPENDENCIES([OBJCXX])],
9553 [m4_define([AC_PROG_OBJCXX],
9554 m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
b9668ba4 9555])
0044e680
AK
9556AC_REQUIRE([AM_SILENT_RULES])dnl
9557dnl The testsuite driver may need to know about EXEEXT, so add the
9558dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
9559dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
0fbeb4dc
AK
9560AC_CONFIG_COMMANDS_PRE(dnl
9561[m4_provide_if([_AM_COMPILER_EXEEXT],
9562 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
b9668ba4 9563
0044e680
AK
9564# POSIX will say in a future version that running "rm -f" with no argument
9565# is OK; and we want to be able to make that assumption in our Makefile
9566# recipes. So use an aggressive probe to check that the usage we want is
9567# actually supported "in the wild" to an acceptable degree.
9568# See automake bug#10828.
9569# To make any issue more visible, cause the running configure to be aborted
9570# by default if the 'rm' program in use doesn't match our expectations; the
9571# user can still override this though.
9572if rm -f && rm -fr && rm -rf; then : OK; else
9573 cat >&2 <<'END'
9574Oops!
9575
9576Your 'rm' program seems unable to run without file operands specified
9577on the command line, even when the '-f' option is present. This is contrary
9578to the behaviour of most rm programs out there, and not conforming with
9579the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
9580
9581Please tell bug-automake@gnu.org about your system, including the value
9582of your $PATH and any error possibly output before this message. This
9583can help us improve future automake versions.
9584
9585END
9586 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
9587 echo 'Configuration will proceed anyway, since you have set the' >&2
9588 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
9589 echo >&2
9590 else
9591 cat >&2 <<'END'
9592Aborting the configuration process, to ensure you take notice of the issue.
9593
9594You can download and install GNU coreutils to get an 'rm' implementation
9595that behaves properly: <http://www.gnu.org/software/coreutils/>.
9596
9597If you want to complete the configuration process using your problematic
9598'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
9599to "yes", and re-run configure.
9600
9601END
9602 AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
9603 fi
c45550e5
AK
9604fi
9605dnl The trailing newline in this macro's definition is deliberate, for
9606dnl backward compatibility and to allow trailing 'dnl'-style comments
9607dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
9608])
0044e680
AK
9609
9610dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
0fbeb4dc
AK
9611dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9612dnl mangled by Autoconf and run in a shell conditional statement.
9613m4_define([_AC_COMPILER_EXEEXT],
9614m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9615
b9668ba4
AK
9616# When config.status generates a header, we must update the stamp-h file.
9617# This file resides in the same directory as the config header
9618# that is generated. The stamp files are numbered to have different names.
9619
9620# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9621# loop where config.status creates the headers, so we can generate
9622# our stamp files there.
9623AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9624[# Compute $1's index in $config_headers.
5c706339 9625_am_arg=$1
b9668ba4
AK
9626_am_stamp_count=1
9627for _am_header in $config_headers :; do
9628 case $_am_header in
5c706339 9629 $_am_arg | $_am_arg:* )
b9668ba4
AK
9630 break ;;
9631 * )
9632 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9633 esac
9634done
5c706339 9635echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
b9668ba4 9636
c45550e5 9637# Copyright (C) 2001-2014 Free Software Foundation, Inc.
b9668ba4
AK
9638#
9639# This file is free software; the Free Software Foundation
9640# gives unlimited permission to copy and/or distribute it,
9641# with or without modifications, as long as this notice is preserved.
9642
9643# AM_PROG_INSTALL_SH
9644# ------------------
9645# Define $install_sh.
9646AC_DEFUN([AM_PROG_INSTALL_SH],
9647[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
c45550e5 9648if test x"${install_sh+set}" != xset; then
0fbeb4dc
AK
9649 case $am_aux_dir in
9650 *\ * | *\ *)
9651 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9652 *)
9653 install_sh="\${SHELL} $am_aux_dir/install-sh"
9654 esac
9655fi
0044e680 9656AC_SUBST([install_sh])])
b9668ba4 9657
c45550e5 9658# Copyright (C) 2003-2014 Free Software Foundation, Inc.
b9668ba4
AK
9659#
9660# This file is free software; the Free Software Foundation
9661# gives unlimited permission to copy and/or distribute it,
9662# with or without modifications, as long as this notice is preserved.
9663
b9668ba4
AK
9664# Check whether the underlying file-system supports filenames
9665# with a leading dot. For instance MS-DOS doesn't.
9666AC_DEFUN([AM_SET_LEADING_DOT],
9667[rm -rf .tst 2>/dev/null
9668mkdir .tst 2>/dev/null
9669if test -d .tst; then
9670 am__leading_dot=.
9671else
9672 am__leading_dot=_
9673fi
9674rmdir .tst 2>/dev/null
9675AC_SUBST([am__leading_dot])])
9676
9677# Check to see how 'make' treats includes. -*- Autoconf -*-
9678
c45550e5 9679# Copyright (C) 2001-2014 Free Software Foundation, Inc.
b9668ba4
AK
9680#
9681# This file is free software; the Free Software Foundation
9682# gives unlimited permission to copy and/or distribute it,
9683# with or without modifications, as long as this notice is preserved.
9684
b9668ba4
AK
9685# AM_MAKE_INCLUDE()
9686# -----------------
9687# Check to see how make treats includes.
9688AC_DEFUN([AM_MAKE_INCLUDE],
9689[am_make=${MAKE-make}
9690cat > confinc << 'END'
9691am__doit:
0fbeb4dc 9692 @echo this is the am__doit target
b9668ba4
AK
9693.PHONY: am__doit
9694END
9695# If we don't find an include directive, just comment out the code.
9696AC_MSG_CHECKING([for style of include used by $am_make])
9697am__include="#"
9698am__quote=
9699_am_result=none
9700# First try GNU make style include.
9701echo "include confinc" > confmf
0044e680 9702# Ignore all kinds of additional output from 'make'.
0fbeb4dc
AK
9703case `$am_make -s -f confmf 2> /dev/null` in #(
9704*the\ am__doit\ target*)
9705 am__include=include
9706 am__quote=
9707 _am_result=GNU
9708 ;;
9709esac
b9668ba4
AK
9710# Now try BSD make style include.
9711if test "$am__include" = "#"; then
9712 echo '.include "confinc"' > confmf
0fbeb4dc
AK
9713 case `$am_make -s -f confmf 2> /dev/null` in #(
9714 *the\ am__doit\ target*)
9715 am__include=.include
9716 am__quote="\""
9717 _am_result=BSD
9718 ;;
9719 esac
b9668ba4
AK
9720fi
9721AC_SUBST([am__include])
9722AC_SUBST([am__quote])
9723AC_MSG_RESULT([$_am_result])
9724rm -f confinc confmf
9725])
9726
9727# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9728
c45550e5 9729# Copyright (C) 1997-2014 Free Software Foundation, Inc.
b9668ba4
AK
9730#
9731# This file is free software; the Free Software Foundation
9732# gives unlimited permission to copy and/or distribute it,
9733# with or without modifications, as long as this notice is preserved.
9734
b9668ba4
AK
9735# AM_MISSING_PROG(NAME, PROGRAM)
9736# ------------------------------
9737AC_DEFUN([AM_MISSING_PROG],
9738[AC_REQUIRE([AM_MISSING_HAS_RUN])
9739$1=${$1-"${am_missing_run}$2"}
9740AC_SUBST($1)])
9741
b9668ba4
AK
9742# AM_MISSING_HAS_RUN
9743# ------------------
0044e680
AK
9744# Define MISSING if not defined so far and test if it is modern enough.
9745# If it is, set am_missing_run to use it, otherwise, to nothing.
b9668ba4
AK
9746AC_DEFUN([AM_MISSING_HAS_RUN],
9747[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
5c706339 9748AC_REQUIRE_AUX_FILE([missing])dnl
0fbeb4dc
AK
9749if test x"${MISSING+set}" != xset; then
9750 case $am_aux_dir in
9751 *\ * | *\ *)
9752 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9753 *)
9754 MISSING="\${SHELL} $am_aux_dir/missing" ;;
9755 esac
9756fi
b9668ba4 9757# Use eval to expand $SHELL
0044e680
AK
9758if eval "$MISSING --is-lightweight"; then
9759 am_missing_run="$MISSING "
b9668ba4
AK
9760else
9761 am_missing_run=
0044e680 9762 AC_MSG_WARN(['missing' script is too old or missing])
b9668ba4
AK
9763fi
9764])
9765
b9668ba4
AK
9766# Helper functions for option handling. -*- Autoconf -*-
9767
c45550e5 9768# Copyright (C) 2001-2014 Free Software Foundation, Inc.
b9668ba4
AK
9769#
9770# This file is free software; the Free Software Foundation
9771# gives unlimited permission to copy and/or distribute it,
9772# with or without modifications, as long as this notice is preserved.
9773
b9668ba4
AK
9774# _AM_MANGLE_OPTION(NAME)
9775# -----------------------
9776AC_DEFUN([_AM_MANGLE_OPTION],
9777[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
9778
9779# _AM_SET_OPTION(NAME)
059850b5 9780# --------------------
b9668ba4
AK
9781# Set option NAME. Presently that only means defining a flag for this option.
9782AC_DEFUN([_AM_SET_OPTION],
0044e680 9783[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
b9668ba4
AK
9784
9785# _AM_SET_OPTIONS(OPTIONS)
059850b5 9786# ------------------------
b9668ba4
AK
9787# OPTIONS is a space-separated list of Automake options.
9788AC_DEFUN([_AM_SET_OPTIONS],
47dc80f6 9789[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
b9668ba4
AK
9790
9791# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
9792# -------------------------------------------
9793# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9794AC_DEFUN([_AM_IF_OPTION],
9795[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9796
c45550e5 9797# Copyright (C) 1999-2014 Free Software Foundation, Inc.
0044e680
AK
9798#
9799# This file is free software; the Free Software Foundation
9800# gives unlimited permission to copy and/or distribute it,
9801# with or without modifications, as long as this notice is preserved.
9802
9803# _AM_PROG_CC_C_O
9804# ---------------
9805# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
9806# to automatically call this.
9807AC_DEFUN([_AM_PROG_CC_C_O],
9808[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9809AC_REQUIRE_AUX_FILE([compile])dnl
9810AC_LANG_PUSH([C])dnl
9811AC_CACHE_CHECK(
9812 [whether $CC understands -c and -o together],
9813 [am_cv_prog_cc_c_o],
9814 [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
9815 # Make sure it works both with $CC and with simple cc.
9816 # Following AC_PROG_CC_C_O, we do the test twice because some
9817 # compilers refuse to overwrite an existing .o file with -o,
9818 # though they will create one.
9819 am_cv_prog_cc_c_o=yes
9820 for am_i in 1 2; do
9821 if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
9822 && test -f conftest2.$ac_objext; then
9823 : OK
9824 else
9825 am_cv_prog_cc_c_o=no
9826 break
9827 fi
9828 done
9829 rm -f core conftest*
9830 unset am_i])
9831if test "$am_cv_prog_cc_c_o" != yes; then
9832 # Losing compiler, so override with the script.
9833 # FIXME: It is wrong to rewrite CC.
9834 # But if we don't then we get into trouble of one sort or another.
9835 # A longer-term fix would be to have automake use am__CC in this case,
9836 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
9837 CC="$am_aux_dir/compile $CC"
9838fi
9839AC_LANG_POP([C])])
9840
9841# For backward compatibility.
9842AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
b9668ba4 9843
c45550e5 9844# Copyright (C) 2001-2014 Free Software Foundation, Inc.
b9668ba4
AK
9845#
9846# This file is free software; the Free Software Foundation
9847# gives unlimited permission to copy and/or distribute it,
9848# with or without modifications, as long as this notice is preserved.
9849
0044e680
AK
9850# AM_RUN_LOG(COMMAND)
9851# -------------------
9852# Run COMMAND, save the exit status in ac_status, and log it.
9853# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
9854AC_DEFUN([AM_RUN_LOG],
9855[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
9856 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
9857 ac_status=$?
9858 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
9859 (exit $ac_status); }])
9860
9861# Check to make sure that the build environment is sane. -*- Autoconf -*-
9862
c45550e5 9863# Copyright (C) 1996-2014 Free Software Foundation, Inc.
0044e680
AK
9864#
9865# This file is free software; the Free Software Foundation
9866# gives unlimited permission to copy and/or distribute it,
9867# with or without modifications, as long as this notice is preserved.
b9668ba4
AK
9868
9869# AM_SANITY_CHECK
9870# ---------------
9871AC_DEFUN([AM_SANITY_CHECK],
9872[AC_MSG_CHECKING([whether build environment is sane])
0fbeb4dc
AK
9873# Reject unsafe characters in $srcdir or the absolute working directory
9874# name. Accept space and tab only in the latter.
9875am_lf='
9876'
9877case `pwd` in
9878 *[[\\\"\#\$\&\'\`$am_lf]]*)
9879 AC_MSG_ERROR([unsafe absolute working directory name]);;
9880esac
9881case $srcdir in
9882 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
0044e680 9883 AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
0fbeb4dc
AK
9884esac
9885
0044e680 9886# Do 'set' in a subshell so we don't clobber the current shell's
b9668ba4
AK
9887# arguments. Must try -L first in case configure is actually a
9888# symlink; some systems play weird games with the mod time of symlinks
9889# (eg FreeBSD returns the mod time of the symlink's containing
9890# directory).
9891if (
0044e680
AK
9892 am_has_slept=no
9893 for am_try in 1 2; do
9894 echo "timestamp, slept: $am_has_slept" > conftest.file
9895 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
9896 if test "$[*]" = "X"; then
9897 # -L didn't work.
9898 set X `ls -t "$srcdir/configure" conftest.file`
9899 fi
9900 if test "$[*]" != "X $srcdir/configure conftest.file" \
9901 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9902
9903 # If neither matched, then we have a broken ls. This can happen
9904 # if, for instance, CONFIG_SHELL is bash and it inherits a
9905 # broken ls alias from the environment. This has actually
9906 # happened. Such a system could not be considered "sane".
9907 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9908 alias in your environment])
9909 fi
9910 if test "$[2]" = conftest.file || test $am_try -eq 2; then
9911 break
9912 fi
9913 # Just in case.
9914 sleep 1
9915 am_has_slept=yes
9916 done
b9668ba4
AK
9917 test "$[2]" = conftest.file
9918 )
9919then
9920 # Ok.
9921 :
9922else
9923 AC_MSG_ERROR([newly created file is older than distributed files!
9924Check your system clock])
9925fi
0044e680
AK
9926AC_MSG_RESULT([yes])
9927# If we didn't sleep, we still need to ensure time stamps of config.status and
9928# generated files are strictly newer.
9929am_sleep_pid=
9930if grep 'slept: no' conftest.file >/dev/null 2>&1; then
9931 ( sleep 1 ) &
9932 am_sleep_pid=$!
9933fi
9934AC_CONFIG_COMMANDS_PRE(
9935 [AC_MSG_CHECKING([that generated files are newer than configure])
9936 if test -n "$am_sleep_pid"; then
9937 # Hide warnings about reused PIDs.
9938 wait $am_sleep_pid 2>/dev/null
9939 fi
9940 AC_MSG_RESULT([done])])
9941rm -f conftest.file
9942])
b9668ba4 9943
c45550e5 9944# Copyright (C) 2009-2014 Free Software Foundation, Inc.
b9668ba4
AK
9945#
9946# This file is free software; the Free Software Foundation
9947# gives unlimited permission to copy and/or distribute it,
9948# with or without modifications, as long as this notice is preserved.
9949
0044e680
AK
9950# AM_SILENT_RULES([DEFAULT])
9951# --------------------------
9952# Enable less verbose build rules; with the default set to DEFAULT
9953# ("yes" being less verbose, "no" or empty being verbose).
9954AC_DEFUN([AM_SILENT_RULES],
9955[AC_ARG_ENABLE([silent-rules], [dnl
9956AS_HELP_STRING(
9957 [--enable-silent-rules],
9958 [less verbose build output (undo: "make V=1")])
9959AS_HELP_STRING(
9960 [--disable-silent-rules],
9961 [verbose build output (undo: "make V=0")])dnl
9962])
9963case $enable_silent_rules in @%:@ (((
9964 yes) AM_DEFAULT_VERBOSITY=0;;
9965 no) AM_DEFAULT_VERBOSITY=1;;
9966 *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
9967esac
9968dnl
9969dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
9970dnl do not support nested variable expansions.
9971dnl See automake bug#9928 and bug#10237.
9972am_make=${MAKE-make}
9973AC_CACHE_CHECK([whether $am_make supports nested variables],
9974 [am_cv_make_support_nested_variables],
9975 [if AS_ECHO([['TRUE=$(BAR$(V))
9976BAR0=false
9977BAR1=true
9978V=1
9979am__doit:
9980 @$(TRUE)
9981.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
9982 am_cv_make_support_nested_variables=yes
9983else
9984 am_cv_make_support_nested_variables=no
9985fi])
9986if test $am_cv_make_support_nested_variables = yes; then
9987 dnl Using '$V' instead of '$(V)' breaks IRIX make.
9988 AM_V='$(V)'
9989 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
9990else
9991 AM_V=$AM_DEFAULT_VERBOSITY
9992 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
9993fi
9994AC_SUBST([AM_V])dnl
9995AM_SUBST_NOTMAKE([AM_V])dnl
9996AC_SUBST([AM_DEFAULT_V])dnl
9997AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
9998AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
9999AM_BACKSLASH='\'
10000AC_SUBST([AM_BACKSLASH])dnl
10001_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
10002])
10003
c45550e5 10004# Copyright (C) 2001-2014 Free Software Foundation, Inc.
0044e680
AK
10005#
10006# This file is free software; the Free Software Foundation
10007# gives unlimited permission to copy and/or distribute it,
10008# with or without modifications, as long as this notice is preserved.
059850b5 10009
b9668ba4
AK
10010# AM_PROG_INSTALL_STRIP
10011# ---------------------
0044e680 10012# One issue with vendor 'install' (even GNU) is that you can't
b9668ba4
AK
10013# specify the program used to strip binaries. This is especially
10014# annoying in cross-compiling environments, where the build's strip
10015# is unlikely to handle the host's binaries.
10016# Fortunately install-sh will honor a STRIPPROG variable, so we
0044e680 10017# always use install-sh in "make install-strip", and initialize
b9668ba4
AK
10018# STRIPPROG with the value of the STRIP variable (set by the user).
10019AC_DEFUN([AM_PROG_INSTALL_STRIP],
10020[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
0044e680
AK
10021# Installed binaries are usually stripped using 'strip' when the user
10022# run "make install-strip". However 'strip' might not be the right
b9668ba4 10023# tool to use in cross-compilation environments, therefore Automake
0044e680
AK
10024# will honor the 'STRIP' environment variable to overrule this program.
10025dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
b9668ba4
AK
10026if test "$cross_compiling" != no; then
10027 AC_CHECK_TOOL([STRIP], [strip], :)
10028fi
5c706339 10029INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
b9668ba4
AK
10030AC_SUBST([INSTALL_STRIP_PROGRAM])])
10031
c45550e5 10032# Copyright (C) 2006-2014 Free Software Foundation, Inc.
5c706339
AK
10033#
10034# This file is free software; the Free Software Foundation
10035# gives unlimited permission to copy and/or distribute it,
10036# with or without modifications, as long as this notice is preserved.
10037
10038# _AM_SUBST_NOTMAKE(VARIABLE)
10039# ---------------------------
10040# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
10041# This macro is traced by Automake.
10042AC_DEFUN([_AM_SUBST_NOTMAKE])
10043
0fbeb4dc 10044# AM_SUBST_NOTMAKE(VARIABLE)
059850b5 10045# --------------------------
0fbeb4dc
AK
10046# Public sister of _AM_SUBST_NOTMAKE.
10047AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
10048
b9668ba4
AK
10049# Check how to create a tarball. -*- Autoconf -*-
10050
c45550e5 10051# Copyright (C) 2004-2014 Free Software Foundation, Inc.
b9668ba4
AK
10052#
10053# This file is free software; the Free Software Foundation
10054# gives unlimited permission to copy and/or distribute it,
10055# with or without modifications, as long as this notice is preserved.
10056
b9668ba4
AK
10057# _AM_PROG_TAR(FORMAT)
10058# --------------------
10059# Check how to create a tarball in format FORMAT.
0044e680 10060# FORMAT should be one of 'v7', 'ustar', or 'pax'.
b9668ba4
AK
10061#
10062# Substitute a variable $(am__tar) that is a command
10063# writing to stdout a FORMAT-tarball containing the directory
10064# $tardir.
10065# tardir=directory && $(am__tar) > result.tar
10066#
10067# Substitute a variable $(am__untar) that extract such
10068# a tarball read from stdin.
10069# $(am__untar) < result.tar
0044e680 10070#
b9668ba4 10071AC_DEFUN([_AM_PROG_TAR],
059850b5
AK
10072[# Always define AMTAR for backward compatibility. Yes, it's still used
10073# in the wild :-( We should find a proper way to deprecate it ...
10074AC_SUBST([AMTAR], ['$${TAR-tar}'])
0044e680
AK
10075
10076# We'll loop over all known methods to create a tar archive until one works.
b9668ba4 10077_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
b9668ba4 10078
0044e680
AK
10079m4_if([$1], [v7],
10080 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
10081
10082 [m4_case([$1],
10083 [ustar],
10084 [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
10085 # There is notably a 21 bits limit for the UID and the GID. In fact,
10086 # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
10087 # and bug#13588).
10088 am_max_uid=2097151 # 2^21 - 1
10089 am_max_gid=$am_max_uid
10090 # The $UID and $GID variables are not portable, so we need to resort
10091 # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
10092 # below are definitely unexpected, so allow the users to see them
10093 # (that is, avoid stderr redirection).
10094 am_uid=`id -u || echo unknown`
10095 am_gid=`id -g || echo unknown`
10096 AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
10097 if test $am_uid -le $am_max_uid; then
10098 AC_MSG_RESULT([yes])
10099 else
10100 AC_MSG_RESULT([no])
10101 _am_tools=none
10102 fi
10103 AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
10104 if test $am_gid -le $am_max_gid; then
10105 AC_MSG_RESULT([yes])
10106 else
10107 AC_MSG_RESULT([no])
10108 _am_tools=none
10109 fi],
b9668ba4 10110
0044e680
AK
10111 [pax],
10112 [],
10113
10114 [m4_fatal([Unknown tar format])])
10115
10116 AC_MSG_CHECKING([how to create a $1 tar archive])
10117
10118 # Go ahead even if we have the value already cached. We do so because we
10119 # need to set the values for the 'am__tar' and 'am__untar' variables.
10120 _am_tools=${am_cv_prog_tar_$1-$_am_tools}
10121
10122 for _am_tool in $_am_tools; do
10123 case $_am_tool in
10124 gnutar)
10125 for _am_tar in tar gnutar gtar; do
10126 AM_RUN_LOG([$_am_tar --version]) && break
10127 done
10128 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
10129 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
10130 am__untar="$_am_tar -xf -"
10131 ;;
10132 plaintar)
10133 # Must skip GNU tar: if it does not support --format= it doesn't create
10134 # ustar tarball either.
10135 (tar --version) >/dev/null 2>&1 && continue
10136 am__tar='tar chf - "$$tardir"'
10137 am__tar_='tar chf - "$tardir"'
10138 am__untar='tar xf -'
10139 ;;
10140 pax)
10141 am__tar='pax -L -x $1 -w "$$tardir"'
10142 am__tar_='pax -L -x $1 -w "$tardir"'
10143 am__untar='pax -r'
10144 ;;
10145 cpio)
10146 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
10147 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
10148 am__untar='cpio -i -H $1 -d'
10149 ;;
10150 none)
10151 am__tar=false
10152 am__tar_=false
10153 am__untar=false
10154 ;;
10155 esac
10156
10157 # If the value was cached, stop now. We just wanted to have am__tar
10158 # and am__untar set.
10159 test -n "${am_cv_prog_tar_$1}" && break
10160
10161 # tar/untar a dummy directory, and stop if the command works.
10162 rm -rf conftest.dir
10163 mkdir conftest.dir
10164 echo GrepMe > conftest.dir/file
10165 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
10166 rm -rf conftest.dir
10167 if test -s conftest.tar; then
10168 AM_RUN_LOG([$am__untar <conftest.tar])
10169 AM_RUN_LOG([cat conftest.dir/file])
10170 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
10171 fi
10172 done
b9668ba4 10173 rm -rf conftest.dir
b9668ba4 10174
0044e680
AK
10175 AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
10176 AC_MSG_RESULT([$am_cv_prog_tar_$1])])
10177
b9668ba4
AK
10178AC_SUBST([am__tar])
10179AC_SUBST([am__untar])
10180]) # _AM_PROG_TAR
10181
This page took 1.655268 seconds and 5 git commands to generate.