blob: e788a89596e6c35d9c44a3d2841e9cef9de94d42 [file] [log] [blame]
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06004# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06005# 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
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050014m4_ifndef([AC_AUTOCONF_VERSION],
15 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -060016m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
17[m4_warning([this file was generated for autoconf 2.68.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050018You have another version of autoconf. It may work, but is not guaranteed to.
19If you have problems, you may need to regenerate the build system entirely.
20To do so, use the procedure documented by the package, typically `autoreconf'.])])
21
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -060022# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050023#
24# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -060025# 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
26# Inc.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050027# Written by Gordon Matzigkeit, 1996
28#
29# This file is free software; the Free Software Foundation gives
30# unlimited permission to copy and/or distribute it, with or without
31# modifications, as long as this notice is preserved.
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -060032
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050033m4_define([_LT_COPYING], [dnl
34# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -060035# 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
36# Inc.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050037# Written by Gordon Matzigkeit, 1996
38#
39# This file is part of GNU Libtool.
40#
41# GNU Libtool is free software; you can redistribute it and/or
42# modify it under the terms of the GNU General Public License as
43# published by the Free Software Foundation; either version 2 of
44# the License, or (at your option) any later version.
45#
46# As a special exception to the GNU General Public License,
47# if you distribute this file as part of a program or library that
48# is built using GNU Libtool, you may include this file under the
49# same distribution terms that you use for the rest of that program.
50#
51# GNU Libtool is distributed in the hope that it will be useful,
52# but WITHOUT ANY WARRANTY; without even the implied warranty of
53# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
54# GNU General Public License for more details.
55#
56# You should have received a copy of the GNU General Public License
57# along with GNU Libtool; see the file COPYING. If not, a copy
58# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
59# obtained by writing to the Free Software Foundation, Inc.,
60# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
61])
62
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -060063# serial 57 LT_INIT
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -060064
65
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050066# LT_PREREQ(VERSION)
67# ------------------
68# Complain and exit if this libtool version is less that VERSION.
69m4_defun([LT_PREREQ],
70[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
71 [m4_default([$3],
72 [m4_fatal([Libtool version $1 or higher is required],
73 63)])],
74 [$2])])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -060075
76
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050077# _LT_CHECK_BUILDDIR
78# ------------------
79# Complain if the absolute build directory name contains unusual characters
80m4_defun([_LT_CHECK_BUILDDIR],
81[case `pwd` in
82 *\ * | *\ *)
83 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
84esac
85])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -060086
87
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050088# LT_INIT([OPTIONS])
89# ------------------
90AC_DEFUN([LT_INIT],
91[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -060092AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -050093AC_BEFORE([$0], [LT_LANG])dnl
94AC_BEFORE([$0], [LT_OUTPUT])dnl
95AC_BEFORE([$0], [LTDL_INIT])dnl
96m4_require([_LT_CHECK_BUILDDIR])dnl
97
98dnl Autoconf doesn't catch unexpanded LT_ macros by default:
99m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
100m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
101dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
102dnl unless we require an AC_DEFUNed macro:
103AC_REQUIRE([LTOPTIONS_VERSION])dnl
104AC_REQUIRE([LTSUGAR_VERSION])dnl
105AC_REQUIRE([LTVERSION_VERSION])dnl
106AC_REQUIRE([LTOBSOLETE_VERSION])dnl
107m4_require([_LT_PROG_LTMAIN])dnl
108
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600109_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
110
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500111dnl Parse OPTIONS
112_LT_SET_OPTIONS([$0], [$1])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600113
114# This can be used to rebuild libtool when needed
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500115LIBTOOL_DEPS="$ltmain"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600116
117# Always use our own libtool.
118LIBTOOL='$(SHELL) $(top_builddir)/libtool'
119AC_SUBST(LIBTOOL)dnl
120
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500121_LT_SETUP
122
123# Only expand once:
124m4_define([LT_INIT])
125])# LT_INIT
126
127# Old names:
128AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
129AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
130dnl aclocal-1.4 backwards compatibility:
131dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
132dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600133
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600134
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500135# _LT_CC_BASENAME(CC)
136# -------------------
137# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
138m4_defun([_LT_CC_BASENAME],
139[for cc_temp in $1""; do
140 case $cc_temp in
141 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
142 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
143 \-*) ;;
144 *) break;;
145 esac
146done
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600147cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500148])
149
150
151# _LT_FILEUTILS_DEFAULTS
152# ----------------------
153# It is okay to use these file commands and assume they have been set
154# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
155m4_defun([_LT_FILEUTILS_DEFAULTS],
156[: ${CP="cp -f"}
157: ${MV="mv -f"}
158: ${RM="rm -f"}
159])# _LT_FILEUTILS_DEFAULTS
160
161
162# _LT_SETUP
163# ---------
164m4_defun([_LT_SETUP],
165[AC_REQUIRE([AC_CANONICAL_HOST])dnl
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600166AC_REQUIRE([AC_CANONICAL_BUILD])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600167AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
168AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
169
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500170_LT_DECL([], [host_alias], [0], [The host system])dnl
171_LT_DECL([], [host], [0])dnl
172_LT_DECL([], [host_os], [0])dnl
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600173dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500174_LT_DECL([], [build_alias], [0], [The build system])dnl
175_LT_DECL([], [build], [0])dnl
176_LT_DECL([], [build_os], [0])dnl
177dnl
178AC_REQUIRE([AC_PROG_CC])dnl
179AC_REQUIRE([LT_PATH_LD])dnl
180AC_REQUIRE([LT_PATH_NM])dnl
181dnl
182AC_REQUIRE([AC_PROG_LN_S])dnl
183test -z "$LN_S" && LN_S="ln -s"
184_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
185dnl
186AC_REQUIRE([LT_CMD_MAX_LEN])dnl
187_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
188_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
189dnl
190m4_require([_LT_FILEUTILS_DEFAULTS])dnl
191m4_require([_LT_CHECK_SHELL_FEATURES])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600192m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500193m4_require([_LT_CMD_RELOAD])dnl
194m4_require([_LT_CHECK_MAGIC_METHOD])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600195m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500196m4_require([_LT_CMD_OLD_ARCHIVE])dnl
197m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600198m4_require([_LT_WITH_SYSROOT])dnl
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600199
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500200_LT_CONFIG_LIBTOOL_INIT([
201# See if we are running on zsh, and set the options which allow our
202# commands through without removal of \ escapes INIT.
203if test -n "\${ZSH_VERSION+set}" ; then
204 setopt NO_GLOB_SUBST
205fi
206])
207if test -n "${ZSH_VERSION+set}" ; then
208 setopt NO_GLOB_SUBST
209fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600210
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500211_LT_CHECK_OBJDIR
212
213m4_require([_LT_TAG_COMPILER])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600214
215case $host_os in
216aix3*)
217 # AIX sometimes has problems with the GCC collect2 program. For some
218 # reason, if we set the COLLECT_NAMES environment variable, the problems
219 # vanish in a puff of smoke.
220 if test "X${COLLECT_NAMES+set}" != Xset; then
221 COLLECT_NAMES=
222 export COLLECT_NAMES
223 fi
224 ;;
225esac
226
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600227# Global variables:
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500228ofile=libtool
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600229can_build_shared=yes
230
231# All known linkers require a `.a' archive for static linking (except MSVC,
232# which needs '.lib').
233libext=a
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600234
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500235with_gnu_ld="$lt_cv_prog_gnu_ld"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600236
237old_CC="$CC"
238old_CFLAGS="$CFLAGS"
239
240# Set sane defaults for various variables
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600241test -z "$CC" && CC=cc
242test -z "$LTCC" && LTCC=$CC
243test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600244test -z "$LD" && LD=ld
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600245test -z "$ac_objext" && ac_objext=o
246
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600247_LT_CC_BASENAME([$compiler])
248
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600249# Only perform the check for file, if the check method requires it
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500250test -z "$MAGIC_CMD" && MAGIC_CMD=file
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600251case $deplibs_check_method in
252file_magic*)
253 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500254 _LT_PATH_MAGIC
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600255 fi
256 ;;
257esac
258
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600259# Use C for the default configuration in the libtool script
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500260LT_SUPPORTED_TAG([CC])
261_LT_LANG_C_CONFIG
262_LT_LANG_DEFAULT_CONFIG
263_LT_CONFIG_COMMANDS
264])# _LT_SETUP
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600265
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600266
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600267# _LT_PREPARE_SED_QUOTE_VARS
268# --------------------------
269# Define a few sed substitution that help us do robust quoting.
270m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
271[# Backslashify metacharacters that are still active within
272# double-quoted strings.
273sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
274
275# Same as above, but do not quote variable references.
276double_quote_subst='s/\([["`\\]]\)/\\\1/g'
277
278# Sed substitution to delay expansion of an escaped shell variable in a
279# double_quote_subst'ed string.
280delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
281
282# Sed substitution to delay expansion of an escaped single quote.
283delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
284
285# Sed substitution to avoid accidental globbing in evaled expressions
286no_glob_subst='s/\*/\\\*/g'
287])
288
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500289# _LT_PROG_LTMAIN
290# ---------------
291# Note that this code is called both from `configure', and `config.status'
292# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
293# `config.status' has no value for ac_aux_dir unless we are using Automake,
294# so we pass a copy along to make sure it has a sensible value anyway.
295m4_defun([_LT_PROG_LTMAIN],
296[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
297_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
298ltmain="$ac_aux_dir/ltmain.sh"
299])# _LT_PROG_LTMAIN
300
301
302
303# So that we can recreate a full libtool script including additional
304# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
305# in macros and then make a single call at the end using the `libtool'
306# label.
307
308
309# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
310# ----------------------------------------
311# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
312m4_define([_LT_CONFIG_LIBTOOL_INIT],
313[m4_ifval([$1],
314 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
315 [$1
316])])])
317
318# Initialize.
319m4_define([_LT_OUTPUT_LIBTOOL_INIT])
320
321
322# _LT_CONFIG_LIBTOOL([COMMANDS])
323# ------------------------------
324# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
325m4_define([_LT_CONFIG_LIBTOOL],
326[m4_ifval([$1],
327 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
328 [$1
329])])])
330
331# Initialize.
332m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
333
334
335# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
336# -----------------------------------------------------
337m4_defun([_LT_CONFIG_SAVE_COMMANDS],
338[_LT_CONFIG_LIBTOOL([$1])
339_LT_CONFIG_LIBTOOL_INIT([$2])
340])
341
342
343# _LT_FORMAT_COMMENT([COMMENT])
344# -----------------------------
345# Add leading comment marks to the start of each line, and a trailing
346# full-stop to the whole comment if one is not present already.
347m4_define([_LT_FORMAT_COMMENT],
348[m4_ifval([$1], [
349m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
350 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
351)])
352
353
354
355
356
357# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
358# -------------------------------------------------------------------
359# CONFIGNAME is the name given to the value in the libtool script.
360# VARNAME is the (base) name used in the configure script.
361# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
362# VARNAME. Any other value will be used directly.
363m4_define([_LT_DECL],
364[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
365 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
366 [m4_ifval([$1], [$1], [$2])])
367 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
368 m4_ifval([$4],
369 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
370 lt_dict_add_subkey([lt_decl_dict], [$2],
371 [tagged?], [m4_ifval([$5], [yes], [no])])])
372])
373
374
375# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
376# --------------------------------------------------------
377m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
378
379
380# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
381# ------------------------------------------------
382m4_define([lt_decl_tag_varnames],
383[_lt_decl_filter([tagged?], [yes], $@)])
384
385
386# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
387# ---------------------------------------------------------
388m4_define([_lt_decl_filter],
389[m4_case([$#],
390 [0], [m4_fatal([$0: too few arguments: $#])],
391 [1], [m4_fatal([$0: too few arguments: $#: $1])],
392 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
393 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
394 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
395])
396
397
398# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
399# --------------------------------------------------
400m4_define([lt_decl_quote_varnames],
401[_lt_decl_filter([value], [1], $@)])
402
403
404# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
405# ---------------------------------------------------
406m4_define([lt_decl_dquote_varnames],
407[_lt_decl_filter([value], [2], $@)])
408
409
410# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
411# ---------------------------------------------------
412m4_define([lt_decl_varnames_tagged],
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -0500413[m4_assert([$# <= 2])dnl
414_$0(m4_quote(m4_default([$1], [[, ]])),
415 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
416 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
417m4_define([_lt_decl_varnames_tagged],
418[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500419
420
421# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
422# ------------------------------------------------
423m4_define([lt_decl_all_varnames],
424[_$0(m4_quote(m4_default([$1], [[, ]])),
425 m4_if([$2], [],
426 m4_quote(lt_decl_varnames),
427 m4_quote(m4_shift($@))))[]dnl
428])
429m4_define([_lt_decl_all_varnames],
430[lt_join($@, lt_decl_varnames_tagged([$1],
431 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
432])
433
434
435# _LT_CONFIG_STATUS_DECLARE([VARNAME])
436# ------------------------------------
437# Quote a variable value, and forward it to `config.status' so that its
438# declaration there will have the same value as in `configure'. VARNAME
439# must have a single quote delimited value for this to work.
440m4_define([_LT_CONFIG_STATUS_DECLARE],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600441[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500442
443
444# _LT_CONFIG_STATUS_DECLARATIONS
445# ------------------------------
446# We delimit libtool config variables with single quotes, so when
447# we write them to config.status, we have to be sure to quote all
448# embedded single quotes properly. In configure, this macro expands
449# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
450#
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600451# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500452m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
453[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
454 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
455
456
457# _LT_LIBTOOL_TAGS
458# ----------------
459# Output comment and list of tags supported by the script
460m4_defun([_LT_LIBTOOL_TAGS],
461[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
462available_tags="_LT_TAGS"dnl
463])
464
465
466# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
467# -----------------------------------
468# Extract the dictionary values for VARNAME (optionally with TAG) and
469# expand to a commented shell variable setting:
470#
471# # Some comment about what VAR is for.
472# visible_name=$lt_internal_name
473m4_define([_LT_LIBTOOL_DECLARE],
474[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
475 [description])))[]dnl
476m4_pushdef([_libtool_name],
477 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
478m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
479 [0], [_libtool_name=[$]$1],
480 [1], [_libtool_name=$lt_[]$1],
481 [2], [_libtool_name=$lt_[]$1],
482 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
483m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
484])
485
486
487# _LT_LIBTOOL_CONFIG_VARS
488# -----------------------
489# Produce commented declarations of non-tagged libtool config variables
490# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
491# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
492# section) are produced by _LT_LIBTOOL_TAG_VARS.
493m4_defun([_LT_LIBTOOL_CONFIG_VARS],
494[m4_foreach([_lt_var],
495 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
496 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
497
498
499# _LT_LIBTOOL_TAG_VARS(TAG)
500# -------------------------
501m4_define([_LT_LIBTOOL_TAG_VARS],
502[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
503 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
504
505
506# _LT_TAGVAR(VARNAME, [TAGNAME])
507# ------------------------------
508m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
509
510
511# _LT_CONFIG_COMMANDS
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600512# -------------------
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500513# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
514# variables for single and double quote escaping we saved from calls
515# to _LT_DECL, we can put quote escaped variables declarations
516# into `config.status', and then the shell code to quote escape them in
517# for loops in `config.status'. Finally, any additional code accumulated
518# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
519m4_defun([_LT_CONFIG_COMMANDS],
520[AC_PROVIDE_IFELSE([LT_OUTPUT],
521 dnl If the libtool generation code has been placed in $CONFIG_LT,
522 dnl instead of duplicating it all over again into config.status,
523 dnl then we will have config.status run $CONFIG_LT later, so it
524 dnl needs to know what name is stored there:
525 [AC_CONFIG_COMMANDS([libtool],
526 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
527 dnl If the libtool generation code is destined for config.status,
528 dnl expand the accumulated commands and init code now:
529 [AC_CONFIG_COMMANDS([libtool],
530 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
531])#_LT_CONFIG_COMMANDS
532
533
534# Initialize.
535m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
536[
537
538# The HP-UX ksh and POSIX shell print the target directory to stdout
539# if CDPATH is set.
540(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
541
542sed_quote_subst='$sed_quote_subst'
543double_quote_subst='$double_quote_subst'
544delay_variable_subst='$delay_variable_subst'
545_LT_CONFIG_STATUS_DECLARATIONS
546LTCC='$LTCC'
547LTCFLAGS='$LTCFLAGS'
548compiler='$compiler_DEFAULT'
549
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600550# A function that is used when there is no print builtin or printf.
551func_fallback_echo ()
552{
553 eval 'cat <<_LTECHO_EOF
554\$[]1
555_LTECHO_EOF'
556}
557
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500558# Quote evaled strings.
559for var in lt_decl_all_varnames([[ \
560]], lt_decl_quote_varnames); do
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600561 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500562 *[[\\\\\\\`\\"\\\$]]*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600563 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500564 ;;
565 *)
566 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
567 ;;
568 esac
569done
570
571# Double-quote double-evaled strings.
572for var in lt_decl_all_varnames([[ \
573]], lt_decl_dquote_varnames); do
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600574 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500575 *[[\\\\\\\`\\"\\\$]]*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600576 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500577 ;;
578 *)
579 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
580 ;;
581 esac
582done
583
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500584_LT_OUTPUT_LIBTOOL_INIT
585])
586
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600587# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
588# ------------------------------------
589# Generate a child script FILE with all initialization necessary to
590# reuse the environment learned by the parent script, and make the
591# file executable. If COMMENT is supplied, it is inserted after the
592# `#!' sequence but before initialization text begins. After this
593# macro, additional text can be appended to FILE to form the body of
594# the child script. The macro ends with non-zero status if the
595# file could not be fully written (such as if the disk is full).
596m4_ifdef([AS_INIT_GENERATED],
597[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
598[m4_defun([_LT_GENERATED_FILE_INIT],
599[m4_require([AS_PREPARE])]dnl
600[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
601[lt_write_fail=0
602cat >$1 <<_ASEOF || lt_write_fail=1
603#! $SHELL
604# Generated by $as_me.
605$2
606SHELL=\${CONFIG_SHELL-$SHELL}
607export SHELL
608_ASEOF
609cat >>$1 <<\_ASEOF || lt_write_fail=1
610AS_SHELL_SANITIZE
611_AS_PREPARE
612exec AS_MESSAGE_FD>&1
613_ASEOF
614test $lt_write_fail = 0 && chmod +x $1[]dnl
615m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500616
617# LT_OUTPUT
618# ---------
619# This macro allows early generation of the libtool script (before
620# AC_OUTPUT is called), incase it is used in configure for compilation
621# tests.
622AC_DEFUN([LT_OUTPUT],
623[: ${CONFIG_LT=./config.lt}
624AC_MSG_NOTICE([creating $CONFIG_LT])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600625_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
626[# Run this file to recreate a libtool stub with the current configuration.])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500627
628cat >>"$CONFIG_LT" <<\_LTEOF
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600629lt_cl_silent=false
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500630exec AS_MESSAGE_LOG_FD>>config.log
631{
632 echo
633 AS_BOX([Running $as_me.])
634} >&AS_MESSAGE_LOG_FD
635
636lt_cl_help="\
637\`$as_me' creates a local libtool stub from the current configuration,
638for use in further configure time tests before the real libtool is
639generated.
640
641Usage: $[0] [[OPTIONS]]
642
643 -h, --help print this help, then exit
644 -V, --version print version number, then exit
645 -q, --quiet do not print progress messages
646 -d, --debug don't remove temporary files
647
648Report bugs to <bug-libtool@gnu.org>."
649
650lt_cl_version="\
651m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
652m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
653configured by $[0], generated by m4_PACKAGE_STRING.
654
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600655Copyright (C) 2010 Free Software Foundation, Inc.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500656This config.lt script is free software; the Free Software Foundation
657gives unlimited permision to copy, distribute and modify it."
658
659while test $[#] != 0
660do
661 case $[1] in
662 --version | --v* | -V )
663 echo "$lt_cl_version"; exit 0 ;;
664 --help | --h* | -h )
665 echo "$lt_cl_help"; exit 0 ;;
666 --debug | --d* | -d )
667 debug=: ;;
668 --quiet | --q* | --silent | --s* | -q )
669 lt_cl_silent=: ;;
670
671 -*) AC_MSG_ERROR([unrecognized option: $[1]
672Try \`$[0] --help' for more information.]) ;;
673
674 *) AC_MSG_ERROR([unrecognized argument: $[1]
675Try \`$[0] --help' for more information.]) ;;
676 esac
677 shift
678done
679
680if $lt_cl_silent; then
681 exec AS_MESSAGE_FD>/dev/null
682fi
683_LTEOF
684
685cat >>"$CONFIG_LT" <<_LTEOF
686_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
687_LTEOF
688
689cat >>"$CONFIG_LT" <<\_LTEOF
690AC_MSG_NOTICE([creating $ofile])
691_LT_OUTPUT_LIBTOOL_COMMANDS
692AS_EXIT(0)
693_LTEOF
694chmod +x "$CONFIG_LT"
695
696# configure is writing to config.log, but config.lt does its own redirection,
697# appending to config.log, which fails on DOS, as config.log is still kept
698# open by configure. Here we exec the FD to /dev/null, effectively closing
699# config.log, so it can be properly (re)opened and appended to by config.lt.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600700lt_cl_success=:
701test "$silent" = yes &&
702 lt_config_lt_args="$lt_config_lt_args --quiet"
703exec AS_MESSAGE_LOG_FD>/dev/null
704$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
705exec AS_MESSAGE_LOG_FD>>config.log
706$lt_cl_success || AS_EXIT(1)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500707])# LT_OUTPUT
708
709
710# _LT_CONFIG(TAG)
711# ---------------
712# If TAG is the built-in tag, create an initial libtool script with a
713# default configuration from the untagged config vars. Otherwise add code
714# to config.status for appending the configuration named by TAG from the
715# matching tagged config vars.
716m4_defun([_LT_CONFIG],
717[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
718_LT_CONFIG_SAVE_COMMANDS([
719 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
720 m4_if(_LT_TAG, [C], [
721 # See if we are running on zsh, and set the options which allow our
722 # commands through without removal of \ escapes.
723 if test -n "${ZSH_VERSION+set}" ; then
724 setopt NO_GLOB_SUBST
725 fi
726
727 cfgfile="${ofile}T"
728 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
729 $RM "$cfgfile"
730
731 cat <<_LT_EOF >> "$cfgfile"
732#! $SHELL
733
734# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
735# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
736# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
737# NOTE: Changes made to this file will be lost: look at ltmain.sh.
738#
739_LT_COPYING
740_LT_LIBTOOL_TAGS
741
742# ### BEGIN LIBTOOL CONFIG
743_LT_LIBTOOL_CONFIG_VARS
744_LT_LIBTOOL_TAG_VARS
745# ### END LIBTOOL CONFIG
746
747_LT_EOF
748
749 case $host_os in
750 aix3*)
751 cat <<\_LT_EOF >> "$cfgfile"
752# AIX sometimes has problems with the GCC collect2 program. For some
753# reason, if we set the COLLECT_NAMES environment variable, the problems
754# vanish in a puff of smoke.
755if test "X${COLLECT_NAMES+set}" != Xset; then
756 COLLECT_NAMES=
757 export COLLECT_NAMES
758fi
759_LT_EOF
760 ;;
761 esac
762
763 _LT_PROG_LTMAIN
764
765 # We use sed instead of cat because bash on DJGPP gets confused if
766 # if finds mixed CR/LF and LF-only lines. Since sed operates in
767 # text mode, it properly converts lines to CR/LF. This bash problem
768 # is reportedly fixed, but why not run on old versions too?
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600769 sed '$q' "$ltmain" >> "$cfgfile" \
770 || (rm -f "$cfgfile"; exit 1)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500771
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600772 _LT_PROG_REPLACE_SHELLFNS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500773
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600774 mv -f "$cfgfile" "$ofile" ||
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500775 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
776 chmod +x "$ofile"
777],
778[cat <<_LT_EOF >> "$ofile"
779
780dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
781dnl in a comment (ie after a #).
782# ### BEGIN LIBTOOL TAG CONFIG: $1
783_LT_LIBTOOL_TAG_VARS(_LT_TAG)
784# ### END LIBTOOL TAG CONFIG: $1
785_LT_EOF
786])dnl /m4_if
787],
788[m4_if([$1], [], [
789 PACKAGE='$PACKAGE'
790 VERSION='$VERSION'
791 TIMESTAMP='$TIMESTAMP'
792 RM='$RM'
793 ofile='$ofile'], [])
794])dnl /_LT_CONFIG_SAVE_COMMANDS
795])# _LT_CONFIG
796
797
798# LT_SUPPORTED_TAG(TAG)
799# ---------------------
800# Trace this macro to discover what tags are supported by the libtool
801# --tag option, using:
802# autoconf --trace 'LT_SUPPORTED_TAG:$1'
803AC_DEFUN([LT_SUPPORTED_TAG], [])
804
805
806# C support is built-in for now
807m4_define([_LT_LANG_C_enabled], [])
808m4_define([_LT_TAGS], [])
809
810
811# LT_LANG(LANG)
812# -------------
813# Enable libtool support for the given language if not already enabled.
814AC_DEFUN([LT_LANG],
815[AC_BEFORE([$0], [LT_OUTPUT])dnl
816m4_case([$1],
817 [C], [_LT_LANG(C)],
818 [C++], [_LT_LANG(CXX)],
819 [Java], [_LT_LANG(GCJ)],
820 [Fortran 77], [_LT_LANG(F77)],
821 [Fortran], [_LT_LANG(FC)],
822 [Windows Resource], [_LT_LANG(RC)],
823 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
824 [_LT_LANG($1)],
825 [m4_fatal([$0: unsupported language: "$1"])])])dnl
826])# LT_LANG
827
828
829# _LT_LANG(LANGNAME)
830# ------------------
831m4_defun([_LT_LANG],
832[m4_ifdef([_LT_LANG_]$1[_enabled], [],
833 [LT_SUPPORTED_TAG([$1])dnl
834 m4_append([_LT_TAGS], [$1 ])dnl
835 m4_define([_LT_LANG_]$1[_enabled], [])dnl
836 _LT_LANG_$1_CONFIG($1)])dnl
837])# _LT_LANG
838
839
840# _LT_LANG_DEFAULT_CONFIG
841# -----------------------
842m4_defun([_LT_LANG_DEFAULT_CONFIG],
843[AC_PROVIDE_IFELSE([AC_PROG_CXX],
844 [LT_LANG(CXX)],
845 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
846
847AC_PROVIDE_IFELSE([AC_PROG_F77],
848 [LT_LANG(F77)],
849 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
850
851AC_PROVIDE_IFELSE([AC_PROG_FC],
852 [LT_LANG(FC)],
853 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
854
855dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
856dnl pulling things in needlessly.
857AC_PROVIDE_IFELSE([AC_PROG_GCJ],
858 [LT_LANG(GCJ)],
859 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
860 [LT_LANG(GCJ)],
861 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
862 [LT_LANG(GCJ)],
863 [m4_ifdef([AC_PROG_GCJ],
864 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
865 m4_ifdef([A][M_PROG_GCJ],
866 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
867 m4_ifdef([LT_PROG_GCJ],
868 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
869
870AC_PROVIDE_IFELSE([LT_PROG_RC],
871 [LT_LANG(RC)],
872 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
873])# _LT_LANG_DEFAULT_CONFIG
874
875# Obsolete macros:
876AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
877AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
878AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
879AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600880AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500881dnl aclocal-1.4 backwards compatibility:
882dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
883dnl AC_DEFUN([AC_LIBTOOL_F77], [])
884dnl AC_DEFUN([AC_LIBTOOL_FC], [])
885dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600886dnl AC_DEFUN([AC_LIBTOOL_RC], [])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500887
888
889# _LT_TAG_COMPILER
890# ----------------
891m4_defun([_LT_TAG_COMPILER],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600892[AC_REQUIRE([AC_PROG_CC])dnl
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600893
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500894_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
895_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
896_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
897_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
898
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600899# If no C compiler was specified, use CC.
900LTCC=${LTCC-"$CC"}
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600901
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600902# If no C compiler flags were specified, use CFLAGS.
903LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600904
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600905# Allow CC to be a program name with arguments.
906compiler=$CC
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500907])# _LT_TAG_COMPILER
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -0600908
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600909
910# _LT_COMPILER_BOILERPLATE
911# ------------------------
912# Check for compiler boilerplate output or warnings with
913# the simple compiler test code.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500914m4_defun([_LT_COMPILER_BOILERPLATE],
915[m4_require([_LT_DECL_SED])dnl
916ac_outfile=conftest.$ac_objext
917echo "$lt_simple_compile_test_code" >conftest.$ac_ext
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600918eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
919_lt_compiler_boilerplate=`cat conftest.err`
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500920$RM conftest*
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600921])# _LT_COMPILER_BOILERPLATE
922
923
924# _LT_LINKER_BOILERPLATE
925# ----------------------
926# Check for linker boilerplate output or warnings with
927# the simple link test code.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500928m4_defun([_LT_LINKER_BOILERPLATE],
929[m4_require([_LT_DECL_SED])dnl
930ac_outfile=conftest.$ac_objext
931echo "$lt_simple_link_test_code" >conftest.$ac_ext
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600932eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
933_lt_linker_boilerplate=`cat conftest.err`
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500934$RM -r conftest*
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600935])# _LT_LINKER_BOILERPLATE
936
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500937# _LT_REQUIRED_DARWIN_CHECKS
938# -------------------------
939m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
940 case $host_os in
941 rhapsody* | darwin*)
942 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
943 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
944 AC_CHECK_TOOL([LIPO], [lipo], [:])
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -0500945 AC_CHECK_TOOL([OTOOL], [otool], [:])
946 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500947 _LT_DECL([], [DSYMUTIL], [1],
948 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
949 _LT_DECL([], [NMEDIT], [1],
950 [Tool to change global to local symbols on Mac OS X])
951 _LT_DECL([], [LIPO], [1],
952 [Tool to manipulate fat objects and archives on Mac OS X])
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -0500953 _LT_DECL([], [OTOOL], [1],
954 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
955 _LT_DECL([], [OTOOL64], [1],
956 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -0600957
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -0500958 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
959 [lt_cv_apple_cc_single_mod=no
960 if test -z "${LT_MULTI_MODULE}"; then
961 # By default we will add the -single_module flag. You can override
962 # by either setting the environment variable LT_MULTI_MODULE
963 # non-empty at configure time, or by adding -multi_module to the
964 # link flags.
965 rm -rf libconftest.dylib*
966 echo "int foo(void){return 1;}" > conftest.c
967 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
968-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
969 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
970 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
971 _lt_result=$?
972 if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
973 lt_cv_apple_cc_single_mod=yes
974 else
975 cat conftest.err >&AS_MESSAGE_LOG_FD
976 fi
977 rm -rf libconftest.dylib*
978 rm -f conftest.*
979 fi])
980 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
981 [lt_cv_ld_exported_symbols_list],
982 [lt_cv_ld_exported_symbols_list=no
983 save_LDFLAGS=$LDFLAGS
984 echo "_main" > conftest.sym
985 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
986 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
987 [lt_cv_ld_exported_symbols_list=yes],
988 [lt_cv_ld_exported_symbols_list=no])
989 LDFLAGS="$save_LDFLAGS"
990 ])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -0600991 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
992 [lt_cv_ld_force_load=no
993 cat > conftest.c << _LT_EOF
994int forced_loaded() { return 2;}
995_LT_EOF
996 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
997 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
998 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
999 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1000 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1001 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1002 cat > conftest.c << _LT_EOF
1003int main() { return 0;}
1004_LT_EOF
1005 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1006 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1007 _lt_result=$?
1008 if test -f conftest && test ! -s conftest.err && test $_lt_result = 0 && $GREP forced_load conftest 2>&1 >/dev/null; then
1009 lt_cv_ld_force_load=yes
1010 else
1011 cat conftest.err >&AS_MESSAGE_LOG_FD
1012 fi
1013 rm -f conftest.err libconftest.a conftest conftest.c
1014 rm -rf conftest.dSYM
1015 ])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001016 case $host_os in
1017 rhapsody* | darwin1.[[012]])
1018 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
1019 darwin1.*)
1020 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05001021 darwin*) # darwin 5.x on
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001022 # if running on 10.5 or later, the deployment target defaults
1023 # to the OS version, if on x86, and 10.4, the deployment
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05001024 # target defaults to 10.4. Don't you love it?
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001025 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1026 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1027 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1028 10.[[012]]*)
1029 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1030 10.*)
1031 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1032 esac
1033 ;;
1034 esac
1035 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
1036 _lt_dar_single_mod='$single_module'
1037 fi
1038 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
1039 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
1040 else
1041 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
1042 fi
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001043 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001044 _lt_dsymutil='~$DSYMUTIL $lib || :'
1045 else
1046 _lt_dsymutil=
1047 fi
1048 ;;
1049 esac
1050])
1051
1052
1053# _LT_DARWIN_LINKER_FEATURES
1054# --------------------------
1055# Checks for linker and compiler features on darwin
1056m4_defun([_LT_DARWIN_LINKER_FEATURES],
1057[
1058 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1059 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1060 _LT_TAGVAR(hardcode_direct, $1)=no
1061 _LT_TAGVAR(hardcode_automatic, $1)=yes
1062 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001063 if test "$lt_cv_ld_force_load" = "yes"; then
1064 _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\"`'
1065 else
1066 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1067 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001068 _LT_TAGVAR(link_all_deplibs, $1)=yes
1069 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05001070 case $cc_basename in
1071 ifort*) _lt_dar_can_shared=yes ;;
1072 *) _lt_dar_can_shared=$GCC ;;
1073 esac
1074 if test "$_lt_dar_can_shared" = "yes"; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001075 output_verbose_link_cmd=func_echo_all
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001076 _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}"
1077 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1078 _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}"
1079 _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}"
1080 m4_if([$1], [CXX],
1081[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1082 _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}"
1083 _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}"
1084 fi
1085],[])
1086 else
1087 _LT_TAGVAR(ld_shlibs, $1)=no
1088 fi
1089])
1090
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001091# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1092# ----------------------------------
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001093# Links a minimal program and checks the executable
1094# for the system default hardcoded library path. In most cases,
1095# this is /usr/lib:/lib, but when the MPI compilers are used
1096# the location of the communication and MPI libs are included too.
1097# If we don't find anything, use the default library path according
1098# to the aix ld manual.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001099# Store the results from the different compilers for each TAGNAME.
1100# Allow to override them for all tags through lt_cv_aix_libpath.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001101m4_defun([_LT_SYS_MODULE_PATH_AIX],
1102[m4_require([_LT_DECL_SED])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001103if test "${lt_cv_aix_libpath+set}" = set; then
1104 aix_libpath=$lt_cv_aix_libpath
1105else
1106 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1107 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1108 lt_aix_libpath_sed='[
1109 /Import File Strings/,/^$/ {
1110 /^0/ {
1111 s/^0 *\([^ ]*\) *$/\1/
1112 p
1113 }
1114 }]'
1115 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1116 # Check for a 64-bit object if we didn't find anything.
1117 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1118 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1119 fi],[])
1120 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1121 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1122 fi
1123 ])
1124 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1125fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001126])# _LT_SYS_MODULE_PATH_AIX
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001127
1128
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001129# _LT_SHELL_INIT(ARG)
1130# -------------------
1131m4_define([_LT_SHELL_INIT],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001132[m4_divert_text([M4SH-INIT], [$1
1133])])# _LT_SHELL_INIT
1134
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001135
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001136
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001137# _LT_PROG_ECHO_BACKSLASH
1138# -----------------------
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001139# Find how we can fake an echo command that does not interpret backslash.
1140# In particular, with Autoconf 2.60 or later we add some code to the start
1141# of the generated configure script which will find a shell with a builtin
1142# printf (which we can use as an echo command).
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001143m4_defun([_LT_PROG_ECHO_BACKSLASH],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001144[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1145ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1146ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001147
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001148AC_MSG_CHECKING([how to print strings])
1149# Test print first, because it will be a builtin if present.
1150if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1151 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1152 ECHO='print -r --'
1153elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1154 ECHO='printf %s\n'
1155else
1156 # Use this function as a fallback that always works.
1157 func_fallback_echo ()
1158 {
1159 eval 'cat <<_LTECHO_EOF
1160$[]1
1161_LTECHO_EOF'
1162 }
1163 ECHO='func_fallback_echo'
1164fi
1165
1166# func_echo_all arg...
1167# Invoke $ECHO with all args, space-separated.
1168func_echo_all ()
1169{
1170 $ECHO "$*"
1171}
1172
1173case "$ECHO" in
1174 printf*) AC_MSG_RESULT([printf]) ;;
1175 print*) AC_MSG_RESULT([print -r]) ;;
1176 *) AC_MSG_RESULT([cat]) ;;
Glenn Randers-Pehrson110c9362010-10-04 17:42:14 -05001177esac
1178
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001179m4_ifdef([_AS_DETECT_SUGGESTED],
1180[_AS_DETECT_SUGGESTED([
1181 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1182 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1183 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1184 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1185 PATH=/empty FPATH=/empty; export PATH FPATH
1186 test "X`printf %s $ECHO`" = "X$ECHO" \
1187 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
Glenn Randers-Pehrson70c8d322010-08-17 13:19:56 -05001188
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001189_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001190_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001191])# _LT_PROG_ECHO_BACKSLASH
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001192
1193
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001194# _LT_WITH_SYSROOT
1195# ----------------
1196AC_DEFUN([_LT_WITH_SYSROOT],
1197[AC_MSG_CHECKING([for sysroot])
1198AC_ARG_WITH([sysroot],
1199[ --with-sysroot[=DIR] Search for dependent libraries within DIR
1200 (or the compiler's sysroot if not specified).],
1201[], [with_sysroot=no])
1202
1203dnl lt_sysroot will always be passed unquoted. We quote it here
1204dnl in case the user passed a directory name.
1205lt_sysroot=
1206case ${with_sysroot} in #(
1207 yes)
1208 if test "$GCC" = yes; then
1209 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1210 fi
1211 ;; #(
1212 /*)
1213 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1214 ;; #(
1215 no|'')
1216 ;; #(
1217 *)
1218 AC_MSG_RESULT([${with_sysroot}])
1219 AC_MSG_ERROR([The sysroot must be an absolute path.])
1220 ;;
1221esac
1222
1223 AC_MSG_RESULT([${lt_sysroot:-no}])
1224_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1225[dependent libraries, and in which our libraries should be installed.])])
1226
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001227# _LT_ENABLE_LOCK
1228# ---------------
1229m4_defun([_LT_ENABLE_LOCK],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001230[AC_ARG_ENABLE([libtool-lock],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001231 [AS_HELP_STRING([--disable-libtool-lock],
1232 [avoid locking (might break parallel builds)])])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001233test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1234
1235# Some flags need to be propagated to the compiler or linker for good
1236# libtool support.
1237case $host in
1238ia64-*-hpux*)
1239 # Find out which ABI we are using.
1240 echo 'int i;' > conftest.$ac_ext
1241 if AC_TRY_EVAL(ac_compile); then
1242 case `/usr/bin/file conftest.$ac_objext` in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001243 *ELF-32*)
1244 HPUX_IA64_MODE="32"
1245 ;;
1246 *ELF-64*)
1247 HPUX_IA64_MODE="64"
1248 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001249 esac
1250 fi
1251 rm -rf conftest*
1252 ;;
1253*-*-irix6*)
1254 # Find out which ABI we are using.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001255 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001256 if AC_TRY_EVAL(ac_compile); then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001257 if test "$lt_cv_prog_gnu_ld" = yes; then
1258 case `/usr/bin/file conftest.$ac_objext` in
1259 *32-bit*)
1260 LD="${LD-ld} -melf32bsmip"
1261 ;;
1262 *N32*)
1263 LD="${LD-ld} -melf32bmipn32"
1264 ;;
1265 *64-bit*)
1266 LD="${LD-ld} -melf64bmip"
1267 ;;
1268 esac
1269 else
1270 case `/usr/bin/file conftest.$ac_objext` in
1271 *32-bit*)
1272 LD="${LD-ld} -32"
1273 ;;
1274 *N32*)
1275 LD="${LD-ld} -n32"
1276 ;;
1277 *64-bit*)
1278 LD="${LD-ld} -64"
1279 ;;
1280 esac
1281 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001282 fi
1283 rm -rf conftest*
1284 ;;
1285
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001286x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1287s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001288 # Find out which ABI we are using.
1289 echo 'int i;' > conftest.$ac_ext
1290 if AC_TRY_EVAL(ac_compile); then
1291 case `/usr/bin/file conftest.o` in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001292 *32-bit*)
1293 case $host in
1294 x86_64-*kfreebsd*-gnu)
1295 LD="${LD-ld} -m elf_i386_fbsd"
1296 ;;
1297 x86_64-*linux*)
1298 LD="${LD-ld} -m elf_i386"
1299 ;;
1300 ppc64-*linux*|powerpc64-*linux*)
1301 LD="${LD-ld} -m elf32ppclinux"
1302 ;;
1303 s390x-*linux*)
1304 LD="${LD-ld} -m elf_s390"
1305 ;;
1306 sparc64-*linux*)
1307 LD="${LD-ld} -m elf32_sparc"
1308 ;;
1309 esac
1310 ;;
1311 *64-bit*)
1312 case $host in
1313 x86_64-*kfreebsd*-gnu)
1314 LD="${LD-ld} -m elf_x86_64_fbsd"
1315 ;;
1316 x86_64-*linux*)
1317 LD="${LD-ld} -m elf_x86_64"
1318 ;;
1319 ppc*-*linux*|powerpc*-*linux*)
1320 LD="${LD-ld} -m elf64ppc"
1321 ;;
1322 s390*-*linux*|s390*-*tpf*)
1323 LD="${LD-ld} -m elf64_s390"
1324 ;;
1325 sparc*-*linux*)
1326 LD="${LD-ld} -m elf64_sparc"
1327 ;;
1328 esac
1329 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001330 esac
1331 fi
1332 rm -rf conftest*
1333 ;;
1334
1335*-*-sco3.2v5*)
1336 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1337 SAVE_CFLAGS="$CFLAGS"
1338 CFLAGS="$CFLAGS -belf"
1339 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1340 [AC_LANG_PUSH(C)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001341 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001342 AC_LANG_POP])
1343 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1344 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1345 CFLAGS="$SAVE_CFLAGS"
1346 fi
1347 ;;
1348sparc*-*solaris*)
1349 # Find out which ABI we are using.
1350 echo 'int i;' > conftest.$ac_ext
1351 if AC_TRY_EVAL(ac_compile); then
1352 case `/usr/bin/file conftest.o` in
1353 *64-bit*)
1354 case $lt_cv_prog_gnu_ld in
1355 yes*) LD="${LD-ld} -m elf64_sparc" ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001356 *)
1357 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1358 LD="${LD-ld} -64"
1359 fi
1360 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001361 esac
1362 ;;
1363 esac
1364 fi
1365 rm -rf conftest*
1366 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001367esac
1368
1369need_locks="$enable_libtool_lock"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001370])# _LT_ENABLE_LOCK
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001371
1372
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001373# _LT_PROG_AR
1374# -----------
1375m4_defun([_LT_PROG_AR],
1376[AC_CHECK_TOOLS(AR, [ar], false)
1377: ${AR=ar}
1378: ${AR_FLAGS=cru}
1379_LT_DECL([], [AR], [1], [The archiver])
1380_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1381
1382AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1383 [lt_cv_ar_at_file=no
1384 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1385 [echo conftest.$ac_objext > conftest.lst
1386 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1387 AC_TRY_EVAL([lt_ar_try])
1388 if test "$ac_status" -eq 0; then
1389 # Ensure the archiver fails upon bogus file names.
1390 rm -f conftest.$ac_objext libconftest.a
1391 AC_TRY_EVAL([lt_ar_try])
1392 if test "$ac_status" -ne 0; then
1393 lt_cv_ar_at_file=@
1394 fi
1395 fi
1396 rm -f conftest.* libconftest.a
1397 ])
1398 ])
1399
1400if test "x$lt_cv_ar_at_file" = xno; then
1401 archiver_list_spec=
1402else
1403 archiver_list_spec=$lt_cv_ar_at_file
1404fi
1405_LT_DECL([], [archiver_list_spec], [1],
1406 [How to feed a file listing to the archiver])
1407])# _LT_PROG_AR
1408
1409
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001410# _LT_CMD_OLD_ARCHIVE
1411# -------------------
1412m4_defun([_LT_CMD_OLD_ARCHIVE],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001413[_LT_PROG_AR
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001414
1415AC_CHECK_TOOL(STRIP, strip, :)
1416test -z "$STRIP" && STRIP=:
1417_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1418
1419AC_CHECK_TOOL(RANLIB, ranlib, :)
1420test -z "$RANLIB" && RANLIB=:
1421_LT_DECL([], [RANLIB], [1],
1422 [Commands used to install an old-style archive])
1423
1424# Determine commands to create old-style static archives.
1425old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1426old_postinstall_cmds='chmod 644 $oldlib'
1427old_postuninstall_cmds=
1428
1429if test -n "$RANLIB"; then
1430 case $host_os in
1431 openbsd*)
1432 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
1433 ;;
1434 *)
1435 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
1436 ;;
1437 esac
1438 old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1439fi
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001440
1441case $host_os in
1442 darwin*)
1443 lock_old_archive_extraction=yes ;;
1444 *)
1445 lock_old_archive_extraction=no ;;
1446esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001447_LT_DECL([], [old_postinstall_cmds], [2])
1448_LT_DECL([], [old_postuninstall_cmds], [2])
1449_LT_TAGDECL([], [old_archive_cmds], [2],
1450 [Commands used to build an old-style archive])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001451_LT_DECL([], [lock_old_archive_extraction], [0],
1452 [Whether to use a lock for old archive extraction])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001453])# _LT_CMD_OLD_ARCHIVE
1454
1455
1456# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001457# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1458# ----------------------------------------------------------------
1459# Check whether the given compiler option works
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001460AC_DEFUN([_LT_COMPILER_OPTION],
1461[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1462m4_require([_LT_DECL_SED])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001463AC_CACHE_CHECK([$1], [$2],
1464 [$2=no
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001465 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1466 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001467 lt_compiler_flag="$3"
1468 # Insert the option either (1) after the last *FLAGS variable, or
1469 # (2) before a word containing "conftest.", or (3) at the end.
1470 # Note that $ac_compile itself does not contain backslashes and begins
1471 # with a dollar sign (not a hyphen), so the echo should work correctly.
1472 # The option is referenced via a variable to avoid confusing sed.
1473 lt_compile=`echo "$ac_compile" | $SED \
1474 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1475 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1476 -e 's:$: $lt_compiler_flag:'`
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001477 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001478 (eval "$lt_compile" 2>conftest.err)
1479 ac_status=$?
1480 cat conftest.err >&AS_MESSAGE_LOG_FD
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001481 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001482 if (exit $ac_status) && test -s "$ac_outfile"; then
1483 # The compiler can only warn and ignore the option if not recognized
1484 # So say no if there are warnings other than the usual output.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001485 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001486 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1487 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1488 $2=yes
1489 fi
1490 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001491 $RM conftest*
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001492])
1493
1494if test x"[$]$2" = xyes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001495 m4_if([$5], , :, [$5])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001496else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001497 m4_if([$6], , :, [$6])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001498fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001499])# _LT_COMPILER_OPTION
1500
1501# Old name:
1502AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1503dnl aclocal-1.4 backwards compatibility:
1504dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001505
1506
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001507# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1508# [ACTION-SUCCESS], [ACTION-FAILURE])
1509# ----------------------------------------------------
1510# Check whether the given linker option works
1511AC_DEFUN([_LT_LINKER_OPTION],
1512[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1513m4_require([_LT_DECL_SED])dnl
1514AC_CACHE_CHECK([$1], [$2],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001515 [$2=no
1516 save_LDFLAGS="$LDFLAGS"
1517 LDFLAGS="$LDFLAGS $3"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001518 echo "$lt_simple_link_test_code" > conftest.$ac_ext
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001519 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1520 # The linker can only warn and ignore the option if not recognized
1521 # So say no if there are warnings
1522 if test -s conftest.err; then
1523 # Append any errors to the config.log.
1524 cat conftest.err 1>&AS_MESSAGE_LOG_FD
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001525 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001526 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1527 if diff conftest.exp conftest.er2 >/dev/null; then
1528 $2=yes
1529 fi
1530 else
1531 $2=yes
1532 fi
1533 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001534 $RM -r conftest*
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001535 LDFLAGS="$save_LDFLAGS"
1536])
1537
1538if test x"[$]$2" = xyes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001539 m4_if([$4], , :, [$4])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001540else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001541 m4_if([$5], , :, [$5])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001542fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001543])# _LT_LINKER_OPTION
1544
1545# Old name:
1546AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1547dnl aclocal-1.4 backwards compatibility:
1548dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001549
1550
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001551# LT_CMD_MAX_LEN
1552#---------------
1553AC_DEFUN([LT_CMD_MAX_LEN],
1554[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1555# find the maximum length of command line arguments
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001556AC_MSG_CHECKING([the maximum length of command line arguments])
1557AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1558 i=0
1559 teststring="ABCD"
1560
1561 case $build_os in
1562 msdosdjgpp*)
1563 # On DJGPP, this test can blow up pretty badly due to problems in libc
1564 # (any single argument exceeding 2000 bytes causes a buffer overrun
1565 # during glob expansion). Even if it were fixed, the result of this
1566 # check would be larger than it should be.
1567 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1568 ;;
1569
1570 gnu*)
1571 # Under GNU Hurd, this test is not required because there is
1572 # no limit to the length of command line arguments.
1573 # Libtool will interpret -1 as no limit whatsoever
1574 lt_cv_sys_max_cmd_len=-1;
1575 ;;
1576
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05001577 cygwin* | mingw* | cegcc*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001578 # On Win9x/ME, this test blows up -- it succeeds, but takes
1579 # about 5 minutes as the teststring grows exponentially.
1580 # Worse, since 9x/ME are not pre-emptively multitasking,
1581 # you end up with a "frozen" computer, even though with patience
1582 # the test eventually succeeds (with a max line length of 256k).
1583 # Instead, let's just punt: use the minimum linelength reported by
1584 # all of the supported platforms: 8192 (on NT/2K/XP).
1585 lt_cv_sys_max_cmd_len=8192;
1586 ;;
1587
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001588 mint*)
1589 # On MiNT this can take a long time and run out of memory.
1590 lt_cv_sys_max_cmd_len=8192;
1591 ;;
1592
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001593 amigaos*)
1594 # On AmigaOS with pdksh, this test takes hours, literally.
1595 # So we just punt and use a minimum line length of 8192.
1596 lt_cv_sys_max_cmd_len=8192;
1597 ;;
1598
1599 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1600 # This has been around since 386BSD, at least. Likely further.
1601 if test -x /sbin/sysctl; then
1602 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1603 elif test -x /usr/sbin/sysctl; then
1604 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1605 else
1606 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1607 fi
1608 # And add a safety zone
1609 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1610 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1611 ;;
1612
1613 interix*)
1614 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1615 lt_cv_sys_max_cmd_len=196608
1616 ;;
1617
1618 osf*)
1619 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1620 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1621 # nice to cause kernel panics so lets avoid the loop below.
1622 # First set a reasonable default.
1623 lt_cv_sys_max_cmd_len=16384
1624 #
1625 if test -x /sbin/sysconfig; then
1626 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1627 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1628 esac
1629 fi
1630 ;;
1631 sco3.2v5*)
1632 lt_cv_sys_max_cmd_len=102400
1633 ;;
1634 sysv5* | sco5v6* | sysv4.2uw2*)
1635 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1636 if test -n "$kargmax"; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001637 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001638 else
1639 lt_cv_sys_max_cmd_len=32768
1640 fi
1641 ;;
1642 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001643 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1644 if test -n "$lt_cv_sys_max_cmd_len"; then
1645 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1646 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1647 else
1648 # Make teststring a little bigger before we do anything with it.
1649 # a 1K string should be a reasonable start.
1650 for i in 1 2 3 4 5 6 7 8 ; do
1651 teststring=$teststring$teststring
1652 done
1653 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1654 # If test is not a shell built-in, we'll probably end up computing a
1655 # maximum length that is only half of the actual maximum length, but
1656 # we can't tell.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001657 while { test "X"`func_fallback_echo "$teststring$teststring" 2>/dev/null` \
1658 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001659 test $i != 17 # 1/2 MB should be enough
1660 do
1661 i=`expr $i + 1`
1662 teststring=$teststring$teststring
1663 done
1664 # Only check the string length outside the loop.
1665 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1666 teststring=
1667 # Add a significant safety factor because C++ compilers can tack on
1668 # massive amounts of additional arguments before passing them to the
1669 # linker. It appears as though 1/2 is a usable value.
1670 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1671 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001672 ;;
1673 esac
1674])
1675if test -n $lt_cv_sys_max_cmd_len ; then
1676 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1677else
1678 AC_MSG_RESULT(none)
1679fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001680max_cmd_len=$lt_cv_sys_max_cmd_len
1681_LT_DECL([], [max_cmd_len], [0],
1682 [What is the maximum length of a command?])
1683])# LT_CMD_MAX_LEN
1684
1685# Old name:
1686AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1687dnl aclocal-1.4 backwards compatibility:
1688dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001689
1690
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001691# _LT_HEADER_DLFCN
1692# ----------------
1693m4_defun([_LT_HEADER_DLFCN],
1694[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1695])# _LT_HEADER_DLFCN
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001696
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001697
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001698# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1699# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1700# ----------------------------------------------------------------
1701m4_defun([_LT_TRY_DLOPEN_SELF],
1702[m4_require([_LT_HEADER_DLFCN])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001703if test "$cross_compiling" = yes; then :
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001704 [$4]
1705else
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001706 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1707 lt_status=$lt_dlunknown
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001708 cat > conftest.$ac_ext <<_LT_EOF
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001709[#line $LINENO "configure"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001710#include "confdefs.h"
1711
1712#if HAVE_DLFCN_H
1713#include <dlfcn.h>
1714#endif
1715
1716#include <stdio.h>
1717
1718#ifdef RTLD_GLOBAL
1719# define LT_DLGLOBAL RTLD_GLOBAL
1720#else
1721# ifdef DL_GLOBAL
1722# define LT_DLGLOBAL DL_GLOBAL
1723# else
1724# define LT_DLGLOBAL 0
1725# endif
1726#endif
1727
1728/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1729 find out it does not work in some platform. */
1730#ifndef LT_DLLAZY_OR_NOW
1731# ifdef RTLD_LAZY
1732# define LT_DLLAZY_OR_NOW RTLD_LAZY
1733# else
1734# ifdef DL_LAZY
1735# define LT_DLLAZY_OR_NOW DL_LAZY
1736# else
1737# ifdef RTLD_NOW
1738# define LT_DLLAZY_OR_NOW RTLD_NOW
1739# else
1740# ifdef DL_NOW
1741# define LT_DLLAZY_OR_NOW DL_NOW
1742# else
1743# define LT_DLLAZY_OR_NOW 0
1744# endif
1745# endif
1746# endif
1747# endif
1748#endif
1749
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001750/* When -fvisbility=hidden is used, assume the code has been annotated
1751 correspondingly for the symbols needed. */
1752#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1753int fnord () __attribute__((visibility("default")));
1754#endif
1755
1756int fnord () { return 42; }
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001757int main ()
1758{
1759 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1760 int status = $lt_dlunknown;
1761
1762 if (self)
1763 {
1764 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001765 else
1766 {
1767 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1768 else puts (dlerror ());
1769 }
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001770 /* dlclose (self); */
1771 }
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001772 else
1773 puts (dlerror ());
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001774
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05001775 return status;
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001776}]
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001777_LT_EOF
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001778 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001779 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001780 lt_status=$?
1781 case x$lt_status in
1782 x$lt_dlno_uscore) $1 ;;
1783 x$lt_dlneed_uscore) $2 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001784 x$lt_dlunknown|x*) $3 ;;
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001785 esac
1786 else :
1787 # compilation failed
1788 $3
1789 fi
1790fi
1791rm -fr conftest*
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001792])# _LT_TRY_DLOPEN_SELF
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001793
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001794
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001795# LT_SYS_DLOPEN_SELF
1796# ------------------
1797AC_DEFUN([LT_SYS_DLOPEN_SELF],
1798[m4_require([_LT_HEADER_DLFCN])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001799if test "x$enable_dlopen" != xyes; then
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001800 enable_dlopen=unknown
1801 enable_dlopen_self=unknown
1802 enable_dlopen_self_static=unknown
1803else
1804 lt_cv_dlopen=no
1805 lt_cv_dlopen_libs=
1806
1807 case $host_os in
1808 beos*)
1809 lt_cv_dlopen="load_add_on"
1810 lt_cv_dlopen_libs=
1811 lt_cv_dlopen_self=yes
1812 ;;
1813
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05001814 mingw* | pw32* | cegcc*)
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001815 lt_cv_dlopen="LoadLibrary"
1816 lt_cv_dlopen_libs=
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001817 ;;
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001818
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001819 cygwin*)
1820 lt_cv_dlopen="dlopen"
1821 lt_cv_dlopen_libs=
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001822 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001823
1824 darwin*)
1825 # if libdl is installed we need to link against it
1826 AC_CHECK_LIB([dl], [dlopen],
1827 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1828 lt_cv_dlopen="dyld"
1829 lt_cv_dlopen_libs=
1830 lt_cv_dlopen_self=yes
1831 ])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001832 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001833
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001834 *)
1835 AC_CHECK_FUNC([shl_load],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001836 [lt_cv_dlopen="shl_load"],
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001837 [AC_CHECK_LIB([dld], [shl_load],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001838 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001839 [AC_CHECK_FUNC([dlopen],
1840 [lt_cv_dlopen="dlopen"],
1841 [AC_CHECK_LIB([dl], [dlopen],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001842 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001843 [AC_CHECK_LIB([svld], [dlopen],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001844 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001845 [AC_CHECK_LIB([dld], [dld_link],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001846 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001847 ])
1848 ])
1849 ])
1850 ])
1851 ])
1852 ;;
1853 esac
1854
1855 if test "x$lt_cv_dlopen" != xno; then
1856 enable_dlopen=yes
1857 else
1858 enable_dlopen=no
1859 fi
1860
1861 case $lt_cv_dlopen in
1862 dlopen)
1863 save_CPPFLAGS="$CPPFLAGS"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001864 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1865
1866 save_LDFLAGS="$LDFLAGS"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001867 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001868
1869 save_LIBS="$LIBS"
1870 LIBS="$lt_cv_dlopen_libs $LIBS"
1871
1872 AC_CACHE_CHECK([whether a program can dlopen itself],
1873 lt_cv_dlopen_self, [dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001874 _LT_TRY_DLOPEN_SELF(
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001875 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1876 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1877 ])
1878
1879 if test "x$lt_cv_dlopen_self" = xyes; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001880 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001881 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001882 lt_cv_dlopen_self_static, [dnl
1883 _LT_TRY_DLOPEN_SELF(
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001884 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1885 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1886 ])
1887 fi
1888
1889 CPPFLAGS="$save_CPPFLAGS"
1890 LDFLAGS="$save_LDFLAGS"
1891 LIBS="$save_LIBS"
1892 ;;
1893 esac
1894
1895 case $lt_cv_dlopen_self in
1896 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1897 *) enable_dlopen_self=unknown ;;
1898 esac
1899
1900 case $lt_cv_dlopen_self_static in
1901 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1902 *) enable_dlopen_self_static=unknown ;;
1903 esac
1904fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001905_LT_DECL([dlopen_support], [enable_dlopen], [0],
1906 [Whether dlopen is supported])
1907_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1908 [Whether dlopen of programs is supported])
1909_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1910 [Whether dlopen of statically linked programs is supported])
1911])# LT_SYS_DLOPEN_SELF
1912
1913# Old name:
1914AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1915dnl aclocal-1.4 backwards compatibility:
1916dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001917
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001918
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001919# _LT_COMPILER_C_O([TAGNAME])
1920# ---------------------------
1921# Check to see if options -c and -o are simultaneously supported by compiler.
1922# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1923m4_defun([_LT_COMPILER_C_O],
1924[m4_require([_LT_DECL_SED])dnl
1925m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1926m4_require([_LT_TAG_COMPILER])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001927AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001928 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1929 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1930 $RM -r conftest 2>/dev/null
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001931 mkdir conftest
1932 cd conftest
1933 mkdir out
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001934 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001935
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001936 lt_compiler_flag="-o out/conftest2.$ac_objext"
1937 # Insert the option either (1) after the last *FLAGS variable, or
1938 # (2) before a word containing "conftest.", or (3) at the end.
1939 # Note that $ac_compile itself does not contain backslashes and begins
1940 # with a dollar sign (not a hyphen), so the echo should work correctly.
1941 lt_compile=`echo "$ac_compile" | $SED \
1942 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1943 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1944 -e 's:$: $lt_compiler_flag:'`
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001945 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001946 (eval "$lt_compile" 2>out/conftest.err)
1947 ac_status=$?
1948 cat out/conftest.err >&AS_MESSAGE_LOG_FD
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001949 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001950 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1951 then
1952 # The compiler can only warn and ignore the option if not recognized
1953 # So say no if there are warnings
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06001954 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001955 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1956 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001957 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001958 fi
1959 fi
1960 chmod u+w . 2>&AS_MESSAGE_LOG_FD
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001961 $RM conftest*
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001962 # SGI C++ compiler will create directory out/ii_files/ for
1963 # template instantiation
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001964 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
1965 $RM out/* && rmdir out
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001966 cd ..
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001967 $RM -r conftest
1968 $RM conftest*
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001969])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001970_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
1971 [Does compiler simultaneously support -c and -o options?])
1972])# _LT_COMPILER_C_O
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001973
1974
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001975# _LT_COMPILER_FILE_LOCKS([TAGNAME])
1976# ----------------------------------
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001977# Check to see if we can do hard links to lock some files if needed
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001978m4_defun([_LT_COMPILER_FILE_LOCKS],
1979[m4_require([_LT_ENABLE_LOCK])dnl
1980m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1981_LT_COMPILER_C_O([$1])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001982
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001983hard_links="nottested"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001984if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001985 # do not overwrite the value of need_locks provided by the user
1986 AC_MSG_CHECKING([if we can lock with hard links])
1987 hard_links=yes
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05001988 $RM conftest*
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001989 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1990 touch conftest.a
1991 ln conftest.a conftest.b 2>&5 || hard_links=no
1992 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1993 AC_MSG_RESULT([$hard_links])
1994 if test "$hard_links" = no; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06001995 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06001996 need_locks=warn
1997 fi
1998else
1999 need_locks=no
2000fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002001_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2002])# _LT_COMPILER_FILE_LOCKS
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002003
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002004
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002005# _LT_CHECK_OBJDIR
2006# ----------------
2007m4_defun([_LT_CHECK_OBJDIR],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002008[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2009[rm -f .libs 2>/dev/null
2010mkdir .libs 2>/dev/null
2011if test -d .libs; then
2012 lt_cv_objdir=.libs
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002013else
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002014 # MS-DOS does not allow filenames that begin with a dot.
2015 lt_cv_objdir=_libs
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002016fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002017rmdir .libs 2>/dev/null])
2018objdir=$lt_cv_objdir
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002019_LT_DECL([], [objdir], [0],
2020 [The name of the directory that contains temporary libtool files])dnl
2021m4_pattern_allow([LT_OBJDIR])dnl
2022AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2023 [Define to the sub-directory in which libtool stores uninstalled libraries.])
2024])# _LT_CHECK_OBJDIR
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002025
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002026
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002027# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2028# --------------------------------------
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002029# Check hardcoding attributes.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002030m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002031[AC_MSG_CHECKING([how to hardcode library paths into programs])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002032_LT_TAGVAR(hardcode_action, $1)=
2033if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2034 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2035 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002036
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002037 # We can hardcode non-existent directories.
2038 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002039 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2040 # have to relink, otherwise we might link with an installed library
2041 # when we should be linking with a yet-to-be-installed one
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002042 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2043 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002044 # Linking always hardcodes the temporary library directory.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002045 _LT_TAGVAR(hardcode_action, $1)=relink
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002046 else
2047 # We can link without hardcoding, and we can hardcode nonexisting dirs.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002048 _LT_TAGVAR(hardcode_action, $1)=immediate
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002049 fi
2050else
2051 # We cannot hardcode anything, or else we can only hardcode existing
2052 # directories.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002053 _LT_TAGVAR(hardcode_action, $1)=unsupported
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002054fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002055AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002056
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002057if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2058 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002059 # Fast installation is not supported
2060 enable_fast_install=no
2061elif test "$shlibpath_overrides_runpath" = yes ||
2062 test "$enable_shared" = no; then
2063 # Fast installation is not necessary
2064 enable_fast_install=needless
2065fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002066_LT_TAGDECL([], [hardcode_action], [0],
2067 [How to hardcode a shared library path into an executable])
2068])# _LT_LINKER_HARDCODE_LIBPATH
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002069
2070
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002071# _LT_CMD_STRIPLIB
2072# ----------------
2073m4_defun([_LT_CMD_STRIPLIB],
2074[m4_require([_LT_DECL_EGREP])
2075striplib=
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002076old_striplib=
2077AC_MSG_CHECKING([whether stripping libraries is possible])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002078if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002079 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2080 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2081 AC_MSG_RESULT([yes])
2082else
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002083# FIXME - insert some real tests, host_os isn't really good enough
2084 case $host_os in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002085 darwin*)
2086 if test -n "$STRIP" ; then
2087 striplib="$STRIP -x"
2088 old_striplib="$STRIP -S"
2089 AC_MSG_RESULT([yes])
2090 else
2091 AC_MSG_RESULT([no])
2092 fi
2093 ;;
2094 *)
2095 AC_MSG_RESULT([no])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002096 ;;
2097 esac
2098fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002099_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2100_LT_DECL([], [striplib], [1])
2101])# _LT_CMD_STRIPLIB
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002102
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002103
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002104# _LT_SYS_DYNAMIC_LINKER([TAG])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002105# -----------------------------
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002106# PORTME Fill in your ld.so characteristics
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002107m4_defun([_LT_SYS_DYNAMIC_LINKER],
2108[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2109m4_require([_LT_DECL_EGREP])dnl
2110m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05002111m4_require([_LT_DECL_OBJDUMP])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002112m4_require([_LT_DECL_SED])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002113m4_require([_LT_CHECK_SHELL_FEATURES])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002114AC_MSG_CHECKING([dynamic linker characteristics])
2115m4_if([$1],
2116 [], [
2117if test "$GCC" = yes; then
2118 case $host_os in
2119 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2120 *) lt_awk_arg="/^libraries:/" ;;
2121 esac
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002122 case $host_os in
2123 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2124 *) lt_sed_strip_eq="s,=/,/,g" ;;
2125 esac
2126 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2127 case $lt_search_path_spec in
2128 *\;*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002129 # if the path contains ";" then we assume it to be the separator
2130 # otherwise default to the standard path separator (i.e. ":") - it is
2131 # assumed that no part of a normal pathname contains ";" but that should
2132 # okay in the real world where ";" in dirpaths is itself problematic.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002133 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2134 ;;
2135 *)
2136 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2137 ;;
2138 esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002139 # Ok, now we have the path, separated by spaces, we can step through it
2140 # and add multilib dir if necessary.
2141 lt_tmp_lt_search_path_spec=
2142 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2143 for lt_sys_path in $lt_search_path_spec; do
2144 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2145 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2146 else
2147 test -d "$lt_sys_path" && \
2148 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2149 fi
2150 done
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002151 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002152BEGIN {RS=" "; FS="/|\n";} {
2153 lt_foo="";
2154 lt_count=0;
2155 for (lt_i = NF; lt_i > 0; lt_i--) {
2156 if ($lt_i != "" && $lt_i != ".") {
2157 if ($lt_i == "..") {
2158 lt_count++;
2159 } else {
2160 if (lt_count == 0) {
2161 lt_foo="/" $lt_i lt_foo;
2162 } else {
2163 lt_count--;
2164 }
2165 }
2166 }
2167 }
2168 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2169 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2170}'`
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002171 # AWK program above erroneously prepends '/' to C:/dos/paths
2172 # for these hosts.
2173 case $host_os in
2174 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2175 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2176 esac
2177 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002178else
2179 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2180fi])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002181library_names_spec=
2182libname_spec='lib$name'
2183soname_spec=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002184shrext_cmds=".so"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002185postinstall_cmds=
2186postuninstall_cmds=
2187finish_cmds=
2188finish_eval=
2189shlibpath_var=
2190shlibpath_overrides_runpath=unknown
2191version_type=none
2192dynamic_linker="$host_os ld.so"
2193sys_lib_dlsearch_path_spec="/lib /usr/lib"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002194need_lib_prefix=unknown
2195hardcode_into_libs=no
2196
2197# when you set need_version to no, make sure it does not cause -set_version
2198# flags to be left without arguments
2199need_version=unknown
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002200
2201case $host_os in
2202aix3*)
2203 version_type=linux
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002204 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002205 shlibpath_var=LIBPATH
2206
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002207 # AIX 3 has no versioning support, so we append a major version to the name.
2208 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002209 ;;
2210
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002211aix[[4-9]]*)
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002212 version_type=linux
2213 need_lib_prefix=no
2214 need_version=no
2215 hardcode_into_libs=yes
2216 if test "$host_cpu" = ia64; then
2217 # AIX 5 supports IA64
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002218 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002219 shlibpath_var=LD_LIBRARY_PATH
2220 else
2221 # With GCC up to 2.95.x, collect2 would create an import file
2222 # for dependence libraries. The import file would start with
2223 # the line `#! .'. This would cause the generated library to
2224 # depend on `.', always an invalid library. This was fixed in
2225 # development snapshots of GCC prior to 3.0.
2226 case $host_os in
2227 aix4 | aix4.[[01]] | aix4.[[01]].*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002228 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2229 echo ' yes '
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002230 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002231 :
2232 else
2233 can_build_shared=no
2234 fi
2235 ;;
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002236 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002237 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2238 # soname into executable. Probably we can add versioning support to
2239 # collect2, so additional links can be useful in future.
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002240 if test "$aix_use_runtimelinking" = yes; then
2241 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2242 # instead of lib<name>.a to let people know that these are not
2243 # typical AIX shared libraries.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002244 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002245 else
2246 # We preserve .a as extension for shared libraries through AIX4.2
2247 # and later when we are not doing run time linking.
2248 library_names_spec='${libname}${release}.a $libname.a'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002249 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002250 fi
2251 shlibpath_var=LIBPATH
2252 fi
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002253 ;;
2254
2255amigaos*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002256 case $host_cpu in
2257 powerpc)
2258 # Since July 2007 AmigaOS4 officially supports .so libraries.
2259 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2260 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2261 ;;
2262 m68k)
2263 library_names_spec='$libname.ixlibrary $libname.a'
2264 # Create ${libname}_ixlibrary.a entries in /sys/libs.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002265 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002266 ;;
2267 esac
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002268 ;;
2269
2270beos*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002271 library_names_spec='${libname}${shared_ext}'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002272 dynamic_linker="$host_os ld.so"
2273 shlibpath_var=LIBRARY_PATH
2274 ;;
2275
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002276bsdi[[45]]*)
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002277 version_type=linux
2278 need_version=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002279 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2280 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002281 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2282 shlibpath_var=LD_LIBRARY_PATH
2283 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2284 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002285 # the default ld.so.conf also contains /usr/contrib/lib and
2286 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2287 # libtool to hard-code these into programs
2288 ;;
2289
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05002290cygwin* | mingw* | pw32* | cegcc*)
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002291 version_type=windows
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002292 shrext_cmds=".dll"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002293 need_version=no
2294 need_lib_prefix=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002295
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002296 case $GCC,$cc_basename in
2297 yes,*)
2298 # gcc
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002299 library_names_spec='$libname.dll.a'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002300 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2301 postinstall_cmds='base_file=`basename \${file}`~
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002302 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002303 dldir=$destdir/`dirname \$dlpath`~
2304 test -d \$dldir || mkdir -p \$dldir~
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002305 $install_prog $dir/$dlname \$dldir/$dlname~
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002306 chmod a+x \$dldir/$dlname~
2307 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2308 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2309 fi'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002310 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002311 dlpath=$dir/\$dldll~
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002312 $RM \$dlpath'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002313 shlibpath_overrides_runpath=yes
2314
2315 case $host_os in
2316 cygwin*)
2317 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2318 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002319m4_if([$1], [],[
2320 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002321 ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05002322 mingw* | cegcc*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002323 # MinGW DLLs use traditional 'lib' prefix
2324 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002325 ;;
2326 pw32*)
2327 # pw32 DLLs use 'pw' prefix rather than 'lib'
2328 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2329 ;;
2330 esac
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002331 dynamic_linker='Win32 ld.exe'
2332 ;;
2333
2334 *,cl*)
2335 # Native MSVC
2336 libname_spec='$name'
2337 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2338 library_names_spec='${libname}.dll.lib'
2339
2340 case $build_os in
2341 mingw*)
2342 sys_lib_search_path_spec=
2343 lt_save_ifs=$IFS
2344 IFS=';'
2345 for lt_path in $LIB
2346 do
2347 IFS=$lt_save_ifs
2348 # Let DOS variable expansion print the short 8.3 style file name.
2349 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2350 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2351 done
2352 IFS=$lt_save_ifs
2353 # Convert to MSYS style.
2354 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2355 ;;
2356 cygwin*)
2357 # Convert to unix form, then to dos form, then back to unix form
2358 # but this time dos style (no spaces!) so that the unix form looks
2359 # like /cygdrive/c/PROGRA~1:/cygdr...
2360 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2361 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2362 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2363 ;;
2364 *)
2365 sys_lib_search_path_spec="$LIB"
2366 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2367 # It is most probably a Windows format PATH.
2368 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2369 else
2370 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2371 fi
2372 # FIXME: find the short name or the path components, as spaces are
2373 # common. (e.g. "Program Files" -> "PROGRA~1")
2374 ;;
2375 esac
2376
2377 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2378 postinstall_cmds='base_file=`basename \${file}`~
2379 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2380 dldir=$destdir/`dirname \$dlpath`~
2381 test -d \$dldir || mkdir -p \$dldir~
2382 $install_prog $dir/$dlname \$dldir/$dlname'
2383 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2384 dlpath=$dir/\$dldll~
2385 $RM \$dlpath'
2386 shlibpath_overrides_runpath=yes
2387 dynamic_linker='Win32 link.exe'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002388 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002389
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002390 *)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002391 # Assume MSVC wrapper
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002392 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002393 dynamic_linker='Win32 ld.exe'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002394 ;;
2395 esac
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002396 # FIXME: first we should search . and the directory the executable is in
2397 shlibpath_var=PATH
2398 ;;
2399
2400darwin* | rhapsody*)
2401 dynamic_linker="$host_os dyld"
2402 version_type=darwin
2403 need_lib_prefix=no
2404 need_version=no
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002405 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002406 soname_spec='${libname}${release}${major}$shared_ext'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002407 shlibpath_overrides_runpath=yes
2408 shlibpath_var=DYLD_LIBRARY_PATH
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002409 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002410m4_if([$1], [],[
2411 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002412 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2413 ;;
2414
2415dgux*)
2416 version_type=linux
2417 need_lib_prefix=no
2418 need_version=no
2419 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2420 soname_spec='${libname}${release}${shared_ext}$major'
2421 shlibpath_var=LD_LIBRARY_PATH
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002422 ;;
2423
2424freebsd1*)
2425 dynamic_linker=no
2426 ;;
2427
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002428freebsd* | dragonfly*)
2429 # DragonFly does not have aout. When/if they implement a new
2430 # versioning mechanism, adjust this.
2431 if test -x /usr/bin/objformat; then
2432 objformat=`/usr/bin/objformat`
2433 else
2434 case $host_os in
2435 freebsd[[123]]*) objformat=aout ;;
2436 *) objformat=elf ;;
2437 esac
2438 fi
Glenn Randers-Pehrsonb511b602006-04-16 19:45:31 -05002439 version_type=freebsd-$objformat
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002440 case $version_type in
2441 freebsd-elf*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002442 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002443 need_version=no
2444 need_lib_prefix=no
2445 ;;
2446 freebsd-*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002447 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002448 need_version=yes
2449 ;;
2450 esac
2451 shlibpath_var=LD_LIBRARY_PATH
2452 case $host_os in
2453 freebsd2*)
2454 shlibpath_overrides_runpath=yes
2455 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002456 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2457 shlibpath_overrides_runpath=yes
2458 hardcode_into_libs=yes
2459 ;;
2460 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2461 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002462 shlibpath_overrides_runpath=no
2463 hardcode_into_libs=yes
2464 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002465 *) # from 4.6 on, and DragonFly
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002466 shlibpath_overrides_runpath=yes
2467 hardcode_into_libs=yes
2468 ;;
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002469 esac
2470 ;;
2471
2472gnu*)
2473 version_type=linux
2474 need_lib_prefix=no
2475 need_version=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002476 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2477 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002478 shlibpath_var=LD_LIBRARY_PATH
2479 hardcode_into_libs=yes
2480 ;;
2481
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002482haiku*)
2483 version_type=linux
2484 need_lib_prefix=no
2485 need_version=no
2486 dynamic_linker="$host_os runtime_loader"
2487 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2488 soname_spec='${libname}${release}${shared_ext}$major'
2489 shlibpath_var=LIBRARY_PATH
2490 shlibpath_overrides_runpath=yes
2491 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2492 hardcode_into_libs=yes
2493 ;;
2494
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002495hpux9* | hpux10* | hpux11*)
2496 # Give a soname corresponding to the major version so that dld.sl refuses to
2497 # link against other versions.
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002498 version_type=sunos
2499 need_lib_prefix=no
2500 need_version=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002501 case $host_cpu in
2502 ia64*)
2503 shrext_cmds='.so'
2504 hardcode_into_libs=yes
2505 dynamic_linker="$host_os dld.so"
2506 shlibpath_var=LD_LIBRARY_PATH
2507 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2508 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2509 soname_spec='${libname}${release}${shared_ext}$major'
2510 if test "X$HPUX_IA64_MODE" = X32; then
2511 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2512 else
2513 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2514 fi
2515 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2516 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002517 hppa*64*)
2518 shrext_cmds='.sl'
2519 hardcode_into_libs=yes
2520 dynamic_linker="$host_os dld.sl"
2521 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2522 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2523 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2524 soname_spec='${libname}${release}${shared_ext}$major'
2525 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2526 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2527 ;;
2528 *)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002529 shrext_cmds='.sl'
2530 dynamic_linker="$host_os dld.sl"
2531 shlibpath_var=SHLIB_PATH
2532 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2533 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2534 soname_spec='${libname}${release}${shared_ext}$major'
2535 ;;
2536 esac
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002537 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002538 postinstall_cmds='chmod 555 $lib'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002539 # or fails outright, so override atomically:
2540 install_override_mode=555
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002541 ;;
2542
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002543interix[[3-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002544 version_type=linux
2545 need_lib_prefix=no
2546 need_version=no
2547 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2548 soname_spec='${libname}${release}${shared_ext}$major'
2549 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2550 shlibpath_var=LD_LIBRARY_PATH
2551 shlibpath_overrides_runpath=no
2552 hardcode_into_libs=yes
2553 ;;
2554
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002555irix5* | irix6* | nonstopux*)
2556 case $host_os in
2557 nonstopux*) version_type=nonstopux ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002558 *)
2559 if test "$lt_cv_prog_gnu_ld" = yes; then
2560 version_type=linux
2561 else
2562 version_type=irix
2563 fi ;;
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002564 esac
2565 need_lib_prefix=no
2566 need_version=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002567 soname_spec='${libname}${release}${shared_ext}$major'
2568 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002569 case $host_os in
2570 irix5* | nonstopux*)
2571 libsuff= shlibsuff=
2572 ;;
2573 *)
2574 case $LD in # libtool.m4 will add one of these switches to LD
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002575 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2576 libsuff= shlibsuff= libmagic=32-bit;;
2577 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2578 libsuff=32 shlibsuff=N32 libmagic=N32;;
2579 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2580 libsuff=64 shlibsuff=64 libmagic=64-bit;;
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002581 *) libsuff= shlibsuff= libmagic=never-match;;
2582 esac
2583 ;;
2584 esac
2585 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2586 shlibpath_overrides_runpath=no
2587 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2588 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002589 hardcode_into_libs=yes
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002590 ;;
2591
2592# No shared lib support for Linux oldld, aout, or coff.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002593linux*oldld* | linux*aout* | linux*coff*)
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002594 dynamic_linker=no
2595 ;;
2596
2597# This must be Linux ELF.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002598linux* | k*bsd*-gnu | kopensolaris*-gnu)
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002599 version_type=linux
2600 need_lib_prefix=no
2601 need_version=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002602 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2603 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002604 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2605 shlibpath_var=LD_LIBRARY_PATH
2606 shlibpath_overrides_runpath=no
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002607
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002608 # Some binutils ld are patched to set DT_RUNPATH
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002609 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2610 [lt_cv_shlibpath_overrides_runpath=no
2611 save_LDFLAGS=$LDFLAGS
2612 save_libdir=$libdir
2613 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2614 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2615 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2616 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2617 [lt_cv_shlibpath_overrides_runpath=yes])])
2618 LDFLAGS=$save_LDFLAGS
2619 libdir=$save_libdir
2620 ])
2621 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002622
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002623 # This implies no fast_install, which is unacceptable.
2624 # Some rework will be needed to allow for fast_install
2625 # before this can be enabled.
2626 hardcode_into_libs=yes
2627
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002628 # Append ld.so.conf contents to the search path
2629 if test -f /etc/ld.so.conf; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002630 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' ' '`
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002631 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2632 fi
2633
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002634 # We used to test for /lib/ld.so.1 and disable shared libraries on
2635 # powerpc, because MkLinux only supported shared libraries with the
2636 # GNU dynamic linker. Since this was broken with cross compilers,
2637 # most powerpc-linux boxes support dynamic linking these days and
2638 # people can always --disable-shared, the test was removed, and we
2639 # assume the GNU/Linux dynamic linker is in use.
2640 dynamic_linker='GNU/Linux ld.so'
2641 ;;
2642
2643netbsd*)
2644 version_type=sunos
2645 need_lib_prefix=no
2646 need_version=no
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002647 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002648 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002649 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2650 dynamic_linker='NetBSD (a.out) ld.so'
2651 else
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002652 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2653 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002654 dynamic_linker='NetBSD ld.elf_so'
2655 fi
2656 shlibpath_var=LD_LIBRARY_PATH
2657 shlibpath_overrides_runpath=yes
2658 hardcode_into_libs=yes
2659 ;;
2660
2661newsos6)
2662 version_type=linux
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002663 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2664 shlibpath_var=LD_LIBRARY_PATH
2665 shlibpath_overrides_runpath=yes
2666 ;;
2667
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002668*nto* | *qnx*)
2669 version_type=qnx
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002670 need_lib_prefix=no
2671 need_version=no
2672 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2673 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002674 shlibpath_var=LD_LIBRARY_PATH
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002675 shlibpath_overrides_runpath=no
2676 hardcode_into_libs=yes
2677 dynamic_linker='ldqnx.so'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002678 ;;
2679
2680openbsd*)
2681 version_type=sunos
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002682 sys_lib_dlsearch_path_spec="/usr/lib"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002683 need_lib_prefix=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002684 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2685 case $host_os in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002686 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2687 *) need_version=no ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002688 esac
2689 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2690 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2691 shlibpath_var=LD_LIBRARY_PATH
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002692 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002693 case $host_os in
2694 openbsd2.[[89]] | openbsd2.[[89]].*)
2695 shlibpath_overrides_runpath=no
2696 ;;
2697 *)
2698 shlibpath_overrides_runpath=yes
2699 ;;
2700 esac
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002701 else
2702 shlibpath_overrides_runpath=yes
2703 fi
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002704 ;;
2705
2706os2*)
2707 libname_spec='$name'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002708 shrext_cmds=".dll"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002709 need_lib_prefix=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002710 library_names_spec='$libname${shared_ext} $libname.a'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002711 dynamic_linker='OS/2 ld.exe'
2712 shlibpath_var=LIBPATH
2713 ;;
2714
2715osf3* | osf4* | osf5*)
2716 version_type=osf
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002717 need_lib_prefix=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002718 need_version=no
2719 soname_spec='${libname}${release}${shared_ext}$major'
2720 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002721 shlibpath_var=LD_LIBRARY_PATH
2722 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2723 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002724 ;;
2725
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002726rdos*)
2727 dynamic_linker=no
2728 ;;
2729
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002730solaris*)
2731 version_type=linux
2732 need_lib_prefix=no
2733 need_version=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002734 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2735 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002736 shlibpath_var=LD_LIBRARY_PATH
2737 shlibpath_overrides_runpath=yes
2738 hardcode_into_libs=yes
2739 # ldd complains unless libraries are executable
2740 postinstall_cmds='chmod +x $lib'
2741 ;;
2742
2743sunos4*)
2744 version_type=sunos
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002745 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002746 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2747 shlibpath_var=LD_LIBRARY_PATH
2748 shlibpath_overrides_runpath=yes
2749 if test "$with_gnu_ld" = yes; then
2750 need_lib_prefix=no
2751 fi
2752 need_version=yes
2753 ;;
2754
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002755sysv4 | sysv4.3*)
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002756 version_type=linux
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002757 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2758 soname_spec='${libname}${release}${shared_ext}$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002759 shlibpath_var=LD_LIBRARY_PATH
2760 case $host_vendor in
2761 sni)
2762 shlibpath_overrides_runpath=no
2763 need_lib_prefix=no
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002764 runpath_var=LD_RUN_PATH
2765 ;;
2766 siemens)
2767 need_lib_prefix=no
2768 ;;
2769 motorola)
2770 need_lib_prefix=no
2771 need_version=no
2772 shlibpath_overrides_runpath=no
2773 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2774 ;;
2775 esac
2776 ;;
2777
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002778sysv4*MP*)
2779 if test -d /usr/nec ;then
2780 version_type=linux
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002781 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2782 soname_spec='$libname${shared_ext}.$major'
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002783 shlibpath_var=LD_LIBRARY_PATH
2784 fi
2785 ;;
2786
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002787sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2788 version_type=freebsd-elf
2789 need_lib_prefix=no
2790 need_version=no
2791 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2792 soname_spec='${libname}${release}${shared_ext}$major'
2793 shlibpath_var=LD_LIBRARY_PATH
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002794 shlibpath_overrides_runpath=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002795 hardcode_into_libs=yes
2796 if test "$with_gnu_ld" = yes; then
2797 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002798 else
2799 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002800 case $host_os in
2801 sco3.2v5*)
2802 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2803 ;;
2804 esac
2805 fi
2806 sys_lib_dlsearch_path_spec='/usr/lib'
2807 ;;
2808
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002809tpf*)
2810 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
2811 version_type=linux
2812 need_lib_prefix=no
2813 need_version=no
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05002814 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002815 shlibpath_var=LD_LIBRARY_PATH
2816 shlibpath_overrides_runpath=no
2817 hardcode_into_libs=yes
2818 ;;
2819
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002820uts4*)
2821 version_type=linux
2822 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2823 soname_spec='${libname}${release}${shared_ext}$major'
2824 shlibpath_var=LD_LIBRARY_PATH
2825 ;;
2826
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06002827*)
2828 dynamic_linker=no
2829 ;;
2830esac
2831AC_MSG_RESULT([$dynamic_linker])
2832test "$dynamic_linker" = no && can_build_shared=no
2833
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002834variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2835if test "$GCC" = yes; then
2836 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2837fi
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05002838
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002839if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2840 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002841fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002842if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2843 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2844fi
2845
2846_LT_DECL([], [variables_saved_for_relink], [1],
2847 [Variables whose values should be saved in libtool wrapper scripts and
2848 restored at link time])
2849_LT_DECL([], [need_lib_prefix], [0],
2850 [Do we need the "lib" prefix for modules?])
2851_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2852_LT_DECL([], [version_type], [0], [Library versioning type])
2853_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2854_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2855_LT_DECL([], [shlibpath_overrides_runpath], [0],
2856 [Is shlibpath searched before the hard-coded library search path?])
2857_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2858_LT_DECL([], [library_names_spec], [1],
2859 [[List of archive names. First name is the real one, the rest are links.
2860 The last name is the one that the linker finds with -lNAME]])
2861_LT_DECL([], [soname_spec], [1],
2862 [[The coded name of the library, if different from the real name]])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002863_LT_DECL([], [install_override_mode], [1],
2864 [Permission mode override for installation of shared libraries])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002865_LT_DECL([], [postinstall_cmds], [2],
2866 [Command to use after installation of a shared archive])
2867_LT_DECL([], [postuninstall_cmds], [2],
2868 [Command to use after uninstallation of a shared archive])
2869_LT_DECL([], [finish_cmds], [2],
2870 [Commands used to finish a libtool library installation in a directory])
2871_LT_DECL([], [finish_eval], [1],
2872 [[As "finish_cmds", except a single script fragment to be evaled but
2873 not shown]])
2874_LT_DECL([], [hardcode_into_libs], [0],
2875 [Whether we should hardcode library paths into libraries])
2876_LT_DECL([], [sys_lib_search_path_spec], [2],
2877 [Compile-time system search path for libraries])
2878_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2879 [Run-time system search path for libraries])
2880])# _LT_SYS_DYNAMIC_LINKER
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002881
2882
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002883# _LT_PATH_TOOL_PREFIX(TOOL)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002884# --------------------------
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002885# find a file program which can recognize shared library
2886AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2887[m4_require([_LT_DECL_EGREP])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002888AC_MSG_CHECKING([for $1])
2889AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2890[case $MAGIC_CMD in
2891[[\\/*] | ?:[\\/]*])
2892 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2893 ;;
2894*)
2895 lt_save_MAGIC_CMD="$MAGIC_CMD"
2896 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2897dnl $ac_dummy forces splitting on constant user-supplied paths.
2898dnl POSIX.2 word splitting is done only on the output of word expansions,
2899dnl not every word. This closes a longstanding sh security hole.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002900 ac_dummy="m4_if([$2], , $PATH, [$2])"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002901 for ac_dir in $ac_dummy; do
2902 IFS="$lt_save_ifs"
2903 test -z "$ac_dir" && ac_dir=.
2904 if test -f $ac_dir/$1; then
2905 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2906 if test -n "$file_magic_test_file"; then
2907 case $deplibs_check_method in
2908 "file_magic "*)
2909 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2910 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2911 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2912 $EGREP "$file_magic_regex" > /dev/null; then
2913 :
2914 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002915 cat <<_LT_EOF 1>&2
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002916
2917*** Warning: the command libtool uses to detect shared libraries,
2918*** $file_magic_cmd, produces output that libtool cannot recognize.
2919*** The result is that libtool may fail to recognize shared libraries
2920*** as such. This will affect the creation of libtool libraries that
2921*** depend on shared libraries, but programs linked with such libtool
2922*** libraries will work regardless of this problem. Nevertheless, you
2923*** may want to report the problem to your system manager and/or to
2924*** bug-libtool@gnu.org
2925
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002926_LT_EOF
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002927 fi ;;
2928 esac
2929 fi
2930 break
2931 fi
2932 done
2933 IFS="$lt_save_ifs"
2934 MAGIC_CMD="$lt_save_MAGIC_CMD"
2935 ;;
2936esac])
2937MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2938if test -n "$MAGIC_CMD"; then
2939 AC_MSG_RESULT($MAGIC_CMD)
2940else
2941 AC_MSG_RESULT(no)
2942fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002943_LT_DECL([], [MAGIC_CMD], [0],
2944 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
2945])# _LT_PATH_TOOL_PREFIX
2946
2947# Old name:
2948AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
2949dnl aclocal-1.4 backwards compatibility:
2950dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002951
2952
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002953# _LT_PATH_MAGIC
2954# --------------
2955# find a file program which can recognize a shared library
2956m4_defun([_LT_PATH_MAGIC],
2957[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002958if test -z "$lt_cv_path_MAGIC_CMD"; then
2959 if test -n "$ac_tool_prefix"; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002960 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002961 else
2962 MAGIC_CMD=:
2963 fi
2964fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002965])# _LT_PATH_MAGIC
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002966
2967
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002968# LT_PATH_LD
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002969# ----------
2970# find the pathname to the GNU or non-GNU linker
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002971AC_DEFUN([LT_PATH_LD],
2972[AC_REQUIRE([AC_PROG_CC])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002973AC_REQUIRE([AC_CANONICAL_HOST])dnl
2974AC_REQUIRE([AC_CANONICAL_BUILD])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002975m4_require([_LT_DECL_SED])dnl
2976m4_require([_LT_DECL_EGREP])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06002977m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05002978
2979AC_ARG_WITH([gnu-ld],
2980 [AS_HELP_STRING([--with-gnu-ld],
2981 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
2982 [test "$withval" = no || with_gnu_ld=yes],
2983 [with_gnu_ld=no])dnl
2984
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06002985ac_prog=ld
2986if test "$GCC" = yes; then
2987 # Check if gcc -print-prog-name=ld gives a path.
2988 AC_MSG_CHECKING([for ld used by $CC])
2989 case $host in
2990 *-*-mingw*)
2991 # gcc leaves a trailing carriage return which upsets mingw
2992 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2993 *)
2994 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2995 esac
2996 case $ac_prog in
2997 # Accept absolute paths.
2998 [[\\/]]* | ?:[[\\/]]*)
2999 re_direlt='/[[^/]][[^/]]*/\.\./'
3000 # Canonicalize the pathname of ld
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003001 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3002 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3003 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003004 done
3005 test -z "$LD" && LD="$ac_prog"
3006 ;;
3007 "")
3008 # If it fails, then pretend we aren't using GCC.
3009 ac_prog=ld
3010 ;;
3011 *)
3012 # If it is relative, then search for the first ld in PATH.
3013 with_gnu_ld=unknown
3014 ;;
3015 esac
3016elif test "$with_gnu_ld" = yes; then
3017 AC_MSG_CHECKING([for GNU ld])
3018else
3019 AC_MSG_CHECKING([for non-GNU ld])
3020fi
3021AC_CACHE_VAL(lt_cv_path_LD,
3022[if test -z "$LD"; then
3023 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3024 for ac_dir in $PATH; do
3025 IFS="$lt_save_ifs"
3026 test -z "$ac_dir" && ac_dir=.
3027 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3028 lt_cv_path_LD="$ac_dir/$ac_prog"
3029 # Check to see if the program is GNU ld. I'd rather use --version,
3030 # but apparently some variants of GNU ld only accept -v.
3031 # Break only if it was the GNU/non-GNU ld that we prefer.
3032 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3033 *GNU* | *'with BFD'*)
3034 test "$with_gnu_ld" != no && break
3035 ;;
3036 *)
3037 test "$with_gnu_ld" != yes && break
3038 ;;
3039 esac
3040 fi
3041 done
3042 IFS="$lt_save_ifs"
3043else
3044 lt_cv_path_LD="$LD" # Let the user override the test with a path.
3045fi])
3046LD="$lt_cv_path_LD"
3047if test -n "$LD"; then
3048 AC_MSG_RESULT($LD)
3049else
3050 AC_MSG_RESULT(no)
3051fi
3052test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003053_LT_PATH_LD_GNU
3054AC_SUBST([LD])
3055
3056_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3057])# LT_PATH_LD
3058
3059# Old names:
3060AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3061AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3062dnl aclocal-1.4 backwards compatibility:
3063dnl AC_DEFUN([AM_PROG_LD], [])
3064dnl AC_DEFUN([AC_PROG_LD], [])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003065
3066
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003067# _LT_PATH_LD_GNU
3068#- --------------
3069m4_defun([_LT_PATH_LD_GNU],
3070[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003071[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3072case `$LD -v 2>&1 </dev/null` in
3073*GNU* | *'with BFD'*)
3074 lt_cv_prog_gnu_ld=yes
3075 ;;
3076*)
3077 lt_cv_prog_gnu_ld=no
3078 ;;
3079esac])
3080with_gnu_ld=$lt_cv_prog_gnu_ld
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003081])# _LT_PATH_LD_GNU
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003082
3083
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003084# _LT_CMD_RELOAD
3085# --------------
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003086# find reload flag for linker
3087# -- PORTME Some linkers may need a different reload flag.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003088m4_defun([_LT_CMD_RELOAD],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003089[AC_CACHE_CHECK([for $LD option to reload object files],
3090 lt_cv_ld_reload_flag,
3091 [lt_cv_ld_reload_flag='-r'])
3092reload_flag=$lt_cv_ld_reload_flag
3093case $reload_flag in
3094"" | " "*) ;;
3095*) reload_flag=" $reload_flag" ;;
3096esac
3097reload_cmds='$LD$reload_flag -o $output$reload_objs'
3098case $host_os in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003099 cygwin* | mingw* | pw32* | cegcc*)
3100 if test "$GCC" != yes; then
3101 reload_cmds=false
3102 fi
3103 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003104 darwin*)
3105 if test "$GCC" = yes; then
3106 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
3107 else
3108 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3109 fi
3110 ;;
3111esac
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003112_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3113_LT_TAGDECL([], [reload_cmds], [2])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003114])# _LT_CMD_RELOAD
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003115
3116
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003117# _LT_CHECK_MAGIC_METHOD
3118# ----------------------
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003119# how to check for library dependencies
3120# -- PORTME fill in with the dynamic library characteristics
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003121m4_defun([_LT_CHECK_MAGIC_METHOD],
3122[m4_require([_LT_DECL_EGREP])
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05003123m4_require([_LT_DECL_OBJDUMP])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003124AC_CACHE_CHECK([how to recognize dependent libraries],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003125lt_cv_deplibs_check_method,
3126[lt_cv_file_magic_cmd='$MAGIC_CMD'
3127lt_cv_file_magic_test_file=
3128lt_cv_deplibs_check_method='unknown'
3129# Need to set the preceding variable on all platforms that support
3130# interlibrary dependencies.
3131# 'none' -- dependencies not supported.
3132# `unknown' -- same as none, but documents that we really don't know.
3133# 'pass_all' -- all dependencies passed with no checks.
3134# 'test_compile' -- check by making test program.
3135# 'file_magic [[regex]]' -- check by looking for files in library path
3136# which responds to the $file_magic_cmd with a given extended regex.
3137# If you have `file' or equivalent on your system and you're not sure
3138# whether `pass_all' will *always* work, you probably want this one.
3139
3140case $host_os in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003141aix[[4-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003142 lt_cv_deplibs_check_method=pass_all
3143 ;;
3144
3145beos*)
3146 lt_cv_deplibs_check_method=pass_all
3147 ;;
3148
3149bsdi[[45]]*)
3150 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3151 lt_cv_file_magic_cmd='/usr/bin/file -L'
3152 lt_cv_file_magic_test_file=/shlib/libc.so
3153 ;;
3154
3155cygwin*)
3156 # func_win32_libid is a shell function defined in ltmain.sh
3157 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3158 lt_cv_file_magic_cmd='func_win32_libid'
3159 ;;
3160
3161mingw* | pw32*)
3162 # Base MSYS/MinGW do not provide the 'file' command needed by
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003163 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3164 # unless we find 'file', for example because we are cross-compiling.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003165 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3166 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003167 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3168 lt_cv_file_magic_cmd='func_win32_libid'
3169 else
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003170 # Keep this pattern in sync with the one in func_win32_libid.
3171 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003172 lt_cv_file_magic_cmd='$OBJDUMP -f'
3173 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003174 ;;
3175
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003176cegcc*)
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05003177 # use the weaker test based on 'objdump'. See mingw*.
3178 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3179 lt_cv_file_magic_cmd='$OBJDUMP -f'
3180 ;;
3181
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003182darwin* | rhapsody*)
3183 lt_cv_deplibs_check_method=pass_all
3184 ;;
3185
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003186freebsd* | dragonfly*)
3187 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003188 case $host_cpu in
3189 i*86 )
3190 # Not sure whether the presence of OpenBSD here was a mistake.
3191 # Let's accept both of them until this is cleared up.
3192 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3193 lt_cv_file_magic_cmd=/usr/bin/file
3194 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3195 ;;
3196 esac
3197 else
3198 lt_cv_deplibs_check_method=pass_all
3199 fi
3200 ;;
3201
3202gnu*)
3203 lt_cv_deplibs_check_method=pass_all
3204 ;;
3205
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003206haiku*)
3207 lt_cv_deplibs_check_method=pass_all
3208 ;;
3209
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003210hpux10.20* | hpux11*)
3211 lt_cv_file_magic_cmd=/usr/bin/file
3212 case $host_cpu in
3213 ia64*)
3214 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3215 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3216 ;;
3217 hppa*64*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003218 [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]']
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003219 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3220 ;;
3221 *)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003222 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003223 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3224 ;;
3225 esac
3226 ;;
3227
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003228interix[[3-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003229 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3230 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3231 ;;
3232
3233irix5* | irix6* | nonstopux*)
3234 case $LD in
3235 *-32|*"-32 ") libmagic=32-bit;;
3236 *-n32|*"-n32 ") libmagic=N32;;
3237 *-64|*"-64 ") libmagic=64-bit;;
3238 *) libmagic=never-match;;
3239 esac
3240 lt_cv_deplibs_check_method=pass_all
3241 ;;
3242
3243# This must be Linux ELF.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003244linux* | k*bsd*-gnu | kopensolaris*-gnu)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003245 lt_cv_deplibs_check_method=pass_all
3246 ;;
3247
3248netbsd*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003249 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003250 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3251 else
3252 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3253 fi
3254 ;;
3255
3256newos6*)
3257 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3258 lt_cv_file_magic_cmd=/usr/bin/file
3259 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3260 ;;
3261
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003262*nto* | *qnx*)
3263 lt_cv_deplibs_check_method=pass_all
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003264 ;;
3265
3266openbsd*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003267 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003268 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3269 else
3270 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3271 fi
3272 ;;
3273
3274osf3* | osf4* | osf5*)
3275 lt_cv_deplibs_check_method=pass_all
3276 ;;
3277
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003278rdos*)
3279 lt_cv_deplibs_check_method=pass_all
3280 ;;
3281
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003282solaris*)
3283 lt_cv_deplibs_check_method=pass_all
3284 ;;
3285
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003286sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3287 lt_cv_deplibs_check_method=pass_all
3288 ;;
3289
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003290sysv4 | sysv4.3*)
3291 case $host_vendor in
3292 motorola)
3293 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]]'
3294 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3295 ;;
3296 ncr)
3297 lt_cv_deplibs_check_method=pass_all
3298 ;;
3299 sequent)
3300 lt_cv_file_magic_cmd='/bin/file'
3301 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3302 ;;
3303 sni)
3304 lt_cv_file_magic_cmd='/bin/file'
3305 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3306 lt_cv_file_magic_test_file=/lib/libc.so
3307 ;;
3308 siemens)
3309 lt_cv_deplibs_check_method=pass_all
3310 ;;
3311 pc)
3312 lt_cv_deplibs_check_method=pass_all
3313 ;;
3314 esac
3315 ;;
3316
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003317tpf*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003318 lt_cv_deplibs_check_method=pass_all
3319 ;;
3320esac
3321])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003322
3323file_magic_glob=
3324want_nocaseglob=no
3325if test "$build" = "$host"; then
3326 case $host_os in
3327 mingw* | pw32*)
3328 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3329 want_nocaseglob=yes
3330 else
3331 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3332 fi
3333 ;;
3334 esac
3335fi
3336
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003337file_magic_cmd=$lt_cv_file_magic_cmd
3338deplibs_check_method=$lt_cv_deplibs_check_method
3339test -z "$deplibs_check_method" && deplibs_check_method=unknown
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003340
3341_LT_DECL([], [deplibs_check_method], [1],
3342 [Method to check whether dependent libraries are shared objects])
3343_LT_DECL([], [file_magic_cmd], [1],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003344 [Command to use when deplibs_check_method = "file_magic"])
3345_LT_DECL([], [file_magic_glob], [1],
3346 [How to find potential files when deplibs_check_method = "file_magic"])
3347_LT_DECL([], [want_nocaseglob], [1],
3348 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003349])# _LT_CHECK_MAGIC_METHOD
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003350
3351
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003352# LT_PATH_NM
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003353# ----------
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003354# find the pathname to a BSD- or MS-compatible name lister
3355AC_DEFUN([LT_PATH_NM],
3356[AC_REQUIRE([AC_PROG_CC])dnl
3357AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003358[if test -n "$NM"; then
3359 # Let the user override the test.
3360 lt_cv_path_NM="$NM"
3361else
3362 lt_nm_to_check="${ac_tool_prefix}nm"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003363 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003364 lt_nm_to_check="$lt_nm_to_check nm"
3365 fi
3366 for lt_tmp_nm in $lt_nm_to_check; do
3367 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3368 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3369 IFS="$lt_save_ifs"
3370 test -z "$ac_dir" && ac_dir=.
3371 tmp_nm="$ac_dir/$lt_tmp_nm"
3372 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3373 # Check to see if the nm accepts a BSD-compat flag.
3374 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3375 # nm: unknown option "B" ignored
3376 # Tru64's nm complains that /dev/null is an invalid object file
3377 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3378 */dev/null* | *'Invalid file or object type'*)
3379 lt_cv_path_NM="$tmp_nm -B"
3380 break
3381 ;;
3382 *)
3383 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3384 */dev/null*)
3385 lt_cv_path_NM="$tmp_nm -p"
3386 break
3387 ;;
3388 *)
3389 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3390 continue # so that we can try to find one that supports BSD flags
3391 ;;
3392 esac
3393 ;;
3394 esac
3395 fi
3396 done
3397 IFS="$lt_save_ifs"
3398 done
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003399 : ${lt_cv_path_NM=no}
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003400fi])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003401if test "$lt_cv_path_NM" != "no"; then
3402 NM="$lt_cv_path_NM"
3403else
3404 # Didn't find any BSD compatible name lister, look for dumpbin.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003405 if test -n "$DUMPBIN"; then :
3406 # Let the user override the test.
3407 else
3408 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3409 case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
3410 *COFF*)
3411 DUMPBIN="$DUMPBIN -symbols"
3412 ;;
3413 *)
3414 DUMPBIN=:
3415 ;;
3416 esac
3417 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003418 AC_SUBST([DUMPBIN])
3419 if test "$DUMPBIN" != ":"; then
3420 NM="$DUMPBIN"
3421 fi
3422fi
3423test -z "$NM" && NM=nm
3424AC_SUBST([NM])
3425_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3426
3427AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3428 [lt_cv_nm_interface="BSD nm"
3429 echo "int some_variable = 0;" > conftest.$ac_ext
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003430 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003431 (eval "$ac_compile" 2>conftest.err)
3432 cat conftest.err >&AS_MESSAGE_LOG_FD
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003433 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003434 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3435 cat conftest.err >&AS_MESSAGE_LOG_FD
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003436 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003437 cat conftest.out >&AS_MESSAGE_LOG_FD
3438 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3439 lt_cv_nm_interface="MS dumpbin"
3440 fi
3441 rm -f conftest*])
3442])# LT_PATH_NM
3443
3444# Old names:
3445AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3446AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3447dnl aclocal-1.4 backwards compatibility:
3448dnl AC_DEFUN([AM_PROG_NM], [])
3449dnl AC_DEFUN([AC_PROG_NM], [])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003450
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003451# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3452# --------------------------------
3453# how to determine the name of the shared library
3454# associated with a specific link library.
3455# -- PORTME fill in with the dynamic library characteristics
3456m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3457[m4_require([_LT_DECL_EGREP])
3458m4_require([_LT_DECL_OBJDUMP])
3459m4_require([_LT_DECL_DLLTOOL])
3460AC_CACHE_CHECK([how to associate runtime and link libraries],
3461lt_cv_sharedlib_from_linklib_cmd,
3462[lt_cv_sharedlib_from_linklib_cmd='unknown'
3463
3464case $host_os in
3465cygwin* | mingw* | pw32* | cegcc*)
3466 # two different shell functions defined in ltmain.sh
3467 # decide which to use based on capabilities of $DLLTOOL
3468 case `$DLLTOOL --help 2>&1` in
3469 *--identify-strict*)
3470 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3471 ;;
3472 *)
3473 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3474 ;;
3475 esac
3476 ;;
3477*)
3478 # fallback: assume linklib IS sharedlib
3479 lt_cv_sharedlib_from_linklib_cmd="$ECHO"
3480 ;;
3481esac
3482])
3483sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3484test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3485
3486_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3487 [Command to associate shared and link libraries])
3488])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3489
3490
3491# _LT_PATH_MANIFEST_TOOL
3492# ----------------------
3493# locate the manifest tool
3494m4_defun([_LT_PATH_MANIFEST_TOOL],
3495[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3496test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3497AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3498 [lt_cv_path_mainfest_tool=no
3499 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3500 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3501 cat conftest.err >&AS_MESSAGE_LOG_FD
3502 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3503 lt_cv_path_mainfest_tool=yes
3504 fi
3505 rm -f conftest*])
3506if test "x$lt_cv_path_mainfest_tool" != xyes; then
3507 MANIFEST_TOOL=:
3508fi
3509_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3510])# _LT_PATH_MANIFEST_TOOL
3511
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003512
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003513# LT_LIB_M
3514# --------
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003515# check for math library
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003516AC_DEFUN([LT_LIB_M],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003517[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3518LIBM=
3519case $host in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003520*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003521 # These system don't have libm, or don't need it
3522 ;;
3523*-ncr-sysv4.3*)
3524 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3525 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3526 ;;
3527*)
3528 AC_CHECK_LIB(m, cos, LIBM="-lm")
3529 ;;
3530esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003531AC_SUBST([LIBM])
3532])# LT_LIB_M
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003533
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003534# Old name:
3535AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3536dnl aclocal-1.4 backwards compatibility:
3537dnl AC_DEFUN([AC_CHECK_LIBM], [])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003538
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003539
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003540# _LT_COMPILER_NO_RTTI([TAGNAME])
3541# -------------------------------
3542m4_defun([_LT_COMPILER_NO_RTTI],
3543[m4_require([_LT_TAG_COMPILER])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003544
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003545_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003546
3547if test "$GCC" = yes; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003548 case $cc_basename in
3549 nvcc*)
3550 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3551 *)
3552 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3553 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003554
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003555 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003556 lt_cv_prog_compiler_rtti_exceptions,
3557 [-fno-rtti -fno-exceptions], [],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003558 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003559fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003560_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3561 [Compiler flag to turn off builtin functions])
3562])# _LT_COMPILER_NO_RTTI
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003563
3564
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003565# _LT_CMD_GLOBAL_SYMBOLS
3566# ----------------------
3567m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3568[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3569AC_REQUIRE([AC_PROG_CC])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003570AC_REQUIRE([AC_PROG_AWK])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003571AC_REQUIRE([LT_PATH_NM])dnl
3572AC_REQUIRE([LT_PATH_LD])dnl
3573m4_require([_LT_DECL_SED])dnl
3574m4_require([_LT_DECL_EGREP])dnl
3575m4_require([_LT_TAG_COMPILER])dnl
3576
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003577# Check for command to grab the raw symbol name followed by C symbol from nm.
3578AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3579AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3580[
3581# These are sane defaults that work on at least a few old systems.
3582# [They come from Ultrix. What could be older than Ultrix?!! ;)]
3583
3584# Character class describing NM global symbol codes.
3585symcode='[[BCDEGRST]]'
3586
3587# Regexp to match symbols that can be accessed directly from C.
3588sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3589
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003590# Define system-specific variables.
3591case $host_os in
3592aix*)
3593 symcode='[[BCDT]]'
3594 ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05003595cygwin* | mingw* | pw32* | cegcc*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003596 symcode='[[ABCDGISTW]]'
3597 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003598hpux*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003599 if test "$host_cpu" = ia64; then
3600 symcode='[[ABCDEGRST]]'
3601 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003602 ;;
3603irix* | nonstopux*)
3604 symcode='[[BCDEGRST]]'
3605 ;;
3606osf*)
3607 symcode='[[BCDEGQRST]]'
3608 ;;
3609solaris*)
3610 symcode='[[BDRT]]'
3611 ;;
3612sco3.2v5*)
3613 symcode='[[DT]]'
3614 ;;
3615sysv4.2uw2*)
3616 symcode='[[DT]]'
3617 ;;
3618sysv5* | sco5v6* | unixware* | OpenUNIX*)
3619 symcode='[[ABDT]]'
3620 ;;
3621sysv4)
3622 symcode='[[DFNSTU]]'
3623 ;;
3624esac
3625
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003626# If we're using GNU nm, then use its standard symbol codes.
3627case `$NM -V 2>&1` in
3628*GNU* | *'with BFD'*)
3629 symcode='[[ABCDGIRSTW]]' ;;
3630esac
3631
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003632# Transform an extracted symbol line into a proper C declaration.
3633# Some systems (esp. on ia64) link data and code symbols differently,
3634# so use this general approach.
3635lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3636
3637# Transform an extracted symbol line into symbol name and symbol address
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003638lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3639lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003640
3641# Handle CRLF in mingw tool chain
3642opt_cr=
3643case $build_os in
3644mingw*)
3645 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3646 ;;
3647esac
3648
3649# Try without a prefix underscore, then with it.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003650for ac_symprfx in "" "_"; do
3651
3652 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3653 symxfrm="\\1 $ac_symprfx\\2 \\2"
3654
3655 # Write the raw and C identifiers.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003656 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3657 # Fake it for dumpbin and say T for any non-static function
3658 # and D for any global variable.
3659 # Also find C++ and __fastcall symbols from MSVC++,
3660 # which start with @ or ?.
3661 lt_cv_sys_global_symbol_pipe="$AWK ['"\
3662" {last_section=section; section=\$ 3};"\
3663" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3664" \$ 0!~/External *\|/{next};"\
3665" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3666" {if(hide[section]) next};"\
3667" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3668" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3669" s[1]~/^[@?]/{print s[1], s[1]; next};"\
3670" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3671" ' prfx=^$ac_symprfx]"
3672 else
3673 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3674 fi
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003675 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003676
3677 # Check to see that the pipe works correctly.
3678 pipe_works=no
3679
3680 rm -f conftest*
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003681 cat > conftest.$ac_ext <<_LT_EOF
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003682#ifdef __cplusplus
3683extern "C" {
3684#endif
3685char nm_test_var;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003686void nm_test_func(void);
3687void nm_test_func(void){}
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003688#ifdef __cplusplus
3689}
3690#endif
3691int main(){nm_test_var='a';nm_test_func();return(0);}
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003692_LT_EOF
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003693
3694 if AC_TRY_EVAL(ac_compile); then
3695 # Now try to grab the symbols.
3696 nlist=conftest.nm
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003697 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003698 # Try sorting and uniquifying the output.
3699 if sort "$nlist" | uniq > "$nlist"T; then
3700 mv -f "$nlist"T "$nlist"
3701 else
3702 rm -f "$nlist"T
3703 fi
3704
3705 # Make sure that we snagged all the symbols we need.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003706 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3707 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3708 cat <<_LT_EOF > conftest.$ac_ext
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003709/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
3710#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
3711/* DATA imports from DLLs on WIN32 con't be const, because runtime
3712 relocations are performed -- see ld's documentation on pseudo-relocs. */
3713# define LT@&t@_DLSYM_CONST
3714#elif defined(__osf__)
3715/* This system does not cope well with relocations in const data. */
3716# define LT@&t@_DLSYM_CONST
3717#else
3718# define LT@&t@_DLSYM_CONST const
3719#endif
3720
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003721#ifdef __cplusplus
3722extern "C" {
3723#endif
3724
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003725_LT_EOF
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003726 # Now generate the symbol file.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003727 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003728
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003729 cat <<_LT_EOF >> conftest.$ac_ext
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003730
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003731/* The mapping between symbol names and symbols. */
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003732LT@&t@_DLSYM_CONST struct {
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003733 const char *name;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003734 void *address;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003735}
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003736lt__PROGRAM__LTX_preloaded_symbols[[]] =
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003737{
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003738 { "@PROGRAM@", (void *) 0 },
3739_LT_EOF
3740 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3741 cat <<\_LT_EOF >> conftest.$ac_ext
3742 {0, (void *) 0}
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003743};
3744
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003745/* This works around a problem in FreeBSD linker */
3746#ifdef FREEBSD_WORKAROUND
3747static const void *lt_preloaded_setup() {
3748 return lt__PROGRAM__LTX_preloaded_symbols;
3749}
3750#endif
3751
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003752#ifdef __cplusplus
3753}
3754#endif
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003755_LT_EOF
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003756 # Now try linking the two files.
3757 mv conftest.$ac_objext conftstm.$ac_objext
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003758 lt_globsym_save_LIBS=$LIBS
3759 lt_globsym_save_CFLAGS=$CFLAGS
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003760 LIBS="conftstm.$ac_objext"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003761 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003762 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3763 pipe_works=yes
3764 fi
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003765 LIBS=$lt_globsym_save_LIBS
3766 CFLAGS=$lt_globsym_save_CFLAGS
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003767 else
3768 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3769 fi
3770 else
3771 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3772 fi
3773 else
3774 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
3775 fi
3776 else
3777 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3778 cat conftest.$ac_ext >&5
3779 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003780 rm -rf conftest* conftst*
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003781
3782 # Do not use the global_symbol_pipe unless it works.
3783 if test "$pipe_works" = yes; then
3784 break
3785 else
3786 lt_cv_sys_global_symbol_pipe=
3787 fi
3788done
3789])
3790if test -z "$lt_cv_sys_global_symbol_pipe"; then
3791 lt_cv_sys_global_symbol_to_cdecl=
3792fi
3793if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3794 AC_MSG_RESULT(failed)
3795else
3796 AC_MSG_RESULT(ok)
3797fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003798
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003799# Response file support.
3800if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3801 nm_file_list_spec='@'
3802elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
3803 nm_file_list_spec='@'
3804fi
3805
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003806_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3807 [Take the output of nm and produce a listing of raw symbols and C names])
3808_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3809 [Transform the output of nm in a proper C declaration])
3810_LT_DECL([global_symbol_to_c_name_address],
3811 [lt_cv_sys_global_symbol_to_c_name_address], [1],
3812 [Transform the output of nm in a C name address pair])
3813_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3814 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3815 [Transform the output of nm in a C name address pair when lib prefix is needed])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003816_LT_DECL([], [nm_file_list_spec], [1],
3817 [Specify filename containing input files for $NM])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003818]) # _LT_CMD_GLOBAL_SYMBOLS
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003819
3820
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003821# _LT_COMPILER_PIC([TAGNAME])
3822# ---------------------------
3823m4_defun([_LT_COMPILER_PIC],
3824[m4_require([_LT_TAG_COMPILER])dnl
3825_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3826_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3827_LT_TAGVAR(lt_prog_compiler_static, $1)=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003828
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003829m4_if([$1], [CXX], [
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003830 # C++ specific cases for pic, static, wl, etc.
3831 if test "$GXX" = yes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003832 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3833 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003834
3835 case $host_os in
3836 aix*)
3837 # All AIX code is PIC.
3838 if test "$host_cpu" = ia64; then
3839 # AIX 5 now supports IA64 processor
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003840 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003841 fi
3842 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003843
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003844 amigaos*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003845 case $host_cpu in
3846 powerpc)
3847 # see comment about AmigaOS4 .so support
3848 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3849 ;;
3850 m68k)
3851 # FIXME: we need at least 68020 code to build shared libraries, but
3852 # adding the `-m68020' flag to GCC prevents building anything better,
3853 # like `-m68040'.
3854 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3855 ;;
3856 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003857 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003858
3859 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003860 # PIC is the default for these OSes.
3861 ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05003862 mingw* | cygwin* | os2* | pw32* | cegcc*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003863 # This hack is so that the source file can tell whether it is being
3864 # built for inclusion in a dll (and should export symbols for example).
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003865 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3866 # (--disable-auto-import) libraries
3867 m4_if([$1], [GCJ], [],
3868 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003869 ;;
3870 darwin* | rhapsody*)
3871 # PIC is the default on this platform
3872 # Common symbols not allowed in MH_DYLIB files
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003873 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003874 ;;
3875 *djgpp*)
3876 # DJGPP does not support shared libraries at all
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003877 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003878 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003879 haiku*)
3880 # PIC is the default for Haiku.
3881 # The "-static" flag exists, but is broken.
3882 _LT_TAGVAR(lt_prog_compiler_static, $1)=
3883 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003884 interix[[3-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003885 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3886 # Instead, we relocate shared libraries at runtime.
3887 ;;
3888 sysv4*MP*)
3889 if test -d /usr/nec; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003890 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003891 fi
3892 ;;
3893 hpux*)
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05003894 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3895 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3896 # sets the default TLS model and affects inlining.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003897 case $host_cpu in
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05003898 hppa*64*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003899 ;;
3900 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003901 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003902 ;;
3903 esac
3904 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003905 *qnx* | *nto*)
3906 # QNX uses GNU C++, but need to define -shared option too, otherwise
3907 # it will coredump.
3908 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3909 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003910 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003911 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003912 ;;
3913 esac
3914 else
3915 case $host_os in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003916 aix[[4-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003917 # All AIX code is PIC.
3918 if test "$host_cpu" = ia64; then
3919 # AIX 5 now supports IA64 processor
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003920 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003921 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003922 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003923 fi
3924 ;;
3925 chorus*)
3926 case $cc_basename in
3927 cxch68*)
3928 # Green Hills C++ Compiler
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003929 # _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"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003930 ;;
3931 esac
3932 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003933 mingw* | cygwin* | os2* | pw32* | cegcc*)
3934 # This hack is so that the source file can tell whether it is being
3935 # built for inclusion in a dll (and should export symbols for example).
3936 m4_if([$1], [GCJ], [],
3937 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3938 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003939 dgux*)
3940 case $cc_basename in
3941 ec++*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003942 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003943 ;;
3944 ghcx*)
3945 # Green Hills C++ Compiler
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003946 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003947 ;;
3948 *)
3949 ;;
3950 esac
3951 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003952 freebsd* | dragonfly*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003953 # FreeBSD uses GNU C++
3954 ;;
3955 hpux9* | hpux10* | hpux11*)
3956 case $cc_basename in
3957 CC*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003958 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3959 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003960 if test "$host_cpu" != ia64; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003961 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003962 fi
3963 ;;
3964 aCC*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003965 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3966 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003967 case $host_cpu in
3968 hppa*64*|ia64*)
3969 # +Z the default
3970 ;;
3971 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003972 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003973 ;;
3974 esac
3975 ;;
3976 *)
3977 ;;
3978 esac
3979 ;;
3980 interix*)
3981 # This is c89, which is MS Visual C++ (no shared libs)
3982 # Anyone wants to do a port?
3983 ;;
3984 irix5* | irix6* | nonstopux*)
3985 case $cc_basename in
3986 CC*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003987 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3988 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003989 # CC pic flag -KPIC is the default.
3990 ;;
3991 *)
3992 ;;
3993 esac
3994 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06003995 linux* | k*bsd*-gnu | kopensolaris*-gnu)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06003996 case $cc_basename in
3997 KCC*)
3998 # KAI C++ Compiler
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05003999 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4000 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004001 ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004002 ecpc* )
4003 # old Intel C++ for x86_64 which still supported -KPIC.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004004 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4005 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4006 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004007 ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004008 icpc* )
4009 # Intel C++, used to be incompatible with GCC.
4010 # ICC 10 doesn't accept -KPIC any more.
4011 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4012 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4013 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4014 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004015 pgCC* | pgcpp*)
4016 # Portland Group C++ compiler
4017 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4018 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4019 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004020 ;;
4021 cxx*)
4022 # Compaq C++
4023 # Make sure the PIC flag is empty. It appears that all Alpha
4024 # Linux and Compaq Tru64 Unix objects are PIC.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004025 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4026 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4027 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004028 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4029 # IBM XL 8.0, 9.0 on PPC and BlueGene
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004030 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4031 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4032 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004033 ;;
4034 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004035 case `$CC -V 2>&1 | sed 5q` in
4036 *Sun\ C*)
4037 # Sun C++ 5.9
4038 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4039 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4040 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4041 ;;
4042 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004043 ;;
4044 esac
4045 ;;
4046 lynxos*)
4047 ;;
4048 m88k*)
4049 ;;
4050 mvs*)
4051 case $cc_basename in
4052 cxx*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004053 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004054 ;;
4055 *)
4056 ;;
4057 esac
4058 ;;
4059 netbsd*)
4060 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004061 *qnx* | *nto*)
4062 # QNX uses GNU C++, but need to define -shared option too, otherwise
4063 # it will coredump.
4064 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4065 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004066 osf3* | osf4* | osf5*)
4067 case $cc_basename in
4068 KCC*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004069 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004070 ;;
4071 RCC*)
4072 # Rational C++ 2.4.1
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004073 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004074 ;;
4075 cxx*)
4076 # Digital/Compaq C++
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004077 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004078 # Make sure the PIC flag is empty. It appears that all Alpha
4079 # Linux and Compaq Tru64 Unix objects are PIC.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004080 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4081 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004082 ;;
4083 *)
4084 ;;
4085 esac
4086 ;;
4087 psos*)
4088 ;;
4089 solaris*)
4090 case $cc_basename in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004091 CC* | sunCC*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004092 # Sun C++ 4.2, 5.x and Centerline C++
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004093 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4094 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4095 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004096 ;;
4097 gcx*)
4098 # Green Hills C++ Compiler
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004099 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004100 ;;
4101 *)
4102 ;;
4103 esac
4104 ;;
4105 sunos4*)
4106 case $cc_basename in
4107 CC*)
4108 # Sun C++ 4.x
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004109 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4110 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004111 ;;
4112 lcc*)
4113 # Lucid
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004114 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004115 ;;
4116 *)
4117 ;;
4118 esac
4119 ;;
4120 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4121 case $cc_basename in
4122 CC*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004123 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4124 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4125 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4126 ;;
4127 esac
4128 ;;
4129 tandem*)
4130 case $cc_basename in
4131 NCC*)
4132 # NonStop-UX NCC 3.20
4133 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4134 ;;
4135 *)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004136 ;;
4137 esac
4138 ;;
4139 vxworks*)
4140 ;;
4141 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004142 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004143 ;;
4144 esac
4145 fi
4146],
4147[
4148 if test "$GCC" = yes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004149 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4150 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004151
4152 case $host_os in
4153 aix*)
4154 # All AIX code is PIC.
4155 if test "$host_cpu" = ia64; then
4156 # AIX 5 now supports IA64 processor
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004157 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004158 fi
4159 ;;
4160
4161 amigaos*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004162 case $host_cpu in
4163 powerpc)
4164 # see comment about AmigaOS4 .so support
4165 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4166 ;;
4167 m68k)
4168 # FIXME: we need at least 68020 code to build shared libraries, but
4169 # adding the `-m68020' flag to GCC prevents building anything better,
4170 # like `-m68040'.
4171 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4172 ;;
4173 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004174 ;;
4175
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004176 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004177 # PIC is the default for these OSes.
4178 ;;
4179
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004180 mingw* | cygwin* | pw32* | os2* | cegcc*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004181 # This hack is so that the source file can tell whether it is being
4182 # built for inclusion in a dll (and should export symbols for example).
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004183 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4184 # (--disable-auto-import) libraries
4185 m4_if([$1], [GCJ], [],
4186 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004187 ;;
4188
4189 darwin* | rhapsody*)
4190 # PIC is the default on this platform
4191 # Common symbols not allowed in MH_DYLIB files
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004192 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004193 ;;
4194
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004195 haiku*)
4196 # PIC is the default for Haiku.
4197 # The "-static" flag exists, but is broken.
4198 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4199 ;;
4200
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004201 hpux*)
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004202 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4203 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4204 # sets the default TLS model and affects inlining.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004205 case $host_cpu in
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004206 hppa*64*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004207 # +Z the default
4208 ;;
4209 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004210 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004211 ;;
4212 esac
4213 ;;
4214
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004215 interix[[3-9]]*)
4216 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4217 # Instead, we relocate shared libraries at runtime.
4218 ;;
4219
4220 msdosdjgpp*)
4221 # Just because we use GCC doesn't mean we suddenly get shared libraries
4222 # on systems that don't support them.
4223 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4224 enable_shared=no
4225 ;;
4226
4227 *nto* | *qnx*)
4228 # QNX uses GNU C++, but need to define -shared option too, otherwise
4229 # it will coredump.
4230 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4231 ;;
4232
4233 sysv4*MP*)
4234 if test -d /usr/nec; then
4235 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4236 fi
4237 ;;
4238
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004239 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004240 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004241 ;;
4242 esac
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004243
4244 case $cc_basename in
4245 nvcc*) # Cuda Compiler Driver 2.2
4246 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4247 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Xcompiler -fPIC'
4248 ;;
4249 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004250 else
4251 # PORTME Check for flag to pass linker flags through the system compiler.
4252 case $host_os in
4253 aix*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004254 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004255 if test "$host_cpu" = ia64; then
4256 # AIX 5 now supports IA64 processor
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004257 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004258 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004259 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004260 fi
4261 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004262
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004263 mingw* | cygwin* | pw32* | os2* | cegcc*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004264 # This hack is so that the source file can tell whether it is being
4265 # built for inclusion in a dll (and should export symbols for example).
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004266 m4_if([$1], [GCJ], [],
4267 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004268 ;;
4269
4270 hpux9* | hpux10* | hpux11*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004271 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004272 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4273 # not for PA HP-UX.
4274 case $host_cpu in
4275 hppa*64*|ia64*)
4276 # +Z the default
4277 ;;
4278 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004279 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004280 ;;
4281 esac
4282 # Is there a better lt_prog_compiler_static that works with the bundled CC?
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004283 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004284 ;;
4285
4286 irix5* | irix6* | nonstopux*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004287 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004288 # PIC (with -KPIC) is the default.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004289 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004290 ;;
4291
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004292 linux* | k*bsd*-gnu | kopensolaris*-gnu)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004293 case $cc_basename in
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004294 # old Intel for x86_64 which still supported -KPIC.
4295 ecc*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004296 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4297 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4298 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004299 ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004300 # icc used to be incompatible with GCC.
4301 # ICC 10 doesn't accept -KPIC any more.
4302 icc* | ifort*)
4303 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4304 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4305 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4306 ;;
4307 # Lahey Fortran 8.1.
4308 lf95*)
4309 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4310 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4311 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4312 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004313 nagfor*)
4314 # NAG Fortran compiler
4315 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4316 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4317 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4318 ;;
4319 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004320 # Portland Group compilers (*not* the Pentium gcc compiler,
4321 # which looks to be a dead project)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004322 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4323 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4324 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004325 ;;
4326 ccc*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004327 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004328 # All Alpha code is PIC.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004329 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004330 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004331 xl* | bgxl* | bgf* | mpixl*)
4332 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004333 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4334 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4335 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4336 ;;
4337 *)
4338 case `$CC -V 2>&1 | sed 5q` in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004339 *Sun\ F* | *Sun*Fortran*)
4340 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4341 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4342 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4343 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4344 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004345 *Sun\ C*)
4346 # Sun C 5.9
4347 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4348 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4349 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4350 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004351 esac
4352 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004353 esac
4354 ;;
4355
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004356 newsos6)
4357 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4358 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4359 ;;
4360
4361 *nto* | *qnx*)
4362 # QNX uses GNU C++, but need to define -shared option too, otherwise
4363 # it will coredump.
4364 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4365 ;;
4366
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004367 osf3* | osf4* | osf5*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004368 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004369 # All OSF/1 code is PIC.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004370 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4371 ;;
4372
4373 rdos*)
4374 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004375 ;;
4376
4377 solaris*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004378 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4379 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004380 case $cc_basename in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004381 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004382 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004383 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004384 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004385 esac
4386 ;;
4387
4388 sunos4*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004389 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4390 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4391 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004392 ;;
4393
4394 sysv4 | sysv4.2uw2* | sysv4.3*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004395 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4396 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4397 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004398 ;;
4399
4400 sysv4*MP*)
4401 if test -d /usr/nec ;then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004402 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4403 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004404 fi
4405 ;;
4406
4407 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004408 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4409 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4410 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004411 ;;
4412
4413 unicos*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004414 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4415 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004416 ;;
4417
4418 uts4*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004419 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4420 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004421 ;;
4422
4423 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004424 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004425 ;;
4426 esac
4427 fi
4428])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004429case $host_os in
4430 # For platforms which do not support PIC, -DPIC is meaningless:
4431 *djgpp*)
4432 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4433 ;;
4434 *)
4435 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4436 ;;
4437esac
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004438
4439AC_CACHE_CHECK([for $compiler option to produce PIC],
4440 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4441 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4442_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004443
4444#
4445# Check to make sure the PIC flag actually works.
4446#
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004447if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4448 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4449 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4450 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4451 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004452 "" | " "*) ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004453 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004454 esac],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004455 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4456 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004457fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004458_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4459 [Additional compiler flags for building library objects])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004460
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004461_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4462 [How to pass a linker flag through the compiler])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004463#
4464# Check to make sure the static flag actually works.
4465#
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004466wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4467_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4468 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004469 $lt_tmp_static_flag,
4470 [],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004471 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4472_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4473 [Compiler flag to prevent dynamic linking])
4474])# _LT_COMPILER_PIC
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004475
4476
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004477# _LT_LINKER_SHLIBS([TAGNAME])
4478# ----------------------------
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004479# See if the linker supports building shared libraries.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004480m4_defun([_LT_LINKER_SHLIBS],
4481[AC_REQUIRE([LT_PATH_LD])dnl
4482AC_REQUIRE([LT_PATH_NM])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004483m4_require([_LT_PATH_MANIFEST_TOOL])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004484m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4485m4_require([_LT_DECL_EGREP])dnl
4486m4_require([_LT_DECL_SED])dnl
4487m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4488m4_require([_LT_TAG_COMPILER])dnl
4489AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4490m4_if([$1], [CXX], [
4491 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004492 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06004493 case $host_os in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004494 aix[[4-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004495 # If we're using GNU nm, then we don't want the "-C" option.
4496 # -C means demangle to AIX nm, but means don't demangle with GNU nm
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004497 # Also, AIX nm treats weak defined symbols like other global defined
4498 # symbols, whereas GNU nm marks them as "W".
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004499 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004500 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004501 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004502 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004503 fi
4504 ;;
4505 pw32*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004506 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004507 ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004508 cygwin* | mingw* | cegcc*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004509 case $cc_basename in
4510 cl*) ;;
4511 *)
4512 _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'
4513 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4514 ;;
4515 esac
4516 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004517 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004518 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004519 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004520 esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004521], [
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004522 runpath_var=
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004523 _LT_TAGVAR(allow_undefined_flag, $1)=
4524 _LT_TAGVAR(always_export_symbols, $1)=no
4525 _LT_TAGVAR(archive_cmds, $1)=
4526 _LT_TAGVAR(archive_expsym_cmds, $1)=
4527 _LT_TAGVAR(compiler_needs_object, $1)=no
4528 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4529 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4530 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4531 _LT_TAGVAR(hardcode_automatic, $1)=no
4532 _LT_TAGVAR(hardcode_direct, $1)=no
4533 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4534 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4535 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
4536 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4537 _LT_TAGVAR(hardcode_minus_L, $1)=no
4538 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4539 _LT_TAGVAR(inherit_rpath, $1)=no
4540 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4541 _LT_TAGVAR(module_cmds, $1)=
4542 _LT_TAGVAR(module_expsym_cmds, $1)=
4543 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4544 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4545 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4546 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004547 # include_expsyms should be a list of space-separated symbols to be *always*
4548 # included in the symbol list
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004549 _LT_TAGVAR(include_expsyms, $1)=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004550 # exclude_expsyms can be an extended regexp of symbols to exclude
4551 # it will be wrapped by ` (' and `)$', so one must not match beginning or
4552 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4553 # as well as any symbol that contains `d'.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004554 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004555 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4556 # platforms (ab)use it in PIC code, but their linkers get confused if
4557 # the symbol is explicitly referenced. Since portable code cannot
4558 # rely on this symbol name, it's probably fine to never include it in
4559 # preloaded symbol tables.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004560 # Exclude shared library initialization/finalization symbols.
4561dnl Note also adjust exclude_expsyms for C++ above.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004562 extract_expsyms_cmds=
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004563
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004564 case $host_os in
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004565 cygwin* | mingw* | pw32* | cegcc*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004566 # FIXME: the MSVC++ port hasn't been tested in a loooong time
4567 # When not using gcc, we currently assume that we are using
4568 # Microsoft Visual C++.
4569 if test "$GCC" != yes; then
4570 with_gnu_ld=no
4571 fi
4572 ;;
4573 interix*)
4574 # we just hope/assume this is gcc and not c89 (= MSVC++)
4575 with_gnu_ld=yes
4576 ;;
4577 openbsd*)
4578 with_gnu_ld=no
4579 ;;
4580 esac
4581
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004582 _LT_TAGVAR(ld_shlibs, $1)=yes
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004583
4584 # On some targets, GNU ld is compatible enough with the native linker
4585 # that we're better off using the native interface for both.
4586 lt_use_gnu_ld_interface=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004587 if test "$with_gnu_ld" = yes; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004588 case $host_os in
4589 aix*)
4590 # The AIX port of GNU ld has always aspired to compatibility
4591 # with the native linker. However, as the warning in the GNU ld
4592 # block says, versions before 2.19.5* couldn't really create working
4593 # shared libraries, regardless of the interface used.
4594 case `$LD -v 2>&1` in
4595 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
4596 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
4597 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
4598 *)
4599 lt_use_gnu_ld_interface=yes
4600 ;;
4601 esac
4602 ;;
4603 *)
4604 lt_use_gnu_ld_interface=yes
4605 ;;
4606 esac
4607 fi
4608
4609 if test "$lt_use_gnu_ld_interface" = yes; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004610 # If archive_cmds runs LD, not CC, wlarc should be empty
4611 wlarc='${wl}'
4612
4613 # Set some defaults for GNU ld with shared library support. These
4614 # are reset later if shared libraries are not supported. Putting them
4615 # here allows them to be overridden if necessary.
4616 runpath_var=LD_RUN_PATH
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004617 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4618 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004619 # ancient GNU ld didn't support --whole-archive et. al.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004620 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4621 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4622 else
4623 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004624 fi
4625 supports_anon_versioning=no
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004626 case `$LD -v 2>&1` in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004627 *GNU\ gold*) supports_anon_versioning=yes ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004628 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4629 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4630 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4631 *\ 2.11.*) ;; # other 2.11 versions
4632 *) supports_anon_versioning=yes ;;
4633 esac
4634
4635 # See if GNU ld supports shared libraries.
4636 case $host_os in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004637 aix[[3-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004638 # On AIX/PPC, the GNU linker is very broken
4639 if test "$host_cpu" != ia64; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004640 _LT_TAGVAR(ld_shlibs, $1)=no
4641 cat <<_LT_EOF 1>&2
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004642
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004643*** Warning: the GNU linker, at least up to release 2.19, is reported
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004644*** to be unable to reliably create shared libraries on AIX.
4645*** Therefore, libtool is disabling shared libraries support. If you
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004646*** really care for shared libraries, you may want to install binutils
4647*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
4648*** You will then need to restart the configuration process.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004649
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004650_LT_EOF
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004651 fi
4652 ;;
4653
4654 amigaos*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004655 case $host_cpu in
4656 powerpc)
4657 # see comment about AmigaOS4 .so support
4658 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4659 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4660 ;;
4661 m68k)
4662 _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)'
4663 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4664 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4665 ;;
4666 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004667 ;;
4668
4669 beos*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004670 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4671 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004672 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4673 # support --undefined. This deserves some investigation. FIXME
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004674 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004675 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004676 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004677 fi
4678 ;;
4679
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004680 cygwin* | mingw* | pw32* | cegcc*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004681 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004682 # as there is no search path for DLLs.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004683 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004684 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004685 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4686 _LT_TAGVAR(always_export_symbols, $1)=no
4687 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004688 _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'
4689 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004690
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004691 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4692 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004693 # If the export-symbols file already is a .def file (1st line
4694 # is EXPORTS), use it as is; otherwise, prepend...
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004695 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004696 cp $export_symbols $output_objdir/$soname.def;
4697 else
4698 echo EXPORTS > $output_objdir/$soname.def;
4699 cat $export_symbols >> $output_objdir/$soname.def;
4700 fi~
4701 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4702 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004703 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004704 fi
4705 ;;
4706
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004707 haiku*)
4708 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4709 _LT_TAGVAR(link_all_deplibs, $1)=yes
4710 ;;
4711
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004712 interix[[3-9]]*)
4713 _LT_TAGVAR(hardcode_direct, $1)=no
4714 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4715 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4716 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004717 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4718 # Instead, shared libraries are loaded at an image base (0x10000000 by
4719 # default) and relocated if they conflict, which is a slow very memory
4720 # consuming and fragmenting process. To avoid this, we pick a random,
4721 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4722 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004723 _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'
4724 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004725 ;;
4726
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004727 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004728 tmp_diet=no
4729 if test "$host_os" = linux-dietlibc; then
4730 case $cc_basename in
4731 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
4732 esac
4733 fi
4734 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4735 && test "$tmp_diet" = no
4736 then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004737 tmp_addflag=' $pic_flag'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004738 tmp_sharedflag='-shared'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004739 case $cc_basename,$host_cpu in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004740 pgcc*) # Portland Group C compiler
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004741 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004742 tmp_addflag=' $pic_flag'
4743 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004744 pgf77* | pgf90* | pgf95* | pgfortran*)
4745 # Portland Group f77 and f90 compilers
4746 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004747 tmp_addflag=' $pic_flag -Mnomain' ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004748 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004749 tmp_addflag=' -i_dynamic' ;;
4750 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
4751 tmp_addflag=' -i_dynamic -nofor_main' ;;
4752 ifc* | ifort*) # Intel Fortran compiler
4753 tmp_addflag=' -nofor_main' ;;
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004754 lf95*) # Lahey Fortran 8.1
4755 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4756 tmp_sharedflag='--shared' ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004757 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004758 tmp_sharedflag='-qmkshrobj'
4759 tmp_addflag= ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004760 nvcc*) # Cuda Compiler Driver 2.2
4761 _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'
4762 _LT_TAGVAR(compiler_needs_object, $1)=yes
4763 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004764 esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004765 case `$CC -V 2>&1 | sed 5q` in
4766 *Sun\ C*) # Sun C 5.9
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004767 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004768 _LT_TAGVAR(compiler_needs_object, $1)=yes
4769 tmp_sharedflag='-G' ;;
4770 *Sun\ F*) # Sun Fortran 8.3
4771 tmp_sharedflag='-G' ;;
4772 esac
4773 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004774
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004775 if test "x$supports_anon_versioning" = xyes; then
4776 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4777 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4778 echo "local: *; };" >> $output_objdir/$libname.ver~
4779 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4780 fi
4781
4782 case $cc_basename in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004783 xlf* | bgf* | bgxlf* | mpixlf*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004784 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4785 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
4786 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4787 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004788 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004789 if test "x$supports_anon_versioning" = xyes; then
4790 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4791 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4792 echo "local: *; };" >> $output_objdir/$libname.ver~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004793 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004794 fi
4795 ;;
4796 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004797 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004798 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004799 fi
4800 ;;
4801
4802 netbsd*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004803 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4804 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004805 wlarc=
4806 else
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004807 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4808 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004809 fi
4810 ;;
4811
4812 solaris*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004813 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4814 _LT_TAGVAR(ld_shlibs, $1)=no
4815 cat <<_LT_EOF 1>&2
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004816
4817*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4818*** create shared libraries on Solaris systems. Therefore, libtool
4819*** is disabling shared libraries support. We urge you to upgrade GNU
4820*** binutils to release 2.9.1 or newer. Another option is to modify
4821*** your PATH or compiler configuration so that the native linker is
4822*** used, and then restart.
4823
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004824_LT_EOF
4825 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004826 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4827 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004828 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004829 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004830 fi
4831 ;;
4832
4833 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4834 case `$LD -v 2>&1` in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004835 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
4836 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004837 cat <<_LT_EOF 1>&2
4838
4839*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4840*** reliably create shared libraries on SCO systems. Therefore, libtool
4841*** is disabling shared libraries support. We urge you to upgrade GNU
4842*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
4843*** your PATH or compiler configuration so that the native linker is
4844*** used, and then restart.
4845
4846_LT_EOF
4847 ;;
4848 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004849 # For security reasons, it is highly recommended that you always
4850 # use absolute paths for naming shared libraries, and exclude the
4851 # DT_RUNPATH tag from executables and libraries. But doing so
4852 # requires that you compile everything twice, which is a pain.
4853 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4854 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4855 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4856 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004857 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004858 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004859 fi
4860 ;;
4861 esac
4862 ;;
4863
4864 sunos4*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004865 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004866 wlarc=
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004867 _LT_TAGVAR(hardcode_direct, $1)=yes
4868 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004869 ;;
4870
4871 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004872 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004873 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4874 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004875 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004876 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004877 fi
4878 ;;
4879 esac
4880
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004881 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004882 runpath_var=
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004883 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4884 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4885 _LT_TAGVAR(whole_archive_flag_spec, $1)=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004886 fi
4887 else
4888 # PORTME fill in a description of your system's linker (not GNU ld)
4889 case $host_os in
4890 aix3*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004891 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4892 _LT_TAGVAR(always_export_symbols, $1)=yes
4893 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004894 # Note: this linker hardcodes the directories in LIBPATH if there
4895 # are no directories specified by -L.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004896 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004897 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
4898 # Neither direct hardcoding nor static linking is supported with a
4899 # broken collect2.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004900 _LT_TAGVAR(hardcode_direct, $1)=unsupported
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004901 fi
4902 ;;
4903
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004904 aix[[4-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004905 if test "$host_cpu" = ia64; then
4906 # On IA64, the linker does run time linking by default, so we don't
4907 # have to do anything special.
4908 aix_use_runtimelinking=no
4909 exp_sym_flag='-Bexport'
4910 no_entry_flag=""
4911 else
4912 # If we're using GNU nm, then we don't want the "-C" option.
4913 # -C means demangle to AIX nm, but means don't demangle with GNU nm
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004914 # Also, AIX nm treats weak defined symbols like other global
4915 # defined symbols, whereas GNU nm marks them as "W".
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004916 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06004917 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004918 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004919 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004920 fi
4921 aix_use_runtimelinking=no
4922
4923 # Test if we are trying to use run time linking or normal
4924 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
4925 # need to do runtime linking.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004926 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004927 for ld_flag in $LDFLAGS; do
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004928 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
4929 aix_use_runtimelinking=yes
4930 break
4931 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004932 done
4933 ;;
4934 esac
4935
4936 exp_sym_flag='-bexport'
4937 no_entry_flag='-bnoentry'
4938 fi
4939
4940 # When large executables or shared objects are built, AIX ld can
4941 # have problems creating the table of contents. If linking a library
4942 # or program results in "error TOC overflow" add -mminimal-toc to
4943 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
4944 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
4945
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004946 _LT_TAGVAR(archive_cmds, $1)=''
4947 _LT_TAGVAR(hardcode_direct, $1)=yes
4948 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4949 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
4950 _LT_TAGVAR(link_all_deplibs, $1)=yes
4951 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004952
4953 if test "$GCC" = yes; then
4954 case $host_os in aix4.[[012]]|aix4.[[012]].*)
4955 # We only want to do this on AIX 4.2 and lower, the check
4956 # below for broken collect2 doesn't work under 4.3+
4957 collect2name=`${CC} -print-prog-name=collect2`
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004958 if test -f "$collect2name" &&
4959 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004960 then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004961 # We have reworked collect2
4962 :
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004963 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004964 # We have old collect2
4965 _LT_TAGVAR(hardcode_direct, $1)=unsupported
4966 # It fails to find uninstalled libraries when the uninstalled
4967 # path is not listed in the libpath. Setting hardcode_minus_L
4968 # to unsupported forces relinking
4969 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4970 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4971 _LT_TAGVAR(hardcode_libdir_separator, $1)=
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004972 fi
4973 ;;
4974 esac
4975 shared_flag='-shared'
4976 if test "$aix_use_runtimelinking" = yes; then
4977 shared_flag="$shared_flag "'${wl}-G'
4978 fi
4979 else
4980 # not using gcc
4981 if test "$host_cpu" = ia64; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004982 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
4983 # chokes on -Wl,-G. The following line is correct:
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004984 shared_flag='-G'
4985 else
4986 if test "$aix_use_runtimelinking" = yes; then
4987 shared_flag='${wl}-G'
4988 else
4989 shared_flag='${wl}-bM:SRE'
4990 fi
4991 fi
4992 fi
4993
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05004994 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004995 # It seems that -bexpall does not export symbols beginning with
4996 # underscore (_), so it is better to generate a list of symbols to export.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05004997 _LT_TAGVAR(always_export_symbols, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06004998 if test "$aix_use_runtimelinking" = yes; then
4999 # Warning - without using the other runtime loading flags (-brtl),
5000 # -berok will link without error, but may produce a broken library.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005001 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5002 # Determine the default libpath from the value encoded in an
5003 # empty executable.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005004 _LT_SYS_MODULE_PATH_AIX([$1])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005005 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005006 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005007 else
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005008 if test "$host_cpu" = ia64; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005009 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5010 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5011 _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"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005012 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005013 # Determine the default libpath from the value encoded in an
5014 # empty executable.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005015 _LT_SYS_MODULE_PATH_AIX([$1])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005016 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005017 # Warning - without using the other run time loading flags,
5018 # -berok will link without error, but may produce a broken library.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005019 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5020 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005021 if test "$with_gnu_ld" = yes; then
5022 # We only use this code for GNU lds that support --whole-archive.
5023 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5024 else
5025 # Exported symbols can be pulled into shared objects from archives
5026 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5027 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005028 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005029 # This is similar to how AIX traditionally builds its shared libraries.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005030 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005031 fi
5032 fi
5033 ;;
5034
5035 amigaos*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005036 case $host_cpu in
5037 powerpc)
5038 # see comment about AmigaOS4 .so support
5039 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5040 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5041 ;;
5042 m68k)
5043 _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)'
5044 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5045 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5046 ;;
5047 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005048 ;;
5049
5050 bsdi[[45]]*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005051 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005052 ;;
5053
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05005054 cygwin* | mingw* | pw32* | cegcc*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005055 # When not using gcc, we currently assume that we are using
5056 # Microsoft Visual C++.
5057 # hardcode_libdir_flag_spec is actually meaningless, as there is
5058 # no search path for DLLs.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005059 case $cc_basename in
5060 cl*)
5061 # Native MSVC
5062 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5063 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5064 _LT_TAGVAR(always_export_symbols, $1)=yes
5065 _LT_TAGVAR(file_list_spec, $1)='@'
5066 # Tell ltmain to make .lib files, not .a files.
5067 libext=lib
5068 # Tell ltmain to make .dll files, not .so files.
5069 shrext_cmds=".dll"
5070 # FIXME: Setting linknames here is a bad hack.
5071 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
5072 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5073 sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
5074 else
5075 sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
5076 fi~
5077 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5078 linknames='
5079 # The linker will not automatically build a static lib if we build a DLL.
5080 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5081 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5082 _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'
5083 # Don't use ranlib
5084 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5085 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5086 lt_tool_outputfile="@TOOL_OUTPUT@"~
5087 case $lt_outputfile in
5088 *.exe|*.EXE) ;;
5089 *)
5090 lt_outputfile="$lt_outputfile.exe"
5091 lt_tool_outputfile="$lt_tool_outputfile.exe"
5092 ;;
5093 esac~
5094 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
5095 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5096 $RM "$lt_outputfile.manifest";
5097 fi'
5098 ;;
5099 *)
5100 # Assume MSVC wrapper
5101 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5102 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5103 # Tell ltmain to make .lib files, not .a files.
5104 libext=lib
5105 # Tell ltmain to make .dll files, not .so files.
5106 shrext_cmds=".dll"
5107 # FIXME: Setting linknames here is a bad hack.
5108 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5109 # The linker will automatically build a .lib file if we build a DLL.
5110 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5111 # FIXME: Should let the user specify the lib program.
5112 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5113 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5114 ;;
5115 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005116 ;;
5117
5118 darwin* | rhapsody*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005119 _LT_DARWIN_LINKER_FEATURES($1)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005120 ;;
5121
5122 dgux*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005123 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5124 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5125 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005126 ;;
5127
5128 freebsd1*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005129 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005130 ;;
5131
5132 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5133 # support. Future versions do this automatically, but an explicit c++rt0.o
5134 # does not break anything, and helps significantly (at the cost of a little
5135 # extra space).
5136 freebsd2.2*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005137 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5138 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5139 _LT_TAGVAR(hardcode_direct, $1)=yes
5140 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005141 ;;
5142
5143 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5144 freebsd2*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005145 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5146 _LT_TAGVAR(hardcode_direct, $1)=yes
5147 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5148 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005149 ;;
5150
5151 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005152 freebsd* | dragonfly*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005153 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005154 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5155 _LT_TAGVAR(hardcode_direct, $1)=yes
5156 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005157 ;;
5158
5159 hpux9*)
5160 if test "$GCC" = yes; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005161 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005162 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005163 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005164 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005165 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5166 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5167 _LT_TAGVAR(hardcode_direct, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005168
5169 # hardcode_minus_L: Not really in the search PATH,
5170 # but as the default location of the library.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005171 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5172 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005173 ;;
5174
5175 hpux10*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005176 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5177 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005178 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005179 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005180 fi
5181 if test "$with_gnu_ld" = no; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005182 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5183 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
5184 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5185 _LT_TAGVAR(hardcode_direct, $1)=yes
5186 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5187 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005188 # hardcode_minus_L: Not really in the search PATH,
5189 # but as the default location of the library.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005190 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005191 fi
5192 ;;
5193
5194 hpux11*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005195 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005196 case $host_cpu in
5197 hppa*64*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005198 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005199 ;;
5200 ia64*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005201 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005202 ;;
5203 *)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005204 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005205 ;;
5206 esac
5207 else
5208 case $host_cpu in
5209 hppa*64*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005210 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005211 ;;
5212 ia64*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005213 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005214 ;;
5215 *)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005216 m4_if($1, [], [
5217 # Older versions of the 11.00 compiler do not understand -b yet
5218 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5219 _LT_LINKER_OPTION([if $CC understands -b],
5220 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5221 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5222 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5223 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005224 ;;
5225 esac
5226 fi
5227 if test "$with_gnu_ld" = no; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005228 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5229 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005230
5231 case $host_cpu in
5232 hppa*64*|ia64*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005233 _LT_TAGVAR(hardcode_direct, $1)=no
5234 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005235 ;;
5236 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005237 _LT_TAGVAR(hardcode_direct, $1)=yes
5238 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5239 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005240
5241 # hardcode_minus_L: Not really in the search PATH,
5242 # but as the default location of the library.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005243 _LT_TAGVAR(hardcode_minus_L, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005244 ;;
5245 esac
5246 fi
5247 ;;
5248
5249 irix5* | irix6* | nonstopux*)
5250 if test "$GCC" = yes; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005251 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005252 # Try to use the -exported_symbol ld option, if it does not
5253 # work, assume that -exports_file does not work either and
5254 # implicitly export all symbols.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005255 # This should be the same for all languages, so no per-tag cache variable.
5256 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5257 [lt_cv_irix_exported_symbol],
5258 [save_LDFLAGS="$LDFLAGS"
5259 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
5260 AC_LINK_IFELSE(
5261 [AC_LANG_SOURCE(
5262 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5263 [C++], [[int foo (void) { return 0; }]],
5264 [Fortran 77], [[
5265 subroutine foo
5266 end]],
5267 [Fortran], [[
5268 subroutine foo
5269 end]])])],
5270 [lt_cv_irix_exported_symbol=yes],
5271 [lt_cv_irix_exported_symbol=no])
5272 LDFLAGS="$save_LDFLAGS"])
5273 if test "$lt_cv_irix_exported_symbol" = yes; then
5274 _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'
5275 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005276 else
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005277 _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'
5278 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005279 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005280 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5281 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5282 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5283 _LT_TAGVAR(inherit_rpath, $1)=yes
5284 _LT_TAGVAR(link_all_deplibs, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005285 ;;
5286
5287 netbsd*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005288 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5289 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005290 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005291 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005292 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005293 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5294 _LT_TAGVAR(hardcode_direct, $1)=yes
5295 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005296 ;;
5297
5298 newsos6)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005299 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5300 _LT_TAGVAR(hardcode_direct, $1)=yes
5301 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5302 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5303 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5304 ;;
5305
5306 *nto* | *qnx*)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005307 ;;
5308
5309 openbsd*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005310 if test -f /usr/libexec/ld.so; then
5311 _LT_TAGVAR(hardcode_direct, $1)=yes
5312 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5313 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5314 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
5315 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5316 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
5317 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5318 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5319 else
5320 case $host_os in
5321 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
5322 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5323 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5324 ;;
5325 *)
5326 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5327 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5328 ;;
5329 esac
5330 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005331 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005332 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005333 fi
5334 ;;
5335
5336 os2*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005337 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5338 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5339 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005340 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005341 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005342 ;;
5343
5344 osf3*)
5345 if test "$GCC" = yes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005346 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005347 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005348 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005349 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005350 _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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005351 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005352 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5353 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5354 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005355 ;;
5356
5357 osf4* | osf5*) # as osf3* with the addition of -msym flag
5358 if test "$GCC" = yes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005359 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005360 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005361 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005362 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005363 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005364 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005365 _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~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005366 $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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005367
5368 # Both c and cxx compiler support -rpath directly
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005369 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005370 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005371 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5372 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005373 ;;
5374
5375 solaris*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005376 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005377 if test "$GCC" = yes; then
5378 wlarc='${wl}'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005379 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005380 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005381 $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'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005382 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005383 case `$CC -V 2>&1` in
5384 *"Compilers 5.0"*)
5385 wlarc=''
5386 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5387 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5388 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5389 ;;
5390 *)
5391 wlarc='${wl}'
5392 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5393 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5394 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5395 ;;
5396 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005397 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005398 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5399 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005400 case $host_os in
5401 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5402 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005403 # The compiler driver will combine and reorder linker options,
5404 # but understands `-z linker_flag'. GCC discards it without `$wl',
5405 # but is careful enough not to reorder.
5406 # Supported since Solaris 2.6 (maybe 2.5.1?)
5407 if test "$GCC" = yes; then
5408 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
5409 else
5410 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5411 fi
5412 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005413 esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005414 _LT_TAGVAR(link_all_deplibs, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005415 ;;
5416
5417 sunos4*)
5418 if test "x$host_vendor" = xsequent; then
5419 # Use $CC to link under sequent, because it throws in some extra .o
5420 # files that make .init and .fini sections work.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005421 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005422 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005423 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005424 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005425 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5426 _LT_TAGVAR(hardcode_direct, $1)=yes
5427 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5428 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005429 ;;
5430
5431 sysv4)
5432 case $host_vendor in
5433 sni)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005434 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5435 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005436 ;;
5437 siemens)
5438 ## LD is ld it makes a PLAMLIB
5439 ## CC just makes a GrossModule.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005440 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5441 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5442 _LT_TAGVAR(hardcode_direct, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005443 ;;
5444 motorola)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005445 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5446 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005447 ;;
5448 esac
5449 runpath_var='LD_RUN_PATH'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005450 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005451 ;;
5452
5453 sysv4.3*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005454 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5455 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5456 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005457 ;;
5458
5459 sysv4*MP*)
5460 if test -d /usr/nec; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005461 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5462 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005463 runpath_var=LD_RUN_PATH
5464 hardcode_runpath_var=yes
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005465 _LT_TAGVAR(ld_shlibs, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005466 fi
5467 ;;
5468
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005469 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
5470 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5471 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5472 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005473 runpath_var='LD_RUN_PATH'
5474
5475 if test "$GCC" = yes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005476 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5477 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005478 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005479 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5480 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005481 fi
5482 ;;
5483
5484 sysv5* | sco3.2v5* | sco5v6*)
5485 # Note: We can NOT use -z defs as we might desire, because we do not
5486 # link with -lc, and that would cause any symbols used from libc to
5487 # always be unresolved, which means just about no library would
5488 # ever link correctly. If we're not using GNU ld we use -z text
5489 # though, which does catch some bad symbols but isn't as heavy-handed
5490 # as -z defs.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005491 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5492 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5493 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5494 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5495 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5496 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5497 _LT_TAGVAR(link_all_deplibs, $1)=yes
5498 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005499 runpath_var='LD_RUN_PATH'
5500
5501 if test "$GCC" = yes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005502 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5503 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005504 else
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005505 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5506 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005507 fi
5508 ;;
5509
5510 uts4*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005511 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5512 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5513 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005514 ;;
5515
5516 *)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005517 _LT_TAGVAR(ld_shlibs, $1)=no
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005518 ;;
5519 esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005520
5521 if test x$host_vendor = xsni; then
5522 case $host in
5523 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5524 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5525 ;;
5526 esac
5527 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005528 fi
5529])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005530AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5531test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
5532
5533_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
5534
5535_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5536_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5537_LT_DECL([], [extract_expsyms_cmds], [2],
5538 [The commands to extract the exported symbol list from a shared archive])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005539
5540#
5541# Do we need to explicitly link libc?
5542#
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005543case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005544x|xyes)
5545 # Assume -lc should be added
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005546 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005547
5548 if test "$enable_shared" = yes && test "$GCC" = yes; then
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005549 case $_LT_TAGVAR(archive_cmds, $1) in
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005550 *'~'*)
5551 # FIXME: we may have to deal with multi-command sequences.
5552 ;;
5553 '$CC '*)
5554 # Test whether the compiler implicitly links with -lc since on some
5555 # systems, -lgcc has to come before -lc. If gcc already passes -lc
5556 # to ld, don't add -lc before -lgcc.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005557 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
5558 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
5559 [$RM conftest*
5560 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005561
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005562 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5563 soname=conftest
5564 lib=conftest
5565 libobjs=conftest.$ac_objext
5566 deplibs=
5567 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5568 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5569 compiler_flags=-v
5570 linker_flags=-v
5571 verstring=
5572 output_objdir=.
5573 libname=conftest
5574 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5575 _LT_TAGVAR(allow_undefined_flag, $1)=
5576 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5577 then
5578 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5579 else
5580 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5581 fi
5582 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5583 else
5584 cat conftest.err 1>&5
5585 fi
5586 $RM conftest*
5587 ])
5588 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005589 ;;
5590 esac
5591 fi
5592 ;;
5593esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005594
5595_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5596 [Whether or not to add -lc for building shared libraries])
5597_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5598 [enable_shared_with_static_runtimes], [0],
5599 [Whether or not to disallow shared libs when runtime libs are static])
5600_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5601 [Compiler flag to allow reflexive dlopens])
5602_LT_TAGDECL([], [whole_archive_flag_spec], [1],
5603 [Compiler flag to generate shared objects directly from archives])
5604_LT_TAGDECL([], [compiler_needs_object], [1],
5605 [Whether the compiler copes with passing no objects directly])
5606_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5607 [Create an old-style archive from a shared archive])
5608_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5609 [Create a temporary old-style archive to link instead of a shared archive])
5610_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5611_LT_TAGDECL([], [archive_expsym_cmds], [2])
5612_LT_TAGDECL([], [module_cmds], [2],
5613 [Commands used to build a loadable module if different from building
5614 a shared archive.])
5615_LT_TAGDECL([], [module_expsym_cmds], [2])
5616_LT_TAGDECL([], [with_gnu_ld], [1],
5617 [Whether we are building with GNU ld or not])
5618_LT_TAGDECL([], [allow_undefined_flag], [1],
5619 [Flag that allows shared libraries with undefined symbols to be built])
5620_LT_TAGDECL([], [no_undefined_flag], [1],
5621 [Flag that enforces no undefined symbols])
5622_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5623 [Flag to hardcode $libdir into a binary during linking.
5624 This must work even if $libdir does not exist])
5625_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
5626 [[If ld is used when linking, flag to hardcode $libdir into a binary
5627 during linking. This must work even if $libdir does not exist]])
5628_LT_TAGDECL([], [hardcode_libdir_separator], [1],
5629 [Whether we need a single "-rpath" flag with a separated argument])
5630_LT_TAGDECL([], [hardcode_direct], [0],
5631 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5632 DIR into the resulting binary])
5633_LT_TAGDECL([], [hardcode_direct_absolute], [0],
5634 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5635 DIR into the resulting binary and the resulting library dependency is
5636 "absolute", i.e impossible to change by setting ${shlibpath_var} if the
5637 library is relocated])
5638_LT_TAGDECL([], [hardcode_minus_L], [0],
5639 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5640 into the resulting binary])
5641_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5642 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5643 into the resulting binary])
5644_LT_TAGDECL([], [hardcode_automatic], [0],
5645 [Set to "yes" if building a shared library automatically hardcodes DIR
5646 into the library and all subsequent libraries and executables linked
5647 against it])
5648_LT_TAGDECL([], [inherit_rpath], [0],
5649 [Set to yes if linker adds runtime paths of dependent libraries
5650 to runtime path list])
5651_LT_TAGDECL([], [link_all_deplibs], [0],
5652 [Whether libtool must link a program against all its dependency libraries])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005653_LT_TAGDECL([], [always_export_symbols], [0],
5654 [Set to "yes" if exported symbols are required])
5655_LT_TAGDECL([], [export_symbols_cmds], [2],
5656 [The commands to list exported symbols])
5657_LT_TAGDECL([], [exclude_expsyms], [1],
5658 [Symbols that should not be listed in the preloaded symbols])
5659_LT_TAGDECL([], [include_expsyms], [1],
5660 [Symbols that must always be exported])
5661_LT_TAGDECL([], [prelink_cmds], [2],
5662 [Commands necessary for linking programs (against libraries) with templates])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005663_LT_TAGDECL([], [postlink_cmds], [2],
5664 [Commands necessary for finishing linking programs])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005665_LT_TAGDECL([], [file_list_spec], [1],
5666 [Specify filename containing input files])
5667dnl FIXME: Not yet implemented
5668dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5669dnl [Compiler flag to generate thread safe objects])
5670])# _LT_LINKER_SHLIBS
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06005671
5672
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005673# _LT_LANG_C_CONFIG([TAG])
5674# ------------------------
5675# Ensure that the configuration variables for a C compiler are suitably
5676# defined. These variables are subsequently used by _LT_CONFIG to write
5677# the compiler configuration to `libtool'.
5678m4_defun([_LT_LANG_C_CONFIG],
5679[m4_require([_LT_DECL_EGREP])dnl
5680lt_save_CC="$CC"
5681AC_LANG_PUSH(C)
5682
5683# Source file extension for C test sources.
5684ac_ext=c
5685
5686# Object file extension for compiled C test sources.
5687objext=o
5688_LT_TAGVAR(objext, $1)=$objext
5689
5690# Code to be used in simple compile tests
5691lt_simple_compile_test_code="int some_variable = 0;"
5692
5693# Code to be used in simple link tests
5694lt_simple_link_test_code='int main(){return(0);}'
5695
5696_LT_TAG_COMPILER
5697# Save the default compiler, since it gets overwritten when the other
5698# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5699compiler_DEFAULT=$CC
5700
5701# save warnings/boilerplate of simple test code
5702_LT_COMPILER_BOILERPLATE
5703_LT_LINKER_BOILERPLATE
5704
5705if test -n "$compiler"; then
5706 _LT_COMPILER_NO_RTTI($1)
5707 _LT_COMPILER_PIC($1)
5708 _LT_COMPILER_C_O($1)
5709 _LT_COMPILER_FILE_LOCKS($1)
5710 _LT_LINKER_SHLIBS($1)
5711 _LT_SYS_DYNAMIC_LINKER($1)
5712 _LT_LINKER_HARDCODE_LIBPATH($1)
5713 LT_SYS_DLOPEN_SELF
5714 _LT_CMD_STRIPLIB
5715
5716 # Report which library types will actually be built
5717 AC_MSG_CHECKING([if libtool supports shared libraries])
5718 AC_MSG_RESULT([$can_build_shared])
5719
5720 AC_MSG_CHECKING([whether to build shared libraries])
5721 test "$can_build_shared" = "no" && enable_shared=no
5722
5723 # On AIX, shared libraries and static libraries use the same namespace, and
5724 # are all built from PIC.
5725 case $host_os in
5726 aix3*)
5727 test "$enable_shared" = yes && enable_static=no
5728 if test -n "$RANLIB"; then
5729 archive_cmds="$archive_cmds~\$RANLIB \$lib"
5730 postinstall_cmds='$RANLIB $lib'
5731 fi
5732 ;;
5733
5734 aix[[4-9]]*)
5735 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5736 test "$enable_shared" = yes && enable_static=no
5737 fi
5738 ;;
5739 esac
5740 AC_MSG_RESULT([$enable_shared])
5741
5742 AC_MSG_CHECKING([whether to build static libraries])
5743 # Make sure either enable_shared or enable_static is yes.
5744 test "$enable_shared" = yes || enable_static=yes
5745 AC_MSG_RESULT([$enable_static])
5746
5747 _LT_CONFIG($1)
5748fi
5749AC_LANG_POP
5750CC="$lt_save_CC"
5751])# _LT_LANG_C_CONFIG
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06005752
5753
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005754# _LT_LANG_CXX_CONFIG([TAG])
5755# --------------------------
5756# Ensure that the configuration variables for a C++ compiler are suitably
5757# defined. These variables are subsequently used by _LT_CONFIG to write
5758# the compiler configuration to `libtool'.
5759m4_defun([_LT_LANG_CXX_CONFIG],
5760[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5761m4_require([_LT_DECL_EGREP])dnl
5762m4_require([_LT_PATH_MANIFEST_TOOL])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005763if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5764 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5765 (test "X$CXX" != "Xg++"))) ; then
5766 AC_PROG_CXXCPP
5767else
5768 _lt_caught_CXX_error=yes
5769fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005770
5771AC_LANG_PUSH(C++)
5772_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5773_LT_TAGVAR(allow_undefined_flag, $1)=
5774_LT_TAGVAR(always_export_symbols, $1)=no
5775_LT_TAGVAR(archive_expsym_cmds, $1)=
5776_LT_TAGVAR(compiler_needs_object, $1)=no
5777_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5778_LT_TAGVAR(hardcode_direct, $1)=no
5779_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5780_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5781_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
5782_LT_TAGVAR(hardcode_libdir_separator, $1)=
5783_LT_TAGVAR(hardcode_minus_L, $1)=no
5784_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5785_LT_TAGVAR(hardcode_automatic, $1)=no
5786_LT_TAGVAR(inherit_rpath, $1)=no
5787_LT_TAGVAR(module_cmds, $1)=
5788_LT_TAGVAR(module_expsym_cmds, $1)=
5789_LT_TAGVAR(link_all_deplibs, $1)=unknown
5790_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005791_LT_TAGVAR(reload_flag, $1)=$reload_flag
5792_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005793_LT_TAGVAR(no_undefined_flag, $1)=
5794_LT_TAGVAR(whole_archive_flag_spec, $1)=
5795_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5796
5797# Source file extension for C++ test sources.
5798ac_ext=cpp
5799
5800# Object file extension for compiled C++ test sources.
5801objext=o
5802_LT_TAGVAR(objext, $1)=$objext
5803
5804# No sense in running all these tests if we already determined that
5805# the CXX compiler isn't working. Some variables (like enable_shared)
5806# are currently assumed to apply to all compilers on this platform,
5807# and will be corrupted by setting them based on a non-working compiler.
5808if test "$_lt_caught_CXX_error" != yes; then
5809 # Code to be used in simple compile tests
5810 lt_simple_compile_test_code="int some_variable = 0;"
5811
5812 # Code to be used in simple link tests
5813 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5814
5815 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
5816 _LT_TAG_COMPILER
5817
5818 # save warnings/boilerplate of simple test code
5819 _LT_COMPILER_BOILERPLATE
5820 _LT_LINKER_BOILERPLATE
5821
5822 # Allow CC to be a program name with arguments.
5823 lt_save_CC=$CC
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005824 lt_save_CFLAGS=$CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005825 lt_save_LD=$LD
5826 lt_save_GCC=$GCC
5827 GCC=$GXX
5828 lt_save_with_gnu_ld=$with_gnu_ld
5829 lt_save_path_LD=$lt_cv_path_LD
5830 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5831 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
5832 else
5833 $as_unset lt_cv_prog_gnu_ld
5834 fi
5835 if test -n "${lt_cv_path_LDCXX+set}"; then
5836 lt_cv_path_LD=$lt_cv_path_LDCXX
5837 else
5838 $as_unset lt_cv_path_LD
5839 fi
5840 test -z "${LDCXX+set}" || LD=$LDCXX
5841 CC=${CXX-"c++"}
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005842 CFLAGS=$CXXFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005843 compiler=$CC
5844 _LT_TAGVAR(compiler, $1)=$CC
5845 _LT_CC_BASENAME([$compiler])
5846
5847 if test -n "$compiler"; then
5848 # We don't want -fno-exception when compiling C++ code, so set the
5849 # no_builtin_flag separately
5850 if test "$GXX" = yes; then
5851 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5852 else
5853 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5854 fi
5855
5856 if test "$GXX" = yes; then
5857 # Set up default GNU C++ configuration
5858
5859 LT_PATH_LD
5860
5861 # Check if GNU C++ uses GNU ld as the underlying linker, since the
5862 # archiving commands below assume that GNU ld is being used.
5863 if test "$with_gnu_ld" = yes; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005864 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5865 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005866
5867 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5868 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5869
5870 # If archive_cmds runs LD, not CC, wlarc should be empty
5871 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5872 # investigate it a little bit more. (MM)
5873 wlarc='${wl}'
5874
5875 # ancient GNU ld didn't support --whole-archive et. al.
5876 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5877 $GREP 'no-whole-archive' > /dev/null; then
5878 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5879 else
5880 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5881 fi
5882 else
5883 with_gnu_ld=no
5884 wlarc=
5885
5886 # A generic and very simple default shared library creation
5887 # command for GNU C++ for the case where it uses the native
5888 # linker, instead of GNU ld. If possible, this setting should
5889 # overridden to take advantage of the native linker features on
5890 # the platform it is being used on.
5891 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
5892 fi
5893
5894 # Commands to make compiler produce verbose output that lists
5895 # what "hidden" libraries, object files and flags are used when
5896 # linking a shared library.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06005897 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005898
5899 else
5900 GXX=no
5901 with_gnu_ld=no
5902 wlarc=
5903 fi
5904
5905 # PORTME: fill in a description of your system's C++ link characteristics
5906 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5907 _LT_TAGVAR(ld_shlibs, $1)=yes
5908 case $host_os in
5909 aix3*)
5910 # FIXME: insert proper C++ library support
5911 _LT_TAGVAR(ld_shlibs, $1)=no
5912 ;;
5913 aix[[4-9]]*)
5914 if test "$host_cpu" = ia64; then
5915 # On IA64, the linker does run time linking by default, so we don't
5916 # have to do anything special.
5917 aix_use_runtimelinking=no
5918 exp_sym_flag='-Bexport'
5919 no_entry_flag=""
5920 else
5921 aix_use_runtimelinking=no
5922
5923 # Test if we are trying to use run time linking or normal
5924 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5925 # need to do runtime linking.
5926 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5927 for ld_flag in $LDFLAGS; do
5928 case $ld_flag in
5929 *-brtl*)
5930 aix_use_runtimelinking=yes
5931 break
5932 ;;
5933 esac
5934 done
5935 ;;
5936 esac
5937
5938 exp_sym_flag='-bexport'
5939 no_entry_flag='-bnoentry'
5940 fi
5941
5942 # When large executables or shared objects are built, AIX ld can
5943 # have problems creating the table of contents. If linking a library
5944 # or program results in "error TOC overflow" add -mminimal-toc to
5945 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5946 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5947
5948 _LT_TAGVAR(archive_cmds, $1)=''
5949 _LT_TAGVAR(hardcode_direct, $1)=yes
5950 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5951 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5952 _LT_TAGVAR(link_all_deplibs, $1)=yes
5953 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
5954
5955 if test "$GXX" = yes; then
5956 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5957 # We only want to do this on AIX 4.2 and lower, the check
5958 # below for broken collect2 doesn't work under 4.3+
5959 collect2name=`${CC} -print-prog-name=collect2`
5960 if test -f "$collect2name" &&
5961 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5962 then
5963 # We have reworked collect2
5964 :
5965 else
5966 # We have old collect2
5967 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5968 # It fails to find uninstalled libraries when the uninstalled
5969 # path is not listed in the libpath. Setting hardcode_minus_L
5970 # to unsupported forces relinking
5971 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5972 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5973 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5974 fi
5975 esac
5976 shared_flag='-shared'
5977 if test "$aix_use_runtimelinking" = yes; then
5978 shared_flag="$shared_flag "'${wl}-G'
5979 fi
5980 else
5981 # not using gcc
5982 if test "$host_cpu" = ia64; then
5983 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5984 # chokes on -Wl,-G. The following line is correct:
5985 shared_flag='-G'
5986 else
5987 if test "$aix_use_runtimelinking" = yes; then
5988 shared_flag='${wl}-G'
5989 else
5990 shared_flag='${wl}-bM:SRE'
5991 fi
5992 fi
5993 fi
5994
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05005995 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05005996 # It seems that -bexpall does not export symbols beginning with
5997 # underscore (_), so it is better to generate a list of symbols to
5998 # export.
5999 _LT_TAGVAR(always_export_symbols, $1)=yes
6000 if test "$aix_use_runtimelinking" = yes; then
6001 # Warning - without using the other runtime loading flags (-brtl),
6002 # -berok will link without error, but may produce a broken library.
6003 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
6004 # Determine the default libpath from the value encoded in an empty
6005 # executable.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006006 _LT_SYS_MODULE_PATH_AIX([$1])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006007 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6008
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006009 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006010 else
6011 if test "$host_cpu" = ia64; then
6012 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6013 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6014 _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"
6015 else
6016 # Determine the default libpath from the value encoded in an
6017 # empty executable.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006018 _LT_SYS_MODULE_PATH_AIX([$1])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006019 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6020 # Warning - without using the other run time loading flags,
6021 # -berok will link without error, but may produce a broken library.
6022 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6023 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006024 if test "$with_gnu_ld" = yes; then
6025 # We only use this code for GNU lds that support --whole-archive.
6026 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6027 else
6028 # Exported symbols can be pulled into shared objects from archives
6029 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6030 fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006031 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6032 # This is similar to how AIX traditionally builds its shared
6033 # libraries.
6034 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
6035 fi
6036 fi
6037 ;;
6038
6039 beos*)
6040 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6041 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6042 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6043 # support --undefined. This deserves some investigation. FIXME
6044 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6045 else
6046 _LT_TAGVAR(ld_shlibs, $1)=no
6047 fi
6048 ;;
6049
6050 chorus*)
6051 case $cc_basename in
6052 *)
6053 # FIXME: insert proper C++ library support
6054 _LT_TAGVAR(ld_shlibs, $1)=no
6055 ;;
6056 esac
6057 ;;
6058
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05006059 cygwin* | mingw* | pw32* | cegcc*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006060 case $GXX,$cc_basename in
6061 ,cl* | no,cl*)
6062 # Native MSVC
6063 # hardcode_libdir_flag_spec is actually meaningless, as there is
6064 # no search path for DLLs.
6065 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6066 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6067 _LT_TAGVAR(always_export_symbols, $1)=yes
6068 _LT_TAGVAR(file_list_spec, $1)='@'
6069 # Tell ltmain to make .lib files, not .a files.
6070 libext=lib
6071 # Tell ltmain to make .dll files, not .so files.
6072 shrext_cmds=".dll"
6073 # FIXME: Setting linknames here is a bad hack.
6074 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6075 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6076 $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6077 else
6078 $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6079 fi~
6080 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6081 linknames='
6082 # The linker will not automatically build a static lib if we build a DLL.
6083 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6084 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6085 # Don't use ranlib
6086 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6087 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6088 lt_tool_outputfile="@TOOL_OUTPUT@"~
6089 case $lt_outputfile in
6090 *.exe|*.EXE) ;;
6091 *)
6092 lt_outputfile="$lt_outputfile.exe"
6093 lt_tool_outputfile="$lt_tool_outputfile.exe"
6094 ;;
6095 esac~
6096 func_to_tool_file "$lt_outputfile"~
6097 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6098 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6099 $RM "$lt_outputfile.manifest";
6100 fi'
6101 ;;
6102 *)
6103 # g++
6104 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6105 # as there is no search path for DLLs.
6106 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6107 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
6108 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6109 _LT_TAGVAR(always_export_symbols, $1)=no
6110 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006111
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006112 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6113 _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'
6114 # If the export-symbols file already is a .def file (1st line
6115 # is EXPORTS), use it as is; otherwise, prepend...
6116 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6117 cp $export_symbols $output_objdir/$soname.def;
6118 else
6119 echo EXPORTS > $output_objdir/$soname.def;
6120 cat $export_symbols >> $output_objdir/$soname.def;
6121 fi~
6122 $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'
6123 else
6124 _LT_TAGVAR(ld_shlibs, $1)=no
6125 fi
6126 ;;
6127 esac
6128 ;;
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006129 darwin* | rhapsody*)
6130 _LT_DARWIN_LINKER_FEATURES($1)
6131 ;;
6132
6133 dgux*)
6134 case $cc_basename in
6135 ec++*)
6136 # FIXME: insert proper C++ library support
6137 _LT_TAGVAR(ld_shlibs, $1)=no
6138 ;;
6139 ghcx*)
6140 # Green Hills C++ Compiler
6141 # FIXME: insert proper C++ library support
6142 _LT_TAGVAR(ld_shlibs, $1)=no
6143 ;;
6144 *)
6145 # FIXME: insert proper C++ library support
6146 _LT_TAGVAR(ld_shlibs, $1)=no
6147 ;;
6148 esac
6149 ;;
6150
6151 freebsd[[12]]*)
6152 # C++ shared libraries reported to be fairly broken before
6153 # switch to ELF
6154 _LT_TAGVAR(ld_shlibs, $1)=no
6155 ;;
6156
6157 freebsd-elf*)
6158 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6159 ;;
6160
6161 freebsd* | dragonfly*)
6162 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6163 # conventions
6164 _LT_TAGVAR(ld_shlibs, $1)=yes
6165 ;;
6166
6167 gnu*)
6168 ;;
6169
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006170 haiku*)
6171 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6172 _LT_TAGVAR(link_all_deplibs, $1)=yes
6173 ;;
6174
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006175 hpux9*)
6176 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6177 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6178 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6179 _LT_TAGVAR(hardcode_direct, $1)=yes
6180 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6181 # but as the default
6182 # location of the library.
6183
6184 case $cc_basename in
6185 CC*)
6186 # FIXME: insert proper C++ library support
6187 _LT_TAGVAR(ld_shlibs, $1)=no
6188 ;;
6189 aCC*)
6190 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6191 # Commands to make compiler produce verbose output that lists
6192 # what "hidden" libraries, object files and flags are used when
6193 # linking a shared library.
6194 #
6195 # There doesn't appear to be a way to prevent this compiler from
6196 # explicitly linking system object files so we need to strip them
6197 # from the output so that they don't get included in the library
6198 # dependencies.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006199 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"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006200 ;;
6201 *)
6202 if test "$GXX" = yes; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006203 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006204 else
6205 # FIXME: insert proper C++ library support
6206 _LT_TAGVAR(ld_shlibs, $1)=no
6207 fi
6208 ;;
6209 esac
6210 ;;
6211
6212 hpux10*|hpux11*)
6213 if test $with_gnu_ld = no; then
6214 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6215 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6216
6217 case $host_cpu in
6218 hppa*64*|ia64*)
6219 ;;
6220 *)
6221 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6222 ;;
6223 esac
6224 fi
6225 case $host_cpu in
6226 hppa*64*|ia64*)
6227 _LT_TAGVAR(hardcode_direct, $1)=no
6228 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6229 ;;
6230 *)
6231 _LT_TAGVAR(hardcode_direct, $1)=yes
6232 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6233 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6234 # but as the default
6235 # location of the library.
6236 ;;
6237 esac
6238
6239 case $cc_basename in
6240 CC*)
6241 # FIXME: insert proper C++ library support
6242 _LT_TAGVAR(ld_shlibs, $1)=no
6243 ;;
6244 aCC*)
6245 case $host_cpu in
6246 hppa*64*)
6247 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6248 ;;
6249 ia64*)
6250 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6251 ;;
6252 *)
6253 _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'
6254 ;;
6255 esac
6256 # Commands to make compiler produce verbose output that lists
6257 # what "hidden" libraries, object files and flags are used when
6258 # linking a shared library.
6259 #
6260 # There doesn't appear to be a way to prevent this compiler from
6261 # explicitly linking system object files so we need to strip them
6262 # from the output so that they don't get included in the library
6263 # dependencies.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006264 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"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006265 ;;
6266 *)
6267 if test "$GXX" = yes; then
6268 if test $with_gnu_ld = no; then
6269 case $host_cpu in
6270 hppa*64*)
6271 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6272 ;;
6273 ia64*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006274 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006275 ;;
6276 *)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006277 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006278 ;;
6279 esac
6280 fi
6281 else
6282 # FIXME: insert proper C++ library support
6283 _LT_TAGVAR(ld_shlibs, $1)=no
6284 fi
6285 ;;
6286 esac
6287 ;;
6288
6289 interix[[3-9]]*)
6290 _LT_TAGVAR(hardcode_direct, $1)=no
6291 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6292 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6293 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6294 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6295 # Instead, shared libraries are loaded at an image base (0x10000000 by
6296 # default) and relocated if they conflict, which is a slow very memory
6297 # consuming and fragmenting process. To avoid this, we pick a random,
6298 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6299 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6300 _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'
6301 _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'
6302 ;;
6303 irix5* | irix6*)
6304 case $cc_basename in
6305 CC*)
6306 # SGI C++
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006307 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006308
6309 # Archives containing C++ object files must be created using
6310 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6311 # necessary to make sure instantiated templates are included
6312 # in the archive.
6313 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6314 ;;
6315 *)
6316 if test "$GXX" = yes; then
6317 if test "$with_gnu_ld" = no; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006318 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006319 else
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006320 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006321 fi
6322 fi
6323 _LT_TAGVAR(link_all_deplibs, $1)=yes
6324 ;;
6325 esac
6326 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6327 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6328 _LT_TAGVAR(inherit_rpath, $1)=yes
6329 ;;
6330
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006331 linux* | k*bsd*-gnu | kopensolaris*-gnu)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006332 case $cc_basename in
6333 KCC*)
6334 # Kuck and Associates, Inc. (KAI) C++ Compiler
6335
6336 # KCC will only create a shared library if the output file
6337 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6338 # to its proper name (with version) after linking.
6339 _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'
6340 _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'
6341 # Commands to make compiler produce verbose output that lists
6342 # what "hidden" libraries, object files and flags are used when
6343 # linking a shared library.
6344 #
6345 # There doesn't appear to be a way to prevent this compiler from
6346 # explicitly linking system object files so we need to strip them
6347 # from the output so that they don't get included in the library
6348 # dependencies.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006349 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"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006350
6351 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6352 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6353
6354 # Archives containing C++ object files must be created using
6355 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6356 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6357 ;;
6358 icpc* | ecpc* )
6359 # Intel C++
6360 with_gnu_ld=yes
6361 # version 8.0 and above of icpc choke on multiply defined symbols
6362 # if we add $predep_objects and $postdep_objects, however 7.1 and
6363 # earlier do not add the objects themselves.
6364 case `$CC -V 2>&1` in
6365 *"Version 7."*)
6366 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6367 _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'
6368 ;;
6369 *) # Version 8.0 or newer
6370 tmp_idyn=
6371 case $host_cpu in
6372 ia64*) tmp_idyn=' -i_dynamic';;
6373 esac
6374 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6375 _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'
6376 ;;
6377 esac
6378 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6379 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6380 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6381 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6382 ;;
6383 pgCC* | pgcpp*)
6384 # Portland Group C++ compiler
6385 case `$CC -V` in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006386 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006387 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6388 rm -rf $tpldir~
6389 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006390 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006391 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6392 rm -rf $tpldir~
6393 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006394 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006395 $RANLIB $oldlib'
6396 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6397 rm -rf $tpldir~
6398 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006399 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006400 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
6401 rm -rf $tpldir~
6402 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006403 $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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006404 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006405 *) # Version 6 and above use weak symbols
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006406 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6407 _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'
6408 ;;
6409 esac
6410
6411 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6412 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006413 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006414 ;;
6415 cxx*)
6416 # Compaq C++
6417 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6418 _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'
6419
6420 runpath_var=LD_RUN_PATH
6421 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6422 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6423
6424 # Commands to make compiler produce verbose output that lists
6425 # what "hidden" libraries, object files and flags are used when
6426 # linking a shared library.
6427 #
6428 # There doesn't appear to be a way to prevent this compiler from
6429 # explicitly linking system object files so we need to strip them
6430 # from the output so that they don't get included in the library
6431 # dependencies.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006432 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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006433 ;;
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006434 xl* | mpixl* | bgxl*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006435 # IBM XL 8.0 on PPC, with GNU ld
6436 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6437 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6438 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6439 if test "x$supports_anon_versioning" = xyes; then
6440 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6441 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6442 echo "local: *; };" >> $output_objdir/$libname.ver~
6443 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6444 fi
6445 ;;
6446 *)
6447 case `$CC -V 2>&1 | sed 5q` in
6448 *Sun\ C*)
6449 # Sun C++ 5.9
6450 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6451 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6452 _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'
6453 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006454 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006455 _LT_TAGVAR(compiler_needs_object, $1)=yes
6456
6457 # Not sure whether something based on
6458 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6459 # would be better.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006460 output_verbose_link_cmd='func_echo_all'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006461
6462 # Archives containing C++ object files must be created using
6463 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6464 # necessary to make sure instantiated templates are included
6465 # in the archive.
6466 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6467 ;;
6468 esac
6469 ;;
6470 esac
6471 ;;
6472
6473 lynxos*)
6474 # FIXME: insert proper C++ library support
6475 _LT_TAGVAR(ld_shlibs, $1)=no
6476 ;;
6477
6478 m88k*)
6479 # FIXME: insert proper C++ library support
6480 _LT_TAGVAR(ld_shlibs, $1)=no
6481 ;;
6482
6483 mvs*)
6484 case $cc_basename in
6485 cxx*)
6486 # FIXME: insert proper C++ library support
6487 _LT_TAGVAR(ld_shlibs, $1)=no
6488 ;;
6489 *)
6490 # FIXME: insert proper C++ library support
6491 _LT_TAGVAR(ld_shlibs, $1)=no
6492 ;;
6493 esac
6494 ;;
6495
6496 netbsd*)
6497 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6498 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6499 wlarc=
6500 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6501 _LT_TAGVAR(hardcode_direct, $1)=yes
6502 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6503 fi
6504 # Workaround some broken pre-1.5 toolchains
6505 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6506 ;;
6507
6508 *nto* | *qnx*)
6509 _LT_TAGVAR(ld_shlibs, $1)=yes
6510 ;;
6511
6512 openbsd2*)
6513 # C++ shared libraries are fairly broken
6514 _LT_TAGVAR(ld_shlibs, $1)=no
6515 ;;
6516
6517 openbsd*)
6518 if test -f /usr/libexec/ld.so; then
6519 _LT_TAGVAR(hardcode_direct, $1)=yes
6520 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6521 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6522 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6523 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6524 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6525 _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'
6526 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6527 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6528 fi
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006529 output_verbose_link_cmd=func_echo_all
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006530 else
6531 _LT_TAGVAR(ld_shlibs, $1)=no
6532 fi
6533 ;;
6534
6535 osf3* | osf4* | osf5*)
6536 case $cc_basename in
6537 KCC*)
6538 # Kuck and Associates, Inc. (KAI) C++ Compiler
6539
6540 # KCC will only create a shared library if the output file
6541 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6542 # to its proper name (with version) after linking.
6543 _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'
6544
6545 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6546 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6547
6548 # Archives containing C++ object files must be created using
6549 # the KAI C++ compiler.
6550 case $host in
6551 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6552 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6553 esac
6554 ;;
6555 RCC*)
6556 # Rational C++ 2.4.1
6557 # FIXME: insert proper C++ library support
6558 _LT_TAGVAR(ld_shlibs, $1)=no
6559 ;;
6560 cxx*)
6561 case $host in
6562 osf3*)
6563 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006564 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006565 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6566 ;;
6567 *)
6568 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006569 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006570 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6571 echo "-hidden">> $lib.exp~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006572 $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~
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006573 $RM $lib.exp'
6574 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6575 ;;
6576 esac
6577
6578 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6579
6580 # Commands to make compiler produce verbose output that lists
6581 # what "hidden" libraries, object files and flags are used when
6582 # linking a shared library.
6583 #
6584 # There doesn't appear to be a way to prevent this compiler from
6585 # explicitly linking system object files so we need to strip them
6586 # from the output so that they don't get included in the library
6587 # dependencies.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006588 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"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006589 ;;
6590 *)
6591 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6592 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6593 case $host in
6594 osf3*)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006595 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006596 ;;
6597 *)
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006598 _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'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006599 ;;
6600 esac
6601
6602 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6603 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6604
6605 # Commands to make compiler produce verbose output that lists
6606 # what "hidden" libraries, object files and flags are used when
6607 # linking a shared library.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006608 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006609
6610 else
6611 # FIXME: insert proper C++ library support
6612 _LT_TAGVAR(ld_shlibs, $1)=no
6613 fi
6614 ;;
6615 esac
6616 ;;
6617
6618 psos*)
6619 # FIXME: insert proper C++ library support
6620 _LT_TAGVAR(ld_shlibs, $1)=no
6621 ;;
6622
6623 sunos4*)
6624 case $cc_basename in
6625 CC*)
6626 # Sun C++ 4.x
6627 # FIXME: insert proper C++ library support
6628 _LT_TAGVAR(ld_shlibs, $1)=no
6629 ;;
6630 lcc*)
6631 # Lucid
6632 # FIXME: insert proper C++ library support
6633 _LT_TAGVAR(ld_shlibs, $1)=no
6634 ;;
6635 *)
6636 # FIXME: insert proper C++ library support
6637 _LT_TAGVAR(ld_shlibs, $1)=no
6638 ;;
6639 esac
6640 ;;
6641
6642 solaris*)
6643 case $cc_basename in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006644 CC* | sunCC*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006645 # Sun C++ 4.2, 5.x and Centerline C++
6646 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6647 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6648 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6649 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6650 $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'
6651
6652 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6653 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6654 case $host_os in
6655 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6656 *)
6657 # The compiler driver will combine and reorder linker options,
6658 # but understands `-z linker_flag'.
6659 # Supported since Solaris 2.6 (maybe 2.5.1?)
6660 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6661 ;;
6662 esac
6663 _LT_TAGVAR(link_all_deplibs, $1)=yes
6664
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006665 output_verbose_link_cmd='func_echo_all'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006666
6667 # Archives containing C++ object files must be created using
6668 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6669 # necessary to make sure instantiated templates are included
6670 # in the archive.
6671 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6672 ;;
6673 gcx*)
6674 # Green Hills C++ Compiler
6675 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6676
6677 # The C++ compiler must be used to create the archive.
6678 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
6679 ;;
6680 *)
6681 # GNU C++ compiler with Solaris linker
6682 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6683 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6684 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006685 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006686 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006687 $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006688
6689 # Commands to make compiler produce verbose output that lists
6690 # what "hidden" libraries, object files and flags are used when
6691 # linking a shared library.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006692 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006693 else
6694 # g++ 2.7 appears to require `-G' NOT `-shared' on this
6695 # platform.
6696 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6697 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6698 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6699
6700 # Commands to make compiler produce verbose output that lists
6701 # what "hidden" libraries, object files and flags are used when
6702 # linking a shared library.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006703 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006704 fi
6705
6706 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6707 case $host_os in
6708 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6709 *)
6710 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6711 ;;
6712 esac
6713 fi
6714 ;;
6715 esac
6716 ;;
6717
6718 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6719 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6720 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6721 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6722 runpath_var='LD_RUN_PATH'
6723
6724 case $cc_basename in
6725 CC*)
6726 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6727 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6728 ;;
6729 *)
6730 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6731 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6732 ;;
6733 esac
6734 ;;
6735
6736 sysv5* | sco3.2v5* | sco5v6*)
6737 # Note: We can NOT use -z defs as we might desire, because we do not
6738 # link with -lc, and that would cause any symbols used from libc to
6739 # always be unresolved, which means just about no library would
6740 # ever link correctly. If we're not using GNU ld we use -z text
6741 # though, which does catch some bad symbols but isn't as heavy-handed
6742 # as -z defs.
6743 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6744 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6745 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6746 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6747 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6748 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6749 _LT_TAGVAR(link_all_deplibs, $1)=yes
6750 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6751 runpath_var='LD_RUN_PATH'
6752
6753 case $cc_basename in
6754 CC*)
6755 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6756 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006757 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6758 '"$_LT_TAGVAR(old_archive_cmds, $1)"
6759 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6760 '"$_LT_TAGVAR(reload_cmds, $1)"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006761 ;;
6762 *)
6763 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6764 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6765 ;;
6766 esac
6767 ;;
6768
6769 tandem*)
6770 case $cc_basename in
6771 NCC*)
6772 # NonStop-UX NCC 3.20
6773 # FIXME: insert proper C++ library support
6774 _LT_TAGVAR(ld_shlibs, $1)=no
6775 ;;
6776 *)
6777 # FIXME: insert proper C++ library support
6778 _LT_TAGVAR(ld_shlibs, $1)=no
6779 ;;
6780 esac
6781 ;;
6782
6783 vxworks*)
6784 # FIXME: insert proper C++ library support
6785 _LT_TAGVAR(ld_shlibs, $1)=no
6786 ;;
6787
6788 *)
6789 # FIXME: insert proper C++ library support
6790 _LT_TAGVAR(ld_shlibs, $1)=no
6791 ;;
6792 esac
6793
6794 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6795 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6796
6797 _LT_TAGVAR(GCC, $1)="$GXX"
6798 _LT_TAGVAR(LD, $1)="$LD"
6799
6800 ## CAVEAT EMPTOR:
6801 ## There is no encapsulation within the following macros, do not change
6802 ## the running order or otherwise move them around unless you know exactly
6803 ## what you are doing...
6804 _LT_SYS_HIDDEN_LIBDEPS($1)
6805 _LT_COMPILER_PIC($1)
6806 _LT_COMPILER_C_O($1)
6807 _LT_COMPILER_FILE_LOCKS($1)
6808 _LT_LINKER_SHLIBS($1)
6809 _LT_SYS_DYNAMIC_LINKER($1)
6810 _LT_LINKER_HARDCODE_LIBPATH($1)
6811
6812 _LT_CONFIG($1)
6813 fi # test -n "$compiler"
6814
6815 CC=$lt_save_CC
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006816 CFLAGS=$lt_save_CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006817 LDCXX=$LD
6818 LD=$lt_save_LD
6819 GCC=$lt_save_GCC
6820 with_gnu_ld=$lt_save_with_gnu_ld
6821 lt_cv_path_LDCXX=$lt_cv_path_LD
6822 lt_cv_path_LD=$lt_save_path_LD
6823 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6824 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6825fi # test "$_lt_caught_CXX_error" != yes
6826
6827AC_LANG_POP
6828])# _LT_LANG_CXX_CONFIG
6829
6830
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006831# _LT_FUNC_STRIPNAME_CNF
6832# ----------------------
6833# func_stripname_cnf prefix suffix name
6834# strip PREFIX and SUFFIX off of NAME.
6835# PREFIX and SUFFIX must not contain globbing or regex special
6836# characters, hashes, percent signs, but SUFFIX may contain a leading
6837# dot (in which case that matches only a dot).
6838#
6839# This function is identical to the (non-XSI) version of func_stripname,
6840# except this one can be used by m4 code that may be executed by configure,
6841# rather than the libtool script.
6842m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6843AC_REQUIRE([_LT_DECL_SED])
6844AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6845func_stripname_cnf ()
6846{
6847 case ${2} in
6848 .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6849 *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6850 esac
6851} # func_stripname_cnf
6852])# _LT_FUNC_STRIPNAME_CNF
6853
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006854# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06006855# ---------------------------------
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006856# Figure out "hidden" library dependencies from verbose
6857# compiler output when linking a shared library.
6858# Parse the compiler output and extract the necessary
6859# objects, libraries and library flags.
6860m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6861[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006862AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006863# Dependencies to place before and after the object being linked:
6864_LT_TAGVAR(predep_objects, $1)=
6865_LT_TAGVAR(postdep_objects, $1)=
6866_LT_TAGVAR(predeps, $1)=
6867_LT_TAGVAR(postdeps, $1)=
6868_LT_TAGVAR(compiler_lib_search_path, $1)=
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06006869
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006870dnl we can't use the lt_simple_compile_test_code here,
6871dnl because it contains code intended for an executable,
6872dnl not a library. It's possible we should let each
6873dnl tag define a new lt_????_link_test_code variable,
6874dnl but it's only used here...
6875m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6876int a;
6877void foo (void) { a = 0; }
6878_LT_EOF
6879], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6880class Foo
6881{
6882public:
6883 Foo (void) { a = 0; }
6884private:
6885 int a;
6886};
6887_LT_EOF
6888], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6889 subroutine foo
6890 implicit none
6891 integer*4 a
6892 a=0
6893 return
6894 end
6895_LT_EOF
6896], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6897 subroutine foo
6898 implicit none
6899 integer a
6900 a=0
6901 return
6902 end
6903_LT_EOF
6904], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6905public class foo {
6906 private int a;
6907 public void bar (void) {
6908 a = 0;
6909 }
6910};
6911_LT_EOF
6912])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006913
6914_lt_libdeps_save_CFLAGS=$CFLAGS
6915case "$CC $CFLAGS " in #(
6916*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
6917*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
6918esac
6919
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006920dnl Parse the compiler output and extract the necessary
6921dnl objects, libraries and library flags.
6922if AC_TRY_EVAL(ac_compile); then
6923 # Parse the compiler output and extract the necessary
6924 # objects, libraries and library flags.
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06006925
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006926 # Sentinel used to keep track of whether or not we are before
6927 # the conftest object file.
6928 pre_test_object_deps_done=no
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06006929
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006930 for p in `eval "$output_verbose_link_cmd"`; do
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006931 case ${prev}${p} in
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06006932
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006933 -L* | -R* | -l*)
6934 # Some compilers place space between "-{L,R}" and the path.
6935 # Remove the space.
6936 if test $p = "-L" ||
6937 test $p = "-R"; then
6938 prev=$p
6939 continue
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006940 fi
6941
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006942 # Expand the sysroot to ease extracting the directories later.
6943 if test -z "$prev"; then
6944 case $p in
6945 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
6946 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
6947 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
6948 esac
6949 fi
6950 case $p in
6951 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
6952 esac
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006953 if test "$pre_test_object_deps_done" = no; then
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006954 case ${prev} in
6955 -L | -R)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006956 # Internal compiler library paths should come after those
6957 # provided the user. The postdeps already come after the
6958 # user supplied libs so there is no need to process them.
6959 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
6960 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
6961 else
6962 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
6963 fi
6964 ;;
6965 # The "-l" case would never come before the object being
6966 # linked, so don't bother handling this case.
6967 esac
6968 else
6969 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
6970 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
6971 else
6972 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
6973 fi
6974 fi
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006975 prev=
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006976 ;;
6977
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06006978 *.lto.$objext) ;; # Ignore GCC LTO objects
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05006979 *.$objext)
6980 # This assumes that the test object file only shows up
6981 # once in the compiler output.
6982 if test "$p" = "conftest.$objext"; then
6983 pre_test_object_deps_done=yes
6984 continue
6985 fi
6986
6987 if test "$pre_test_object_deps_done" = no; then
6988 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
6989 _LT_TAGVAR(predep_objects, $1)="$p"
6990 else
6991 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
6992 fi
6993 else
6994 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
6995 _LT_TAGVAR(postdep_objects, $1)="$p"
6996 else
6997 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
6998 fi
6999 fi
7000 ;;
7001
7002 *) ;; # Ignore the rest.
7003
7004 esac
7005 done
7006
7007 # Clean up.
7008 rm -f a.out a.exe
7009else
7010 echo "libtool.m4: error: problem compiling $1 test program"
7011fi
7012
7013$RM -f confest.$objext
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007014CFLAGS=$_lt_libdeps_save_CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007015
7016# PORTME: override above test on systems where it is broken
7017m4_if([$1], [CXX],
7018[case $host_os in
7019interix[[3-9]]*)
7020 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7021 # hack all around it, let's just trust "g++" to DTRT.
7022 _LT_TAGVAR(predep_objects,$1)=
7023 _LT_TAGVAR(postdep_objects,$1)=
7024 _LT_TAGVAR(postdeps,$1)=
7025 ;;
7026
7027linux*)
7028 case `$CC -V 2>&1 | sed 5q` in
7029 *Sun\ C*)
7030 # Sun C++ 5.9
7031
7032 # The more standards-conforming stlport4 library is
7033 # incompatible with the Cstd library. Avoid specifying
7034 # it if it's in CXXFLAGS. Ignore libCrun as
7035 # -library=stlport4 depends on it.
7036 case " $CXX $CXXFLAGS " in
7037 *" -library=stlport4 "*)
7038 solaris_use_stlport4=yes
7039 ;;
7040 esac
7041
7042 if test "$solaris_use_stlport4" != yes; then
7043 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7044 fi
7045 ;;
7046 esac
7047 ;;
7048
7049solaris*)
7050 case $cc_basename in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007051 CC* | sunCC*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007052 # The more standards-conforming stlport4 library is
7053 # incompatible with the Cstd library. Avoid specifying
7054 # it if it's in CXXFLAGS. Ignore libCrun as
7055 # -library=stlport4 depends on it.
7056 case " $CXX $CXXFLAGS " in
7057 *" -library=stlport4 "*)
7058 solaris_use_stlport4=yes
7059 ;;
7060 esac
7061
7062 # Adding this requires a known-good setup of shared libraries for
7063 # Sun compiler versions before 5.6, else PIC objects from an old
7064 # archive will be linked into the output, leading to subtle bugs.
7065 if test "$solaris_use_stlport4" != yes; then
7066 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7067 fi
7068 ;;
7069 esac
7070 ;;
7071esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06007072])
7073
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007074case " $_LT_TAGVAR(postdeps, $1) " in
7075*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7076esac
7077 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7078if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7079 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
7080fi
7081_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7082 [The directories searched by this compiler when creating a shared library])
7083_LT_TAGDECL([], [predep_objects], [1],
7084 [Dependencies to place before and after the objects being linked to
7085 create a shared library])
7086_LT_TAGDECL([], [postdep_objects], [1])
7087_LT_TAGDECL([], [predeps], [1])
7088_LT_TAGDECL([], [postdeps], [1])
7089_LT_TAGDECL([], [compiler_lib_search_path], [1],
7090 [The library search path used internally by the compiler when linking
7091 a shared library])
7092])# _LT_SYS_HIDDEN_LIBDEPS
7093
7094
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007095# _LT_LANG_F77_CONFIG([TAG])
7096# --------------------------
7097# Ensure that the configuration variables for a Fortran 77 compiler are
7098# suitably defined. These variables are subsequently used by _LT_CONFIG
7099# to write the compiler configuration to `libtool'.
7100m4_defun([_LT_LANG_F77_CONFIG],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007101[AC_LANG_PUSH(Fortran 77)
7102if test -z "$F77" || test "X$F77" = "Xno"; then
7103 _lt_disable_F77=yes
7104fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007105
7106_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7107_LT_TAGVAR(allow_undefined_flag, $1)=
7108_LT_TAGVAR(always_export_symbols, $1)=no
7109_LT_TAGVAR(archive_expsym_cmds, $1)=
7110_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7111_LT_TAGVAR(hardcode_direct, $1)=no
7112_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7113_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7114_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
7115_LT_TAGVAR(hardcode_libdir_separator, $1)=
7116_LT_TAGVAR(hardcode_minus_L, $1)=no
7117_LT_TAGVAR(hardcode_automatic, $1)=no
7118_LT_TAGVAR(inherit_rpath, $1)=no
7119_LT_TAGVAR(module_cmds, $1)=
7120_LT_TAGVAR(module_expsym_cmds, $1)=
7121_LT_TAGVAR(link_all_deplibs, $1)=unknown
7122_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007123_LT_TAGVAR(reload_flag, $1)=$reload_flag
7124_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007125_LT_TAGVAR(no_undefined_flag, $1)=
7126_LT_TAGVAR(whole_archive_flag_spec, $1)=
7127_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7128
7129# Source file extension for f77 test sources.
7130ac_ext=f
7131
7132# Object file extension for compiled f77 test sources.
7133objext=o
7134_LT_TAGVAR(objext, $1)=$objext
7135
7136# No sense in running all these tests if we already determined that
7137# the F77 compiler isn't working. Some variables (like enable_shared)
7138# are currently assumed to apply to all compilers on this platform,
7139# and will be corrupted by setting them based on a non-working compiler.
7140if test "$_lt_disable_F77" != yes; then
7141 # Code to be used in simple compile tests
7142 lt_simple_compile_test_code="\
7143 subroutine t
7144 return
7145 end
7146"
7147
7148 # Code to be used in simple link tests
7149 lt_simple_link_test_code="\
7150 program t
7151 end
7152"
7153
7154 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7155 _LT_TAG_COMPILER
7156
7157 # save warnings/boilerplate of simple test code
7158 _LT_COMPILER_BOILERPLATE
7159 _LT_LINKER_BOILERPLATE
7160
7161 # Allow CC to be a program name with arguments.
7162 lt_save_CC="$CC"
7163 lt_save_GCC=$GCC
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007164 lt_save_CFLAGS=$CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007165 CC=${F77-"f77"}
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007166 CFLAGS=$FFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007167 compiler=$CC
7168 _LT_TAGVAR(compiler, $1)=$CC
7169 _LT_CC_BASENAME([$compiler])
7170 GCC=$G77
7171 if test -n "$compiler"; then
7172 AC_MSG_CHECKING([if libtool supports shared libraries])
7173 AC_MSG_RESULT([$can_build_shared])
7174
7175 AC_MSG_CHECKING([whether to build shared libraries])
7176 test "$can_build_shared" = "no" && enable_shared=no
7177
7178 # On AIX, shared libraries and static libraries use the same namespace, and
7179 # are all built from PIC.
7180 case $host_os in
7181 aix3*)
7182 test "$enable_shared" = yes && enable_static=no
7183 if test -n "$RANLIB"; then
7184 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7185 postinstall_cmds='$RANLIB $lib'
7186 fi
7187 ;;
7188 aix[[4-9]]*)
7189 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7190 test "$enable_shared" = yes && enable_static=no
7191 fi
7192 ;;
7193 esac
7194 AC_MSG_RESULT([$enable_shared])
7195
7196 AC_MSG_CHECKING([whether to build static libraries])
7197 # Make sure either enable_shared or enable_static is yes.
7198 test "$enable_shared" = yes || enable_static=yes
7199 AC_MSG_RESULT([$enable_static])
7200
7201 _LT_TAGVAR(GCC, $1)="$G77"
7202 _LT_TAGVAR(LD, $1)="$LD"
7203
7204 ## CAVEAT EMPTOR:
7205 ## There is no encapsulation within the following macros, do not change
7206 ## the running order or otherwise move them around unless you know exactly
7207 ## what you are doing...
7208 _LT_COMPILER_PIC($1)
7209 _LT_COMPILER_C_O($1)
7210 _LT_COMPILER_FILE_LOCKS($1)
7211 _LT_LINKER_SHLIBS($1)
7212 _LT_SYS_DYNAMIC_LINKER($1)
7213 _LT_LINKER_HARDCODE_LIBPATH($1)
7214
7215 _LT_CONFIG($1)
7216 fi # test -n "$compiler"
7217
7218 GCC=$lt_save_GCC
7219 CC="$lt_save_CC"
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007220 CFLAGS="$lt_save_CFLAGS"
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007221fi # test "$_lt_disable_F77" != yes
7222
7223AC_LANG_POP
7224])# _LT_LANG_F77_CONFIG
7225
7226
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007227# _LT_LANG_FC_CONFIG([TAG])
7228# -------------------------
7229# Ensure that the configuration variables for a Fortran compiler are
7230# suitably defined. These variables are subsequently used by _LT_CONFIG
7231# to write the compiler configuration to `libtool'.
7232m4_defun([_LT_LANG_FC_CONFIG],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007233[AC_LANG_PUSH(Fortran)
7234
7235if test -z "$FC" || test "X$FC" = "Xno"; then
7236 _lt_disable_FC=yes
7237fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007238
7239_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7240_LT_TAGVAR(allow_undefined_flag, $1)=
7241_LT_TAGVAR(always_export_symbols, $1)=no
7242_LT_TAGVAR(archive_expsym_cmds, $1)=
7243_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7244_LT_TAGVAR(hardcode_direct, $1)=no
7245_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7246_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7247_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
7248_LT_TAGVAR(hardcode_libdir_separator, $1)=
7249_LT_TAGVAR(hardcode_minus_L, $1)=no
7250_LT_TAGVAR(hardcode_automatic, $1)=no
7251_LT_TAGVAR(inherit_rpath, $1)=no
7252_LT_TAGVAR(module_cmds, $1)=
7253_LT_TAGVAR(module_expsym_cmds, $1)=
7254_LT_TAGVAR(link_all_deplibs, $1)=unknown
7255_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007256_LT_TAGVAR(reload_flag, $1)=$reload_flag
7257_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007258_LT_TAGVAR(no_undefined_flag, $1)=
7259_LT_TAGVAR(whole_archive_flag_spec, $1)=
7260_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7261
7262# Source file extension for fc test sources.
7263ac_ext=${ac_fc_srcext-f}
7264
7265# Object file extension for compiled fc test sources.
7266objext=o
7267_LT_TAGVAR(objext, $1)=$objext
7268
7269# No sense in running all these tests if we already determined that
7270# the FC compiler isn't working. Some variables (like enable_shared)
7271# are currently assumed to apply to all compilers on this platform,
7272# and will be corrupted by setting them based on a non-working compiler.
7273if test "$_lt_disable_FC" != yes; then
7274 # Code to be used in simple compile tests
7275 lt_simple_compile_test_code="\
7276 subroutine t
7277 return
7278 end
7279"
7280
7281 # Code to be used in simple link tests
7282 lt_simple_link_test_code="\
7283 program t
7284 end
7285"
7286
7287 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7288 _LT_TAG_COMPILER
7289
7290 # save warnings/boilerplate of simple test code
7291 _LT_COMPILER_BOILERPLATE
7292 _LT_LINKER_BOILERPLATE
7293
7294 # Allow CC to be a program name with arguments.
7295 lt_save_CC="$CC"
7296 lt_save_GCC=$GCC
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007297 lt_save_CFLAGS=$CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007298 CC=${FC-"f95"}
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007299 CFLAGS=$FCFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007300 compiler=$CC
7301 GCC=$ac_cv_fc_compiler_gnu
7302
7303 _LT_TAGVAR(compiler, $1)=$CC
7304 _LT_CC_BASENAME([$compiler])
7305
7306 if test -n "$compiler"; then
7307 AC_MSG_CHECKING([if libtool supports shared libraries])
7308 AC_MSG_RESULT([$can_build_shared])
7309
7310 AC_MSG_CHECKING([whether to build shared libraries])
7311 test "$can_build_shared" = "no" && enable_shared=no
7312
7313 # On AIX, shared libraries and static libraries use the same namespace, and
7314 # are all built from PIC.
7315 case $host_os in
7316 aix3*)
7317 test "$enable_shared" = yes && enable_static=no
7318 if test -n "$RANLIB"; then
7319 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7320 postinstall_cmds='$RANLIB $lib'
7321 fi
7322 ;;
7323 aix[[4-9]]*)
7324 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7325 test "$enable_shared" = yes && enable_static=no
7326 fi
7327 ;;
7328 esac
7329 AC_MSG_RESULT([$enable_shared])
7330
7331 AC_MSG_CHECKING([whether to build static libraries])
7332 # Make sure either enable_shared or enable_static is yes.
7333 test "$enable_shared" = yes || enable_static=yes
7334 AC_MSG_RESULT([$enable_static])
7335
7336 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
7337 _LT_TAGVAR(LD, $1)="$LD"
7338
7339 ## CAVEAT EMPTOR:
7340 ## There is no encapsulation within the following macros, do not change
7341 ## the running order or otherwise move them around unless you know exactly
7342 ## what you are doing...
7343 _LT_SYS_HIDDEN_LIBDEPS($1)
7344 _LT_COMPILER_PIC($1)
7345 _LT_COMPILER_C_O($1)
7346 _LT_COMPILER_FILE_LOCKS($1)
7347 _LT_LINKER_SHLIBS($1)
7348 _LT_SYS_DYNAMIC_LINKER($1)
7349 _LT_LINKER_HARDCODE_LIBPATH($1)
7350
7351 _LT_CONFIG($1)
7352 fi # test -n "$compiler"
7353
7354 GCC=$lt_save_GCC
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007355 CC=$lt_save_CC
7356 CFLAGS=$lt_save_CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007357fi # test "$_lt_disable_FC" != yes
7358
7359AC_LANG_POP
7360])# _LT_LANG_FC_CONFIG
7361
7362
7363# _LT_LANG_GCJ_CONFIG([TAG])
7364# --------------------------
7365# Ensure that the configuration variables for the GNU Java Compiler compiler
7366# are suitably defined. These variables are subsequently used by _LT_CONFIG
7367# to write the compiler configuration to `libtool'.
7368m4_defun([_LT_LANG_GCJ_CONFIG],
7369[AC_REQUIRE([LT_PROG_GCJ])dnl
7370AC_LANG_SAVE
7371
7372# Source file extension for Java test sources.
7373ac_ext=java
7374
7375# Object file extension for compiled Java test sources.
7376objext=o
7377_LT_TAGVAR(objext, $1)=$objext
7378
7379# Code to be used in simple compile tests
7380lt_simple_compile_test_code="class foo {}"
7381
7382# Code to be used in simple link tests
7383lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7384
7385# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7386_LT_TAG_COMPILER
7387
7388# save warnings/boilerplate of simple test code
7389_LT_COMPILER_BOILERPLATE
7390_LT_LINKER_BOILERPLATE
7391
7392# Allow CC to be a program name with arguments.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007393lt_save_CC=$CC
7394lt_save_CFLAGS=$CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007395lt_save_GCC=$GCC
7396GCC=yes
7397CC=${GCJ-"gcj"}
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007398CFLAGS=$GCJFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007399compiler=$CC
7400_LT_TAGVAR(compiler, $1)=$CC
7401_LT_TAGVAR(LD, $1)="$LD"
7402_LT_CC_BASENAME([$compiler])
7403
7404# GCJ did not exist at the time GCC didn't implicitly link libc in.
7405_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7406
7407_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007408_LT_TAGVAR(reload_flag, $1)=$reload_flag
7409_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007410
7411if test -n "$compiler"; then
7412 _LT_COMPILER_NO_RTTI($1)
7413 _LT_COMPILER_PIC($1)
7414 _LT_COMPILER_C_O($1)
7415 _LT_COMPILER_FILE_LOCKS($1)
7416 _LT_LINKER_SHLIBS($1)
7417 _LT_LINKER_HARDCODE_LIBPATH($1)
7418
7419 _LT_CONFIG($1)
7420fi
7421
7422AC_LANG_RESTORE
7423
7424GCC=$lt_save_GCC
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007425CC=$lt_save_CC
7426CFLAGS=$lt_save_CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007427])# _LT_LANG_GCJ_CONFIG
7428
7429
7430# _LT_LANG_RC_CONFIG([TAG])
7431# -------------------------
7432# Ensure that the configuration variables for the Windows resource compiler
7433# are suitably defined. These variables are subsequently used by _LT_CONFIG
7434# to write the compiler configuration to `libtool'.
7435m4_defun([_LT_LANG_RC_CONFIG],
7436[AC_REQUIRE([LT_PROG_RC])dnl
7437AC_LANG_SAVE
7438
7439# Source file extension for RC test sources.
7440ac_ext=rc
7441
7442# Object file extension for compiled RC test sources.
7443objext=o
7444_LT_TAGVAR(objext, $1)=$objext
7445
7446# Code to be used in simple compile tests
7447lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
7448
7449# Code to be used in simple link tests
7450lt_simple_link_test_code="$lt_simple_compile_test_code"
7451
7452# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7453_LT_TAG_COMPILER
7454
7455# save warnings/boilerplate of simple test code
7456_LT_COMPILER_BOILERPLATE
7457_LT_LINKER_BOILERPLATE
7458
7459# Allow CC to be a program name with arguments.
7460lt_save_CC="$CC"
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007461lt_save_CFLAGS=$CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007462lt_save_GCC=$GCC
7463GCC=
7464CC=${RC-"windres"}
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007465CFLAGS=
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007466compiler=$CC
7467_LT_TAGVAR(compiler, $1)=$CC
7468_LT_CC_BASENAME([$compiler])
7469_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
7470
7471if test -n "$compiler"; then
7472 :
7473 _LT_CONFIG($1)
7474fi
7475
7476GCC=$lt_save_GCC
7477AC_LANG_RESTORE
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007478CC=$lt_save_CC
7479CFLAGS=$lt_save_CFLAGS
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007480])# _LT_LANG_RC_CONFIG
7481
7482
7483# LT_PROG_GCJ
7484# -----------
7485AC_DEFUN([LT_PROG_GCJ],
7486[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
7487 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
7488 [AC_CHECK_TOOL(GCJ, gcj,)
7489 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
7490 AC_SUBST(GCJFLAGS)])])[]dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06007491])
7492
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007493# Old name:
7494AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7495dnl aclocal-1.4 backwards compatibility:
7496dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
7497
7498
7499# LT_PROG_RC
7500# ----------
7501AC_DEFUN([LT_PROG_RC],
7502[AC_CHECK_TOOL(RC, windres,)
7503])
7504
7505# Old name:
7506AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7507dnl aclocal-1.4 backwards compatibility:
7508dnl AC_DEFUN([LT_AC_PROG_RC], [])
7509
7510
7511# _LT_DECL_EGREP
7512# --------------
7513# If we don't have a new enough Autoconf to choose the best grep
7514# available, choose the one first in the user's PATH.
7515m4_defun([_LT_DECL_EGREP],
7516[AC_REQUIRE([AC_PROG_EGREP])dnl
7517AC_REQUIRE([AC_PROG_FGREP])dnl
7518test -z "$GREP" && GREP=grep
7519_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7520_LT_DECL([], [EGREP], [1], [An ERE matcher])
7521_LT_DECL([], [FGREP], [1], [A literal string matcher])
7522dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7523AC_SUBST([GREP])
7524])
7525
7526
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05007527# _LT_DECL_OBJDUMP
7528# --------------
7529# If we don't have a new enough Autoconf to choose the best objdump
7530# available, choose the one first in the user's PATH.
7531m4_defun([_LT_DECL_OBJDUMP],
7532[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7533test -z "$OBJDUMP" && OBJDUMP=objdump
7534_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7535AC_SUBST([OBJDUMP])
7536])
7537
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007538# _LT_DECL_DLLTOOL
7539# ----------------
7540# Ensure DLLTOOL variable is set.
7541m4_defun([_LT_DECL_DLLTOOL],
7542[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7543test -z "$DLLTOOL" && DLLTOOL=dlltool
7544_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7545AC_SUBST([DLLTOOL])
7546])
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05007547
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007548# _LT_DECL_SED
7549# ------------
7550# Check for a fully-functional sed program, that truncates
7551# as few characters as possible. Prefer GNU sed if found.
7552m4_defun([_LT_DECL_SED],
7553[AC_PROG_SED
7554test -z "$SED" && SED=sed
7555Xsed="$SED -e 1s/^X//"
7556_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7557_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7558 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7559])# _LT_DECL_SED
7560
7561m4_ifndef([AC_PROG_SED], [
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007562# NOTE: This macro has been submitted for inclusion into #
7563# GNU Autoconf as AC_PROG_SED. When it is available in #
7564# a released version of Autoconf we should remove this #
7565# macro and use it instead. #
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007566
7567m4_defun([AC_PROG_SED],
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007568[AC_MSG_CHECKING([for a sed that does not truncate output])
7569AC_CACHE_VAL(lt_cv_path_SED,
7570[# Loop through the user's path and test for sed and gsed.
7571# Then use that list of sed's as ones to test for truncation.
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007572as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7573for as_dir in $PATH
7574do
7575 IFS=$as_save_IFS
7576 test -z "$as_dir" && as_dir=.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06007577 for lt_ac_prog in sed gsed; do
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007578 for ac_exec_ext in '' $ac_executable_extensions; do
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06007579 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7580 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007581 fi
7582 done
7583 done
7584done
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007585IFS=$as_save_IFS
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06007586lt_ac_max=0
7587lt_ac_count=0
7588# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7589# along with /bin/sed that truncates output.
7590for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
7591 test ! -f $lt_ac_sed && continue
7592 cat /dev/null > conftest.in
7593 lt_ac_count=0
7594 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7595 # Check for GNU sed and select it if it is found.
7596 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7597 lt_cv_path_SED=$lt_ac_sed
7598 break
7599 fi
7600 while true; do
7601 cat conftest.in conftest.in >conftest.tmp
7602 mv conftest.tmp conftest.in
7603 cp conftest.in conftest.nl
7604 echo >>conftest.nl
7605 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7606 cmp -s conftest.out conftest.nl || break
7607 # 10000 chars as input seems more than enough
7608 test $lt_ac_count -gt 10 && break
7609 lt_ac_count=`expr $lt_ac_count + 1`
7610 if test $lt_ac_count -gt $lt_ac_max; then
7611 lt_ac_max=$lt_ac_count
7612 lt_cv_path_SED=$lt_ac_sed
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007613 fi
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007614 done
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06007615done
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007616])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06007617SED=$lt_cv_path_SED
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007618AC_SUBST([SED])
Glenn Randers-Pehrson917648e2004-12-02 18:14:51 -06007619AC_MSG_RESULT([$SED])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007620])#AC_PROG_SED
7621])#m4_ifndef
7622
7623# Old name:
7624AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7625dnl aclocal-1.4 backwards compatibility:
7626dnl AC_DEFUN([LT_AC_PROG_SED], [])
7627
7628
7629# _LT_CHECK_SHELL_FEATURES
7630# ------------------------
7631# Find out whether the shell is Bourne or XSI compatible,
7632# or has some other useful features.
7633m4_defun([_LT_CHECK_SHELL_FEATURES],
7634[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7635# Try some XSI features
7636xsi_shell=no
7637( _lt_dummy="a/b/c"
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007638 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7639 = c,a/b,b/c, \
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007640 && eval 'test $(( 1 + 1 )) -eq 2 \
7641 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7642 && xsi_shell=yes
7643AC_MSG_RESULT([$xsi_shell])
7644_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7645
7646AC_MSG_CHECKING([whether the shell understands "+="])
7647lt_shell_append=no
7648( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7649 >/dev/null 2>&1 \
7650 && lt_shell_append=yes
7651AC_MSG_RESULT([$lt_shell_append])
7652_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7653
7654if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7655 lt_unset=unset
7656else
7657 lt_unset=false
7658fi
7659_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7660
7661# test EBCDIC or ASCII
7662case `echo X|tr X '\101'` in
7663 A) # ASCII based system
7664 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7665 lt_SP2NL='tr \040 \012'
7666 lt_NL2SP='tr \015\012 \040\040'
7667 ;;
7668 *) # EBCDIC based system
7669 lt_SP2NL='tr \100 \n'
7670 lt_NL2SP='tr \r\n \100\100'
7671 ;;
7672esac
7673_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7674_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7675])# _LT_CHECK_SHELL_FEATURES
7676
7677
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007678# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7679# ------------------------------------------------------
7680# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7681# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7682m4_defun([_LT_PROG_FUNCTION_REPLACE],
7683[dnl {
7684sed -e '/^$1 ()$/,/^} # $1 /c\
7685$1 ()\
7686{\
7687m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
7688} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7689 && mv -f "$cfgfile.tmp" "$cfgfile" \
7690 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7691test 0 -eq $? || _lt_function_replace_fail=:
Glenn Randers-Pehrsonbab8df82010-10-04 10:07:18 -05007692])
Glenn Randers-Pehrsonbab8df82010-10-04 10:07:18 -05007693
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007694
7695# _LT_PROG_REPLACE_SHELLFNS
7696# -------------------------
7697# Replace existing portable implementations of several shell functions with
7698# equivalent extended shell implementations where those features are available..
7699m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7700[if test x"$xsi_shell" = xyes; then
7701 _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7702 case ${1} in
7703 */*) func_dirname_result="${1%/*}${2}" ;;
7704 * ) func_dirname_result="${3}" ;;
7705 esac])
7706
7707 _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7708 func_basename_result="${1##*/}"])
7709
7710 _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7711 case ${1} in
7712 */*) func_dirname_result="${1%/*}${2}" ;;
7713 * ) func_dirname_result="${3}" ;;
7714 esac
7715 func_basename_result="${1##*/}"])
7716
7717 _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7718 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7719 # positional parameters, so assign one to ordinary parameter first.
7720 func_stripname_result=${3}
7721 func_stripname_result=${func_stripname_result#"${1}"}
7722 func_stripname_result=${func_stripname_result%"${2}"}])
7723
7724 _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7725 func_split_long_opt_name=${1%%=*}
7726 func_split_long_opt_arg=${1#*=}])
7727
7728 _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7729 func_split_short_opt_arg=${1#??}
7730 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
7731
7732 _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7733 case ${1} in
7734 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7735 *) func_lo2o_result=${1} ;;
7736 esac])
7737
7738 _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
7739
7740 _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
7741
7742 _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
7743fi
7744
7745if test x"$lt_shell_append" = xyes; then
7746 _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
7747
7748 _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7749 func_quote_for_eval "${2}"
7750dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7751 eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
7752
7753 # Save a `func_append' function call where possible by direct use of '+='
7754 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7755 && mv -f "$cfgfile.tmp" "$cfgfile" \
7756 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7757 test 0 -eq $? || _lt_function_replace_fail=:
7758else
7759 # Save a `func_append' function call even when '+=' is not available
7760 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7761 && mv -f "$cfgfile.tmp" "$cfgfile" \
7762 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7763 test 0 -eq $? || _lt_function_replace_fail=:
7764fi
7765
7766if test x"$_lt_function_replace_fail" = x":"; then
7767 AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7768fi
7769])
7770
7771# _LT_PATH_CONVERSION_FUNCTIONS
7772# -----------------------------
7773# Determine which file name conversion functions should be used by
7774# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
7775# for certain cross-compile configurations and native mingw.
7776m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7777[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7778AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7779AC_MSG_CHECKING([how to convert $build file names to $host format])
7780AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7781[case $host in
7782 *-*-mingw* )
7783 case $build in
7784 *-*-mingw* ) # actually msys
7785 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7786 ;;
7787 *-*-cygwin* )
7788 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7789 ;;
7790 * ) # otherwise, assume *nix
7791 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7792 ;;
7793 esac
7794 ;;
7795 *-*-cygwin* )
7796 case $build in
7797 *-*-mingw* ) # actually msys
7798 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7799 ;;
7800 *-*-cygwin* )
7801 lt_cv_to_host_file_cmd=func_convert_file_noop
7802 ;;
7803 * ) # otherwise, assume *nix
7804 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7805 ;;
7806 esac
7807 ;;
7808 * ) # unhandled hosts (and "normal" native builds)
7809 lt_cv_to_host_file_cmd=func_convert_file_noop
7810 ;;
7811esac
7812])
7813to_host_file_cmd=$lt_cv_to_host_file_cmd
7814AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7815_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7816 [0], [convert $build file names to $host format])dnl
7817
7818AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7819AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7820[#assume ordinary cross tools, or native build.
7821lt_cv_to_tool_file_cmd=func_convert_file_noop
7822case $host in
7823 *-*-mingw* )
7824 case $build in
7825 *-*-mingw* ) # actually msys
7826 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7827 ;;
7828 esac
7829 ;;
7830esac
7831])
7832to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7833AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7834_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
7835 [0], [convert $build files to toolchain format])dnl
7836])# _LT_PATH_CONVERSION_FUNCTIONS
7837
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007838# Helper functions for option handling. -*- Autoconf -*-
7839#
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007840# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
7841# Inc.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007842# Written by Gary V. Vaughan, 2004
7843#
7844# This file is free software; the Free Software Foundation gives
7845# unlimited permission to copy and/or distribute it, with or without
7846# modifications, as long as this notice is preserved.
7847
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007848# serial 7 ltoptions.m4
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007849
7850# This is to help aclocal find these macros, as it can't see m4_define.
7851AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
7852
7853
7854# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
7855# ------------------------------------------
7856m4_define([_LT_MANGLE_OPTION],
7857[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
7858
7859
7860# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
7861# ---------------------------------------
7862# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
7863# matching handler defined, dispatch to it. Other OPTION-NAMEs are
7864# saved as a flag.
7865m4_define([_LT_SET_OPTION],
7866[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
7867m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
7868 _LT_MANGLE_DEFUN([$1], [$2]),
7869 [m4_warning([Unknown $1 option `$2'])])[]dnl
7870])
7871
7872
7873# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
7874# ------------------------------------------------------------
7875# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
7876m4_define([_LT_IF_OPTION],
7877[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
7878
7879
7880# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
7881# -------------------------------------------------------
7882# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
7883# are set.
7884m4_define([_LT_UNLESS_OPTIONS],
7885[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
7886 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
7887 [m4_define([$0_found])])])[]dnl
7888m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
7889])[]dnl
7890])
7891
7892
7893# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
7894# ----------------------------------------
7895# OPTION-LIST is a space-separated list of Libtool options associated
7896# with MACRO-NAME. If any OPTION has a matching handler declared with
7897# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
7898# the unknown option and exit.
7899m4_defun([_LT_SET_OPTIONS],
7900[# Set options
7901m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
7902 [_LT_SET_OPTION([$1], _LT_Option)])
7903
7904m4_if([$1],[LT_INIT],[
7905 dnl
7906 dnl Simply set some default values (i.e off) if boolean options were not
7907 dnl specified:
7908 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
7909 ])
7910 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
7911 ])
7912 dnl
7913 dnl If no reference was made to various pairs of opposing options, then
7914 dnl we run the default mode handler for the pair. For example, if neither
7915 dnl `shared' nor `disable-shared' was passed, we enable building of shared
7916 dnl archives by default:
7917 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
7918 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
7919 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
7920 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
7921 [_LT_ENABLE_FAST_INSTALL])
7922 ])
7923])# _LT_SET_OPTIONS
7924
7925
7926
7927# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
7928# -----------------------------------------
7929m4_define([_LT_MANGLE_DEFUN],
7930[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
7931
7932
7933# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
7934# -----------------------------------------------
7935m4_define([LT_OPTION_DEFINE],
7936[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
7937])# LT_OPTION_DEFINE
7938
7939
7940# dlopen
7941# ------
7942LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
7943])
7944
7945AU_DEFUN([AC_LIBTOOL_DLOPEN],
7946[_LT_SET_OPTION([LT_INIT], [dlopen])
7947AC_DIAGNOSE([obsolete],
7948[$0: Remove this warning and the call to _LT_SET_OPTION when you
7949put the `dlopen' option into LT_INIT's first parameter.])
7950])
7951
7952dnl aclocal-1.4 backwards compatibility:
7953dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
7954
7955
7956# win32-dll
7957# ---------
7958# Declare package support for building win32 dll's.
7959LT_OPTION_DEFINE([LT_INIT], [win32-dll],
7960[enable_win32_dll=yes
7961
7962case $host in
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007963*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007964 AC_CHECK_TOOL(AS, as, false)
7965 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7966 AC_CHECK_TOOL(OBJDUMP, objdump, false)
7967 ;;
7968esac
7969
7970test -z "$AS" && AS=as
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007971_LT_DECL([], [AS], [1], [Assembler program])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007972
7973test -z "$DLLTOOL" && DLLTOOL=dlltool
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007974_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007975
7976test -z "$OBJDUMP" && OBJDUMP=objdump
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06007977_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05007978])# win32-dll
7979
7980AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
7981[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7982_LT_SET_OPTION([LT_INIT], [win32-dll])
7983AC_DIAGNOSE([obsolete],
7984[$0: Remove this warning and the call to _LT_SET_OPTION when you
7985put the `win32-dll' option into LT_INIT's first parameter.])
7986])
7987
7988dnl aclocal-1.4 backwards compatibility:
7989dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
7990
7991
7992# _LT_ENABLE_SHARED([DEFAULT])
7993# ----------------------------
7994# implement the --enable-shared flag, and supports the `shared' and
7995# `disable-shared' LT_INIT options.
7996# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
7997m4_define([_LT_ENABLE_SHARED],
7998[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
7999AC_ARG_ENABLE([shared],
8000 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8001 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8002 [p=${PACKAGE-default}
8003 case $enableval in
8004 yes) enable_shared=yes ;;
8005 no) enable_shared=no ;;
8006 *)
8007 enable_shared=no
8008 # Look at the argument we got. We use all the common list separators.
8009 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8010 for pkg in $enableval; do
8011 IFS="$lt_save_ifs"
8012 if test "X$pkg" = "X$p"; then
8013 enable_shared=yes
8014 fi
8015 done
8016 IFS="$lt_save_ifs"
8017 ;;
8018 esac],
8019 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8020
8021 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8022 [Whether or not to build shared libraries])
8023])# _LT_ENABLE_SHARED
8024
8025LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8026LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8027
8028# Old names:
8029AC_DEFUN([AC_ENABLE_SHARED],
8030[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8031])
8032
8033AC_DEFUN([AC_DISABLE_SHARED],
8034[_LT_SET_OPTION([LT_INIT], [disable-shared])
8035])
8036
8037AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8038AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8039
8040dnl aclocal-1.4 backwards compatibility:
8041dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8042dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8043
8044
8045
8046# _LT_ENABLE_STATIC([DEFAULT])
8047# ----------------------------
8048# implement the --enable-static flag, and support the `static' and
8049# `disable-static' LT_INIT options.
8050# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8051m4_define([_LT_ENABLE_STATIC],
8052[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8053AC_ARG_ENABLE([static],
8054 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8055 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8056 [p=${PACKAGE-default}
8057 case $enableval in
8058 yes) enable_static=yes ;;
8059 no) enable_static=no ;;
8060 *)
8061 enable_static=no
8062 # Look at the argument we got. We use all the common list separators.
8063 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8064 for pkg in $enableval; do
8065 IFS="$lt_save_ifs"
8066 if test "X$pkg" = "X$p"; then
8067 enable_static=yes
8068 fi
8069 done
8070 IFS="$lt_save_ifs"
8071 ;;
8072 esac],
8073 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8074
8075 _LT_DECL([build_old_libs], [enable_static], [0],
8076 [Whether or not to build static libraries])
8077])# _LT_ENABLE_STATIC
8078
8079LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8080LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8081
8082# Old names:
8083AC_DEFUN([AC_ENABLE_STATIC],
8084[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8085])
8086
8087AC_DEFUN([AC_DISABLE_STATIC],
8088[_LT_SET_OPTION([LT_INIT], [disable-static])
8089])
8090
8091AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8092AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8093
8094dnl aclocal-1.4 backwards compatibility:
8095dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8096dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8097
8098
8099
8100# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8101# ----------------------------------
8102# implement the --enable-fast-install flag, and support the `fast-install'
8103# and `disable-fast-install' LT_INIT options.
8104# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8105m4_define([_LT_ENABLE_FAST_INSTALL],
8106[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8107AC_ARG_ENABLE([fast-install],
8108 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8109 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8110 [p=${PACKAGE-default}
8111 case $enableval in
8112 yes) enable_fast_install=yes ;;
8113 no) enable_fast_install=no ;;
8114 *)
8115 enable_fast_install=no
8116 # Look at the argument we got. We use all the common list separators.
8117 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8118 for pkg in $enableval; do
8119 IFS="$lt_save_ifs"
8120 if test "X$pkg" = "X$p"; then
8121 enable_fast_install=yes
8122 fi
8123 done
8124 IFS="$lt_save_ifs"
8125 ;;
8126 esac],
8127 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8128
8129_LT_DECL([fast_install], [enable_fast_install], [0],
8130 [Whether or not to optimize for fast installation])dnl
8131])# _LT_ENABLE_FAST_INSTALL
8132
8133LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8134LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8135
8136# Old names:
8137AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8138[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8139AC_DIAGNOSE([obsolete],
8140[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8141the `fast-install' option into LT_INIT's first parameter.])
8142])
8143
8144AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8145[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8146AC_DIAGNOSE([obsolete],
8147[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8148the `disable-fast-install' option into LT_INIT's first parameter.])
8149])
8150
8151dnl aclocal-1.4 backwards compatibility:
8152dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8153dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8154
8155
8156# _LT_WITH_PIC([MODE])
8157# --------------------
8158# implement the --with-pic flag, and support the `pic-only' and `no-pic'
8159# LT_INIT options.
8160# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
8161m4_define([_LT_WITH_PIC],
8162[AC_ARG_WITH([pic],
8163 [AS_HELP_STRING([--with-pic],
8164 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8165 [pic_mode="$withval"],
8166 [pic_mode=default])
8167
8168test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
8169
8170_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8171])# _LT_WITH_PIC
8172
8173LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8174LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8175
8176# Old name:
8177AU_DEFUN([AC_LIBTOOL_PICMODE],
8178[_LT_SET_OPTION([LT_INIT], [pic-only])
8179AC_DIAGNOSE([obsolete],
8180[$0: Remove this warning and the call to _LT_SET_OPTION when you
8181put the `pic-only' option into LT_INIT's first parameter.])
8182])
8183
8184dnl aclocal-1.4 backwards compatibility:
8185dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8186
8187
8188m4_define([_LTDL_MODE], [])
8189LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8190 [m4_define([_LTDL_MODE], [nonrecursive])])
8191LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8192 [m4_define([_LTDL_MODE], [recursive])])
8193LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8194 [m4_define([_LTDL_MODE], [subproject])])
8195
8196m4_define([_LTDL_TYPE], [])
8197LT_OPTION_DEFINE([LTDL_INIT], [installable],
8198 [m4_define([_LTDL_TYPE], [installable])])
8199LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8200 [m4_define([_LTDL_TYPE], [convenience])])
8201
8202# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8203#
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05008204# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
8205# Written by Gary V. Vaughan, 2004
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008206#
8207# This file is free software; the Free Software Foundation gives
8208# unlimited permission to copy and/or distribute it, with or without
8209# modifications, as long as this notice is preserved.
8210
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05008211# serial 6 ltsugar.m4
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008212
8213# This is to help aclocal find these macros, as it can't see m4_define.
8214AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8215
8216
8217# lt_join(SEP, ARG1, [ARG2...])
8218# -----------------------------
8219# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8220# associated separator.
8221# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8222# versions in m4sugar had bugs.
8223m4_define([lt_join],
8224[m4_if([$#], [1], [],
8225 [$#], [2], [[$2]],
8226 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8227m4_define([_lt_join],
8228[m4_if([$#$2], [2], [],
8229 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8230
8231
8232# lt_car(LIST)
8233# lt_cdr(LIST)
8234# ------------
8235# Manipulate m4 lists.
8236# These macros are necessary as long as will still need to support
8237# Autoconf-2.59 which quotes differently.
8238m4_define([lt_car], [[$1]])
8239m4_define([lt_cdr],
8240[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8241 [$#], 1, [],
8242 [m4_dquote(m4_shift($@))])])
8243m4_define([lt_unquote], $1)
8244
8245
8246# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8247# ------------------------------------------
8248# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
8249# Note that neither SEPARATOR nor STRING are expanded; they are appended
8250# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8251# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8252# than defined and empty).
8253#
8254# This macro is needed until we can rely on Autoconf 2.62, since earlier
8255# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8256m4_define([lt_append],
8257[m4_define([$1],
8258 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8259
8260
8261
8262# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8263# ----------------------------------------------------------
8264# Produce a SEP delimited list of all paired combinations of elements of
8265# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8266# has the form PREFIXmINFIXSUFFIXn.
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05008267# Needed until we can rely on m4_combine added in Autoconf 2.62.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008268m4_define([lt_combine],
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05008269[m4_if(m4_eval([$# > 3]), [1],
8270 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8271[[m4_foreach([_Lt_prefix], [$2],
8272 [m4_foreach([_Lt_suffix],
8273 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8274 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008275
8276
8277# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8278# -----------------------------------------------------------------------
8279# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8280# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8281m4_define([lt_if_append_uniq],
8282[m4_ifdef([$1],
8283 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8284 [lt_append([$1], [$2], [$3])$4],
8285 [$5])],
8286 [lt_append([$1], [$2], [$3])$4])])
8287
8288
8289# lt_dict_add(DICT, KEY, VALUE)
8290# -----------------------------
8291m4_define([lt_dict_add],
8292[m4_define([$1($2)], [$3])])
8293
8294
8295# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8296# --------------------------------------------
8297m4_define([lt_dict_add_subkey],
8298[m4_define([$1($2:$3)], [$4])])
8299
8300
8301# lt_dict_fetch(DICT, KEY, [SUBKEY])
8302# ----------------------------------
8303m4_define([lt_dict_fetch],
8304[m4_ifval([$3],
8305 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8306 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8307
8308
8309# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8310# -----------------------------------------------------------------
8311m4_define([lt_if_dict_fetch],
8312[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8313 [$5],
8314 [$6])])
8315
8316
8317# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8318# --------------------------------------------------------------
8319m4_define([lt_dict_filter],
8320[m4_if([$5], [], [],
8321 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8322 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8323 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8324])
8325
8326# ltversion.m4 -- version numbers -*- Autoconf -*-
8327#
8328# Copyright (C) 2004 Free Software Foundation, Inc.
8329# Written by Scott James Remnant, 2004
8330#
8331# This file is free software; the Free Software Foundation gives
8332# unlimited permission to copy and/or distribute it, with or without
8333# modifications, as long as this notice is preserved.
8334
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008335# @configure_input@
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008336
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008337# serial 3293 ltversion.m4
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008338# This file is part of GNU Libtool
8339
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008340m4_define([LT_PACKAGE_VERSION], [2.4])
8341m4_define([LT_PACKAGE_REVISION], [1.3293])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008342
8343AC_DEFUN([LTVERSION_VERSION],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008344[macro_version='2.4'
8345macro_revision='1.3293'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008346_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8347_LT_DECL(, macro_revision, 0)
8348])
8349
8350# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8351#
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008352# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008353# Written by Scott James Remnant, 2004.
8354#
8355# This file is free software; the Free Software Foundation gives
8356# unlimited permission to copy and/or distribute it, with or without
8357# modifications, as long as this notice is preserved.
8358
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008359# serial 5 lt~obsolete.m4
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008360
8361# These exist entirely to fool aclocal when bootstrapping libtool.
8362#
8363# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
8364# which have later been changed to m4_define as they aren't part of the
8365# exported API, or moved to Autoconf or Automake where they belong.
8366#
8367# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8368# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8369# using a macro with the same name in our local m4/libtool.m4 it'll
8370# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8371# and doesn't know about Autoconf macros at all.)
8372#
8373# So we provide this file, which has a silly filename so it's always
8374# included after everything else. This provides aclocal with the
8375# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8376# because those macros already exist, or will be overwritten later.
8377# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8378#
8379# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8380# Yes, that means every name once taken will need to remain here until
8381# we give up compatibility with versions before 1.7, at which point
8382# we need to keep only those names which we still refer to.
8383
8384# This is to help aclocal find these macros, as it can't see m4_define.
8385AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8386
8387m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8388m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8389m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8390m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8391m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8392m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8393m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8394m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8395m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8396m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
8397m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
8398m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8399m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8400m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8401m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
8402m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
8403m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
8404m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
8405m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
8406m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
8407m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
8408m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
8409m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
8410m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
8411m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
8412m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
8413m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
8414m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
8415m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
8416m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
8417m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
8418m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
8419m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
8420m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
8421m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
8422m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
8423m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
8424m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
8425m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
8426m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
8427m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
8428m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008429m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
8430m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
8431m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
8432m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
8433m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
8434m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
8435m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
8436m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
8437m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
8438m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
8439m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
8440m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008441m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
8442m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
8443m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
8444m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
8445m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
8446m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
8447m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008448
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05008449# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008450#
8451# This file is free software; the Free Software Foundation
8452# gives unlimited permission to copy and/or distribute it,
8453# with or without modifications, as long as this notice is preserved.
8454
8455# AM_AUTOMAKE_VERSION(VERSION)
8456# ----------------------------
8457# Automake X.Y traces this macro to ensure aclocal.m4 has been
8458# generated from the m4 files accompanying Automake X.Y.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008459# (This private macro should not be called outside this file.)
8460AC_DEFUN([AM_AUTOMAKE_VERSION],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008461[am__api_version='1.11'
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008462dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
8463dnl require some minimum version. Point them to the right macro.
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008464m4_if([$1], [1.11.1], [],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008465 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
8466])
8467
8468# _AM_AUTOCONF_VERSION(VERSION)
8469# -----------------------------
8470# aclocal traces this macro to find the Autoconf version.
8471# This is a private macro too. Using m4_define simplifies
8472# the logic in aclocal, which can simply ignore this definition.
8473m4_define([_AM_AUTOCONF_VERSION], [])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008474
8475# AM_SET_CURRENT_AUTOMAKE_VERSION
8476# -------------------------------
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008477# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05008478# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008479AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
Glenn Randers-Pehrson13814252010-12-09 06:06:48 -06008480[AM_AUTOMAKE_VERSION([1.11.1])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008481m4_ifndef([AC_AUTOCONF_VERSION],
8482 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05008483_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008484
8485# AM_AUX_DIR_EXPAND -*- Autoconf -*-
8486
8487# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
8488#
8489# This file is free software; the Free Software Foundation
8490# gives unlimited permission to copy and/or distribute it,
8491# with or without modifications, as long as this notice is preserved.
8492
8493# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
8494# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
8495# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
8496#
8497# Of course, Automake must honor this variable whenever it calls a
8498# tool from the auxiliary directory. The problem is that $srcdir (and
8499# therefore $ac_aux_dir as well) can be either absolute or relative,
8500# depending on how configure is run. This is pretty annoying, since
8501# it makes $ac_aux_dir quite unusable in subdirectories: in the top
8502# source directory, any form will work fine, but in subdirectories a
8503# relative path needs to be adjusted first.
8504#
8505# $ac_aux_dir/missing
8506# fails when called from a subdirectory if $ac_aux_dir is relative
8507# $top_srcdir/$ac_aux_dir/missing
8508# fails if $ac_aux_dir is absolute,
8509# fails when called from a subdirectory in a VPATH build with
8510# a relative $ac_aux_dir
8511#
8512# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
8513# are both prefixed by $srcdir. In an in-source build this is usually
8514# harmless because $srcdir is `.', but things will broke when you
8515# start a VPATH build or use an absolute $srcdir.
8516#
8517# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
8518# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
8519# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
8520# and then we would define $MISSING as
8521# MISSING="\${SHELL} $am_aux_dir/missing"
8522# This will work as long as MISSING is not called from configure, because
8523# unfortunately $(top_srcdir) has no meaning in configure.
8524# However there are other variables, like CC, which are often used in
8525# configure, and could therefore not use this "fixed" $ac_aux_dir.
8526#
8527# Another solution, used here, is to always expand $ac_aux_dir to an
8528# absolute PATH. The drawback is that using absolute paths prevent a
8529# configured tree to be moved without reconfiguration.
8530
8531AC_DEFUN([AM_AUX_DIR_EXPAND],
8532[dnl Rely on autoconf to set up CDPATH properly.
8533AC_PREREQ([2.50])dnl
8534# expand $ac_aux_dir to an absolute path
8535am_aux_dir=`cd $ac_aux_dir && pwd`
8536])
8537
8538# AM_CONDITIONAL -*- Autoconf -*-
8539
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008540# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008541# Free Software Foundation, Inc.
8542#
8543# This file is free software; the Free Software Foundation
8544# gives unlimited permission to copy and/or distribute it,
8545# with or without modifications, as long as this notice is preserved.
8546
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008547# serial 9
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008548
8549# AM_CONDITIONAL(NAME, SHELL-CONDITION)
8550# -------------------------------------
8551# Define a conditional.
8552AC_DEFUN([AM_CONDITIONAL],
8553[AC_PREREQ(2.52)dnl
8554 ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
8555 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008556AC_SUBST([$1_TRUE])dnl
8557AC_SUBST([$1_FALSE])dnl
8558_AM_SUBST_NOTMAKE([$1_TRUE])dnl
8559_AM_SUBST_NOTMAKE([$1_FALSE])dnl
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008560m4_define([_AM_COND_VALUE_$1], [$2])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008561if $2; then
8562 $1_TRUE=
8563 $1_FALSE='#'
8564else
8565 $1_TRUE='#'
8566 $1_FALSE=
8567fi
8568AC_CONFIG_COMMANDS_PRE(
8569[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
8570 AC_MSG_ERROR([[conditional "$1" was never defined.
8571Usually this means the macro was only invoked conditionally.]])
8572fi])])
8573
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008574# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008575# Free Software Foundation, Inc.
8576#
8577# This file is free software; the Free Software Foundation
8578# gives unlimited permission to copy and/or distribute it,
8579# with or without modifications, as long as this notice is preserved.
8580
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008581# serial 10
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008582
8583# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
8584# written in clear, in which case automake, when reading aclocal.m4,
8585# will think it sees a *use*, and therefore will trigger all it's
8586# C support machinery. Also note that it means that autoscan, seeing
8587# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
8588
8589
8590# _AM_DEPENDENCIES(NAME)
8591# ----------------------
8592# See how the compiler implements dependency checking.
8593# NAME is "CC", "CXX", "GCJ", or "OBJC".
8594# We try a few techniques and use that to set a single cache variable.
8595#
8596# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
8597# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
8598# dependency, and given that the user is not expected to run this macro,
8599# just rely on AC_PROG_CC.
8600AC_DEFUN([_AM_DEPENDENCIES],
8601[AC_REQUIRE([AM_SET_DEPDIR])dnl
8602AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
8603AC_REQUIRE([AM_MAKE_INCLUDE])dnl
8604AC_REQUIRE([AM_DEP_TRACK])dnl
8605
8606ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
8607 [$1], CXX, [depcc="$CXX" am_compiler_list=],
8608 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008609 [$1], UPC, [depcc="$UPC" am_compiler_list=],
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008610 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
8611 [depcc="$$1" am_compiler_list=])
8612
8613AC_CACHE_CHECK([dependency style of $depcc],
8614 [am_cv_$1_dependencies_compiler_type],
8615[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
8616 # We make a subdir and do the tests there. Otherwise we can end up
8617 # making bogus files that we don't know about and never remove. For
8618 # instance it was reported that on HP-UX the gcc test will end up
8619 # making a dummy file named `D' -- because `-MD' means `put the output
8620 # in D'.
8621 mkdir conftest.dir
8622 # Copy depcomp to subdir because otherwise we won't find it if we're
8623 # using a relative directory.
8624 cp "$am_depcomp" conftest.dir
8625 cd conftest.dir
8626 # We will build objects and dependencies in a subdirectory because
8627 # it helps to detect inapplicable dependency modes. For instance
8628 # both Tru64's cc and ICC support -MD to output dependencies as a
8629 # side effect of compilation, but ICC will put the dependencies in
8630 # the current directory while Tru64 will put them in the object
8631 # directory.
8632 mkdir sub
8633
8634 am_cv_$1_dependencies_compiler_type=none
8635 if test "$am_compiler_list" = ""; then
8636 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
8637 fi
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008638 am__universal=false
8639 m4_case([$1], [CC],
8640 [case " $depcc " in #(
8641 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8642 esac],
8643 [CXX],
8644 [case " $depcc " in #(
8645 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8646 esac])
8647
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008648 for depmode in $am_compiler_list; do
8649 # Setup a source with many dependencies, because some compilers
8650 # like to wrap large dependency lists on column 80 (with \), and
8651 # we should not choose a depcomp mode which is confused by this.
8652 #
8653 # We need to recreate these files for each test, as the compiler may
8654 # overwrite some of them when testing with obscure command lines.
8655 # This happens at least with the AIX C compiler.
8656 : > sub/conftest.c
8657 for i in 1 2 3 4 5 6; do
8658 echo '#include "conftst'$i'.h"' >> sub/conftest.c
8659 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
8660 # Solaris 8's {/usr,}/bin/sh.
8661 touch sub/conftst$i.h
8662 done
8663 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
8664
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008665 # We check with `-c' and `-o' for the sake of the "dashmstdout"
8666 # mode. It turns out that the SunPro C++ compiler does not properly
8667 # handle `-M -o', and we need to detect this. Also, some Intel
8668 # versions had trouble with output in subdirs
8669 am__obj=sub/conftest.${OBJEXT-o}
8670 am__minus_obj="-o $am__obj"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008671 case $depmode in
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008672 gcc)
8673 # This depmode causes a compiler race in universal mode.
8674 test "$am__universal" = false || continue
8675 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008676 nosideeffect)
8677 # after this tag, mechanisms are not by side-effect, so they'll
8678 # only be used when explicitly requested
8679 if test "x$enable_dependency_tracking" = xyes; then
8680 continue
8681 else
8682 break
8683 fi
8684 ;;
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008685 msvisualcpp | msvcmsys)
8686 # This compiler won't grok `-c -o', but also, the minuso test has
8687 # not run yet. These depmodes are late enough in the game, and
8688 # so weak that their functioning should not be impacted.
8689 am__obj=conftest.${OBJEXT-o}
8690 am__minus_obj=
8691 ;;
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008692 none) break ;;
8693 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008694 if depmode=$depmode \
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008695 source=sub/conftest.c object=$am__obj \
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008696 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008697 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008698 >/dev/null 2>conftest.err &&
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008699 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008700 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008701 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008702 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
8703 # icc doesn't choke on unknown options, it will just issue warnings
8704 # or remarks (even with -Werror). So we grep stderr for any message
8705 # that says an option was ignored or not supported.
8706 # When given -MP, icc 7.0 and 7.1 complain thusly:
8707 # icc: Command line warning: ignoring option '-M'; no argument required
8708 # The diagnosis changed in icc 8.0:
8709 # icc: Command line remark: option '-MP' not supported
8710 if (grep 'ignoring option' conftest.err ||
8711 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
8712 am_cv_$1_dependencies_compiler_type=$depmode
8713 break
8714 fi
8715 fi
8716 done
8717
8718 cd ..
8719 rm -rf conftest.dir
8720else
8721 am_cv_$1_dependencies_compiler_type=none
8722fi
8723])
8724AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
8725AM_CONDITIONAL([am__fastdep$1], [
8726 test "x$enable_dependency_tracking" != xno \
8727 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
8728])
8729
8730
8731# AM_SET_DEPDIR
8732# -------------
8733# Choose a directory name for dependency files.
8734# This macro is AC_REQUIREd in _AM_DEPENDENCIES
8735AC_DEFUN([AM_SET_DEPDIR],
8736[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
8737AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
8738])
8739
8740
8741# AM_DEP_TRACK
8742# ------------
8743AC_DEFUN([AM_DEP_TRACK],
8744[AC_ARG_ENABLE(dependency-tracking,
8745[ --disable-dependency-tracking speeds up one-time build
8746 --enable-dependency-tracking do not reject slow dependency extractors])
8747if test "x$enable_dependency_tracking" != xno; then
8748 am_depcomp="$ac_aux_dir/depcomp"
8749 AMDEPBACKSLASH='\'
8750fi
8751AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008752AC_SUBST([AMDEPBACKSLASH])dnl
8753_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008754])
8755
8756# Generate code to set up dependency tracking. -*- Autoconf -*-
8757
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05008758# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008759# Free Software Foundation, Inc.
8760#
8761# This file is free software; the Free Software Foundation
8762# gives unlimited permission to copy and/or distribute it,
8763# with or without modifications, as long as this notice is preserved.
8764
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008765#serial 5
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008766
8767# _AM_OUTPUT_DEPENDENCY_COMMANDS
8768# ------------------------------
8769AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008770[{
8771 # Autoconf 2.62 quotes --file arguments for eval, but not when files
8772 # are listed without --file. Let's play safe and only enable the eval
8773 # if we detect the quoting.
8774 case $CONFIG_FILES in
8775 *\'*) eval set x "$CONFIG_FILES" ;;
8776 *) set x $CONFIG_FILES ;;
8777 esac
8778 shift
8779 for mf
8780 do
8781 # Strip MF so we end up with the name of the file.
8782 mf=`echo "$mf" | sed -e 's/:.*$//'`
8783 # Check whether this is an Automake generated Makefile or not.
8784 # We used to match only the files named `Makefile.in', but
8785 # some people rename them; so instead we look at the file content.
8786 # Grep'ing the first line is not enough: some people post-process
8787 # each Makefile.in and add a new line on top of each file to say so.
8788 # Grep'ing the whole file is not good either: AIX grep has a line
8789 # limit of 2048, but all sed's we know have understand at least 4000.
8790 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
8791 dirpart=`AS_DIRNAME("$mf")`
8792 else
8793 continue
8794 fi
8795 # Extract the definition of DEPDIR, am__include, and am__quote
8796 # from the Makefile without running `make'.
8797 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
8798 test -z "$DEPDIR" && continue
8799 am__include=`sed -n 's/^am__include = //p' < "$mf"`
8800 test -z "am__include" && continue
8801 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
8802 # When using ansi2knr, U may be empty or an underscore; expand it
8803 U=`sed -n 's/^U = //p' < "$mf"`
8804 # Find all dependency output files, they are included files with
8805 # $(DEPDIR) in their names. We invoke sed twice because it is the
8806 # simplest approach to changing $(DEPDIR) to its actual value in the
8807 # expansion.
8808 for file in `sed -n "
8809 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
8810 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
8811 # Make sure the directory exists.
8812 test -f "$dirpart/$file" && continue
8813 fdir=`AS_DIRNAME(["$file"])`
8814 AS_MKDIR_P([$dirpart/$fdir])
8815 # echo "creating $dirpart/$file"
8816 echo '# dummy' > "$dirpart/$file"
8817 done
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008818 done
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008819}
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008820])# _AM_OUTPUT_DEPENDENCY_COMMANDS
8821
8822
8823# AM_OUTPUT_DEPENDENCY_COMMANDS
8824# -----------------------------
8825# This macro should only be invoked once -- use via AC_REQUIRE.
8826#
8827# This code is only required when automatic dependency tracking
8828# is enabled. FIXME. This creates each `.P' file that we will
8829# need in order to bootstrap the dependency handling code.
8830AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
8831[AC_CONFIG_COMMANDS([depfiles],
8832 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
8833 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
8834])
8835
8836# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
8837# Free Software Foundation, Inc.
8838#
8839# This file is free software; the Free Software Foundation
8840# gives unlimited permission to copy and/or distribute it,
8841# with or without modifications, as long as this notice is preserved.
8842
8843# serial 8
8844
8845# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
8846AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
8847
8848# Do all the work for Automake. -*- Autoconf -*-
8849
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008850# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008851# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008852#
8853# This file is free software; the Free Software Foundation
8854# gives unlimited permission to copy and/or distribute it,
8855# with or without modifications, as long as this notice is preserved.
8856
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008857# serial 16
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008858
8859# This macro actually does too much. Some checks are only needed if
8860# your package does certain things. But this isn't really a big deal.
8861
8862# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
8863# AM_INIT_AUTOMAKE([OPTIONS])
8864# -----------------------------------------------
8865# The call with PACKAGE and VERSION arguments is the old style
8866# call (pre autoconf-2.50), which is being phased out. PACKAGE
8867# and VERSION should now be passed to AC_INIT and removed from
8868# the call to AM_INIT_AUTOMAKE.
8869# We support both call styles for the transition. After
8870# the next Automake release, Autoconf can make the AC_INIT
8871# arguments mandatory, and then we can depend on a new Autoconf
8872# release and drop the old call support.
8873AC_DEFUN([AM_INIT_AUTOMAKE],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008874[AC_PREREQ([2.62])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008875dnl Autoconf wants to disallow AM_ names. We explicitly allow
8876dnl the ones we care about.
8877m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
8878AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
8879AC_REQUIRE([AC_PROG_INSTALL])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008880if test "`cd $srcdir && pwd`" != "`pwd`"; then
8881 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
8882 # is not polluted with repeated "-I."
8883 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
8884 # test to see if srcdir already configured
8885 if test -f $srcdir/config.status; then
8886 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
8887 fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008888fi
8889
8890# test whether we have cygpath
8891if test -z "$CYGPATH_W"; then
8892 if (cygpath --version) >/dev/null 2>/dev/null; then
8893 CYGPATH_W='cygpath -w'
8894 else
8895 CYGPATH_W=echo
8896 fi
8897fi
8898AC_SUBST([CYGPATH_W])
8899
8900# Define the identity of the package.
8901dnl Distinguish between old-style and new-style calls.
8902m4_ifval([$2],
8903[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
8904 AC_SUBST([PACKAGE], [$1])dnl
8905 AC_SUBST([VERSION], [$2])],
8906[_AM_SET_OPTIONS([$1])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008907dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
8908m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
8909 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008910 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
8911 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
8912
8913_AM_IF_OPTION([no-define],,
8914[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
8915 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
8916
8917# Some tools Automake needs.
8918AC_REQUIRE([AM_SANITY_CHECK])dnl
8919AC_REQUIRE([AC_ARG_PROGRAM])dnl
8920AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
8921AM_MISSING_PROG(AUTOCONF, autoconf)
8922AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
8923AM_MISSING_PROG(AUTOHEADER, autoheader)
8924AM_MISSING_PROG(MAKEINFO, makeinfo)
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008925AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
8926AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008927AC_REQUIRE([AM_PROG_MKDIR_P])dnl
8928# We need awk for the "check" target. The system "awk" is bad on
8929# some platforms.
8930AC_REQUIRE([AC_PROG_AWK])dnl
8931AC_REQUIRE([AC_PROG_MAKE_SET])dnl
8932AC_REQUIRE([AM_SET_LEADING_DOT])dnl
8933_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008934 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
8935 [_AM_PROG_TAR([v7])])])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008936_AM_IF_OPTION([no-dependencies],,
8937[AC_PROVIDE_IFELSE([AC_PROG_CC],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008938 [_AM_DEPENDENCIES(CC)],
8939 [define([AC_PROG_CC],
8940 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008941AC_PROVIDE_IFELSE([AC_PROG_CXX],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008942 [_AM_DEPENDENCIES(CXX)],
8943 [define([AC_PROG_CXX],
8944 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008945AC_PROVIDE_IFELSE([AC_PROG_OBJC],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008946 [_AM_DEPENDENCIES(OBJC)],
8947 [define([AC_PROG_OBJC],
8948 defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008949])
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008950_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
8951dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
8952dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
8953dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
8954AC_CONFIG_COMMANDS_PRE(dnl
8955[m4_provide_if([_AM_COMPILER_EXEEXT],
8956 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008957])
8958
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008959dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
8960dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
8961dnl mangled by Autoconf and run in a shell conditional statement.
8962m4_define([_AC_COMPILER_EXEEXT],
8963m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
8964
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008965
8966# When config.status generates a header, we must update the stamp-h file.
8967# This file resides in the same directory as the config header
8968# that is generated. The stamp files are numbered to have different names.
8969
8970# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
8971# loop where config.status creates the headers, so we can generate
8972# our stamp files there.
8973AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
8974[# Compute $1's index in $config_headers.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008975_am_arg=$1
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008976_am_stamp_count=1
8977for _am_header in $config_headers :; do
8978 case $_am_header in
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008979 $_am_arg | $_am_arg:* )
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008980 break ;;
8981 * )
8982 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
8983 esac
8984done
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05008985echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008986
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008987# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06008988#
8989# This file is free software; the Free Software Foundation
8990# gives unlimited permission to copy and/or distribute it,
8991# with or without modifications, as long as this notice is preserved.
8992
8993# AM_PROG_INSTALL_SH
8994# ------------------
8995# Define $install_sh.
8996AC_DEFUN([AM_PROG_INSTALL_SH],
8997[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06008998if test x"${install_sh}" != xset; then
8999 case $am_aux_dir in
9000 *\ * | *\ *)
9001 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9002 *)
9003 install_sh="\${SHELL} $am_aux_dir/install-sh"
9004 esac
9005fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009006AC_SUBST(install_sh)])
9007
9008# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
9009#
9010# This file is free software; the Free Software Foundation
9011# gives unlimited permission to copy and/or distribute it,
9012# with or without modifications, as long as this notice is preserved.
9013
9014# serial 2
9015
9016# Check whether the underlying file-system supports filenames
9017# with a leading dot. For instance MS-DOS doesn't.
9018AC_DEFUN([AM_SET_LEADING_DOT],
9019[rm -rf .tst 2>/dev/null
9020mkdir .tst 2>/dev/null
9021if test -d .tst; then
9022 am__leading_dot=.
9023else
9024 am__leading_dot=_
9025fi
9026rmdir .tst 2>/dev/null
9027AC_SUBST([am__leading_dot])])
9028
9029# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
9030# From Jim Meyering
9031
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009032# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009033# Free Software Foundation, Inc.
9034#
9035# This file is free software; the Free Software Foundation
9036# gives unlimited permission to copy and/or distribute it,
9037# with or without modifications, as long as this notice is preserved.
9038
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009039# serial 5
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009040
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009041# AM_MAINTAINER_MODE([DEFAULT-MODE])
9042# ----------------------------------
9043# Control maintainer-specific portions of Makefiles.
9044# Default is to disable them, unless `enable' is passed literally.
9045# For symmetry, `disable' may be passed as well. Anyway, the user
9046# can override the default with the --enable/--disable switch.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009047AC_DEFUN([AM_MAINTAINER_MODE],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009048[m4_case(m4_default([$1], [disable]),
9049 [enable], [m4_define([am_maintainer_other], [disable])],
9050 [disable], [m4_define([am_maintainer_other], [enable])],
9051 [m4_define([am_maintainer_other], [enable])
9052 m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
9053AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
9054 dnl maintainer-mode's default is 'disable' unless 'enable' is passed
9055 AC_ARG_ENABLE([maintainer-mode],
9056[ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009057 (and sometimes confusing) to the casual installer],
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009058 [USE_MAINTAINER_MODE=$enableval],
9059 [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009060 AC_MSG_RESULT([$USE_MAINTAINER_MODE])
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009061 AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009062 MAINT=$MAINTAINER_MODE_TRUE
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009063 AC_SUBST([MAINT])dnl
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009064]
9065)
9066
9067AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
9068
9069# Check to see how 'make' treats includes. -*- Autoconf -*-
9070
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009071# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009072#
9073# This file is free software; the Free Software Foundation
9074# gives unlimited permission to copy and/or distribute it,
9075# with or without modifications, as long as this notice is preserved.
9076
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009077# serial 4
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009078
9079# AM_MAKE_INCLUDE()
9080# -----------------
9081# Check to see how make treats includes.
9082AC_DEFUN([AM_MAKE_INCLUDE],
9083[am_make=${MAKE-make}
9084cat > confinc << 'END'
9085am__doit:
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009086 @echo this is the am__doit target
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009087.PHONY: am__doit
9088END
9089# If we don't find an include directive, just comment out the code.
9090AC_MSG_CHECKING([for style of include used by $am_make])
9091am__include="#"
9092am__quote=
9093_am_result=none
9094# First try GNU make style include.
9095echo "include confinc" > confmf
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009096# Ignore all kinds of additional output from `make'.
9097case `$am_make -s -f confmf 2> /dev/null` in #(
9098*the\ am__doit\ target*)
9099 am__include=include
9100 am__quote=
9101 _am_result=GNU
9102 ;;
9103esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009104# Now try BSD make style include.
9105if test "$am__include" = "#"; then
9106 echo '.include "confinc"' > confmf
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009107 case `$am_make -s -f confmf 2> /dev/null` in #(
9108 *the\ am__doit\ target*)
9109 am__include=.include
9110 am__quote="\""
9111 _am_result=BSD
9112 ;;
9113 esac
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009114fi
9115AC_SUBST([am__include])
9116AC_SUBST([am__quote])
9117AC_MSG_RESULT([$_am_result])
9118rm -f confinc confmf
9119])
9120
9121# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9122
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009123# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009124# Free Software Foundation, Inc.
9125#
9126# This file is free software; the Free Software Foundation
9127# gives unlimited permission to copy and/or distribute it,
9128# with or without modifications, as long as this notice is preserved.
9129
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009130# serial 6
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009131
9132# AM_MISSING_PROG(NAME, PROGRAM)
9133# ------------------------------
9134AC_DEFUN([AM_MISSING_PROG],
9135[AC_REQUIRE([AM_MISSING_HAS_RUN])
9136$1=${$1-"${am_missing_run}$2"}
9137AC_SUBST($1)])
9138
9139
9140# AM_MISSING_HAS_RUN
9141# ------------------
9142# Define MISSING if not defined so far and test if it supports --run.
9143# If it does, set am_missing_run to use it, otherwise, to nothing.
9144AC_DEFUN([AM_MISSING_HAS_RUN],
9145[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05009146AC_REQUIRE_AUX_FILE([missing])dnl
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009147if test x"${MISSING+set}" != xset; then
9148 case $am_aux_dir in
9149 *\ * | *\ *)
9150 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9151 *)
9152 MISSING="\${SHELL} $am_aux_dir/missing" ;;
9153 esac
9154fi
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009155# Use eval to expand $SHELL
9156if eval "$MISSING --run true"; then
9157 am_missing_run="$MISSING --run "
9158else
9159 am_missing_run=
9160 AC_MSG_WARN([`missing' script is too old or missing])
9161fi
9162])
9163
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05009164# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009165#
9166# This file is free software; the Free Software Foundation
9167# gives unlimited permission to copy and/or distribute it,
9168# with or without modifications, as long as this notice is preserved.
9169
9170# AM_PROG_MKDIR_P
9171# ---------------
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05009172# Check for `mkdir -p'.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009173AC_DEFUN([AM_PROG_MKDIR_P],
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05009174[AC_PREREQ([2.60])dnl
9175AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9176dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
9177dnl while keeping a definition of mkdir_p for backward compatibility.
9178dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
9179dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
9180dnl Makefile.ins that do not define MKDIR_P, so we do our own
9181dnl adjustment using top_builddir (which is defined more often than
9182dnl MKDIR_P).
9183AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
9184case $mkdir_p in
9185 [[\\/$]]* | ?:[[\\/]]*) ;;
9186 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
9187esac
9188])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009189
9190# Helper functions for option handling. -*- Autoconf -*-
9191
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05009192# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc.
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009193#
9194# This file is free software; the Free Software Foundation
9195# gives unlimited permission to copy and/or distribute it,
9196# with or without modifications, as long as this notice is preserved.
9197
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05009198# serial 4
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009199
9200# _AM_MANGLE_OPTION(NAME)
9201# -----------------------
9202AC_DEFUN([_AM_MANGLE_OPTION],
9203[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
9204
9205# _AM_SET_OPTION(NAME)
9206# ------------------------------
9207# Set option NAME. Presently that only means defining a flag for this option.
9208AC_DEFUN([_AM_SET_OPTION],
9209[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
9210
9211# _AM_SET_OPTIONS(OPTIONS)
9212# ----------------------------------
9213# OPTIONS is a space-separated list of Automake options.
9214AC_DEFUN([_AM_SET_OPTIONS],
Glenn Randers-Pehrson glennrp@comcast.net0a2547e2009-05-02 15:23:38 -05009215[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009216
9217# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
9218# -------------------------------------------
9219# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9220AC_DEFUN([_AM_IF_OPTION],
9221[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9222
9223# Check to make sure that the build environment is sane. -*- Autoconf -*-
9224
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009225# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009226# Free Software Foundation, Inc.
9227#
9228# This file is free software; the Free Software Foundation
9229# gives unlimited permission to copy and/or distribute it,
9230# with or without modifications, as long as this notice is preserved.
9231
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009232# serial 5
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009233
9234# AM_SANITY_CHECK
9235# ---------------
9236AC_DEFUN([AM_SANITY_CHECK],
9237[AC_MSG_CHECKING([whether build environment is sane])
9238# Just in case
9239sleep 1
9240echo timestamp > conftest.file
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009241# Reject unsafe characters in $srcdir or the absolute working directory
9242# name. Accept space and tab only in the latter.
9243am_lf='
9244'
9245case `pwd` in
9246 *[[\\\"\#\$\&\'\`$am_lf]]*)
9247 AC_MSG_ERROR([unsafe absolute working directory name]);;
9248esac
9249case $srcdir in
9250 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
9251 AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
9252esac
9253
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009254# Do `set' in a subshell so we don't clobber the current shell's
9255# arguments. Must try -L first in case configure is actually a
9256# symlink; some systems play weird games with the mod time of symlinks
9257# (eg FreeBSD returns the mod time of the symlink's containing
9258# directory).
9259if (
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009260 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009261 if test "$[*]" = "X"; then
9262 # -L didn't work.
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009263 set X `ls -t "$srcdir/configure" conftest.file`
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009264 fi
9265 rm -f conftest.file
9266 if test "$[*]" != "X $srcdir/configure conftest.file" \
9267 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9268
9269 # If neither matched, then we have a broken ls. This can happen
9270 # if, for instance, CONFIG_SHELL is bash and it inherits a
9271 # broken ls alias from the environment. This has actually
9272 # happened. Such a system could not be considered "sane".
9273 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9274alias in your environment])
9275 fi
9276
9277 test "$[2]" = conftest.file
9278 )
9279then
9280 # Ok.
9281 :
9282else
9283 AC_MSG_ERROR([newly created file is older than distributed files!
9284Check your system clock])
9285fi
9286AC_MSG_RESULT(yes)])
9287
9288# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
9289#
9290# This file is free software; the Free Software Foundation
9291# gives unlimited permission to copy and/or distribute it,
9292# with or without modifications, as long as this notice is preserved.
9293
9294# AM_PROG_INSTALL_STRIP
9295# ---------------------
9296# One issue with vendor `install' (even GNU) is that you can't
9297# specify the program used to strip binaries. This is especially
9298# annoying in cross-compiling environments, where the build's strip
9299# is unlikely to handle the host's binaries.
9300# Fortunately install-sh will honor a STRIPPROG variable, so we
9301# always use install-sh in `make install-strip', and initialize
9302# STRIPPROG with the value of the STRIP variable (set by the user).
9303AC_DEFUN([AM_PROG_INSTALL_STRIP],
9304[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9305# Installed binaries are usually stripped using `strip' when the user
9306# run `make install-strip'. However `strip' might not be the right
9307# tool to use in cross-compilation environments, therefore Automake
9308# will honor the `STRIP' environment variable to overrule this program.
9309dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
9310if test "$cross_compiling" != no; then
9311 AC_CHECK_TOOL([STRIP], [strip], :)
9312fi
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05009313INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009314AC_SUBST([INSTALL_STRIP_PROGRAM])])
9315
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009316# Copyright (C) 2006, 2008 Free Software Foundation, Inc.
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05009317#
9318# This file is free software; the Free Software Foundation
9319# gives unlimited permission to copy and/or distribute it,
9320# with or without modifications, as long as this notice is preserved.
9321
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009322# serial 2
9323
Glenn Randers-Pehrsoneb580912008-07-30 14:47:09 -05009324# _AM_SUBST_NOTMAKE(VARIABLE)
9325# ---------------------------
9326# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
9327# This macro is traced by Automake.
9328AC_DEFUN([_AM_SUBST_NOTMAKE])
9329
Glenn Randers-Pehrson197c2f32009-11-12 07:03:54 -06009330# AM_SUBST_NOTMAKE(VARIABLE)
9331# ---------------------------
9332# Public sister of _AM_SUBST_NOTMAKE.
9333AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
9334
Glenn Randers-Pehrsonc3d51c12006-03-02 07:23:18 -06009335# Check how to create a tarball. -*- Autoconf -*-
9336
9337# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
9338#
9339# This file is free software; the Free Software Foundation
9340# gives unlimited permission to copy and/or distribute it,
9341# with or without modifications, as long as this notice is preserved.
9342
9343# serial 2
9344
9345# _AM_PROG_TAR(FORMAT)
9346# --------------------
9347# Check how to create a tarball in format FORMAT.
9348# FORMAT should be one of `v7', `ustar', or `pax'.
9349#
9350# Substitute a variable $(am__tar) that is a command
9351# writing to stdout a FORMAT-tarball containing the directory
9352# $tardir.
9353# tardir=directory && $(am__tar) > result.tar
9354#
9355# Substitute a variable $(am__untar) that extract such
9356# a tarball read from stdin.
9357# $(am__untar) < result.tar
9358AC_DEFUN([_AM_PROG_TAR],
9359[# Always define AMTAR for backward compatibility.
9360AM_MISSING_PROG([AMTAR], [tar])
9361m4_if([$1], [v7],
9362 [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
9363 [m4_case([$1], [ustar],, [pax],,
9364 [m4_fatal([Unknown tar format])])
9365AC_MSG_CHECKING([how to create a $1 tar archive])
9366# Loop over all known methods to create a tar archive until one works.
9367_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
9368_am_tools=${am_cv_prog_tar_$1-$_am_tools}
9369# Do not fold the above two line into one, because Tru64 sh and
9370# Solaris sh will not grok spaces in the rhs of `-'.
9371for _am_tool in $_am_tools
9372do
9373 case $_am_tool in
9374 gnutar)
9375 for _am_tar in tar gnutar gtar;
9376 do
9377 AM_RUN_LOG([$_am_tar --version]) && break
9378 done
9379 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
9380 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
9381 am__untar="$_am_tar -xf -"
9382 ;;
9383 plaintar)
9384 # Must skip GNU tar: if it does not support --format= it doesn't create
9385 # ustar tarball either.
9386 (tar --version) >/dev/null 2>&1 && continue
9387 am__tar='tar chf - "$$tardir"'
9388 am__tar_='tar chf - "$tardir"'
9389 am__untar='tar xf -'
9390 ;;
9391 pax)
9392 am__tar='pax -L -x $1 -w "$$tardir"'
9393 am__tar_='pax -L -x $1 -w "$tardir"'
9394 am__untar='pax -r'
9395 ;;
9396 cpio)
9397 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
9398 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
9399 am__untar='cpio -i -H $1 -d'
9400 ;;
9401 none)
9402 am__tar=false
9403 am__tar_=false
9404 am__untar=false
9405 ;;
9406 esac
9407
9408 # If the value was cached, stop now. We just wanted to have am__tar
9409 # and am__untar set.
9410 test -n "${am_cv_prog_tar_$1}" && break
9411
9412 # tar/untar a dummy directory, and stop if the command works
9413 rm -rf conftest.dir
9414 mkdir conftest.dir
9415 echo GrepMe > conftest.dir/file
9416 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
9417 rm -rf conftest.dir
9418 if test -s conftest.tar; then
9419 AM_RUN_LOG([$am__untar <conftest.tar])
9420 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
9421 fi
9422done
9423rm -rf conftest.dir
9424
9425AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
9426AC_MSG_RESULT([$am_cv_prog_tar_$1])])
9427AC_SUBST([am__tar])
9428AC_SUBST([am__untar])
9429]) # _AM_PROG_TAR
9430