blob: f213f5e0b5f6c3c602b2e564fe4c783afe16b033 [file] [log] [blame]
jimblandy92b1f832009-12-23 22:23:49 +00001# generated automatically by aclocal 1.11 -*- Autoconf -*-
brynercb91a2f2006-08-25 21:14:45 +00002
3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
jimblandy92b1f832009-12-23 22:23:49 +00004# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
brynercb91a2f2006-08-25 21:14:45 +00005# 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
jimblandy92b1f832009-12-23 22:23:49 +000014m4_ifndef([AC_AUTOCONF_VERSION],
15 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
16m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.64],,
17[m4_warning([this file was generated for autoconf 2.64.
18You 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'.])])
mmentovaiaf3c43f2007-05-17 18:34:37 +000021
brynercb91a2f2006-08-25 21:14:45 +000022# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
jimblandy92b1f832009-12-23 22:23:49 +000023#
24# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
25# 2006, 2007, 2008 Free Software Foundation, Inc.
26# Written by Gordon Matzigkeit, 1996
27#
28# This file is free software; the Free Software Foundation gives
29# unlimited permission to copy and/or distribute it, with or without
30# modifications, as long as this notice is preserved.
brynercb91a2f2006-08-25 21:14:45 +000031
jimblandy92b1f832009-12-23 22:23:49 +000032m4_define([_LT_COPYING], [dnl
33# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
34# 2006, 2007, 2008 Free Software Foundation, Inc.
35# Written by Gordon Matzigkeit, 1996
36#
37# This file is part of GNU Libtool.
38#
39# GNU Libtool is free software; you can redistribute it and/or
40# modify it under the terms of the GNU General Public License as
41# published by the Free Software Foundation; either version 2 of
42# the License, or (at your option) any later version.
43#
44# As a special exception to the GNU General Public License,
45# if you distribute this file as part of a program or library that
46# is built using GNU Libtool, you may include this file under the
47# same distribution terms that you use for the rest of that program.
48#
49# GNU Libtool is distributed in the hope that it will be useful,
50# but WITHOUT ANY WARRANTY; without even the implied warranty of
51# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
52# GNU General Public License for more details.
53#
54# You should have received a copy of the GNU General Public License
55# along with GNU Libtool; see the file COPYING. If not, a copy
56# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
57# obtained by writing to the Free Software Foundation, Inc.,
58# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
59])
60
61# serial 56 LT_INIT
brynercb91a2f2006-08-25 21:14:45 +000062
63
jimblandy92b1f832009-12-23 22:23:49 +000064# LT_PREREQ(VERSION)
65# ------------------
66# Complain and exit if this libtool version is less that VERSION.
67m4_defun([LT_PREREQ],
68[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
69 [m4_default([$3],
70 [m4_fatal([Libtool version $1 or higher is required],
71 63)])],
72 [$2])])
brynercb91a2f2006-08-25 21:14:45 +000073
74
jimblandy92b1f832009-12-23 22:23:49 +000075# _LT_CHECK_BUILDDIR
76# ------------------
77# Complain if the absolute build directory name contains unusual characters
78m4_defun([_LT_CHECK_BUILDDIR],
79[case `pwd` in
80 *\ * | *\ *)
81 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
82esac
83])
brynercb91a2f2006-08-25 21:14:45 +000084
85
jimblandy92b1f832009-12-23 22:23:49 +000086# LT_INIT([OPTIONS])
87# ------------------
88AC_DEFUN([LT_INIT],
89[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
90AC_BEFORE([$0], [LT_LANG])dnl
91AC_BEFORE([$0], [LT_OUTPUT])dnl
92AC_BEFORE([$0], [LTDL_INIT])dnl
93m4_require([_LT_CHECK_BUILDDIR])dnl
94
95dnl Autoconf doesn't catch unexpanded LT_ macros by default:
96m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
97m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
98dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
99dnl unless we require an AC_DEFUNed macro:
100AC_REQUIRE([LTOPTIONS_VERSION])dnl
101AC_REQUIRE([LTSUGAR_VERSION])dnl
102AC_REQUIRE([LTVERSION_VERSION])dnl
103AC_REQUIRE([LTOBSOLETE_VERSION])dnl
104m4_require([_LT_PROG_LTMAIN])dnl
105
106dnl Parse OPTIONS
107_LT_SET_OPTIONS([$0], [$1])
brynercb91a2f2006-08-25 21:14:45 +0000108
109# This can be used to rebuild libtool when needed
jimblandy92b1f832009-12-23 22:23:49 +0000110LIBTOOL_DEPS="$ltmain"
brynercb91a2f2006-08-25 21:14:45 +0000111
112# Always use our own libtool.
113LIBTOOL='$(SHELL) $(top_builddir)/libtool'
114AC_SUBST(LIBTOOL)dnl
115
jimblandy92b1f832009-12-23 22:23:49 +0000116_LT_SETUP
117
118# Only expand once:
119m4_define([LT_INIT])
120])# LT_INIT
121
122# Old names:
123AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
124AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
125dnl aclocal-1.4 backwards compatibility:
126dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
127dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
brynercb91a2f2006-08-25 21:14:45 +0000128
129
jimblandy92b1f832009-12-23 22:23:49 +0000130# _LT_CC_BASENAME(CC)
131# -------------------
132# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
133m4_defun([_LT_CC_BASENAME],
134[for cc_temp in $1""; do
135 case $cc_temp in
136 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
137 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
138 \-*) ;;
139 *) break;;
140 esac
141done
142cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
143])
144
145
146# _LT_FILEUTILS_DEFAULTS
147# ----------------------
148# It is okay to use these file commands and assume they have been set
149# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
150m4_defun([_LT_FILEUTILS_DEFAULTS],
151[: ${CP="cp -f"}
152: ${MV="mv -f"}
153: ${RM="rm -f"}
154])# _LT_FILEUTILS_DEFAULTS
155
156
157# _LT_SETUP
158# ---------
159m4_defun([_LT_SETUP],
160[AC_REQUIRE([AC_CANONICAL_HOST])dnl
brynercb91a2f2006-08-25 21:14:45 +0000161AC_REQUIRE([AC_CANONICAL_BUILD])dnl
jimblandy92b1f832009-12-23 22:23:49 +0000162_LT_DECL([], [host_alias], [0], [The host system])dnl
163_LT_DECL([], [host], [0])dnl
164_LT_DECL([], [host_os], [0])dnl
brynercb91a2f2006-08-25 21:14:45 +0000165dnl
jimblandy92b1f832009-12-23 22:23:49 +0000166_LT_DECL([], [build_alias], [0], [The build system])dnl
167_LT_DECL([], [build], [0])dnl
168_LT_DECL([], [build_os], [0])dnl
169dnl
170AC_REQUIRE([AC_PROG_CC])dnl
171AC_REQUIRE([LT_PATH_LD])dnl
172AC_REQUIRE([LT_PATH_NM])dnl
173dnl
174AC_REQUIRE([AC_PROG_LN_S])dnl
175test -z "$LN_S" && LN_S="ln -s"
176_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
177dnl
178AC_REQUIRE([LT_CMD_MAX_LEN])dnl
179_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
180_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
181dnl
182m4_require([_LT_FILEUTILS_DEFAULTS])dnl
183m4_require([_LT_CHECK_SHELL_FEATURES])dnl
184m4_require([_LT_CMD_RELOAD])dnl
185m4_require([_LT_CHECK_MAGIC_METHOD])dnl
186m4_require([_LT_CMD_OLD_ARCHIVE])dnl
187m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
brynercb91a2f2006-08-25 21:14:45 +0000188
jimblandy92b1f832009-12-23 22:23:49 +0000189_LT_CONFIG_LIBTOOL_INIT([
190# See if we are running on zsh, and set the options which allow our
191# commands through without removal of \ escapes INIT.
192if test -n "\${ZSH_VERSION+set}" ; then
193 setopt NO_GLOB_SUBST
194fi
195])
196if test -n "${ZSH_VERSION+set}" ; then
197 setopt NO_GLOB_SUBST
198fi
199
200_LT_CHECK_OBJDIR
201
202m4_require([_LT_TAG_COMPILER])dnl
203_LT_PROG_ECHO_BACKSLASH
brynercb91a2f2006-08-25 21:14:45 +0000204
205case $host_os in
206aix3*)
207 # AIX sometimes has problems with the GCC collect2 program. For some
208 # reason, if we set the COLLECT_NAMES environment variable, the problems
209 # vanish in a puff of smoke.
210 if test "X${COLLECT_NAMES+set}" != Xset; then
211 COLLECT_NAMES=
212 export COLLECT_NAMES
213 fi
214 ;;
215esac
216
217# Sed substitution that helps us do robust quoting. It backslashifies
218# metacharacters that are still active within double-quoted strings.
jimblandy92b1f832009-12-23 22:23:49 +0000219sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
brynercb91a2f2006-08-25 21:14:45 +0000220
221# Same as above, but do not quote variable references.
jimblandy92b1f832009-12-23 22:23:49 +0000222double_quote_subst='s/\([["`\\]]\)/\\\1/g'
brynercb91a2f2006-08-25 21:14:45 +0000223
224# Sed substitution to delay expansion of an escaped shell variable in a
225# double_quote_subst'ed string.
226delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
227
jimblandy92b1f832009-12-23 22:23:49 +0000228# Sed substitution to delay expansion of an escaped single quote.
229delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
230
brynercb91a2f2006-08-25 21:14:45 +0000231# Sed substitution to avoid accidental globbing in evaled expressions
232no_glob_subst='s/\*/\\\*/g'
233
brynercb91a2f2006-08-25 21:14:45 +0000234# Global variables:
jimblandy92b1f832009-12-23 22:23:49 +0000235ofile=libtool
brynercb91a2f2006-08-25 21:14:45 +0000236can_build_shared=yes
237
mmentovai8c2a4de2006-09-20 16:20:15 +0000238# All known linkers require a `.a' archive for static linking (except MSVC,
brynercb91a2f2006-08-25 21:14:45 +0000239# which needs '.lib').
240libext=a
brynercb91a2f2006-08-25 21:14:45 +0000241
jimblandy92b1f832009-12-23 22:23:49 +0000242with_gnu_ld="$lt_cv_prog_gnu_ld"
brynercb91a2f2006-08-25 21:14:45 +0000243
244old_CC="$CC"
245old_CFLAGS="$CFLAGS"
246
247# Set sane defaults for various variables
brynercb91a2f2006-08-25 21:14:45 +0000248test -z "$CC" && CC=cc
249test -z "$LTCC" && LTCC=$CC
mmentovai8c2a4de2006-09-20 16:20:15 +0000250test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
brynercb91a2f2006-08-25 21:14:45 +0000251test -z "$LD" && LD=ld
brynercb91a2f2006-08-25 21:14:45 +0000252test -z "$ac_objext" && ac_objext=o
253
jimblandy92b1f832009-12-23 22:23:49 +0000254_LT_CC_BASENAME([$compiler])
255
256# Only perform the check for file, if the check method requires it
257test -z "$MAGIC_CMD" && MAGIC_CMD=file
258case $deplibs_check_method in
259file_magic*)
260 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
261 _LT_PATH_MAGIC
262 fi
263 ;;
264esac
265
266# Use C for the default configuration in the libtool script
267LT_SUPPORTED_TAG([CC])
268_LT_LANG_C_CONFIG
269_LT_LANG_DEFAULT_CONFIG
270_LT_CONFIG_COMMANDS
271])# _LT_SETUP
272
273
274# _LT_PROG_LTMAIN
275# ---------------
276# Note that this code is called both from `configure', and `config.status'
277# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
278# `config.status' has no value for ac_aux_dir unless we are using Automake,
279# so we pass a copy along to make sure it has a sensible value anyway.
280m4_defun([_LT_PROG_LTMAIN],
281[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
282_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
283ltmain="$ac_aux_dir/ltmain.sh"
284])# _LT_PROG_LTMAIN
285
286
287
288# So that we can recreate a full libtool script including additional
289# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
290# in macros and then make a single call at the end using the `libtool'
291# label.
292
293
294# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
295# ----------------------------------------
296# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
297m4_define([_LT_CONFIG_LIBTOOL_INIT],
298[m4_ifval([$1],
299 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
300 [$1
301])])])
302
303# Initialize.
304m4_define([_LT_OUTPUT_LIBTOOL_INIT])
305
306
307# _LT_CONFIG_LIBTOOL([COMMANDS])
308# ------------------------------
309# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
310m4_define([_LT_CONFIG_LIBTOOL],
311[m4_ifval([$1],
312 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
313 [$1
314])])])
315
316# Initialize.
317m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
318
319
320# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
321# -----------------------------------------------------
322m4_defun([_LT_CONFIG_SAVE_COMMANDS],
323[_LT_CONFIG_LIBTOOL([$1])
324_LT_CONFIG_LIBTOOL_INIT([$2])
325])
326
327
328# _LT_FORMAT_COMMENT([COMMENT])
329# -----------------------------
330# Add leading comment marks to the start of each line, and a trailing
331# full-stop to the whole comment if one is not present already.
332m4_define([_LT_FORMAT_COMMENT],
333[m4_ifval([$1], [
334m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
335 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
336)])
337
338
339
340
341
342# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
343# -------------------------------------------------------------------
344# CONFIGNAME is the name given to the value in the libtool script.
345# VARNAME is the (base) name used in the configure script.
346# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
347# VARNAME. Any other value will be used directly.
348m4_define([_LT_DECL],
349[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
350 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
351 [m4_ifval([$1], [$1], [$2])])
352 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
353 m4_ifval([$4],
354 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
355 lt_dict_add_subkey([lt_decl_dict], [$2],
356 [tagged?], [m4_ifval([$5], [yes], [no])])])
357])
358
359
360# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
361# --------------------------------------------------------
362m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
363
364
365# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
366# ------------------------------------------------
367m4_define([lt_decl_tag_varnames],
368[_lt_decl_filter([tagged?], [yes], $@)])
369
370
371# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
372# ---------------------------------------------------------
373m4_define([_lt_decl_filter],
374[m4_case([$#],
375 [0], [m4_fatal([$0: too few arguments: $#])],
376 [1], [m4_fatal([$0: too few arguments: $#: $1])],
377 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
378 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
379 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
380])
381
382
383# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
384# --------------------------------------------------
385m4_define([lt_decl_quote_varnames],
386[_lt_decl_filter([value], [1], $@)])
387
388
389# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
390# ---------------------------------------------------
391m4_define([lt_decl_dquote_varnames],
392[_lt_decl_filter([value], [2], $@)])
393
394
395# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
396# ---------------------------------------------------
397m4_define([lt_decl_varnames_tagged],
398[m4_assert([$# <= 2])dnl
399_$0(m4_quote(m4_default([$1], [[, ]])),
400 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
401 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
402m4_define([_lt_decl_varnames_tagged],
403[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
404
405
406# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
407# ------------------------------------------------
408m4_define([lt_decl_all_varnames],
409[_$0(m4_quote(m4_default([$1], [[, ]])),
410 m4_if([$2], [],
411 m4_quote(lt_decl_varnames),
412 m4_quote(m4_shift($@))))[]dnl
413])
414m4_define([_lt_decl_all_varnames],
415[lt_join($@, lt_decl_varnames_tagged([$1],
416 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
417])
418
419
420# _LT_CONFIG_STATUS_DECLARE([VARNAME])
421# ------------------------------------
422# Quote a variable value, and forward it to `config.status' so that its
423# declaration there will have the same value as in `configure'. VARNAME
424# must have a single quote delimited value for this to work.
425m4_define([_LT_CONFIG_STATUS_DECLARE],
426[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
427
428
429# _LT_CONFIG_STATUS_DECLARATIONS
430# ------------------------------
431# We delimit libtool config variables with single quotes, so when
432# we write them to config.status, we have to be sure to quote all
433# embedded single quotes properly. In configure, this macro expands
434# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
435#
436# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
437m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
438[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
439 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
440
441
442# _LT_LIBTOOL_TAGS
443# ----------------
444# Output comment and list of tags supported by the script
445m4_defun([_LT_LIBTOOL_TAGS],
446[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
447available_tags="_LT_TAGS"dnl
448])
449
450
451# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
452# -----------------------------------
453# Extract the dictionary values for VARNAME (optionally with TAG) and
454# expand to a commented shell variable setting:
455#
456# # Some comment about what VAR is for.
457# visible_name=$lt_internal_name
458m4_define([_LT_LIBTOOL_DECLARE],
459[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
460 [description])))[]dnl
461m4_pushdef([_libtool_name],
462 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
463m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
464 [0], [_libtool_name=[$]$1],
465 [1], [_libtool_name=$lt_[]$1],
466 [2], [_libtool_name=$lt_[]$1],
467 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
468m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
469])
470
471
472# _LT_LIBTOOL_CONFIG_VARS
473# -----------------------
474# Produce commented declarations of non-tagged libtool config variables
475# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
476# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
477# section) are produced by _LT_LIBTOOL_TAG_VARS.
478m4_defun([_LT_LIBTOOL_CONFIG_VARS],
479[m4_foreach([_lt_var],
480 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
481 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
482
483
484# _LT_LIBTOOL_TAG_VARS(TAG)
485# -------------------------
486m4_define([_LT_LIBTOOL_TAG_VARS],
487[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
488 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
489
490
491# _LT_TAGVAR(VARNAME, [TAGNAME])
492# ------------------------------
493m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
494
495
496# _LT_CONFIG_COMMANDS
497# -------------------
498# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
499# variables for single and double quote escaping we saved from calls
500# to _LT_DECL, we can put quote escaped variables declarations
501# into `config.status', and then the shell code to quote escape them in
502# for loops in `config.status'. Finally, any additional code accumulated
503# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
504m4_defun([_LT_CONFIG_COMMANDS],
505[AC_PROVIDE_IFELSE([LT_OUTPUT],
506 dnl If the libtool generation code has been placed in $CONFIG_LT,
507 dnl instead of duplicating it all over again into config.status,
508 dnl then we will have config.status run $CONFIG_LT later, so it
509 dnl needs to know what name is stored there:
510 [AC_CONFIG_COMMANDS([libtool],
511 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
512 dnl If the libtool generation code is destined for config.status,
513 dnl expand the accumulated commands and init code now:
514 [AC_CONFIG_COMMANDS([libtool],
515 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
516])#_LT_CONFIG_COMMANDS
517
518
519# Initialize.
520m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
521[
522
523# The HP-UX ksh and POSIX shell print the target directory to stdout
524# if CDPATH is set.
525(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
526
527sed_quote_subst='$sed_quote_subst'
528double_quote_subst='$double_quote_subst'
529delay_variable_subst='$delay_variable_subst'
530_LT_CONFIG_STATUS_DECLARATIONS
531LTCC='$LTCC'
532LTCFLAGS='$LTCFLAGS'
533compiler='$compiler_DEFAULT'
534
535# Quote evaled strings.
536for var in lt_decl_all_varnames([[ \
537]], lt_decl_quote_varnames); do
538 case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
539 *[[\\\\\\\`\\"\\\$]]*)
540 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
541 ;;
542 *)
543 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
544 ;;
545 esac
546done
547
548# Double-quote double-evaled strings.
549for var in lt_decl_all_varnames([[ \
550]], lt_decl_dquote_varnames); do
551 case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
552 *[[\\\\\\\`\\"\\\$]]*)
553 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
554 ;;
555 *)
556 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
557 ;;
558 esac
559done
560
561# Fix-up fallback echo if it was mangled by the above quoting rules.
562case \$lt_ECHO in
563*'\\\[$]0 --fallback-echo"')dnl "
564 lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
565 ;;
566esac
567
568_LT_OUTPUT_LIBTOOL_INIT
569])
570
571
572# LT_OUTPUT
573# ---------
574# This macro allows early generation of the libtool script (before
575# AC_OUTPUT is called), incase it is used in configure for compilation
576# tests.
577AC_DEFUN([LT_OUTPUT],
578[: ${CONFIG_LT=./config.lt}
579AC_MSG_NOTICE([creating $CONFIG_LT])
580cat >"$CONFIG_LT" <<_LTEOF
581#! $SHELL
582# Generated by $as_me.
583# Run this file to recreate a libtool stub with the current configuration.
584
585lt_cl_silent=false
586SHELL=\${CONFIG_SHELL-$SHELL}
587_LTEOF
588
589cat >>"$CONFIG_LT" <<\_LTEOF
590AS_SHELL_SANITIZE
591_AS_PREPARE
592
593exec AS_MESSAGE_FD>&1
594exec AS_MESSAGE_LOG_FD>>config.log
595{
596 echo
597 AS_BOX([Running $as_me.])
598} >&AS_MESSAGE_LOG_FD
599
600lt_cl_help="\
601\`$as_me' creates a local libtool stub from the current configuration,
602for use in further configure time tests before the real libtool is
603generated.
604
605Usage: $[0] [[OPTIONS]]
606
607 -h, --help print this help, then exit
608 -V, --version print version number, then exit
609 -q, --quiet do not print progress messages
610 -d, --debug don't remove temporary files
611
612Report bugs to <bug-libtool@gnu.org>."
613
614lt_cl_version="\
615m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
616m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
617configured by $[0], generated by m4_PACKAGE_STRING.
618
619Copyright (C) 2008 Free Software Foundation, Inc.
620This config.lt script is free software; the Free Software Foundation
621gives unlimited permision to copy, distribute and modify it."
622
623while test $[#] != 0
624do
625 case $[1] in
626 --version | --v* | -V )
627 echo "$lt_cl_version"; exit 0 ;;
628 --help | --h* | -h )
629 echo "$lt_cl_help"; exit 0 ;;
630 --debug | --d* | -d )
631 debug=: ;;
632 --quiet | --q* | --silent | --s* | -q )
633 lt_cl_silent=: ;;
634
635 -*) AC_MSG_ERROR([unrecognized option: $[1]
636Try \`$[0] --help' for more information.]) ;;
637
638 *) AC_MSG_ERROR([unrecognized argument: $[1]
639Try \`$[0] --help' for more information.]) ;;
640 esac
641 shift
642done
643
644if $lt_cl_silent; then
645 exec AS_MESSAGE_FD>/dev/null
646fi
647_LTEOF
648
649cat >>"$CONFIG_LT" <<_LTEOF
650_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
651_LTEOF
652
653cat >>"$CONFIG_LT" <<\_LTEOF
654AC_MSG_NOTICE([creating $ofile])
655_LT_OUTPUT_LIBTOOL_COMMANDS
656AS_EXIT(0)
657_LTEOF
658chmod +x "$CONFIG_LT"
659
660# configure is writing to config.log, but config.lt does its own redirection,
661# appending to config.log, which fails on DOS, as config.log is still kept
662# open by configure. Here we exec the FD to /dev/null, effectively closing
663# config.log, so it can be properly (re)opened and appended to by config.lt.
664if test "$no_create" != yes; then
665 lt_cl_success=:
666 test "$silent" = yes &&
667 lt_config_lt_args="$lt_config_lt_args --quiet"
668 exec AS_MESSAGE_LOG_FD>/dev/null
669 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
670 exec AS_MESSAGE_LOG_FD>>config.log
671 $lt_cl_success || AS_EXIT(1)
672fi
673])# LT_OUTPUT
674
675
676# _LT_CONFIG(TAG)
677# ---------------
678# If TAG is the built-in tag, create an initial libtool script with a
679# default configuration from the untagged config vars. Otherwise add code
680# to config.status for appending the configuration named by TAG from the
681# matching tagged config vars.
682m4_defun([_LT_CONFIG],
683[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
684_LT_CONFIG_SAVE_COMMANDS([
685 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
686 m4_if(_LT_TAG, [C], [
687 # See if we are running on zsh, and set the options which allow our
688 # commands through without removal of \ escapes.
689 if test -n "${ZSH_VERSION+set}" ; then
690 setopt NO_GLOB_SUBST
691 fi
692
693 cfgfile="${ofile}T"
694 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
695 $RM "$cfgfile"
696
697 cat <<_LT_EOF >> "$cfgfile"
698#! $SHELL
699
700# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
701# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
702# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
703# NOTE: Changes made to this file will be lost: look at ltmain.sh.
704#
705_LT_COPYING
706_LT_LIBTOOL_TAGS
707
708# ### BEGIN LIBTOOL CONFIG
709_LT_LIBTOOL_CONFIG_VARS
710_LT_LIBTOOL_TAG_VARS
711# ### END LIBTOOL CONFIG
712
713_LT_EOF
714
715 case $host_os in
716 aix3*)
717 cat <<\_LT_EOF >> "$cfgfile"
718# AIX sometimes has problems with the GCC collect2 program. For some
719# reason, if we set the COLLECT_NAMES environment variable, the problems
720# vanish in a puff of smoke.
721if test "X${COLLECT_NAMES+set}" != Xset; then
722 COLLECT_NAMES=
723 export COLLECT_NAMES
724fi
725_LT_EOF
726 ;;
727 esac
728
729 _LT_PROG_LTMAIN
730
731 # We use sed instead of cat because bash on DJGPP gets confused if
732 # if finds mixed CR/LF and LF-only lines. Since sed operates in
733 # text mode, it properly converts lines to CR/LF. This bash problem
734 # is reportedly fixed, but why not run on old versions too?
735 sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
736 || (rm -f "$cfgfile"; exit 1)
737
738 _LT_PROG_XSI_SHELLFNS
739
740 sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
741 || (rm -f "$cfgfile"; exit 1)
742
743 mv -f "$cfgfile" "$ofile" ||
744 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
745 chmod +x "$ofile"
746],
747[cat <<_LT_EOF >> "$ofile"
748
749dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
750dnl in a comment (ie after a #).
751# ### BEGIN LIBTOOL TAG CONFIG: $1
752_LT_LIBTOOL_TAG_VARS(_LT_TAG)
753# ### END LIBTOOL TAG CONFIG: $1
754_LT_EOF
755])dnl /m4_if
756],
757[m4_if([$1], [], [
758 PACKAGE='$PACKAGE'
759 VERSION='$VERSION'
760 TIMESTAMP='$TIMESTAMP'
761 RM='$RM'
762 ofile='$ofile'], [])
763])dnl /_LT_CONFIG_SAVE_COMMANDS
764])# _LT_CONFIG
765
766
767# LT_SUPPORTED_TAG(TAG)
768# ---------------------
769# Trace this macro to discover what tags are supported by the libtool
770# --tag option, using:
771# autoconf --trace 'LT_SUPPORTED_TAG:$1'
772AC_DEFUN([LT_SUPPORTED_TAG], [])
773
774
775# C support is built-in for now
776m4_define([_LT_LANG_C_enabled], [])
777m4_define([_LT_TAGS], [])
778
779
780# LT_LANG(LANG)
781# -------------
782# Enable libtool support for the given language if not already enabled.
783AC_DEFUN([LT_LANG],
784[AC_BEFORE([$0], [LT_OUTPUT])dnl
785m4_case([$1],
786 [C], [_LT_LANG(C)],
787 [C++], [_LT_LANG(CXX)],
788 [Java], [_LT_LANG(GCJ)],
789 [Fortran 77], [_LT_LANG(F77)],
790 [Fortran], [_LT_LANG(FC)],
791 [Windows Resource], [_LT_LANG(RC)],
792 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
793 [_LT_LANG($1)],
794 [m4_fatal([$0: unsupported language: "$1"])])])dnl
795])# LT_LANG
796
797
798# _LT_LANG(LANGNAME)
799# ------------------
800m4_defun([_LT_LANG],
801[m4_ifdef([_LT_LANG_]$1[_enabled], [],
802 [LT_SUPPORTED_TAG([$1])dnl
803 m4_append([_LT_TAGS], [$1 ])dnl
804 m4_define([_LT_LANG_]$1[_enabled], [])dnl
805 _LT_LANG_$1_CONFIG($1)])dnl
806])# _LT_LANG
807
808
809# _LT_LANG_DEFAULT_CONFIG
810# -----------------------
811m4_defun([_LT_LANG_DEFAULT_CONFIG],
812[AC_PROVIDE_IFELSE([AC_PROG_CXX],
813 [LT_LANG(CXX)],
814 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
815
816AC_PROVIDE_IFELSE([AC_PROG_F77],
817 [LT_LANG(F77)],
818 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
819
820AC_PROVIDE_IFELSE([AC_PROG_FC],
821 [LT_LANG(FC)],
822 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
823
824dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
825dnl pulling things in needlessly.
826AC_PROVIDE_IFELSE([AC_PROG_GCJ],
827 [LT_LANG(GCJ)],
828 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
829 [LT_LANG(GCJ)],
830 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
831 [LT_LANG(GCJ)],
832 [m4_ifdef([AC_PROG_GCJ],
833 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
834 m4_ifdef([A][M_PROG_GCJ],
835 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
836 m4_ifdef([LT_PROG_GCJ],
837 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
838
839AC_PROVIDE_IFELSE([LT_PROG_RC],
840 [LT_LANG(RC)],
841 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
842])# _LT_LANG_DEFAULT_CONFIG
843
844# Obsolete macros:
845AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
846AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
847AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
848AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
849dnl aclocal-1.4 backwards compatibility:
850dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
851dnl AC_DEFUN([AC_LIBTOOL_F77], [])
852dnl AC_DEFUN([AC_LIBTOOL_FC], [])
853dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
854
855
856# _LT_TAG_COMPILER
857# ----------------
858m4_defun([_LT_TAG_COMPILER],
859[AC_REQUIRE([AC_PROG_CC])dnl
860
861_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
862_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
863_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
864_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
865
866# If no C compiler was specified, use CC.
867LTCC=${LTCC-"$CC"}
868
869# If no C compiler flags were specified, use CFLAGS.
870LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
871
872# Allow CC to be a program name with arguments.
873compiler=$CC
874])# _LT_TAG_COMPILER
875
876
877# _LT_COMPILER_BOILERPLATE
878# ------------------------
879# Check for compiler boilerplate output or warnings with
880# the simple compiler test code.
881m4_defun([_LT_COMPILER_BOILERPLATE],
882[m4_require([_LT_DECL_SED])dnl
883ac_outfile=conftest.$ac_objext
884echo "$lt_simple_compile_test_code" >conftest.$ac_ext
885eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
886_lt_compiler_boilerplate=`cat conftest.err`
887$RM conftest*
888])# _LT_COMPILER_BOILERPLATE
889
890
891# _LT_LINKER_BOILERPLATE
892# ----------------------
893# Check for linker boilerplate output or warnings with
894# the simple link test code.
895m4_defun([_LT_LINKER_BOILERPLATE],
896[m4_require([_LT_DECL_SED])dnl
897ac_outfile=conftest.$ac_objext
898echo "$lt_simple_link_test_code" >conftest.$ac_ext
899eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
900_lt_linker_boilerplate=`cat conftest.err`
901$RM -r conftest*
902])# _LT_LINKER_BOILERPLATE
903
904# _LT_REQUIRED_DARWIN_CHECKS
905# -------------------------
906m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
907 case $host_os in
908 rhapsody* | darwin*)
909 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
910 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
911 AC_CHECK_TOOL([LIPO], [lipo], [:])
912 AC_CHECK_TOOL([OTOOL], [otool], [:])
913 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
914 _LT_DECL([], [DSYMUTIL], [1],
915 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
916 _LT_DECL([], [NMEDIT], [1],
917 [Tool to change global to local symbols on Mac OS X])
918 _LT_DECL([], [LIPO], [1],
919 [Tool to manipulate fat objects and archives on Mac OS X])
920 _LT_DECL([], [OTOOL], [1],
921 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
922 _LT_DECL([], [OTOOL64], [1],
923 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
924
925 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
926 [lt_cv_apple_cc_single_mod=no
927 if test -z "${LT_MULTI_MODULE}"; then
928 # By default we will add the -single_module flag. You can override
929 # by either setting the environment variable LT_MULTI_MODULE
930 # non-empty at configure time, or by adding -multi_module to the
931 # link flags.
932 rm -rf libconftest.dylib*
933 echo "int foo(void){return 1;}" > conftest.c
934 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
935-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
936 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
937 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
938 _lt_result=$?
939 if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
940 lt_cv_apple_cc_single_mod=yes
941 else
942 cat conftest.err >&AS_MESSAGE_LOG_FD
943 fi
944 rm -rf libconftest.dylib*
945 rm -f conftest.*
946 fi])
947 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
948 [lt_cv_ld_exported_symbols_list],
949 [lt_cv_ld_exported_symbols_list=no
950 save_LDFLAGS=$LDFLAGS
951 echo "_main" > conftest.sym
952 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
953 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
954 [lt_cv_ld_exported_symbols_list=yes],
955 [lt_cv_ld_exported_symbols_list=no])
956 LDFLAGS="$save_LDFLAGS"
957 ])
958 case $host_os in
959 rhapsody* | darwin1.[[012]])
960 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
961 darwin1.*)
962 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
963 darwin*) # darwin 5.x on
964 # if running on 10.5 or later, the deployment target defaults
965 # to the OS version, if on x86, and 10.4, the deployment
966 # target defaults to 10.4. Don't you love it?
967 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
968 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
969 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
970 10.[[012]]*)
971 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
972 10.*)
973 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
974 esac
975 ;;
976 esac
977 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
978 _lt_dar_single_mod='$single_module'
979 fi
980 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
981 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
982 else
983 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
984 fi
985 if test "$DSYMUTIL" != ":"; then
986 _lt_dsymutil='~$DSYMUTIL $lib || :'
987 else
988 _lt_dsymutil=
989 fi
990 ;;
991 esac
992])
993
994
995# _LT_DARWIN_LINKER_FEATURES
996# --------------------------
997# Checks for linker and compiler features on darwin
998m4_defun([_LT_DARWIN_LINKER_FEATURES],
999[
1000 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1001 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1002 _LT_TAGVAR(hardcode_direct, $1)=no
1003 _LT_TAGVAR(hardcode_automatic, $1)=yes
1004 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1005 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1006 _LT_TAGVAR(link_all_deplibs, $1)=yes
1007 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1008 case $cc_basename in
1009 ifort*) _lt_dar_can_shared=yes ;;
1010 *) _lt_dar_can_shared=$GCC ;;
1011 esac
1012 if test "$_lt_dar_can_shared" = "yes"; then
1013 output_verbose_link_cmd=echo
1014 _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}"
1015 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1016 _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}"
1017 _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}"
1018 m4_if([$1], [CXX],
1019[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1020 _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}"
1021 _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}"
1022 fi
1023],[])
1024 else
1025 _LT_TAGVAR(ld_shlibs, $1)=no
1026 fi
1027])
1028
1029# _LT_SYS_MODULE_PATH_AIX
1030# -----------------------
1031# Links a minimal program and checks the executable
1032# for the system default hardcoded library path. In most cases,
1033# this is /usr/lib:/lib, but when the MPI compilers are used
1034# the location of the communication and MPI libs are included too.
1035# If we don't find anything, use the default library path according
1036# to the aix ld manual.
1037m4_defun([_LT_SYS_MODULE_PATH_AIX],
1038[m4_require([_LT_DECL_SED])dnl
1039AC_LINK_IFELSE(AC_LANG_PROGRAM,[
1040lt_aix_libpath_sed='
1041 /Import File Strings/,/^$/ {
1042 /^0/ {
1043 s/^0 *\(.*\)$/\1/
1044 p
1045 }
1046 }'
1047aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1048# Check for a 64-bit object if we didn't find anything.
1049if test -z "$aix_libpath"; then
1050 aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1051fi],[])
1052if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
1053])# _LT_SYS_MODULE_PATH_AIX
1054
1055
1056# _LT_SHELL_INIT(ARG)
1057# -------------------
1058m4_define([_LT_SHELL_INIT],
1059[ifdef([AC_DIVERSION_NOTICE],
1060 [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
1061 [AC_DIVERT_PUSH(NOTICE)])
1062$1
1063AC_DIVERT_POP
1064])# _LT_SHELL_INIT
1065
1066
1067# _LT_PROG_ECHO_BACKSLASH
1068# -----------------------
1069# Add some code to the start of the generated configure script which
1070# will find an echo command which doesn't interpret backslashes.
1071m4_defun([_LT_PROG_ECHO_BACKSLASH],
1072[_LT_SHELL_INIT([
1073# Check that we are running under the correct shell.
1074SHELL=${CONFIG_SHELL-/bin/sh}
1075
1076case X$lt_ECHO in
1077X*--fallback-echo)
1078 # Remove one level of quotation (which was required for Make).
1079 ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
1080 ;;
1081esac
1082
1083ECHO=${lt_ECHO-echo}
1084if test "X[$]1" = X--no-reexec; then
1085 # Discard the --no-reexec flag, and continue.
1086 shift
1087elif test "X[$]1" = X--fallback-echo; then
1088 # Avoid inline document here, it may be left over
1089 :
1090elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
1091 # Yippee, $ECHO works!
1092 :
1093else
1094 # Restart under the correct shell.
1095 exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
1096fi
1097
1098if test "X[$]1" = X--fallback-echo; then
1099 # used as fallback echo
1100 shift
1101 cat <<_LT_EOF
1102[$]*
1103_LT_EOF
1104 exit 0
1105fi
1106
1107# The HP-UX ksh and POSIX shell print the target directory to stdout
1108# if CDPATH is set.
1109(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
1110
1111if test -z "$lt_ECHO"; then
1112 if test "X${echo_test_string+set}" != Xset; then
1113 # find a string as large as possible, as long as the shell can cope with it
1114 for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
1115 # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
1116 if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
1117 { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
1118 then
1119 break
1120 fi
1121 done
1122 fi
1123
1124 if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1125 echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1126 test "X$echo_testing_string" = "X$echo_test_string"; then
1127 :
1128 else
1129 # The Solaris, AIX, and Digital Unix default echo programs unquote
1130 # backslashes. This makes it impossible to quote backslashes using
1131 # echo "$something" | sed 's/\\/\\\\/g'
1132 #
1133 # So, first we look for a working echo in the user's PATH.
1134
1135 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
1136 for dir in $PATH /usr/ucb; do
1137 IFS="$lt_save_ifs"
1138 if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
1139 test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
1140 echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
1141 test "X$echo_testing_string" = "X$echo_test_string"; then
1142 ECHO="$dir/echo"
1143 break
1144 fi
1145 done
1146 IFS="$lt_save_ifs"
1147
1148 if test "X$ECHO" = Xecho; then
1149 # We didn't find a better echo, so look for alternatives.
1150 if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
1151 echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
1152 test "X$echo_testing_string" = "X$echo_test_string"; then
1153 # This shell has a builtin print -r that does the trick.
1154 ECHO='print -r'
1155 elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
1156 test "X$CONFIG_SHELL" != X/bin/ksh; then
1157 # If we have ksh, try running configure again with it.
1158 ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
1159 export ORIGINAL_CONFIG_SHELL
1160 CONFIG_SHELL=/bin/ksh
1161 export CONFIG_SHELL
1162 exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
1163 else
1164 # Try using printf.
1165 ECHO='printf %s\n'
1166 if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1167 echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1168 test "X$echo_testing_string" = "X$echo_test_string"; then
1169 # Cool, printf works
1170 :
1171 elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1172 test "X$echo_testing_string" = 'X\t' &&
1173 echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1174 test "X$echo_testing_string" = "X$echo_test_string"; then
1175 CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
1176 export CONFIG_SHELL
1177 SHELL="$CONFIG_SHELL"
1178 export SHELL
1179 ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1180 elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1181 test "X$echo_testing_string" = 'X\t' &&
1182 echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1183 test "X$echo_testing_string" = "X$echo_test_string"; then
1184 ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1185 else
1186 # maybe with a smaller string...
1187 prev=:
1188
1189 for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
1190 if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
1191 then
1192 break
1193 fi
1194 prev="$cmd"
1195 done
1196
1197 if test "$prev" != 'sed 50q "[$]0"'; then
1198 echo_test_string=`eval $prev`
1199 export echo_test_string
1200 exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
1201 else
1202 # Oops. We lost completely, so just stick with echo.
1203 ECHO=echo
1204 fi
1205 fi
1206 fi
1207 fi
1208 fi
1209fi
1210
1211# Copy echo and quote the copy suitably for passing to libtool from
1212# the Makefile, instead of quoting the original, which is used later.
1213lt_ECHO=$ECHO
1214if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
1215 lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
1216fi
1217
1218AC_SUBST(lt_ECHO)
1219])
1220_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1221_LT_DECL([], [ECHO], [1],
1222 [An echo program that does not interpret backslashes])
1223])# _LT_PROG_ECHO_BACKSLASH
1224
1225
1226# _LT_ENABLE_LOCK
1227# ---------------
1228m4_defun([_LT_ENABLE_LOCK],
1229[AC_ARG_ENABLE([libtool-lock],
1230 [AS_HELP_STRING([--disable-libtool-lock],
1231 [avoid locking (might break parallel builds)])])
1232test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1233
1234# Some flags need to be propagated to the compiler or linker for good
1235# libtool support.
1236case $host in
1237ia64-*-hpux*)
1238 # Find out which ABI we are using.
1239 echo 'int i;' > conftest.$ac_ext
1240 if AC_TRY_EVAL(ac_compile); then
1241 case `/usr/bin/file conftest.$ac_objext` in
1242 *ELF-32*)
1243 HPUX_IA64_MODE="32"
1244 ;;
1245 *ELF-64*)
1246 HPUX_IA64_MODE="64"
1247 ;;
1248 esac
1249 fi
1250 rm -rf conftest*
1251 ;;
1252*-*-irix6*)
1253 # Find out which ABI we are using.
1254 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
1255 if AC_TRY_EVAL(ac_compile); then
1256 if test "$lt_cv_prog_gnu_ld" = yes; then
1257 case `/usr/bin/file conftest.$ac_objext` in
1258 *32-bit*)
1259 LD="${LD-ld} -melf32bsmip"
1260 ;;
1261 *N32*)
1262 LD="${LD-ld} -melf32bmipn32"
1263 ;;
1264 *64-bit*)
1265 LD="${LD-ld} -melf64bmip"
1266 ;;
1267 esac
1268 else
1269 case `/usr/bin/file conftest.$ac_objext` in
1270 *32-bit*)
1271 LD="${LD-ld} -32"
1272 ;;
1273 *N32*)
1274 LD="${LD-ld} -n32"
1275 ;;
1276 *64-bit*)
1277 LD="${LD-ld} -64"
1278 ;;
1279 esac
1280 fi
1281 fi
1282 rm -rf conftest*
1283 ;;
1284
1285x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1286s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1287 # Find out which ABI we are using.
1288 echo 'int i;' > conftest.$ac_ext
1289 if AC_TRY_EVAL(ac_compile); then
1290 case `/usr/bin/file conftest.o` in
1291 *32-bit*)
1292 case $host in
1293 x86_64-*kfreebsd*-gnu)
1294 LD="${LD-ld} -m elf_i386_fbsd"
1295 ;;
1296 x86_64-*linux*)
1297 LD="${LD-ld} -m elf_i386"
1298 ;;
1299 ppc64-*linux*|powerpc64-*linux*)
1300 LD="${LD-ld} -m elf32ppclinux"
1301 ;;
1302 s390x-*linux*)
1303 LD="${LD-ld} -m elf_s390"
1304 ;;
1305 sparc64-*linux*)
1306 LD="${LD-ld} -m elf32_sparc"
1307 ;;
1308 esac
1309 ;;
1310 *64-bit*)
1311 case $host in
1312 x86_64-*kfreebsd*-gnu)
1313 LD="${LD-ld} -m elf_x86_64_fbsd"
1314 ;;
1315 x86_64-*linux*)
1316 LD="${LD-ld} -m elf_x86_64"
1317 ;;
1318 ppc*-*linux*|powerpc*-*linux*)
1319 LD="${LD-ld} -m elf64ppc"
1320 ;;
1321 s390*-*linux*|s390*-*tpf*)
1322 LD="${LD-ld} -m elf64_s390"
1323 ;;
1324 sparc*-*linux*)
1325 LD="${LD-ld} -m elf64_sparc"
1326 ;;
1327 esac
1328 ;;
1329 esac
1330 fi
1331 rm -rf conftest*
1332 ;;
1333
1334*-*-sco3.2v5*)
1335 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1336 SAVE_CFLAGS="$CFLAGS"
1337 CFLAGS="$CFLAGS -belf"
1338 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1339 [AC_LANG_PUSH(C)
1340 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1341 AC_LANG_POP])
1342 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1343 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1344 CFLAGS="$SAVE_CFLAGS"
1345 fi
1346 ;;
1347sparc*-*solaris*)
1348 # Find out which ABI we are using.
1349 echo 'int i;' > conftest.$ac_ext
1350 if AC_TRY_EVAL(ac_compile); then
1351 case `/usr/bin/file conftest.o` in
1352 *64-bit*)
1353 case $lt_cv_prog_gnu_ld in
1354 yes*) LD="${LD-ld} -m elf64_sparc" ;;
1355 *)
1356 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1357 LD="${LD-ld} -64"
1358 fi
1359 ;;
1360 esac
1361 ;;
1362 esac
1363 fi
1364 rm -rf conftest*
1365 ;;
1366esac
1367
1368need_locks="$enable_libtool_lock"
1369])# _LT_ENABLE_LOCK
1370
1371
1372# _LT_CMD_OLD_ARCHIVE
1373# -------------------
1374m4_defun([_LT_CMD_OLD_ARCHIVE],
1375[AC_CHECK_TOOL(AR, ar, false)
1376test -z "$AR" && AR=ar
1377test -z "$AR_FLAGS" && AR_FLAGS=cru
1378_LT_DECL([], [AR], [1], [The archiver])
1379_LT_DECL([], [AR_FLAGS], [1])
1380
1381AC_CHECK_TOOL(STRIP, strip, :)
1382test -z "$STRIP" && STRIP=:
1383_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1384
1385AC_CHECK_TOOL(RANLIB, ranlib, :)
1386test -z "$RANLIB" && RANLIB=:
1387_LT_DECL([], [RANLIB], [1],
1388 [Commands used to install an old-style archive])
1389
brynercb91a2f2006-08-25 21:14:45 +00001390# Determine commands to create old-style static archives.
nealsidb56cfa02009-05-29 00:53:02 +00001391old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
brynercb91a2f2006-08-25 21:14:45 +00001392old_postinstall_cmds='chmod 644 $oldlib'
1393old_postuninstall_cmds=
1394
1395if test -n "$RANLIB"; then
1396 case $host_os in
1397 openbsd*)
mmentovai8c2a4de2006-09-20 16:20:15 +00001398 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
brynercb91a2f2006-08-25 21:14:45 +00001399 ;;
1400 *)
mmentovai8c2a4de2006-09-20 16:20:15 +00001401 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
brynercb91a2f2006-08-25 21:14:45 +00001402 ;;
1403 esac
1404 old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1405fi
jimblandy92b1f832009-12-23 22:23:49 +00001406_LT_DECL([], [old_postinstall_cmds], [2])
1407_LT_DECL([], [old_postuninstall_cmds], [2])
1408_LT_TAGDECL([], [old_archive_cmds], [2],
1409 [Commands used to build an old-style archive])
1410])# _LT_CMD_OLD_ARCHIVE
brynercb91a2f2006-08-25 21:14:45 +00001411
1412
jimblandy92b1f832009-12-23 22:23:49 +00001413# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
brynercb91a2f2006-08-25 21:14:45 +00001414# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1415# ----------------------------------------------------------------
1416# Check whether the given compiler option works
jimblandy92b1f832009-12-23 22:23:49 +00001417AC_DEFUN([_LT_COMPILER_OPTION],
1418[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1419m4_require([_LT_DECL_SED])dnl
brynercb91a2f2006-08-25 21:14:45 +00001420AC_CACHE_CHECK([$1], [$2],
1421 [$2=no
jimblandy92b1f832009-12-23 22:23:49 +00001422 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
nealsidb56cfa02009-05-29 00:53:02 +00001423 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
brynercb91a2f2006-08-25 21:14:45 +00001424 lt_compiler_flag="$3"
1425 # Insert the option either (1) after the last *FLAGS variable, or
1426 # (2) before a word containing "conftest.", or (3) at the end.
1427 # Note that $ac_compile itself does not contain backslashes and begins
1428 # with a dollar sign (not a hyphen), so the echo should work correctly.
1429 # The option is referenced via a variable to avoid confusing sed.
1430 lt_compile=`echo "$ac_compile" | $SED \
mmentovai8c2a4de2006-09-20 16:20:15 +00001431 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
brynercb91a2f2006-08-25 21:14:45 +00001432 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1433 -e 's:$: $lt_compiler_flag:'`
1434 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1435 (eval "$lt_compile" 2>conftest.err)
1436 ac_status=$?
1437 cat conftest.err >&AS_MESSAGE_LOG_FD
1438 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1439 if (exit $ac_status) && test -s "$ac_outfile"; then
1440 # The compiler can only warn and ignore the option if not recognized
mmentovai8c2a4de2006-09-20 16:20:15 +00001441 # So say no if there are warnings other than the usual output.
jimblandy92b1f832009-12-23 22:23:49 +00001442 $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
mmentovai8c2a4de2006-09-20 16:20:15 +00001443 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1444 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
brynercb91a2f2006-08-25 21:14:45 +00001445 $2=yes
1446 fi
1447 fi
jimblandy92b1f832009-12-23 22:23:49 +00001448 $RM conftest*
brynercb91a2f2006-08-25 21:14:45 +00001449])
1450
1451if test x"[$]$2" = xyes; then
jimblandy92b1f832009-12-23 22:23:49 +00001452 m4_if([$5], , :, [$5])
brynercb91a2f2006-08-25 21:14:45 +00001453else
jimblandy92b1f832009-12-23 22:23:49 +00001454 m4_if([$6], , :, [$6])
brynercb91a2f2006-08-25 21:14:45 +00001455fi
jimblandy92b1f832009-12-23 22:23:49 +00001456])# _LT_COMPILER_OPTION
1457
1458# Old name:
1459AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1460dnl aclocal-1.4 backwards compatibility:
1461dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
brynercb91a2f2006-08-25 21:14:45 +00001462
1463
jimblandy92b1f832009-12-23 22:23:49 +00001464# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1465# [ACTION-SUCCESS], [ACTION-FAILURE])
1466# ----------------------------------------------------
1467# Check whether the given linker option works
1468AC_DEFUN([_LT_LINKER_OPTION],
1469[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1470m4_require([_LT_DECL_SED])dnl
nealsidb56cfa02009-05-29 00:53:02 +00001471AC_CACHE_CHECK([$1], [$2],
brynercb91a2f2006-08-25 21:14:45 +00001472 [$2=no
1473 save_LDFLAGS="$LDFLAGS"
1474 LDFLAGS="$LDFLAGS $3"
nealsidb56cfa02009-05-29 00:53:02 +00001475 echo "$lt_simple_link_test_code" > conftest.$ac_ext
brynercb91a2f2006-08-25 21:14:45 +00001476 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
mmentovai8c2a4de2006-09-20 16:20:15 +00001477 # The linker can only warn and ignore the option if not recognized
brynercb91a2f2006-08-25 21:14:45 +00001478 # So say no if there are warnings
1479 if test -s conftest.err; then
1480 # Append any errors to the config.log.
1481 cat conftest.err 1>&AS_MESSAGE_LOG_FD
jimblandy92b1f832009-12-23 22:23:49 +00001482 $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
mmentovai8c2a4de2006-09-20 16:20:15 +00001483 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1484 if diff conftest.exp conftest.er2 >/dev/null; then
1485 $2=yes
1486 fi
brynercb91a2f2006-08-25 21:14:45 +00001487 else
1488 $2=yes
1489 fi
1490 fi
jimblandy92b1f832009-12-23 22:23:49 +00001491 $RM -r conftest*
brynercb91a2f2006-08-25 21:14:45 +00001492 LDFLAGS="$save_LDFLAGS"
1493])
1494
1495if test x"[$]$2" = xyes; then
jimblandy92b1f832009-12-23 22:23:49 +00001496 m4_if([$4], , :, [$4])
brynercb91a2f2006-08-25 21:14:45 +00001497else
jimblandy92b1f832009-12-23 22:23:49 +00001498 m4_if([$5], , :, [$5])
brynercb91a2f2006-08-25 21:14:45 +00001499fi
jimblandy92b1f832009-12-23 22:23:49 +00001500])# _LT_LINKER_OPTION
1501
1502# Old name:
1503AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1504dnl aclocal-1.4 backwards compatibility:
1505dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
brynercb91a2f2006-08-25 21:14:45 +00001506
1507
jimblandy92b1f832009-12-23 22:23:49 +00001508# LT_CMD_MAX_LEN
1509#---------------
1510AC_DEFUN([LT_CMD_MAX_LEN],
1511[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1512# find the maximum length of command line arguments
brynercb91a2f2006-08-25 21:14:45 +00001513AC_MSG_CHECKING([the maximum length of command line arguments])
1514AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1515 i=0
1516 teststring="ABCD"
1517
1518 case $build_os in
1519 msdosdjgpp*)
1520 # On DJGPP, this test can blow up pretty badly due to problems in libc
1521 # (any single argument exceeding 2000 bytes causes a buffer overrun
1522 # during glob expansion). Even if it were fixed, the result of this
1523 # check would be larger than it should be.
1524 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1525 ;;
1526
1527 gnu*)
1528 # Under GNU Hurd, this test is not required because there is
1529 # no limit to the length of command line arguments.
1530 # Libtool will interpret -1 as no limit whatsoever
1531 lt_cv_sys_max_cmd_len=-1;
1532 ;;
1533
jimblandy92b1f832009-12-23 22:23:49 +00001534 cygwin* | mingw* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00001535 # On Win9x/ME, this test blows up -- it succeeds, but takes
1536 # about 5 minutes as the teststring grows exponentially.
1537 # Worse, since 9x/ME are not pre-emptively multitasking,
1538 # you end up with a "frozen" computer, even though with patience
1539 # the test eventually succeeds (with a max line length of 256k).
1540 # Instead, let's just punt: use the minimum linelength reported by
1541 # all of the supported platforms: 8192 (on NT/2K/XP).
1542 lt_cv_sys_max_cmd_len=8192;
1543 ;;
1544
1545 amigaos*)
1546 # On AmigaOS with pdksh, this test takes hours, literally.
1547 # So we just punt and use a minimum line length of 8192.
1548 lt_cv_sys_max_cmd_len=8192;
1549 ;;
1550
mmentovai8c2a4de2006-09-20 16:20:15 +00001551 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1552 # This has been around since 386BSD, at least. Likely further.
1553 if test -x /sbin/sysctl; then
1554 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1555 elif test -x /usr/sbin/sysctl; then
1556 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1557 else
1558 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1559 fi
1560 # And add a safety zone
1561 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1562 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1563 ;;
1564
1565 interix*)
1566 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1567 lt_cv_sys_max_cmd_len=196608
1568 ;;
1569
1570 osf*)
1571 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1572 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1573 # nice to cause kernel panics so lets avoid the loop below.
1574 # First set a reasonable default.
1575 lt_cv_sys_max_cmd_len=16384
1576 #
1577 if test -x /sbin/sysconfig; then
1578 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1579 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1580 esac
1581 fi
1582 ;;
1583 sco3.2v5*)
1584 lt_cv_sys_max_cmd_len=102400
1585 ;;
1586 sysv5* | sco5v6* | sysv4.2uw2*)
1587 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1588 if test -n "$kargmax"; then
jimblandy92b1f832009-12-23 22:23:49 +00001589 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
mmentovai8c2a4de2006-09-20 16:20:15 +00001590 else
1591 lt_cv_sys_max_cmd_len=32768
1592 fi
1593 ;;
1594 *)
nealsidb56cfa02009-05-29 00:53:02 +00001595 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1596 if test -n "$lt_cv_sys_max_cmd_len"; then
1597 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1598 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1599 else
jimblandy92b1f832009-12-23 22:23:49 +00001600 # Make teststring a little bigger before we do anything with it.
1601 # a 1K string should be a reasonable start.
1602 for i in 1 2 3 4 5 6 7 8 ; do
1603 teststring=$teststring$teststring
1604 done
nealsidb56cfa02009-05-29 00:53:02 +00001605 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
jimblandy92b1f832009-12-23 22:23:49 +00001606 # If test is not a shell built-in, we'll probably end up computing a
1607 # maximum length that is only half of the actual maximum length, but
1608 # we can't tell.
1609 while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
1610 = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
nealsidb56cfa02009-05-29 00:53:02 +00001611 test $i != 17 # 1/2 MB should be enough
1612 do
1613 i=`expr $i + 1`
1614 teststring=$teststring$teststring
1615 done
jimblandy92b1f832009-12-23 22:23:49 +00001616 # Only check the string length outside the loop.
1617 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
nealsidb56cfa02009-05-29 00:53:02 +00001618 teststring=
jimblandy92b1f832009-12-23 22:23:49 +00001619 # Add a significant safety factor because C++ compilers can tack on
1620 # massive amounts of additional arguments before passing them to the
1621 # linker. It appears as though 1/2 is a usable value.
nealsidb56cfa02009-05-29 00:53:02 +00001622 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1623 fi
brynercb91a2f2006-08-25 21:14:45 +00001624 ;;
1625 esac
1626])
1627if test -n $lt_cv_sys_max_cmd_len ; then
1628 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1629else
1630 AC_MSG_RESULT(none)
1631fi
jimblandy92b1f832009-12-23 22:23:49 +00001632max_cmd_len=$lt_cv_sys_max_cmd_len
1633_LT_DECL([], [max_cmd_len], [0],
1634 [What is the maximum length of a command?])
1635])# LT_CMD_MAX_LEN
1636
1637# Old name:
1638AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1639dnl aclocal-1.4 backwards compatibility:
1640dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
brynercb91a2f2006-08-25 21:14:45 +00001641
1642
jimblandy92b1f832009-12-23 22:23:49 +00001643# _LT_HEADER_DLFCN
1644# ----------------
1645m4_defun([_LT_HEADER_DLFCN],
1646[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1647])# _LT_HEADER_DLFCN
brynercb91a2f2006-08-25 21:14:45 +00001648
1649
jimblandy92b1f832009-12-23 22:23:49 +00001650# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1651# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1652# ----------------------------------------------------------------
1653m4_defun([_LT_TRY_DLOPEN_SELF],
1654[m4_require([_LT_HEADER_DLFCN])dnl
brynercb91a2f2006-08-25 21:14:45 +00001655if test "$cross_compiling" = yes; then :
1656 [$4]
1657else
1658 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1659 lt_status=$lt_dlunknown
jimblandy92b1f832009-12-23 22:23:49 +00001660 cat > conftest.$ac_ext <<_LT_EOF
brynercb91a2f2006-08-25 21:14:45 +00001661[#line __oline__ "configure"
1662#include "confdefs.h"
1663
1664#if HAVE_DLFCN_H
1665#include <dlfcn.h>
1666#endif
1667
1668#include <stdio.h>
1669
1670#ifdef RTLD_GLOBAL
1671# define LT_DLGLOBAL RTLD_GLOBAL
1672#else
1673# ifdef DL_GLOBAL
1674# define LT_DLGLOBAL DL_GLOBAL
1675# else
1676# define LT_DLGLOBAL 0
1677# endif
1678#endif
1679
1680/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1681 find out it does not work in some platform. */
1682#ifndef LT_DLLAZY_OR_NOW
1683# ifdef RTLD_LAZY
1684# define LT_DLLAZY_OR_NOW RTLD_LAZY
1685# else
1686# ifdef DL_LAZY
1687# define LT_DLLAZY_OR_NOW DL_LAZY
1688# else
1689# ifdef RTLD_NOW
1690# define LT_DLLAZY_OR_NOW RTLD_NOW
1691# else
1692# ifdef DL_NOW
1693# define LT_DLLAZY_OR_NOW DL_NOW
1694# else
1695# define LT_DLLAZY_OR_NOW 0
1696# endif
1697# endif
1698# endif
1699# endif
1700#endif
1701
brynercb91a2f2006-08-25 21:14:45 +00001702void fnord() { int i=42;}
1703int main ()
1704{
1705 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1706 int status = $lt_dlunknown;
1707
1708 if (self)
1709 {
1710 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1711 else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1712 /* dlclose (self); */
1713 }
mmentovai8c2a4de2006-09-20 16:20:15 +00001714 else
1715 puts (dlerror ());
brynercb91a2f2006-08-25 21:14:45 +00001716
jimblandy92b1f832009-12-23 22:23:49 +00001717 return status;
brynercb91a2f2006-08-25 21:14:45 +00001718}]
jimblandy92b1f832009-12-23 22:23:49 +00001719_LT_EOF
brynercb91a2f2006-08-25 21:14:45 +00001720 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
mmentovai8c2a4de2006-09-20 16:20:15 +00001721 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
brynercb91a2f2006-08-25 21:14:45 +00001722 lt_status=$?
1723 case x$lt_status in
1724 x$lt_dlno_uscore) $1 ;;
1725 x$lt_dlneed_uscore) $2 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00001726 x$lt_dlunknown|x*) $3 ;;
brynercb91a2f2006-08-25 21:14:45 +00001727 esac
1728 else :
1729 # compilation failed
1730 $3
1731 fi
1732fi
1733rm -fr conftest*
jimblandy92b1f832009-12-23 22:23:49 +00001734])# _LT_TRY_DLOPEN_SELF
brynercb91a2f2006-08-25 21:14:45 +00001735
1736
jimblandy92b1f832009-12-23 22:23:49 +00001737# LT_SYS_DLOPEN_SELF
1738# ------------------
1739AC_DEFUN([LT_SYS_DLOPEN_SELF],
1740[m4_require([_LT_HEADER_DLFCN])dnl
brynercb91a2f2006-08-25 21:14:45 +00001741if test "x$enable_dlopen" != xyes; then
1742 enable_dlopen=unknown
1743 enable_dlopen_self=unknown
1744 enable_dlopen_self_static=unknown
1745else
1746 lt_cv_dlopen=no
1747 lt_cv_dlopen_libs=
1748
1749 case $host_os in
1750 beos*)
1751 lt_cv_dlopen="load_add_on"
1752 lt_cv_dlopen_libs=
1753 lt_cv_dlopen_self=yes
1754 ;;
1755
jimblandy92b1f832009-12-23 22:23:49 +00001756 mingw* | pw32* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00001757 lt_cv_dlopen="LoadLibrary"
1758 lt_cv_dlopen_libs=
jimblandy92b1f832009-12-23 22:23:49 +00001759 ;;
brynercb91a2f2006-08-25 21:14:45 +00001760
1761 cygwin*)
1762 lt_cv_dlopen="dlopen"
1763 lt_cv_dlopen_libs=
jimblandy92b1f832009-12-23 22:23:49 +00001764 ;;
brynercb91a2f2006-08-25 21:14:45 +00001765
1766 darwin*)
1767 # if libdl is installed we need to link against it
1768 AC_CHECK_LIB([dl], [dlopen],
1769 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1770 lt_cv_dlopen="dyld"
1771 lt_cv_dlopen_libs=
1772 lt_cv_dlopen_self=yes
1773 ])
jimblandy92b1f832009-12-23 22:23:49 +00001774 ;;
brynercb91a2f2006-08-25 21:14:45 +00001775
1776 *)
1777 AC_CHECK_FUNC([shl_load],
1778 [lt_cv_dlopen="shl_load"],
1779 [AC_CHECK_LIB([dld], [shl_load],
nealsidb56cfa02009-05-29 00:53:02 +00001780 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
brynercb91a2f2006-08-25 21:14:45 +00001781 [AC_CHECK_FUNC([dlopen],
1782 [lt_cv_dlopen="dlopen"],
1783 [AC_CHECK_LIB([dl], [dlopen],
1784 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1785 [AC_CHECK_LIB([svld], [dlopen],
1786 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1787 [AC_CHECK_LIB([dld], [dld_link],
nealsidb56cfa02009-05-29 00:53:02 +00001788 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
brynercb91a2f2006-08-25 21:14:45 +00001789 ])
1790 ])
1791 ])
1792 ])
1793 ])
1794 ;;
1795 esac
1796
1797 if test "x$lt_cv_dlopen" != xno; then
1798 enable_dlopen=yes
1799 else
1800 enable_dlopen=no
1801 fi
1802
1803 case $lt_cv_dlopen in
1804 dlopen)
1805 save_CPPFLAGS="$CPPFLAGS"
1806 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1807
1808 save_LDFLAGS="$LDFLAGS"
mmentovai8c2a4de2006-09-20 16:20:15 +00001809 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
brynercb91a2f2006-08-25 21:14:45 +00001810
1811 save_LIBS="$LIBS"
1812 LIBS="$lt_cv_dlopen_libs $LIBS"
1813
1814 AC_CACHE_CHECK([whether a program can dlopen itself],
1815 lt_cv_dlopen_self, [dnl
jimblandy92b1f832009-12-23 22:23:49 +00001816 _LT_TRY_DLOPEN_SELF(
brynercb91a2f2006-08-25 21:14:45 +00001817 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1818 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1819 ])
1820
1821 if test "x$lt_cv_dlopen_self" = xyes; then
mmentovai8c2a4de2006-09-20 16:20:15 +00001822 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
brynercb91a2f2006-08-25 21:14:45 +00001823 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
jimblandy92b1f832009-12-23 22:23:49 +00001824 lt_cv_dlopen_self_static, [dnl
1825 _LT_TRY_DLOPEN_SELF(
brynercb91a2f2006-08-25 21:14:45 +00001826 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1827 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1828 ])
1829 fi
1830
1831 CPPFLAGS="$save_CPPFLAGS"
1832 LDFLAGS="$save_LDFLAGS"
1833 LIBS="$save_LIBS"
1834 ;;
1835 esac
1836
1837 case $lt_cv_dlopen_self in
1838 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1839 *) enable_dlopen_self=unknown ;;
1840 esac
1841
1842 case $lt_cv_dlopen_self_static in
1843 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1844 *) enable_dlopen_self_static=unknown ;;
1845 esac
1846fi
jimblandy92b1f832009-12-23 22:23:49 +00001847_LT_DECL([dlopen_support], [enable_dlopen], [0],
1848 [Whether dlopen is supported])
1849_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1850 [Whether dlopen of programs is supported])
1851_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1852 [Whether dlopen of statically linked programs is supported])
1853])# LT_SYS_DLOPEN_SELF
1854
1855# Old name:
1856AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1857dnl aclocal-1.4 backwards compatibility:
1858dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
brynercb91a2f2006-08-25 21:14:45 +00001859
1860
jimblandy92b1f832009-12-23 22:23:49 +00001861# _LT_COMPILER_C_O([TAGNAME])
1862# ---------------------------
1863# Check to see if options -c and -o are simultaneously supported by compiler.
1864# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1865m4_defun([_LT_COMPILER_C_O],
1866[m4_require([_LT_DECL_SED])dnl
1867m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1868m4_require([_LT_TAG_COMPILER])dnl
brynercb91a2f2006-08-25 21:14:45 +00001869AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
jimblandy92b1f832009-12-23 22:23:49 +00001870 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1871 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1872 $RM -r conftest 2>/dev/null
brynercb91a2f2006-08-25 21:14:45 +00001873 mkdir conftest
1874 cd conftest
1875 mkdir out
nealsidb56cfa02009-05-29 00:53:02 +00001876 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
brynercb91a2f2006-08-25 21:14:45 +00001877
1878 lt_compiler_flag="-o out/conftest2.$ac_objext"
1879 # Insert the option either (1) after the last *FLAGS variable, or
1880 # (2) before a word containing "conftest.", or (3) at the end.
1881 # Note that $ac_compile itself does not contain backslashes and begins
1882 # with a dollar sign (not a hyphen), so the echo should work correctly.
1883 lt_compile=`echo "$ac_compile" | $SED \
mmentovai8c2a4de2006-09-20 16:20:15 +00001884 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
brynercb91a2f2006-08-25 21:14:45 +00001885 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1886 -e 's:$: $lt_compiler_flag:'`
1887 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1888 (eval "$lt_compile" 2>out/conftest.err)
1889 ac_status=$?
1890 cat out/conftest.err >&AS_MESSAGE_LOG_FD
1891 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1892 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1893 then
1894 # The compiler can only warn and ignore the option if not recognized
1895 # So say no if there are warnings
jimblandy92b1f832009-12-23 22:23:49 +00001896 $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
mmentovai8c2a4de2006-09-20 16:20:15 +00001897 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1898 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
jimblandy92b1f832009-12-23 22:23:49 +00001899 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00001900 fi
1901 fi
mmentovai8c2a4de2006-09-20 16:20:15 +00001902 chmod u+w . 2>&AS_MESSAGE_LOG_FD
jimblandy92b1f832009-12-23 22:23:49 +00001903 $RM conftest*
brynercb91a2f2006-08-25 21:14:45 +00001904 # SGI C++ compiler will create directory out/ii_files/ for
1905 # template instantiation
jimblandy92b1f832009-12-23 22:23:49 +00001906 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
1907 $RM out/* && rmdir out
brynercb91a2f2006-08-25 21:14:45 +00001908 cd ..
jimblandy92b1f832009-12-23 22:23:49 +00001909 $RM -r conftest
1910 $RM conftest*
brynercb91a2f2006-08-25 21:14:45 +00001911])
jimblandy92b1f832009-12-23 22:23:49 +00001912_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
1913 [Does compiler simultaneously support -c and -o options?])
1914])# _LT_COMPILER_C_O
brynercb91a2f2006-08-25 21:14:45 +00001915
1916
jimblandy92b1f832009-12-23 22:23:49 +00001917# _LT_COMPILER_FILE_LOCKS([TAGNAME])
1918# ----------------------------------
brynercb91a2f2006-08-25 21:14:45 +00001919# Check to see if we can do hard links to lock some files if needed
jimblandy92b1f832009-12-23 22:23:49 +00001920m4_defun([_LT_COMPILER_FILE_LOCKS],
1921[m4_require([_LT_ENABLE_LOCK])dnl
1922m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1923_LT_COMPILER_C_O([$1])
brynercb91a2f2006-08-25 21:14:45 +00001924
1925hard_links="nottested"
jimblandy92b1f832009-12-23 22:23:49 +00001926if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
brynercb91a2f2006-08-25 21:14:45 +00001927 # do not overwrite the value of need_locks provided by the user
1928 AC_MSG_CHECKING([if we can lock with hard links])
1929 hard_links=yes
jimblandy92b1f832009-12-23 22:23:49 +00001930 $RM conftest*
brynercb91a2f2006-08-25 21:14:45 +00001931 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1932 touch conftest.a
1933 ln conftest.a conftest.b 2>&5 || hard_links=no
1934 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1935 AC_MSG_RESULT([$hard_links])
1936 if test "$hard_links" = no; then
1937 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
1938 need_locks=warn
1939 fi
1940else
1941 need_locks=no
1942fi
jimblandy92b1f832009-12-23 22:23:49 +00001943_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
1944])# _LT_COMPILER_FILE_LOCKS
brynercb91a2f2006-08-25 21:14:45 +00001945
1946
jimblandy92b1f832009-12-23 22:23:49 +00001947# _LT_CHECK_OBJDIR
1948# ----------------
1949m4_defun([_LT_CHECK_OBJDIR],
brynercb91a2f2006-08-25 21:14:45 +00001950[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
1951[rm -f .libs 2>/dev/null
1952mkdir .libs 2>/dev/null
1953if test -d .libs; then
1954 lt_cv_objdir=.libs
1955else
1956 # MS-DOS does not allow filenames that begin with a dot.
1957 lt_cv_objdir=_libs
1958fi
1959rmdir .libs 2>/dev/null])
1960objdir=$lt_cv_objdir
jimblandy92b1f832009-12-23 22:23:49 +00001961_LT_DECL([], [objdir], [0],
1962 [The name of the directory that contains temporary libtool files])dnl
1963m4_pattern_allow([LT_OBJDIR])dnl
1964AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
1965 [Define to the sub-directory in which libtool stores uninstalled libraries.])
1966])# _LT_CHECK_OBJDIR
brynercb91a2f2006-08-25 21:14:45 +00001967
1968
jimblandy92b1f832009-12-23 22:23:49 +00001969# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
1970# --------------------------------------
brynercb91a2f2006-08-25 21:14:45 +00001971# Check hardcoding attributes.
jimblandy92b1f832009-12-23 22:23:49 +00001972m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
brynercb91a2f2006-08-25 21:14:45 +00001973[AC_MSG_CHECKING([how to hardcode library paths into programs])
jimblandy92b1f832009-12-23 22:23:49 +00001974_LT_TAGVAR(hardcode_action, $1)=
1975if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
1976 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
1977 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
brynercb91a2f2006-08-25 21:14:45 +00001978
jimblandy92b1f832009-12-23 22:23:49 +00001979 # We can hardcode non-existent directories.
1980 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
brynercb91a2f2006-08-25 21:14:45 +00001981 # If the only mechanism to avoid hardcoding is shlibpath_var, we
1982 # have to relink, otherwise we might link with an installed library
1983 # when we should be linking with a yet-to-be-installed one
jimblandy92b1f832009-12-23 22:23:49 +00001984 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
1985 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
brynercb91a2f2006-08-25 21:14:45 +00001986 # Linking always hardcodes the temporary library directory.
jimblandy92b1f832009-12-23 22:23:49 +00001987 _LT_TAGVAR(hardcode_action, $1)=relink
brynercb91a2f2006-08-25 21:14:45 +00001988 else
1989 # We can link without hardcoding, and we can hardcode nonexisting dirs.
jimblandy92b1f832009-12-23 22:23:49 +00001990 _LT_TAGVAR(hardcode_action, $1)=immediate
brynercb91a2f2006-08-25 21:14:45 +00001991 fi
1992else
1993 # We cannot hardcode anything, or else we can only hardcode existing
1994 # directories.
jimblandy92b1f832009-12-23 22:23:49 +00001995 _LT_TAGVAR(hardcode_action, $1)=unsupported
brynercb91a2f2006-08-25 21:14:45 +00001996fi
jimblandy92b1f832009-12-23 22:23:49 +00001997AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
brynercb91a2f2006-08-25 21:14:45 +00001998
jimblandy92b1f832009-12-23 22:23:49 +00001999if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2000 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
brynercb91a2f2006-08-25 21:14:45 +00002001 # Fast installation is not supported
2002 enable_fast_install=no
2003elif test "$shlibpath_overrides_runpath" = yes ||
2004 test "$enable_shared" = no; then
2005 # Fast installation is not necessary
2006 enable_fast_install=needless
2007fi
jimblandy92b1f832009-12-23 22:23:49 +00002008_LT_TAGDECL([], [hardcode_action], [0],
2009 [How to hardcode a shared library path into an executable])
2010])# _LT_LINKER_HARDCODE_LIBPATH
brynercb91a2f2006-08-25 21:14:45 +00002011
2012
jimblandy92b1f832009-12-23 22:23:49 +00002013# _LT_CMD_STRIPLIB
2014# ----------------
2015m4_defun([_LT_CMD_STRIPLIB],
2016[m4_require([_LT_DECL_EGREP])
2017striplib=
brynercb91a2f2006-08-25 21:14:45 +00002018old_striplib=
2019AC_MSG_CHECKING([whether stripping libraries is possible])
jimblandy92b1f832009-12-23 22:23:49 +00002020if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
brynercb91a2f2006-08-25 21:14:45 +00002021 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2022 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2023 AC_MSG_RESULT([yes])
2024else
2025# FIXME - insert some real tests, host_os isn't really good enough
2026 case $host_os in
jimblandy92b1f832009-12-23 22:23:49 +00002027 darwin*)
2028 if test -n "$STRIP" ; then
2029 striplib="$STRIP -x"
2030 old_striplib="$STRIP -S"
2031 AC_MSG_RESULT([yes])
2032 else
2033 AC_MSG_RESULT([no])
2034 fi
2035 ;;
2036 *)
2037 AC_MSG_RESULT([no])
brynercb91a2f2006-08-25 21:14:45 +00002038 ;;
2039 esac
2040fi
jimblandy92b1f832009-12-23 22:23:49 +00002041_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2042_LT_DECL([], [striplib], [1])
2043])# _LT_CMD_STRIPLIB
brynercb91a2f2006-08-25 21:14:45 +00002044
2045
jimblandy92b1f832009-12-23 22:23:49 +00002046# _LT_SYS_DYNAMIC_LINKER([TAG])
brynercb91a2f2006-08-25 21:14:45 +00002047# -----------------------------
2048# PORTME Fill in your ld.so characteristics
jimblandy92b1f832009-12-23 22:23:49 +00002049m4_defun([_LT_SYS_DYNAMIC_LINKER],
2050[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2051m4_require([_LT_DECL_EGREP])dnl
2052m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2053m4_require([_LT_DECL_OBJDUMP])dnl
2054m4_require([_LT_DECL_SED])dnl
nealsidb56cfa02009-05-29 00:53:02 +00002055AC_MSG_CHECKING([dynamic linker characteristics])
jimblandy92b1f832009-12-23 22:23:49 +00002056m4_if([$1],
2057 [], [
brynercb91a2f2006-08-25 21:14:45 +00002058if test "$GCC" = yes; then
nealsidb56cfa02009-05-29 00:53:02 +00002059 case $host_os in
2060 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2061 *) lt_awk_arg="/^libraries:/" ;;
2062 esac
2063 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
jimblandy92b1f832009-12-23 22:23:49 +00002064 if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
brynercb91a2f2006-08-25 21:14:45 +00002065 # if the path contains ";" then we assume it to be the separator
2066 # otherwise default to the standard path separator (i.e. ":") - it is
2067 # assumed that no part of a normal pathname contains ";" but that should
2068 # okay in the real world where ";" in dirpaths is itself problematic.
jimblandy92b1f832009-12-23 22:23:49 +00002069 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
brynercb91a2f2006-08-25 21:14:45 +00002070 else
jimblandy92b1f832009-12-23 22:23:49 +00002071 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
brynercb91a2f2006-08-25 21:14:45 +00002072 fi
nealsidb56cfa02009-05-29 00:53:02 +00002073 # Ok, now we have the path, separated by spaces, we can step through it
2074 # and add multilib dir if necessary.
2075 lt_tmp_lt_search_path_spec=
2076 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2077 for lt_sys_path in $lt_search_path_spec; do
2078 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2079 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2080 else
2081 test -d "$lt_sys_path" && \
2082 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2083 fi
2084 done
jimblandy92b1f832009-12-23 22:23:49 +00002085 lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
nealsidb56cfa02009-05-29 00:53:02 +00002086BEGIN {RS=" "; FS="/|\n";} {
2087 lt_foo="";
2088 lt_count=0;
2089 for (lt_i = NF; lt_i > 0; lt_i--) {
2090 if ($lt_i != "" && $lt_i != ".") {
2091 if ($lt_i == "..") {
2092 lt_count++;
2093 } else {
2094 if (lt_count == 0) {
2095 lt_foo="/" $lt_i lt_foo;
2096 } else {
2097 lt_count--;
2098 }
2099 }
2100 }
2101 }
2102 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2103 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2104}'`
jimblandy92b1f832009-12-23 22:23:49 +00002105 sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
brynercb91a2f2006-08-25 21:14:45 +00002106else
2107 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
nealsidb56cfa02009-05-29 00:53:02 +00002108fi])
jimblandy92b1f832009-12-23 22:23:49 +00002109library_names_spec=
2110libname_spec='lib$name'
2111soname_spec=
2112shrext_cmds=".so"
2113postinstall_cmds=
2114postuninstall_cmds=
2115finish_cmds=
2116finish_eval=
2117shlibpath_var=
2118shlibpath_overrides_runpath=unknown
2119version_type=none
2120dynamic_linker="$host_os ld.so"
2121sys_lib_dlsearch_path_spec="/lib /usr/lib"
brynercb91a2f2006-08-25 21:14:45 +00002122need_lib_prefix=unknown
2123hardcode_into_libs=no
2124
2125# when you set need_version to no, make sure it does not cause -set_version
2126# flags to be left without arguments
2127need_version=unknown
2128
2129case $host_os in
2130aix3*)
2131 version_type=linux
2132 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2133 shlibpath_var=LIBPATH
2134
2135 # AIX 3 has no versioning support, so we append a major version to the name.
2136 soname_spec='${libname}${release}${shared_ext}$major'
2137 ;;
2138
nealsidb56cfa02009-05-29 00:53:02 +00002139aix[[4-9]]*)
brynercb91a2f2006-08-25 21:14:45 +00002140 version_type=linux
2141 need_lib_prefix=no
2142 need_version=no
2143 hardcode_into_libs=yes
2144 if test "$host_cpu" = ia64; then
2145 # AIX 5 supports IA64
2146 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2147 shlibpath_var=LD_LIBRARY_PATH
2148 else
2149 # With GCC up to 2.95.x, collect2 would create an import file
2150 # for dependence libraries. The import file would start with
2151 # the line `#! .'. This would cause the generated library to
2152 # depend on `.', always an invalid library. This was fixed in
2153 # development snapshots of GCC prior to 3.0.
2154 case $host_os in
2155 aix4 | aix4.[[01]] | aix4.[[01]].*)
2156 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2157 echo ' yes '
jimblandy92b1f832009-12-23 22:23:49 +00002158 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
brynercb91a2f2006-08-25 21:14:45 +00002159 :
2160 else
2161 can_build_shared=no
2162 fi
2163 ;;
2164 esac
2165 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2166 # soname into executable. Probably we can add versioning support to
2167 # collect2, so additional links can be useful in future.
2168 if test "$aix_use_runtimelinking" = yes; then
2169 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2170 # instead of lib<name>.a to let people know that these are not
2171 # typical AIX shared libraries.
2172 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2173 else
2174 # We preserve .a as extension for shared libraries through AIX4.2
2175 # and later when we are not doing run time linking.
2176 library_names_spec='${libname}${release}.a $libname.a'
2177 soname_spec='${libname}${release}${shared_ext}$major'
2178 fi
2179 shlibpath_var=LIBPATH
2180 fi
2181 ;;
2182
2183amigaos*)
jimblandy92b1f832009-12-23 22:23:49 +00002184 case $host_cpu in
2185 powerpc)
2186 # Since July 2007 AmigaOS4 officially supports .so libraries.
2187 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2188 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2189 ;;
2190 m68k)
2191 library_names_spec='$libname.ixlibrary $libname.a'
2192 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2193 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''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'
2194 ;;
2195 esac
brynercb91a2f2006-08-25 21:14:45 +00002196 ;;
2197
2198beos*)
2199 library_names_spec='${libname}${shared_ext}'
2200 dynamic_linker="$host_os ld.so"
2201 shlibpath_var=LIBRARY_PATH
2202 ;;
2203
mmentovai8c2a4de2006-09-20 16:20:15 +00002204bsdi[[45]]*)
brynercb91a2f2006-08-25 21:14:45 +00002205 version_type=linux
2206 need_version=no
2207 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2208 soname_spec='${libname}${release}${shared_ext}$major'
2209 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2210 shlibpath_var=LD_LIBRARY_PATH
2211 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2212 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2213 # the default ld.so.conf also contains /usr/contrib/lib and
2214 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2215 # libtool to hard-code these into programs
2216 ;;
2217
jimblandy92b1f832009-12-23 22:23:49 +00002218cygwin* | mingw* | pw32* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00002219 version_type=windows
2220 shrext_cmds=".dll"
2221 need_version=no
2222 need_lib_prefix=no
2223
2224 case $GCC,$host_os in
jimblandy92b1f832009-12-23 22:23:49 +00002225 yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00002226 library_names_spec='$libname.dll.a'
2227 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2228 postinstall_cmds='base_file=`basename \${file}`~
jimblandy92b1f832009-12-23 22:23:49 +00002229 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
brynercb91a2f2006-08-25 21:14:45 +00002230 dldir=$destdir/`dirname \$dlpath`~
2231 test -d \$dldir || mkdir -p \$dldir~
mmentovai8c2a4de2006-09-20 16:20:15 +00002232 $install_prog $dir/$dlname \$dldir/$dlname~
jimblandy92b1f832009-12-23 22:23:49 +00002233 chmod a+x \$dldir/$dlname~
2234 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2235 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2236 fi'
brynercb91a2f2006-08-25 21:14:45 +00002237 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2238 dlpath=$dir/\$dldll~
jimblandy92b1f832009-12-23 22:23:49 +00002239 $RM \$dlpath'
brynercb91a2f2006-08-25 21:14:45 +00002240 shlibpath_overrides_runpath=yes
2241
2242 case $host_os in
2243 cygwin*)
2244 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2245 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2246 sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
2247 ;;
jimblandy92b1f832009-12-23 22:23:49 +00002248 mingw* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00002249 # MinGW DLLs use traditional 'lib' prefix
2250 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
jimblandy92b1f832009-12-23 22:23:49 +00002251 sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
2252 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
brynercb91a2f2006-08-25 21:14:45 +00002253 # It is most probably a Windows format PATH printed by
2254 # mingw gcc, but we are running on Cygwin. Gcc prints its search
2255 # path with ; separators, and with drive letters. We can handle the
2256 # drive letters (cygwin fileutils understands them), so leave them,
2257 # especially as we might pass files found there to a mingw objdump,
2258 # which wouldn't understand a cygwinified path. Ahh.
jimblandy92b1f832009-12-23 22:23:49 +00002259 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
brynercb91a2f2006-08-25 21:14:45 +00002260 else
jimblandy92b1f832009-12-23 22:23:49 +00002261 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
brynercb91a2f2006-08-25 21:14:45 +00002262 fi
2263 ;;
2264 pw32*)
2265 # pw32 DLLs use 'pw' prefix rather than 'lib'
mmentovai8c2a4de2006-09-20 16:20:15 +00002266 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
brynercb91a2f2006-08-25 21:14:45 +00002267 ;;
2268 esac
2269 ;;
2270
2271 *)
2272 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2273 ;;
2274 esac
2275 dynamic_linker='Win32 ld.exe'
2276 # FIXME: first we should search . and the directory the executable is in
2277 shlibpath_var=PATH
2278 ;;
2279
2280darwin* | rhapsody*)
2281 dynamic_linker="$host_os dyld"
2282 version_type=darwin
2283 need_lib_prefix=no
2284 need_version=no
jimblandy92b1f832009-12-23 22:23:49 +00002285 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
brynercb91a2f2006-08-25 21:14:45 +00002286 soname_spec='${libname}${release}${major}$shared_ext'
2287 shlibpath_overrides_runpath=yes
2288 shlibpath_var=DYLD_LIBRARY_PATH
mmentovai8c2a4de2006-09-20 16:20:15 +00002289 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
jimblandy92b1f832009-12-23 22:23:49 +00002290m4_if([$1], [],[
2291 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
brynercb91a2f2006-08-25 21:14:45 +00002292 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2293 ;;
2294
2295dgux*)
2296 version_type=linux
2297 need_lib_prefix=no
2298 need_version=no
2299 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2300 soname_spec='${libname}${release}${shared_ext}$major'
2301 shlibpath_var=LD_LIBRARY_PATH
2302 ;;
2303
2304freebsd1*)
2305 dynamic_linker=no
2306 ;;
2307
mmentovai8c2a4de2006-09-20 16:20:15 +00002308freebsd* | dragonfly*)
2309 # DragonFly does not have aout. When/if they implement a new
2310 # versioning mechanism, adjust this.
2311 if test -x /usr/bin/objformat; then
2312 objformat=`/usr/bin/objformat`
2313 else
2314 case $host_os in
2315 freebsd[[123]]*) objformat=aout ;;
2316 *) objformat=elf ;;
2317 esac
2318 fi
brynercb91a2f2006-08-25 21:14:45 +00002319 version_type=freebsd-$objformat
2320 case $version_type in
2321 freebsd-elf*)
2322 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2323 need_version=no
2324 need_lib_prefix=no
2325 ;;
2326 freebsd-*)
2327 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2328 need_version=yes
2329 ;;
2330 esac
2331 shlibpath_var=LD_LIBRARY_PATH
2332 case $host_os in
2333 freebsd2*)
2334 shlibpath_overrides_runpath=yes
2335 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00002336 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
brynercb91a2f2006-08-25 21:14:45 +00002337 shlibpath_overrides_runpath=yes
2338 hardcode_into_libs=yes
2339 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00002340 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2341 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
brynercb91a2f2006-08-25 21:14:45 +00002342 shlibpath_overrides_runpath=no
2343 hardcode_into_libs=yes
2344 ;;
nealsidb56cfa02009-05-29 00:53:02 +00002345 *) # from 4.6 on, and DragonFly
mmentovai8c2a4de2006-09-20 16:20:15 +00002346 shlibpath_overrides_runpath=yes
2347 hardcode_into_libs=yes
2348 ;;
brynercb91a2f2006-08-25 21:14:45 +00002349 esac
2350 ;;
2351
2352gnu*)
2353 version_type=linux
2354 need_lib_prefix=no
2355 need_version=no
2356 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2357 soname_spec='${libname}${release}${shared_ext}$major'
2358 shlibpath_var=LD_LIBRARY_PATH
2359 hardcode_into_libs=yes
2360 ;;
2361
2362hpux9* | hpux10* | hpux11*)
2363 # Give a soname corresponding to the major version so that dld.sl refuses to
2364 # link against other versions.
2365 version_type=sunos
2366 need_lib_prefix=no
2367 need_version=no
mmentovai8c2a4de2006-09-20 16:20:15 +00002368 case $host_cpu in
brynercb91a2f2006-08-25 21:14:45 +00002369 ia64*)
2370 shrext_cmds='.so'
2371 hardcode_into_libs=yes
2372 dynamic_linker="$host_os dld.so"
2373 shlibpath_var=LD_LIBRARY_PATH
2374 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2375 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2376 soname_spec='${libname}${release}${shared_ext}$major'
2377 if test "X$HPUX_IA64_MODE" = X32; then
2378 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2379 else
2380 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2381 fi
2382 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2383 ;;
jimblandy92b1f832009-12-23 22:23:49 +00002384 hppa*64*)
2385 shrext_cmds='.sl'
2386 hardcode_into_libs=yes
2387 dynamic_linker="$host_os dld.sl"
2388 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2389 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2390 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2391 soname_spec='${libname}${release}${shared_ext}$major'
2392 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2393 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2394 ;;
2395 *)
brynercb91a2f2006-08-25 21:14:45 +00002396 shrext_cmds='.sl'
2397 dynamic_linker="$host_os dld.sl"
2398 shlibpath_var=SHLIB_PATH
2399 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2400 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2401 soname_spec='${libname}${release}${shared_ext}$major'
2402 ;;
2403 esac
2404 # HP-UX runs *really* slowly unless shared libraries are mode 555.
2405 postinstall_cmds='chmod 555 $lib'
2406 ;;
2407
nealsidb56cfa02009-05-29 00:53:02 +00002408interix[[3-9]]*)
mmentovai8c2a4de2006-09-20 16:20:15 +00002409 version_type=linux
2410 need_lib_prefix=no
2411 need_version=no
2412 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2413 soname_spec='${libname}${release}${shared_ext}$major'
2414 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2415 shlibpath_var=LD_LIBRARY_PATH
2416 shlibpath_overrides_runpath=no
2417 hardcode_into_libs=yes
2418 ;;
2419
brynercb91a2f2006-08-25 21:14:45 +00002420irix5* | irix6* | nonstopux*)
2421 case $host_os in
2422 nonstopux*) version_type=nonstopux ;;
2423 *)
2424 if test "$lt_cv_prog_gnu_ld" = yes; then
2425 version_type=linux
2426 else
2427 version_type=irix
2428 fi ;;
2429 esac
2430 need_lib_prefix=no
2431 need_version=no
2432 soname_spec='${libname}${release}${shared_ext}$major'
2433 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2434 case $host_os in
2435 irix5* | nonstopux*)
2436 libsuff= shlibsuff=
2437 ;;
2438 *)
2439 case $LD in # libtool.m4 will add one of these switches to LD
2440 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2441 libsuff= shlibsuff= libmagic=32-bit;;
2442 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2443 libsuff=32 shlibsuff=N32 libmagic=N32;;
2444 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2445 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2446 *) libsuff= shlibsuff= libmagic=never-match;;
2447 esac
2448 ;;
2449 esac
2450 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2451 shlibpath_overrides_runpath=no
2452 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2453 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2454 hardcode_into_libs=yes
2455 ;;
2456
2457# No shared lib support for Linux oldld, aout, or coff.
2458linux*oldld* | linux*aout* | linux*coff*)
2459 dynamic_linker=no
2460 ;;
2461
2462# This must be Linux ELF.
nealsidb56cfa02009-05-29 00:53:02 +00002463linux* | k*bsd*-gnu)
brynercb91a2f2006-08-25 21:14:45 +00002464 version_type=linux
2465 need_lib_prefix=no
2466 need_version=no
2467 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2468 soname_spec='${libname}${release}${shared_ext}$major'
2469 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2470 shlibpath_var=LD_LIBRARY_PATH
2471 shlibpath_overrides_runpath=no
jimblandy92b1f832009-12-23 22:23:49 +00002472 # Some binutils ld are patched to set DT_RUNPATH
2473 save_LDFLAGS=$LDFLAGS
2474 save_libdir=$libdir
2475 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2476 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2477 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2478 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2479 [shlibpath_overrides_runpath=yes])])
2480 LDFLAGS=$save_LDFLAGS
2481 libdir=$save_libdir
2482
brynercb91a2f2006-08-25 21:14:45 +00002483 # This implies no fast_install, which is unacceptable.
2484 # Some rework will be needed to allow for fast_install
2485 # before this can be enabled.
2486 hardcode_into_libs=yes
2487
2488 # Append ld.so.conf contents to the search path
2489 if test -f /etc/ld.so.conf; then
jimblandy92b1f832009-12-23 22:23:49 +00002490 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;/^$/d' | tr '\n' ' '`
brynercb91a2f2006-08-25 21:14:45 +00002491 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2492 fi
2493
2494 # We used to test for /lib/ld.so.1 and disable shared libraries on
2495 # powerpc, because MkLinux only supported shared libraries with the
2496 # GNU dynamic linker. Since this was broken with cross compilers,
2497 # most powerpc-linux boxes support dynamic linking these days and
2498 # people can always --disable-shared, the test was removed, and we
2499 # assume the GNU/Linux dynamic linker is in use.
2500 dynamic_linker='GNU/Linux ld.so'
2501 ;;
2502
jimblandy92b1f832009-12-23 22:23:49 +00002503netbsdelf*-gnu)
2504 version_type=linux
2505 need_lib_prefix=no
2506 need_version=no
2507 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2508 soname_spec='${libname}${release}${shared_ext}$major'
2509 shlibpath_var=LD_LIBRARY_PATH
2510 shlibpath_overrides_runpath=no
2511 hardcode_into_libs=yes
2512 dynamic_linker='NetBSD ld.elf_so'
2513 ;;
2514
brynercb91a2f2006-08-25 21:14:45 +00002515netbsd*)
2516 version_type=sunos
2517 need_lib_prefix=no
2518 need_version=no
jimblandy92b1f832009-12-23 22:23:49 +00002519 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
brynercb91a2f2006-08-25 21:14:45 +00002520 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2521 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2522 dynamic_linker='NetBSD (a.out) ld.so'
2523 else
2524 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2525 soname_spec='${libname}${release}${shared_ext}$major'
2526 dynamic_linker='NetBSD ld.elf_so'
2527 fi
2528 shlibpath_var=LD_LIBRARY_PATH
2529 shlibpath_overrides_runpath=yes
2530 hardcode_into_libs=yes
2531 ;;
2532
2533newsos6)
2534 version_type=linux
2535 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2536 shlibpath_var=LD_LIBRARY_PATH
2537 shlibpath_overrides_runpath=yes
2538 ;;
2539
jimblandy92b1f832009-12-23 22:23:49 +00002540*nto* | *qnx*)
2541 version_type=qnx
brynercb91a2f2006-08-25 21:14:45 +00002542 need_lib_prefix=no
2543 need_version=no
2544 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2545 soname_spec='${libname}${release}${shared_ext}$major'
2546 shlibpath_var=LD_LIBRARY_PATH
jimblandy92b1f832009-12-23 22:23:49 +00002547 shlibpath_overrides_runpath=no
2548 hardcode_into_libs=yes
2549 dynamic_linker='ldqnx.so'
brynercb91a2f2006-08-25 21:14:45 +00002550 ;;
2551
2552openbsd*)
2553 version_type=sunos
mmentovai8c2a4de2006-09-20 16:20:15 +00002554 sys_lib_dlsearch_path_spec="/usr/lib"
brynercb91a2f2006-08-25 21:14:45 +00002555 need_lib_prefix=no
mmentovai8c2a4de2006-09-20 16:20:15 +00002556 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2557 case $host_os in
jimblandy92b1f832009-12-23 22:23:49 +00002558 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2559 *) need_version=no ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00002560 esac
brynercb91a2f2006-08-25 21:14:45 +00002561 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2562 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2563 shlibpath_var=LD_LIBRARY_PATH
jimblandy92b1f832009-12-23 22:23:49 +00002564 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
brynercb91a2f2006-08-25 21:14:45 +00002565 case $host_os in
2566 openbsd2.[[89]] | openbsd2.[[89]].*)
2567 shlibpath_overrides_runpath=no
2568 ;;
2569 *)
2570 shlibpath_overrides_runpath=yes
2571 ;;
2572 esac
2573 else
2574 shlibpath_overrides_runpath=yes
2575 fi
2576 ;;
2577
2578os2*)
2579 libname_spec='$name'
2580 shrext_cmds=".dll"
2581 need_lib_prefix=no
2582 library_names_spec='$libname${shared_ext} $libname.a'
2583 dynamic_linker='OS/2 ld.exe'
2584 shlibpath_var=LIBPATH
2585 ;;
2586
2587osf3* | osf4* | osf5*)
2588 version_type=osf
2589 need_lib_prefix=no
2590 need_version=no
2591 soname_spec='${libname}${release}${shared_ext}$major'
2592 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2593 shlibpath_var=LD_LIBRARY_PATH
2594 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2595 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2596 ;;
2597
nealsidb56cfa02009-05-29 00:53:02 +00002598rdos*)
2599 dynamic_linker=no
2600 ;;
2601
brynercb91a2f2006-08-25 21:14:45 +00002602solaris*)
2603 version_type=linux
2604 need_lib_prefix=no
2605 need_version=no
2606 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2607 soname_spec='${libname}${release}${shared_ext}$major'
2608 shlibpath_var=LD_LIBRARY_PATH
2609 shlibpath_overrides_runpath=yes
2610 hardcode_into_libs=yes
2611 # ldd complains unless libraries are executable
2612 postinstall_cmds='chmod +x $lib'
2613 ;;
2614
2615sunos4*)
2616 version_type=sunos
2617 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2618 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2619 shlibpath_var=LD_LIBRARY_PATH
2620 shlibpath_overrides_runpath=yes
2621 if test "$with_gnu_ld" = yes; then
2622 need_lib_prefix=no
2623 fi
2624 need_version=yes
2625 ;;
2626
mmentovai8c2a4de2006-09-20 16:20:15 +00002627sysv4 | sysv4.3*)
brynercb91a2f2006-08-25 21:14:45 +00002628 version_type=linux
2629 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2630 soname_spec='${libname}${release}${shared_ext}$major'
2631 shlibpath_var=LD_LIBRARY_PATH
2632 case $host_vendor in
2633 sni)
2634 shlibpath_overrides_runpath=no
2635 need_lib_prefix=no
brynercb91a2f2006-08-25 21:14:45 +00002636 runpath_var=LD_RUN_PATH
2637 ;;
2638 siemens)
2639 need_lib_prefix=no
2640 ;;
2641 motorola)
2642 need_lib_prefix=no
2643 need_version=no
2644 shlibpath_overrides_runpath=no
2645 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2646 ;;
2647 esac
2648 ;;
2649
2650sysv4*MP*)
2651 if test -d /usr/nec ;then
2652 version_type=linux
2653 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2654 soname_spec='$libname${shared_ext}.$major'
2655 shlibpath_var=LD_LIBRARY_PATH
2656 fi
2657 ;;
2658
mmentovai8c2a4de2006-09-20 16:20:15 +00002659sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2660 version_type=freebsd-elf
2661 need_lib_prefix=no
2662 need_version=no
2663 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2664 soname_spec='${libname}${release}${shared_ext}$major'
2665 shlibpath_var=LD_LIBRARY_PATH
jimblandy92b1f832009-12-23 22:23:49 +00002666 shlibpath_overrides_runpath=yes
mmentovai8c2a4de2006-09-20 16:20:15 +00002667 hardcode_into_libs=yes
2668 if test "$with_gnu_ld" = yes; then
2669 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
mmentovai8c2a4de2006-09-20 16:20:15 +00002670 else
2671 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
mmentovai8c2a4de2006-09-20 16:20:15 +00002672 case $host_os in
2673 sco3.2v5*)
2674 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2675 ;;
2676 esac
2677 fi
2678 sys_lib_dlsearch_path_spec='/usr/lib'
2679 ;;
2680
jimblandy92b1f832009-12-23 22:23:49 +00002681tpf*)
2682 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
2683 version_type=linux
2684 need_lib_prefix=no
2685 need_version=no
2686 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2687 shlibpath_var=LD_LIBRARY_PATH
2688 shlibpath_overrides_runpath=no
2689 hardcode_into_libs=yes
2690 ;;
2691
brynercb91a2f2006-08-25 21:14:45 +00002692uts4*)
2693 version_type=linux
2694 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2695 soname_spec='${libname}${release}${shared_ext}$major'
2696 shlibpath_var=LD_LIBRARY_PATH
2697 ;;
2698
2699*)
2700 dynamic_linker=no
2701 ;;
2702esac
2703AC_MSG_RESULT([$dynamic_linker])
2704test "$dynamic_linker" = no && can_build_shared=no
mmentovai8c2a4de2006-09-20 16:20:15 +00002705
2706variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2707if test "$GCC" = yes; then
2708 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2709fi
brynercb91a2f2006-08-25 21:14:45 +00002710
jimblandy92b1f832009-12-23 22:23:49 +00002711if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2712 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
brynercb91a2f2006-08-25 21:14:45 +00002713fi
jimblandy92b1f832009-12-23 22:23:49 +00002714if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2715 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2716fi
2717
2718_LT_DECL([], [variables_saved_for_relink], [1],
2719 [Variables whose values should be saved in libtool wrapper scripts and
2720 restored at link time])
2721_LT_DECL([], [need_lib_prefix], [0],
2722 [Do we need the "lib" prefix for modules?])
2723_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2724_LT_DECL([], [version_type], [0], [Library versioning type])
2725_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2726_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2727_LT_DECL([], [shlibpath_overrides_runpath], [0],
2728 [Is shlibpath searched before the hard-coded library search path?])
2729_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2730_LT_DECL([], [library_names_spec], [1],
2731 [[List of archive names. First name is the real one, the rest are links.
2732 The last name is the one that the linker finds with -lNAME]])
2733_LT_DECL([], [soname_spec], [1],
2734 [[The coded name of the library, if different from the real name]])
2735_LT_DECL([], [postinstall_cmds], [2],
2736 [Command to use after installation of a shared archive])
2737_LT_DECL([], [postuninstall_cmds], [2],
2738 [Command to use after uninstallation of a shared archive])
2739_LT_DECL([], [finish_cmds], [2],
2740 [Commands used to finish a libtool library installation in a directory])
2741_LT_DECL([], [finish_eval], [1],
2742 [[As "finish_cmds", except a single script fragment to be evaled but
2743 not shown]])
2744_LT_DECL([], [hardcode_into_libs], [0],
2745 [Whether we should hardcode library paths into libraries])
2746_LT_DECL([], [sys_lib_search_path_spec], [2],
2747 [Compile-time system search path for libraries])
2748_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2749 [Run-time system search path for libraries])
2750])# _LT_SYS_DYNAMIC_LINKER
brynercb91a2f2006-08-25 21:14:45 +00002751
2752
jimblandy92b1f832009-12-23 22:23:49 +00002753# _LT_PATH_TOOL_PREFIX(TOOL)
brynercb91a2f2006-08-25 21:14:45 +00002754# --------------------------
nealsidb56cfa02009-05-29 00:53:02 +00002755# find a file program which can recognize shared library
jimblandy92b1f832009-12-23 22:23:49 +00002756AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2757[m4_require([_LT_DECL_EGREP])dnl
brynercb91a2f2006-08-25 21:14:45 +00002758AC_MSG_CHECKING([for $1])
2759AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2760[case $MAGIC_CMD in
2761[[\\/*] | ?:[\\/]*])
2762 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2763 ;;
2764*)
2765 lt_save_MAGIC_CMD="$MAGIC_CMD"
2766 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2767dnl $ac_dummy forces splitting on constant user-supplied paths.
2768dnl POSIX.2 word splitting is done only on the output of word expansions,
2769dnl not every word. This closes a longstanding sh security hole.
jimblandy92b1f832009-12-23 22:23:49 +00002770 ac_dummy="m4_if([$2], , $PATH, [$2])"
brynercb91a2f2006-08-25 21:14:45 +00002771 for ac_dir in $ac_dummy; do
2772 IFS="$lt_save_ifs"
2773 test -z "$ac_dir" && ac_dir=.
2774 if test -f $ac_dir/$1; then
2775 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2776 if test -n "$file_magic_test_file"; then
2777 case $deplibs_check_method in
2778 "file_magic "*)
mmentovai8c2a4de2006-09-20 16:20:15 +00002779 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
brynercb91a2f2006-08-25 21:14:45 +00002780 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2781 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2782 $EGREP "$file_magic_regex" > /dev/null; then
2783 :
2784 else
jimblandy92b1f832009-12-23 22:23:49 +00002785 cat <<_LT_EOF 1>&2
brynercb91a2f2006-08-25 21:14:45 +00002786
2787*** Warning: the command libtool uses to detect shared libraries,
2788*** $file_magic_cmd, produces output that libtool cannot recognize.
2789*** The result is that libtool may fail to recognize shared libraries
2790*** as such. This will affect the creation of libtool libraries that
2791*** depend on shared libraries, but programs linked with such libtool
2792*** libraries will work regardless of this problem. Nevertheless, you
2793*** may want to report the problem to your system manager and/or to
2794*** bug-libtool@gnu.org
2795
jimblandy92b1f832009-12-23 22:23:49 +00002796_LT_EOF
brynercb91a2f2006-08-25 21:14:45 +00002797 fi ;;
2798 esac
2799 fi
2800 break
2801 fi
2802 done
2803 IFS="$lt_save_ifs"
2804 MAGIC_CMD="$lt_save_MAGIC_CMD"
2805 ;;
2806esac])
2807MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2808if test -n "$MAGIC_CMD"; then
2809 AC_MSG_RESULT($MAGIC_CMD)
2810else
2811 AC_MSG_RESULT(no)
2812fi
jimblandy92b1f832009-12-23 22:23:49 +00002813_LT_DECL([], [MAGIC_CMD], [0],
2814 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
2815])# _LT_PATH_TOOL_PREFIX
2816
2817# Old name:
2818AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
2819dnl aclocal-1.4 backwards compatibility:
2820dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
brynercb91a2f2006-08-25 21:14:45 +00002821
2822
jimblandy92b1f832009-12-23 22:23:49 +00002823# _LT_PATH_MAGIC
2824# --------------
nealsidb56cfa02009-05-29 00:53:02 +00002825# find a file program which can recognize a shared library
jimblandy92b1f832009-12-23 22:23:49 +00002826m4_defun([_LT_PATH_MAGIC],
2827[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
brynercb91a2f2006-08-25 21:14:45 +00002828if test -z "$lt_cv_path_MAGIC_CMD"; then
2829 if test -n "$ac_tool_prefix"; then
jimblandy92b1f832009-12-23 22:23:49 +00002830 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
brynercb91a2f2006-08-25 21:14:45 +00002831 else
2832 MAGIC_CMD=:
2833 fi
2834fi
jimblandy92b1f832009-12-23 22:23:49 +00002835])# _LT_PATH_MAGIC
brynercb91a2f2006-08-25 21:14:45 +00002836
2837
jimblandy92b1f832009-12-23 22:23:49 +00002838# LT_PATH_LD
brynercb91a2f2006-08-25 21:14:45 +00002839# ----------
2840# find the pathname to the GNU or non-GNU linker
jimblandy92b1f832009-12-23 22:23:49 +00002841AC_DEFUN([LT_PATH_LD],
2842[AC_REQUIRE([AC_PROG_CC])dnl
brynercb91a2f2006-08-25 21:14:45 +00002843AC_REQUIRE([AC_CANONICAL_HOST])dnl
2844AC_REQUIRE([AC_CANONICAL_BUILD])dnl
jimblandy92b1f832009-12-23 22:23:49 +00002845m4_require([_LT_DECL_SED])dnl
2846m4_require([_LT_DECL_EGREP])dnl
2847
2848AC_ARG_WITH([gnu-ld],
2849 [AS_HELP_STRING([--with-gnu-ld],
2850 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
2851 [test "$withval" = no || with_gnu_ld=yes],
2852 [with_gnu_ld=no])dnl
2853
brynercb91a2f2006-08-25 21:14:45 +00002854ac_prog=ld
2855if test "$GCC" = yes; then
2856 # Check if gcc -print-prog-name=ld gives a path.
2857 AC_MSG_CHECKING([for ld used by $CC])
2858 case $host in
2859 *-*-mingw*)
2860 # gcc leaves a trailing carriage return which upsets mingw
2861 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2862 *)
2863 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2864 esac
2865 case $ac_prog in
2866 # Accept absolute paths.
2867 [[\\/]]* | ?:[[\\/]]*)
2868 re_direlt='/[[^/]][[^/]]*/\.\./'
2869 # Canonicalize the pathname of ld
jimblandy92b1f832009-12-23 22:23:49 +00002870 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
2871 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
2872 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
brynercb91a2f2006-08-25 21:14:45 +00002873 done
2874 test -z "$LD" && LD="$ac_prog"
2875 ;;
2876 "")
2877 # If it fails, then pretend we aren't using GCC.
2878 ac_prog=ld
2879 ;;
2880 *)
2881 # If it is relative, then search for the first ld in PATH.
2882 with_gnu_ld=unknown
2883 ;;
2884 esac
2885elif test "$with_gnu_ld" = yes; then
2886 AC_MSG_CHECKING([for GNU ld])
2887else
2888 AC_MSG_CHECKING([for non-GNU ld])
2889fi
2890AC_CACHE_VAL(lt_cv_path_LD,
2891[if test -z "$LD"; then
2892 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2893 for ac_dir in $PATH; do
2894 IFS="$lt_save_ifs"
2895 test -z "$ac_dir" && ac_dir=.
2896 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
2897 lt_cv_path_LD="$ac_dir/$ac_prog"
2898 # Check to see if the program is GNU ld. I'd rather use --version,
mmentovai8c2a4de2006-09-20 16:20:15 +00002899 # but apparently some variants of GNU ld only accept -v.
brynercb91a2f2006-08-25 21:14:45 +00002900 # Break only if it was the GNU/non-GNU ld that we prefer.
2901 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
2902 *GNU* | *'with BFD'*)
2903 test "$with_gnu_ld" != no && break
2904 ;;
2905 *)
2906 test "$with_gnu_ld" != yes && break
2907 ;;
2908 esac
2909 fi
2910 done
2911 IFS="$lt_save_ifs"
2912else
2913 lt_cv_path_LD="$LD" # Let the user override the test with a path.
2914fi])
2915LD="$lt_cv_path_LD"
2916if test -n "$LD"; then
2917 AC_MSG_RESULT($LD)
2918else
2919 AC_MSG_RESULT(no)
2920fi
2921test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
jimblandy92b1f832009-12-23 22:23:49 +00002922_LT_PATH_LD_GNU
2923AC_SUBST([LD])
2924
2925_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
2926])# LT_PATH_LD
2927
2928# Old names:
2929AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
2930AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
2931dnl aclocal-1.4 backwards compatibility:
2932dnl AC_DEFUN([AM_PROG_LD], [])
2933dnl AC_DEFUN([AC_PROG_LD], [])
brynercb91a2f2006-08-25 21:14:45 +00002934
2935
jimblandy92b1f832009-12-23 22:23:49 +00002936# _LT_PATH_LD_GNU
2937#- --------------
2938m4_defun([_LT_PATH_LD_GNU],
2939[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
mmentovai8c2a4de2006-09-20 16:20:15 +00002940[# I'd rather use --version here, but apparently some GNU lds only accept -v.
brynercb91a2f2006-08-25 21:14:45 +00002941case `$LD -v 2>&1 </dev/null` in
2942*GNU* | *'with BFD'*)
2943 lt_cv_prog_gnu_ld=yes
2944 ;;
2945*)
2946 lt_cv_prog_gnu_ld=no
2947 ;;
2948esac])
2949with_gnu_ld=$lt_cv_prog_gnu_ld
jimblandy92b1f832009-12-23 22:23:49 +00002950])# _LT_PATH_LD_GNU
brynercb91a2f2006-08-25 21:14:45 +00002951
2952
jimblandy92b1f832009-12-23 22:23:49 +00002953# _LT_CMD_RELOAD
2954# --------------
brynercb91a2f2006-08-25 21:14:45 +00002955# find reload flag for linker
2956# -- PORTME Some linkers may need a different reload flag.
jimblandy92b1f832009-12-23 22:23:49 +00002957m4_defun([_LT_CMD_RELOAD],
brynercb91a2f2006-08-25 21:14:45 +00002958[AC_CACHE_CHECK([for $LD option to reload object files],
2959 lt_cv_ld_reload_flag,
2960 [lt_cv_ld_reload_flag='-r'])
2961reload_flag=$lt_cv_ld_reload_flag
2962case $reload_flag in
2963"" | " "*) ;;
2964*) reload_flag=" $reload_flag" ;;
2965esac
2966reload_cmds='$LD$reload_flag -o $output$reload_objs'
mmentovai8c2a4de2006-09-20 16:20:15 +00002967case $host_os in
2968 darwin*)
2969 if test "$GCC" = yes; then
2970 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
2971 else
2972 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2973 fi
2974 ;;
2975esac
jimblandy92b1f832009-12-23 22:23:49 +00002976_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
2977_LT_DECL([], [reload_cmds], [2])dnl
2978])# _LT_CMD_RELOAD
brynercb91a2f2006-08-25 21:14:45 +00002979
2980
jimblandy92b1f832009-12-23 22:23:49 +00002981# _LT_CHECK_MAGIC_METHOD
2982# ----------------------
brynercb91a2f2006-08-25 21:14:45 +00002983# how to check for library dependencies
2984# -- PORTME fill in with the dynamic library characteristics
jimblandy92b1f832009-12-23 22:23:49 +00002985m4_defun([_LT_CHECK_MAGIC_METHOD],
2986[m4_require([_LT_DECL_EGREP])
2987m4_require([_LT_DECL_OBJDUMP])
2988AC_CACHE_CHECK([how to recognize dependent libraries],
brynercb91a2f2006-08-25 21:14:45 +00002989lt_cv_deplibs_check_method,
2990[lt_cv_file_magic_cmd='$MAGIC_CMD'
2991lt_cv_file_magic_test_file=
2992lt_cv_deplibs_check_method='unknown'
2993# Need to set the preceding variable on all platforms that support
2994# interlibrary dependencies.
2995# 'none' -- dependencies not supported.
2996# `unknown' -- same as none, but documents that we really don't know.
2997# 'pass_all' -- all dependencies passed with no checks.
2998# 'test_compile' -- check by making test program.
2999# 'file_magic [[regex]]' -- check by looking for files in library path
3000# which responds to the $file_magic_cmd with a given extended regex.
3001# If you have `file' or equivalent on your system and you're not sure
3002# whether `pass_all' will *always* work, you probably want this one.
3003
3004case $host_os in
nealsidb56cfa02009-05-29 00:53:02 +00003005aix[[4-9]]*)
brynercb91a2f2006-08-25 21:14:45 +00003006 lt_cv_deplibs_check_method=pass_all
3007 ;;
3008
3009beos*)
3010 lt_cv_deplibs_check_method=pass_all
3011 ;;
3012
mmentovai8c2a4de2006-09-20 16:20:15 +00003013bsdi[[45]]*)
brynercb91a2f2006-08-25 21:14:45 +00003014 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3015 lt_cv_file_magic_cmd='/usr/bin/file -L'
3016 lt_cv_file_magic_test_file=/shlib/libc.so
3017 ;;
3018
3019cygwin*)
3020 # func_win32_libid is a shell function defined in ltmain.sh
3021 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3022 lt_cv_file_magic_cmd='func_win32_libid'
3023 ;;
3024
3025mingw* | pw32*)
3026 # Base MSYS/MinGW do not provide the 'file' command needed by
nealsidb56cfa02009-05-29 00:53:02 +00003027 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3028 # unless we find 'file', for example because we are cross-compiling.
3029 if ( file / ) >/dev/null 2>&1; then
3030 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3031 lt_cv_file_magic_cmd='func_win32_libid'
3032 else
3033 lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
3034 lt_cv_file_magic_cmd='$OBJDUMP -f'
3035 fi
brynercb91a2f2006-08-25 21:14:45 +00003036 ;;
3037
jimblandy92b1f832009-12-23 22:23:49 +00003038cegcc)
3039 # use the weaker test based on 'objdump'. See mingw*.
3040 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3041 lt_cv_file_magic_cmd='$OBJDUMP -f'
3042 ;;
3043
brynercb91a2f2006-08-25 21:14:45 +00003044darwin* | rhapsody*)
3045 lt_cv_deplibs_check_method=pass_all
3046 ;;
3047
nealsidb56cfa02009-05-29 00:53:02 +00003048freebsd* | dragonfly*)
jimblandy92b1f832009-12-23 22:23:49 +00003049 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
brynercb91a2f2006-08-25 21:14:45 +00003050 case $host_cpu in
3051 i*86 )
3052 # Not sure whether the presence of OpenBSD here was a mistake.
3053 # Let's accept both of them until this is cleared up.
mmentovai8c2a4de2006-09-20 16:20:15 +00003054 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
brynercb91a2f2006-08-25 21:14:45 +00003055 lt_cv_file_magic_cmd=/usr/bin/file
3056 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3057 ;;
3058 esac
3059 else
3060 lt_cv_deplibs_check_method=pass_all
3061 fi
3062 ;;
3063
3064gnu*)
3065 lt_cv_deplibs_check_method=pass_all
3066 ;;
3067
3068hpux10.20* | hpux11*)
3069 lt_cv_file_magic_cmd=/usr/bin/file
mmentovai8c2a4de2006-09-20 16:20:15 +00003070 case $host_cpu in
brynercb91a2f2006-08-25 21:14:45 +00003071 ia64*)
3072 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3073 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3074 ;;
3075 hppa*64*)
3076 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
3077 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3078 ;;
3079 *)
3080 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
3081 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3082 ;;
3083 esac
3084 ;;
3085
nealsidb56cfa02009-05-29 00:53:02 +00003086interix[[3-9]]*)
mmentovai8c2a4de2006-09-20 16:20:15 +00003087 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3088 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3089 ;;
3090
brynercb91a2f2006-08-25 21:14:45 +00003091irix5* | irix6* | nonstopux*)
3092 case $LD in
3093 *-32|*"-32 ") libmagic=32-bit;;
3094 *-n32|*"-n32 ") libmagic=N32;;
3095 *-64|*"-64 ") libmagic=64-bit;;
3096 *) libmagic=never-match;;
3097 esac
3098 lt_cv_deplibs_check_method=pass_all
3099 ;;
3100
3101# This must be Linux ELF.
nealsidb56cfa02009-05-29 00:53:02 +00003102linux* | k*bsd*-gnu)
brynercb91a2f2006-08-25 21:14:45 +00003103 lt_cv_deplibs_check_method=pass_all
3104 ;;
3105
jimblandy92b1f832009-12-23 22:23:49 +00003106netbsd* | netbsdelf*-gnu)
3107 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
brynercb91a2f2006-08-25 21:14:45 +00003108 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3109 else
3110 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3111 fi
3112 ;;
3113
3114newos6*)
3115 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3116 lt_cv_file_magic_cmd=/usr/bin/file
3117 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3118 ;;
3119
jimblandy92b1f832009-12-23 22:23:49 +00003120*nto* | *qnx*)
3121 lt_cv_deplibs_check_method=pass_all
brynercb91a2f2006-08-25 21:14:45 +00003122 ;;
3123
3124openbsd*)
jimblandy92b1f832009-12-23 22:23:49 +00003125 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
mmentovai8c2a4de2006-09-20 16:20:15 +00003126 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
brynercb91a2f2006-08-25 21:14:45 +00003127 else
mmentovai8c2a4de2006-09-20 16:20:15 +00003128 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
brynercb91a2f2006-08-25 21:14:45 +00003129 fi
3130 ;;
3131
3132osf3* | osf4* | osf5*)
3133 lt_cv_deplibs_check_method=pass_all
3134 ;;
3135
nealsidb56cfa02009-05-29 00:53:02 +00003136rdos*)
3137 lt_cv_deplibs_check_method=pass_all
3138 ;;
3139
brynercb91a2f2006-08-25 21:14:45 +00003140solaris*)
3141 lt_cv_deplibs_check_method=pass_all
3142 ;;
3143
jimblandy92b1f832009-12-23 22:23:49 +00003144sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3145 lt_cv_deplibs_check_method=pass_all
3146 ;;
3147
mmentovai8c2a4de2006-09-20 16:20:15 +00003148sysv4 | sysv4.3*)
brynercb91a2f2006-08-25 21:14:45 +00003149 case $host_vendor in
3150 motorola)
3151 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]]'
3152 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3153 ;;
3154 ncr)
3155 lt_cv_deplibs_check_method=pass_all
3156 ;;
3157 sequent)
3158 lt_cv_file_magic_cmd='/bin/file'
3159 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3160 ;;
3161 sni)
3162 lt_cv_file_magic_cmd='/bin/file'
3163 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3164 lt_cv_file_magic_test_file=/lib/libc.so
3165 ;;
3166 siemens)
3167 lt_cv_deplibs_check_method=pass_all
3168 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003169 pc)
3170 lt_cv_deplibs_check_method=pass_all
3171 ;;
brynercb91a2f2006-08-25 21:14:45 +00003172 esac
3173 ;;
3174
jimblandy92b1f832009-12-23 22:23:49 +00003175tpf*)
brynercb91a2f2006-08-25 21:14:45 +00003176 lt_cv_deplibs_check_method=pass_all
3177 ;;
3178esac
3179])
3180file_magic_cmd=$lt_cv_file_magic_cmd
3181deplibs_check_method=$lt_cv_deplibs_check_method
3182test -z "$deplibs_check_method" && deplibs_check_method=unknown
jimblandy92b1f832009-12-23 22:23:49 +00003183
3184_LT_DECL([], [deplibs_check_method], [1],
3185 [Method to check whether dependent libraries are shared objects])
3186_LT_DECL([], [file_magic_cmd], [1],
3187 [Command to use when deplibs_check_method == "file_magic"])
3188])# _LT_CHECK_MAGIC_METHOD
brynercb91a2f2006-08-25 21:14:45 +00003189
3190
jimblandy92b1f832009-12-23 22:23:49 +00003191# LT_PATH_NM
brynercb91a2f2006-08-25 21:14:45 +00003192# ----------
jimblandy92b1f832009-12-23 22:23:49 +00003193# find the pathname to a BSD- or MS-compatible name lister
3194AC_DEFUN([LT_PATH_NM],
3195[AC_REQUIRE([AC_PROG_CC])dnl
3196AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
brynercb91a2f2006-08-25 21:14:45 +00003197[if test -n "$NM"; then
3198 # Let the user override the test.
3199 lt_cv_path_NM="$NM"
3200else
mmentovai8c2a4de2006-09-20 16:20:15 +00003201 lt_nm_to_check="${ac_tool_prefix}nm"
nealsidb56cfa02009-05-29 00:53:02 +00003202 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
mmentovai8c2a4de2006-09-20 16:20:15 +00003203 lt_nm_to_check="$lt_nm_to_check nm"
3204 fi
3205 for lt_tmp_nm in $lt_nm_to_check; do
3206 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3207 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3208 IFS="$lt_save_ifs"
3209 test -z "$ac_dir" && ac_dir=.
3210 tmp_nm="$ac_dir/$lt_tmp_nm"
3211 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3212 # Check to see if the nm accepts a BSD-compat flag.
3213 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3214 # nm: unknown option "B" ignored
3215 # Tru64's nm complains that /dev/null is an invalid object file
3216 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3217 */dev/null* | *'Invalid file or object type'*)
3218 lt_cv_path_NM="$tmp_nm -B"
brynercb91a2f2006-08-25 21:14:45 +00003219 break
3220 ;;
3221 *)
mmentovai8c2a4de2006-09-20 16:20:15 +00003222 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3223 */dev/null*)
3224 lt_cv_path_NM="$tmp_nm -p"
3225 break
3226 ;;
3227 *)
3228 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3229 continue # so that we can try to find one that supports BSD flags
3230 ;;
3231 esac
brynercb91a2f2006-08-25 21:14:45 +00003232 ;;
3233 esac
mmentovai8c2a4de2006-09-20 16:20:15 +00003234 fi
3235 done
3236 IFS="$lt_save_ifs"
brynercb91a2f2006-08-25 21:14:45 +00003237 done
jimblandy92b1f832009-12-23 22:23:49 +00003238 : ${lt_cv_path_NM=no}
brynercb91a2f2006-08-25 21:14:45 +00003239fi])
jimblandy92b1f832009-12-23 22:23:49 +00003240if test "$lt_cv_path_NM" != "no"; then
3241 NM="$lt_cv_path_NM"
3242else
3243 # Didn't find any BSD compatible name lister, look for dumpbin.
3244 AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
3245 AC_SUBST([DUMPBIN])
3246 if test "$DUMPBIN" != ":"; then
3247 NM="$DUMPBIN"
3248 fi
3249fi
3250test -z "$NM" && NM=nm
3251AC_SUBST([NM])
3252_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3253
3254AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3255 [lt_cv_nm_interface="BSD nm"
3256 echo "int some_variable = 0;" > conftest.$ac_ext
3257 (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3258 (eval "$ac_compile" 2>conftest.err)
3259 cat conftest.err >&AS_MESSAGE_LOG_FD
3260 (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3261 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3262 cat conftest.err >&AS_MESSAGE_LOG_FD
3263 (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
3264 cat conftest.out >&AS_MESSAGE_LOG_FD
3265 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3266 lt_cv_nm_interface="MS dumpbin"
3267 fi
3268 rm -f conftest*])
3269])# LT_PATH_NM
3270
3271# Old names:
3272AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3273AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3274dnl aclocal-1.4 backwards compatibility:
3275dnl AC_DEFUN([AM_PROG_NM], [])
3276dnl AC_DEFUN([AC_PROG_NM], [])
brynercb91a2f2006-08-25 21:14:45 +00003277
3278
jimblandy92b1f832009-12-23 22:23:49 +00003279# LT_LIB_M
3280# --------
brynercb91a2f2006-08-25 21:14:45 +00003281# check for math library
jimblandy92b1f832009-12-23 22:23:49 +00003282AC_DEFUN([LT_LIB_M],
brynercb91a2f2006-08-25 21:14:45 +00003283[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3284LIBM=
3285case $host in
3286*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
3287 # These system don't have libm, or don't need it
3288 ;;
3289*-ncr-sysv4.3*)
3290 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3291 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3292 ;;
3293*)
3294 AC_CHECK_LIB(m, cos, LIBM="-lm")
3295 ;;
3296esac
jimblandy92b1f832009-12-23 22:23:49 +00003297AC_SUBST([LIBM])
3298])# LT_LIB_M
brynercb91a2f2006-08-25 21:14:45 +00003299
jimblandy92b1f832009-12-23 22:23:49 +00003300# Old name:
3301AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3302dnl aclocal-1.4 backwards compatibility:
3303dnl AC_DEFUN([AC_CHECK_LIBM], [])
brynercb91a2f2006-08-25 21:14:45 +00003304
brynercb91a2f2006-08-25 21:14:45 +00003305
jimblandy92b1f832009-12-23 22:23:49 +00003306# _LT_COMPILER_NO_RTTI([TAGNAME])
3307# -------------------------------
3308m4_defun([_LT_COMPILER_NO_RTTI],
3309[m4_require([_LT_TAG_COMPILER])dnl
brynercb91a2f2006-08-25 21:14:45 +00003310
jimblandy92b1f832009-12-23 22:23:49 +00003311_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
brynercb91a2f2006-08-25 21:14:45 +00003312
3313if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00003314 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
brynercb91a2f2006-08-25 21:14:45 +00003315
jimblandy92b1f832009-12-23 22:23:49 +00003316 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
brynercb91a2f2006-08-25 21:14:45 +00003317 lt_cv_prog_compiler_rtti_exceptions,
3318 [-fno-rtti -fno-exceptions], [],
jimblandy92b1f832009-12-23 22:23:49 +00003319 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
brynercb91a2f2006-08-25 21:14:45 +00003320fi
jimblandy92b1f832009-12-23 22:23:49 +00003321_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3322 [Compiler flag to turn off builtin functions])
3323])# _LT_COMPILER_NO_RTTI
brynercb91a2f2006-08-25 21:14:45 +00003324
3325
jimblandy92b1f832009-12-23 22:23:49 +00003326# _LT_CMD_GLOBAL_SYMBOLS
3327# ----------------------
3328m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3329[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3330AC_REQUIRE([AC_PROG_CC])dnl
3331AC_REQUIRE([LT_PATH_NM])dnl
3332AC_REQUIRE([LT_PATH_LD])dnl
3333m4_require([_LT_DECL_SED])dnl
3334m4_require([_LT_DECL_EGREP])dnl
3335m4_require([_LT_TAG_COMPILER])dnl
3336
brynercb91a2f2006-08-25 21:14:45 +00003337# Check for command to grab the raw symbol name followed by C symbol from nm.
3338AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3339AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3340[
3341# These are sane defaults that work on at least a few old systems.
3342# [They come from Ultrix. What could be older than Ultrix?!! ;)]
3343
3344# Character class describing NM global symbol codes.
3345symcode='[[BCDEGRST]]'
3346
3347# Regexp to match symbols that can be accessed directly from C.
3348sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3349
brynercb91a2f2006-08-25 21:14:45 +00003350# Define system-specific variables.
3351case $host_os in
3352aix*)
3353 symcode='[[BCDT]]'
3354 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003355cygwin* | mingw* | pw32* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00003356 symcode='[[ABCDGISTW]]'
3357 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003358hpux*)
brynercb91a2f2006-08-25 21:14:45 +00003359 if test "$host_cpu" = ia64; then
3360 symcode='[[ABCDEGRST]]'
3361 fi
mmentovai8c2a4de2006-09-20 16:20:15 +00003362 ;;
brynercb91a2f2006-08-25 21:14:45 +00003363irix* | nonstopux*)
3364 symcode='[[BCDEGRST]]'
3365 ;;
3366osf*)
3367 symcode='[[BCDEGQRST]]'
3368 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003369solaris*)
brynercb91a2f2006-08-25 21:14:45 +00003370 symcode='[[BDRT]]'
3371 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003372sco3.2v5*)
3373 symcode='[[DT]]'
3374 ;;
3375sysv4.2uw2*)
3376 symcode='[[DT]]'
3377 ;;
3378sysv5* | sco5v6* | unixware* | OpenUNIX*)
3379 symcode='[[ABDT]]'
3380 ;;
brynercb91a2f2006-08-25 21:14:45 +00003381sysv4)
3382 symcode='[[DFNSTU]]'
3383 ;;
3384esac
3385
brynercb91a2f2006-08-25 21:14:45 +00003386# If we're using GNU nm, then use its standard symbol codes.
3387case `$NM -V 2>&1` in
3388*GNU* | *'with BFD'*)
3389 symcode='[[ABCDGIRSTW]]' ;;
3390esac
3391
jimblandy92b1f832009-12-23 22:23:49 +00003392# Transform an extracted symbol line into a proper C declaration.
3393# Some systems (esp. on ia64) link data and code symbols differently,
3394# so use this general approach.
3395lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3396
3397# Transform an extracted symbol line into symbol name and symbol address
3398lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3399lt_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'"
3400
3401# Handle CRLF in mingw tool chain
3402opt_cr=
3403case $build_os in
3404mingw*)
3405 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3406 ;;
3407esac
3408
3409# Try without a prefix underscore, then with it.
brynercb91a2f2006-08-25 21:14:45 +00003410for ac_symprfx in "" "_"; do
3411
mmentovai8c2a4de2006-09-20 16:20:15 +00003412 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3413 symxfrm="\\1 $ac_symprfx\\2 \\2"
3414
brynercb91a2f2006-08-25 21:14:45 +00003415 # Write the raw and C identifiers.
jimblandy92b1f832009-12-23 22:23:49 +00003416 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3417 # Fake it for dumpbin and say T for any non-static function
3418 # and D for any global variable.
3419 # Also find C++ and __fastcall symbols from MSVC++,
3420 # which start with @ or ?.
3421 lt_cv_sys_global_symbol_pipe="$AWK ['"\
3422" {last_section=section; section=\$ 3};"\
3423" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3424" \$ 0!~/External *\|/{next};"\
3425" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3426" {if(hide[section]) next};"\
3427" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3428" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3429" s[1]~/^[@?]/{print s[1], s[1]; next};"\
3430" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3431" ' prfx=^$ac_symprfx]"
3432 else
3433 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3434 fi
brynercb91a2f2006-08-25 21:14:45 +00003435
3436 # Check to see that the pipe works correctly.
3437 pipe_works=no
3438
3439 rm -f conftest*
jimblandy92b1f832009-12-23 22:23:49 +00003440 cat > conftest.$ac_ext <<_LT_EOF
brynercb91a2f2006-08-25 21:14:45 +00003441#ifdef __cplusplus
3442extern "C" {
3443#endif
3444char nm_test_var;
jimblandy92b1f832009-12-23 22:23:49 +00003445void nm_test_func(void);
3446void nm_test_func(void){}
brynercb91a2f2006-08-25 21:14:45 +00003447#ifdef __cplusplus
3448}
3449#endif
3450int main(){nm_test_var='a';nm_test_func();return(0);}
jimblandy92b1f832009-12-23 22:23:49 +00003451_LT_EOF
brynercb91a2f2006-08-25 21:14:45 +00003452
3453 if AC_TRY_EVAL(ac_compile); then
3454 # Now try to grab the symbols.
3455 nlist=conftest.nm
3456 if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
3457 # Try sorting and uniquifying the output.
3458 if sort "$nlist" | uniq > "$nlist"T; then
3459 mv -f "$nlist"T "$nlist"
3460 else
3461 rm -f "$nlist"T
3462 fi
3463
3464 # Make sure that we snagged all the symbols we need.
jimblandy92b1f832009-12-23 22:23:49 +00003465 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3466 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3467 cat <<_LT_EOF > conftest.$ac_ext
brynercb91a2f2006-08-25 21:14:45 +00003468#ifdef __cplusplus
3469extern "C" {
3470#endif
3471
jimblandy92b1f832009-12-23 22:23:49 +00003472_LT_EOF
brynercb91a2f2006-08-25 21:14:45 +00003473 # Now generate the symbol file.
jimblandy92b1f832009-12-23 22:23:49 +00003474 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
brynercb91a2f2006-08-25 21:14:45 +00003475
jimblandy92b1f832009-12-23 22:23:49 +00003476 cat <<_LT_EOF >> conftest.$ac_ext
brynercb91a2f2006-08-25 21:14:45 +00003477
jimblandy92b1f832009-12-23 22:23:49 +00003478/* The mapping between symbol names and symbols. */
brynercb91a2f2006-08-25 21:14:45 +00003479const struct {
3480 const char *name;
jimblandy92b1f832009-12-23 22:23:49 +00003481 void *address;
brynercb91a2f2006-08-25 21:14:45 +00003482}
jimblandy92b1f832009-12-23 22:23:49 +00003483lt__PROGRAM__LTX_preloaded_symbols[[]] =
brynercb91a2f2006-08-25 21:14:45 +00003484{
jimblandy92b1f832009-12-23 22:23:49 +00003485 { "@PROGRAM@", (void *) 0 },
3486_LT_EOF
3487 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3488 cat <<\_LT_EOF >> conftest.$ac_ext
3489 {0, (void *) 0}
brynercb91a2f2006-08-25 21:14:45 +00003490};
3491
jimblandy92b1f832009-12-23 22:23:49 +00003492/* This works around a problem in FreeBSD linker */
3493#ifdef FREEBSD_WORKAROUND
3494static const void *lt_preloaded_setup() {
3495 return lt__PROGRAM__LTX_preloaded_symbols;
3496}
3497#endif
3498
brynercb91a2f2006-08-25 21:14:45 +00003499#ifdef __cplusplus
3500}
3501#endif
jimblandy92b1f832009-12-23 22:23:49 +00003502_LT_EOF
brynercb91a2f2006-08-25 21:14:45 +00003503 # Now try linking the two files.
3504 mv conftest.$ac_objext conftstm.$ac_objext
3505 lt_save_LIBS="$LIBS"
3506 lt_save_CFLAGS="$CFLAGS"
3507 LIBS="conftstm.$ac_objext"
jimblandy92b1f832009-12-23 22:23:49 +00003508 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
brynercb91a2f2006-08-25 21:14:45 +00003509 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3510 pipe_works=yes
3511 fi
3512 LIBS="$lt_save_LIBS"
3513 CFLAGS="$lt_save_CFLAGS"
3514 else
3515 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3516 fi
3517 else
3518 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3519 fi
3520 else
3521 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
3522 fi
3523 else
3524 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3525 cat conftest.$ac_ext >&5
3526 fi
nealsidb56cfa02009-05-29 00:53:02 +00003527 rm -rf conftest* conftst*
brynercb91a2f2006-08-25 21:14:45 +00003528
3529 # Do not use the global_symbol_pipe unless it works.
3530 if test "$pipe_works" = yes; then
3531 break
3532 else
3533 lt_cv_sys_global_symbol_pipe=
3534 fi
3535done
3536])
3537if test -z "$lt_cv_sys_global_symbol_pipe"; then
3538 lt_cv_sys_global_symbol_to_cdecl=
3539fi
3540if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3541 AC_MSG_RESULT(failed)
3542else
3543 AC_MSG_RESULT(ok)
3544fi
jimblandy92b1f832009-12-23 22:23:49 +00003545
3546_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3547 [Take the output of nm and produce a listing of raw symbols and C names])
3548_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3549 [Transform the output of nm in a proper C declaration])
3550_LT_DECL([global_symbol_to_c_name_address],
3551 [lt_cv_sys_global_symbol_to_c_name_address], [1],
3552 [Transform the output of nm in a C name address pair])
3553_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3554 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3555 [Transform the output of nm in a C name address pair when lib prefix is needed])
3556]) # _LT_CMD_GLOBAL_SYMBOLS
brynercb91a2f2006-08-25 21:14:45 +00003557
3558
jimblandy92b1f832009-12-23 22:23:49 +00003559# _LT_COMPILER_PIC([TAGNAME])
3560# ---------------------------
3561m4_defun([_LT_COMPILER_PIC],
3562[m4_require([_LT_TAG_COMPILER])dnl
3563_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3564_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3565_LT_TAGVAR(lt_prog_compiler_static, $1)=
brynercb91a2f2006-08-25 21:14:45 +00003566
3567AC_MSG_CHECKING([for $compiler option to produce PIC])
jimblandy92b1f832009-12-23 22:23:49 +00003568m4_if([$1], [CXX], [
brynercb91a2f2006-08-25 21:14:45 +00003569 # C++ specific cases for pic, static, wl, etc.
3570 if test "$GXX" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00003571 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3572 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
brynercb91a2f2006-08-25 21:14:45 +00003573
3574 case $host_os in
3575 aix*)
3576 # All AIX code is PIC.
3577 if test "$host_cpu" = ia64; then
3578 # AIX 5 now supports IA64 processor
jimblandy92b1f832009-12-23 22:23:49 +00003579 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00003580 fi
3581 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003582
brynercb91a2f2006-08-25 21:14:45 +00003583 amigaos*)
jimblandy92b1f832009-12-23 22:23:49 +00003584 case $host_cpu in
3585 powerpc)
3586 # see comment about AmigaOS4 .so support
3587 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3588 ;;
3589 m68k)
3590 # FIXME: we need at least 68020 code to build shared libraries, but
3591 # adding the `-m68020' flag to GCC prevents building anything better,
3592 # like `-m68040'.
3593 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3594 ;;
3595 esac
brynercb91a2f2006-08-25 21:14:45 +00003596 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003597
nealsidb56cfa02009-05-29 00:53:02 +00003598 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
brynercb91a2f2006-08-25 21:14:45 +00003599 # PIC is the default for these OSes.
3600 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003601 mingw* | cygwin* | os2* | pw32* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00003602 # This hack is so that the source file can tell whether it is being
3603 # built for inclusion in a dll (and should export symbols for example).
nealsidb56cfa02009-05-29 00:53:02 +00003604 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3605 # (--disable-auto-import) libraries
3606 m4_if([$1], [GCJ], [],
jimblandy92b1f832009-12-23 22:23:49 +00003607 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
brynercb91a2f2006-08-25 21:14:45 +00003608 ;;
3609 darwin* | rhapsody*)
3610 # PIC is the default on this platform
3611 # Common symbols not allowed in MH_DYLIB files
jimblandy92b1f832009-12-23 22:23:49 +00003612 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
brynercb91a2f2006-08-25 21:14:45 +00003613 ;;
3614 *djgpp*)
3615 # DJGPP does not support shared libraries at all
jimblandy92b1f832009-12-23 22:23:49 +00003616 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
brynercb91a2f2006-08-25 21:14:45 +00003617 ;;
nealsidb56cfa02009-05-29 00:53:02 +00003618 interix[[3-9]]*)
mmentovai8c2a4de2006-09-20 16:20:15 +00003619 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3620 # Instead, we relocate shared libraries at runtime.
3621 ;;
brynercb91a2f2006-08-25 21:14:45 +00003622 sysv4*MP*)
3623 if test -d /usr/nec; then
jimblandy92b1f832009-12-23 22:23:49 +00003624 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
brynercb91a2f2006-08-25 21:14:45 +00003625 fi
3626 ;;
3627 hpux*)
jimblandy92b1f832009-12-23 22:23:49 +00003628 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3629 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3630 # sets the default TLS model and affects inlining.
mmentovai8c2a4de2006-09-20 16:20:15 +00003631 case $host_cpu in
jimblandy92b1f832009-12-23 22:23:49 +00003632 hppa*64*)
brynercb91a2f2006-08-25 21:14:45 +00003633 ;;
3634 *)
jimblandy92b1f832009-12-23 22:23:49 +00003635 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
brynercb91a2f2006-08-25 21:14:45 +00003636 ;;
3637 esac
3638 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003639 *qnx* | *nto*)
3640 # QNX uses GNU C++, but need to define -shared option too, otherwise
3641 # it will coredump.
3642 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3643 ;;
brynercb91a2f2006-08-25 21:14:45 +00003644 *)
jimblandy92b1f832009-12-23 22:23:49 +00003645 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
brynercb91a2f2006-08-25 21:14:45 +00003646 ;;
3647 esac
3648 else
3649 case $host_os in
nealsidb56cfa02009-05-29 00:53:02 +00003650 aix[[4-9]]*)
brynercb91a2f2006-08-25 21:14:45 +00003651 # All AIX code is PIC.
3652 if test "$host_cpu" = ia64; then
3653 # AIX 5 now supports IA64 processor
jimblandy92b1f832009-12-23 22:23:49 +00003654 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00003655 else
jimblandy92b1f832009-12-23 22:23:49 +00003656 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
brynercb91a2f2006-08-25 21:14:45 +00003657 fi
3658 ;;
3659 chorus*)
3660 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003661 cxch68*)
brynercb91a2f2006-08-25 21:14:45 +00003662 # Green Hills C++ Compiler
jimblandy92b1f832009-12-23 22:23:49 +00003663 # _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"
brynercb91a2f2006-08-25 21:14:45 +00003664 ;;
3665 esac
3666 ;;
3667 dgux*)
3668 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003669 ec++*)
jimblandy92b1f832009-12-23 22:23:49 +00003670 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
brynercb91a2f2006-08-25 21:14:45 +00003671 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003672 ghcx*)
brynercb91a2f2006-08-25 21:14:45 +00003673 # Green Hills C++ Compiler
jimblandy92b1f832009-12-23 22:23:49 +00003674 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
brynercb91a2f2006-08-25 21:14:45 +00003675 ;;
3676 *)
3677 ;;
3678 esac
3679 ;;
nealsidb56cfa02009-05-29 00:53:02 +00003680 freebsd* | dragonfly*)
brynercb91a2f2006-08-25 21:14:45 +00003681 # FreeBSD uses GNU C++
3682 ;;
3683 hpux9* | hpux10* | hpux11*)
3684 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003685 CC*)
jimblandy92b1f832009-12-23 22:23:49 +00003686 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3687 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
brynercb91a2f2006-08-25 21:14:45 +00003688 if test "$host_cpu" != ia64; then
jimblandy92b1f832009-12-23 22:23:49 +00003689 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
brynercb91a2f2006-08-25 21:14:45 +00003690 fi
3691 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003692 aCC*)
jimblandy92b1f832009-12-23 22:23:49 +00003693 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3694 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
mmentovai8c2a4de2006-09-20 16:20:15 +00003695 case $host_cpu in
brynercb91a2f2006-08-25 21:14:45 +00003696 hppa*64*|ia64*)
3697 # +Z the default
3698 ;;
3699 *)
jimblandy92b1f832009-12-23 22:23:49 +00003700 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
brynercb91a2f2006-08-25 21:14:45 +00003701 ;;
3702 esac
3703 ;;
3704 *)
3705 ;;
3706 esac
3707 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003708 interix*)
3709 # This is c89, which is MS Visual C++ (no shared libs)
3710 # Anyone wants to do a port?
3711 ;;
brynercb91a2f2006-08-25 21:14:45 +00003712 irix5* | irix6* | nonstopux*)
3713 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003714 CC*)
jimblandy92b1f832009-12-23 22:23:49 +00003715 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3716 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
brynercb91a2f2006-08-25 21:14:45 +00003717 # CC pic flag -KPIC is the default.
3718 ;;
3719 *)
3720 ;;
3721 esac
3722 ;;
nealsidb56cfa02009-05-29 00:53:02 +00003723 linux* | k*bsd*-gnu)
brynercb91a2f2006-08-25 21:14:45 +00003724 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003725 KCC*)
brynercb91a2f2006-08-25 21:14:45 +00003726 # KAI C++ Compiler
jimblandy92b1f832009-12-23 22:23:49 +00003727 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
3728 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
brynercb91a2f2006-08-25 21:14:45 +00003729 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003730 ecpc* )
3731 # old Intel C++ for x86_64 which still supported -KPIC.
3732 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3733 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3734 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
3735 ;;
3736 icpc* )
3737 # Intel C++, used to be incompatible with GCC.
3738 # ICC 10 doesn't accept -KPIC any more.
3739 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3740 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3741 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
brynercb91a2f2006-08-25 21:14:45 +00003742 ;;
nealsidb56cfa02009-05-29 00:53:02 +00003743 pgCC* | pgcpp*)
jimblandy92b1f832009-12-23 22:23:49 +00003744 # Portland Group C++ compiler
3745 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3746 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
3747 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
mmentovai8c2a4de2006-09-20 16:20:15 +00003748 ;;
3749 cxx*)
brynercb91a2f2006-08-25 21:14:45 +00003750 # Compaq C++
3751 # Make sure the PIC flag is empty. It appears that all Alpha
3752 # Linux and Compaq Tru64 Unix objects are PIC.
jimblandy92b1f832009-12-23 22:23:49 +00003753 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3754 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
3755 ;;
3756 xlc* | xlC*)
3757 # IBM XL 8.0 on PPC
3758 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3759 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
3760 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
brynercb91a2f2006-08-25 21:14:45 +00003761 ;;
3762 *)
nealsidb56cfa02009-05-29 00:53:02 +00003763 case `$CC -V 2>&1 | sed 5q` in
3764 *Sun\ C*)
3765 # Sun C++ 5.9
jimblandy92b1f832009-12-23 22:23:49 +00003766 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3767 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3768 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
nealsidb56cfa02009-05-29 00:53:02 +00003769 ;;
3770 esac
brynercb91a2f2006-08-25 21:14:45 +00003771 ;;
3772 esac
3773 ;;
3774 lynxos*)
3775 ;;
3776 m88k*)
3777 ;;
3778 mvs*)
3779 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003780 cxx*)
jimblandy92b1f832009-12-23 22:23:49 +00003781 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
brynercb91a2f2006-08-25 21:14:45 +00003782 ;;
3783 *)
3784 ;;
3785 esac
3786 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003787 netbsd* | netbsdelf*-gnu)
brynercb91a2f2006-08-25 21:14:45 +00003788 ;;
jimblandy92b1f832009-12-23 22:23:49 +00003789 *qnx* | *nto*)
3790 # QNX uses GNU C++, but need to define -shared option too, otherwise
3791 # it will coredump.
3792 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3793 ;;
brynercb91a2f2006-08-25 21:14:45 +00003794 osf3* | osf4* | osf5*)
3795 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003796 KCC*)
jimblandy92b1f832009-12-23 22:23:49 +00003797 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
brynercb91a2f2006-08-25 21:14:45 +00003798 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003799 RCC*)
brynercb91a2f2006-08-25 21:14:45 +00003800 # Rational C++ 2.4.1
jimblandy92b1f832009-12-23 22:23:49 +00003801 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
brynercb91a2f2006-08-25 21:14:45 +00003802 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003803 cxx*)
brynercb91a2f2006-08-25 21:14:45 +00003804 # Digital/Compaq C++
jimblandy92b1f832009-12-23 22:23:49 +00003805 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
brynercb91a2f2006-08-25 21:14:45 +00003806 # Make sure the PIC flag is empty. It appears that all Alpha
3807 # Linux and Compaq Tru64 Unix objects are PIC.
jimblandy92b1f832009-12-23 22:23:49 +00003808 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3809 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
brynercb91a2f2006-08-25 21:14:45 +00003810 ;;
3811 *)
3812 ;;
3813 esac
3814 ;;
3815 psos*)
3816 ;;
brynercb91a2f2006-08-25 21:14:45 +00003817 solaris*)
3818 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003819 CC*)
brynercb91a2f2006-08-25 21:14:45 +00003820 # Sun C++ 4.2, 5.x and Centerline C++
jimblandy92b1f832009-12-23 22:23:49 +00003821 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3822 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3823 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
brynercb91a2f2006-08-25 21:14:45 +00003824 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003825 gcx*)
brynercb91a2f2006-08-25 21:14:45 +00003826 # Green Hills C++ Compiler
jimblandy92b1f832009-12-23 22:23:49 +00003827 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
brynercb91a2f2006-08-25 21:14:45 +00003828 ;;
3829 *)
3830 ;;
3831 esac
3832 ;;
3833 sunos4*)
3834 case $cc_basename in
mmentovai8c2a4de2006-09-20 16:20:15 +00003835 CC*)
brynercb91a2f2006-08-25 21:14:45 +00003836 # Sun C++ 4.x
jimblandy92b1f832009-12-23 22:23:49 +00003837 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
3838 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00003839 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003840 lcc*)
brynercb91a2f2006-08-25 21:14:45 +00003841 # Lucid
jimblandy92b1f832009-12-23 22:23:49 +00003842 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
brynercb91a2f2006-08-25 21:14:45 +00003843 ;;
3844 *)
3845 ;;
3846 esac
3847 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00003848 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
3849 case $cc_basename in
3850 CC*)
jimblandy92b1f832009-12-23 22:23:49 +00003851 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3852 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3853 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3854 ;;
3855 esac
3856 ;;
3857 tandem*)
3858 case $cc_basename in
3859 NCC*)
3860 # NonStop-UX NCC 3.20
3861 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3862 ;;
3863 *)
mmentovai8c2a4de2006-09-20 16:20:15 +00003864 ;;
3865 esac
brynercb91a2f2006-08-25 21:14:45 +00003866 ;;
3867 vxworks*)
3868 ;;
3869 *)
jimblandy92b1f832009-12-23 22:23:49 +00003870 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00003871 ;;
3872 esac
3873 fi
3874],
3875[
3876 if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00003877 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3878 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
brynercb91a2f2006-08-25 21:14:45 +00003879
3880 case $host_os in
3881 aix*)
3882 # All AIX code is PIC.
3883 if test "$host_cpu" = ia64; then
3884 # AIX 5 now supports IA64 processor
jimblandy92b1f832009-12-23 22:23:49 +00003885 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00003886 fi
3887 ;;
3888
3889 amigaos*)
jimblandy92b1f832009-12-23 22:23:49 +00003890 case $host_cpu in
3891 powerpc)
3892 # see comment about AmigaOS4 .so support
3893 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3894 ;;
3895 m68k)
3896 # FIXME: we need at least 68020 code to build shared libraries, but
3897 # adding the `-m68020' flag to GCC prevents building anything better,
3898 # like `-m68040'.
3899 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3900 ;;
3901 esac
brynercb91a2f2006-08-25 21:14:45 +00003902 ;;
3903
nealsidb56cfa02009-05-29 00:53:02 +00003904 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
brynercb91a2f2006-08-25 21:14:45 +00003905 # PIC is the default for these OSes.
3906 ;;
3907
jimblandy92b1f832009-12-23 22:23:49 +00003908 mingw* | cygwin* | pw32* | os2* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00003909 # This hack is so that the source file can tell whether it is being
3910 # built for inclusion in a dll (and should export symbols for example).
nealsidb56cfa02009-05-29 00:53:02 +00003911 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3912 # (--disable-auto-import) libraries
3913 m4_if([$1], [GCJ], [],
jimblandy92b1f832009-12-23 22:23:49 +00003914 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
brynercb91a2f2006-08-25 21:14:45 +00003915 ;;
3916
3917 darwin* | rhapsody*)
3918 # PIC is the default on this platform
3919 # Common symbols not allowed in MH_DYLIB files
jimblandy92b1f832009-12-23 22:23:49 +00003920 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
3921 ;;
3922
3923 hpux*)
3924 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3925 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3926 # sets the default TLS model and affects inlining.
3927 case $host_cpu in
3928 hppa*64*)
3929 # +Z the default
3930 ;;
3931 *)
3932 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3933 ;;
3934 esac
brynercb91a2f2006-08-25 21:14:45 +00003935 ;;
3936
nealsidb56cfa02009-05-29 00:53:02 +00003937 interix[[3-9]]*)
mmentovai8c2a4de2006-09-20 16:20:15 +00003938 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3939 # Instead, we relocate shared libraries at runtime.
3940 ;;
3941
brynercb91a2f2006-08-25 21:14:45 +00003942 msdosdjgpp*)
3943 # Just because we use GCC doesn't mean we suddenly get shared libraries
3944 # on systems that don't support them.
jimblandy92b1f832009-12-23 22:23:49 +00003945 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00003946 enable_shared=no
3947 ;;
3948
jimblandy92b1f832009-12-23 22:23:49 +00003949 *nto* | *qnx*)
3950 # QNX uses GNU C++, but need to define -shared option too, otherwise
3951 # it will coredump.
3952 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3953 ;;
3954
brynercb91a2f2006-08-25 21:14:45 +00003955 sysv4*MP*)
3956 if test -d /usr/nec; then
jimblandy92b1f832009-12-23 22:23:49 +00003957 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
brynercb91a2f2006-08-25 21:14:45 +00003958 fi
3959 ;;
3960
brynercb91a2f2006-08-25 21:14:45 +00003961 *)
jimblandy92b1f832009-12-23 22:23:49 +00003962 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
brynercb91a2f2006-08-25 21:14:45 +00003963 ;;
3964 esac
3965 else
3966 # PORTME Check for flag to pass linker flags through the system compiler.
3967 case $host_os in
3968 aix*)
jimblandy92b1f832009-12-23 22:23:49 +00003969 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
brynercb91a2f2006-08-25 21:14:45 +00003970 if test "$host_cpu" = ia64; then
3971 # AIX 5 now supports IA64 processor
jimblandy92b1f832009-12-23 22:23:49 +00003972 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00003973 else
jimblandy92b1f832009-12-23 22:23:49 +00003974 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
brynercb91a2f2006-08-25 21:14:45 +00003975 fi
3976 ;;
3977
jimblandy92b1f832009-12-23 22:23:49 +00003978 mingw* | cygwin* | pw32* | os2* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00003979 # This hack is so that the source file can tell whether it is being
3980 # built for inclusion in a dll (and should export symbols for example).
nealsidb56cfa02009-05-29 00:53:02 +00003981 m4_if([$1], [GCJ], [],
jimblandy92b1f832009-12-23 22:23:49 +00003982 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
brynercb91a2f2006-08-25 21:14:45 +00003983 ;;
3984
3985 hpux9* | hpux10* | hpux11*)
jimblandy92b1f832009-12-23 22:23:49 +00003986 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
brynercb91a2f2006-08-25 21:14:45 +00003987 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
3988 # not for PA HP-UX.
mmentovai8c2a4de2006-09-20 16:20:15 +00003989 case $host_cpu in
brynercb91a2f2006-08-25 21:14:45 +00003990 hppa*64*|ia64*)
3991 # +Z the default
3992 ;;
3993 *)
jimblandy92b1f832009-12-23 22:23:49 +00003994 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
brynercb91a2f2006-08-25 21:14:45 +00003995 ;;
3996 esac
3997 # Is there a better lt_prog_compiler_static that works with the bundled CC?
jimblandy92b1f832009-12-23 22:23:49 +00003998 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
brynercb91a2f2006-08-25 21:14:45 +00003999 ;;
4000
4001 irix5* | irix6* | nonstopux*)
jimblandy92b1f832009-12-23 22:23:49 +00004002 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
brynercb91a2f2006-08-25 21:14:45 +00004003 # PIC (with -KPIC) is the default.
jimblandy92b1f832009-12-23 22:23:49 +00004004 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
brynercb91a2f2006-08-25 21:14:45 +00004005 ;;
4006
nealsidb56cfa02009-05-29 00:53:02 +00004007 linux* | k*bsd*-gnu)
mmentovai8c2a4de2006-09-20 16:20:15 +00004008 case $cc_basename in
jimblandy92b1f832009-12-23 22:23:49 +00004009 # old Intel for x86_64 which still supported -KPIC.
4010 ecc*)
4011 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4012 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4013 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
brynercb91a2f2006-08-25 21:14:45 +00004014 ;;
jimblandy92b1f832009-12-23 22:23:49 +00004015 # icc used to be incompatible with GCC.
4016 # ICC 10 doesn't accept -KPIC any more.
4017 icc* | ifort*)
4018 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4019 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4020 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4021 ;;
4022 # Lahey Fortran 8.1.
4023 lf95*)
4024 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4025 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4026 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4027 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00004028 pgcc* | pgf77* | pgf90* | pgf95*)
4029 # Portland Group compilers (*not* the Pentium gcc compiler,
4030 # which looks to be a dead project)
jimblandy92b1f832009-12-23 22:23:49 +00004031 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4032 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4033 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
mmentovai8c2a4de2006-09-20 16:20:15 +00004034 ;;
brynercb91a2f2006-08-25 21:14:45 +00004035 ccc*)
jimblandy92b1f832009-12-23 22:23:49 +00004036 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
brynercb91a2f2006-08-25 21:14:45 +00004037 # All Alpha code is PIC.
jimblandy92b1f832009-12-23 22:23:49 +00004038 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
brynercb91a2f2006-08-25 21:14:45 +00004039 ;;
jimblandy92b1f832009-12-23 22:23:49 +00004040 xl*)
4041 # IBM XL C 8.0/Fortran 10.1 on PPC
4042 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4043 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4044 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4045 ;;
nealsidb56cfa02009-05-29 00:53:02 +00004046 *)
jimblandy92b1f832009-12-23 22:23:49 +00004047 case `$CC -V 2>&1 | sed 5q` in
nealsidb56cfa02009-05-29 00:53:02 +00004048 *Sun\ C*)
4049 # Sun C 5.9
jimblandy92b1f832009-12-23 22:23:49 +00004050 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4051 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4052 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
nealsidb56cfa02009-05-29 00:53:02 +00004053 ;;
4054 *Sun\ F*)
4055 # Sun Fortran 8.3 passes all unrecognized flags to the linker
jimblandy92b1f832009-12-23 22:23:49 +00004056 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4057 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4058 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
nealsidb56cfa02009-05-29 00:53:02 +00004059 ;;
4060 esac
4061 ;;
brynercb91a2f2006-08-25 21:14:45 +00004062 esac
4063 ;;
4064
jimblandy92b1f832009-12-23 22:23:49 +00004065 newsos6)
4066 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4067 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4068 ;;
4069
4070 *nto* | *qnx*)
4071 # QNX uses GNU C++, but need to define -shared option too, otherwise
4072 # it will coredump.
4073 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4074 ;;
4075
brynercb91a2f2006-08-25 21:14:45 +00004076 osf3* | osf4* | osf5*)
jimblandy92b1f832009-12-23 22:23:49 +00004077 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
brynercb91a2f2006-08-25 21:14:45 +00004078 # All OSF/1 code is PIC.
jimblandy92b1f832009-12-23 22:23:49 +00004079 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
brynercb91a2f2006-08-25 21:14:45 +00004080 ;;
4081
nealsidb56cfa02009-05-29 00:53:02 +00004082 rdos*)
jimblandy92b1f832009-12-23 22:23:49 +00004083 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
nealsidb56cfa02009-05-29 00:53:02 +00004084 ;;
4085
brynercb91a2f2006-08-25 21:14:45 +00004086 solaris*)
jimblandy92b1f832009-12-23 22:23:49 +00004087 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4088 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
mmentovai8c2a4de2006-09-20 16:20:15 +00004089 case $cc_basename in
4090 f77* | f90* | f95*)
jimblandy92b1f832009-12-23 22:23:49 +00004091 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
mmentovai8c2a4de2006-09-20 16:20:15 +00004092 *)
jimblandy92b1f832009-12-23 22:23:49 +00004093 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
mmentovai8c2a4de2006-09-20 16:20:15 +00004094 esac
brynercb91a2f2006-08-25 21:14:45 +00004095 ;;
4096
4097 sunos4*)
jimblandy92b1f832009-12-23 22:23:49 +00004098 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4099 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4100 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00004101 ;;
4102
mmentovai8c2a4de2006-09-20 16:20:15 +00004103 sysv4 | sysv4.2uw2* | sysv4.3*)
jimblandy92b1f832009-12-23 22:23:49 +00004104 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4105 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4106 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00004107 ;;
4108
4109 sysv4*MP*)
4110 if test -d /usr/nec ;then
jimblandy92b1f832009-12-23 22:23:49 +00004111 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4112 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00004113 fi
4114 ;;
4115
mmentovai8c2a4de2006-09-20 16:20:15 +00004116 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
jimblandy92b1f832009-12-23 22:23:49 +00004117 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4118 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4119 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
mmentovai8c2a4de2006-09-20 16:20:15 +00004120 ;;
4121
4122 unicos*)
jimblandy92b1f832009-12-23 22:23:49 +00004123 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4124 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
mmentovai8c2a4de2006-09-20 16:20:15 +00004125 ;;
4126
brynercb91a2f2006-08-25 21:14:45 +00004127 uts4*)
jimblandy92b1f832009-12-23 22:23:49 +00004128 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4129 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
brynercb91a2f2006-08-25 21:14:45 +00004130 ;;
4131
4132 *)
jimblandy92b1f832009-12-23 22:23:49 +00004133 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004134 ;;
4135 esac
4136 fi
4137])
jimblandy92b1f832009-12-23 22:23:49 +00004138case $host_os in
4139 # For platforms which do not support PIC, -DPIC is meaningless:
4140 *djgpp*)
4141 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4142 ;;
4143 *)
4144 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4145 ;;
4146esac
4147AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4148_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4149 [How to pass a linker flag through the compiler])
brynercb91a2f2006-08-25 21:14:45 +00004150
4151#
4152# Check to make sure the PIC flag actually works.
4153#
jimblandy92b1f832009-12-23 22:23:49 +00004154if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4155 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4156 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4157 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4158 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
brynercb91a2f2006-08-25 21:14:45 +00004159 "" | " "*) ;;
jimblandy92b1f832009-12-23 22:23:49 +00004160 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
brynercb91a2f2006-08-25 21:14:45 +00004161 esac],
jimblandy92b1f832009-12-23 22:23:49 +00004162 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4163 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
brynercb91a2f2006-08-25 21:14:45 +00004164fi
jimblandy92b1f832009-12-23 22:23:49 +00004165_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4166 [Additional compiler flags for building library objects])
mmentovai8c2a4de2006-09-20 16:20:15 +00004167
4168#
4169# Check to make sure the static flag actually works.
4170#
jimblandy92b1f832009-12-23 22:23:49 +00004171wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4172_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4173 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
mmentovai8c2a4de2006-09-20 16:20:15 +00004174 $lt_tmp_static_flag,
4175 [],
jimblandy92b1f832009-12-23 22:23:49 +00004176 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4177_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4178 [Compiler flag to prevent dynamic linking])
4179])# _LT_COMPILER_PIC
brynercb91a2f2006-08-25 21:14:45 +00004180
4181
jimblandy92b1f832009-12-23 22:23:49 +00004182# _LT_LINKER_SHLIBS([TAGNAME])
4183# ----------------------------
brynercb91a2f2006-08-25 21:14:45 +00004184# See if the linker supports building shared libraries.
jimblandy92b1f832009-12-23 22:23:49 +00004185m4_defun([_LT_LINKER_SHLIBS],
4186[AC_REQUIRE([LT_PATH_LD])dnl
4187AC_REQUIRE([LT_PATH_NM])dnl
4188m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4189m4_require([_LT_DECL_EGREP])dnl
4190m4_require([_LT_DECL_SED])dnl
4191m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4192m4_require([_LT_TAG_COMPILER])dnl
nealsidb56cfa02009-05-29 00:53:02 +00004193AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
jimblandy92b1f832009-12-23 22:23:49 +00004194m4_if([$1], [CXX], [
4195 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
brynercb91a2f2006-08-25 21:14:45 +00004196 case $host_os in
nealsidb56cfa02009-05-29 00:53:02 +00004197 aix[[4-9]]*)
brynercb91a2f2006-08-25 21:14:45 +00004198 # If we're using GNU nm, then we don't want the "-C" option.
4199 # -C means demangle to AIX nm, but means don't demangle with GNU nm
jimblandy92b1f832009-12-23 22:23:49 +00004200 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4201 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
brynercb91a2f2006-08-25 21:14:45 +00004202 else
jimblandy92b1f832009-12-23 22:23:49 +00004203 _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'
brynercb91a2f2006-08-25 21:14:45 +00004204 fi
4205 ;;
4206 pw32*)
jimblandy92b1f832009-12-23 22:23:49 +00004207 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
brynercb91a2f2006-08-25 21:14:45 +00004208 ;;
jimblandy92b1f832009-12-23 22:23:49 +00004209 cygwin* | mingw* | cegcc*)
4210 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4211 ;;
4212 linux* | k*bsd*-gnu)
4213 _LT_TAGVAR(link_all_deplibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004214 ;;
4215 *)
jimblandy92b1f832009-12-23 22:23:49 +00004216 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
brynercb91a2f2006-08-25 21:14:45 +00004217 ;;
4218 esac
jimblandy92b1f832009-12-23 22:23:49 +00004219 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4220], [
brynercb91a2f2006-08-25 21:14:45 +00004221 runpath_var=
jimblandy92b1f832009-12-23 22:23:49 +00004222 _LT_TAGVAR(allow_undefined_flag, $1)=
4223 _LT_TAGVAR(always_export_symbols, $1)=no
4224 _LT_TAGVAR(archive_cmds, $1)=
4225 _LT_TAGVAR(archive_expsym_cmds, $1)=
4226 _LT_TAGVAR(compiler_needs_object, $1)=no
4227 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4228 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4229 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4230 _LT_TAGVAR(hardcode_automatic, $1)=no
4231 _LT_TAGVAR(hardcode_direct, $1)=no
4232 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4233 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4234 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
4235 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4236 _LT_TAGVAR(hardcode_minus_L, $1)=no
4237 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4238 _LT_TAGVAR(inherit_rpath, $1)=no
4239 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4240 _LT_TAGVAR(module_cmds, $1)=
4241 _LT_TAGVAR(module_expsym_cmds, $1)=
4242 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4243 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4244 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4245 _LT_TAGVAR(whole_archive_flag_spec, $1)=
brynercb91a2f2006-08-25 21:14:45 +00004246 # include_expsyms should be a list of space-separated symbols to be *always*
4247 # included in the symbol list
jimblandy92b1f832009-12-23 22:23:49 +00004248 _LT_TAGVAR(include_expsyms, $1)=
brynercb91a2f2006-08-25 21:14:45 +00004249 # exclude_expsyms can be an extended regexp of symbols to exclude
4250 # it will be wrapped by ` (' and `)$', so one must not match beginning or
4251 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4252 # as well as any symbol that contains `d'.
jimblandy92b1f832009-12-23 22:23:49 +00004253 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
brynercb91a2f2006-08-25 21:14:45 +00004254 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4255 # platforms (ab)use it in PIC code, but their linkers get confused if
4256 # the symbol is explicitly referenced. Since portable code cannot
4257 # rely on this symbol name, it's probably fine to never include it in
4258 # preloaded symbol tables.
nealsidb56cfa02009-05-29 00:53:02 +00004259 # Exclude shared library initialization/finalization symbols.
4260dnl Note also adjust exclude_expsyms for C++ above.
brynercb91a2f2006-08-25 21:14:45 +00004261 extract_expsyms_cmds=
jimblandy92b1f832009-12-23 22:23:49 +00004262
brynercb91a2f2006-08-25 21:14:45 +00004263 case $host_os in
jimblandy92b1f832009-12-23 22:23:49 +00004264 cygwin* | mingw* | pw32* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00004265 # FIXME: the MSVC++ port hasn't been tested in a loooong time
4266 # When not using gcc, we currently assume that we are using
4267 # Microsoft Visual C++.
4268 if test "$GCC" != yes; then
4269 with_gnu_ld=no
4270 fi
4271 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00004272 interix*)
4273 # we just hope/assume this is gcc and not c89 (= MSVC++)
4274 with_gnu_ld=yes
4275 ;;
brynercb91a2f2006-08-25 21:14:45 +00004276 openbsd*)
4277 with_gnu_ld=no
4278 ;;
jimblandy92b1f832009-12-23 22:23:49 +00004279 linux* | k*bsd*-gnu)
4280 _LT_TAGVAR(link_all_deplibs, $1)=no
4281 ;;
brynercb91a2f2006-08-25 21:14:45 +00004282 esac
4283
jimblandy92b1f832009-12-23 22:23:49 +00004284 _LT_TAGVAR(ld_shlibs, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00004285 if test "$with_gnu_ld" = yes; then
4286 # If archive_cmds runs LD, not CC, wlarc should be empty
4287 wlarc='${wl}'
4288
mmentovai8c2a4de2006-09-20 16:20:15 +00004289 # Set some defaults for GNU ld with shared library support. These
4290 # are reset later if shared libraries are not supported. Putting them
4291 # here allows them to be overridden if necessary.
4292 runpath_var=LD_RUN_PATH
jimblandy92b1f832009-12-23 22:23:49 +00004293 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4294 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
mmentovai8c2a4de2006-09-20 16:20:15 +00004295 # ancient GNU ld didn't support --whole-archive et. al.
jimblandy92b1f832009-12-23 22:23:49 +00004296 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4297 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4298 else
4299 _LT_TAGVAR(whole_archive_flag_spec, $1)=
mmentovai8c2a4de2006-09-20 16:20:15 +00004300 fi
4301 supports_anon_versioning=no
jimblandy92b1f832009-12-23 22:23:49 +00004302 case `$LD -v 2>&1` in
mmentovai8c2a4de2006-09-20 16:20:15 +00004303 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4304 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4305 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4306 *\ 2.11.*) ;; # other 2.11 versions
4307 *) supports_anon_versioning=yes ;;
4308 esac
4309
brynercb91a2f2006-08-25 21:14:45 +00004310 # See if GNU ld supports shared libraries.
4311 case $host_os in
nealsidb56cfa02009-05-29 00:53:02 +00004312 aix[[3-9]]*)
brynercb91a2f2006-08-25 21:14:45 +00004313 # On AIX/PPC, the GNU linker is very broken
4314 if test "$host_cpu" != ia64; then
jimblandy92b1f832009-12-23 22:23:49 +00004315 _LT_TAGVAR(ld_shlibs, $1)=no
4316 cat <<_LT_EOF 1>&2
brynercb91a2f2006-08-25 21:14:45 +00004317
4318*** Warning: the GNU linker, at least up to release 2.9.1, is reported
4319*** to be unable to reliably create shared libraries on AIX.
4320*** Therefore, libtool is disabling shared libraries support. If you
4321*** really care for shared libraries, you may want to modify your PATH
4322*** so that a non-GNU linker is found, and then restart.
4323
jimblandy92b1f832009-12-23 22:23:49 +00004324_LT_EOF
brynercb91a2f2006-08-25 21:14:45 +00004325 fi
4326 ;;
4327
4328 amigaos*)
jimblandy92b1f832009-12-23 22:23:49 +00004329 case $host_cpu in
4330 powerpc)
4331 # see comment about AmigaOS4 .so support
4332 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4333 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4334 ;;
4335 m68k)
4336 _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)'
4337 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4338 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4339 ;;
4340 esac
brynercb91a2f2006-08-25 21:14:45 +00004341 ;;
4342
4343 beos*)
jimblandy92b1f832009-12-23 22:23:49 +00004344 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4345 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
brynercb91a2f2006-08-25 21:14:45 +00004346 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4347 # support --undefined. This deserves some investigation. FIXME
jimblandy92b1f832009-12-23 22:23:49 +00004348 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
brynercb91a2f2006-08-25 21:14:45 +00004349 else
jimblandy92b1f832009-12-23 22:23:49 +00004350 _LT_TAGVAR(ld_shlibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004351 fi
4352 ;;
4353
jimblandy92b1f832009-12-23 22:23:49 +00004354 cygwin* | mingw* | pw32* | cegcc*)
4355 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
brynercb91a2f2006-08-25 21:14:45 +00004356 # as there is no search path for DLLs.
jimblandy92b1f832009-12-23 22:23:49 +00004357 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4358 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4359 _LT_TAGVAR(always_export_symbols, $1)=no
4360 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
4361 _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'
brynercb91a2f2006-08-25 21:14:45 +00004362
jimblandy92b1f832009-12-23 22:23:49 +00004363 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4364 _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'
brynercb91a2f2006-08-25 21:14:45 +00004365 # If the export-symbols file already is a .def file (1st line
4366 # is EXPORTS), use it as is; otherwise, prepend...
jimblandy92b1f832009-12-23 22:23:49 +00004367 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
brynercb91a2f2006-08-25 21:14:45 +00004368 cp $export_symbols $output_objdir/$soname.def;
4369 else
4370 echo EXPORTS > $output_objdir/$soname.def;
4371 cat $export_symbols >> $output_objdir/$soname.def;
4372 fi~
mmentovai8c2a4de2006-09-20 16:20:15 +00004373 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
brynercb91a2f2006-08-25 21:14:45 +00004374 else
jimblandy92b1f832009-12-23 22:23:49 +00004375 _LT_TAGVAR(ld_shlibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004376 fi
4377 ;;
4378
nealsidb56cfa02009-05-29 00:53:02 +00004379 interix[[3-9]]*)
jimblandy92b1f832009-12-23 22:23:49 +00004380 _LT_TAGVAR(hardcode_direct, $1)=no
4381 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4382 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4383 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
mmentovai8c2a4de2006-09-20 16:20:15 +00004384 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4385 # Instead, shared libraries are loaded at an image base (0x10000000 by
4386 # default) and relocated if they conflict, which is a slow very memory
4387 # consuming and fragmenting process. To avoid this, we pick a random,
4388 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4389 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
jimblandy92b1f832009-12-23 22:23:49 +00004390 _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'
4391 _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'
mmentovai8c2a4de2006-09-20 16:20:15 +00004392 ;;
4393
jimblandy92b1f832009-12-23 22:23:49 +00004394 gnu* | linux* | tpf* | k*bsd*-gnu)
4395 tmp_diet=no
4396 if test "$host_os" = linux-dietlibc; then
4397 case $cc_basename in
4398 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
4399 esac
4400 fi
4401 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4402 && test "$tmp_diet" = no
4403 then
mmentovai8c2a4de2006-09-20 16:20:15 +00004404 tmp_addflag=
jimblandy92b1f832009-12-23 22:23:49 +00004405 tmp_sharedflag='-shared'
mmentovai8c2a4de2006-09-20 16:20:15 +00004406 case $cc_basename,$host_cpu in
jimblandy92b1f832009-12-23 22:23:49 +00004407 pgcc*) # Portland Group C compiler
4408 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
mmentovai8c2a4de2006-09-20 16:20:15 +00004409 tmp_addflag=' $pic_flag'
4410 ;;
4411 pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
jimblandy92b1f832009-12-23 22:23:49 +00004412 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
mmentovai8c2a4de2006-09-20 16:20:15 +00004413 tmp_addflag=' $pic_flag -Mnomain' ;;
jimblandy92b1f832009-12-23 22:23:49 +00004414 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
mmentovai8c2a4de2006-09-20 16:20:15 +00004415 tmp_addflag=' -i_dynamic' ;;
4416 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
4417 tmp_addflag=' -i_dynamic -nofor_main' ;;
4418 ifc* | ifort*) # Intel Fortran compiler
4419 tmp_addflag=' -nofor_main' ;;
jimblandy92b1f832009-12-23 22:23:49 +00004420 lf95*) # Lahey Fortran 8.1
4421 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4422 tmp_sharedflag='--shared' ;;
4423 xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
4424 tmp_sharedflag='-qmkshrobj'
4425 tmp_addflag= ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00004426 esac
nealsidb56cfa02009-05-29 00:53:02 +00004427 case `$CC -V 2>&1 | sed 5q` in
4428 *Sun\ C*) # Sun C 5.9
jimblandy92b1f832009-12-23 22:23:49 +00004429 _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; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
4430 _LT_TAGVAR(compiler_needs_object, $1)=yes
nealsidb56cfa02009-05-29 00:53:02 +00004431 tmp_sharedflag='-G' ;;
4432 *Sun\ F*) # Sun Fortran 8.3
4433 tmp_sharedflag='-G' ;;
nealsidb56cfa02009-05-29 00:53:02 +00004434 esac
jimblandy92b1f832009-12-23 22:23:49 +00004435 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
mmentovai8c2a4de2006-09-20 16:20:15 +00004436
jimblandy92b1f832009-12-23 22:23:49 +00004437 if test "x$supports_anon_versioning" = xyes; then
4438 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4439 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4440 echo "local: *; };" >> $output_objdir/$libname.ver~
4441 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4442 fi
4443
4444 case $cc_basename in
4445 xlf*)
4446 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4447 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
4448 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4449 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
4450 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
4451 if test "x$supports_anon_versioning" = xyes; then
4452 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4453 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4454 echo "local: *; };" >> $output_objdir/$libname.ver~
4455 $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
4456 fi
4457 ;;
4458 esac
mmentovai8c2a4de2006-09-20 16:20:15 +00004459 else
jimblandy92b1f832009-12-23 22:23:49 +00004460 _LT_TAGVAR(ld_shlibs, $1)=no
mmentovai8c2a4de2006-09-20 16:20:15 +00004461 fi
4462 ;;
4463
jimblandy92b1f832009-12-23 22:23:49 +00004464 netbsd* | netbsdelf*-gnu)
4465 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4466 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
brynercb91a2f2006-08-25 21:14:45 +00004467 wlarc=
4468 else
jimblandy92b1f832009-12-23 22:23:49 +00004469 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4470 _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'
brynercb91a2f2006-08-25 21:14:45 +00004471 fi
4472 ;;
4473
mmentovai8c2a4de2006-09-20 16:20:15 +00004474 solaris*)
jimblandy92b1f832009-12-23 22:23:49 +00004475 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4476 _LT_TAGVAR(ld_shlibs, $1)=no
4477 cat <<_LT_EOF 1>&2
brynercb91a2f2006-08-25 21:14:45 +00004478
4479*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4480*** create shared libraries on Solaris systems. Therefore, libtool
4481*** is disabling shared libraries support. We urge you to upgrade GNU
4482*** binutils to release 2.9.1 or newer. Another option is to modify
4483*** your PATH or compiler configuration so that the native linker is
4484*** used, and then restart.
4485
jimblandy92b1f832009-12-23 22:23:49 +00004486_LT_EOF
4487 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4488 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4489 _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'
brynercb91a2f2006-08-25 21:14:45 +00004490 else
jimblandy92b1f832009-12-23 22:23:49 +00004491 _LT_TAGVAR(ld_shlibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004492 fi
4493 ;;
4494
mmentovai8c2a4de2006-09-20 16:20:15 +00004495 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4496 case `$LD -v 2>&1` in
nealsidb56cfa02009-05-29 00:53:02 +00004497 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
jimblandy92b1f832009-12-23 22:23:49 +00004498 _LT_TAGVAR(ld_shlibs, $1)=no
mmentovai8c2a4de2006-09-20 16:20:15 +00004499 cat <<_LT_EOF 1>&2
4500
4501*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4502*** reliably create shared libraries on SCO systems. Therefore, libtool
4503*** is disabling shared libraries support. We urge you to upgrade GNU
4504*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
4505*** your PATH or compiler configuration so that the native linker is
4506*** used, and then restart.
4507
4508_LT_EOF
4509 ;;
4510 *)
jimblandy92b1f832009-12-23 22:23:49 +00004511 # For security reasons, it is highly recommended that you always
4512 # use absolute paths for naming shared libraries, and exclude the
4513 # DT_RUNPATH tag from executables and libraries. But doing so
4514 # requires that you compile everything twice, which is a pain.
4515 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4516 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4517 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4518 _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'
mmentovai8c2a4de2006-09-20 16:20:15 +00004519 else
jimblandy92b1f832009-12-23 22:23:49 +00004520 _LT_TAGVAR(ld_shlibs, $1)=no
mmentovai8c2a4de2006-09-20 16:20:15 +00004521 fi
4522 ;;
4523 esac
4524 ;;
4525
brynercb91a2f2006-08-25 21:14:45 +00004526 sunos4*)
jimblandy92b1f832009-12-23 22:23:49 +00004527 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
brynercb91a2f2006-08-25 21:14:45 +00004528 wlarc=
jimblandy92b1f832009-12-23 22:23:49 +00004529 _LT_TAGVAR(hardcode_direct, $1)=yes
4530 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004531 ;;
4532
brynercb91a2f2006-08-25 21:14:45 +00004533 *)
jimblandy92b1f832009-12-23 22:23:49 +00004534 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4535 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4536 _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'
brynercb91a2f2006-08-25 21:14:45 +00004537 else
jimblandy92b1f832009-12-23 22:23:49 +00004538 _LT_TAGVAR(ld_shlibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004539 fi
4540 ;;
4541 esac
4542
jimblandy92b1f832009-12-23 22:23:49 +00004543 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
mmentovai8c2a4de2006-09-20 16:20:15 +00004544 runpath_var=
jimblandy92b1f832009-12-23 22:23:49 +00004545 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4546 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4547 _LT_TAGVAR(whole_archive_flag_spec, $1)=
brynercb91a2f2006-08-25 21:14:45 +00004548 fi
4549 else
4550 # PORTME fill in a description of your system's linker (not GNU ld)
4551 case $host_os in
4552 aix3*)
jimblandy92b1f832009-12-23 22:23:49 +00004553 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4554 _LT_TAGVAR(always_export_symbols, $1)=yes
4555 _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'
brynercb91a2f2006-08-25 21:14:45 +00004556 # Note: this linker hardcodes the directories in LIBPATH if there
4557 # are no directories specified by -L.
jimblandy92b1f832009-12-23 22:23:49 +00004558 _LT_TAGVAR(hardcode_minus_L, $1)=yes
mmentovai8c2a4de2006-09-20 16:20:15 +00004559 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
brynercb91a2f2006-08-25 21:14:45 +00004560 # Neither direct hardcoding nor static linking is supported with a
4561 # broken collect2.
jimblandy92b1f832009-12-23 22:23:49 +00004562 _LT_TAGVAR(hardcode_direct, $1)=unsupported
brynercb91a2f2006-08-25 21:14:45 +00004563 fi
4564 ;;
4565
nealsidb56cfa02009-05-29 00:53:02 +00004566 aix[[4-9]]*)
brynercb91a2f2006-08-25 21:14:45 +00004567 if test "$host_cpu" = ia64; then
4568 # On IA64, the linker does run time linking by default, so we don't
4569 # have to do anything special.
4570 aix_use_runtimelinking=no
4571 exp_sym_flag='-Bexport'
4572 no_entry_flag=""
4573 else
4574 # If we're using GNU nm, then we don't want the "-C" option.
4575 # -C means demangle to AIX nm, but means don't demangle with GNU nm
jimblandy92b1f832009-12-23 22:23:49 +00004576 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4577 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
brynercb91a2f2006-08-25 21:14:45 +00004578 else
jimblandy92b1f832009-12-23 22:23:49 +00004579 _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'
brynercb91a2f2006-08-25 21:14:45 +00004580 fi
4581 aix_use_runtimelinking=no
4582
4583 # Test if we are trying to use run time linking or normal
4584 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
4585 # need to do runtime linking.
nealsidb56cfa02009-05-29 00:53:02 +00004586 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
brynercb91a2f2006-08-25 21:14:45 +00004587 for ld_flag in $LDFLAGS; do
jimblandy92b1f832009-12-23 22:23:49 +00004588 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
4589 aix_use_runtimelinking=yes
4590 break
4591 fi
brynercb91a2f2006-08-25 21:14:45 +00004592 done
mmentovai8c2a4de2006-09-20 16:20:15 +00004593 ;;
brynercb91a2f2006-08-25 21:14:45 +00004594 esac
4595
4596 exp_sym_flag='-bexport'
4597 no_entry_flag='-bnoentry'
4598 fi
4599
4600 # When large executables or shared objects are built, AIX ld can
4601 # have problems creating the table of contents. If linking a library
4602 # or program results in "error TOC overflow" add -mminimal-toc to
4603 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
4604 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
4605
jimblandy92b1f832009-12-23 22:23:49 +00004606 _LT_TAGVAR(archive_cmds, $1)=''
4607 _LT_TAGVAR(hardcode_direct, $1)=yes
4608 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4609 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
4610 _LT_TAGVAR(link_all_deplibs, $1)=yes
4611 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
brynercb91a2f2006-08-25 21:14:45 +00004612
4613 if test "$GCC" = yes; then
mmentovai8c2a4de2006-09-20 16:20:15 +00004614 case $host_os in aix4.[[012]]|aix4.[[012]].*)
brynercb91a2f2006-08-25 21:14:45 +00004615 # We only want to do this on AIX 4.2 and lower, the check
4616 # below for broken collect2 doesn't work under 4.3+
4617 collect2name=`${CC} -print-prog-name=collect2`
jimblandy92b1f832009-12-23 22:23:49 +00004618 if test -f "$collect2name" &&
4619 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
brynercb91a2f2006-08-25 21:14:45 +00004620 then
jimblandy92b1f832009-12-23 22:23:49 +00004621 # We have reworked collect2
4622 :
brynercb91a2f2006-08-25 21:14:45 +00004623 else
jimblandy92b1f832009-12-23 22:23:49 +00004624 # We have old collect2
4625 _LT_TAGVAR(hardcode_direct, $1)=unsupported
4626 # It fails to find uninstalled libraries when the uninstalled
4627 # path is not listed in the libpath. Setting hardcode_minus_L
4628 # to unsupported forces relinking
4629 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4630 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4631 _LT_TAGVAR(hardcode_libdir_separator, $1)=
brynercb91a2f2006-08-25 21:14:45 +00004632 fi
mmentovai8c2a4de2006-09-20 16:20:15 +00004633 ;;
brynercb91a2f2006-08-25 21:14:45 +00004634 esac
4635 shared_flag='-shared'
mmentovai8c2a4de2006-09-20 16:20:15 +00004636 if test "$aix_use_runtimelinking" = yes; then
4637 shared_flag="$shared_flag "'${wl}-G'
4638 fi
jimblandy92b1f832009-12-23 22:23:49 +00004639 _LT_TAGVAR(link_all_deplibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004640 else
4641 # not using gcc
4642 if test "$host_cpu" = ia64; then
jimblandy92b1f832009-12-23 22:23:49 +00004643 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
4644 # chokes on -Wl,-G. The following line is correct:
brynercb91a2f2006-08-25 21:14:45 +00004645 shared_flag='-G'
4646 else
mmentovai8c2a4de2006-09-20 16:20:15 +00004647 if test "$aix_use_runtimelinking" = yes; then
brynercb91a2f2006-08-25 21:14:45 +00004648 shared_flag='${wl}-G'
4649 else
4650 shared_flag='${wl}-bM:SRE'
mmentovai8c2a4de2006-09-20 16:20:15 +00004651 fi
brynercb91a2f2006-08-25 21:14:45 +00004652 fi
4653 fi
4654
jimblandy92b1f832009-12-23 22:23:49 +00004655 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
brynercb91a2f2006-08-25 21:14:45 +00004656 # It seems that -bexpall does not export symbols beginning with
4657 # underscore (_), so it is better to generate a list of symbols to export.
jimblandy92b1f832009-12-23 22:23:49 +00004658 _LT_TAGVAR(always_export_symbols, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00004659 if test "$aix_use_runtimelinking" = yes; then
4660 # Warning - without using the other runtime loading flags (-brtl),
4661 # -berok will link without error, but may produce a broken library.
jimblandy92b1f832009-12-23 22:23:49 +00004662 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
4663 # Determine the default libpath from the value encoded in an
4664 # empty executable.
4665 _LT_SYS_MODULE_PATH_AIX
4666 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
4667 _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 $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
4668 else
brynercb91a2f2006-08-25 21:14:45 +00004669 if test "$host_cpu" = ia64; then
jimblandy92b1f832009-12-23 22:23:49 +00004670 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
4671 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
4672 _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"
brynercb91a2f2006-08-25 21:14:45 +00004673 else
jimblandy92b1f832009-12-23 22:23:49 +00004674 # Determine the default libpath from the value encoded in an
4675 # empty executable.
4676 _LT_SYS_MODULE_PATH_AIX
4677 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
brynercb91a2f2006-08-25 21:14:45 +00004678 # Warning - without using the other run time loading flags,
4679 # -berok will link without error, but may produce a broken library.
jimblandy92b1f832009-12-23 22:23:49 +00004680 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
4681 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
brynercb91a2f2006-08-25 21:14:45 +00004682 # Exported symbols can be pulled into shared objects from archives
jimblandy92b1f832009-12-23 22:23:49 +00004683 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
4684 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
mmentovai8c2a4de2006-09-20 16:20:15 +00004685 # This is similar to how AIX traditionally builds its shared libraries.
jimblandy92b1f832009-12-23 22:23:49 +00004686 _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'
brynercb91a2f2006-08-25 21:14:45 +00004687 fi
4688 fi
4689 ;;
4690
4691 amigaos*)
jimblandy92b1f832009-12-23 22:23:49 +00004692 case $host_cpu in
4693 powerpc)
4694 # see comment about AmigaOS4 .so support
4695 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4696 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4697 ;;
4698 m68k)
4699 _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)'
4700 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4701 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4702 ;;
4703 esac
brynercb91a2f2006-08-25 21:14:45 +00004704 ;;
4705
mmentovai8c2a4de2006-09-20 16:20:15 +00004706 bsdi[[45]]*)
jimblandy92b1f832009-12-23 22:23:49 +00004707 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
brynercb91a2f2006-08-25 21:14:45 +00004708 ;;
4709
jimblandy92b1f832009-12-23 22:23:49 +00004710 cygwin* | mingw* | pw32* | cegcc*)
brynercb91a2f2006-08-25 21:14:45 +00004711 # When not using gcc, we currently assume that we are using
4712 # Microsoft Visual C++.
4713 # hardcode_libdir_flag_spec is actually meaningless, as there is
4714 # no search path for DLLs.
jimblandy92b1f832009-12-23 22:23:49 +00004715 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
4716 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
brynercb91a2f2006-08-25 21:14:45 +00004717 # Tell ltmain to make .lib files, not .a files.
4718 libext=lib
4719 # Tell ltmain to make .dll files, not .so files.
4720 shrext_cmds=".dll"
4721 # FIXME: Setting linknames here is a bad hack.
jimblandy92b1f832009-12-23 22:23:49 +00004722 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
brynercb91a2f2006-08-25 21:14:45 +00004723 # The linker will automatically build a .lib file if we build a DLL.
jimblandy92b1f832009-12-23 22:23:49 +00004724 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
brynercb91a2f2006-08-25 21:14:45 +00004725 # FIXME: Should let the user specify the lib program.
jimblandy92b1f832009-12-23 22:23:49 +00004726 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
4727 _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
4728 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00004729 ;;
4730
4731 darwin* | rhapsody*)
jimblandy92b1f832009-12-23 22:23:49 +00004732 _LT_DARWIN_LINKER_FEATURES($1)
brynercb91a2f2006-08-25 21:14:45 +00004733 ;;
4734
4735 dgux*)
jimblandy92b1f832009-12-23 22:23:49 +00004736 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4737 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4738 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004739 ;;
4740
4741 freebsd1*)
jimblandy92b1f832009-12-23 22:23:49 +00004742 _LT_TAGVAR(ld_shlibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004743 ;;
4744
4745 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
4746 # support. Future versions do this automatically, but an explicit c++rt0.o
4747 # does not break anything, and helps significantly (at the cost of a little
4748 # extra space).
4749 freebsd2.2*)
jimblandy92b1f832009-12-23 22:23:49 +00004750 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
4751 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4752 _LT_TAGVAR(hardcode_direct, $1)=yes
4753 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004754 ;;
4755
4756 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
4757 freebsd2*)
jimblandy92b1f832009-12-23 22:23:49 +00004758 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4759 _LT_TAGVAR(hardcode_direct, $1)=yes
4760 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4761 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004762 ;;
4763
4764 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
nealsidb56cfa02009-05-29 00:53:02 +00004765 freebsd* | dragonfly*)
jimblandy92b1f832009-12-23 22:23:49 +00004766 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
4767 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4768 _LT_TAGVAR(hardcode_direct, $1)=yes
4769 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004770 ;;
4771
4772 hpux9*)
4773 if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00004774 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
brynercb91a2f2006-08-25 21:14:45 +00004775 else
jimblandy92b1f832009-12-23 22:23:49 +00004776 _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'
brynercb91a2f2006-08-25 21:14:45 +00004777 fi
jimblandy92b1f832009-12-23 22:23:49 +00004778 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
4779 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
4780 _LT_TAGVAR(hardcode_direct, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00004781
4782 # hardcode_minus_L: Not really in the search PATH,
4783 # but as the default location of the library.
jimblandy92b1f832009-12-23 22:23:49 +00004784 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4785 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
brynercb91a2f2006-08-25 21:14:45 +00004786 ;;
4787
mmentovai8c2a4de2006-09-20 16:20:15 +00004788 hpux10*)
brynercb91a2f2006-08-25 21:14:45 +00004789 if test "$GCC" = yes -a "$with_gnu_ld" = no; then
jimblandy92b1f832009-12-23 22:23:49 +00004790 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
mmentovai8c2a4de2006-09-20 16:20:15 +00004791 else
jimblandy92b1f832009-12-23 22:23:49 +00004792 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
mmentovai8c2a4de2006-09-20 16:20:15 +00004793 fi
4794 if test "$with_gnu_ld" = no; then
jimblandy92b1f832009-12-23 22:23:49 +00004795 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
4796 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
4797 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
4798 _LT_TAGVAR(hardcode_direct, $1)=yes
4799 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4800 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
mmentovai8c2a4de2006-09-20 16:20:15 +00004801 # hardcode_minus_L: Not really in the search PATH,
4802 # but as the default location of the library.
jimblandy92b1f832009-12-23 22:23:49 +00004803 _LT_TAGVAR(hardcode_minus_L, $1)=yes
mmentovai8c2a4de2006-09-20 16:20:15 +00004804 fi
4805 ;;
4806
4807 hpux11*)
4808 if test "$GCC" = yes -a "$with_gnu_ld" = no; then
4809 case $host_cpu in
4810 hppa*64*)
jimblandy92b1f832009-12-23 22:23:49 +00004811 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
brynercb91a2f2006-08-25 21:14:45 +00004812 ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00004813 ia64*)
jimblandy92b1f832009-12-23 22:23:49 +00004814 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
mmentovai8c2a4de2006-09-20 16:20:15 +00004815 ;;
brynercb91a2f2006-08-25 21:14:45 +00004816 *)
jimblandy92b1f832009-12-23 22:23:49 +00004817 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
brynercb91a2f2006-08-25 21:14:45 +00004818 ;;
4819 esac
4820 else
mmentovai8c2a4de2006-09-20 16:20:15 +00004821 case $host_cpu in
4822 hppa*64*)
jimblandy92b1f832009-12-23 22:23:49 +00004823 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
mmentovai8c2a4de2006-09-20 16:20:15 +00004824 ;;
4825 ia64*)
jimblandy92b1f832009-12-23 22:23:49 +00004826 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
brynercb91a2f2006-08-25 21:14:45 +00004827 ;;
4828 *)
jimblandy92b1f832009-12-23 22:23:49 +00004829 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
brynercb91a2f2006-08-25 21:14:45 +00004830 ;;
4831 esac
4832 fi
4833 if test "$with_gnu_ld" = no; then
jimblandy92b1f832009-12-23 22:23:49 +00004834 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
4835 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
brynercce34922006-09-19 21:58:41 +00004836
mmentovai8c2a4de2006-09-20 16:20:15 +00004837 case $host_cpu in
4838 hppa*64*|ia64*)
jimblandy92b1f832009-12-23 22:23:49 +00004839 _LT_TAGVAR(hardcode_direct, $1)=no
4840 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercce34922006-09-19 21:58:41 +00004841 ;;
brynercb91a2f2006-08-25 21:14:45 +00004842 *)
jimblandy92b1f832009-12-23 22:23:49 +00004843 _LT_TAGVAR(hardcode_direct, $1)=yes
4844 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4845 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
brynercb91a2f2006-08-25 21:14:45 +00004846
4847 # hardcode_minus_L: Not really in the search PATH,
4848 # but as the default location of the library.
jimblandy92b1f832009-12-23 22:23:49 +00004849 _LT_TAGVAR(hardcode_minus_L, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00004850 ;;
4851 esac
4852 fi
4853 ;;
4854
4855 irix5* | irix6* | nonstopux*)
4856 if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00004857 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
4858 # Try to use the -exported_symbol ld option, if it does not
4859 # work, assume that -exports_file does not work either and
4860 # implicitly export all symbols.
4861 save_LDFLAGS="$LDFLAGS"
4862 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
4863 AC_LINK_IFELSE(int foo(void) {},
4864 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
4865 )
4866 LDFLAGS="$save_LDFLAGS"
brynercb91a2f2006-08-25 21:14:45 +00004867 else
jimblandy92b1f832009-12-23 22:23:49 +00004868 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
4869 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
brynercb91a2f2006-08-25 21:14:45 +00004870 fi
jimblandy92b1f832009-12-23 22:23:49 +00004871 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
4872 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4873 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
4874 _LT_TAGVAR(inherit_rpath, $1)=yes
4875 _LT_TAGVAR(link_all_deplibs, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00004876 ;;
4877
jimblandy92b1f832009-12-23 22:23:49 +00004878 netbsd* | netbsdelf*-gnu)
4879 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4880 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
brynercb91a2f2006-08-25 21:14:45 +00004881 else
jimblandy92b1f832009-12-23 22:23:49 +00004882 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
brynercb91a2f2006-08-25 21:14:45 +00004883 fi
jimblandy92b1f832009-12-23 22:23:49 +00004884 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4885 _LT_TAGVAR(hardcode_direct, $1)=yes
4886 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004887 ;;
4888
4889 newsos6)
jimblandy92b1f832009-12-23 22:23:49 +00004890 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4891 _LT_TAGVAR(hardcode_direct, $1)=yes
4892 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4893 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
4894 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4895 ;;
4896
4897 *nto* | *qnx*)
brynercb91a2f2006-08-25 21:14:45 +00004898 ;;
4899
4900 openbsd*)
nealsidb56cfa02009-05-29 00:53:02 +00004901 if test -f /usr/libexec/ld.so; then
jimblandy92b1f832009-12-23 22:23:49 +00004902 _LT_TAGVAR(hardcode_direct, $1)=yes
4903 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4904 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4905 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
4906 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
4907 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
4908 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4909 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
nealsidb56cfa02009-05-29 00:53:02 +00004910 else
4911 case $host_os in
4912 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
jimblandy92b1f832009-12-23 22:23:49 +00004913 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4914 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
nealsidb56cfa02009-05-29 00:53:02 +00004915 ;;
4916 *)
jimblandy92b1f832009-12-23 22:23:49 +00004917 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
4918 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
nealsidb56cfa02009-05-29 00:53:02 +00004919 ;;
4920 esac
jimblandy92b1f832009-12-23 22:23:49 +00004921 fi
brynercb91a2f2006-08-25 21:14:45 +00004922 else
jimblandy92b1f832009-12-23 22:23:49 +00004923 _LT_TAGVAR(ld_shlibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004924 fi
4925 ;;
4926
4927 os2*)
jimblandy92b1f832009-12-23 22:23:49 +00004928 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4929 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4930 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4931 _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'
4932 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
brynercb91a2f2006-08-25 21:14:45 +00004933 ;;
4934
4935 osf3*)
4936 if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00004937 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4938 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
brynercb91a2f2006-08-25 21:14:45 +00004939 else
jimblandy92b1f832009-12-23 22:23:49 +00004940 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4941 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
brynercb91a2f2006-08-25 21:14:45 +00004942 fi
jimblandy92b1f832009-12-23 22:23:49 +00004943 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
4944 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4945 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
brynercb91a2f2006-08-25 21:14:45 +00004946 ;;
4947
4948 osf4* | osf5*) # as osf3* with the addition of -msym flag
4949 if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00004950 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4951 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
4952 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
brynercb91a2f2006-08-25 21:14:45 +00004953 else
jimblandy92b1f832009-12-23 22:23:49 +00004954 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4955 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
4956 _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~
4957 $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
brynercb91a2f2006-08-25 21:14:45 +00004958
4959 # Both c and cxx compiler support -rpath directly
jimblandy92b1f832009-12-23 22:23:49 +00004960 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
brynercb91a2f2006-08-25 21:14:45 +00004961 fi
jimblandy92b1f832009-12-23 22:23:49 +00004962 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
4963 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
brynercb91a2f2006-08-25 21:14:45 +00004964 ;;
4965
brynercb91a2f2006-08-25 21:14:45 +00004966 solaris*)
jimblandy92b1f832009-12-23 22:23:49 +00004967 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
brynercb91a2f2006-08-25 21:14:45 +00004968 if test "$GCC" = yes; then
mmentovai8c2a4de2006-09-20 16:20:15 +00004969 wlarc='${wl}'
jimblandy92b1f832009-12-23 22:23:49 +00004970 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
4971 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
4972 $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
brynercb91a2f2006-08-25 21:14:45 +00004973 else
jimblandy92b1f832009-12-23 22:23:49 +00004974 case `$CC -V 2>&1` in
4975 *"Compilers 5.0"*)
4976 wlarc=''
4977 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
4978 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
4979 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
4980 ;;
4981 *)
4982 wlarc='${wl}'
4983 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
4984 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
4985 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
4986 ;;
4987 esac
brynercb91a2f2006-08-25 21:14:45 +00004988 fi
jimblandy92b1f832009-12-23 22:23:49 +00004989 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4990 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00004991 case $host_os in
4992 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
mmentovai8c2a4de2006-09-20 16:20:15 +00004993 *)
nealsidb56cfa02009-05-29 00:53:02 +00004994 # The compiler driver will combine and reorder linker options,
4995 # but understands `-z linker_flag'. GCC discards it without `$wl',
4996 # but is careful enough not to reorder.
jimblandy92b1f832009-12-23 22:23:49 +00004997 # Supported since Solaris 2.6 (maybe 2.5.1?)
nealsidb56cfa02009-05-29 00:53:02 +00004998 if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00004999 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
nealsidb56cfa02009-05-29 00:53:02 +00005000 else
jimblandy92b1f832009-12-23 22:23:49 +00005001 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
nealsidb56cfa02009-05-29 00:53:02 +00005002 fi
5003 ;;
brynercb91a2f2006-08-25 21:14:45 +00005004 esac
jimblandy92b1f832009-12-23 22:23:49 +00005005 _LT_TAGVAR(link_all_deplibs, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00005006 ;;
5007
5008 sunos4*)
5009 if test "x$host_vendor" = xsequent; then
5010 # Use $CC to link under sequent, because it throws in some extra .o
5011 # files that make .init and .fini sections work.
jimblandy92b1f832009-12-23 22:23:49 +00005012 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
brynercb91a2f2006-08-25 21:14:45 +00005013 else
jimblandy92b1f832009-12-23 22:23:49 +00005014 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
brynercb91a2f2006-08-25 21:14:45 +00005015 fi
jimblandy92b1f832009-12-23 22:23:49 +00005016 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5017 _LT_TAGVAR(hardcode_direct, $1)=yes
5018 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5019 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00005020 ;;
5021
5022 sysv4)
5023 case $host_vendor in
5024 sni)
jimblandy92b1f832009-12-23 22:23:49 +00005025 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5026 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
brynercb91a2f2006-08-25 21:14:45 +00005027 ;;
5028 siemens)
5029 ## LD is ld it makes a PLAMLIB
5030 ## CC just makes a GrossModule.
jimblandy92b1f832009-12-23 22:23:49 +00005031 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5032 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5033 _LT_TAGVAR(hardcode_direct, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00005034 ;;
5035 motorola)
jimblandy92b1f832009-12-23 22:23:49 +00005036 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5037 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
brynercb91a2f2006-08-25 21:14:45 +00005038 ;;
5039 esac
5040 runpath_var='LD_RUN_PATH'
jimblandy92b1f832009-12-23 22:23:49 +00005041 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00005042 ;;
5043
5044 sysv4.3*)
jimblandy92b1f832009-12-23 22:23:49 +00005045 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5046 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5047 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
brynercb91a2f2006-08-25 21:14:45 +00005048 ;;
5049
5050 sysv4*MP*)
5051 if test -d /usr/nec; then
jimblandy92b1f832009-12-23 22:23:49 +00005052 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5053 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00005054 runpath_var=LD_RUN_PATH
5055 hardcode_runpath_var=yes
jimblandy92b1f832009-12-23 22:23:49 +00005056 _LT_TAGVAR(ld_shlibs, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00005057 fi
5058 ;;
5059
nealsidb56cfa02009-05-29 00:53:02 +00005060 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
jimblandy92b1f832009-12-23 22:23:49 +00005061 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5062 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5063 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
mmentovai8c2a4de2006-09-20 16:20:15 +00005064 runpath_var='LD_RUN_PATH'
brynerd5e66382006-09-08 02:35:53 +00005065
mmentovaicb9fd5b2006-09-08 18:03:56 +00005066 if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00005067 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5068 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
mmentovaicb9fd5b2006-09-08 18:03:56 +00005069 else
jimblandy92b1f832009-12-23 22:23:49 +00005070 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5071 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
mmentovaicb9fd5b2006-09-08 18:03:56 +00005072 fi
brynercce34922006-09-19 21:58:41 +00005073 ;;
5074
mmentovai8c2a4de2006-09-20 16:20:15 +00005075 sysv5* | sco3.2v5* | sco5v6*)
5076 # Note: We can NOT use -z defs as we might desire, because we do not
5077 # link with -lc, and that would cause any symbols used from libc to
5078 # always be unresolved, which means just about no library would
5079 # ever link correctly. If we're not using GNU ld we use -z text
5080 # though, which does catch some bad symbols but isn't as heavy-handed
5081 # as -z defs.
jimblandy92b1f832009-12-23 22:23:49 +00005082 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5083 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5084 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5085 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5086 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5087 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5088 _LT_TAGVAR(link_all_deplibs, $1)=yes
5089 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
brynercce34922006-09-19 21:58:41 +00005090 runpath_var='LD_RUN_PATH'
mmentovai8c2a4de2006-09-20 16:20:15 +00005091
5092 if test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00005093 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5094 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
mmentovai8c2a4de2006-09-20 16:20:15 +00005095 else
jimblandy92b1f832009-12-23 22:23:49 +00005096 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5097 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
mmentovai8c2a4de2006-09-20 16:20:15 +00005098 fi
brynercb91a2f2006-08-25 21:14:45 +00005099 ;;
5100
5101 uts4*)
jimblandy92b1f832009-12-23 22:23:49 +00005102 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5103 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5104 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00005105 ;;
5106
5107 *)
jimblandy92b1f832009-12-23 22:23:49 +00005108 _LT_TAGVAR(ld_shlibs, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00005109 ;;
5110 esac
jimblandy92b1f832009-12-23 22:23:49 +00005111
5112 if test x$host_vendor = xsni; then
5113 case $host in
5114 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5115 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5116 ;;
5117 esac
5118 fi
brynercb91a2f2006-08-25 21:14:45 +00005119 fi
5120])
jimblandy92b1f832009-12-23 22:23:49 +00005121AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5122test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
5123
5124_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
5125
5126_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5127_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5128_LT_DECL([], [extract_expsyms_cmds], [2],
5129 [The commands to extract the exported symbol list from a shared archive])
brynercb91a2f2006-08-25 21:14:45 +00005130
brynercb91a2f2006-08-25 21:14:45 +00005131#
5132# Do we need to explicitly link libc?
5133#
jimblandy92b1f832009-12-23 22:23:49 +00005134case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
brynercb91a2f2006-08-25 21:14:45 +00005135x|xyes)
5136 # Assume -lc should be added
jimblandy92b1f832009-12-23 22:23:49 +00005137 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00005138
5139 if test "$enable_shared" = yes && test "$GCC" = yes; then
jimblandy92b1f832009-12-23 22:23:49 +00005140 case $_LT_TAGVAR(archive_cmds, $1) in
brynercb91a2f2006-08-25 21:14:45 +00005141 *'~'*)
5142 # FIXME: we may have to deal with multi-command sequences.
5143 ;;
5144 '$CC '*)
5145 # Test whether the compiler implicitly links with -lc since on some
5146 # systems, -lgcc has to come before -lc. If gcc already passes -lc
5147 # to ld, don't add -lc before -lgcc.
5148 AC_MSG_CHECKING([whether -lc should be explicitly linked in])
jimblandy92b1f832009-12-23 22:23:49 +00005149 $RM conftest*
nealsidb56cfa02009-05-29 00:53:02 +00005150 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
brynercb91a2f2006-08-25 21:14:45 +00005151
5152 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5153 soname=conftest
5154 lib=conftest
5155 libobjs=conftest.$ac_objext
5156 deplibs=
jimblandy92b1f832009-12-23 22:23:49 +00005157 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5158 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
brynercb91a2f2006-08-25 21:14:45 +00005159 compiler_flags=-v
5160 linker_flags=-v
5161 verstring=
5162 output_objdir=.
5163 libname=conftest
jimblandy92b1f832009-12-23 22:23:49 +00005164 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5165 _LT_TAGVAR(allow_undefined_flag, $1)=
5166 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
brynercb91a2f2006-08-25 21:14:45 +00005167 then
jimblandy92b1f832009-12-23 22:23:49 +00005168 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
brynercb91a2f2006-08-25 21:14:45 +00005169 else
jimblandy92b1f832009-12-23 22:23:49 +00005170 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
brynercb91a2f2006-08-25 21:14:45 +00005171 fi
jimblandy92b1f832009-12-23 22:23:49 +00005172 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
brynercb91a2f2006-08-25 21:14:45 +00005173 else
5174 cat conftest.err 1>&5
5175 fi
jimblandy92b1f832009-12-23 22:23:49 +00005176 $RM conftest*
5177 AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
brynercb91a2f2006-08-25 21:14:45 +00005178 ;;
5179 esac
5180 fi
5181 ;;
5182esac
jimblandy92b1f832009-12-23 22:23:49 +00005183
5184_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5185 [Whether or not to add -lc for building shared libraries])
5186_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5187 [enable_shared_with_static_runtimes], [0],
5188 [Whether or not to disallow shared libs when runtime libs are static])
5189_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5190 [Compiler flag to allow reflexive dlopens])
5191_LT_TAGDECL([], [whole_archive_flag_spec], [1],
5192 [Compiler flag to generate shared objects directly from archives])
5193_LT_TAGDECL([], [compiler_needs_object], [1],
5194 [Whether the compiler copes with passing no objects directly])
5195_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5196 [Create an old-style archive from a shared archive])
5197_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5198 [Create a temporary old-style archive to link instead of a shared archive])
5199_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5200_LT_TAGDECL([], [archive_expsym_cmds], [2])
5201_LT_TAGDECL([], [module_cmds], [2],
5202 [Commands used to build a loadable module if different from building
5203 a shared archive.])
5204_LT_TAGDECL([], [module_expsym_cmds], [2])
5205_LT_TAGDECL([], [with_gnu_ld], [1],
5206 [Whether we are building with GNU ld or not])
5207_LT_TAGDECL([], [allow_undefined_flag], [1],
5208 [Flag that allows shared libraries with undefined symbols to be built])
5209_LT_TAGDECL([], [no_undefined_flag], [1],
5210 [Flag that enforces no undefined symbols])
5211_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5212 [Flag to hardcode $libdir into a binary during linking.
5213 This must work even if $libdir does not exist])
5214_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
5215 [[If ld is used when linking, flag to hardcode $libdir into a binary
5216 during linking. This must work even if $libdir does not exist]])
5217_LT_TAGDECL([], [hardcode_libdir_separator], [1],
5218 [Whether we need a single "-rpath" flag with a separated argument])
5219_LT_TAGDECL([], [hardcode_direct], [0],
5220 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5221 DIR into the resulting binary])
5222_LT_TAGDECL([], [hardcode_direct_absolute], [0],
5223 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5224 DIR into the resulting binary and the resulting library dependency is
5225 "absolute", i.e impossible to change by setting ${shlibpath_var} if the
5226 library is relocated])
5227_LT_TAGDECL([], [hardcode_minus_L], [0],
5228 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5229 into the resulting binary])
5230_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5231 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5232 into the resulting binary])
5233_LT_TAGDECL([], [hardcode_automatic], [0],
5234 [Set to "yes" if building a shared library automatically hardcodes DIR
5235 into the library and all subsequent libraries and executables linked
5236 against it])
5237_LT_TAGDECL([], [inherit_rpath], [0],
5238 [Set to yes if linker adds runtime paths of dependent libraries
5239 to runtime path list])
5240_LT_TAGDECL([], [link_all_deplibs], [0],
5241 [Whether libtool must link a program against all its dependency libraries])
5242_LT_TAGDECL([], [fix_srcfile_path], [1],
5243 [Fix the shell variable $srcfile for the compiler])
5244_LT_TAGDECL([], [always_export_symbols], [0],
5245 [Set to "yes" if exported symbols are required])
5246_LT_TAGDECL([], [export_symbols_cmds], [2],
5247 [The commands to list exported symbols])
5248_LT_TAGDECL([], [exclude_expsyms], [1],
5249 [Symbols that should not be listed in the preloaded symbols])
5250_LT_TAGDECL([], [include_expsyms], [1],
5251 [Symbols that must always be exported])
5252_LT_TAGDECL([], [prelink_cmds], [2],
5253 [Commands necessary for linking programs (against libraries) with templates])
5254_LT_TAGDECL([], [file_list_spec], [1],
5255 [Specify filename containing input files])
5256dnl FIXME: Not yet implemented
5257dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5258dnl [Compiler flag to generate thread safe objects])
5259])# _LT_LINKER_SHLIBS
brynercb91a2f2006-08-25 21:14:45 +00005260
5261
jimblandy92b1f832009-12-23 22:23:49 +00005262# _LT_LANG_C_CONFIG([TAG])
5263# ------------------------
5264# Ensure that the configuration variables for a C compiler are suitably
5265# defined. These variables are subsequently used by _LT_CONFIG to write
5266# the compiler configuration to `libtool'.
5267m4_defun([_LT_LANG_C_CONFIG],
5268[m4_require([_LT_DECL_EGREP])dnl
5269lt_save_CC="$CC"
5270AC_LANG_PUSH(C)
brynercb91a2f2006-08-25 21:14:45 +00005271
jimblandy92b1f832009-12-23 22:23:49 +00005272# Source file extension for C test sources.
5273ac_ext=c
brynercb91a2f2006-08-25 21:14:45 +00005274
jimblandy92b1f832009-12-23 22:23:49 +00005275# Object file extension for compiled C test sources.
5276objext=o
5277_LT_TAGVAR(objext, $1)=$objext
brynercb91a2f2006-08-25 21:14:45 +00005278
jimblandy92b1f832009-12-23 22:23:49 +00005279# Code to be used in simple compile tests
5280lt_simple_compile_test_code="int some_variable = 0;"
brynercb91a2f2006-08-25 21:14:45 +00005281
jimblandy92b1f832009-12-23 22:23:49 +00005282# Code to be used in simple link tests
5283lt_simple_link_test_code='int main(){return(0);}'
brynercb91a2f2006-08-25 21:14:45 +00005284
jimblandy92b1f832009-12-23 22:23:49 +00005285_LT_TAG_COMPILER
5286# Save the default compiler, since it gets overwritten when the other
5287# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5288compiler_DEFAULT=$CC
brynercb91a2f2006-08-25 21:14:45 +00005289
jimblandy92b1f832009-12-23 22:23:49 +00005290# save warnings/boilerplate of simple test code
5291_LT_COMPILER_BOILERPLATE
5292_LT_LINKER_BOILERPLATE
brynercb91a2f2006-08-25 21:14:45 +00005293
jimblandy92b1f832009-12-23 22:23:49 +00005294if test -n "$compiler"; then
5295 _LT_COMPILER_NO_RTTI($1)
5296 _LT_COMPILER_PIC($1)
5297 _LT_COMPILER_C_O($1)
5298 _LT_COMPILER_FILE_LOCKS($1)
5299 _LT_LINKER_SHLIBS($1)
5300 _LT_SYS_DYNAMIC_LINKER($1)
5301 _LT_LINKER_HARDCODE_LIBPATH($1)
5302 LT_SYS_DLOPEN_SELF
5303 _LT_CMD_STRIPLIB
brynercb91a2f2006-08-25 21:14:45 +00005304
jimblandy92b1f832009-12-23 22:23:49 +00005305 # Report which library types will actually be built
5306 AC_MSG_CHECKING([if libtool supports shared libraries])
5307 AC_MSG_RESULT([$can_build_shared])
nealsidb56cfa02009-05-29 00:53:02 +00005308
jimblandy92b1f832009-12-23 22:23:49 +00005309 AC_MSG_CHECKING([whether to build shared libraries])
5310 test "$can_build_shared" = "no" && enable_shared=no
nealsidb56cfa02009-05-29 00:53:02 +00005311
jimblandy92b1f832009-12-23 22:23:49 +00005312 # On AIX, shared libraries and static libraries use the same namespace, and
5313 # are all built from PIC.
5314 case $host_os in
5315 aix3*)
5316 test "$enable_shared" = yes && enable_static=no
5317 if test -n "$RANLIB"; then
5318 archive_cmds="$archive_cmds~\$RANLIB \$lib"
5319 postinstall_cmds='$RANLIB $lib'
5320 fi
5321 ;;
5322
5323 aix[[4-9]]*)
5324 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5325 test "$enable_shared" = yes && enable_static=no
5326 fi
5327 ;;
5328 esac
5329 AC_MSG_RESULT([$enable_shared])
5330
5331 AC_MSG_CHECKING([whether to build static libraries])
5332 # Make sure either enable_shared or enable_static is yes.
5333 test "$enable_shared" = yes || enable_static=yes
5334 AC_MSG_RESULT([$enable_static])
5335
5336 _LT_CONFIG($1)
nealsidb56cfa02009-05-29 00:53:02 +00005337fi
jimblandy92b1f832009-12-23 22:23:49 +00005338AC_LANG_POP
5339CC="$lt_save_CC"
5340])# _LT_LANG_C_CONFIG
nealsidb56cfa02009-05-29 00:53:02 +00005341
nealsidb56cfa02009-05-29 00:53:02 +00005342
jimblandy92b1f832009-12-23 22:23:49 +00005343# _LT_PROG_CXX
5344# ------------
5345# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
5346# compiler, we have our own version here.
5347m4_defun([_LT_PROG_CXX],
5348[
5349pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
5350AC_PROG_CXX
5351if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5352 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5353 (test "X$CXX" != "Xg++"))) ; then
5354 AC_PROG_CXXCPP
5355else
5356 _lt_caught_CXX_error=yes
5357fi
5358popdef([AC_MSG_ERROR])
5359])# _LT_PROG_CXX
5360
5361dnl aclocal-1.4 backwards compatibility:
5362dnl AC_DEFUN([_LT_PROG_CXX], [])
5363
5364
5365# _LT_LANG_CXX_CONFIG([TAG])
5366# --------------------------
5367# Ensure that the configuration variables for a C++ compiler are suitably
5368# defined. These variables are subsequently used by _LT_CONFIG to write
5369# the compiler configuration to `libtool'.
5370m4_defun([_LT_LANG_CXX_CONFIG],
5371[AC_REQUIRE([_LT_PROG_CXX])dnl
5372m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5373m4_require([_LT_DECL_EGREP])dnl
5374
5375AC_LANG_PUSH(C++)
5376_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5377_LT_TAGVAR(allow_undefined_flag, $1)=
5378_LT_TAGVAR(always_export_symbols, $1)=no
5379_LT_TAGVAR(archive_expsym_cmds, $1)=
5380_LT_TAGVAR(compiler_needs_object, $1)=no
5381_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5382_LT_TAGVAR(hardcode_direct, $1)=no
5383_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5384_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5385_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
5386_LT_TAGVAR(hardcode_libdir_separator, $1)=
5387_LT_TAGVAR(hardcode_minus_L, $1)=no
5388_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5389_LT_TAGVAR(hardcode_automatic, $1)=no
5390_LT_TAGVAR(inherit_rpath, $1)=no
5391_LT_TAGVAR(module_cmds, $1)=
5392_LT_TAGVAR(module_expsym_cmds, $1)=
5393_LT_TAGVAR(link_all_deplibs, $1)=unknown
5394_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
5395_LT_TAGVAR(no_undefined_flag, $1)=
5396_LT_TAGVAR(whole_archive_flag_spec, $1)=
5397_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5398
5399# Source file extension for C++ test sources.
5400ac_ext=cpp
5401
5402# Object file extension for compiled C++ test sources.
5403objext=o
5404_LT_TAGVAR(objext, $1)=$objext
5405
5406# No sense in running all these tests if we already determined that
5407# the CXX compiler isn't working. Some variables (like enable_shared)
5408# are currently assumed to apply to all compilers on this platform,
5409# and will be corrupted by setting them based on a non-working compiler.
5410if test "$_lt_caught_CXX_error" != yes; then
5411 # Code to be used in simple compile tests
5412 lt_simple_compile_test_code="int some_variable = 0;"
5413
5414 # Code to be used in simple link tests
5415 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5416
5417 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
5418 _LT_TAG_COMPILER
5419
5420 # save warnings/boilerplate of simple test code
5421 _LT_COMPILER_BOILERPLATE
5422 _LT_LINKER_BOILERPLATE
5423
5424 # Allow CC to be a program name with arguments.
5425 lt_save_CC=$CC
5426 lt_save_LD=$LD
5427 lt_save_GCC=$GCC
5428 GCC=$GXX
5429 lt_save_with_gnu_ld=$with_gnu_ld
5430 lt_save_path_LD=$lt_cv_path_LD
5431 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5432 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
5433 else
5434 $as_unset lt_cv_prog_gnu_ld
5435 fi
5436 if test -n "${lt_cv_path_LDCXX+set}"; then
5437 lt_cv_path_LD=$lt_cv_path_LDCXX
5438 else
5439 $as_unset lt_cv_path_LD
5440 fi
5441 test -z "${LDCXX+set}" || LD=$LDCXX
5442 CC=${CXX-"c++"}
5443 compiler=$CC
5444 _LT_TAGVAR(compiler, $1)=$CC
5445 _LT_CC_BASENAME([$compiler])
5446
5447 if test -n "$compiler"; then
5448 # We don't want -fno-exception when compiling C++ code, so set the
5449 # no_builtin_flag separately
5450 if test "$GXX" = yes; then
5451 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5452 else
5453 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5454 fi
5455
5456 if test "$GXX" = yes; then
5457 # Set up default GNU C++ configuration
5458
5459 LT_PATH_LD
5460
5461 # Check if GNU C++ uses GNU ld as the underlying linker, since the
5462 # archiving commands below assume that GNU ld is being used.
5463 if test "$with_gnu_ld" = yes; then
5464 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5465 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5466
5467 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5468 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5469
5470 # If archive_cmds runs LD, not CC, wlarc should be empty
5471 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5472 # investigate it a little bit more. (MM)
5473 wlarc='${wl}'
5474
5475 # ancient GNU ld didn't support --whole-archive et. al.
5476 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5477 $GREP 'no-whole-archive' > /dev/null; then
5478 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5479 else
5480 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5481 fi
5482 else
5483 with_gnu_ld=no
5484 wlarc=
5485
5486 # A generic and very simple default shared library creation
5487 # command for GNU C++ for the case where it uses the native
5488 # linker, instead of GNU ld. If possible, this setting should
5489 # overridden to take advantage of the native linker features on
5490 # the platform it is being used on.
5491 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
5492 fi
5493
5494 # Commands to make compiler produce verbose output that lists
5495 # what "hidden" libraries, object files and flags are used when
5496 # linking a shared library.
5497 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
5498
5499 else
5500 GXX=no
5501 with_gnu_ld=no
5502 wlarc=
5503 fi
5504
5505 # PORTME: fill in a description of your system's C++ link characteristics
5506 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5507 _LT_TAGVAR(ld_shlibs, $1)=yes
5508 case $host_os in
5509 aix3*)
5510 # FIXME: insert proper C++ library support
5511 _LT_TAGVAR(ld_shlibs, $1)=no
5512 ;;
5513 aix[[4-9]]*)
5514 if test "$host_cpu" = ia64; then
5515 # On IA64, the linker does run time linking by default, so we don't
5516 # have to do anything special.
5517 aix_use_runtimelinking=no
5518 exp_sym_flag='-Bexport'
5519 no_entry_flag=""
5520 else
5521 aix_use_runtimelinking=no
5522
5523 # Test if we are trying to use run time linking or normal
5524 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5525 # need to do runtime linking.
5526 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5527 for ld_flag in $LDFLAGS; do
5528 case $ld_flag in
5529 *-brtl*)
5530 aix_use_runtimelinking=yes
5531 break
5532 ;;
5533 esac
5534 done
5535 ;;
5536 esac
5537
5538 exp_sym_flag='-bexport'
5539 no_entry_flag='-bnoentry'
5540 fi
5541
5542 # When large executables or shared objects are built, AIX ld can
5543 # have problems creating the table of contents. If linking a library
5544 # or program results in "error TOC overflow" add -mminimal-toc to
5545 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5546 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5547
5548 _LT_TAGVAR(archive_cmds, $1)=''
5549 _LT_TAGVAR(hardcode_direct, $1)=yes
5550 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5551 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5552 _LT_TAGVAR(link_all_deplibs, $1)=yes
5553 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
5554
5555 if test "$GXX" = yes; then
5556 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5557 # We only want to do this on AIX 4.2 and lower, the check
5558 # below for broken collect2 doesn't work under 4.3+
5559 collect2name=`${CC} -print-prog-name=collect2`
5560 if test -f "$collect2name" &&
5561 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5562 then
5563 # We have reworked collect2
5564 :
5565 else
5566 # We have old collect2
5567 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5568 # It fails to find uninstalled libraries when the uninstalled
5569 # path is not listed in the libpath. Setting hardcode_minus_L
5570 # to unsupported forces relinking
5571 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5572 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5573 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5574 fi
5575 esac
5576 shared_flag='-shared'
5577 if test "$aix_use_runtimelinking" = yes; then
5578 shared_flag="$shared_flag "'${wl}-G'
5579 fi
5580 else
5581 # not using gcc
5582 if test "$host_cpu" = ia64; then
5583 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5584 # chokes on -Wl,-G. The following line is correct:
5585 shared_flag='-G'
5586 else
5587 if test "$aix_use_runtimelinking" = yes; then
5588 shared_flag='${wl}-G'
5589 else
5590 shared_flag='${wl}-bM:SRE'
5591 fi
5592 fi
5593 fi
5594
5595 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
5596 # It seems that -bexpall does not export symbols beginning with
5597 # underscore (_), so it is better to generate a list of symbols to
5598 # export.
5599 _LT_TAGVAR(always_export_symbols, $1)=yes
5600 if test "$aix_use_runtimelinking" = yes; then
5601 # Warning - without using the other runtime loading flags (-brtl),
5602 # -berok will link without error, but may produce a broken library.
5603 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5604 # Determine the default libpath from the value encoded in an empty
5605 # executable.
5606 _LT_SYS_MODULE_PATH_AIX
5607 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5608
5609 _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 $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
5610 else
5611 if test "$host_cpu" = ia64; then
5612 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5613 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5614 _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"
5615 else
5616 # Determine the default libpath from the value encoded in an
5617 # empty executable.
5618 _LT_SYS_MODULE_PATH_AIX
5619 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5620 # Warning - without using the other run time loading flags,
5621 # -berok will link without error, but may produce a broken library.
5622 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5623 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
5624 # Exported symbols can be pulled into shared objects from archives
5625 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5626 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5627 # This is similar to how AIX traditionally builds its shared
5628 # libraries.
5629 _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'
5630 fi
5631 fi
5632 ;;
5633
5634 beos*)
5635 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5636 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5637 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5638 # support --undefined. This deserves some investigation. FIXME
5639 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5640 else
5641 _LT_TAGVAR(ld_shlibs, $1)=no
5642 fi
5643 ;;
5644
5645 chorus*)
5646 case $cc_basename in
5647 *)
5648 # FIXME: insert proper C++ library support
5649 _LT_TAGVAR(ld_shlibs, $1)=no
5650 ;;
5651 esac
5652 ;;
5653
5654 cygwin* | mingw* | pw32* | cegcc*)
5655 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5656 # as there is no search path for DLLs.
5657 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5658 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5659 _LT_TAGVAR(always_export_symbols, $1)=no
5660 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5661
5662 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5663 _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'
5664 # If the export-symbols file already is a .def file (1st line
5665 # is EXPORTS), use it as is; otherwise, prepend...
5666 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5667 cp $export_symbols $output_objdir/$soname.def;
5668 else
5669 echo EXPORTS > $output_objdir/$soname.def;
5670 cat $export_symbols >> $output_objdir/$soname.def;
5671 fi~
5672 $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'
5673 else
5674 _LT_TAGVAR(ld_shlibs, $1)=no
5675 fi
5676 ;;
5677 darwin* | rhapsody*)
5678 _LT_DARWIN_LINKER_FEATURES($1)
5679 ;;
5680
5681 dgux*)
5682 case $cc_basename in
5683 ec++*)
5684 # FIXME: insert proper C++ library support
5685 _LT_TAGVAR(ld_shlibs, $1)=no
5686 ;;
5687 ghcx*)
5688 # Green Hills C++ Compiler
5689 # FIXME: insert proper C++ library support
5690 _LT_TAGVAR(ld_shlibs, $1)=no
5691 ;;
5692 *)
5693 # FIXME: insert proper C++ library support
5694 _LT_TAGVAR(ld_shlibs, $1)=no
5695 ;;
5696 esac
5697 ;;
5698
5699 freebsd[[12]]*)
5700 # C++ shared libraries reported to be fairly broken before
5701 # switch to ELF
5702 _LT_TAGVAR(ld_shlibs, $1)=no
5703 ;;
5704
5705 freebsd-elf*)
5706 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5707 ;;
5708
5709 freebsd* | dragonfly*)
5710 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
5711 # conventions
5712 _LT_TAGVAR(ld_shlibs, $1)=yes
5713 ;;
5714
5715 gnu*)
5716 ;;
5717
5718 hpux9*)
5719 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5720 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5721 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5722 _LT_TAGVAR(hardcode_direct, $1)=yes
5723 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
5724 # but as the default
5725 # location of the library.
5726
5727 case $cc_basename in
5728 CC*)
5729 # FIXME: insert proper C++ library support
5730 _LT_TAGVAR(ld_shlibs, $1)=no
5731 ;;
5732 aCC*)
5733 _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'
5734 # Commands to make compiler produce verbose output that lists
5735 # what "hidden" libraries, object files and flags are used when
5736 # linking a shared library.
5737 #
5738 # There doesn't appear to be a way to prevent this compiler from
5739 # explicitly linking system object files so we need to strip them
5740 # from the output so that they don't get included in the library
5741 # dependencies.
5742 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; $ECHO "X$list" | $Xsed'
5743 ;;
5744 *)
5745 if test "$GXX" = yes; then
5746 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${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'
5747 else
5748 # FIXME: insert proper C++ library support
5749 _LT_TAGVAR(ld_shlibs, $1)=no
5750 fi
5751 ;;
5752 esac
5753 ;;
5754
5755 hpux10*|hpux11*)
5756 if test $with_gnu_ld = no; then
5757 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5758 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5759
5760 case $host_cpu in
5761 hppa*64*|ia64*)
5762 ;;
5763 *)
5764 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5765 ;;
5766 esac
5767 fi
5768 case $host_cpu in
5769 hppa*64*|ia64*)
5770 _LT_TAGVAR(hardcode_direct, $1)=no
5771 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5772 ;;
5773 *)
5774 _LT_TAGVAR(hardcode_direct, $1)=yes
5775 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5776 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
5777 # but as the default
5778 # location of the library.
5779 ;;
5780 esac
5781
5782 case $cc_basename in
5783 CC*)
5784 # FIXME: insert proper C++ library support
5785 _LT_TAGVAR(ld_shlibs, $1)=no
5786 ;;
5787 aCC*)
5788 case $host_cpu in
5789 hppa*64*)
5790 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5791 ;;
5792 ia64*)
5793 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5794 ;;
5795 *)
5796 _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'
5797 ;;
5798 esac
5799 # Commands to make compiler produce verbose output that lists
5800 # what "hidden" libraries, object files and flags are used when
5801 # linking a shared library.
5802 #
5803 # There doesn't appear to be a way to prevent this compiler from
5804 # explicitly linking system object files so we need to strip them
5805 # from the output so that they don't get included in the library
5806 # dependencies.
5807 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; $ECHO "X$list" | $Xsed'
5808 ;;
5809 *)
5810 if test "$GXX" = yes; then
5811 if test $with_gnu_ld = no; then
5812 case $host_cpu in
5813 hppa*64*)
5814 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5815 ;;
5816 ia64*)
5817 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5818 ;;
5819 *)
5820 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5821 ;;
5822 esac
5823 fi
5824 else
5825 # FIXME: insert proper C++ library support
5826 _LT_TAGVAR(ld_shlibs, $1)=no
5827 fi
5828 ;;
5829 esac
5830 ;;
5831
5832 interix[[3-9]]*)
5833 _LT_TAGVAR(hardcode_direct, $1)=no
5834 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5835 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5836 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5837 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5838 # Instead, shared libraries are loaded at an image base (0x10000000 by
5839 # default) and relocated if they conflict, which is a slow very memory
5840 # consuming and fragmenting process. To avoid this, we pick a random,
5841 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5842 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
5843 _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'
5844 _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'
5845 ;;
5846 irix5* | irix6*)
5847 case $cc_basename in
5848 CC*)
5849 # SGI C++
5850 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
5851
5852 # Archives containing C++ object files must be created using
5853 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
5854 # necessary to make sure instantiated templates are included
5855 # in the archive.
5856 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
5857 ;;
5858 *)
5859 if test "$GXX" = yes; then
5860 if test "$with_gnu_ld" = no; then
5861 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5862 else
5863 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib'
5864 fi
5865 fi
5866 _LT_TAGVAR(link_all_deplibs, $1)=yes
5867 ;;
5868 esac
5869 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5870 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5871 _LT_TAGVAR(inherit_rpath, $1)=yes
5872 ;;
5873
5874 linux* | k*bsd*-gnu)
5875 case $cc_basename in
5876 KCC*)
5877 # Kuck and Associates, Inc. (KAI) C++ Compiler
5878
5879 # KCC will only create a shared library if the output file
5880 # ends with ".so" (or ".sl" for HP-UX), so rename the library
5881 # to its proper name (with version) after linking.
5882 _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'
5883 _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'
5884 # Commands to make compiler produce verbose output that lists
5885 # what "hidden" libraries, object files and flags are used when
5886 # linking a shared library.
5887 #
5888 # There doesn't appear to be a way to prevent this compiler from
5889 # explicitly linking system object files so we need to strip them
5890 # from the output so that they don't get included in the library
5891 # dependencies.
5892 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; $ECHO "X$list" | $Xsed'
5893
5894 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5895 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5896
5897 # Archives containing C++ object files must be created using
5898 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
5899 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
5900 ;;
5901 icpc* | ecpc* )
5902 # Intel C++
5903 with_gnu_ld=yes
5904 # version 8.0 and above of icpc choke on multiply defined symbols
5905 # if we add $predep_objects and $postdep_objects, however 7.1 and
5906 # earlier do not add the objects themselves.
5907 case `$CC -V 2>&1` in
5908 *"Version 7."*)
5909 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5910 _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'
5911 ;;
5912 *) # Version 8.0 or newer
5913 tmp_idyn=
5914 case $host_cpu in
5915 ia64*) tmp_idyn=' -i_dynamic';;
5916 esac
5917 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5918 _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'
5919 ;;
5920 esac
5921 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5922 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5923 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5924 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5925 ;;
5926 pgCC* | pgcpp*)
5927 # Portland Group C++ compiler
5928 case `$CC -V` in
5929 *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
5930 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
5931 rm -rf $tpldir~
5932 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
5933 compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
5934 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
5935 rm -rf $tpldir~
5936 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
5937 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
5938 $RANLIB $oldlib'
5939 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
5940 rm -rf $tpldir~
5941 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
5942 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
5943 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
5944 rm -rf $tpldir~
5945 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
5946 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
5947 ;;
5948 *) # Version 6 will use weak symbols
5949 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
5950 _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'
5951 ;;
5952 esac
5953
5954 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
5955 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5956 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
5957 ;;
5958 cxx*)
5959 # Compaq C++
5960 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5961 _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'
5962
5963 runpath_var=LD_RUN_PATH
5964 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5965 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5966
5967 # Commands to make compiler produce verbose output that lists
5968 # what "hidden" libraries, object files and flags are used when
5969 # linking a shared library.
5970 #
5971 # There doesn't appear to be a way to prevent this compiler from
5972 # explicitly linking system object files so we need to strip them
5973 # from the output so that they don't get included in the library
5974 # dependencies.
5975 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
5976 ;;
5977 xl*)
5978 # IBM XL 8.0 on PPC, with GNU ld
5979 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5980 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5981 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5982 if test "x$supports_anon_versioning" = xyes; then
5983 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5984 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5985 echo "local: *; };" >> $output_objdir/$libname.ver~
5986 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
5987 fi
5988 ;;
5989 *)
5990 case `$CC -V 2>&1 | sed 5q` in
5991 *Sun\ C*)
5992 # Sun C++ 5.9
5993 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
5994 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5995 _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'
5996 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5997 _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; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive'
5998 _LT_TAGVAR(compiler_needs_object, $1)=yes
5999
6000 # Not sure whether something based on
6001 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6002 # would be better.
6003 output_verbose_link_cmd='echo'
6004
6005 # Archives containing C++ object files must be created using
6006 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6007 # necessary to make sure instantiated templates are included
6008 # in the archive.
6009 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6010 ;;
6011 esac
6012 ;;
6013 esac
6014 ;;
6015
6016 lynxos*)
6017 # FIXME: insert proper C++ library support
6018 _LT_TAGVAR(ld_shlibs, $1)=no
6019 ;;
6020
6021 m88k*)
6022 # FIXME: insert proper C++ library support
6023 _LT_TAGVAR(ld_shlibs, $1)=no
6024 ;;
6025
6026 mvs*)
6027 case $cc_basename in
6028 cxx*)
6029 # FIXME: insert proper C++ library support
6030 _LT_TAGVAR(ld_shlibs, $1)=no
6031 ;;
6032 *)
6033 # FIXME: insert proper C++ library support
6034 _LT_TAGVAR(ld_shlibs, $1)=no
6035 ;;
6036 esac
6037 ;;
6038
6039 netbsd*)
6040 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6041 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6042 wlarc=
6043 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6044 _LT_TAGVAR(hardcode_direct, $1)=yes
6045 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6046 fi
6047 # Workaround some broken pre-1.5 toolchains
6048 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6049 ;;
6050
6051 *nto* | *qnx*)
6052 _LT_TAGVAR(ld_shlibs, $1)=yes
6053 ;;
6054
6055 openbsd2*)
6056 # C++ shared libraries are fairly broken
6057 _LT_TAGVAR(ld_shlibs, $1)=no
6058 ;;
6059
6060 openbsd*)
6061 if test -f /usr/libexec/ld.so; then
6062 _LT_TAGVAR(hardcode_direct, $1)=yes
6063 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6064 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6065 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6066 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6067 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6068 _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'
6069 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6070 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6071 fi
6072 output_verbose_link_cmd=echo
6073 else
6074 _LT_TAGVAR(ld_shlibs, $1)=no
6075 fi
6076 ;;
6077
6078 osf3* | osf4* | osf5*)
6079 case $cc_basename in
6080 KCC*)
6081 # Kuck and Associates, Inc. (KAI) C++ Compiler
6082
6083 # KCC will only create a shared library if the output file
6084 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6085 # to its proper name (with version) after linking.
6086 _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'
6087
6088 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6089 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6090
6091 # Archives containing C++ object files must be created using
6092 # the KAI C++ compiler.
6093 case $host in
6094 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6095 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6096 esac
6097 ;;
6098 RCC*)
6099 # Rational C++ 2.4.1
6100 # FIXME: insert proper C++ library support
6101 _LT_TAGVAR(ld_shlibs, $1)=no
6102 ;;
6103 cxx*)
6104 case $host in
6105 osf3*)
6106 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6107 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
6108 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6109 ;;
6110 *)
6111 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6112 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib'
6113 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6114 echo "-hidden">> $lib.exp~
6115 $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 "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~
6116 $RM $lib.exp'
6117 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6118 ;;
6119 esac
6120
6121 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6122
6123 # Commands to make compiler produce verbose output that lists
6124 # what "hidden" libraries, object files and flags are used when
6125 # linking a shared library.
6126 #
6127 # There doesn't appear to be a way to prevent this compiler from
6128 # explicitly linking system object files so we need to strip them
6129 # from the output so that they don't get included in the library
6130 # dependencies.
6131 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed'
6132 ;;
6133 *)
6134 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6135 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6136 case $host in
6137 osf3*)
6138 _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" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6139 ;;
6140 *)
6141 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6142 ;;
6143 esac
6144
6145 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6146 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6147
6148 # Commands to make compiler produce verbose output that lists
6149 # what "hidden" libraries, object files and flags are used when
6150 # linking a shared library.
6151 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6152
6153 else
6154 # FIXME: insert proper C++ library support
6155 _LT_TAGVAR(ld_shlibs, $1)=no
6156 fi
6157 ;;
6158 esac
6159 ;;
6160
6161 psos*)
6162 # FIXME: insert proper C++ library support
6163 _LT_TAGVAR(ld_shlibs, $1)=no
6164 ;;
6165
6166 sunos4*)
6167 case $cc_basename in
6168 CC*)
6169 # Sun C++ 4.x
6170 # FIXME: insert proper C++ library support
6171 _LT_TAGVAR(ld_shlibs, $1)=no
6172 ;;
6173 lcc*)
6174 # Lucid
6175 # FIXME: insert proper C++ library support
6176 _LT_TAGVAR(ld_shlibs, $1)=no
6177 ;;
6178 *)
6179 # FIXME: insert proper C++ library support
6180 _LT_TAGVAR(ld_shlibs, $1)=no
6181 ;;
6182 esac
6183 ;;
6184
6185 solaris*)
6186 case $cc_basename in
6187 CC*)
6188 # Sun C++ 4.2, 5.x and Centerline C++
6189 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6190 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6191 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6192 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6193 $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'
6194
6195 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6196 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6197 case $host_os in
6198 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6199 *)
6200 # The compiler driver will combine and reorder linker options,
6201 # but understands `-z linker_flag'.
6202 # Supported since Solaris 2.6 (maybe 2.5.1?)
6203 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6204 ;;
6205 esac
6206 _LT_TAGVAR(link_all_deplibs, $1)=yes
6207
6208 output_verbose_link_cmd='echo'
6209
6210 # Archives containing C++ object files must be created using
6211 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6212 # necessary to make sure instantiated templates are included
6213 # in the archive.
6214 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6215 ;;
6216 gcx*)
6217 # Green Hills C++ Compiler
6218 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6219
6220 # The C++ compiler must be used to create the archive.
6221 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
6222 ;;
6223 *)
6224 # GNU C++ compiler with Solaris linker
6225 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6226 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6227 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
6228 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6229 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6230 $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6231
6232 # Commands to make compiler produce verbose output that lists
6233 # what "hidden" libraries, object files and flags are used when
6234 # linking a shared library.
6235 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6236 else
6237 # g++ 2.7 appears to require `-G' NOT `-shared' on this
6238 # platform.
6239 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6240 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6241 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6242
6243 # Commands to make compiler produce verbose output that lists
6244 # what "hidden" libraries, object files and flags are used when
6245 # linking a shared library.
6246 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6247 fi
6248
6249 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6250 case $host_os in
6251 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6252 *)
6253 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6254 ;;
6255 esac
6256 fi
6257 ;;
6258 esac
6259 ;;
6260
6261 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6262 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6263 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6264 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6265 runpath_var='LD_RUN_PATH'
6266
6267 case $cc_basename in
6268 CC*)
6269 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6270 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6271 ;;
6272 *)
6273 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6274 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6275 ;;
6276 esac
6277 ;;
6278
6279 sysv5* | sco3.2v5* | sco5v6*)
6280 # Note: We can NOT use -z defs as we might desire, because we do not
6281 # link with -lc, and that would cause any symbols used from libc to
6282 # always be unresolved, which means just about no library would
6283 # ever link correctly. If we're not using GNU ld we use -z text
6284 # though, which does catch some bad symbols but isn't as heavy-handed
6285 # as -z defs.
6286 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6287 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6288 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6289 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6290 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6291 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6292 _LT_TAGVAR(link_all_deplibs, $1)=yes
6293 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6294 runpath_var='LD_RUN_PATH'
6295
6296 case $cc_basename in
6297 CC*)
6298 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6299 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6300 ;;
6301 *)
6302 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6303 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6304 ;;
6305 esac
6306 ;;
6307
6308 tandem*)
6309 case $cc_basename in
6310 NCC*)
6311 # NonStop-UX NCC 3.20
6312 # FIXME: insert proper C++ library support
6313 _LT_TAGVAR(ld_shlibs, $1)=no
6314 ;;
6315 *)
6316 # FIXME: insert proper C++ library support
6317 _LT_TAGVAR(ld_shlibs, $1)=no
6318 ;;
6319 esac
6320 ;;
6321
6322 vxworks*)
6323 # FIXME: insert proper C++ library support
6324 _LT_TAGVAR(ld_shlibs, $1)=no
6325 ;;
6326
6327 *)
6328 # FIXME: insert proper C++ library support
6329 _LT_TAGVAR(ld_shlibs, $1)=no
6330 ;;
6331 esac
6332
6333 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6334 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6335
6336 _LT_TAGVAR(GCC, $1)="$GXX"
6337 _LT_TAGVAR(LD, $1)="$LD"
6338
6339 ## CAVEAT EMPTOR:
6340 ## There is no encapsulation within the following macros, do not change
6341 ## the running order or otherwise move them around unless you know exactly
6342 ## what you are doing...
6343 _LT_SYS_HIDDEN_LIBDEPS($1)
6344 _LT_COMPILER_PIC($1)
6345 _LT_COMPILER_C_O($1)
6346 _LT_COMPILER_FILE_LOCKS($1)
6347 _LT_LINKER_SHLIBS($1)
6348 _LT_SYS_DYNAMIC_LINKER($1)
6349 _LT_LINKER_HARDCODE_LIBPATH($1)
6350
6351 _LT_CONFIG($1)
6352 fi # test -n "$compiler"
6353
6354 CC=$lt_save_CC
6355 LDCXX=$LD
6356 LD=$lt_save_LD
6357 GCC=$lt_save_GCC
6358 with_gnu_ld=$lt_save_with_gnu_ld
6359 lt_cv_path_LDCXX=$lt_cv_path_LD
6360 lt_cv_path_LD=$lt_save_path_LD
6361 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6362 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6363fi # test "$_lt_caught_CXX_error" != yes
6364
6365AC_LANG_POP
6366])# _LT_LANG_CXX_CONFIG
6367
6368
6369# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6370# ---------------------------------
6371# Figure out "hidden" library dependencies from verbose
6372# compiler output when linking a shared library.
6373# Parse the compiler output and extract the necessary
6374# objects, libraries and library flags.
6375m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6376[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6377# Dependencies to place before and after the object being linked:
6378_LT_TAGVAR(predep_objects, $1)=
6379_LT_TAGVAR(postdep_objects, $1)=
6380_LT_TAGVAR(predeps, $1)=
6381_LT_TAGVAR(postdeps, $1)=
6382_LT_TAGVAR(compiler_lib_search_path, $1)=
6383
6384dnl we can't use the lt_simple_compile_test_code here,
6385dnl because it contains code intended for an executable,
6386dnl not a library. It's possible we should let each
6387dnl tag define a new lt_????_link_test_code variable,
6388dnl but it's only used here...
6389m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6390int a;
6391void foo (void) { a = 0; }
6392_LT_EOF
6393], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6394class Foo
6395{
6396public:
6397 Foo (void) { a = 0; }
6398private:
6399 int a;
6400};
6401_LT_EOF
6402], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6403 subroutine foo
6404 implicit none
6405 integer*4 a
6406 a=0
6407 return
6408 end
6409_LT_EOF
6410], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6411 subroutine foo
6412 implicit none
6413 integer a
6414 a=0
6415 return
6416 end
6417_LT_EOF
6418], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6419public class foo {
6420 private int a;
6421 public void bar (void) {
6422 a = 0;
6423 }
6424};
6425_LT_EOF
6426])
6427dnl Parse the compiler output and extract the necessary
6428dnl objects, libraries and library flags.
6429if AC_TRY_EVAL(ac_compile); then
6430 # Parse the compiler output and extract the necessary
6431 # objects, libraries and library flags.
6432
6433 # Sentinel used to keep track of whether or not we are before
6434 # the conftest object file.
6435 pre_test_object_deps_done=no
6436
6437 for p in `eval "$output_verbose_link_cmd"`; do
6438 case $p in
6439
6440 -L* | -R* | -l*)
6441 # Some compilers place space between "-{L,R}" and the path.
6442 # Remove the space.
6443 if test $p = "-L" ||
6444 test $p = "-R"; then
6445 prev=$p
6446 continue
6447 else
6448 prev=
6449 fi
6450
6451 if test "$pre_test_object_deps_done" = no; then
6452 case $p in
6453 -L* | -R*)
6454 # Internal compiler library paths should come after those
6455 # provided the user. The postdeps already come after the
6456 # user supplied libs so there is no need to process them.
6457 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
6458 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
6459 else
6460 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
6461 fi
6462 ;;
6463 # The "-l" case would never come before the object being
6464 # linked, so don't bother handling this case.
6465 esac
6466 else
6467 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
6468 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
6469 else
6470 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
6471 fi
6472 fi
6473 ;;
6474
6475 *.$objext)
6476 # This assumes that the test object file only shows up
6477 # once in the compiler output.
6478 if test "$p" = "conftest.$objext"; then
6479 pre_test_object_deps_done=yes
6480 continue
6481 fi
6482
6483 if test "$pre_test_object_deps_done" = no; then
6484 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
6485 _LT_TAGVAR(predep_objects, $1)="$p"
6486 else
6487 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
6488 fi
6489 else
6490 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
6491 _LT_TAGVAR(postdep_objects, $1)="$p"
6492 else
6493 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
6494 fi
6495 fi
6496 ;;
6497
6498 *) ;; # Ignore the rest.
6499
6500 esac
6501 done
6502
6503 # Clean up.
6504 rm -f a.out a.exe
6505else
6506 echo "libtool.m4: error: problem compiling $1 test program"
6507fi
6508
6509$RM -f confest.$objext
6510
6511# PORTME: override above test on systems where it is broken
6512m4_if([$1], [CXX],
6513[case $host_os in
6514interix[[3-9]]*)
6515 # Interix 3.5 installs completely hosed .la files for C++, so rather than
6516 # hack all around it, let's just trust "g++" to DTRT.
6517 _LT_TAGVAR(predep_objects,$1)=
6518 _LT_TAGVAR(postdep_objects,$1)=
6519 _LT_TAGVAR(postdeps,$1)=
6520 ;;
6521
6522linux*)
6523 case `$CC -V 2>&1 | sed 5q` in
6524 *Sun\ C*)
6525 # Sun C++ 5.9
6526
6527 # The more standards-conforming stlport4 library is
6528 # incompatible with the Cstd library. Avoid specifying
6529 # it if it's in CXXFLAGS. Ignore libCrun as
6530 # -library=stlport4 depends on it.
6531 case " $CXX $CXXFLAGS " in
6532 *" -library=stlport4 "*)
6533 solaris_use_stlport4=yes
6534 ;;
6535 esac
6536
6537 if test "$solaris_use_stlport4" != yes; then
6538 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
6539 fi
6540 ;;
6541 esac
6542 ;;
6543
6544solaris*)
6545 case $cc_basename in
6546 CC*)
6547 # The more standards-conforming stlport4 library is
6548 # incompatible with the Cstd library. Avoid specifying
6549 # it if it's in CXXFLAGS. Ignore libCrun as
6550 # -library=stlport4 depends on it.
6551 case " $CXX $CXXFLAGS " in
6552 *" -library=stlport4 "*)
6553 solaris_use_stlport4=yes
6554 ;;
6555 esac
6556
6557 # Adding this requires a known-good setup of shared libraries for
6558 # Sun compiler versions before 5.6, else PIC objects from an old
6559 # archive will be linked into the output, leading to subtle bugs.
6560 if test "$solaris_use_stlport4" != yes; then
6561 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
6562 fi
6563 ;;
6564 esac
6565 ;;
6566esac
6567])
6568
6569case " $_LT_TAGVAR(postdeps, $1) " in
6570*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
6571esac
6572 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
6573if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
6574 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
6575fi
6576_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
6577 [The directories searched by this compiler when creating a shared library])
6578_LT_TAGDECL([], [predep_objects], [1],
6579 [Dependencies to place before and after the objects being linked to
6580 create a shared library])
6581_LT_TAGDECL([], [postdep_objects], [1])
6582_LT_TAGDECL([], [predeps], [1])
6583_LT_TAGDECL([], [postdeps], [1])
6584_LT_TAGDECL([], [compiler_lib_search_path], [1],
6585 [The library search path used internally by the compiler when linking
6586 a shared library])
6587])# _LT_SYS_HIDDEN_LIBDEPS
6588
6589
6590# _LT_PROG_F77
6591# ------------
6592# Since AC_PROG_F77 is broken, in that it returns the empty string
6593# if there is no fortran compiler, we have our own version here.
6594m4_defun([_LT_PROG_F77],
6595[
6596pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
6597AC_PROG_F77
6598if test -z "$F77" || test "X$F77" = "Xno"; then
6599 _lt_disable_F77=yes
6600fi
6601popdef([AC_MSG_ERROR])
6602])# _LT_PROG_F77
6603
6604dnl aclocal-1.4 backwards compatibility:
6605dnl AC_DEFUN([_LT_PROG_F77], [])
6606
6607
6608# _LT_LANG_F77_CONFIG([TAG])
6609# --------------------------
6610# Ensure that the configuration variables for a Fortran 77 compiler are
6611# suitably defined. These variables are subsequently used by _LT_CONFIG
6612# to write the compiler configuration to `libtool'.
6613m4_defun([_LT_LANG_F77_CONFIG],
6614[AC_REQUIRE([_LT_PROG_F77])dnl
6615AC_LANG_PUSH(Fortran 77)
6616
6617_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6618_LT_TAGVAR(allow_undefined_flag, $1)=
6619_LT_TAGVAR(always_export_symbols, $1)=no
6620_LT_TAGVAR(archive_expsym_cmds, $1)=
6621_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6622_LT_TAGVAR(hardcode_direct, $1)=no
6623_LT_TAGVAR(hardcode_direct_absolute, $1)=no
6624_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6625_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
6626_LT_TAGVAR(hardcode_libdir_separator, $1)=
6627_LT_TAGVAR(hardcode_minus_L, $1)=no
6628_LT_TAGVAR(hardcode_automatic, $1)=no
6629_LT_TAGVAR(inherit_rpath, $1)=no
6630_LT_TAGVAR(module_cmds, $1)=
6631_LT_TAGVAR(module_expsym_cmds, $1)=
6632_LT_TAGVAR(link_all_deplibs, $1)=unknown
6633_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6634_LT_TAGVAR(no_undefined_flag, $1)=
6635_LT_TAGVAR(whole_archive_flag_spec, $1)=
6636_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6637
6638# Source file extension for f77 test sources.
6639ac_ext=f
6640
6641# Object file extension for compiled f77 test sources.
6642objext=o
6643_LT_TAGVAR(objext, $1)=$objext
6644
6645# No sense in running all these tests if we already determined that
6646# the F77 compiler isn't working. Some variables (like enable_shared)
6647# are currently assumed to apply to all compilers on this platform,
6648# and will be corrupted by setting them based on a non-working compiler.
6649if test "$_lt_disable_F77" != yes; then
6650 # Code to be used in simple compile tests
6651 lt_simple_compile_test_code="\
6652 subroutine t
6653 return
6654 end
6655"
6656
6657 # Code to be used in simple link tests
6658 lt_simple_link_test_code="\
6659 program t
6660 end
6661"
6662
6663 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6664 _LT_TAG_COMPILER
6665
6666 # save warnings/boilerplate of simple test code
6667 _LT_COMPILER_BOILERPLATE
6668 _LT_LINKER_BOILERPLATE
6669
6670 # Allow CC to be a program name with arguments.
6671 lt_save_CC="$CC"
6672 lt_save_GCC=$GCC
6673 CC=${F77-"f77"}
6674 compiler=$CC
6675 _LT_TAGVAR(compiler, $1)=$CC
6676 _LT_CC_BASENAME([$compiler])
6677 GCC=$G77
6678 if test -n "$compiler"; then
6679 AC_MSG_CHECKING([if libtool supports shared libraries])
6680 AC_MSG_RESULT([$can_build_shared])
6681
6682 AC_MSG_CHECKING([whether to build shared libraries])
6683 test "$can_build_shared" = "no" && enable_shared=no
6684
6685 # On AIX, shared libraries and static libraries use the same namespace, and
6686 # are all built from PIC.
6687 case $host_os in
6688 aix3*)
6689 test "$enable_shared" = yes && enable_static=no
6690 if test -n "$RANLIB"; then
6691 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6692 postinstall_cmds='$RANLIB $lib'
6693 fi
6694 ;;
6695 aix[[4-9]]*)
6696 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
6697 test "$enable_shared" = yes && enable_static=no
6698 fi
6699 ;;
6700 esac
6701 AC_MSG_RESULT([$enable_shared])
6702
6703 AC_MSG_CHECKING([whether to build static libraries])
6704 # Make sure either enable_shared or enable_static is yes.
6705 test "$enable_shared" = yes || enable_static=yes
6706 AC_MSG_RESULT([$enable_static])
6707
6708 _LT_TAGVAR(GCC, $1)="$G77"
6709 _LT_TAGVAR(LD, $1)="$LD"
6710
6711 ## CAVEAT EMPTOR:
6712 ## There is no encapsulation within the following macros, do not change
6713 ## the running order or otherwise move them around unless you know exactly
6714 ## what you are doing...
6715 _LT_COMPILER_PIC($1)
6716 _LT_COMPILER_C_O($1)
6717 _LT_COMPILER_FILE_LOCKS($1)
6718 _LT_LINKER_SHLIBS($1)
6719 _LT_SYS_DYNAMIC_LINKER($1)
6720 _LT_LINKER_HARDCODE_LIBPATH($1)
6721
6722 _LT_CONFIG($1)
6723 fi # test -n "$compiler"
6724
6725 GCC=$lt_save_GCC
6726 CC="$lt_save_CC"
6727fi # test "$_lt_disable_F77" != yes
6728
6729AC_LANG_POP
6730])# _LT_LANG_F77_CONFIG
6731
6732
6733# _LT_PROG_FC
6734# -----------
6735# Since AC_PROG_FC is broken, in that it returns the empty string
6736# if there is no fortran compiler, we have our own version here.
6737m4_defun([_LT_PROG_FC],
6738[
6739pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
6740AC_PROG_FC
6741if test -z "$FC" || test "X$FC" = "Xno"; then
6742 _lt_disable_FC=yes
6743fi
6744popdef([AC_MSG_ERROR])
6745])# _LT_PROG_FC
6746
6747dnl aclocal-1.4 backwards compatibility:
6748dnl AC_DEFUN([_LT_PROG_FC], [])
6749
6750
6751# _LT_LANG_FC_CONFIG([TAG])
6752# -------------------------
6753# Ensure that the configuration variables for a Fortran compiler are
6754# suitably defined. These variables are subsequently used by _LT_CONFIG
6755# to write the compiler configuration to `libtool'.
6756m4_defun([_LT_LANG_FC_CONFIG],
6757[AC_REQUIRE([_LT_PROG_FC])dnl
6758AC_LANG_PUSH(Fortran)
6759
6760_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6761_LT_TAGVAR(allow_undefined_flag, $1)=
6762_LT_TAGVAR(always_export_symbols, $1)=no
6763_LT_TAGVAR(archive_expsym_cmds, $1)=
6764_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6765_LT_TAGVAR(hardcode_direct, $1)=no
6766_LT_TAGVAR(hardcode_direct_absolute, $1)=no
6767_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6768_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
6769_LT_TAGVAR(hardcode_libdir_separator, $1)=
6770_LT_TAGVAR(hardcode_minus_L, $1)=no
6771_LT_TAGVAR(hardcode_automatic, $1)=no
6772_LT_TAGVAR(inherit_rpath, $1)=no
6773_LT_TAGVAR(module_cmds, $1)=
6774_LT_TAGVAR(module_expsym_cmds, $1)=
6775_LT_TAGVAR(link_all_deplibs, $1)=unknown
6776_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6777_LT_TAGVAR(no_undefined_flag, $1)=
6778_LT_TAGVAR(whole_archive_flag_spec, $1)=
6779_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6780
6781# Source file extension for fc test sources.
6782ac_ext=${ac_fc_srcext-f}
6783
6784# Object file extension for compiled fc test sources.
6785objext=o
6786_LT_TAGVAR(objext, $1)=$objext
6787
6788# No sense in running all these tests if we already determined that
6789# the FC compiler isn't working. Some variables (like enable_shared)
6790# are currently assumed to apply to all compilers on this platform,
6791# and will be corrupted by setting them based on a non-working compiler.
6792if test "$_lt_disable_FC" != yes; then
6793 # Code to be used in simple compile tests
6794 lt_simple_compile_test_code="\
6795 subroutine t
6796 return
6797 end
6798"
6799
6800 # Code to be used in simple link tests
6801 lt_simple_link_test_code="\
6802 program t
6803 end
6804"
6805
6806 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6807 _LT_TAG_COMPILER
6808
6809 # save warnings/boilerplate of simple test code
6810 _LT_COMPILER_BOILERPLATE
6811 _LT_LINKER_BOILERPLATE
6812
6813 # Allow CC to be a program name with arguments.
6814 lt_save_CC="$CC"
6815 lt_save_GCC=$GCC
6816 CC=${FC-"f95"}
6817 compiler=$CC
6818 GCC=$ac_cv_fc_compiler_gnu
6819
6820 _LT_TAGVAR(compiler, $1)=$CC
6821 _LT_CC_BASENAME([$compiler])
6822
6823 if test -n "$compiler"; then
6824 AC_MSG_CHECKING([if libtool supports shared libraries])
6825 AC_MSG_RESULT([$can_build_shared])
6826
6827 AC_MSG_CHECKING([whether to build shared libraries])
6828 test "$can_build_shared" = "no" && enable_shared=no
6829
6830 # On AIX, shared libraries and static libraries use the same namespace, and
6831 # are all built from PIC.
6832 case $host_os in
6833 aix3*)
6834 test "$enable_shared" = yes && enable_static=no
6835 if test -n "$RANLIB"; then
6836 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6837 postinstall_cmds='$RANLIB $lib'
6838 fi
6839 ;;
6840 aix[[4-9]]*)
6841 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
6842 test "$enable_shared" = yes && enable_static=no
6843 fi
6844 ;;
6845 esac
6846 AC_MSG_RESULT([$enable_shared])
6847
6848 AC_MSG_CHECKING([whether to build static libraries])
6849 # Make sure either enable_shared or enable_static is yes.
6850 test "$enable_shared" = yes || enable_static=yes
6851 AC_MSG_RESULT([$enable_static])
6852
6853 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
6854 _LT_TAGVAR(LD, $1)="$LD"
6855
6856 ## CAVEAT EMPTOR:
6857 ## There is no encapsulation within the following macros, do not change
6858 ## the running order or otherwise move them around unless you know exactly
6859 ## what you are doing...
6860 _LT_SYS_HIDDEN_LIBDEPS($1)
6861 _LT_COMPILER_PIC($1)
6862 _LT_COMPILER_C_O($1)
6863 _LT_COMPILER_FILE_LOCKS($1)
6864 _LT_LINKER_SHLIBS($1)
6865 _LT_SYS_DYNAMIC_LINKER($1)
6866 _LT_LINKER_HARDCODE_LIBPATH($1)
6867
6868 _LT_CONFIG($1)
6869 fi # test -n "$compiler"
6870
6871 GCC=$lt_save_GCC
6872 CC="$lt_save_CC"
6873fi # test "$_lt_disable_FC" != yes
6874
6875AC_LANG_POP
6876])# _LT_LANG_FC_CONFIG
6877
6878
6879# _LT_LANG_GCJ_CONFIG([TAG])
6880# --------------------------
6881# Ensure that the configuration variables for the GNU Java Compiler compiler
6882# are suitably defined. These variables are subsequently used by _LT_CONFIG
6883# to write the compiler configuration to `libtool'.
6884m4_defun([_LT_LANG_GCJ_CONFIG],
6885[AC_REQUIRE([LT_PROG_GCJ])dnl
6886AC_LANG_SAVE
6887
6888# Source file extension for Java test sources.
6889ac_ext=java
6890
6891# Object file extension for compiled Java test sources.
6892objext=o
6893_LT_TAGVAR(objext, $1)=$objext
6894
6895# Code to be used in simple compile tests
6896lt_simple_compile_test_code="class foo {}"
6897
6898# Code to be used in simple link tests
6899lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
6900
6901# ltmain only uses $CC for tagged configurations so make sure $CC is set.
6902_LT_TAG_COMPILER
6903
6904# save warnings/boilerplate of simple test code
6905_LT_COMPILER_BOILERPLATE
6906_LT_LINKER_BOILERPLATE
6907
6908# Allow CC to be a program name with arguments.
6909lt_save_CC="$CC"
6910lt_save_GCC=$GCC
6911GCC=yes
6912CC=${GCJ-"gcj"}
6913compiler=$CC
6914_LT_TAGVAR(compiler, $1)=$CC
6915_LT_TAGVAR(LD, $1)="$LD"
6916_LT_CC_BASENAME([$compiler])
6917
6918# GCJ did not exist at the time GCC didn't implicitly link libc in.
6919_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6920
6921_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6922
6923if test -n "$compiler"; then
6924 _LT_COMPILER_NO_RTTI($1)
6925 _LT_COMPILER_PIC($1)
6926 _LT_COMPILER_C_O($1)
6927 _LT_COMPILER_FILE_LOCKS($1)
6928 _LT_LINKER_SHLIBS($1)
6929 _LT_LINKER_HARDCODE_LIBPATH($1)
6930
6931 _LT_CONFIG($1)
6932fi
6933
6934AC_LANG_RESTORE
6935
6936GCC=$lt_save_GCC
6937CC="$lt_save_CC"
6938])# _LT_LANG_GCJ_CONFIG
6939
6940
6941# _LT_LANG_RC_CONFIG([TAG])
6942# -------------------------
6943# Ensure that the configuration variables for the Windows resource compiler
6944# are suitably defined. These variables are subsequently used by _LT_CONFIG
6945# to write the compiler configuration to `libtool'.
6946m4_defun([_LT_LANG_RC_CONFIG],
6947[AC_REQUIRE([LT_PROG_RC])dnl
6948AC_LANG_SAVE
6949
6950# Source file extension for RC test sources.
6951ac_ext=rc
6952
6953# Object file extension for compiled RC test sources.
6954objext=o
6955_LT_TAGVAR(objext, $1)=$objext
6956
6957# Code to be used in simple compile tests
6958lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
6959
6960# Code to be used in simple link tests
6961lt_simple_link_test_code="$lt_simple_compile_test_code"
6962
6963# ltmain only uses $CC for tagged configurations so make sure $CC is set.
6964_LT_TAG_COMPILER
6965
6966# save warnings/boilerplate of simple test code
6967_LT_COMPILER_BOILERPLATE
6968_LT_LINKER_BOILERPLATE
6969
6970# Allow CC to be a program name with arguments.
6971lt_save_CC="$CC"
6972lt_save_GCC=$GCC
6973GCC=
6974CC=${RC-"windres"}
6975compiler=$CC
6976_LT_TAGVAR(compiler, $1)=$CC
6977_LT_CC_BASENAME([$compiler])
6978_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
6979
6980if test -n "$compiler"; then
6981 :
6982 _LT_CONFIG($1)
6983fi
6984
6985GCC=$lt_save_GCC
6986AC_LANG_RESTORE
6987CC="$lt_save_CC"
6988])# _LT_LANG_RC_CONFIG
6989
6990
6991# LT_PROG_GCJ
6992# -----------
6993AC_DEFUN([LT_PROG_GCJ],
6994[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
6995 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
6996 [AC_CHECK_TOOL(GCJ, gcj,)
6997 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
6998 AC_SUBST(GCJFLAGS)])])[]dnl
6999])
7000
7001# Old name:
7002AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7003dnl aclocal-1.4 backwards compatibility:
7004dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
7005
7006
7007# LT_PROG_RC
7008# ----------
7009AC_DEFUN([LT_PROG_RC],
7010[AC_CHECK_TOOL(RC, windres,)
7011])
7012
7013# Old name:
7014AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7015dnl aclocal-1.4 backwards compatibility:
7016dnl AC_DEFUN([LT_AC_PROG_RC], [])
7017
7018
7019# _LT_DECL_EGREP
7020# --------------
7021# If we don't have a new enough Autoconf to choose the best grep
7022# available, choose the one first in the user's PATH.
7023m4_defun([_LT_DECL_EGREP],
7024[AC_REQUIRE([AC_PROG_EGREP])dnl
7025AC_REQUIRE([AC_PROG_FGREP])dnl
7026test -z "$GREP" && GREP=grep
7027_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7028_LT_DECL([], [EGREP], [1], [An ERE matcher])
7029_LT_DECL([], [FGREP], [1], [A literal string matcher])
7030dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7031AC_SUBST([GREP])
7032])
7033
7034
7035# _LT_DECL_OBJDUMP
7036# --------------
7037# If we don't have a new enough Autoconf to choose the best objdump
7038# available, choose the one first in the user's PATH.
7039m4_defun([_LT_DECL_OBJDUMP],
7040[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7041test -z "$OBJDUMP" && OBJDUMP=objdump
7042_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7043AC_SUBST([OBJDUMP])
7044])
7045
7046
7047# _LT_DECL_SED
7048# ------------
7049# Check for a fully-functional sed program, that truncates
7050# as few characters as possible. Prefer GNU sed if found.
7051m4_defun([_LT_DECL_SED],
7052[AC_PROG_SED
7053test -z "$SED" && SED=sed
7054Xsed="$SED -e 1s/^X//"
7055_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7056_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7057 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7058])# _LT_DECL_SED
7059
7060m4_ifndef([AC_PROG_SED], [
brynercb91a2f2006-08-25 21:14:45 +00007061# NOTE: This macro has been submitted for inclusion into #
7062# GNU Autoconf as AC_PROG_SED. When it is available in #
7063# a released version of Autoconf we should remove this #
7064# macro and use it instead. #
jimblandy92b1f832009-12-23 22:23:49 +00007065
7066m4_defun([AC_PROG_SED],
brynercb91a2f2006-08-25 21:14:45 +00007067[AC_MSG_CHECKING([for a sed that does not truncate output])
7068AC_CACHE_VAL(lt_cv_path_SED,
7069[# Loop through the user's path and test for sed and gsed.
7070# Then use that list of sed's as ones to test for truncation.
7071as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7072for as_dir in $PATH
7073do
7074 IFS=$as_save_IFS
7075 test -z "$as_dir" && as_dir=.
7076 for lt_ac_prog in sed gsed; do
7077 for ac_exec_ext in '' $ac_executable_extensions; do
jimblandy92b1f832009-12-23 22:23:49 +00007078 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
brynercb91a2f2006-08-25 21:14:45 +00007079 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
7080 fi
7081 done
7082 done
7083done
nealsidb56cfa02009-05-29 00:53:02 +00007084IFS=$as_save_IFS
brynercb91a2f2006-08-25 21:14:45 +00007085lt_ac_max=0
7086lt_ac_count=0
7087# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7088# along with /bin/sed that truncates output.
7089for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
mmentovai8c2a4de2006-09-20 16:20:15 +00007090 test ! -f $lt_ac_sed && continue
brynercb91a2f2006-08-25 21:14:45 +00007091 cat /dev/null > conftest.in
7092 lt_ac_count=0
7093 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7094 # Check for GNU sed and select it if it is found.
7095 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7096 lt_cv_path_SED=$lt_ac_sed
7097 break
7098 fi
7099 while true; do
7100 cat conftest.in conftest.in >conftest.tmp
7101 mv conftest.tmp conftest.in
7102 cp conftest.in conftest.nl
7103 echo >>conftest.nl
7104 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7105 cmp -s conftest.out conftest.nl || break
7106 # 10000 chars as input seems more than enough
7107 test $lt_ac_count -gt 10 && break
7108 lt_ac_count=`expr $lt_ac_count + 1`
7109 if test $lt_ac_count -gt $lt_ac_max; then
7110 lt_ac_max=$lt_ac_count
7111 lt_cv_path_SED=$lt_ac_sed
7112 fi
7113 done
7114done
brynercce34922006-09-19 21:58:41 +00007115])
mmentovai8c2a4de2006-09-20 16:20:15 +00007116SED=$lt_cv_path_SED
nealsidb56cfa02009-05-29 00:53:02 +00007117AC_SUBST([SED])
brynercb91a2f2006-08-25 21:14:45 +00007118AC_MSG_RESULT([$SED])
jimblandy92b1f832009-12-23 22:23:49 +00007119])#AC_PROG_SED
7120])#m4_ifndef
7121
7122# Old name:
7123AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7124dnl aclocal-1.4 backwards compatibility:
7125dnl AC_DEFUN([LT_AC_PROG_SED], [])
7126
7127
7128# _LT_CHECK_SHELL_FEATURES
7129# ------------------------
7130# Find out whether the shell is Bourne or XSI compatible,
7131# or has some other useful features.
7132m4_defun([_LT_CHECK_SHELL_FEATURES],
7133[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7134# Try some XSI features
7135xsi_shell=no
7136( _lt_dummy="a/b/c"
7137 test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
7138 = c,a/b,, \
7139 && eval 'test $(( 1 + 1 )) -eq 2 \
7140 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7141 && xsi_shell=yes
7142AC_MSG_RESULT([$xsi_shell])
7143_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7144
7145AC_MSG_CHECKING([whether the shell understands "+="])
7146lt_shell_append=no
7147( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7148 >/dev/null 2>&1 \
7149 && lt_shell_append=yes
7150AC_MSG_RESULT([$lt_shell_append])
7151_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7152
7153if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7154 lt_unset=unset
7155else
7156 lt_unset=false
7157fi
7158_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7159
7160# test EBCDIC or ASCII
7161case `echo X|tr X '\101'` in
7162 A) # ASCII based system
7163 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7164 lt_SP2NL='tr \040 \012'
7165 lt_NL2SP='tr \015\012 \040\040'
7166 ;;
7167 *) # EBCDIC based system
7168 lt_SP2NL='tr \100 \n'
7169 lt_NL2SP='tr \r\n \100\100'
7170 ;;
7171esac
7172_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7173_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7174])# _LT_CHECK_SHELL_FEATURES
7175
7176
7177# _LT_PROG_XSI_SHELLFNS
7178# ---------------------
7179# Bourne and XSI compatible variants of some useful shell functions.
7180m4_defun([_LT_PROG_XSI_SHELLFNS],
7181[case $xsi_shell in
7182 yes)
7183 cat << \_LT_EOF >> "$cfgfile"
7184
7185# func_dirname file append nondir_replacement
7186# Compute the dirname of FILE. If nonempty, add APPEND to the result,
7187# otherwise set result to NONDIR_REPLACEMENT.
7188func_dirname ()
7189{
7190 case ${1} in
7191 */*) func_dirname_result="${1%/*}${2}" ;;
7192 * ) func_dirname_result="${3}" ;;
7193 esac
7194}
7195
7196# func_basename file
7197func_basename ()
7198{
7199 func_basename_result="${1##*/}"
7200}
7201
7202# func_dirname_and_basename file append nondir_replacement
7203# perform func_basename and func_dirname in a single function
7204# call:
7205# dirname: Compute the dirname of FILE. If nonempty,
7206# add APPEND to the result, otherwise set result
7207# to NONDIR_REPLACEMENT.
7208# value returned in "$func_dirname_result"
7209# basename: Compute filename of FILE.
7210# value retuned in "$func_basename_result"
7211# Implementation must be kept synchronized with func_dirname
7212# and func_basename. For efficiency, we do not delegate to
7213# those functions but instead duplicate the functionality here.
7214func_dirname_and_basename ()
7215{
7216 case ${1} in
7217 */*) func_dirname_result="${1%/*}${2}" ;;
7218 * ) func_dirname_result="${3}" ;;
7219 esac
7220 func_basename_result="${1##*/}"
7221}
7222
7223# func_stripname prefix suffix name
7224# strip PREFIX and SUFFIX off of NAME.
7225# PREFIX and SUFFIX must not contain globbing or regex special
7226# characters, hashes, percent signs, but SUFFIX may contain a leading
7227# dot (in which case that matches only a dot).
7228func_stripname ()
7229{
7230 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7231 # positional parameters, so assign one to ordinary parameter first.
7232 func_stripname_result=${3}
7233 func_stripname_result=${func_stripname_result#"${1}"}
7234 func_stripname_result=${func_stripname_result%"${2}"}
7235}
7236
7237# func_opt_split
7238func_opt_split ()
7239{
7240 func_opt_split_opt=${1%%=*}
7241 func_opt_split_arg=${1#*=}
7242}
7243
7244# func_lo2o object
7245func_lo2o ()
7246{
7247 case ${1} in
7248 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7249 *) func_lo2o_result=${1} ;;
7250 esac
7251}
7252
7253# func_xform libobj-or-source
7254func_xform ()
7255{
7256 func_xform_result=${1%.*}.lo
7257}
7258
7259# func_arith arithmetic-term...
7260func_arith ()
7261{
7262 func_arith_result=$(( $[*] ))
7263}
7264
7265# func_len string
7266# STRING may not start with a hyphen.
7267func_len ()
7268{
7269 func_len_result=${#1}
7270}
7271
7272_LT_EOF
7273 ;;
7274 *) # Bourne compatible functions.
7275 cat << \_LT_EOF >> "$cfgfile"
7276
7277# func_dirname file append nondir_replacement
7278# Compute the dirname of FILE. If nonempty, add APPEND to the result,
7279# otherwise set result to NONDIR_REPLACEMENT.
7280func_dirname ()
7281{
7282 # Extract subdirectory from the argument.
7283 func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
7284 if test "X$func_dirname_result" = "X${1}"; then
7285 func_dirname_result="${3}"
7286 else
7287 func_dirname_result="$func_dirname_result${2}"
7288 fi
7289}
7290
7291# func_basename file
7292func_basename ()
7293{
7294 func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
7295}
7296
7297dnl func_dirname_and_basename
7298dnl A portable version of this function is already defined in general.m4sh
7299dnl so there is no need for it here.
7300
7301# func_stripname prefix suffix name
7302# strip PREFIX and SUFFIX off of NAME.
7303# PREFIX and SUFFIX must not contain globbing or regex special
7304# characters, hashes, percent signs, but SUFFIX may contain a leading
7305# dot (in which case that matches only a dot).
7306# func_strip_suffix prefix name
7307func_stripname ()
7308{
7309 case ${2} in
7310 .*) func_stripname_result=`$ECHO "X${3}" \
7311 | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
7312 *) func_stripname_result=`$ECHO "X${3}" \
7313 | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
7314 esac
7315}
7316
7317# sed scripts:
7318my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
7319my_sed_long_arg='1s/^-[[^=]]*=//'
7320
7321# func_opt_split
7322func_opt_split ()
7323{
7324 func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
7325 func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
7326}
7327
7328# func_lo2o object
7329func_lo2o ()
7330{
7331 func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
7332}
7333
7334# func_xform libobj-or-source
7335func_xform ()
7336{
7337 func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
7338}
7339
7340# func_arith arithmetic-term...
7341func_arith ()
7342{
7343 func_arith_result=`expr "$[@]"`
7344}
7345
7346# func_len string
7347# STRING may not start with a hyphen.
7348func_len ()
7349{
7350 func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
7351}
7352
7353_LT_EOF
7354esac
7355
7356case $lt_shell_append in
7357 yes)
7358 cat << \_LT_EOF >> "$cfgfile"
7359
7360# func_append var value
7361# Append VALUE to the end of shell variable VAR.
7362func_append ()
7363{
7364 eval "$[1]+=\$[2]"
7365}
7366_LT_EOF
7367 ;;
7368 *)
7369 cat << \_LT_EOF >> "$cfgfile"
7370
7371# func_append var value
7372# Append VALUE to the end of shell variable VAR.
7373func_append ()
7374{
7375 eval "$[1]=\$$[1]\$[2]"
7376}
7377
7378_LT_EOF
7379 ;;
7380 esac
brynercb91a2f2006-08-25 21:14:45 +00007381])
7382
jimblandy92b1f832009-12-23 22:23:49 +00007383# Helper functions for option handling. -*- Autoconf -*-
7384#
7385# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
7386# Written by Gary V. Vaughan, 2004
7387#
7388# This file is free software; the Free Software Foundation gives
7389# unlimited permission to copy and/or distribute it, with or without
7390# modifications, as long as this notice is preserved.
7391
7392# serial 6 ltoptions.m4
7393
7394# This is to help aclocal find these macros, as it can't see m4_define.
7395AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
7396
7397
7398# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
7399# ------------------------------------------
7400m4_define([_LT_MANGLE_OPTION],
7401[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
7402
7403
7404# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
7405# ---------------------------------------
7406# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
7407# matching handler defined, dispatch to it. Other OPTION-NAMEs are
7408# saved as a flag.
7409m4_define([_LT_SET_OPTION],
7410[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
7411m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
7412 _LT_MANGLE_DEFUN([$1], [$2]),
7413 [m4_warning([Unknown $1 option `$2'])])[]dnl
7414])
7415
7416
7417# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
7418# ------------------------------------------------------------
7419# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
7420m4_define([_LT_IF_OPTION],
7421[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
7422
7423
7424# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
7425# -------------------------------------------------------
7426# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
7427# are set.
7428m4_define([_LT_UNLESS_OPTIONS],
7429[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
7430 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
7431 [m4_define([$0_found])])])[]dnl
7432m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
7433])[]dnl
7434])
7435
7436
7437# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
7438# ----------------------------------------
7439# OPTION-LIST is a space-separated list of Libtool options associated
7440# with MACRO-NAME. If any OPTION has a matching handler declared with
7441# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
7442# the unknown option and exit.
7443m4_defun([_LT_SET_OPTIONS],
7444[# Set options
7445m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
7446 [_LT_SET_OPTION([$1], _LT_Option)])
7447
7448m4_if([$1],[LT_INIT],[
7449 dnl
7450 dnl Simply set some default values (i.e off) if boolean options were not
7451 dnl specified:
7452 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
7453 ])
7454 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
7455 ])
7456 dnl
7457 dnl If no reference was made to various pairs of opposing options, then
7458 dnl we run the default mode handler for the pair. For example, if neither
7459 dnl `shared' nor `disable-shared' was passed, we enable building of shared
7460 dnl archives by default:
7461 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
7462 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
7463 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
7464 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
7465 [_LT_ENABLE_FAST_INSTALL])
7466 ])
7467])# _LT_SET_OPTIONS
7468
7469
7470
7471# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
7472# -----------------------------------------
7473m4_define([_LT_MANGLE_DEFUN],
7474[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
7475
7476
7477# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
7478# -----------------------------------------------
7479m4_define([LT_OPTION_DEFINE],
7480[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
7481])# LT_OPTION_DEFINE
7482
7483
7484# dlopen
7485# ------
7486LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
7487])
7488
7489AU_DEFUN([AC_LIBTOOL_DLOPEN],
7490[_LT_SET_OPTION([LT_INIT], [dlopen])
7491AC_DIAGNOSE([obsolete],
7492[$0: Remove this warning and the call to _LT_SET_OPTION when you
7493put the `dlopen' option into LT_INIT's first parameter.])
7494])
7495
7496dnl aclocal-1.4 backwards compatibility:
7497dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
7498
7499
7500# win32-dll
7501# ---------
7502# Declare package support for building win32 dll's.
7503LT_OPTION_DEFINE([LT_INIT], [win32-dll],
7504[enable_win32_dll=yes
7505
7506case $host in
7507*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
7508 AC_CHECK_TOOL(AS, as, false)
7509 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7510 AC_CHECK_TOOL(OBJDUMP, objdump, false)
7511 ;;
7512esac
7513
7514test -z "$AS" && AS=as
7515_LT_DECL([], [AS], [0], [Assembler program])dnl
7516
7517test -z "$DLLTOOL" && DLLTOOL=dlltool
7518_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl
7519
7520test -z "$OBJDUMP" && OBJDUMP=objdump
7521_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl
7522])# win32-dll
7523
7524AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
7525[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7526_LT_SET_OPTION([LT_INIT], [win32-dll])
7527AC_DIAGNOSE([obsolete],
7528[$0: Remove this warning and the call to _LT_SET_OPTION when you
7529put the `win32-dll' option into LT_INIT's first parameter.])
7530])
7531
7532dnl aclocal-1.4 backwards compatibility:
7533dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
7534
7535
7536# _LT_ENABLE_SHARED([DEFAULT])
7537# ----------------------------
7538# implement the --enable-shared flag, and supports the `shared' and
7539# `disable-shared' LT_INIT options.
7540# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
7541m4_define([_LT_ENABLE_SHARED],
7542[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
7543AC_ARG_ENABLE([shared],
7544 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
7545 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
7546 [p=${PACKAGE-default}
7547 case $enableval in
7548 yes) enable_shared=yes ;;
7549 no) enable_shared=no ;;
7550 *)
7551 enable_shared=no
7552 # Look at the argument we got. We use all the common list separators.
7553 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
7554 for pkg in $enableval; do
7555 IFS="$lt_save_ifs"
7556 if test "X$pkg" = "X$p"; then
7557 enable_shared=yes
7558 fi
7559 done
7560 IFS="$lt_save_ifs"
7561 ;;
7562 esac],
7563 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
7564
7565 _LT_DECL([build_libtool_libs], [enable_shared], [0],
7566 [Whether or not to build shared libraries])
7567])# _LT_ENABLE_SHARED
7568
7569LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
7570LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
7571
7572# Old names:
7573AC_DEFUN([AC_ENABLE_SHARED],
7574[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
7575])
7576
7577AC_DEFUN([AC_DISABLE_SHARED],
7578[_LT_SET_OPTION([LT_INIT], [disable-shared])
7579])
7580
7581AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
7582AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
7583
7584dnl aclocal-1.4 backwards compatibility:
7585dnl AC_DEFUN([AM_ENABLE_SHARED], [])
7586dnl AC_DEFUN([AM_DISABLE_SHARED], [])
7587
7588
7589
7590# _LT_ENABLE_STATIC([DEFAULT])
7591# ----------------------------
7592# implement the --enable-static flag, and support the `static' and
7593# `disable-static' LT_INIT options.
7594# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
7595m4_define([_LT_ENABLE_STATIC],
7596[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
7597AC_ARG_ENABLE([static],
7598 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
7599 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
7600 [p=${PACKAGE-default}
7601 case $enableval in
7602 yes) enable_static=yes ;;
7603 no) enable_static=no ;;
7604 *)
7605 enable_static=no
7606 # Look at the argument we got. We use all the common list separators.
7607 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
7608 for pkg in $enableval; do
7609 IFS="$lt_save_ifs"
7610 if test "X$pkg" = "X$p"; then
7611 enable_static=yes
7612 fi
7613 done
7614 IFS="$lt_save_ifs"
7615 ;;
7616 esac],
7617 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
7618
7619 _LT_DECL([build_old_libs], [enable_static], [0],
7620 [Whether or not to build static libraries])
7621])# _LT_ENABLE_STATIC
7622
7623LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
7624LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
7625
7626# Old names:
7627AC_DEFUN([AC_ENABLE_STATIC],
7628[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
7629])
7630
7631AC_DEFUN([AC_DISABLE_STATIC],
7632[_LT_SET_OPTION([LT_INIT], [disable-static])
7633])
7634
7635AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
7636AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
7637
7638dnl aclocal-1.4 backwards compatibility:
7639dnl AC_DEFUN([AM_ENABLE_STATIC], [])
7640dnl AC_DEFUN([AM_DISABLE_STATIC], [])
7641
7642
7643
7644# _LT_ENABLE_FAST_INSTALL([DEFAULT])
7645# ----------------------------------
7646# implement the --enable-fast-install flag, and support the `fast-install'
7647# and `disable-fast-install' LT_INIT options.
7648# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
7649m4_define([_LT_ENABLE_FAST_INSTALL],
7650[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
7651AC_ARG_ENABLE([fast-install],
7652 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
7653 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
7654 [p=${PACKAGE-default}
7655 case $enableval in
7656 yes) enable_fast_install=yes ;;
7657 no) enable_fast_install=no ;;
7658 *)
7659 enable_fast_install=no
7660 # Look at the argument we got. We use all the common list separators.
7661 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
7662 for pkg in $enableval; do
7663 IFS="$lt_save_ifs"
7664 if test "X$pkg" = "X$p"; then
7665 enable_fast_install=yes
7666 fi
7667 done
7668 IFS="$lt_save_ifs"
7669 ;;
7670 esac],
7671 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
7672
7673_LT_DECL([fast_install], [enable_fast_install], [0],
7674 [Whether or not to optimize for fast installation])dnl
7675])# _LT_ENABLE_FAST_INSTALL
7676
7677LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
7678LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
7679
7680# Old names:
7681AU_DEFUN([AC_ENABLE_FAST_INSTALL],
7682[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
7683AC_DIAGNOSE([obsolete],
7684[$0: Remove this warning and the call to _LT_SET_OPTION when you put
7685the `fast-install' option into LT_INIT's first parameter.])
7686])
7687
7688AU_DEFUN([AC_DISABLE_FAST_INSTALL],
7689[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
7690AC_DIAGNOSE([obsolete],
7691[$0: Remove this warning and the call to _LT_SET_OPTION when you put
7692the `disable-fast-install' option into LT_INIT's first parameter.])
7693])
7694
7695dnl aclocal-1.4 backwards compatibility:
7696dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
7697dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
7698
7699
7700# _LT_WITH_PIC([MODE])
7701# --------------------
7702# implement the --with-pic flag, and support the `pic-only' and `no-pic'
7703# LT_INIT options.
7704# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
7705m4_define([_LT_WITH_PIC],
7706[AC_ARG_WITH([pic],
7707 [AS_HELP_STRING([--with-pic],
7708 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
7709 [pic_mode="$withval"],
7710 [pic_mode=default])
7711
7712test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
7713
7714_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
7715])# _LT_WITH_PIC
7716
7717LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
7718LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
7719
7720# Old name:
7721AU_DEFUN([AC_LIBTOOL_PICMODE],
7722[_LT_SET_OPTION([LT_INIT], [pic-only])
7723AC_DIAGNOSE([obsolete],
7724[$0: Remove this warning and the call to _LT_SET_OPTION when you
7725put the `pic-only' option into LT_INIT's first parameter.])
7726])
7727
7728dnl aclocal-1.4 backwards compatibility:
7729dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
7730
7731
7732m4_define([_LTDL_MODE], [])
7733LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
7734 [m4_define([_LTDL_MODE], [nonrecursive])])
7735LT_OPTION_DEFINE([LTDL_INIT], [recursive],
7736 [m4_define([_LTDL_MODE], [recursive])])
7737LT_OPTION_DEFINE([LTDL_INIT], [subproject],
7738 [m4_define([_LTDL_MODE], [subproject])])
7739
7740m4_define([_LTDL_TYPE], [])
7741LT_OPTION_DEFINE([LTDL_INIT], [installable],
7742 [m4_define([_LTDL_TYPE], [installable])])
7743LT_OPTION_DEFINE([LTDL_INIT], [convenience],
7744 [m4_define([_LTDL_TYPE], [convenience])])
7745
7746# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
7747#
7748# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
7749# Written by Gary V. Vaughan, 2004
7750#
7751# This file is free software; the Free Software Foundation gives
7752# unlimited permission to copy and/or distribute it, with or without
7753# modifications, as long as this notice is preserved.
7754
7755# serial 6 ltsugar.m4
7756
7757# This is to help aclocal find these macros, as it can't see m4_define.
7758AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
7759
7760
7761# lt_join(SEP, ARG1, [ARG2...])
7762# -----------------------------
7763# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
7764# associated separator.
7765# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
7766# versions in m4sugar had bugs.
7767m4_define([lt_join],
7768[m4_if([$#], [1], [],
7769 [$#], [2], [[$2]],
7770 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
7771m4_define([_lt_join],
7772[m4_if([$#$2], [2], [],
7773 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
7774
7775
7776# lt_car(LIST)
7777# lt_cdr(LIST)
7778# ------------
7779# Manipulate m4 lists.
7780# These macros are necessary as long as will still need to support
7781# Autoconf-2.59 which quotes differently.
7782m4_define([lt_car], [[$1]])
7783m4_define([lt_cdr],
7784[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
7785 [$#], 1, [],
7786 [m4_dquote(m4_shift($@))])])
7787m4_define([lt_unquote], $1)
7788
7789
7790# lt_append(MACRO-NAME, STRING, [SEPARATOR])
7791# ------------------------------------------
7792# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
7793# Note that neither SEPARATOR nor STRING are expanded; they are appended
7794# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
7795# No SEPARATOR is output if MACRO-NAME was previously undefined (different
7796# than defined and empty).
7797#
7798# This macro is needed until we can rely on Autoconf 2.62, since earlier
7799# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
7800m4_define([lt_append],
7801[m4_define([$1],
7802 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
7803
7804
7805
7806# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
7807# ----------------------------------------------------------
7808# Produce a SEP delimited list of all paired combinations of elements of
7809# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
7810# has the form PREFIXmINFIXSUFFIXn.
7811# Needed until we can rely on m4_combine added in Autoconf 2.62.
7812m4_define([lt_combine],
7813[m4_if(m4_eval([$# > 3]), [1],
7814 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
7815[[m4_foreach([_Lt_prefix], [$2],
7816 [m4_foreach([_Lt_suffix],
7817 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
7818 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
7819
7820
7821# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
7822# -----------------------------------------------------------------------
7823# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
7824# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
7825m4_define([lt_if_append_uniq],
7826[m4_ifdef([$1],
7827 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
7828 [lt_append([$1], [$2], [$3])$4],
7829 [$5])],
7830 [lt_append([$1], [$2], [$3])$4])])
7831
7832
7833# lt_dict_add(DICT, KEY, VALUE)
7834# -----------------------------
7835m4_define([lt_dict_add],
7836[m4_define([$1($2)], [$3])])
7837
7838
7839# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
7840# --------------------------------------------
7841m4_define([lt_dict_add_subkey],
7842[m4_define([$1($2:$3)], [$4])])
7843
7844
7845# lt_dict_fetch(DICT, KEY, [SUBKEY])
7846# ----------------------------------
7847m4_define([lt_dict_fetch],
7848[m4_ifval([$3],
7849 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
7850 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
7851
7852
7853# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
7854# -----------------------------------------------------------------
7855m4_define([lt_if_dict_fetch],
7856[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
7857 [$5],
7858 [$6])])
7859
7860
7861# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
7862# --------------------------------------------------------------
7863m4_define([lt_dict_filter],
7864[m4_if([$5], [], [],
7865 [lt_join(m4_quote(m4_default([$4], [[, ]])),
7866 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
7867 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
7868])
7869
7870# ltversion.m4 -- version numbers -*- Autoconf -*-
7871#
7872# Copyright (C) 2004 Free Software Foundation, Inc.
7873# Written by Scott James Remnant, 2004
7874#
7875# This file is free software; the Free Software Foundation gives
7876# unlimited permission to copy and/or distribute it, with or without
7877# modifications, as long as this notice is preserved.
7878
7879# Generated from ltversion.in.
7880
7881# serial 3012 ltversion.m4
7882# This file is part of GNU Libtool
7883
7884m4_define([LT_PACKAGE_VERSION], [2.2.6])
7885m4_define([LT_PACKAGE_REVISION], [1.3012])
7886
7887AC_DEFUN([LTVERSION_VERSION],
7888[macro_version='2.2.6'
7889macro_revision='1.3012'
7890_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
7891_LT_DECL(, macro_revision, 0)
7892])
7893
7894# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
7895#
7896# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
7897# Written by Scott James Remnant, 2004.
7898#
7899# This file is free software; the Free Software Foundation gives
7900# unlimited permission to copy and/or distribute it, with or without
7901# modifications, as long as this notice is preserved.
7902
7903# serial 4 lt~obsolete.m4
7904
7905# These exist entirely to fool aclocal when bootstrapping libtool.
7906#
7907# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
7908# which have later been changed to m4_define as they aren't part of the
7909# exported API, or moved to Autoconf or Automake where they belong.
7910#
7911# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
7912# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
7913# using a macro with the same name in our local m4/libtool.m4 it'll
7914# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
7915# and doesn't know about Autoconf macros at all.)
7916#
7917# So we provide this file, which has a silly filename so it's always
7918# included after everything else. This provides aclocal with the
7919# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
7920# because those macros already exist, or will be overwritten later.
7921# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
7922#
7923# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
7924# Yes, that means every name once taken will need to remain here until
7925# we give up compatibility with versions before 1.7, at which point
7926# we need to keep only those names which we still refer to.
7927
7928# This is to help aclocal find these macros, as it can't see m4_define.
7929AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
7930
7931m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
7932m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
7933m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
7934m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
7935m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
7936m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
7937m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
7938m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
7939m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
7940m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
7941m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
7942m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
7943m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
7944m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
7945m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
7946m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
7947m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
7948m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
7949m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
7950m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
7951m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
7952m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
7953m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
7954m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
7955m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
7956m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
7957m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
7958m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
7959m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
7960m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
7961m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
7962m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
7963m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
7964m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
7965m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
7966m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
7967m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
7968m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
7969m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
7970m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
7971m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
7972m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
7973m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])])
7974m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
7975m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
7976m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
7977m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
7978m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
7979m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
7980m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
7981m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
7982m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
7983m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
7984m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
7985m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
7986
7987# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
brynercb91a2f2006-08-25 21:14:45 +00007988#
7989# This file is free software; the Free Software Foundation
7990# gives unlimited permission to copy and/or distribute it,
7991# with or without modifications, as long as this notice is preserved.
7992
7993# AM_AUTOMAKE_VERSION(VERSION)
7994# ----------------------------
7995# Automake X.Y traces this macro to ensure aclocal.m4 has been
7996# generated from the m4 files accompanying Automake X.Y.
mmentovaiaf3c43f2007-05-17 18:34:37 +00007997# (This private macro should not be called outside this file.)
7998AC_DEFUN([AM_AUTOMAKE_VERSION],
jimblandy92b1f832009-12-23 22:23:49 +00007999[am__api_version='1.11'
mmentovaiaf3c43f2007-05-17 18:34:37 +00008000dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
8001dnl require some minimum version. Point them to the right macro.
jimblandy92b1f832009-12-23 22:23:49 +00008002m4_if([$1], [1.11], [],
mmentovaiaf3c43f2007-05-17 18:34:37 +00008003 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
8004])
8005
8006# _AM_AUTOCONF_VERSION(VERSION)
8007# -----------------------------
8008# aclocal traces this macro to find the Autoconf version.
8009# This is a private macro too. Using m4_define simplifies
8010# the logic in aclocal, which can simply ignore this definition.
8011m4_define([_AM_AUTOCONF_VERSION], [])
brynercb91a2f2006-08-25 21:14:45 +00008012
8013# AM_SET_CURRENT_AUTOMAKE_VERSION
8014# -------------------------------
mmentovaiaf3c43f2007-05-17 18:34:37 +00008015# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
jimblandy92b1f832009-12-23 22:23:49 +00008016# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
brynercb91a2f2006-08-25 21:14:45 +00008017AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
jimblandy92b1f832009-12-23 22:23:49 +00008018[AM_AUTOMAKE_VERSION([1.11])dnl
8019m4_ifndef([AC_AUTOCONF_VERSION],
8020 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
8021_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
brynercb91a2f2006-08-25 21:14:45 +00008022
8023# AM_AUX_DIR_EXPAND -*- Autoconf -*-
8024
8025# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
8026#
8027# This file is free software; the Free Software Foundation
8028# gives unlimited permission to copy and/or distribute it,
8029# with or without modifications, as long as this notice is preserved.
8030
8031# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
8032# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
8033# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
8034#
8035# Of course, Automake must honor this variable whenever it calls a
8036# tool from the auxiliary directory. The problem is that $srcdir (and
8037# therefore $ac_aux_dir as well) can be either absolute or relative,
8038# depending on how configure is run. This is pretty annoying, since
8039# it makes $ac_aux_dir quite unusable in subdirectories: in the top
8040# source directory, any form will work fine, but in subdirectories a
8041# relative path needs to be adjusted first.
8042#
8043# $ac_aux_dir/missing
8044# fails when called from a subdirectory if $ac_aux_dir is relative
8045# $top_srcdir/$ac_aux_dir/missing
8046# fails if $ac_aux_dir is absolute,
8047# fails when called from a subdirectory in a VPATH build with
8048# a relative $ac_aux_dir
8049#
8050# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
8051# are both prefixed by $srcdir. In an in-source build this is usually
8052# harmless because $srcdir is `.', but things will broke when you
8053# start a VPATH build or use an absolute $srcdir.
8054#
8055# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
8056# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
8057# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
8058# and then we would define $MISSING as
8059# MISSING="\${SHELL} $am_aux_dir/missing"
8060# This will work as long as MISSING is not called from configure, because
8061# unfortunately $(top_srcdir) has no meaning in configure.
8062# However there are other variables, like CC, which are often used in
8063# configure, and could therefore not use this "fixed" $ac_aux_dir.
8064#
8065# Another solution, used here, is to always expand $ac_aux_dir to an
8066# absolute PATH. The drawback is that using absolute paths prevent a
8067# configured tree to be moved without reconfiguration.
8068
8069AC_DEFUN([AM_AUX_DIR_EXPAND],
8070[dnl Rely on autoconf to set up CDPATH properly.
8071AC_PREREQ([2.50])dnl
8072# expand $ac_aux_dir to an absolute path
8073am_aux_dir=`cd $ac_aux_dir && pwd`
8074])
8075
8076# AM_CONDITIONAL -*- Autoconf -*-
8077
jimblandy92b1f832009-12-23 22:23:49 +00008078# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
brynercb91a2f2006-08-25 21:14:45 +00008079# Free Software Foundation, Inc.
8080#
8081# This file is free software; the Free Software Foundation
8082# gives unlimited permission to copy and/or distribute it,
8083# with or without modifications, as long as this notice is preserved.
8084
jimblandy92b1f832009-12-23 22:23:49 +00008085# serial 9
brynercb91a2f2006-08-25 21:14:45 +00008086
8087# AM_CONDITIONAL(NAME, SHELL-CONDITION)
8088# -------------------------------------
8089# Define a conditional.
8090AC_DEFUN([AM_CONDITIONAL],
8091[AC_PREREQ(2.52)dnl
8092 ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
8093 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
mmentovaiaf3c43f2007-05-17 18:34:37 +00008094AC_SUBST([$1_TRUE])dnl
8095AC_SUBST([$1_FALSE])dnl
8096_AM_SUBST_NOTMAKE([$1_TRUE])dnl
8097_AM_SUBST_NOTMAKE([$1_FALSE])dnl
jimblandy92b1f832009-12-23 22:23:49 +00008098m4_define([_AM_COND_VALUE_$1], [$2])dnl
brynercb91a2f2006-08-25 21:14:45 +00008099if $2; then
8100 $1_TRUE=
8101 $1_FALSE='#'
8102else
8103 $1_TRUE='#'
8104 $1_FALSE=
8105fi
8106AC_CONFIG_COMMANDS_PRE(
8107[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
8108 AC_MSG_ERROR([[conditional "$1" was never defined.
8109Usually this means the macro was only invoked conditionally.]])
8110fi])])
8111
jimblandy92b1f832009-12-23 22:23:49 +00008112# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
brynercb91a2f2006-08-25 21:14:45 +00008113# Free Software Foundation, Inc.
8114#
8115# This file is free software; the Free Software Foundation
8116# gives unlimited permission to copy and/or distribute it,
8117# with or without modifications, as long as this notice is preserved.
8118
jimblandy92b1f832009-12-23 22:23:49 +00008119# serial 10
brynercb91a2f2006-08-25 21:14:45 +00008120
8121# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
8122# written in clear, in which case automake, when reading aclocal.m4,
8123# will think it sees a *use*, and therefore will trigger all it's
8124# C support machinery. Also note that it means that autoscan, seeing
8125# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
8126
8127
8128# _AM_DEPENDENCIES(NAME)
8129# ----------------------
8130# See how the compiler implements dependency checking.
8131# NAME is "CC", "CXX", "GCJ", or "OBJC".
8132# We try a few techniques and use that to set a single cache variable.
8133#
8134# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
8135# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
8136# dependency, and given that the user is not expected to run this macro,
8137# just rely on AC_PROG_CC.
8138AC_DEFUN([_AM_DEPENDENCIES],
8139[AC_REQUIRE([AM_SET_DEPDIR])dnl
8140AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
8141AC_REQUIRE([AM_MAKE_INCLUDE])dnl
8142AC_REQUIRE([AM_DEP_TRACK])dnl
8143
8144ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
8145 [$1], CXX, [depcc="$CXX" am_compiler_list=],
8146 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
mmentovaiaf3c43f2007-05-17 18:34:37 +00008147 [$1], UPC, [depcc="$UPC" am_compiler_list=],
brynercb91a2f2006-08-25 21:14:45 +00008148 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
8149 [depcc="$$1" am_compiler_list=])
8150
8151AC_CACHE_CHECK([dependency style of $depcc],
8152 [am_cv_$1_dependencies_compiler_type],
8153[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
8154 # We make a subdir and do the tests there. Otherwise we can end up
8155 # making bogus files that we don't know about and never remove. For
8156 # instance it was reported that on HP-UX the gcc test will end up
8157 # making a dummy file named `D' -- because `-MD' means `put the output
8158 # in D'.
8159 mkdir conftest.dir
8160 # Copy depcomp to subdir because otherwise we won't find it if we're
8161 # using a relative directory.
8162 cp "$am_depcomp" conftest.dir
8163 cd conftest.dir
8164 # We will build objects and dependencies in a subdirectory because
8165 # it helps to detect inapplicable dependency modes. For instance
8166 # both Tru64's cc and ICC support -MD to output dependencies as a
8167 # side effect of compilation, but ICC will put the dependencies in
8168 # the current directory while Tru64 will put them in the object
8169 # directory.
8170 mkdir sub
8171
8172 am_cv_$1_dependencies_compiler_type=none
8173 if test "$am_compiler_list" = ""; then
8174 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
8175 fi
jimblandy92b1f832009-12-23 22:23:49 +00008176 am__universal=false
8177 m4_case([$1], [CC],
8178 [case " $depcc " in #(
8179 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8180 esac],
8181 [CXX],
8182 [case " $depcc " in #(
8183 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8184 esac])
8185
brynercb91a2f2006-08-25 21:14:45 +00008186 for depmode in $am_compiler_list; do
8187 # Setup a source with many dependencies, because some compilers
8188 # like to wrap large dependency lists on column 80 (with \), and
8189 # we should not choose a depcomp mode which is confused by this.
8190 #
8191 # We need to recreate these files for each test, as the compiler may
8192 # overwrite some of them when testing with obscure command lines.
8193 # This happens at least with the AIX C compiler.
8194 : > sub/conftest.c
8195 for i in 1 2 3 4 5 6; do
8196 echo '#include "conftst'$i'.h"' >> sub/conftest.c
8197 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
8198 # Solaris 8's {/usr,}/bin/sh.
8199 touch sub/conftst$i.h
8200 done
8201 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
8202
jimblandy92b1f832009-12-23 22:23:49 +00008203 # We check with `-c' and `-o' for the sake of the "dashmstdout"
8204 # mode. It turns out that the SunPro C++ compiler does not properly
8205 # handle `-M -o', and we need to detect this. Also, some Intel
8206 # versions had trouble with output in subdirs
8207 am__obj=sub/conftest.${OBJEXT-o}
8208 am__minus_obj="-o $am__obj"
brynercb91a2f2006-08-25 21:14:45 +00008209 case $depmode in
jimblandy92b1f832009-12-23 22:23:49 +00008210 gcc)
8211 # This depmode causes a compiler race in universal mode.
8212 test "$am__universal" = false || continue
8213 ;;
brynercb91a2f2006-08-25 21:14:45 +00008214 nosideeffect)
8215 # after this tag, mechanisms are not by side-effect, so they'll
8216 # only be used when explicitly requested
8217 if test "x$enable_dependency_tracking" = xyes; then
8218 continue
8219 else
8220 break
8221 fi
8222 ;;
jimblandy92b1f832009-12-23 22:23:49 +00008223 msvisualcpp | msvcmsys)
8224 # This compiler won't grok `-c -o', but also, the minuso test has
8225 # not run yet. These depmodes are late enough in the game, and
8226 # so weak that their functioning should not be impacted.
8227 am__obj=conftest.${OBJEXT-o}
8228 am__minus_obj=
8229 ;;
brynercb91a2f2006-08-25 21:14:45 +00008230 none) break ;;
8231 esac
brynercb91a2f2006-08-25 21:14:45 +00008232 if depmode=$depmode \
jimblandy92b1f832009-12-23 22:23:49 +00008233 source=sub/conftest.c object=$am__obj \
brynercb91a2f2006-08-25 21:14:45 +00008234 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
jimblandy92b1f832009-12-23 22:23:49 +00008235 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
brynercb91a2f2006-08-25 21:14:45 +00008236 >/dev/null 2>conftest.err &&
mmentovaiaf3c43f2007-05-17 18:34:37 +00008237 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
brynercb91a2f2006-08-25 21:14:45 +00008238 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
jimblandy92b1f832009-12-23 22:23:49 +00008239 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
brynercb91a2f2006-08-25 21:14:45 +00008240 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
8241 # icc doesn't choke on unknown options, it will just issue warnings
8242 # or remarks (even with -Werror). So we grep stderr for any message
8243 # that says an option was ignored or not supported.
8244 # When given -MP, icc 7.0 and 7.1 complain thusly:
8245 # icc: Command line warning: ignoring option '-M'; no argument required
8246 # The diagnosis changed in icc 8.0:
8247 # icc: Command line remark: option '-MP' not supported
8248 if (grep 'ignoring option' conftest.err ||
8249 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
8250 am_cv_$1_dependencies_compiler_type=$depmode
8251 break
8252 fi
8253 fi
8254 done
8255
8256 cd ..
8257 rm -rf conftest.dir
8258else
8259 am_cv_$1_dependencies_compiler_type=none
8260fi
8261])
8262AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
8263AM_CONDITIONAL([am__fastdep$1], [
8264 test "x$enable_dependency_tracking" != xno \
8265 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
8266])
8267
8268
8269# AM_SET_DEPDIR
8270# -------------
8271# Choose a directory name for dependency files.
8272# This macro is AC_REQUIREd in _AM_DEPENDENCIES
8273AC_DEFUN([AM_SET_DEPDIR],
8274[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
8275AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
8276])
8277
8278
8279# AM_DEP_TRACK
8280# ------------
8281AC_DEFUN([AM_DEP_TRACK],
8282[AC_ARG_ENABLE(dependency-tracking,
8283[ --disable-dependency-tracking speeds up one-time build
8284 --enable-dependency-tracking do not reject slow dependency extractors])
8285if test "x$enable_dependency_tracking" != xno; then
8286 am_depcomp="$ac_aux_dir/depcomp"
8287 AMDEPBACKSLASH='\'
8288fi
8289AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
mmentovaiaf3c43f2007-05-17 18:34:37 +00008290AC_SUBST([AMDEPBACKSLASH])dnl
8291_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
brynercb91a2f2006-08-25 21:14:45 +00008292])
8293
8294# Generate code to set up dependency tracking. -*- Autoconf -*-
8295
jimblandy92b1f832009-12-23 22:23:49 +00008296# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
brynercb91a2f2006-08-25 21:14:45 +00008297# Free Software Foundation, Inc.
8298#
8299# This file is free software; the Free Software Foundation
8300# gives unlimited permission to copy and/or distribute it,
8301# with or without modifications, as long as this notice is preserved.
8302
jimblandy92b1f832009-12-23 22:23:49 +00008303#serial 5
brynercb91a2f2006-08-25 21:14:45 +00008304
8305# _AM_OUTPUT_DEPENDENCY_COMMANDS
8306# ------------------------------
8307AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
jimblandy92b1f832009-12-23 22:23:49 +00008308[{
8309 # Autoconf 2.62 quotes --file arguments for eval, but not when files
8310 # are listed without --file. Let's play safe and only enable the eval
8311 # if we detect the quoting.
8312 case $CONFIG_FILES in
8313 *\'*) eval set x "$CONFIG_FILES" ;;
8314 *) set x $CONFIG_FILES ;;
8315 esac
8316 shift
8317 for mf
8318 do
8319 # Strip MF so we end up with the name of the file.
8320 mf=`echo "$mf" | sed -e 's/:.*$//'`
8321 # Check whether this is an Automake generated Makefile or not.
8322 # We used to match only the files named `Makefile.in', but
8323 # some people rename them; so instead we look at the file content.
8324 # Grep'ing the first line is not enough: some people post-process
8325 # each Makefile.in and add a new line on top of each file to say so.
8326 # Grep'ing the whole file is not good either: AIX grep has a line
8327 # limit of 2048, but all sed's we know have understand at least 4000.
8328 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
8329 dirpart=`AS_DIRNAME("$mf")`
8330 else
8331 continue
8332 fi
8333 # Extract the definition of DEPDIR, am__include, and am__quote
8334 # from the Makefile without running `make'.
8335 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
8336 test -z "$DEPDIR" && continue
8337 am__include=`sed -n 's/^am__include = //p' < "$mf"`
8338 test -z "am__include" && continue
8339 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
8340 # When using ansi2knr, U may be empty or an underscore; expand it
8341 U=`sed -n 's/^U = //p' < "$mf"`
8342 # Find all dependency output files, they are included files with
8343 # $(DEPDIR) in their names. We invoke sed twice because it is the
8344 # simplest approach to changing $(DEPDIR) to its actual value in the
8345 # expansion.
8346 for file in `sed -n "
8347 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
8348 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
8349 # Make sure the directory exists.
8350 test -f "$dirpart/$file" && continue
8351 fdir=`AS_DIRNAME(["$file"])`
8352 AS_MKDIR_P([$dirpart/$fdir])
8353 # echo "creating $dirpart/$file"
8354 echo '# dummy' > "$dirpart/$file"
8355 done
brynercb91a2f2006-08-25 21:14:45 +00008356 done
jimblandy92b1f832009-12-23 22:23:49 +00008357}
brynercb91a2f2006-08-25 21:14:45 +00008358])# _AM_OUTPUT_DEPENDENCY_COMMANDS
8359
8360
8361# AM_OUTPUT_DEPENDENCY_COMMANDS
8362# -----------------------------
8363# This macro should only be invoked once -- use via AC_REQUIRE.
8364#
8365# This code is only required when automatic dependency tracking
8366# is enabled. FIXME. This creates each `.P' file that we will
8367# need in order to bootstrap the dependency handling code.
8368AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
8369[AC_CONFIG_COMMANDS([depfiles],
8370 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
8371 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
8372])
8373
8374# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
8375# Free Software Foundation, Inc.
8376#
8377# This file is free software; the Free Software Foundation
8378# gives unlimited permission to copy and/or distribute it,
8379# with or without modifications, as long as this notice is preserved.
8380
8381# serial 8
8382
8383# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
8384AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
8385
8386# Do all the work for Automake. -*- Autoconf -*-
8387
mmentovaiaf3c43f2007-05-17 18:34:37 +00008388# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
jimblandy92b1f832009-12-23 22:23:49 +00008389# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
brynercb91a2f2006-08-25 21:14:45 +00008390#
8391# This file is free software; the Free Software Foundation
8392# gives unlimited permission to copy and/or distribute it,
8393# with or without modifications, as long as this notice is preserved.
8394
jimblandy92b1f832009-12-23 22:23:49 +00008395# serial 16
brynercb91a2f2006-08-25 21:14:45 +00008396
8397# This macro actually does too much. Some checks are only needed if
8398# your package does certain things. But this isn't really a big deal.
8399
8400# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
8401# AM_INIT_AUTOMAKE([OPTIONS])
8402# -----------------------------------------------
8403# The call with PACKAGE and VERSION arguments is the old style
8404# call (pre autoconf-2.50), which is being phased out. PACKAGE
8405# and VERSION should now be passed to AC_INIT and removed from
8406# the call to AM_INIT_AUTOMAKE.
8407# We support both call styles for the transition. After
8408# the next Automake release, Autoconf can make the AC_INIT
8409# arguments mandatory, and then we can depend on a new Autoconf
8410# release and drop the old call support.
8411AC_DEFUN([AM_INIT_AUTOMAKE],
jimblandy92b1f832009-12-23 22:23:49 +00008412[AC_PREREQ([2.62])dnl
brynercb91a2f2006-08-25 21:14:45 +00008413dnl Autoconf wants to disallow AM_ names. We explicitly allow
8414dnl the ones we care about.
8415m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
8416AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
8417AC_REQUIRE([AC_PROG_INSTALL])dnl
mmentovaiaf3c43f2007-05-17 18:34:37 +00008418if test "`cd $srcdir && pwd`" != "`pwd`"; then
8419 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
8420 # is not polluted with repeated "-I."
8421 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
8422 # test to see if srcdir already configured
8423 if test -f $srcdir/config.status; then
8424 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
8425 fi
brynercb91a2f2006-08-25 21:14:45 +00008426fi
8427
8428# test whether we have cygpath
8429if test -z "$CYGPATH_W"; then
8430 if (cygpath --version) >/dev/null 2>/dev/null; then
8431 CYGPATH_W='cygpath -w'
8432 else
8433 CYGPATH_W=echo
8434 fi
8435fi
8436AC_SUBST([CYGPATH_W])
8437
8438# Define the identity of the package.
8439dnl Distinguish between old-style and new-style calls.
8440m4_ifval([$2],
8441[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
8442 AC_SUBST([PACKAGE], [$1])dnl
8443 AC_SUBST([VERSION], [$2])],
8444[_AM_SET_OPTIONS([$1])dnl
mmentovaiaf3c43f2007-05-17 18:34:37 +00008445dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
8446m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
8447 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
brynercb91a2f2006-08-25 21:14:45 +00008448 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
8449 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
8450
8451_AM_IF_OPTION([no-define],,
8452[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
8453 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
8454
8455# Some tools Automake needs.
8456AC_REQUIRE([AM_SANITY_CHECK])dnl
8457AC_REQUIRE([AC_ARG_PROGRAM])dnl
8458AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
8459AM_MISSING_PROG(AUTOCONF, autoconf)
8460AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
8461AM_MISSING_PROG(AUTOHEADER, autoheader)
8462AM_MISSING_PROG(MAKEINFO, makeinfo)
jimblandy92b1f832009-12-23 22:23:49 +00008463AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
8464AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
brynercb91a2f2006-08-25 21:14:45 +00008465AC_REQUIRE([AM_PROG_MKDIR_P])dnl
8466# We need awk for the "check" target. The system "awk" is bad on
8467# some platforms.
8468AC_REQUIRE([AC_PROG_AWK])dnl
8469AC_REQUIRE([AC_PROG_MAKE_SET])dnl
8470AC_REQUIRE([AM_SET_LEADING_DOT])dnl
8471_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
jimblandy92b1f832009-12-23 22:23:49 +00008472 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
8473 [_AM_PROG_TAR([v7])])])
brynercb91a2f2006-08-25 21:14:45 +00008474_AM_IF_OPTION([no-dependencies],,
8475[AC_PROVIDE_IFELSE([AC_PROG_CC],
jimblandy92b1f832009-12-23 22:23:49 +00008476 [_AM_DEPENDENCIES(CC)],
8477 [define([AC_PROG_CC],
8478 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
brynercb91a2f2006-08-25 21:14:45 +00008479AC_PROVIDE_IFELSE([AC_PROG_CXX],
jimblandy92b1f832009-12-23 22:23:49 +00008480 [_AM_DEPENDENCIES(CXX)],
8481 [define([AC_PROG_CXX],
8482 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
mmentovaiaf3c43f2007-05-17 18:34:37 +00008483AC_PROVIDE_IFELSE([AC_PROG_OBJC],
jimblandy92b1f832009-12-23 22:23:49 +00008484 [_AM_DEPENDENCIES(OBJC)],
8485 [define([AC_PROG_OBJC],
8486 defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
brynercb91a2f2006-08-25 21:14:45 +00008487])
jimblandy92b1f832009-12-23 22:23:49 +00008488_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
8489dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
8490dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
8491dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
8492AC_CONFIG_COMMANDS_PRE(dnl
8493[m4_provide_if([_AM_COMPILER_EXEEXT],
8494 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
brynercb91a2f2006-08-25 21:14:45 +00008495])
8496
jimblandy92b1f832009-12-23 22:23:49 +00008497dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
8498dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
8499dnl mangled by Autoconf and run in a shell conditional statement.
8500m4_define([_AC_COMPILER_EXEEXT],
8501m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
8502
brynercb91a2f2006-08-25 21:14:45 +00008503
8504# When config.status generates a header, we must update the stamp-h file.
8505# This file resides in the same directory as the config header
8506# that is generated. The stamp files are numbered to have different names.
8507
8508# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
8509# loop where config.status creates the headers, so we can generate
8510# our stamp files there.
8511AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
8512[# Compute $1's index in $config_headers.
jimblandy92b1f832009-12-23 22:23:49 +00008513_am_arg=$1
brynercb91a2f2006-08-25 21:14:45 +00008514_am_stamp_count=1
8515for _am_header in $config_headers :; do
8516 case $_am_header in
jimblandy92b1f832009-12-23 22:23:49 +00008517 $_am_arg | $_am_arg:* )
brynercb91a2f2006-08-25 21:14:45 +00008518 break ;;
8519 * )
8520 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
8521 esac
8522done
jimblandy92b1f832009-12-23 22:23:49 +00008523echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
brynercb91a2f2006-08-25 21:14:45 +00008524
jimblandy92b1f832009-12-23 22:23:49 +00008525# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc.
brynercb91a2f2006-08-25 21:14:45 +00008526#
8527# This file is free software; the Free Software Foundation
8528# gives unlimited permission to copy and/or distribute it,
8529# with or without modifications, as long as this notice is preserved.
8530
8531# AM_PROG_INSTALL_SH
8532# ------------------
8533# Define $install_sh.
8534AC_DEFUN([AM_PROG_INSTALL_SH],
8535[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
jimblandy92b1f832009-12-23 22:23:49 +00008536if test x"${install_sh}" != xset; then
8537 case $am_aux_dir in
8538 *\ * | *\ *)
8539 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
8540 *)
8541 install_sh="\${SHELL} $am_aux_dir/install-sh"
8542 esac
8543fi
brynercb91a2f2006-08-25 21:14:45 +00008544AC_SUBST(install_sh)])
8545
8546# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
8547#
8548# This file is free software; the Free Software Foundation
8549# gives unlimited permission to copy and/or distribute it,
8550# with or without modifications, as long as this notice is preserved.
8551
8552# serial 2
8553
8554# Check whether the underlying file-system supports filenames
8555# with a leading dot. For instance MS-DOS doesn't.
8556AC_DEFUN([AM_SET_LEADING_DOT],
8557[rm -rf .tst 2>/dev/null
8558mkdir .tst 2>/dev/null
8559if test -d .tst; then
8560 am__leading_dot=.
8561else
8562 am__leading_dot=_
8563fi
8564rmdir .tst 2>/dev/null
8565AC_SUBST([am__leading_dot])])
8566
8567# Check to see how 'make' treats includes. -*- Autoconf -*-
8568
jimblandy92b1f832009-12-23 22:23:49 +00008569# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
brynercb91a2f2006-08-25 21:14:45 +00008570#
8571# This file is free software; the Free Software Foundation
8572# gives unlimited permission to copy and/or distribute it,
8573# with or without modifications, as long as this notice is preserved.
8574
jimblandy92b1f832009-12-23 22:23:49 +00008575# serial 4
brynercb91a2f2006-08-25 21:14:45 +00008576
8577# AM_MAKE_INCLUDE()
8578# -----------------
8579# Check to see how make treats includes.
8580AC_DEFUN([AM_MAKE_INCLUDE],
8581[am_make=${MAKE-make}
8582cat > confinc << 'END'
8583am__doit:
jimblandy92b1f832009-12-23 22:23:49 +00008584 @echo this is the am__doit target
brynercb91a2f2006-08-25 21:14:45 +00008585.PHONY: am__doit
8586END
8587# If we don't find an include directive, just comment out the code.
8588AC_MSG_CHECKING([for style of include used by $am_make])
8589am__include="#"
8590am__quote=
8591_am_result=none
8592# First try GNU make style include.
8593echo "include confinc" > confmf
jimblandy92b1f832009-12-23 22:23:49 +00008594# Ignore all kinds of additional output from `make'.
8595case `$am_make -s -f confmf 2> /dev/null` in #(
8596*the\ am__doit\ target*)
8597 am__include=include
8598 am__quote=
8599 _am_result=GNU
8600 ;;
8601esac
brynercb91a2f2006-08-25 21:14:45 +00008602# Now try BSD make style include.
8603if test "$am__include" = "#"; then
8604 echo '.include "confinc"' > confmf
jimblandy92b1f832009-12-23 22:23:49 +00008605 case `$am_make -s -f confmf 2> /dev/null` in #(
8606 *the\ am__doit\ target*)
8607 am__include=.include
8608 am__quote="\""
8609 _am_result=BSD
8610 ;;
8611 esac
brynercb91a2f2006-08-25 21:14:45 +00008612fi
8613AC_SUBST([am__include])
8614AC_SUBST([am__quote])
8615AC_MSG_RESULT([$_am_result])
8616rm -f confinc confmf
8617])
8618
8619# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
8620
jimblandy92b1f832009-12-23 22:23:49 +00008621# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
brynercb91a2f2006-08-25 21:14:45 +00008622# Free Software Foundation, Inc.
8623#
8624# This file is free software; the Free Software Foundation
8625# gives unlimited permission to copy and/or distribute it,
8626# with or without modifications, as long as this notice is preserved.
8627
jimblandy92b1f832009-12-23 22:23:49 +00008628# serial 6
brynercb91a2f2006-08-25 21:14:45 +00008629
8630# AM_MISSING_PROG(NAME, PROGRAM)
8631# ------------------------------
8632AC_DEFUN([AM_MISSING_PROG],
8633[AC_REQUIRE([AM_MISSING_HAS_RUN])
8634$1=${$1-"${am_missing_run}$2"}
8635AC_SUBST($1)])
8636
8637
8638# AM_MISSING_HAS_RUN
8639# ------------------
8640# Define MISSING if not defined so far and test if it supports --run.
8641# If it does, set am_missing_run to use it, otherwise, to nothing.
8642AC_DEFUN([AM_MISSING_HAS_RUN],
8643[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
mmentovaiaf3c43f2007-05-17 18:34:37 +00008644AC_REQUIRE_AUX_FILE([missing])dnl
jimblandy92b1f832009-12-23 22:23:49 +00008645if test x"${MISSING+set}" != xset; then
8646 case $am_aux_dir in
8647 *\ * | *\ *)
8648 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
8649 *)
8650 MISSING="\${SHELL} $am_aux_dir/missing" ;;
8651 esac
8652fi
brynercb91a2f2006-08-25 21:14:45 +00008653# Use eval to expand $SHELL
8654if eval "$MISSING --run true"; then
8655 am_missing_run="$MISSING --run "
8656else
8657 am_missing_run=
8658 AC_MSG_WARN([`missing' script is too old or missing])
8659fi
8660])
8661
mmentovaiaf3c43f2007-05-17 18:34:37 +00008662# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
brynercb91a2f2006-08-25 21:14:45 +00008663#
8664# This file is free software; the Free Software Foundation
8665# gives unlimited permission to copy and/or distribute it,
8666# with or without modifications, as long as this notice is preserved.
8667
8668# AM_PROG_MKDIR_P
8669# ---------------
mmentovaiaf3c43f2007-05-17 18:34:37 +00008670# Check for `mkdir -p'.
brynercb91a2f2006-08-25 21:14:45 +00008671AC_DEFUN([AM_PROG_MKDIR_P],
mmentovaiaf3c43f2007-05-17 18:34:37 +00008672[AC_PREREQ([2.60])dnl
8673AC_REQUIRE([AC_PROG_MKDIR_P])dnl
8674dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
8675dnl while keeping a definition of mkdir_p for backward compatibility.
8676dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
8677dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
8678dnl Makefile.ins that do not define MKDIR_P, so we do our own
8679dnl adjustment using top_builddir (which is defined more often than
8680dnl MKDIR_P).
8681AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
8682case $mkdir_p in
8683 [[\\/$]]* | ?:[[\\/]]*) ;;
8684 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
8685esac
8686])
brynercb91a2f2006-08-25 21:14:45 +00008687
8688# Helper functions for option handling. -*- Autoconf -*-
8689
jimblandy92b1f832009-12-23 22:23:49 +00008690# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc.
brynercb91a2f2006-08-25 21:14:45 +00008691#
8692# This file is free software; the Free Software Foundation
8693# gives unlimited permission to copy and/or distribute it,
8694# with or without modifications, as long as this notice is preserved.
8695
jimblandy92b1f832009-12-23 22:23:49 +00008696# serial 4
brynercb91a2f2006-08-25 21:14:45 +00008697
8698# _AM_MANGLE_OPTION(NAME)
8699# -----------------------
8700AC_DEFUN([_AM_MANGLE_OPTION],
8701[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
8702
8703# _AM_SET_OPTION(NAME)
8704# ------------------------------
8705# Set option NAME. Presently that only means defining a flag for this option.
8706AC_DEFUN([_AM_SET_OPTION],
8707[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
8708
8709# _AM_SET_OPTIONS(OPTIONS)
8710# ----------------------------------
8711# OPTIONS is a space-separated list of Automake options.
8712AC_DEFUN([_AM_SET_OPTIONS],
jimblandy92b1f832009-12-23 22:23:49 +00008713[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
brynercb91a2f2006-08-25 21:14:45 +00008714
8715# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
8716# -------------------------------------------
8717# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8718AC_DEFUN([_AM_IF_OPTION],
8719[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
8720
mmentovaidb3342a2006-12-05 22:52:28 +00008721# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
8722#
8723# This file is free software; the Free Software Foundation
8724# gives unlimited permission to copy and/or distribute it,
8725# with or without modifications, as long as this notice is preserved.
8726
8727# AM_RUN_LOG(COMMAND)
8728# -------------------
8729# Run COMMAND, save the exit status in ac_status, and log it.
8730# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
8731AC_DEFUN([AM_RUN_LOG],
8732[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
8733 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
8734 ac_status=$?
8735 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
8736 (exit $ac_status); }])
8737
brynercb91a2f2006-08-25 21:14:45 +00008738# Check to make sure that the build environment is sane. -*- Autoconf -*-
8739
jimblandy92b1f832009-12-23 22:23:49 +00008740# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
brynercb91a2f2006-08-25 21:14:45 +00008741# Free Software Foundation, Inc.
8742#
8743# This file is free software; the Free Software Foundation
8744# gives unlimited permission to copy and/or distribute it,
8745# with or without modifications, as long as this notice is preserved.
8746
jimblandy92b1f832009-12-23 22:23:49 +00008747# serial 5
brynercb91a2f2006-08-25 21:14:45 +00008748
8749# AM_SANITY_CHECK
8750# ---------------
8751AC_DEFUN([AM_SANITY_CHECK],
8752[AC_MSG_CHECKING([whether build environment is sane])
8753# Just in case
8754sleep 1
8755echo timestamp > conftest.file
jimblandy92b1f832009-12-23 22:23:49 +00008756# Reject unsafe characters in $srcdir or the absolute working directory
8757# name. Accept space and tab only in the latter.
8758am_lf='
8759'
8760case `pwd` in
8761 *[[\\\"\#\$\&\'\`$am_lf]]*)
8762 AC_MSG_ERROR([unsafe absolute working directory name]);;
8763esac
8764case $srcdir in
8765 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
8766 AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
8767esac
8768
brynercb91a2f2006-08-25 21:14:45 +00008769# Do `set' in a subshell so we don't clobber the current shell's
8770# arguments. Must try -L first in case configure is actually a
8771# symlink; some systems play weird games with the mod time of symlinks
8772# (eg FreeBSD returns the mod time of the symlink's containing
8773# directory).
8774if (
jimblandy92b1f832009-12-23 22:23:49 +00008775 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
brynercb91a2f2006-08-25 21:14:45 +00008776 if test "$[*]" = "X"; then
8777 # -L didn't work.
jimblandy92b1f832009-12-23 22:23:49 +00008778 set X `ls -t "$srcdir/configure" conftest.file`
brynercb91a2f2006-08-25 21:14:45 +00008779 fi
8780 rm -f conftest.file
8781 if test "$[*]" != "X $srcdir/configure conftest.file" \
8782 && test "$[*]" != "X conftest.file $srcdir/configure"; then
8783
8784 # If neither matched, then we have a broken ls. This can happen
8785 # if, for instance, CONFIG_SHELL is bash and it inherits a
8786 # broken ls alias from the environment. This has actually
8787 # happened. Such a system could not be considered "sane".
8788 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
8789alias in your environment])
8790 fi
8791
8792 test "$[2]" = conftest.file
8793 )
8794then
8795 # Ok.
8796 :
8797else
8798 AC_MSG_ERROR([newly created file is older than distributed files!
8799Check your system clock])
8800fi
8801AC_MSG_RESULT(yes)])
8802
8803# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
8804#
8805# This file is free software; the Free Software Foundation
8806# gives unlimited permission to copy and/or distribute it,
8807# with or without modifications, as long as this notice is preserved.
8808
8809# AM_PROG_INSTALL_STRIP
8810# ---------------------
8811# One issue with vendor `install' (even GNU) is that you can't
8812# specify the program used to strip binaries. This is especially
8813# annoying in cross-compiling environments, where the build's strip
8814# is unlikely to handle the host's binaries.
8815# Fortunately install-sh will honor a STRIPPROG variable, so we
8816# always use install-sh in `make install-strip', and initialize
8817# STRIPPROG with the value of the STRIP variable (set by the user).
8818AC_DEFUN([AM_PROG_INSTALL_STRIP],
8819[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
8820# Installed binaries are usually stripped using `strip' when the user
8821# run `make install-strip'. However `strip' might not be the right
8822# tool to use in cross-compilation environments, therefore Automake
8823# will honor the `STRIP' environment variable to overrule this program.
8824dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
8825if test "$cross_compiling" != no; then
8826 AC_CHECK_TOOL([STRIP], [strip], :)
8827fi
mmentovaiaf3c43f2007-05-17 18:34:37 +00008828INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
brynercb91a2f2006-08-25 21:14:45 +00008829AC_SUBST([INSTALL_STRIP_PROGRAM])])
8830
jimblandy92b1f832009-12-23 22:23:49 +00008831# Copyright (C) 2006, 2008 Free Software Foundation, Inc.
mmentovaiaf3c43f2007-05-17 18:34:37 +00008832#
8833# This file is free software; the Free Software Foundation
8834# gives unlimited permission to copy and/or distribute it,
8835# with or without modifications, as long as this notice is preserved.
8836
jimblandy92b1f832009-12-23 22:23:49 +00008837# serial 2
8838
mmentovaiaf3c43f2007-05-17 18:34:37 +00008839# _AM_SUBST_NOTMAKE(VARIABLE)
8840# ---------------------------
jimblandy92b1f832009-12-23 22:23:49 +00008841# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
mmentovaiaf3c43f2007-05-17 18:34:37 +00008842# This macro is traced by Automake.
8843AC_DEFUN([_AM_SUBST_NOTMAKE])
8844
jimblandy92b1f832009-12-23 22:23:49 +00008845# AM_SUBST_NOTMAKE(VARIABLE)
8846# ---------------------------
8847# Public sister of _AM_SUBST_NOTMAKE.
8848AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
8849
brynercb91a2f2006-08-25 21:14:45 +00008850# Check how to create a tarball. -*- Autoconf -*-
8851
8852# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
8853#
8854# This file is free software; the Free Software Foundation
8855# gives unlimited permission to copy and/or distribute it,
8856# with or without modifications, as long as this notice is preserved.
8857
8858# serial 2
8859
8860# _AM_PROG_TAR(FORMAT)
8861# --------------------
8862# Check how to create a tarball in format FORMAT.
8863# FORMAT should be one of `v7', `ustar', or `pax'.
8864#
8865# Substitute a variable $(am__tar) that is a command
8866# writing to stdout a FORMAT-tarball containing the directory
8867# $tardir.
8868# tardir=directory && $(am__tar) > result.tar
8869#
8870# Substitute a variable $(am__untar) that extract such
8871# a tarball read from stdin.
8872# $(am__untar) < result.tar
8873AC_DEFUN([_AM_PROG_TAR],
8874[# Always define AMTAR for backward compatibility.
8875AM_MISSING_PROG([AMTAR], [tar])
8876m4_if([$1], [v7],
8877 [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
8878 [m4_case([$1], [ustar],, [pax],,
8879 [m4_fatal([Unknown tar format])])
8880AC_MSG_CHECKING([how to create a $1 tar archive])
8881# Loop over all known methods to create a tar archive until one works.
8882_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
8883_am_tools=${am_cv_prog_tar_$1-$_am_tools}
8884# Do not fold the above two line into one, because Tru64 sh and
8885# Solaris sh will not grok spaces in the rhs of `-'.
8886for _am_tool in $_am_tools
8887do
8888 case $_am_tool in
8889 gnutar)
8890 for _am_tar in tar gnutar gtar;
8891 do
8892 AM_RUN_LOG([$_am_tar --version]) && break
8893 done
8894 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
8895 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
8896 am__untar="$_am_tar -xf -"
8897 ;;
8898 plaintar)
8899 # Must skip GNU tar: if it does not support --format= it doesn't create
8900 # ustar tarball either.
8901 (tar --version) >/dev/null 2>&1 && continue
8902 am__tar='tar chf - "$$tardir"'
8903 am__tar_='tar chf - "$tardir"'
8904 am__untar='tar xf -'
8905 ;;
8906 pax)
8907 am__tar='pax -L -x $1 -w "$$tardir"'
8908 am__tar_='pax -L -x $1 -w "$tardir"'
8909 am__untar='pax -r'
8910 ;;
8911 cpio)
8912 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
8913 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
8914 am__untar='cpio -i -H $1 -d'
8915 ;;
8916 none)
8917 am__tar=false
8918 am__tar_=false
8919 am__untar=false
8920 ;;
8921 esac
8922
8923 # If the value was cached, stop now. We just wanted to have am__tar
8924 # and am__untar set.
8925 test -n "${am_cv_prog_tar_$1}" && break
8926
8927 # tar/untar a dummy directory, and stop if the command works
8928 rm -rf conftest.dir
8929 mkdir conftest.dir
8930 echo GrepMe > conftest.dir/file
8931 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
8932 rm -rf conftest.dir
8933 if test -s conftest.tar; then
8934 AM_RUN_LOG([$am__untar <conftest.tar])
8935 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
8936 fi
8937done
8938rm -rf conftest.dir
8939
8940AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
8941AC_MSG_RESULT([$am_cv_prog_tar_$1])])
8942AC_SUBST([am__tar])
8943AC_SUBST([am__untar])
8944]) # _AM_PROG_TAR
8945