blob: 8e5151ebade66b84b1d559b404751a05d7670e37 [file] [log] [blame]
vapier6acb2cf2009-01-28 04:46:28 +00001# generated automatically by aclocal 1.10.2 -*- Autoconf -*-
drh71eb93e2001-09-28 01:34:43 +00002
vapier7f19c022007-02-17 14:46:31 +00003# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
mlcreech636a9952008-05-05 22:52:56 +00004# 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
a.rottmann62507b62003-03-24 09:40:34 +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.
drh71eb93e2001-09-28 01:34:43 +00008
a.rottmann62507b62003-03-24 09:40:34 +00009# 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.
drh71eb93e2001-09-28 01:34:43 +000013
a.rottmann9bc8b932004-02-29 15:18:31 +000014# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
mlcreech636a9952008-05-05 22:52:56 +000015#
16# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
17# 2006, 2007, 2008 Free Software Foundation, Inc.
18# Written by Gordon Matzigkeit, 1996
19#
20# This file is free software; the Free Software Foundation gives
21# unlimited permission to copy and/or distribute it, with or without
22# modifications, as long as this notice is preserved.
drh71eb93e2001-09-28 01:34:43 +000023
mlcreech636a9952008-05-05 22:52:56 +000024m4_define([_LT_COPYING], [dnl
25# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
26# 2006, 2007, 2008 Free Software Foundation, Inc.
27# Written by Gordon Matzigkeit, 1996
28#
29# This file is part of GNU Libtool.
30#
31# GNU Libtool is free software; you can redistribute it and/or
32# modify it under the terms of the GNU General Public License as
33# published by the Free Software Foundation; either version 2 of
34# the License, or (at your option) any later version.
35#
36# As a special exception to the GNU General Public License,
37# if you distribute this file as part of a program or library that
38# is built using GNU Libtool, you may include this file under the
39# same distribution terms that you use for the rest of that program.
40#
41# GNU Libtool is distributed in the hope that it will be useful,
42# but WITHOUT ANY WARRANTY; without even the implied warranty of
43# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
44# GNU General Public License for more details.
45#
46# You should have received a copy of the GNU General Public License
47# along with GNU Libtool; see the file COPYING. If not, a copy
48# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
49# obtained by writing to the Free Software Foundation, Inc.,
50# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
51])
52
53# serial 56 LT_INIT
drh71eb93e2001-09-28 01:34:43 +000054
a.rottmann9bc8b932004-02-29 15:18:31 +000055
mlcreech636a9952008-05-05 22:52:56 +000056# LT_PREREQ(VERSION)
57# ------------------
58# Complain and exit if this libtool version is less that VERSION.
59m4_defun([LT_PREREQ],
60[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
61 [m4_default([$3],
62 [m4_fatal([Libtool version $1 or higher is required],
63 63)])],
64 [$2])])
a.rottmann9bc8b932004-02-29 15:18:31 +000065
66
mlcreech636a9952008-05-05 22:52:56 +000067# _LT_CHECK_BUILDDIR
68# ------------------
69# Complain if the absolute build directory name contains unusual characters
70m4_defun([_LT_CHECK_BUILDDIR],
71[case `pwd` in
72 *\ * | *\ *)
73 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
74esac
75])
a.rottmann9bc8b932004-02-29 15:18:31 +000076
77
mlcreech636a9952008-05-05 22:52:56 +000078# LT_INIT([OPTIONS])
79# ------------------
80AC_DEFUN([LT_INIT],
81[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
82AC_BEFORE([$0], [LT_LANG])dnl
83AC_BEFORE([$0], [LT_OUTPUT])dnl
84AC_BEFORE([$0], [LTDL_INIT])dnl
85m4_require([_LT_CHECK_BUILDDIR])dnl
86
87dnl Autoconf doesn't catch unexpanded LT_ macros by default:
88m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
89m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
90dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
91dnl unless we require an AC_DEFUNed macro:
92AC_REQUIRE([LTOPTIONS_VERSION])dnl
93AC_REQUIRE([LTSUGAR_VERSION])dnl
94AC_REQUIRE([LTVERSION_VERSION])dnl
95AC_REQUIRE([LTOBSOLETE_VERSION])dnl
96m4_require([_LT_PROG_LTMAIN])dnl
97
98dnl Parse OPTIONS
99_LT_SET_OPTIONS([$0], [$1])
drh71eb93e2001-09-28 01:34:43 +0000100
101# This can be used to rebuild libtool when needed
mlcreech636a9952008-05-05 22:52:56 +0000102LIBTOOL_DEPS="$ltmain"
drh71eb93e2001-09-28 01:34:43 +0000103
104# Always use our own libtool.
105LIBTOOL='$(SHELL) $(top_builddir)/libtool'
106AC_SUBST(LIBTOOL)dnl
107
mlcreech636a9952008-05-05 22:52:56 +0000108_LT_SETUP
109
110# Only expand once:
111m4_define([LT_INIT])
112])# LT_INIT
113
114# Old names:
115AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
116AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
117dnl aclocal-1.4 backwards compatibility:
118dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
119dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
drh71eb93e2001-09-28 01:34:43 +0000120
a.rottmann9bc8b932004-02-29 15:18:31 +0000121
mlcreech636a9952008-05-05 22:52:56 +0000122# _LT_CC_BASENAME(CC)
123# -------------------
124# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
125m4_defun([_LT_CC_BASENAME],
126[for cc_temp in $1""; do
127 case $cc_temp in
128 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
129 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
130 \-*) ;;
131 *) break;;
132 esac
133done
134cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
135])
136
137
138# _LT_FILEUTILS_DEFAULTS
139# ----------------------
140# It is okay to use these file commands and assume they have been set
141# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
142m4_defun([_LT_FILEUTILS_DEFAULTS],
143[: ${CP="cp -f"}
144: ${MV="mv -f"}
145: ${RM="rm -f"}
146])# _LT_FILEUTILS_DEFAULTS
147
148
149# _LT_SETUP
150# ---------
151m4_defun([_LT_SETUP],
152[AC_REQUIRE([AC_CANONICAL_HOST])dnl
drh71eb93e2001-09-28 01:34:43 +0000153AC_REQUIRE([AC_CANONICAL_BUILD])dnl
mlcreech636a9952008-05-05 22:52:56 +0000154_LT_DECL([], [host_alias], [0], [The host system])dnl
155_LT_DECL([], [host], [0])dnl
156_LT_DECL([], [host_os], [0])dnl
drh71eb93e2001-09-28 01:34:43 +0000157dnl
mlcreech636a9952008-05-05 22:52:56 +0000158_LT_DECL([], [build_alias], [0], [The build system])dnl
159_LT_DECL([], [build], [0])dnl
160_LT_DECL([], [build_os], [0])dnl
161dnl
162AC_REQUIRE([AC_PROG_CC])dnl
163AC_REQUIRE([LT_PATH_LD])dnl
164AC_REQUIRE([LT_PATH_NM])dnl
165dnl
166AC_REQUIRE([AC_PROG_LN_S])dnl
167test -z "$LN_S" && LN_S="ln -s"
168_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
169dnl
170AC_REQUIRE([LT_CMD_MAX_LEN])dnl
171_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
172_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
173dnl
174m4_require([_LT_FILEUTILS_DEFAULTS])dnl
175m4_require([_LT_CHECK_SHELL_FEATURES])dnl
176m4_require([_LT_CMD_RELOAD])dnl
177m4_require([_LT_CHECK_MAGIC_METHOD])dnl
178m4_require([_LT_CMD_OLD_ARCHIVE])dnl
179m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
drh71eb93e2001-09-28 01:34:43 +0000180
mlcreech636a9952008-05-05 22:52:56 +0000181_LT_CONFIG_LIBTOOL_INIT([
182# See if we are running on zsh, and set the options which allow our
183# commands through without removal of \ escapes INIT.
184if test -n "\${ZSH_VERSION+set}" ; then
185 setopt NO_GLOB_SUBST
186fi
187])
188if test -n "${ZSH_VERSION+set}" ; then
189 setopt NO_GLOB_SUBST
190fi
a.rottmann9bc8b932004-02-29 15:18:31 +0000191
mlcreech636a9952008-05-05 22:52:56 +0000192_LT_CHECK_OBJDIR
193
194m4_require([_LT_TAG_COMPILER])dnl
195_LT_PROG_ECHO_BACKSLASH
a.rottmann9bc8b932004-02-29 15:18:31 +0000196
197case $host_os in
198aix3*)
199 # AIX sometimes has problems with the GCC collect2 program. For some
200 # reason, if we set the COLLECT_NAMES environment variable, the problems
201 # vanish in a puff of smoke.
202 if test "X${COLLECT_NAMES+set}" != Xset; then
203 COLLECT_NAMES=
204 export COLLECT_NAMES
205 fi
206 ;;
207esac
208
209# Sed substitution that helps us do robust quoting. It backslashifies
210# metacharacters that are still active within double-quoted strings.
mlcreech636a9952008-05-05 22:52:56 +0000211sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
a.rottmann9bc8b932004-02-29 15:18:31 +0000212
213# Same as above, but do not quote variable references.
mlcreech636a9952008-05-05 22:52:56 +0000214double_quote_subst='s/\([["`\\]]\)/\\\1/g'
a.rottmann9bc8b932004-02-29 15:18:31 +0000215
216# Sed substitution to delay expansion of an escaped shell variable in a
217# double_quote_subst'ed string.
218delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
219
mlcreech636a9952008-05-05 22:52:56 +0000220# Sed substitution to delay expansion of an escaped single quote.
221delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
222
a.rottmann9bc8b932004-02-29 15:18:31 +0000223# Sed substitution to avoid accidental globbing in evaled expressions
224no_glob_subst='s/\*/\\\*/g'
225
a.rottmann9bc8b932004-02-29 15:18:31 +0000226# Global variables:
mlcreech636a9952008-05-05 22:52:56 +0000227ofile=libtool
a.rottmann9bc8b932004-02-29 15:18:31 +0000228can_build_shared=yes
229
vapier7f19c022007-02-17 14:46:31 +0000230# All known linkers require a `.a' archive for static linking (except MSVC,
a.rottmann9bc8b932004-02-29 15:18:31 +0000231# which needs '.lib').
232libext=a
a.rottmann9bc8b932004-02-29 15:18:31 +0000233
mlcreech636a9952008-05-05 22:52:56 +0000234with_gnu_ld="$lt_cv_prog_gnu_ld"
a.rottmann9bc8b932004-02-29 15:18:31 +0000235
236old_CC="$CC"
237old_CFLAGS="$CFLAGS"
238
239# Set sane defaults for various variables
a.rottmann9bc8b932004-02-29 15:18:31 +0000240test -z "$CC" && CC=cc
241test -z "$LTCC" && LTCC=$CC
vapier7f19c022007-02-17 14:46:31 +0000242test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
a.rottmann9bc8b932004-02-29 15:18:31 +0000243test -z "$LD" && LD=ld
a.rottmann9bc8b932004-02-29 15:18:31 +0000244test -z "$ac_objext" && ac_objext=o
245
vapier7f19c022007-02-17 14:46:31 +0000246_LT_CC_BASENAME([$compiler])
247
drh71eb93e2001-09-28 01:34:43 +0000248# Only perform the check for file, if the check method requires it
mlcreech636a9952008-05-05 22:52:56 +0000249test -z "$MAGIC_CMD" && MAGIC_CMD=file
drh71eb93e2001-09-28 01:34:43 +0000250case $deplibs_check_method in
251file_magic*)
252 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
mlcreech636a9952008-05-05 22:52:56 +0000253 _LT_PATH_MAGIC
drh71eb93e2001-09-28 01:34:43 +0000254 fi
255 ;;
256esac
257
a.rottmann9bc8b932004-02-29 15:18:31 +0000258# Use C for the default configuration in the libtool script
mlcreech636a9952008-05-05 22:52:56 +0000259LT_SUPPORTED_TAG([CC])
260_LT_LANG_C_CONFIG
261_LT_LANG_DEFAULT_CONFIG
262_LT_CONFIG_COMMANDS
263])# _LT_SETUP
drh71eb93e2001-09-28 01:34:43 +0000264
265
mlcreech636a9952008-05-05 22:52:56 +0000266# _LT_PROG_LTMAIN
267# ---------------
268# Note that this code is called both from `configure', and `config.status'
269# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
270# `config.status' has no value for ac_aux_dir unless we are using Automake,
271# so we pass a copy along to make sure it has a sensible value anyway.
272m4_defun([_LT_PROG_LTMAIN],
273[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
274_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
275ltmain="$ac_aux_dir/ltmain.sh"
276])# _LT_PROG_LTMAIN
vapier7f19c022007-02-17 14:46:31 +0000277
mlcreech636a9952008-05-05 22:52:56 +0000278
279
280# So that we can recreate a full libtool script including additional
281# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
282# in macros and then make a single call at the end using the `libtool'
283# label.
284
285
286# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
287# ----------------------------------------
288# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
289m4_define([_LT_CONFIG_LIBTOOL_INIT],
290[m4_ifval([$1],
291 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
292 [$1
293])])])
294
295# Initialize.
296m4_define([_LT_OUTPUT_LIBTOOL_INIT])
297
298
299# _LT_CONFIG_LIBTOOL([COMMANDS])
300# ------------------------------
301# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
302m4_define([_LT_CONFIG_LIBTOOL],
303[m4_ifval([$1],
304 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
305 [$1
306])])])
307
308# Initialize.
309m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
310
311
312# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
313# -----------------------------------------------------
314m4_defun([_LT_CONFIG_SAVE_COMMANDS],
315[_LT_CONFIG_LIBTOOL([$1])
316_LT_CONFIG_LIBTOOL_INIT([$2])
vapier7f19c022007-02-17 14:46:31 +0000317])
vapier7f19c022007-02-17 14:46:31 +0000318
vapier7f19c022007-02-17 14:46:31 +0000319
mlcreech636a9952008-05-05 22:52:56 +0000320# _LT_FORMAT_COMMENT([COMMENT])
321# -----------------------------
322# Add leading comment marks to the start of each line, and a trailing
323# full-stop to the whole comment if one is not present already.
324m4_define([_LT_FORMAT_COMMENT],
325[m4_ifval([$1], [
326m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
327 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
328)])
vapier7f19c022007-02-17 14:46:31 +0000329
vapier7f19c022007-02-17 14:46:31 +0000330
mlcreech636a9952008-05-05 22:52:56 +0000331
332
333
334# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
335# -------------------------------------------------------------------
336# CONFIGNAME is the name given to the value in the libtool script.
337# VARNAME is the (base) name used in the configure script.
338# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
339# VARNAME. Any other value will be used directly.
340m4_define([_LT_DECL],
341[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
342 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
343 [m4_ifval([$1], [$1], [$2])])
344 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
345 m4_ifval([$4],
346 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
347 lt_dict_add_subkey([lt_decl_dict], [$2],
348 [tagged?], [m4_ifval([$5], [yes], [no])])])
vapier7f19c022007-02-17 14:46:31 +0000349])
vapier7f19c022007-02-17 14:46:31 +0000350
351
mlcreech636a9952008-05-05 22:52:56 +0000352# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
353# --------------------------------------------------------
354m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
355
356
357# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
358# ------------------------------------------------
359m4_define([lt_decl_tag_varnames],
360[_lt_decl_filter([tagged?], [yes], $@)])
361
362
363# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
364# ---------------------------------------------------------
365m4_define([_lt_decl_filter],
366[m4_case([$#],
367 [0], [m4_fatal([$0: too few arguments: $#])],
368 [1], [m4_fatal([$0: too few arguments: $#: $1])],
369 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
370 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
371 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
372])
373
374
375# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
376# --------------------------------------------------
377m4_define([lt_decl_quote_varnames],
378[_lt_decl_filter([value], [1], $@)])
379
380
381# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
382# ---------------------------------------------------
383m4_define([lt_decl_dquote_varnames],
384[_lt_decl_filter([value], [2], $@)])
385
386
387# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
388# ---------------------------------------------------
389m4_define([lt_decl_varnames_tagged],
vapier6acb2cf2009-01-28 04:46:28 +0000390[m4_assert([$# <= 2])dnl
391_$0(m4_quote(m4_default([$1], [[, ]])),
392 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
393 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
394m4_define([_lt_decl_varnames_tagged],
395[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
mlcreech636a9952008-05-05 22:52:56 +0000396
397
398# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
399# ------------------------------------------------
400m4_define([lt_decl_all_varnames],
401[_$0(m4_quote(m4_default([$1], [[, ]])),
402 m4_if([$2], [],
403 m4_quote(lt_decl_varnames),
404 m4_quote(m4_shift($@))))[]dnl
405])
406m4_define([_lt_decl_all_varnames],
407[lt_join($@, lt_decl_varnames_tagged([$1],
408 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
409])
410
411
412# _LT_CONFIG_STATUS_DECLARE([VARNAME])
413# ------------------------------------
414# Quote a variable value, and forward it to `config.status' so that its
415# declaration there will have the same value as in `configure'. VARNAME
416# must have a single quote delimited value for this to work.
417m4_define([_LT_CONFIG_STATUS_DECLARE],
418[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
419
420
421# _LT_CONFIG_STATUS_DECLARATIONS
422# ------------------------------
423# We delimit libtool config variables with single quotes, so when
424# we write them to config.status, we have to be sure to quote all
425# embedded single quotes properly. In configure, this macro expands
426# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
427#
428# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
429m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
430[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
431 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
432
433
434# _LT_LIBTOOL_TAGS
435# ----------------
436# Output comment and list of tags supported by the script
437m4_defun([_LT_LIBTOOL_TAGS],
438[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
439available_tags="_LT_TAGS"dnl
440])
441
442
443# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
444# -----------------------------------
445# Extract the dictionary values for VARNAME (optionally with TAG) and
446# expand to a commented shell variable setting:
447#
448# # Some comment about what VAR is for.
449# visible_name=$lt_internal_name
450m4_define([_LT_LIBTOOL_DECLARE],
451[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
452 [description])))[]dnl
453m4_pushdef([_libtool_name],
454 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
455m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
456 [0], [_libtool_name=[$]$1],
457 [1], [_libtool_name=$lt_[]$1],
458 [2], [_libtool_name=$lt_[]$1],
459 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
460m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
461])
462
463
464# _LT_LIBTOOL_CONFIG_VARS
465# -----------------------
466# Produce commented declarations of non-tagged libtool config variables
467# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
468# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
469# section) are produced by _LT_LIBTOOL_TAG_VARS.
470m4_defun([_LT_LIBTOOL_CONFIG_VARS],
471[m4_foreach([_lt_var],
472 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
473 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
474
475
476# _LT_LIBTOOL_TAG_VARS(TAG)
477# -------------------------
478m4_define([_LT_LIBTOOL_TAG_VARS],
479[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
480 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
481
482
483# _LT_TAGVAR(VARNAME, [TAGNAME])
484# ------------------------------
485m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
486
487
488# _LT_CONFIG_COMMANDS
a.rottmann9bc8b932004-02-29 15:18:31 +0000489# -------------------
mlcreech636a9952008-05-05 22:52:56 +0000490# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
491# variables for single and double quote escaping we saved from calls
492# to _LT_DECL, we can put quote escaped variables declarations
493# into `config.status', and then the shell code to quote escape them in
494# for loops in `config.status'. Finally, any additional code accumulated
495# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
496m4_defun([_LT_CONFIG_COMMANDS],
497[AC_PROVIDE_IFELSE([LT_OUTPUT],
498 dnl If the libtool generation code has been placed in $CONFIG_LT,
499 dnl instead of duplicating it all over again into config.status,
500 dnl then we will have config.status run $CONFIG_LT later, so it
501 dnl needs to know what name is stored there:
502 [AC_CONFIG_COMMANDS([libtool],
503 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
504 dnl If the libtool generation code is destined for config.status,
505 dnl expand the accumulated commands and init code now:
506 [AC_CONFIG_COMMANDS([libtool],
507 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
508])#_LT_CONFIG_COMMANDS
509
510
511# Initialize.
512m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
513[
514
515# The HP-UX ksh and POSIX shell print the target directory to stdout
516# if CDPATH is set.
517(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
518
519sed_quote_subst='$sed_quote_subst'
520double_quote_subst='$double_quote_subst'
521delay_variable_subst='$delay_variable_subst'
522_LT_CONFIG_STATUS_DECLARATIONS
523LTCC='$LTCC'
524LTCFLAGS='$LTCFLAGS'
525compiler='$compiler_DEFAULT'
526
527# Quote evaled strings.
528for var in lt_decl_all_varnames([[ \
529]], lt_decl_quote_varnames); do
530 case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
531 *[[\\\\\\\`\\"\\\$]]*)
532 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
533 ;;
534 *)
535 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
536 ;;
537 esac
538done
539
540# Double-quote double-evaled strings.
541for var in lt_decl_all_varnames([[ \
542]], lt_decl_dquote_varnames); do
543 case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
544 *[[\\\\\\\`\\"\\\$]]*)
545 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
546 ;;
547 *)
548 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
549 ;;
550 esac
551done
552
553# Fix-up fallback echo if it was mangled by the above quoting rules.
554case \$lt_ECHO in
555*'\\\[$]0 --fallback-echo"')dnl "
556 lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
557 ;;
558esac
559
560_LT_OUTPUT_LIBTOOL_INIT
561])
562
563
564# LT_OUTPUT
565# ---------
566# This macro allows early generation of the libtool script (before
567# AC_OUTPUT is called), incase it is used in configure for compilation
568# tests.
569AC_DEFUN([LT_OUTPUT],
570[: ${CONFIG_LT=./config.lt}
571AC_MSG_NOTICE([creating $CONFIG_LT])
572cat >"$CONFIG_LT" <<_LTEOF
573#! $SHELL
574# Generated by $as_me.
575# Run this file to recreate a libtool stub with the current configuration.
576
577lt_cl_silent=false
578SHELL=\${CONFIG_SHELL-$SHELL}
579_LTEOF
580
581cat >>"$CONFIG_LT" <<\_LTEOF
582AS_SHELL_SANITIZE
583_AS_PREPARE
584
585exec AS_MESSAGE_FD>&1
586exec AS_MESSAGE_LOG_FD>>config.log
587{
588 echo
589 AS_BOX([Running $as_me.])
590} >&AS_MESSAGE_LOG_FD
591
592lt_cl_help="\
593\`$as_me' creates a local libtool stub from the current configuration,
594for use in further configure time tests before the real libtool is
595generated.
596
597Usage: $[0] [[OPTIONS]]
598
599 -h, --help print this help, then exit
600 -V, --version print version number, then exit
601 -q, --quiet do not print progress messages
602 -d, --debug don't remove temporary files
603
604Report bugs to <bug-libtool@gnu.org>."
605
606lt_cl_version="\
607m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
608m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
609configured by $[0], generated by m4_PACKAGE_STRING.
610
611Copyright (C) 2008 Free Software Foundation, Inc.
612This config.lt script is free software; the Free Software Foundation
613gives unlimited permision to copy, distribute and modify it."
614
615while test $[#] != 0
616do
617 case $[1] in
618 --version | --v* | -V )
619 echo "$lt_cl_version"; exit 0 ;;
620 --help | --h* | -h )
621 echo "$lt_cl_help"; exit 0 ;;
622 --debug | --d* | -d )
623 debug=: ;;
624 --quiet | --q* | --silent | --s* | -q )
625 lt_cl_silent=: ;;
626
627 -*) AC_MSG_ERROR([unrecognized option: $[1]
628Try \`$[0] --help' for more information.]) ;;
629
630 *) AC_MSG_ERROR([unrecognized argument: $[1]
631Try \`$[0] --help' for more information.]) ;;
632 esac
633 shift
634done
635
636if $lt_cl_silent; then
637 exec AS_MESSAGE_FD>/dev/null
638fi
639_LTEOF
640
641cat >>"$CONFIG_LT" <<_LTEOF
642_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
643_LTEOF
644
645cat >>"$CONFIG_LT" <<\_LTEOF
646AC_MSG_NOTICE([creating $ofile])
647_LT_OUTPUT_LIBTOOL_COMMANDS
648AS_EXIT(0)
649_LTEOF
650chmod +x "$CONFIG_LT"
651
652# configure is writing to config.log, but config.lt does its own redirection,
653# appending to config.log, which fails on DOS, as config.log is still kept
654# open by configure. Here we exec the FD to /dev/null, effectively closing
655# config.log, so it can be properly (re)opened and appended to by config.lt.
656if test "$no_create" != yes; then
657 lt_cl_success=:
658 test "$silent" = yes &&
659 lt_config_lt_args="$lt_config_lt_args --quiet"
660 exec AS_MESSAGE_LOG_FD>/dev/null
661 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
662 exec AS_MESSAGE_LOG_FD>>config.log
663 $lt_cl_success || AS_EXIT(1)
664fi
665])# LT_OUTPUT
666
667
668# _LT_CONFIG(TAG)
669# ---------------
670# If TAG is the built-in tag, create an initial libtool script with a
671# default configuration from the untagged config vars. Otherwise add code
672# to config.status for appending the configuration named by TAG from the
673# matching tagged config vars.
674m4_defun([_LT_CONFIG],
675[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
676_LT_CONFIG_SAVE_COMMANDS([
677 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
678 m4_if(_LT_TAG, [C], [
679 # See if we are running on zsh, and set the options which allow our
680 # commands through without removal of \ escapes.
681 if test -n "${ZSH_VERSION+set}" ; then
682 setopt NO_GLOB_SUBST
683 fi
684
685 cfgfile="${ofile}T"
686 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
687 $RM "$cfgfile"
688
689 cat <<_LT_EOF >> "$cfgfile"
690#! $SHELL
691
692# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
693# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
694# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
695# NOTE: Changes made to this file will be lost: look at ltmain.sh.
696#
697_LT_COPYING
698_LT_LIBTOOL_TAGS
699
700# ### BEGIN LIBTOOL CONFIG
701_LT_LIBTOOL_CONFIG_VARS
702_LT_LIBTOOL_TAG_VARS
703# ### END LIBTOOL CONFIG
704
705_LT_EOF
706
707 case $host_os in
708 aix3*)
709 cat <<\_LT_EOF >> "$cfgfile"
710# AIX sometimes has problems with the GCC collect2 program. For some
711# reason, if we set the COLLECT_NAMES environment variable, the problems
712# vanish in a puff of smoke.
713if test "X${COLLECT_NAMES+set}" != Xset; then
714 COLLECT_NAMES=
715 export COLLECT_NAMES
716fi
717_LT_EOF
718 ;;
719 esac
720
721 _LT_PROG_LTMAIN
722
723 # We use sed instead of cat because bash on DJGPP gets confused if
724 # if finds mixed CR/LF and LF-only lines. Since sed operates in
725 # text mode, it properly converts lines to CR/LF. This bash problem
726 # is reportedly fixed, but why not run on old versions too?
727 sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
728 || (rm -f "$cfgfile"; exit 1)
729
730 _LT_PROG_XSI_SHELLFNS
731
732 sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
733 || (rm -f "$cfgfile"; exit 1)
734
735 mv -f "$cfgfile" "$ofile" ||
736 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
737 chmod +x "$ofile"
738],
739[cat <<_LT_EOF >> "$ofile"
740
741dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
742dnl in a comment (ie after a #).
743# ### BEGIN LIBTOOL TAG CONFIG: $1
744_LT_LIBTOOL_TAG_VARS(_LT_TAG)
745# ### END LIBTOOL TAG CONFIG: $1
746_LT_EOF
747])dnl /m4_if
748],
749[m4_if([$1], [], [
750 PACKAGE='$PACKAGE'
751 VERSION='$VERSION'
752 TIMESTAMP='$TIMESTAMP'
753 RM='$RM'
754 ofile='$ofile'], [])
755])dnl /_LT_CONFIG_SAVE_COMMANDS
756])# _LT_CONFIG
757
758
759# LT_SUPPORTED_TAG(TAG)
760# ---------------------
761# Trace this macro to discover what tags are supported by the libtool
762# --tag option, using:
763# autoconf --trace 'LT_SUPPORTED_TAG:$1'
764AC_DEFUN([LT_SUPPORTED_TAG], [])
765
766
767# C support is built-in for now
768m4_define([_LT_LANG_C_enabled], [])
769m4_define([_LT_TAGS], [])
770
771
772# LT_LANG(LANG)
773# -------------
774# Enable libtool support for the given language if not already enabled.
775AC_DEFUN([LT_LANG],
776[AC_BEFORE([$0], [LT_OUTPUT])dnl
777m4_case([$1],
778 [C], [_LT_LANG(C)],
779 [C++], [_LT_LANG(CXX)],
780 [Java], [_LT_LANG(GCJ)],
781 [Fortran 77], [_LT_LANG(F77)],
782 [Fortran], [_LT_LANG(FC)],
783 [Windows Resource], [_LT_LANG(RC)],
784 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
785 [_LT_LANG($1)],
786 [m4_fatal([$0: unsupported language: "$1"])])])dnl
787])# LT_LANG
788
789
790# _LT_LANG(LANGNAME)
791# ------------------
792m4_defun([_LT_LANG],
793[m4_ifdef([_LT_LANG_]$1[_enabled], [],
794 [LT_SUPPORTED_TAG([$1])dnl
795 m4_append([_LT_TAGS], [$1 ])dnl
796 m4_define([_LT_LANG_]$1[_enabled], [])dnl
797 _LT_LANG_$1_CONFIG($1)])dnl
798])# _LT_LANG
799
800
801# _LT_LANG_DEFAULT_CONFIG
802# -----------------------
803m4_defun([_LT_LANG_DEFAULT_CONFIG],
804[AC_PROVIDE_IFELSE([AC_PROG_CXX],
805 [LT_LANG(CXX)],
806 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
807
808AC_PROVIDE_IFELSE([AC_PROG_F77],
809 [LT_LANG(F77)],
810 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
811
812AC_PROVIDE_IFELSE([AC_PROG_FC],
813 [LT_LANG(FC)],
814 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
815
816dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
817dnl pulling things in needlessly.
818AC_PROVIDE_IFELSE([AC_PROG_GCJ],
819 [LT_LANG(GCJ)],
820 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
821 [LT_LANG(GCJ)],
822 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
823 [LT_LANG(GCJ)],
824 [m4_ifdef([AC_PROG_GCJ],
825 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
826 m4_ifdef([A][M_PROG_GCJ],
827 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
828 m4_ifdef([LT_PROG_GCJ],
829 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
830
831AC_PROVIDE_IFELSE([LT_PROG_RC],
832 [LT_LANG(RC)],
833 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
834])# _LT_LANG_DEFAULT_CONFIG
835
836# Obsolete macros:
837AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
838AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
839AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
840AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
841dnl aclocal-1.4 backwards compatibility:
842dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
843dnl AC_DEFUN([AC_LIBTOOL_F77], [])
844dnl AC_DEFUN([AC_LIBTOOL_FC], [])
845dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
846
847
848# _LT_TAG_COMPILER
849# ----------------
850m4_defun([_LT_TAG_COMPILER],
a.rottmann9bc8b932004-02-29 15:18:31 +0000851[AC_REQUIRE([AC_PROG_CC])dnl
drh71eb93e2001-09-28 01:34:43 +0000852
mlcreech636a9952008-05-05 22:52:56 +0000853_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
854_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
855_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
856_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
857
a.rottmann9bc8b932004-02-29 15:18:31 +0000858# If no C compiler was specified, use CC.
859LTCC=${LTCC-"$CC"}
drh71eb93e2001-09-28 01:34:43 +0000860
vapier7f19c022007-02-17 14:46:31 +0000861# If no C compiler flags were specified, use CFLAGS.
862LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
863
a.rottmann9bc8b932004-02-29 15:18:31 +0000864# Allow CC to be a program name with arguments.
865compiler=$CC
mlcreech636a9952008-05-05 22:52:56 +0000866])# _LT_TAG_COMPILER
vapier7f19c022007-02-17 14:46:31 +0000867
868
869# _LT_COMPILER_BOILERPLATE
870# ------------------------
871# Check for compiler boilerplate output or warnings with
872# the simple compiler test code.
mlcreech636a9952008-05-05 22:52:56 +0000873m4_defun([_LT_COMPILER_BOILERPLATE],
874[m4_require([_LT_DECL_SED])dnl
875ac_outfile=conftest.$ac_objext
876echo "$lt_simple_compile_test_code" >conftest.$ac_ext
vapier7f19c022007-02-17 14:46:31 +0000877eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
878_lt_compiler_boilerplate=`cat conftest.err`
mlcreech636a9952008-05-05 22:52:56 +0000879$RM conftest*
vapier7f19c022007-02-17 14:46:31 +0000880])# _LT_COMPILER_BOILERPLATE
881
882
883# _LT_LINKER_BOILERPLATE
884# ----------------------
885# Check for linker boilerplate output or warnings with
886# the simple link test code.
mlcreech636a9952008-05-05 22:52:56 +0000887m4_defun([_LT_LINKER_BOILERPLATE],
888[m4_require([_LT_DECL_SED])dnl
889ac_outfile=conftest.$ac_objext
890echo "$lt_simple_link_test_code" >conftest.$ac_ext
vapier7f19c022007-02-17 14:46:31 +0000891eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
892_lt_linker_boilerplate=`cat conftest.err`
mlcreech636a9952008-05-05 22:52:56 +0000893$RM -r conftest*
vapier7f19c022007-02-17 14:46:31 +0000894])# _LT_LINKER_BOILERPLATE
895
mlcreech636a9952008-05-05 22:52:56 +0000896# _LT_REQUIRED_DARWIN_CHECKS
897# -------------------------
898m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
899 case $host_os in
900 rhapsody* | darwin*)
901 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
902 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
903 AC_CHECK_TOOL([LIPO], [lipo], [:])
904 AC_CHECK_TOOL([OTOOL], [otool], [:])
905 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
906 _LT_DECL([], [DSYMUTIL], [1],
907 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
908 _LT_DECL([], [NMEDIT], [1],
909 [Tool to change global to local symbols on Mac OS X])
910 _LT_DECL([], [LIPO], [1],
911 [Tool to manipulate fat objects and archives on Mac OS X])
912 _LT_DECL([], [OTOOL], [1],
913 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
914 _LT_DECL([], [OTOOL64], [1],
915 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
vapier7f19c022007-02-17 14:46:31 +0000916
mlcreech636a9952008-05-05 22:52:56 +0000917 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
918 [lt_cv_apple_cc_single_mod=no
919 if test -z "${LT_MULTI_MODULE}"; then
920 # By default we will add the -single_module flag. You can override
921 # by either setting the environment variable LT_MULTI_MODULE
922 # non-empty at configure time, or by adding -multi_module to the
923 # link flags.
924 rm -rf libconftest.dylib*
925 echo "int foo(void){return 1;}" > conftest.c
926 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
927-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
928 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
929 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
930 _lt_result=$?
931 if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
932 lt_cv_apple_cc_single_mod=yes
933 else
934 cat conftest.err >&AS_MESSAGE_LOG_FD
935 fi
936 rm -rf libconftest.dylib*
937 rm -f conftest.*
938 fi])
939 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
940 [lt_cv_ld_exported_symbols_list],
941 [lt_cv_ld_exported_symbols_list=no
942 save_LDFLAGS=$LDFLAGS
943 echo "_main" > conftest.sym
944 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
945 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
946 [lt_cv_ld_exported_symbols_list=yes],
947 [lt_cv_ld_exported_symbols_list=no])
948 LDFLAGS="$save_LDFLAGS"
949 ])
950 case $host_os in
951 rhapsody* | darwin1.[[012]])
952 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
953 darwin1.*)
954 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
vapier6acb2cf2009-01-28 04:46:28 +0000955 darwin*) # darwin 5.x on
mlcreech636a9952008-05-05 22:52:56 +0000956 # if running on 10.5 or later, the deployment target defaults
957 # to the OS version, if on x86, and 10.4, the deployment
vapier6acb2cf2009-01-28 04:46:28 +0000958 # target defaults to 10.4. Don't you love it?
mlcreech636a9952008-05-05 22:52:56 +0000959 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
960 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
961 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
962 10.[[012]]*)
963 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
964 10.*)
965 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
966 esac
967 ;;
968 esac
969 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
970 _lt_dar_single_mod='$single_module'
971 fi
972 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
973 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
974 else
975 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
976 fi
977 if test "$DSYMUTIL" != ":"; then
978 _lt_dsymutil='~$DSYMUTIL $lib || :'
979 else
980 _lt_dsymutil=
981 fi
982 ;;
983 esac
984])
985
986
987# _LT_DARWIN_LINKER_FEATURES
988# --------------------------
989# Checks for linker and compiler features on darwin
990m4_defun([_LT_DARWIN_LINKER_FEATURES],
991[
992 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
993 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
994 _LT_TAGVAR(hardcode_direct, $1)=no
995 _LT_TAGVAR(hardcode_automatic, $1)=yes
996 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
997 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
998 _LT_TAGVAR(link_all_deplibs, $1)=yes
999 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
vapier6acb2cf2009-01-28 04:46:28 +00001000 case $cc_basename in
1001 ifort*) _lt_dar_can_shared=yes ;;
1002 *) _lt_dar_can_shared=$GCC ;;
1003 esac
1004 if test "$_lt_dar_can_shared" = "yes"; then
mlcreech636a9952008-05-05 22:52:56 +00001005 output_verbose_link_cmd=echo
1006 _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}"
1007 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1008 _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}"
1009 _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}"
1010 m4_if([$1], [CXX],
1011[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1012 _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}"
1013 _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}"
1014 fi
1015],[])
1016 else
1017 _LT_TAGVAR(ld_shlibs, $1)=no
1018 fi
1019])
1020
1021# _LT_SYS_MODULE_PATH_AIX
1022# -----------------------
a.rottmann9bc8b932004-02-29 15:18:31 +00001023# Links a minimal program and checks the executable
1024# for the system default hardcoded library path. In most cases,
1025# this is /usr/lib:/lib, but when the MPI compilers are used
1026# the location of the communication and MPI libs are included too.
1027# If we don't find anything, use the default library path according
1028# to the aix ld manual.
mlcreech636a9952008-05-05 22:52:56 +00001029m4_defun([_LT_SYS_MODULE_PATH_AIX],
1030[m4_require([_LT_DECL_SED])dnl
1031AC_LINK_IFELSE(AC_LANG_PROGRAM,[
1032lt_aix_libpath_sed='
1033 /Import File Strings/,/^$/ {
1034 /^0/ {
1035 s/^0 *\(.*\)$/\1/
1036 p
1037 }
1038 }'
1039aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
a.rottmann9bc8b932004-02-29 15:18:31 +00001040# Check for a 64-bit object if we didn't find anything.
mlcreech636a9952008-05-05 22:52:56 +00001041if test -z "$aix_libpath"; then
1042 aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1043fi],[])
a.rottmann9bc8b932004-02-29 15:18:31 +00001044if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
mlcreech636a9952008-05-05 22:52:56 +00001045])# _LT_SYS_MODULE_PATH_AIX
drh71eb93e2001-09-28 01:34:43 +00001046
a.rottmann62507b62003-03-24 09:40:34 +00001047
mlcreech636a9952008-05-05 22:52:56 +00001048# _LT_SHELL_INIT(ARG)
1049# -------------------
1050m4_define([_LT_SHELL_INIT],
a.rottmann9bc8b932004-02-29 15:18:31 +00001051[ifdef([AC_DIVERSION_NOTICE],
1052 [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
1053 [AC_DIVERT_PUSH(NOTICE)])
1054$1
1055AC_DIVERT_POP
mlcreech636a9952008-05-05 22:52:56 +00001056])# _LT_SHELL_INIT
a.rottmann62507b62003-03-24 09:40:34 +00001057
drh71eb93e2001-09-28 01:34:43 +00001058
mlcreech636a9952008-05-05 22:52:56 +00001059# _LT_PROG_ECHO_BACKSLASH
1060# -----------------------
drh71eb93e2001-09-28 01:34:43 +00001061# Add some code to the start of the generated configure script which
1062# will find an echo command which doesn't interpret backslashes.
mlcreech636a9952008-05-05 22:52:56 +00001063m4_defun([_LT_PROG_ECHO_BACKSLASH],
1064[_LT_SHELL_INIT([
drh71eb93e2001-09-28 01:34:43 +00001065# Check that we are running under the correct shell.
1066SHELL=${CONFIG_SHELL-/bin/sh}
1067
mlcreech636a9952008-05-05 22:52:56 +00001068case X$lt_ECHO in
drh71eb93e2001-09-28 01:34:43 +00001069X*--fallback-echo)
1070 # Remove one level of quotation (which was required for Make).
mlcreech636a9952008-05-05 22:52:56 +00001071 ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
drh71eb93e2001-09-28 01:34:43 +00001072 ;;
1073esac
1074
mlcreech636a9952008-05-05 22:52:56 +00001075ECHO=${lt_ECHO-echo}
drh71eb93e2001-09-28 01:34:43 +00001076if test "X[$]1" = X--no-reexec; then
1077 # Discard the --no-reexec flag, and continue.
1078 shift
1079elif test "X[$]1" = X--fallback-echo; then
1080 # Avoid inline document here, it may be left over
1081 :
mlcreech636a9952008-05-05 22:52:56 +00001082elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
1083 # Yippee, $ECHO works!
drh71eb93e2001-09-28 01:34:43 +00001084 :
1085else
1086 # Restart under the correct shell.
1087 exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
1088fi
1089
1090if test "X[$]1" = X--fallback-echo; then
1091 # used as fallback echo
1092 shift
mlcreech636a9952008-05-05 22:52:56 +00001093 cat <<_LT_EOF
a.rottmann9bc8b932004-02-29 15:18:31 +00001094[$]*
mlcreech636a9952008-05-05 22:52:56 +00001095_LT_EOF
drh71eb93e2001-09-28 01:34:43 +00001096 exit 0
1097fi
1098
1099# The HP-UX ksh and POSIX shell print the target directory to stdout
1100# if CDPATH is set.
vapier7f19c022007-02-17 14:46:31 +00001101(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
drh71eb93e2001-09-28 01:34:43 +00001102
mlcreech636a9952008-05-05 22:52:56 +00001103if test -z "$lt_ECHO"; then
1104 if test "X${echo_test_string+set}" != Xset; then
1105 # find a string as large as possible, as long as the shell can cope with it
1106 for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
1107 # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
1108 if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
1109 { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
1110 then
1111 break
1112 fi
1113 done
1114 fi
drh71eb93e2001-09-28 01:34:43 +00001115
mlcreech636a9952008-05-05 22:52:56 +00001116 if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1117 echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1118 test "X$echo_testing_string" = "X$echo_test_string"; then
1119 :
1120 else
1121 # The Solaris, AIX, and Digital Unix default echo programs unquote
1122 # backslashes. This makes it impossible to quote backslashes using
1123 # echo "$something" | sed 's/\\/\\\\/g'
1124 #
1125 # So, first we look for a working echo in the user's PATH.
drh71eb93e2001-09-28 01:34:43 +00001126
mlcreech636a9952008-05-05 22:52:56 +00001127 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
1128 for dir in $PATH /usr/ucb; do
1129 IFS="$lt_save_ifs"
1130 if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
1131 test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
1132 echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
1133 test "X$echo_testing_string" = "X$echo_test_string"; then
1134 ECHO="$dir/echo"
1135 break
1136 fi
1137 done
a.rottmann9bc8b932004-02-29 15:18:31 +00001138 IFS="$lt_save_ifs"
drh71eb93e2001-09-28 01:34:43 +00001139
mlcreech636a9952008-05-05 22:52:56 +00001140 if test "X$ECHO" = Xecho; then
1141 # We didn't find a better echo, so look for alternatives.
1142 if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
1143 echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
1144 test "X$echo_testing_string" = "X$echo_test_string"; then
1145 # This shell has a builtin print -r that does the trick.
1146 ECHO='print -r'
1147 elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
1148 test "X$CONFIG_SHELL" != X/bin/ksh; then
1149 # If we have ksh, try running configure again with it.
1150 ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
1151 export ORIGINAL_CONFIG_SHELL
1152 CONFIG_SHELL=/bin/ksh
1153 export CONFIG_SHELL
1154 exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
drh71eb93e2001-09-28 01:34:43 +00001155 else
mlcreech636a9952008-05-05 22:52:56 +00001156 # Try using printf.
1157 ECHO='printf %s\n'
1158 if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1159 echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1160 test "X$echo_testing_string" = "X$echo_test_string"; then
1161 # Cool, printf works
1162 :
1163 elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1164 test "X$echo_testing_string" = 'X\t' &&
1165 echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1166 test "X$echo_testing_string" = "X$echo_test_string"; then
1167 CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
1168 export CONFIG_SHELL
1169 SHELL="$CONFIG_SHELL"
1170 export SHELL
1171 ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1172 elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1173 test "X$echo_testing_string" = 'X\t' &&
1174 echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1175 test "X$echo_testing_string" = "X$echo_test_string"; then
1176 ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1177 else
1178 # maybe with a smaller string...
1179 prev=:
drh71eb93e2001-09-28 01:34:43 +00001180
mlcreech636a9952008-05-05 22:52:56 +00001181 for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
1182 if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
1183 then
1184 break
1185 fi
1186 prev="$cmd"
1187 done
1188
1189 if test "$prev" != 'sed 50q "[$]0"'; then
1190 echo_test_string=`eval $prev`
1191 export echo_test_string
1192 exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
1193 else
1194 # Oops. We lost completely, so just stick with echo.
1195 ECHO=echo
drh71eb93e2001-09-28 01:34:43 +00001196 fi
mlcreech636a9952008-05-05 22:52:56 +00001197 fi
drh71eb93e2001-09-28 01:34:43 +00001198 fi
1199 fi
1200 fi
1201fi
drh71eb93e2001-09-28 01:34:43 +00001202
1203# Copy echo and quote the copy suitably for passing to libtool from
1204# the Makefile, instead of quoting the original, which is used later.
mlcreech636a9952008-05-05 22:52:56 +00001205lt_ECHO=$ECHO
1206if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
1207 lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
drh71eb93e2001-09-28 01:34:43 +00001208fi
1209
mlcreech636a9952008-05-05 22:52:56 +00001210AC_SUBST(lt_ECHO)
1211])
1212_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1213_LT_DECL([], [ECHO], [1],
1214 [An echo program that does not interpret backslashes])
1215])# _LT_PROG_ECHO_BACKSLASH
a.rottmann9bc8b932004-02-29 15:18:31 +00001216
1217
mlcreech636a9952008-05-05 22:52:56 +00001218# _LT_ENABLE_LOCK
1219# ---------------
1220m4_defun([_LT_ENABLE_LOCK],
a.rottmann9bc8b932004-02-29 15:18:31 +00001221[AC_ARG_ENABLE([libtool-lock],
mlcreech636a9952008-05-05 22:52:56 +00001222 [AS_HELP_STRING([--disable-libtool-lock],
1223 [avoid locking (might break parallel builds)])])
a.rottmann9bc8b932004-02-29 15:18:31 +00001224test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1225
1226# Some flags need to be propagated to the compiler or linker for good
1227# libtool support.
1228case $host in
1229ia64-*-hpux*)
1230 # Find out which ABI we are using.
1231 echo 'int i;' > conftest.$ac_ext
1232 if AC_TRY_EVAL(ac_compile); then
1233 case `/usr/bin/file conftest.$ac_objext` in
mlcreech636a9952008-05-05 22:52:56 +00001234 *ELF-32*)
1235 HPUX_IA64_MODE="32"
1236 ;;
1237 *ELF-64*)
1238 HPUX_IA64_MODE="64"
1239 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00001240 esac
1241 fi
1242 rm -rf conftest*
1243 ;;
1244*-*-irix6*)
1245 # Find out which ABI we are using.
1246 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
1247 if AC_TRY_EVAL(ac_compile); then
mlcreech636a9952008-05-05 22:52:56 +00001248 if test "$lt_cv_prog_gnu_ld" = yes; then
1249 case `/usr/bin/file conftest.$ac_objext` in
1250 *32-bit*)
1251 LD="${LD-ld} -melf32bsmip"
1252 ;;
1253 *N32*)
1254 LD="${LD-ld} -melf32bmipn32"
1255 ;;
1256 *64-bit*)
1257 LD="${LD-ld} -melf64bmip"
1258 ;;
1259 esac
1260 else
1261 case `/usr/bin/file conftest.$ac_objext` in
1262 *32-bit*)
1263 LD="${LD-ld} -32"
1264 ;;
1265 *N32*)
1266 LD="${LD-ld} -n32"
1267 ;;
1268 *64-bit*)
1269 LD="${LD-ld} -64"
1270 ;;
1271 esac
1272 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00001273 fi
1274 rm -rf conftest*
1275 ;;
1276
mlcreech636a9952008-05-05 22:52:56 +00001277x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1278s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
a.rottmann9bc8b932004-02-29 15:18:31 +00001279 # Find out which ABI we are using.
1280 echo 'int i;' > conftest.$ac_ext
1281 if AC_TRY_EVAL(ac_compile); then
vapier7f19c022007-02-17 14:46:31 +00001282 case `/usr/bin/file conftest.o` in
mlcreech636a9952008-05-05 22:52:56 +00001283 *32-bit*)
1284 case $host in
1285 x86_64-*kfreebsd*-gnu)
1286 LD="${LD-ld} -m elf_i386_fbsd"
1287 ;;
1288 x86_64-*linux*)
1289 LD="${LD-ld} -m elf_i386"
1290 ;;
1291 ppc64-*linux*|powerpc64-*linux*)
1292 LD="${LD-ld} -m elf32ppclinux"
1293 ;;
1294 s390x-*linux*)
1295 LD="${LD-ld} -m elf_s390"
1296 ;;
1297 sparc64-*linux*)
1298 LD="${LD-ld} -m elf32_sparc"
1299 ;;
1300 esac
1301 ;;
1302 *64-bit*)
1303 case $host in
1304 x86_64-*kfreebsd*-gnu)
1305 LD="${LD-ld} -m elf_x86_64_fbsd"
1306 ;;
1307 x86_64-*linux*)
1308 LD="${LD-ld} -m elf_x86_64"
1309 ;;
1310 ppc*-*linux*|powerpc*-*linux*)
1311 LD="${LD-ld} -m elf64ppc"
1312 ;;
1313 s390*-*linux*|s390*-*tpf*)
1314 LD="${LD-ld} -m elf64_s390"
1315 ;;
1316 sparc*-*linux*)
1317 LD="${LD-ld} -m elf64_sparc"
1318 ;;
1319 esac
1320 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00001321 esac
1322 fi
1323 rm -rf conftest*
1324 ;;
1325
1326*-*-sco3.2v5*)
1327 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1328 SAVE_CFLAGS="$CFLAGS"
1329 CFLAGS="$CFLAGS -belf"
1330 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1331 [AC_LANG_PUSH(C)
mlcreech636a9952008-05-05 22:52:56 +00001332 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
a.rottmann9bc8b932004-02-29 15:18:31 +00001333 AC_LANG_POP])
1334 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1335 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1336 CFLAGS="$SAVE_CFLAGS"
1337 fi
1338 ;;
vapier7f19c022007-02-17 14:46:31 +00001339sparc*-*solaris*)
1340 # Find out which ABI we are using.
1341 echo 'int i;' > conftest.$ac_ext
1342 if AC_TRY_EVAL(ac_compile); then
1343 case `/usr/bin/file conftest.o` in
1344 *64-bit*)
1345 case $lt_cv_prog_gnu_ld in
1346 yes*) LD="${LD-ld} -m elf64_sparc" ;;
mlcreech636a9952008-05-05 22:52:56 +00001347 *)
1348 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1349 LD="${LD-ld} -64"
1350 fi
1351 ;;
vapier7f19c022007-02-17 14:46:31 +00001352 esac
1353 ;;
1354 esac
1355 fi
1356 rm -rf conftest*
1357 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00001358esac
1359
1360need_locks="$enable_libtool_lock"
mlcreech636a9952008-05-05 22:52:56 +00001361])# _LT_ENABLE_LOCK
a.rottmann9bc8b932004-02-29 15:18:31 +00001362
1363
mlcreech636a9952008-05-05 22:52:56 +00001364# _LT_CMD_OLD_ARCHIVE
1365# -------------------
1366m4_defun([_LT_CMD_OLD_ARCHIVE],
1367[AC_CHECK_TOOL(AR, ar, false)
1368test -z "$AR" && AR=ar
1369test -z "$AR_FLAGS" && AR_FLAGS=cru
1370_LT_DECL([], [AR], [1], [The archiver])
1371_LT_DECL([], [AR_FLAGS], [1])
1372
1373AC_CHECK_TOOL(STRIP, strip, :)
1374test -z "$STRIP" && STRIP=:
1375_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1376
1377AC_CHECK_TOOL(RANLIB, ranlib, :)
1378test -z "$RANLIB" && RANLIB=:
1379_LT_DECL([], [RANLIB], [1],
1380 [Commands used to install an old-style archive])
1381
1382# Determine commands to create old-style static archives.
1383old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1384old_postinstall_cmds='chmod 644 $oldlib'
1385old_postuninstall_cmds=
1386
1387if test -n "$RANLIB"; then
1388 case $host_os in
1389 openbsd*)
1390 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
1391 ;;
1392 *)
1393 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
1394 ;;
1395 esac
1396 old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1397fi
1398_LT_DECL([], [old_postinstall_cmds], [2])
1399_LT_DECL([], [old_postuninstall_cmds], [2])
1400_LT_TAGDECL([], [old_archive_cmds], [2],
1401 [Commands used to build an old-style archive])
1402])# _LT_CMD_OLD_ARCHIVE
1403
1404
1405# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
a.rottmann9bc8b932004-02-29 15:18:31 +00001406# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1407# ----------------------------------------------------------------
1408# Check whether the given compiler option works
mlcreech636a9952008-05-05 22:52:56 +00001409AC_DEFUN([_LT_COMPILER_OPTION],
1410[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1411m4_require([_LT_DECL_SED])dnl
a.rottmann9bc8b932004-02-29 15:18:31 +00001412AC_CACHE_CHECK([$1], [$2],
1413 [$2=no
mlcreech636a9952008-05-05 22:52:56 +00001414 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1415 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
a.rottmann9bc8b932004-02-29 15:18:31 +00001416 lt_compiler_flag="$3"
1417 # Insert the option either (1) after the last *FLAGS variable, or
1418 # (2) before a word containing "conftest.", or (3) at the end.
1419 # Note that $ac_compile itself does not contain backslashes and begins
1420 # with a dollar sign (not a hyphen), so the echo should work correctly.
1421 # The option is referenced via a variable to avoid confusing sed.
1422 lt_compile=`echo "$ac_compile" | $SED \
vapier7f19c022007-02-17 14:46:31 +00001423 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
a.rottmann9bc8b932004-02-29 15:18:31 +00001424 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1425 -e 's:$: $lt_compiler_flag:'`
1426 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1427 (eval "$lt_compile" 2>conftest.err)
1428 ac_status=$?
1429 cat conftest.err >&AS_MESSAGE_LOG_FD
1430 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1431 if (exit $ac_status) && test -s "$ac_outfile"; then
1432 # The compiler can only warn and ignore the option if not recognized
vapier7f19c022007-02-17 14:46:31 +00001433 # So say no if there are warnings other than the usual output.
mlcreech636a9952008-05-05 22:52:56 +00001434 $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
vapier7f19c022007-02-17 14:46:31 +00001435 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1436 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
a.rottmann9bc8b932004-02-29 15:18:31 +00001437 $2=yes
1438 fi
1439 fi
mlcreech636a9952008-05-05 22:52:56 +00001440 $RM conftest*
a.rottmann9bc8b932004-02-29 15:18:31 +00001441])
1442
1443if test x"[$]$2" = xyes; then
mlcreech636a9952008-05-05 22:52:56 +00001444 m4_if([$5], , :, [$5])
a.rottmann9bc8b932004-02-29 15:18:31 +00001445else
mlcreech636a9952008-05-05 22:52:56 +00001446 m4_if([$6], , :, [$6])
a.rottmann9bc8b932004-02-29 15:18:31 +00001447fi
mlcreech636a9952008-05-05 22:52:56 +00001448])# _LT_COMPILER_OPTION
1449
1450# Old name:
1451AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1452dnl aclocal-1.4 backwards compatibility:
1453dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
a.rottmann9bc8b932004-02-29 15:18:31 +00001454
1455
mlcreech636a9952008-05-05 22:52:56 +00001456# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1457# [ACTION-SUCCESS], [ACTION-FAILURE])
1458# ----------------------------------------------------
1459# Check whether the given linker option works
1460AC_DEFUN([_LT_LINKER_OPTION],
1461[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1462m4_require([_LT_DECL_SED])dnl
1463AC_CACHE_CHECK([$1], [$2],
a.rottmann9bc8b932004-02-29 15:18:31 +00001464 [$2=no
1465 save_LDFLAGS="$LDFLAGS"
1466 LDFLAGS="$LDFLAGS $3"
mlcreech636a9952008-05-05 22:52:56 +00001467 echo "$lt_simple_link_test_code" > conftest.$ac_ext
a.rottmann9bc8b932004-02-29 15:18:31 +00001468 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
vapier7f19c022007-02-17 14:46:31 +00001469 # The linker can only warn and ignore the option if not recognized
a.rottmann9bc8b932004-02-29 15:18:31 +00001470 # So say no if there are warnings
1471 if test -s conftest.err; then
1472 # Append any errors to the config.log.
1473 cat conftest.err 1>&AS_MESSAGE_LOG_FD
mlcreech636a9952008-05-05 22:52:56 +00001474 $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
vapier7f19c022007-02-17 14:46:31 +00001475 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1476 if diff conftest.exp conftest.er2 >/dev/null; then
1477 $2=yes
1478 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00001479 else
1480 $2=yes
1481 fi
1482 fi
mlcreech636a9952008-05-05 22:52:56 +00001483 $RM -r conftest*
a.rottmann9bc8b932004-02-29 15:18:31 +00001484 LDFLAGS="$save_LDFLAGS"
1485])
1486
1487if test x"[$]$2" = xyes; then
mlcreech636a9952008-05-05 22:52:56 +00001488 m4_if([$4], , :, [$4])
a.rottmann9bc8b932004-02-29 15:18:31 +00001489else
mlcreech636a9952008-05-05 22:52:56 +00001490 m4_if([$5], , :, [$5])
a.rottmann9bc8b932004-02-29 15:18:31 +00001491fi
mlcreech636a9952008-05-05 22:52:56 +00001492])# _LT_LINKER_OPTION
1493
1494# Old name:
1495AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1496dnl aclocal-1.4 backwards compatibility:
1497dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
a.rottmann9bc8b932004-02-29 15:18:31 +00001498
1499
mlcreech636a9952008-05-05 22:52:56 +00001500# LT_CMD_MAX_LEN
1501#---------------
1502AC_DEFUN([LT_CMD_MAX_LEN],
1503[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1504# find the maximum length of command line arguments
a.rottmann9bc8b932004-02-29 15:18:31 +00001505AC_MSG_CHECKING([the maximum length of command line arguments])
1506AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1507 i=0
vapier7f19c022007-02-17 14:46:31 +00001508 teststring="ABCD"
a.rottmann9bc8b932004-02-29 15:18:31 +00001509
1510 case $build_os in
1511 msdosdjgpp*)
1512 # On DJGPP, this test can blow up pretty badly due to problems in libc
1513 # (any single argument exceeding 2000 bytes causes a buffer overrun
1514 # during glob expansion). Even if it were fixed, the result of this
1515 # check would be larger than it should be.
1516 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1517 ;;
1518
1519 gnu*)
1520 # Under GNU Hurd, this test is not required because there is
1521 # no limit to the length of command line arguments.
1522 # Libtool will interpret -1 as no limit whatsoever
1523 lt_cv_sys_max_cmd_len=-1;
1524 ;;
1525
vapier6acb2cf2009-01-28 04:46:28 +00001526 cygwin* | mingw* | cegcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00001527 # On Win9x/ME, this test blows up -- it succeeds, but takes
1528 # about 5 minutes as the teststring grows exponentially.
1529 # Worse, since 9x/ME are not pre-emptively multitasking,
1530 # you end up with a "frozen" computer, even though with patience
1531 # the test eventually succeeds (with a max line length of 256k).
1532 # Instead, let's just punt: use the minimum linelength reported by
1533 # all of the supported platforms: 8192 (on NT/2K/XP).
1534 lt_cv_sys_max_cmd_len=8192;
1535 ;;
1536
1537 amigaos*)
1538 # On AmigaOS with pdksh, this test takes hours, literally.
1539 # So we just punt and use a minimum line length of 8192.
1540 lt_cv_sys_max_cmd_len=8192;
1541 ;;
1542
vapier7f19c022007-02-17 14:46:31 +00001543 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1544 # This has been around since 386BSD, at least. Likely further.
1545 if test -x /sbin/sysctl; then
1546 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1547 elif test -x /usr/sbin/sysctl; then
1548 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1549 else
1550 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1551 fi
1552 # And add a safety zone
1553 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1554 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1555 ;;
1556
1557 interix*)
1558 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1559 lt_cv_sys_max_cmd_len=196608
1560 ;;
1561
1562 osf*)
1563 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1564 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1565 # nice to cause kernel panics so lets avoid the loop below.
1566 # First set a reasonable default.
1567 lt_cv_sys_max_cmd_len=16384
1568 #
1569 if test -x /sbin/sysconfig; then
1570 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1571 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1572 esac
1573 fi
1574 ;;
1575 sco3.2v5*)
1576 lt_cv_sys_max_cmd_len=102400
1577 ;;
1578 sysv5* | sco5v6* | sysv4.2uw2*)
1579 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1580 if test -n "$kargmax"; then
mlcreech636a9952008-05-05 22:52:56 +00001581 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
vapier7f19c022007-02-17 14:46:31 +00001582 else
1583 lt_cv_sys_max_cmd_len=32768
1584 fi
1585 ;;
1586 *)
mlcreech636a9952008-05-05 22:52:56 +00001587 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1588 if test -n "$lt_cv_sys_max_cmd_len"; then
1589 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1590 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1591 else
1592 # Make teststring a little bigger before we do anything with it.
1593 # a 1K string should be a reasonable start.
1594 for i in 1 2 3 4 5 6 7 8 ; do
1595 teststring=$teststring$teststring
1596 done
1597 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1598 # If test is not a shell built-in, we'll probably end up computing a
1599 # maximum length that is only half of the actual maximum length, but
1600 # we can't tell.
1601 while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
1602 = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
1603 test $i != 17 # 1/2 MB should be enough
1604 do
1605 i=`expr $i + 1`
1606 teststring=$teststring$teststring
1607 done
1608 # Only check the string length outside the loop.
1609 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1610 teststring=
1611 # Add a significant safety factor because C++ compilers can tack on
1612 # massive amounts of additional arguments before passing them to the
1613 # linker. It appears as though 1/2 is a usable value.
1614 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1615 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00001616 ;;
1617 esac
1618])
1619if test -n $lt_cv_sys_max_cmd_len ; then
1620 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1621else
1622 AC_MSG_RESULT(none)
1623fi
mlcreech636a9952008-05-05 22:52:56 +00001624max_cmd_len=$lt_cv_sys_max_cmd_len
1625_LT_DECL([], [max_cmd_len], [0],
1626 [What is the maximum length of a command?])
1627])# LT_CMD_MAX_LEN
1628
1629# Old name:
1630AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1631dnl aclocal-1.4 backwards compatibility:
1632dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
a.rottmann9bc8b932004-02-29 15:18:31 +00001633
1634
mlcreech636a9952008-05-05 22:52:56 +00001635# _LT_HEADER_DLFCN
1636# ----------------
1637m4_defun([_LT_HEADER_DLFCN],
1638[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1639])# _LT_HEADER_DLFCN
a.rottmann9bc8b932004-02-29 15:18:31 +00001640
drh71eb93e2001-09-28 01:34:43 +00001641
mlcreech636a9952008-05-05 22:52:56 +00001642# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1643# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1644# ----------------------------------------------------------------
1645m4_defun([_LT_TRY_DLOPEN_SELF],
1646[m4_require([_LT_HEADER_DLFCN])dnl
a.rottmann9bc8b932004-02-29 15:18:31 +00001647if test "$cross_compiling" = yes; then :
drh71eb93e2001-09-28 01:34:43 +00001648 [$4]
1649else
1650 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1651 lt_status=$lt_dlunknown
mlcreech636a9952008-05-05 22:52:56 +00001652 cat > conftest.$ac_ext <<_LT_EOF
drh71eb93e2001-09-28 01:34:43 +00001653[#line __oline__ "configure"
1654#include "confdefs.h"
1655
1656#if HAVE_DLFCN_H
1657#include <dlfcn.h>
1658#endif
1659
1660#include <stdio.h>
1661
1662#ifdef RTLD_GLOBAL
1663# define LT_DLGLOBAL RTLD_GLOBAL
1664#else
1665# ifdef DL_GLOBAL
1666# define LT_DLGLOBAL DL_GLOBAL
1667# else
1668# define LT_DLGLOBAL 0
1669# endif
1670#endif
1671
1672/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1673 find out it does not work in some platform. */
1674#ifndef LT_DLLAZY_OR_NOW
1675# ifdef RTLD_LAZY
1676# define LT_DLLAZY_OR_NOW RTLD_LAZY
1677# else
1678# ifdef DL_LAZY
1679# define LT_DLLAZY_OR_NOW DL_LAZY
1680# else
1681# ifdef RTLD_NOW
1682# define LT_DLLAZY_OR_NOW RTLD_NOW
1683# else
1684# ifdef DL_NOW
1685# define LT_DLLAZY_OR_NOW DL_NOW
1686# else
1687# define LT_DLLAZY_OR_NOW 0
1688# endif
1689# endif
1690# endif
1691# endif
1692#endif
1693
drh71eb93e2001-09-28 01:34:43 +00001694void fnord() { int i=42;}
1695int main ()
1696{
1697 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1698 int status = $lt_dlunknown;
1699
1700 if (self)
1701 {
1702 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1703 else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1704 /* dlclose (self); */
1705 }
vapier7f19c022007-02-17 14:46:31 +00001706 else
1707 puts (dlerror ());
drh71eb93e2001-09-28 01:34:43 +00001708
vapier6acb2cf2009-01-28 04:46:28 +00001709 return status;
drh71eb93e2001-09-28 01:34:43 +00001710}]
mlcreech636a9952008-05-05 22:52:56 +00001711_LT_EOF
drh71eb93e2001-09-28 01:34:43 +00001712 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
vapier7f19c022007-02-17 14:46:31 +00001713 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
drh71eb93e2001-09-28 01:34:43 +00001714 lt_status=$?
1715 case x$lt_status in
1716 x$lt_dlno_uscore) $1 ;;
1717 x$lt_dlneed_uscore) $2 ;;
vapier7f19c022007-02-17 14:46:31 +00001718 x$lt_dlunknown|x*) $3 ;;
drh71eb93e2001-09-28 01:34:43 +00001719 esac
1720 else :
1721 # compilation failed
1722 $3
1723 fi
1724fi
1725rm -fr conftest*
mlcreech636a9952008-05-05 22:52:56 +00001726])# _LT_TRY_DLOPEN_SELF
drh71eb93e2001-09-28 01:34:43 +00001727
a.rottmann9bc8b932004-02-29 15:18:31 +00001728
mlcreech636a9952008-05-05 22:52:56 +00001729# LT_SYS_DLOPEN_SELF
1730# ------------------
1731AC_DEFUN([LT_SYS_DLOPEN_SELF],
1732[m4_require([_LT_HEADER_DLFCN])dnl
a.rottmann9bc8b932004-02-29 15:18:31 +00001733if test "x$enable_dlopen" != xyes; then
drh71eb93e2001-09-28 01:34:43 +00001734 enable_dlopen=unknown
1735 enable_dlopen_self=unknown
1736 enable_dlopen_self_static=unknown
1737else
1738 lt_cv_dlopen=no
1739 lt_cv_dlopen_libs=
1740
1741 case $host_os in
1742 beos*)
1743 lt_cv_dlopen="load_add_on"
1744 lt_cv_dlopen_libs=
1745 lt_cv_dlopen_self=yes
1746 ;;
1747
vapier6acb2cf2009-01-28 04:46:28 +00001748 mingw* | pw32* | cegcc*)
drh71eb93e2001-09-28 01:34:43 +00001749 lt_cv_dlopen="LoadLibrary"
1750 lt_cv_dlopen_libs=
mlcreech636a9952008-05-05 22:52:56 +00001751 ;;
drh71eb93e2001-09-28 01:34:43 +00001752
a.rottmann9bc8b932004-02-29 15:18:31 +00001753 cygwin*)
1754 lt_cv_dlopen="dlopen"
1755 lt_cv_dlopen_libs=
mlcreech636a9952008-05-05 22:52:56 +00001756 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00001757
1758 darwin*)
1759 # if libdl is installed we need to link against it
1760 AC_CHECK_LIB([dl], [dlopen],
1761 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1762 lt_cv_dlopen="dyld"
1763 lt_cv_dlopen_libs=
1764 lt_cv_dlopen_self=yes
1765 ])
mlcreech636a9952008-05-05 22:52:56 +00001766 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00001767
drh71eb93e2001-09-28 01:34:43 +00001768 *)
a.rottmann62507b62003-03-24 09:40:34 +00001769 AC_CHECK_FUNC([shl_load],
a.rottmann9bc8b932004-02-29 15:18:31 +00001770 [lt_cv_dlopen="shl_load"],
a.rottmann62507b62003-03-24 09:40:34 +00001771 [AC_CHECK_LIB([dld], [shl_load],
mlcreech636a9952008-05-05 22:52:56 +00001772 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
a.rottmann62507b62003-03-24 09:40:34 +00001773 [AC_CHECK_FUNC([dlopen],
1774 [lt_cv_dlopen="dlopen"],
1775 [AC_CHECK_LIB([dl], [dlopen],
a.rottmann9bc8b932004-02-29 15:18:31 +00001776 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
a.rottmann62507b62003-03-24 09:40:34 +00001777 [AC_CHECK_LIB([svld], [dlopen],
a.rottmann9bc8b932004-02-29 15:18:31 +00001778 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
a.rottmann62507b62003-03-24 09:40:34 +00001779 [AC_CHECK_LIB([dld], [dld_link],
mlcreech636a9952008-05-05 22:52:56 +00001780 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
a.rottmann62507b62003-03-24 09:40:34 +00001781 ])
drh71eb93e2001-09-28 01:34:43 +00001782 ])
a.rottmann62507b62003-03-24 09:40:34 +00001783 ])
1784 ])
drh71eb93e2001-09-28 01:34:43 +00001785 ])
1786 ;;
1787 esac
1788
1789 if test "x$lt_cv_dlopen" != xno; then
1790 enable_dlopen=yes
1791 else
1792 enable_dlopen=no
1793 fi
1794
1795 case $lt_cv_dlopen in
1796 dlopen)
1797 save_CPPFLAGS="$CPPFLAGS"
1798 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1799
1800 save_LDFLAGS="$LDFLAGS"
vapier7f19c022007-02-17 14:46:31 +00001801 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
drh71eb93e2001-09-28 01:34:43 +00001802
1803 save_LIBS="$LIBS"
1804 LIBS="$lt_cv_dlopen_libs $LIBS"
1805
1806 AC_CACHE_CHECK([whether a program can dlopen itself],
1807 lt_cv_dlopen_self, [dnl
mlcreech636a9952008-05-05 22:52:56 +00001808 _LT_TRY_DLOPEN_SELF(
drh71eb93e2001-09-28 01:34:43 +00001809 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1810 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1811 ])
1812
1813 if test "x$lt_cv_dlopen_self" = xyes; then
vapier7f19c022007-02-17 14:46:31 +00001814 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
drh71eb93e2001-09-28 01:34:43 +00001815 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
mlcreech636a9952008-05-05 22:52:56 +00001816 lt_cv_dlopen_self_static, [dnl
1817 _LT_TRY_DLOPEN_SELF(
drh71eb93e2001-09-28 01:34:43 +00001818 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1819 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1820 ])
1821 fi
1822
1823 CPPFLAGS="$save_CPPFLAGS"
1824 LDFLAGS="$save_LDFLAGS"
1825 LIBS="$save_LIBS"
1826 ;;
1827 esac
1828
1829 case $lt_cv_dlopen_self in
1830 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1831 *) enable_dlopen_self=unknown ;;
1832 esac
1833
1834 case $lt_cv_dlopen_self_static in
1835 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1836 *) enable_dlopen_self_static=unknown ;;
1837 esac
1838fi
mlcreech636a9952008-05-05 22:52:56 +00001839_LT_DECL([dlopen_support], [enable_dlopen], [0],
1840 [Whether dlopen is supported])
1841_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1842 [Whether dlopen of programs is supported])
1843_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1844 [Whether dlopen of statically linked programs is supported])
1845])# LT_SYS_DLOPEN_SELF
1846
1847# Old name:
1848AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1849dnl aclocal-1.4 backwards compatibility:
1850dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
drh71eb93e2001-09-28 01:34:43 +00001851
1852
mlcreech636a9952008-05-05 22:52:56 +00001853# _LT_COMPILER_C_O([TAGNAME])
1854# ---------------------------
1855# Check to see if options -c and -o are simultaneously supported by compiler.
1856# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1857m4_defun([_LT_COMPILER_C_O],
1858[m4_require([_LT_DECL_SED])dnl
1859m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1860m4_require([_LT_TAG_COMPILER])dnl
a.rottmann9bc8b932004-02-29 15:18:31 +00001861AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
mlcreech636a9952008-05-05 22:52:56 +00001862 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1863 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1864 $RM -r conftest 2>/dev/null
a.rottmann9bc8b932004-02-29 15:18:31 +00001865 mkdir conftest
1866 cd conftest
1867 mkdir out
mlcreech636a9952008-05-05 22:52:56 +00001868 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
drh71eb93e2001-09-28 01:34:43 +00001869
a.rottmann9bc8b932004-02-29 15:18:31 +00001870 lt_compiler_flag="-o out/conftest2.$ac_objext"
1871 # Insert the option either (1) after the last *FLAGS variable, or
1872 # (2) before a word containing "conftest.", or (3) at the end.
1873 # Note that $ac_compile itself does not contain backslashes and begins
1874 # with a dollar sign (not a hyphen), so the echo should work correctly.
1875 lt_compile=`echo "$ac_compile" | $SED \
vapier7f19c022007-02-17 14:46:31 +00001876 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
a.rottmann9bc8b932004-02-29 15:18:31 +00001877 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1878 -e 's:$: $lt_compiler_flag:'`
1879 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1880 (eval "$lt_compile" 2>out/conftest.err)
1881 ac_status=$?
1882 cat out/conftest.err >&AS_MESSAGE_LOG_FD
1883 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1884 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1885 then
1886 # The compiler can only warn and ignore the option if not recognized
1887 # So say no if there are warnings
mlcreech636a9952008-05-05 22:52:56 +00001888 $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
vapier7f19c022007-02-17 14:46:31 +00001889 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1890 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
mlcreech636a9952008-05-05 22:52:56 +00001891 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00001892 fi
1893 fi
vapier7f19c022007-02-17 14:46:31 +00001894 chmod u+w . 2>&AS_MESSAGE_LOG_FD
mlcreech636a9952008-05-05 22:52:56 +00001895 $RM conftest*
a.rottmann9bc8b932004-02-29 15:18:31 +00001896 # SGI C++ compiler will create directory out/ii_files/ for
1897 # template instantiation
mlcreech636a9952008-05-05 22:52:56 +00001898 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
1899 $RM out/* && rmdir out
a.rottmann9bc8b932004-02-29 15:18:31 +00001900 cd ..
mlcreech636a9952008-05-05 22:52:56 +00001901 $RM -r conftest
1902 $RM conftest*
drh71eb93e2001-09-28 01:34:43 +00001903])
mlcreech636a9952008-05-05 22:52:56 +00001904_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
1905 [Does compiler simultaneously support -c and -o options?])
1906])# _LT_COMPILER_C_O
drh71eb93e2001-09-28 01:34:43 +00001907
1908
mlcreech636a9952008-05-05 22:52:56 +00001909# _LT_COMPILER_FILE_LOCKS([TAGNAME])
1910# ----------------------------------
drh71eb93e2001-09-28 01:34:43 +00001911# Check to see if we can do hard links to lock some files if needed
mlcreech636a9952008-05-05 22:52:56 +00001912m4_defun([_LT_COMPILER_FILE_LOCKS],
1913[m4_require([_LT_ENABLE_LOCK])dnl
1914m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1915_LT_COMPILER_C_O([$1])
a.rottmann9bc8b932004-02-29 15:18:31 +00001916
drh71eb93e2001-09-28 01:34:43 +00001917hard_links="nottested"
mlcreech636a9952008-05-05 22:52:56 +00001918if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
drh71eb93e2001-09-28 01:34:43 +00001919 # do not overwrite the value of need_locks provided by the user
1920 AC_MSG_CHECKING([if we can lock with hard links])
1921 hard_links=yes
mlcreech636a9952008-05-05 22:52:56 +00001922 $RM conftest*
drh71eb93e2001-09-28 01:34:43 +00001923 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1924 touch conftest.a
1925 ln conftest.a conftest.b 2>&5 || hard_links=no
1926 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1927 AC_MSG_RESULT([$hard_links])
1928 if test "$hard_links" = no; then
a.rottmann9bc8b932004-02-29 15:18:31 +00001929 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
drh71eb93e2001-09-28 01:34:43 +00001930 need_locks=warn
1931 fi
1932else
1933 need_locks=no
1934fi
mlcreech636a9952008-05-05 22:52:56 +00001935_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
1936])# _LT_COMPILER_FILE_LOCKS
drh71eb93e2001-09-28 01:34:43 +00001937
1938
mlcreech636a9952008-05-05 22:52:56 +00001939# _LT_CHECK_OBJDIR
1940# ----------------
1941m4_defun([_LT_CHECK_OBJDIR],
a.rottmann9bc8b932004-02-29 15:18:31 +00001942[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
1943[rm -f .libs 2>/dev/null
1944mkdir .libs 2>/dev/null
1945if test -d .libs; then
1946 lt_cv_objdir=.libs
a.rottmann62507b62003-03-24 09:40:34 +00001947else
a.rottmann9bc8b932004-02-29 15:18:31 +00001948 # MS-DOS does not allow filenames that begin with a dot.
1949 lt_cv_objdir=_libs
a.rottmann62507b62003-03-24 09:40:34 +00001950fi
a.rottmann9bc8b932004-02-29 15:18:31 +00001951rmdir .libs 2>/dev/null])
1952objdir=$lt_cv_objdir
mlcreech636a9952008-05-05 22:52:56 +00001953_LT_DECL([], [objdir], [0],
1954 [The name of the directory that contains temporary libtool files])dnl
1955m4_pattern_allow([LT_OBJDIR])dnl
1956AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
1957 [Define to the sub-directory in which libtool stores uninstalled libraries.])
1958])# _LT_CHECK_OBJDIR
a.rottmann62507b62003-03-24 09:40:34 +00001959
a.rottmann9bc8b932004-02-29 15:18:31 +00001960
mlcreech636a9952008-05-05 22:52:56 +00001961# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
1962# --------------------------------------
drh71eb93e2001-09-28 01:34:43 +00001963# Check hardcoding attributes.
mlcreech636a9952008-05-05 22:52:56 +00001964m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
a.rottmann9bc8b932004-02-29 15:18:31 +00001965[AC_MSG_CHECKING([how to hardcode library paths into programs])
mlcreech636a9952008-05-05 22:52:56 +00001966_LT_TAGVAR(hardcode_action, $1)=
1967if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
1968 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
1969 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
drh71eb93e2001-09-28 01:34:43 +00001970
mlcreech636a9952008-05-05 22:52:56 +00001971 # We can hardcode non-existent directories.
1972 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
drh71eb93e2001-09-28 01:34:43 +00001973 # If the only mechanism to avoid hardcoding is shlibpath_var, we
1974 # have to relink, otherwise we might link with an installed library
1975 # when we should be linking with a yet-to-be-installed one
mlcreech636a9952008-05-05 22:52:56 +00001976 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
1977 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
drh71eb93e2001-09-28 01:34:43 +00001978 # Linking always hardcodes the temporary library directory.
mlcreech636a9952008-05-05 22:52:56 +00001979 _LT_TAGVAR(hardcode_action, $1)=relink
drh71eb93e2001-09-28 01:34:43 +00001980 else
1981 # We can link without hardcoding, and we can hardcode nonexisting dirs.
mlcreech636a9952008-05-05 22:52:56 +00001982 _LT_TAGVAR(hardcode_action, $1)=immediate
drh71eb93e2001-09-28 01:34:43 +00001983 fi
1984else
1985 # We cannot hardcode anything, or else we can only hardcode existing
1986 # directories.
mlcreech636a9952008-05-05 22:52:56 +00001987 _LT_TAGVAR(hardcode_action, $1)=unsupported
drh71eb93e2001-09-28 01:34:43 +00001988fi
mlcreech636a9952008-05-05 22:52:56 +00001989AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
drh71eb93e2001-09-28 01:34:43 +00001990
mlcreech636a9952008-05-05 22:52:56 +00001991if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
1992 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
a.rottmann9bc8b932004-02-29 15:18:31 +00001993 # Fast installation is not supported
1994 enable_fast_install=no
1995elif test "$shlibpath_overrides_runpath" = yes ||
1996 test "$enable_shared" = no; then
1997 # Fast installation is not necessary
1998 enable_fast_install=needless
1999fi
mlcreech636a9952008-05-05 22:52:56 +00002000_LT_TAGDECL([], [hardcode_action], [0],
2001 [How to hardcode a shared library path into an executable])
2002])# _LT_LINKER_HARDCODE_LIBPATH
a.rottmann9bc8b932004-02-29 15:18:31 +00002003
2004
mlcreech636a9952008-05-05 22:52:56 +00002005# _LT_CMD_STRIPLIB
2006# ----------------
2007m4_defun([_LT_CMD_STRIPLIB],
2008[m4_require([_LT_DECL_EGREP])
2009striplib=
drh71eb93e2001-09-28 01:34:43 +00002010old_striplib=
2011AC_MSG_CHECKING([whether stripping libraries is possible])
mlcreech636a9952008-05-05 22:52:56 +00002012if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
drh71eb93e2001-09-28 01:34:43 +00002013 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2014 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2015 AC_MSG_RESULT([yes])
2016else
a.rottmann9bc8b932004-02-29 15:18:31 +00002017# FIXME - insert some real tests, host_os isn't really good enough
2018 case $host_os in
mlcreech636a9952008-05-05 22:52:56 +00002019 darwin*)
2020 if test -n "$STRIP" ; then
2021 striplib="$STRIP -x"
2022 old_striplib="$STRIP -S"
2023 AC_MSG_RESULT([yes])
2024 else
2025 AC_MSG_RESULT([no])
2026 fi
2027 ;;
2028 *)
2029 AC_MSG_RESULT([no])
a.rottmann9bc8b932004-02-29 15:18:31 +00002030 ;;
2031 esac
2032fi
mlcreech636a9952008-05-05 22:52:56 +00002033_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2034_LT_DECL([], [striplib], [1])
2035])# _LT_CMD_STRIPLIB
drh71eb93e2001-09-28 01:34:43 +00002036
2037
mlcreech636a9952008-05-05 22:52:56 +00002038# _LT_SYS_DYNAMIC_LINKER([TAG])
a.rottmann9bc8b932004-02-29 15:18:31 +00002039# -----------------------------
drh71eb93e2001-09-28 01:34:43 +00002040# PORTME Fill in your ld.so characteristics
mlcreech636a9952008-05-05 22:52:56 +00002041m4_defun([_LT_SYS_DYNAMIC_LINKER],
2042[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2043m4_require([_LT_DECL_EGREP])dnl
2044m4_require([_LT_FILEUTILS_DEFAULTS])dnl
vapier6acb2cf2009-01-28 04:46:28 +00002045m4_require([_LT_DECL_OBJDUMP])dnl
mlcreech636a9952008-05-05 22:52:56 +00002046m4_require([_LT_DECL_SED])dnl
2047AC_MSG_CHECKING([dynamic linker characteristics])
2048m4_if([$1],
2049 [], [
2050if test "$GCC" = yes; then
2051 case $host_os in
2052 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2053 *) lt_awk_arg="/^libraries:/" ;;
2054 esac
2055 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
2056 if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
2057 # if the path contains ";" then we assume it to be the separator
2058 # otherwise default to the standard path separator (i.e. ":") - it is
2059 # assumed that no part of a normal pathname contains ";" but that should
2060 # okay in the real world where ";" in dirpaths is itself problematic.
2061 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
2062 else
2063 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2064 fi
2065 # Ok, now we have the path, separated by spaces, we can step through it
2066 # and add multilib dir if necessary.
2067 lt_tmp_lt_search_path_spec=
2068 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2069 for lt_sys_path in $lt_search_path_spec; do
2070 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2071 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2072 else
2073 test -d "$lt_sys_path" && \
2074 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2075 fi
2076 done
2077 lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
2078BEGIN {RS=" "; FS="/|\n";} {
2079 lt_foo="";
2080 lt_count=0;
2081 for (lt_i = NF; lt_i > 0; lt_i--) {
2082 if ($lt_i != "" && $lt_i != ".") {
2083 if ($lt_i == "..") {
2084 lt_count++;
2085 } else {
2086 if (lt_count == 0) {
2087 lt_foo="/" $lt_i lt_foo;
2088 } else {
2089 lt_count--;
2090 }
2091 }
2092 }
2093 }
2094 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2095 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2096}'`
2097 sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
2098else
2099 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2100fi])
drh71eb93e2001-09-28 01:34:43 +00002101library_names_spec=
2102libname_spec='lib$name'
2103soname_spec=
vapier7f19c022007-02-17 14:46:31 +00002104shrext_cmds=".so"
drh71eb93e2001-09-28 01:34:43 +00002105postinstall_cmds=
2106postuninstall_cmds=
2107finish_cmds=
2108finish_eval=
2109shlibpath_var=
2110shlibpath_overrides_runpath=unknown
2111version_type=none
2112dynamic_linker="$host_os ld.so"
2113sys_lib_dlsearch_path_spec="/lib /usr/lib"
a.rottmann9bc8b932004-02-29 15:18:31 +00002114need_lib_prefix=unknown
2115hardcode_into_libs=no
2116
2117# when you set need_version to no, make sure it does not cause -set_version
2118# flags to be left without arguments
2119need_version=unknown
drh71eb93e2001-09-28 01:34:43 +00002120
2121case $host_os in
2122aix3*)
2123 version_type=linux
a.rottmann9bc8b932004-02-29 15:18:31 +00002124 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
drh71eb93e2001-09-28 01:34:43 +00002125 shlibpath_var=LIBPATH
2126
a.rottmann9bc8b932004-02-29 15:18:31 +00002127 # AIX 3 has no versioning support, so we append a major version to the name.
2128 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002129 ;;
2130
mlcreech636a9952008-05-05 22:52:56 +00002131aix[[4-9]]*)
drh71eb93e2001-09-28 01:34:43 +00002132 version_type=linux
a.rottmann62507b62003-03-24 09:40:34 +00002133 need_lib_prefix=no
2134 need_version=no
2135 hardcode_into_libs=yes
drh71eb93e2001-09-28 01:34:43 +00002136 if test "$host_cpu" = ia64; then
2137 # AIX 5 supports IA64
a.rottmann9bc8b932004-02-29 15:18:31 +00002138 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
drh71eb93e2001-09-28 01:34:43 +00002139 shlibpath_var=LD_LIBRARY_PATH
2140 else
2141 # With GCC up to 2.95.x, collect2 would create an import file
2142 # for dependence libraries. The import file would start with
2143 # the line `#! .'. This would cause the generated library to
2144 # depend on `.', always an invalid library. This was fixed in
2145 # development snapshots of GCC prior to 3.0.
2146 case $host_os in
a.rottmann62507b62003-03-24 09:40:34 +00002147 aix4 | aix4.[[01]] | aix4.[[01]].*)
a.rottmann9bc8b932004-02-29 15:18:31 +00002148 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2149 echo ' yes '
mlcreech636a9952008-05-05 22:52:56 +00002150 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
a.rottmann9bc8b932004-02-29 15:18:31 +00002151 :
2152 else
2153 can_build_shared=no
2154 fi
2155 ;;
drh71eb93e2001-09-28 01:34:43 +00002156 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00002157 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2158 # soname into executable. Probably we can add versioning support to
2159 # collect2, so additional links can be useful in future.
drh71eb93e2001-09-28 01:34:43 +00002160 if test "$aix_use_runtimelinking" = yes; then
2161 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2162 # instead of lib<name>.a to let people know that these are not
2163 # typical AIX shared libraries.
a.rottmann9bc8b932004-02-29 15:18:31 +00002164 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
drh71eb93e2001-09-28 01:34:43 +00002165 else
2166 # We preserve .a as extension for shared libraries through AIX4.2
2167 # and later when we are not doing run time linking.
2168 library_names_spec='${libname}${release}.a $libname.a'
a.rottmann9bc8b932004-02-29 15:18:31 +00002169 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002170 fi
2171 shlibpath_var=LIBPATH
drh71eb93e2001-09-28 01:34:43 +00002172 fi
2173 ;;
2174
2175amigaos*)
mlcreech636a9952008-05-05 22:52:56 +00002176 case $host_cpu in
2177 powerpc)
2178 # Since July 2007 AmigaOS4 officially supports .so libraries.
2179 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2180 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2181 ;;
2182 m68k)
2183 library_names_spec='$libname.ixlibrary $libname.a'
2184 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2185 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'
2186 ;;
2187 esac
drh71eb93e2001-09-28 01:34:43 +00002188 ;;
2189
2190beos*)
a.rottmann9bc8b932004-02-29 15:18:31 +00002191 library_names_spec='${libname}${shared_ext}'
drh71eb93e2001-09-28 01:34:43 +00002192 dynamic_linker="$host_os ld.so"
2193 shlibpath_var=LIBRARY_PATH
2194 ;;
2195
vapier7f19c022007-02-17 14:46:31 +00002196bsdi[[45]]*)
drh71eb93e2001-09-28 01:34:43 +00002197 version_type=linux
2198 need_version=no
a.rottmann9bc8b932004-02-29 15:18:31 +00002199 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2200 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002201 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2202 shlibpath_var=LD_LIBRARY_PATH
2203 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2204 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2205 # the default ld.so.conf also contains /usr/contrib/lib and
2206 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2207 # libtool to hard-code these into programs
2208 ;;
2209
vapier6acb2cf2009-01-28 04:46:28 +00002210cygwin* | mingw* | pw32* | cegcc*)
drh71eb93e2001-09-28 01:34:43 +00002211 version_type=windows
vapier7f19c022007-02-17 14:46:31 +00002212 shrext_cmds=".dll"
drh71eb93e2001-09-28 01:34:43 +00002213 need_version=no
2214 need_lib_prefix=no
a.rottmann9bc8b932004-02-29 15:18:31 +00002215
drh71eb93e2001-09-28 01:34:43 +00002216 case $GCC,$host_os in
vapier6acb2cf2009-01-28 04:46:28 +00002217 yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
drh71eb93e2001-09-28 01:34:43 +00002218 library_names_spec='$libname.dll.a'
a.rottmann9bc8b932004-02-29 15:18:31 +00002219 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2220 postinstall_cmds='base_file=`basename \${file}`~
mlcreech636a9952008-05-05 22:52:56 +00002221 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
drh71eb93e2001-09-28 01:34:43 +00002222 dldir=$destdir/`dirname \$dlpath`~
2223 test -d \$dldir || mkdir -p \$dldir~
vapier7f19c022007-02-17 14:46:31 +00002224 $install_prog $dir/$dlname \$dldir/$dlname~
mlcreech636a9952008-05-05 22:52:56 +00002225 chmod a+x \$dldir/$dlname~
2226 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2227 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2228 fi'
a.rottmann9bc8b932004-02-29 15:18:31 +00002229 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
drh71eb93e2001-09-28 01:34:43 +00002230 dlpath=$dir/\$dldll~
mlcreech636a9952008-05-05 22:52:56 +00002231 $RM \$dlpath'
a.rottmann9bc8b932004-02-29 15:18:31 +00002232 shlibpath_overrides_runpath=yes
2233
2234 case $host_os in
2235 cygwin*)
2236 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2237 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2238 sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
2239 ;;
vapier6acb2cf2009-01-28 04:46:28 +00002240 mingw* | cegcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00002241 # MinGW DLLs use traditional 'lib' prefix
2242 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
mlcreech636a9952008-05-05 22:52:56 +00002243 sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
2244 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
a.rottmann9bc8b932004-02-29 15:18:31 +00002245 # It is most probably a Windows format PATH printed by
2246 # mingw gcc, but we are running on Cygwin. Gcc prints its search
2247 # path with ; separators, and with drive letters. We can handle the
2248 # drive letters (cygwin fileutils understands them), so leave them,
2249 # especially as we might pass files found there to a mingw objdump,
2250 # which wouldn't understand a cygwinified path. Ahh.
mlcreech636a9952008-05-05 22:52:56 +00002251 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
a.rottmann9bc8b932004-02-29 15:18:31 +00002252 else
mlcreech636a9952008-05-05 22:52:56 +00002253 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
a.rottmann9bc8b932004-02-29 15:18:31 +00002254 fi
2255 ;;
2256 pw32*)
2257 # pw32 DLLs use 'pw' prefix rather than 'lib'
vapier7f19c022007-02-17 14:46:31 +00002258 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
a.rottmann9bc8b932004-02-29 15:18:31 +00002259 ;;
2260 esac
drh71eb93e2001-09-28 01:34:43 +00002261 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00002262
drh71eb93e2001-09-28 01:34:43 +00002263 *)
a.rottmann9bc8b932004-02-29 15:18:31 +00002264 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
drh71eb93e2001-09-28 01:34:43 +00002265 ;;
2266 esac
2267 dynamic_linker='Win32 ld.exe'
2268 # FIXME: first we should search . and the directory the executable is in
2269 shlibpath_var=PATH
2270 ;;
2271
2272darwin* | rhapsody*)
2273 dynamic_linker="$host_os dyld"
2274 version_type=darwin
2275 need_lib_prefix=no
2276 need_version=no
mlcreech636a9952008-05-05 22:52:56 +00002277 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
a.rottmann9bc8b932004-02-29 15:18:31 +00002278 soname_spec='${libname}${release}${major}$shared_ext'
drh71eb93e2001-09-28 01:34:43 +00002279 shlibpath_overrides_runpath=yes
2280 shlibpath_var=DYLD_LIBRARY_PATH
vapier7f19c022007-02-17 14:46:31 +00002281 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
mlcreech636a9952008-05-05 22:52:56 +00002282m4_if([$1], [],[
2283 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
a.rottmann9bc8b932004-02-29 15:18:31 +00002284 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2285 ;;
2286
2287dgux*)
2288 version_type=linux
2289 need_lib_prefix=no
2290 need_version=no
2291 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2292 soname_spec='${libname}${release}${shared_ext}$major'
2293 shlibpath_var=LD_LIBRARY_PATH
drh71eb93e2001-09-28 01:34:43 +00002294 ;;
2295
a.rottmann62507b62003-03-24 09:40:34 +00002296freebsd1*)
2297 dynamic_linker=no
2298 ;;
2299
vapier7f19c022007-02-17 14:46:31 +00002300freebsd* | dragonfly*)
2301 # DragonFly does not have aout. When/if they implement a new
2302 # versioning mechanism, adjust this.
2303 if test -x /usr/bin/objformat; then
2304 objformat=`/usr/bin/objformat`
2305 else
2306 case $host_os in
2307 freebsd[[123]]*) objformat=aout ;;
2308 *) objformat=elf ;;
2309 esac
2310 fi
2311 # Handle Gentoo/FreeBSD as it was Linux
2312 case $host_vendor in
2313 gentoo)
2314 version_type=linux ;;
2315 *)
2316 version_type=freebsd-$objformat ;;
2317 esac
2318
drh71eb93e2001-09-28 01:34:43 +00002319 case $version_type in
2320 freebsd-elf*)
a.rottmann9bc8b932004-02-29 15:18:31 +00002321 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
drh71eb93e2001-09-28 01:34:43 +00002322 need_version=no
2323 need_lib_prefix=no
2324 ;;
2325 freebsd-*)
a.rottmann9bc8b932004-02-29 15:18:31 +00002326 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
drh71eb93e2001-09-28 01:34:43 +00002327 need_version=yes
2328 ;;
vapier7f19c022007-02-17 14:46:31 +00002329 linux)
2330 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2331 soname_spec='${libname}${release}${shared_ext}$major'
2332 need_lib_prefix=no
2333 need_version=no
2334 ;;
drh71eb93e2001-09-28 01:34:43 +00002335 esac
2336 shlibpath_var=LD_LIBRARY_PATH
2337 case $host_os in
2338 freebsd2*)
2339 shlibpath_overrides_runpath=yes
2340 ;;
vapier7f19c022007-02-17 14:46:31 +00002341 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
a.rottmann9bc8b932004-02-29 15:18:31 +00002342 shlibpath_overrides_runpath=yes
2343 hardcode_into_libs=yes
2344 ;;
vapier7f19c022007-02-17 14:46:31 +00002345 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2346 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
drh71eb93e2001-09-28 01:34:43 +00002347 shlibpath_overrides_runpath=no
2348 hardcode_into_libs=yes
2349 ;;
mlcreech636a9952008-05-05 22:52:56 +00002350 *) # from 4.6 on, and DragonFly
vapier7f19c022007-02-17 14:46:31 +00002351 shlibpath_overrides_runpath=yes
2352 hardcode_into_libs=yes
2353 ;;
drh71eb93e2001-09-28 01:34:43 +00002354 esac
2355 ;;
2356
2357gnu*)
2358 version_type=linux
2359 need_lib_prefix=no
2360 need_version=no
a.rottmann9bc8b932004-02-29 15:18:31 +00002361 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2362 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002363 shlibpath_var=LD_LIBRARY_PATH
2364 hardcode_into_libs=yes
2365 ;;
2366
2367hpux9* | hpux10* | hpux11*)
2368 # Give a soname corresponding to the major version so that dld.sl refuses to
2369 # link against other versions.
2370 version_type=sunos
2371 need_lib_prefix=no
2372 need_version=no
vapier7f19c022007-02-17 14:46:31 +00002373 case $host_cpu in
a.rottmann9bc8b932004-02-29 15:18:31 +00002374 ia64*)
vapier7f19c022007-02-17 14:46:31 +00002375 shrext_cmds='.so'
a.rottmann9bc8b932004-02-29 15:18:31 +00002376 hardcode_into_libs=yes
2377 dynamic_linker="$host_os dld.so"
2378 shlibpath_var=LD_LIBRARY_PATH
2379 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2380 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2381 soname_spec='${libname}${release}${shared_ext}$major'
2382 if test "X$HPUX_IA64_MODE" = X32; then
2383 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2384 else
2385 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2386 fi
2387 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2388 ;;
mlcreech636a9952008-05-05 22:52:56 +00002389 hppa*64*)
2390 shrext_cmds='.sl'
2391 hardcode_into_libs=yes
2392 dynamic_linker="$host_os dld.sl"
2393 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2394 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2395 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2396 soname_spec='${libname}${release}${shared_ext}$major'
2397 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2398 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2399 ;;
2400 *)
vapier7f19c022007-02-17 14:46:31 +00002401 shrext_cmds='.sl'
a.rottmann9bc8b932004-02-29 15:18:31 +00002402 dynamic_linker="$host_os dld.sl"
2403 shlibpath_var=SHLIB_PATH
2404 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2405 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2406 soname_spec='${libname}${release}${shared_ext}$major'
2407 ;;
2408 esac
drh71eb93e2001-09-28 01:34:43 +00002409 # HP-UX runs *really* slowly unless shared libraries are mode 555.
2410 postinstall_cmds='chmod 555 $lib'
2411 ;;
2412
mlcreech636a9952008-05-05 22:52:56 +00002413interix[[3-9]]*)
vapier7f19c022007-02-17 14:46:31 +00002414 version_type=linux
2415 need_lib_prefix=no
2416 need_version=no
2417 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2418 soname_spec='${libname}${release}${shared_ext}$major'
2419 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2420 shlibpath_var=LD_LIBRARY_PATH
2421 shlibpath_overrides_runpath=no
2422 hardcode_into_libs=yes
2423 ;;
2424
a.rottmann62507b62003-03-24 09:40:34 +00002425irix5* | irix6* | nonstopux*)
2426 case $host_os in
2427 nonstopux*) version_type=nonstopux ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00002428 *)
2429 if test "$lt_cv_prog_gnu_ld" = yes; then
2430 version_type=linux
2431 else
2432 version_type=irix
2433 fi ;;
a.rottmann62507b62003-03-24 09:40:34 +00002434 esac
drh71eb93e2001-09-28 01:34:43 +00002435 need_lib_prefix=no
2436 need_version=no
a.rottmann9bc8b932004-02-29 15:18:31 +00002437 soname_spec='${libname}${release}${shared_ext}$major'
2438 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
drh71eb93e2001-09-28 01:34:43 +00002439 case $host_os in
a.rottmann62507b62003-03-24 09:40:34 +00002440 irix5* | nonstopux*)
drh71eb93e2001-09-28 01:34:43 +00002441 libsuff= shlibsuff=
2442 ;;
2443 *)
2444 case $LD in # libtool.m4 will add one of these switches to LD
a.rottmann9bc8b932004-02-29 15:18:31 +00002445 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2446 libsuff= shlibsuff= libmagic=32-bit;;
2447 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2448 libsuff=32 shlibsuff=N32 libmagic=N32;;
2449 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2450 libsuff=64 shlibsuff=64 libmagic=64-bit;;
drh71eb93e2001-09-28 01:34:43 +00002451 *) libsuff= shlibsuff= libmagic=never-match;;
2452 esac
2453 ;;
2454 esac
2455 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2456 shlibpath_overrides_runpath=no
2457 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2458 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
a.rottmann9bc8b932004-02-29 15:18:31 +00002459 hardcode_into_libs=yes
drh71eb93e2001-09-28 01:34:43 +00002460 ;;
2461
2462# No shared lib support for Linux oldld, aout, or coff.
a.rottmann9bc8b932004-02-29 15:18:31 +00002463linux*oldld* | linux*aout* | linux*coff*)
drh71eb93e2001-09-28 01:34:43 +00002464 dynamic_linker=no
2465 ;;
2466
2467# This must be Linux ELF.
mlcreech636a9952008-05-05 22:52:56 +00002468linux* | k*bsd*-gnu)
drh71eb93e2001-09-28 01:34:43 +00002469 version_type=linux
2470 need_lib_prefix=no
2471 need_version=no
a.rottmann9bc8b932004-02-29 15:18:31 +00002472 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2473 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002474 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2475 shlibpath_var=LD_LIBRARY_PATH
2476 shlibpath_overrides_runpath=no
mlcreech636a9952008-05-05 22:52:56 +00002477 # Some binutils ld are patched to set DT_RUNPATH
2478 save_LDFLAGS=$LDFLAGS
2479 save_libdir=$libdir
2480 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2481 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2482 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2483 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2484 [shlibpath_overrides_runpath=yes])])
2485 LDFLAGS=$save_LDFLAGS
2486 libdir=$save_libdir
2487
drh71eb93e2001-09-28 01:34:43 +00002488 # This implies no fast_install, which is unacceptable.
2489 # Some rework will be needed to allow for fast_install
2490 # before this can be enabled.
2491 hardcode_into_libs=yes
2492
a.rottmann9bc8b932004-02-29 15:18:31 +00002493 # Append ld.so.conf contents to the search path
2494 if test -f /etc/ld.so.conf; then
mlcreech636a9952008-05-05 22:52:56 +00002495 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' ' '`
vapier7f19c022007-02-17 14:46:31 +00002496 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
a.rottmann9bc8b932004-02-29 15:18:31 +00002497 fi
2498
drh71eb93e2001-09-28 01:34:43 +00002499 # We used to test for /lib/ld.so.1 and disable shared libraries on
2500 # powerpc, because MkLinux only supported shared libraries with the
2501 # GNU dynamic linker. Since this was broken with cross compilers,
2502 # most powerpc-linux boxes support dynamic linking these days and
2503 # people can always --disable-shared, the test was removed, and we
2504 # assume the GNU/Linux dynamic linker is in use.
2505 dynamic_linker='GNU/Linux ld.so'
2506 ;;
2507
2508netbsd*)
2509 version_type=sunos
2510 need_lib_prefix=no
2511 need_version=no
mlcreech636a9952008-05-05 22:52:56 +00002512 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
a.rottmann9bc8b932004-02-29 15:18:31 +00002513 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
drh71eb93e2001-09-28 01:34:43 +00002514 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2515 dynamic_linker='NetBSD (a.out) ld.so'
2516 else
a.rottmann9bc8b932004-02-29 15:18:31 +00002517 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2518 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002519 dynamic_linker='NetBSD ld.elf_so'
2520 fi
2521 shlibpath_var=LD_LIBRARY_PATH
2522 shlibpath_overrides_runpath=yes
2523 hardcode_into_libs=yes
2524 ;;
2525
2526newsos6)
2527 version_type=linux
a.rottmann9bc8b932004-02-29 15:18:31 +00002528 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2529 shlibpath_var=LD_LIBRARY_PATH
2530 shlibpath_overrides_runpath=yes
2531 ;;
2532
mlcreech636a9952008-05-05 22:52:56 +00002533*nto* | *qnx*)
2534 version_type=qnx
a.rottmann9bc8b932004-02-29 15:18:31 +00002535 need_lib_prefix=no
2536 need_version=no
2537 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2538 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002539 shlibpath_var=LD_LIBRARY_PATH
mlcreech636a9952008-05-05 22:52:56 +00002540 shlibpath_overrides_runpath=no
2541 hardcode_into_libs=yes
2542 dynamic_linker='ldqnx.so'
drh71eb93e2001-09-28 01:34:43 +00002543 ;;
2544
drh71eb93e2001-09-28 01:34:43 +00002545openbsd*)
2546 version_type=sunos
vapier7f19c022007-02-17 14:46:31 +00002547 sys_lib_dlsearch_path_spec="/usr/lib"
a.rottmann62507b62003-03-24 09:40:34 +00002548 need_lib_prefix=no
vapier7f19c022007-02-17 14:46:31 +00002549 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2550 case $host_os in
mlcreech636a9952008-05-05 22:52:56 +00002551 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2552 *) need_version=no ;;
vapier7f19c022007-02-17 14:46:31 +00002553 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00002554 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2555 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2556 shlibpath_var=LD_LIBRARY_PATH
mlcreech636a9952008-05-05 22:52:56 +00002557 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
a.rottmann9bc8b932004-02-29 15:18:31 +00002558 case $host_os in
2559 openbsd2.[[89]] | openbsd2.[[89]].*)
2560 shlibpath_overrides_runpath=no
2561 ;;
2562 *)
2563 shlibpath_overrides_runpath=yes
2564 ;;
2565 esac
a.rottmann62507b62003-03-24 09:40:34 +00002566 else
2567 shlibpath_overrides_runpath=yes
2568 fi
drh71eb93e2001-09-28 01:34:43 +00002569 ;;
2570
2571os2*)
2572 libname_spec='$name'
vapier7f19c022007-02-17 14:46:31 +00002573 shrext_cmds=".dll"
drh71eb93e2001-09-28 01:34:43 +00002574 need_lib_prefix=no
a.rottmann9bc8b932004-02-29 15:18:31 +00002575 library_names_spec='$libname${shared_ext} $libname.a'
drh71eb93e2001-09-28 01:34:43 +00002576 dynamic_linker='OS/2 ld.exe'
2577 shlibpath_var=LIBPATH
2578 ;;
2579
2580osf3* | osf4* | osf5*)
2581 version_type=osf
a.rottmann62507b62003-03-24 09:40:34 +00002582 need_lib_prefix=no
a.rottmann9bc8b932004-02-29 15:18:31 +00002583 need_version=no
2584 soname_spec='${libname}${release}${shared_ext}$major'
2585 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
drh71eb93e2001-09-28 01:34:43 +00002586 shlibpath_var=LD_LIBRARY_PATH
2587 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2588 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2589 ;;
2590
mlcreech636a9952008-05-05 22:52:56 +00002591rdos*)
2592 dynamic_linker=no
2593 ;;
2594
drh71eb93e2001-09-28 01:34:43 +00002595solaris*)
2596 version_type=linux
2597 need_lib_prefix=no
2598 need_version=no
a.rottmann9bc8b932004-02-29 15:18:31 +00002599 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2600 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002601 shlibpath_var=LD_LIBRARY_PATH
2602 shlibpath_overrides_runpath=yes
2603 hardcode_into_libs=yes
2604 # ldd complains unless libraries are executable
2605 postinstall_cmds='chmod +x $lib'
2606 ;;
2607
2608sunos4*)
2609 version_type=sunos
a.rottmann9bc8b932004-02-29 15:18:31 +00002610 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
drh71eb93e2001-09-28 01:34:43 +00002611 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2612 shlibpath_var=LD_LIBRARY_PATH
2613 shlibpath_overrides_runpath=yes
2614 if test "$with_gnu_ld" = yes; then
2615 need_lib_prefix=no
2616 fi
2617 need_version=yes
2618 ;;
2619
vapier7f19c022007-02-17 14:46:31 +00002620sysv4 | sysv4.3*)
drh71eb93e2001-09-28 01:34:43 +00002621 version_type=linux
a.rottmann9bc8b932004-02-29 15:18:31 +00002622 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2623 soname_spec='${libname}${release}${shared_ext}$major'
drh71eb93e2001-09-28 01:34:43 +00002624 shlibpath_var=LD_LIBRARY_PATH
2625 case $host_vendor in
2626 sni)
2627 shlibpath_overrides_runpath=no
a.rottmann62507b62003-03-24 09:40:34 +00002628 need_lib_prefix=no
a.rottmann62507b62003-03-24 09:40:34 +00002629 runpath_var=LD_RUN_PATH
2630 ;;
2631 siemens)
2632 need_lib_prefix=no
drh71eb93e2001-09-28 01:34:43 +00002633 ;;
2634 motorola)
2635 need_lib_prefix=no
2636 need_version=no
2637 shlibpath_overrides_runpath=no
2638 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2639 ;;
2640 esac
2641 ;;
2642
2643sysv4*MP*)
2644 if test -d /usr/nec ;then
2645 version_type=linux
a.rottmann9bc8b932004-02-29 15:18:31 +00002646 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2647 soname_spec='$libname${shared_ext}.$major'
drh71eb93e2001-09-28 01:34:43 +00002648 shlibpath_var=LD_LIBRARY_PATH
2649 fi
2650 ;;
2651
vapier7f19c022007-02-17 14:46:31 +00002652sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2653 version_type=freebsd-elf
2654 need_lib_prefix=no
2655 need_version=no
2656 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2657 soname_spec='${libname}${release}${shared_ext}$major'
2658 shlibpath_var=LD_LIBRARY_PATH
mlcreech636a9952008-05-05 22:52:56 +00002659 shlibpath_overrides_runpath=yes
vapier7f19c022007-02-17 14:46:31 +00002660 hardcode_into_libs=yes
2661 if test "$with_gnu_ld" = yes; then
2662 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
vapier7f19c022007-02-17 14:46:31 +00002663 else
2664 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
vapier7f19c022007-02-17 14:46:31 +00002665 case $host_os in
2666 sco3.2v5*)
2667 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2668 ;;
2669 esac
2670 fi
2671 sys_lib_dlsearch_path_spec='/usr/lib'
2672 ;;
2673
mlcreech636a9952008-05-05 22:52:56 +00002674tpf*)
2675 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
2676 version_type=linux
2677 need_lib_prefix=no
2678 need_version=no
vapier6acb2cf2009-01-28 04:46:28 +00002679 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
mlcreech636a9952008-05-05 22:52:56 +00002680 shlibpath_var=LD_LIBRARY_PATH
2681 shlibpath_overrides_runpath=no
2682 hardcode_into_libs=yes
2683 ;;
2684
a.rottmann9bc8b932004-02-29 15:18:31 +00002685uts4*)
2686 version_type=linux
2687 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2688 soname_spec='${libname}${release}${shared_ext}$major'
2689 shlibpath_var=LD_LIBRARY_PATH
2690 ;;
2691
drh71eb93e2001-09-28 01:34:43 +00002692*)
2693 dynamic_linker=no
2694 ;;
2695esac
2696AC_MSG_RESULT([$dynamic_linker])
2697test "$dynamic_linker" = no && can_build_shared=no
vapier7f19c022007-02-17 14:46:31 +00002698
2699variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2700if test "$GCC" = yes; then
2701 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2702fi
vapier6acb2cf2009-01-28 04:46:28 +00002703
mlcreech636a9952008-05-05 22:52:56 +00002704if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2705 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
a.rottmann9bc8b932004-02-29 15:18:31 +00002706fi
mlcreech636a9952008-05-05 22:52:56 +00002707if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2708 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2709fi
2710
2711_LT_DECL([], [variables_saved_for_relink], [1],
2712 [Variables whose values should be saved in libtool wrapper scripts and
2713 restored at link time])
2714_LT_DECL([], [need_lib_prefix], [0],
2715 [Do we need the "lib" prefix for modules?])
2716_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2717_LT_DECL([], [version_type], [0], [Library versioning type])
2718_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2719_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2720_LT_DECL([], [shlibpath_overrides_runpath], [0],
2721 [Is shlibpath searched before the hard-coded library search path?])
2722_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2723_LT_DECL([], [library_names_spec], [1],
2724 [[List of archive names. First name is the real one, the rest are links.
2725 The last name is the one that the linker finds with -lNAME]])
2726_LT_DECL([], [soname_spec], [1],
2727 [[The coded name of the library, if different from the real name]])
2728_LT_DECL([], [postinstall_cmds], [2],
2729 [Command to use after installation of a shared archive])
2730_LT_DECL([], [postuninstall_cmds], [2],
2731 [Command to use after uninstallation of a shared archive])
2732_LT_DECL([], [finish_cmds], [2],
2733 [Commands used to finish a libtool library installation in a directory])
2734_LT_DECL([], [finish_eval], [1],
2735 [[As "finish_cmds", except a single script fragment to be evaled but
2736 not shown]])
2737_LT_DECL([], [hardcode_into_libs], [0],
2738 [Whether we should hardcode library paths into libraries])
2739_LT_DECL([], [sys_lib_search_path_spec], [2],
2740 [Compile-time system search path for libraries])
2741_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2742 [Run-time system search path for libraries])
2743])# _LT_SYS_DYNAMIC_LINKER
a.rottmann9bc8b932004-02-29 15:18:31 +00002744
2745
mlcreech636a9952008-05-05 22:52:56 +00002746# _LT_PATH_TOOL_PREFIX(TOOL)
a.rottmann9bc8b932004-02-29 15:18:31 +00002747# --------------------------
mlcreech636a9952008-05-05 22:52:56 +00002748# find a file program which can recognize shared library
2749AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2750[m4_require([_LT_DECL_EGREP])dnl
a.rottmann9bc8b932004-02-29 15:18:31 +00002751AC_MSG_CHECKING([for $1])
2752AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2753[case $MAGIC_CMD in
2754[[\\/*] | ?:[\\/]*])
2755 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2756 ;;
2757*)
2758 lt_save_MAGIC_CMD="$MAGIC_CMD"
2759 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2760dnl $ac_dummy forces splitting on constant user-supplied paths.
2761dnl POSIX.2 word splitting is done only on the output of word expansions,
2762dnl not every word. This closes a longstanding sh security hole.
mlcreech636a9952008-05-05 22:52:56 +00002763 ac_dummy="m4_if([$2], , $PATH, [$2])"
a.rottmann9bc8b932004-02-29 15:18:31 +00002764 for ac_dir in $ac_dummy; do
2765 IFS="$lt_save_ifs"
2766 test -z "$ac_dir" && ac_dir=.
2767 if test -f $ac_dir/$1; then
2768 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2769 if test -n "$file_magic_test_file"; then
2770 case $deplibs_check_method in
2771 "file_magic "*)
vapier7f19c022007-02-17 14:46:31 +00002772 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
a.rottmann9bc8b932004-02-29 15:18:31 +00002773 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2774 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2775 $EGREP "$file_magic_regex" > /dev/null; then
2776 :
2777 else
mlcreech636a9952008-05-05 22:52:56 +00002778 cat <<_LT_EOF 1>&2
a.rottmann9bc8b932004-02-29 15:18:31 +00002779
2780*** Warning: the command libtool uses to detect shared libraries,
2781*** $file_magic_cmd, produces output that libtool cannot recognize.
2782*** The result is that libtool may fail to recognize shared libraries
2783*** as such. This will affect the creation of libtool libraries that
2784*** depend on shared libraries, but programs linked with such libtool
2785*** libraries will work regardless of this problem. Nevertheless, you
2786*** may want to report the problem to your system manager and/or to
2787*** bug-libtool@gnu.org
2788
mlcreech636a9952008-05-05 22:52:56 +00002789_LT_EOF
a.rottmann9bc8b932004-02-29 15:18:31 +00002790 fi ;;
2791 esac
2792 fi
2793 break
2794 fi
2795 done
2796 IFS="$lt_save_ifs"
2797 MAGIC_CMD="$lt_save_MAGIC_CMD"
2798 ;;
2799esac])
2800MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2801if test -n "$MAGIC_CMD"; then
2802 AC_MSG_RESULT($MAGIC_CMD)
2803else
2804 AC_MSG_RESULT(no)
2805fi
mlcreech636a9952008-05-05 22:52:56 +00002806_LT_DECL([], [MAGIC_CMD], [0],
2807 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
2808])# _LT_PATH_TOOL_PREFIX
2809
2810# Old name:
2811AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
2812dnl aclocal-1.4 backwards compatibility:
2813dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
a.rottmann9bc8b932004-02-29 15:18:31 +00002814
2815
mlcreech636a9952008-05-05 22:52:56 +00002816# _LT_PATH_MAGIC
2817# --------------
2818# find a file program which can recognize a shared library
2819m4_defun([_LT_PATH_MAGIC],
2820[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
a.rottmann9bc8b932004-02-29 15:18:31 +00002821if test -z "$lt_cv_path_MAGIC_CMD"; then
2822 if test -n "$ac_tool_prefix"; then
mlcreech636a9952008-05-05 22:52:56 +00002823 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
a.rottmann9bc8b932004-02-29 15:18:31 +00002824 else
2825 MAGIC_CMD=:
2826 fi
2827fi
mlcreech636a9952008-05-05 22:52:56 +00002828])# _LT_PATH_MAGIC
a.rottmann9bc8b932004-02-29 15:18:31 +00002829
2830
mlcreech636a9952008-05-05 22:52:56 +00002831# LT_PATH_LD
a.rottmann9bc8b932004-02-29 15:18:31 +00002832# ----------
2833# find the pathname to the GNU or non-GNU linker
mlcreech636a9952008-05-05 22:52:56 +00002834AC_DEFUN([LT_PATH_LD],
2835[AC_REQUIRE([AC_PROG_CC])dnl
a.rottmann9bc8b932004-02-29 15:18:31 +00002836AC_REQUIRE([AC_CANONICAL_HOST])dnl
2837AC_REQUIRE([AC_CANONICAL_BUILD])dnl
mlcreech636a9952008-05-05 22:52:56 +00002838m4_require([_LT_DECL_SED])dnl
2839m4_require([_LT_DECL_EGREP])dnl
2840
2841AC_ARG_WITH([gnu-ld],
2842 [AS_HELP_STRING([--with-gnu-ld],
2843 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
2844 [test "$withval" = no || with_gnu_ld=yes],
2845 [with_gnu_ld=no])dnl
2846
a.rottmann9bc8b932004-02-29 15:18:31 +00002847ac_prog=ld
2848if test "$GCC" = yes; then
2849 # Check if gcc -print-prog-name=ld gives a path.
2850 AC_MSG_CHECKING([for ld used by $CC])
2851 case $host in
2852 *-*-mingw*)
2853 # gcc leaves a trailing carriage return which upsets mingw
2854 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2855 *)
2856 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2857 esac
2858 case $ac_prog in
2859 # Accept absolute paths.
2860 [[\\/]]* | ?:[[\\/]]*)
2861 re_direlt='/[[^/]][[^/]]*/\.\./'
2862 # Canonicalize the pathname of ld
mlcreech636a9952008-05-05 22:52:56 +00002863 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
2864 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
2865 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
a.rottmann9bc8b932004-02-29 15:18:31 +00002866 done
2867 test -z "$LD" && LD="$ac_prog"
2868 ;;
2869 "")
2870 # If it fails, then pretend we aren't using GCC.
2871 ac_prog=ld
2872 ;;
2873 *)
2874 # If it is relative, then search for the first ld in PATH.
2875 with_gnu_ld=unknown
2876 ;;
2877 esac
2878elif test "$with_gnu_ld" = yes; then
2879 AC_MSG_CHECKING([for GNU ld])
2880else
2881 AC_MSG_CHECKING([for non-GNU ld])
2882fi
2883AC_CACHE_VAL(lt_cv_path_LD,
2884[if test -z "$LD"; then
2885 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2886 for ac_dir in $PATH; do
2887 IFS="$lt_save_ifs"
2888 test -z "$ac_dir" && ac_dir=.
2889 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
2890 lt_cv_path_LD="$ac_dir/$ac_prog"
2891 # Check to see if the program is GNU ld. I'd rather use --version,
vapier7f19c022007-02-17 14:46:31 +00002892 # but apparently some variants of GNU ld only accept -v.
a.rottmann9bc8b932004-02-29 15:18:31 +00002893 # Break only if it was the GNU/non-GNU ld that we prefer.
2894 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
2895 *GNU* | *'with BFD'*)
2896 test "$with_gnu_ld" != no && break
2897 ;;
2898 *)
2899 test "$with_gnu_ld" != yes && break
2900 ;;
2901 esac
2902 fi
2903 done
2904 IFS="$lt_save_ifs"
2905else
2906 lt_cv_path_LD="$LD" # Let the user override the test with a path.
2907fi])
2908LD="$lt_cv_path_LD"
2909if test -n "$LD"; then
2910 AC_MSG_RESULT($LD)
2911else
2912 AC_MSG_RESULT(no)
2913fi
2914test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
mlcreech636a9952008-05-05 22:52:56 +00002915_LT_PATH_LD_GNU
2916AC_SUBST([LD])
2917
2918_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
2919])# LT_PATH_LD
2920
2921# Old names:
2922AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
2923AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
2924dnl aclocal-1.4 backwards compatibility:
2925dnl AC_DEFUN([AM_PROG_LD], [])
2926dnl AC_DEFUN([AC_PROG_LD], [])
a.rottmann9bc8b932004-02-29 15:18:31 +00002927
2928
mlcreech636a9952008-05-05 22:52:56 +00002929# _LT_PATH_LD_GNU
2930#- --------------
2931m4_defun([_LT_PATH_LD_GNU],
2932[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
vapier7f19c022007-02-17 14:46:31 +00002933[# I'd rather use --version here, but apparently some GNU lds only accept -v.
a.rottmann9bc8b932004-02-29 15:18:31 +00002934case `$LD -v 2>&1 </dev/null` in
2935*GNU* | *'with BFD'*)
2936 lt_cv_prog_gnu_ld=yes
2937 ;;
2938*)
2939 lt_cv_prog_gnu_ld=no
2940 ;;
2941esac])
2942with_gnu_ld=$lt_cv_prog_gnu_ld
mlcreech636a9952008-05-05 22:52:56 +00002943])# _LT_PATH_LD_GNU
a.rottmann9bc8b932004-02-29 15:18:31 +00002944
2945
mlcreech636a9952008-05-05 22:52:56 +00002946# _LT_CMD_RELOAD
2947# --------------
a.rottmann9bc8b932004-02-29 15:18:31 +00002948# find reload flag for linker
2949# -- PORTME Some linkers may need a different reload flag.
mlcreech636a9952008-05-05 22:52:56 +00002950m4_defun([_LT_CMD_RELOAD],
a.rottmann9bc8b932004-02-29 15:18:31 +00002951[AC_CACHE_CHECK([for $LD option to reload object files],
2952 lt_cv_ld_reload_flag,
2953 [lt_cv_ld_reload_flag='-r'])
2954reload_flag=$lt_cv_ld_reload_flag
2955case $reload_flag in
2956"" | " "*) ;;
2957*) reload_flag=" $reload_flag" ;;
2958esac
2959reload_cmds='$LD$reload_flag -o $output$reload_objs'
vapier7f19c022007-02-17 14:46:31 +00002960case $host_os in
2961 darwin*)
2962 if test "$GCC" = yes; then
2963 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
2964 else
2965 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2966 fi
2967 ;;
2968esac
mlcreech636a9952008-05-05 22:52:56 +00002969_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
2970_LT_DECL([], [reload_cmds], [2])dnl
2971])# _LT_CMD_RELOAD
a.rottmann9bc8b932004-02-29 15:18:31 +00002972
2973
mlcreech636a9952008-05-05 22:52:56 +00002974# _LT_CHECK_MAGIC_METHOD
2975# ----------------------
a.rottmann9bc8b932004-02-29 15:18:31 +00002976# how to check for library dependencies
2977# -- PORTME fill in with the dynamic library characteristics
mlcreech636a9952008-05-05 22:52:56 +00002978m4_defun([_LT_CHECK_MAGIC_METHOD],
2979[m4_require([_LT_DECL_EGREP])
vapier6acb2cf2009-01-28 04:46:28 +00002980m4_require([_LT_DECL_OBJDUMP])
mlcreech636a9952008-05-05 22:52:56 +00002981AC_CACHE_CHECK([how to recognize dependent libraries],
a.rottmann9bc8b932004-02-29 15:18:31 +00002982lt_cv_deplibs_check_method,
2983[lt_cv_file_magic_cmd='$MAGIC_CMD'
2984lt_cv_file_magic_test_file=
2985lt_cv_deplibs_check_method='unknown'
2986# Need to set the preceding variable on all platforms that support
2987# interlibrary dependencies.
2988# 'none' -- dependencies not supported.
2989# `unknown' -- same as none, but documents that we really don't know.
2990# 'pass_all' -- all dependencies passed with no checks.
2991# 'test_compile' -- check by making test program.
2992# 'file_magic [[regex]]' -- check by looking for files in library path
2993# which responds to the $file_magic_cmd with a given extended regex.
2994# If you have `file' or equivalent on your system and you're not sure
2995# whether `pass_all' will *always* work, you probably want this one.
2996
2997case $host_os in
mlcreech636a9952008-05-05 22:52:56 +00002998aix[[4-9]]*)
a.rottmann9bc8b932004-02-29 15:18:31 +00002999 lt_cv_deplibs_check_method=pass_all
3000 ;;
3001
3002beos*)
3003 lt_cv_deplibs_check_method=pass_all
3004 ;;
3005
vapier7f19c022007-02-17 14:46:31 +00003006bsdi[[45]]*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003007 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3008 lt_cv_file_magic_cmd='/usr/bin/file -L'
3009 lt_cv_file_magic_test_file=/shlib/libc.so
3010 ;;
3011
3012cygwin*)
vapier7f19c022007-02-17 14:46:31 +00003013 # func_win32_libid is a shell function defined in ltmain.sh
a.rottmann9bc8b932004-02-29 15:18:31 +00003014 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
vapier7f19c022007-02-17 14:46:31 +00003015 lt_cv_file_magic_cmd='func_win32_libid'
a.rottmann9bc8b932004-02-29 15:18:31 +00003016 ;;
3017
3018mingw* | pw32*)
3019 # Base MSYS/MinGW do not provide the 'file' command needed by
mlcreech636a9952008-05-05 22:52:56 +00003020 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3021 # unless we find 'file', for example because we are cross-compiling.
3022 if ( file / ) >/dev/null 2>&1; then
3023 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3024 lt_cv_file_magic_cmd='func_win32_libid'
3025 else
3026 lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
3027 lt_cv_file_magic_cmd='$OBJDUMP -f'
3028 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00003029 ;;
3030
vapier6acb2cf2009-01-28 04:46:28 +00003031cegcc)
3032 # use the weaker test based on 'objdump'. See mingw*.
3033 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3034 lt_cv_file_magic_cmd='$OBJDUMP -f'
3035 ;;
3036
a.rottmann9bc8b932004-02-29 15:18:31 +00003037darwin* | rhapsody*)
3038 lt_cv_deplibs_check_method=pass_all
3039 ;;
3040
mlcreech636a9952008-05-05 22:52:56 +00003041freebsd* | dragonfly*)
3042 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
a.rottmann9bc8b932004-02-29 15:18:31 +00003043 case $host_cpu in
3044 i*86 )
3045 # Not sure whether the presence of OpenBSD here was a mistake.
3046 # Let's accept both of them until this is cleared up.
vapier7f19c022007-02-17 14:46:31 +00003047 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
a.rottmann9bc8b932004-02-29 15:18:31 +00003048 lt_cv_file_magic_cmd=/usr/bin/file
3049 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3050 ;;
3051 esac
3052 else
3053 lt_cv_deplibs_check_method=pass_all
3054 fi
3055 ;;
3056
3057gnu*)
3058 lt_cv_deplibs_check_method=pass_all
3059 ;;
3060
3061hpux10.20* | hpux11*)
3062 lt_cv_file_magic_cmd=/usr/bin/file
vapier7f19c022007-02-17 14:46:31 +00003063 case $host_cpu in
a.rottmann9bc8b932004-02-29 15:18:31 +00003064 ia64*)
3065 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3066 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3067 ;;
3068 hppa*64*)
3069 [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]']
3070 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3071 ;;
3072 *)
3073 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
3074 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3075 ;;
3076 esac
3077 ;;
3078
mlcreech636a9952008-05-05 22:52:56 +00003079interix[[3-9]]*)
vapier7f19c022007-02-17 14:46:31 +00003080 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3081 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3082 ;;
3083
a.rottmann9bc8b932004-02-29 15:18:31 +00003084irix5* | irix6* | nonstopux*)
3085 case $LD in
3086 *-32|*"-32 ") libmagic=32-bit;;
3087 *-n32|*"-n32 ") libmagic=N32;;
3088 *-64|*"-64 ") libmagic=64-bit;;
3089 *) libmagic=never-match;;
3090 esac
3091 lt_cv_deplibs_check_method=pass_all
3092 ;;
3093
3094# This must be Linux ELF.
mlcreech636a9952008-05-05 22:52:56 +00003095linux* | k*bsd*-gnu)
a.rottmann9bc8b932004-02-29 15:18:31 +00003096 lt_cv_deplibs_check_method=pass_all
3097 ;;
3098
vapier7f19c022007-02-17 14:46:31 +00003099netbsd*)
mlcreech636a9952008-05-05 22:52:56 +00003100 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
a.rottmann9bc8b932004-02-29 15:18:31 +00003101 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3102 else
3103 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3104 fi
3105 ;;
3106
3107newos6*)
3108 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3109 lt_cv_file_magic_cmd=/usr/bin/file
3110 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3111 ;;
3112
mlcreech636a9952008-05-05 22:52:56 +00003113*nto* | *qnx*)
3114 lt_cv_deplibs_check_method=pass_all
a.rottmann9bc8b932004-02-29 15:18:31 +00003115 ;;
3116
3117openbsd*)
mlcreech636a9952008-05-05 22:52:56 +00003118 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
vapier7f19c022007-02-17 14:46:31 +00003119 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
a.rottmann9bc8b932004-02-29 15:18:31 +00003120 else
vapier7f19c022007-02-17 14:46:31 +00003121 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
a.rottmann9bc8b932004-02-29 15:18:31 +00003122 fi
3123 ;;
3124
3125osf3* | osf4* | osf5*)
3126 lt_cv_deplibs_check_method=pass_all
3127 ;;
3128
mlcreech636a9952008-05-05 22:52:56 +00003129rdos*)
3130 lt_cv_deplibs_check_method=pass_all
3131 ;;
3132
a.rottmann9bc8b932004-02-29 15:18:31 +00003133solaris*)
3134 lt_cv_deplibs_check_method=pass_all
3135 ;;
3136
mlcreech636a9952008-05-05 22:52:56 +00003137sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3138 lt_cv_deplibs_check_method=pass_all
3139 ;;
3140
vapier7f19c022007-02-17 14:46:31 +00003141sysv4 | sysv4.3*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003142 case $host_vendor in
3143 motorola)
3144 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]]'
3145 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3146 ;;
3147 ncr)
3148 lt_cv_deplibs_check_method=pass_all
3149 ;;
3150 sequent)
3151 lt_cv_file_magic_cmd='/bin/file'
3152 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3153 ;;
3154 sni)
3155 lt_cv_file_magic_cmd='/bin/file'
3156 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3157 lt_cv_file_magic_test_file=/lib/libc.so
3158 ;;
3159 siemens)
3160 lt_cv_deplibs_check_method=pass_all
3161 ;;
vapier7f19c022007-02-17 14:46:31 +00003162 pc)
3163 lt_cv_deplibs_check_method=pass_all
3164 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00003165 esac
3166 ;;
3167
mlcreech636a9952008-05-05 22:52:56 +00003168tpf*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003169 lt_cv_deplibs_check_method=pass_all
3170 ;;
3171esac
3172])
3173file_magic_cmd=$lt_cv_file_magic_cmd
3174deplibs_check_method=$lt_cv_deplibs_check_method
3175test -z "$deplibs_check_method" && deplibs_check_method=unknown
mlcreech636a9952008-05-05 22:52:56 +00003176
3177_LT_DECL([], [deplibs_check_method], [1],
3178 [Method to check whether dependent libraries are shared objects])
3179_LT_DECL([], [file_magic_cmd], [1],
3180 [Command to use when deplibs_check_method == "file_magic"])
3181])# _LT_CHECK_MAGIC_METHOD
a.rottmann9bc8b932004-02-29 15:18:31 +00003182
3183
mlcreech636a9952008-05-05 22:52:56 +00003184# LT_PATH_NM
a.rottmann9bc8b932004-02-29 15:18:31 +00003185# ----------
mlcreech636a9952008-05-05 22:52:56 +00003186# find the pathname to a BSD- or MS-compatible name lister
3187AC_DEFUN([LT_PATH_NM],
3188[AC_REQUIRE([AC_PROG_CC])dnl
3189AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
a.rottmann9bc8b932004-02-29 15:18:31 +00003190[if test -n "$NM"; then
3191 # Let the user override the test.
3192 lt_cv_path_NM="$NM"
3193else
vapier7f19c022007-02-17 14:46:31 +00003194 lt_nm_to_check="${ac_tool_prefix}nm"
mlcreech636a9952008-05-05 22:52:56 +00003195 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
vapier7f19c022007-02-17 14:46:31 +00003196 lt_nm_to_check="$lt_nm_to_check nm"
3197 fi
3198 for lt_tmp_nm in $lt_nm_to_check; do
3199 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3200 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3201 IFS="$lt_save_ifs"
3202 test -z "$ac_dir" && ac_dir=.
3203 tmp_nm="$ac_dir/$lt_tmp_nm"
3204 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3205 # Check to see if the nm accepts a BSD-compat flag.
3206 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3207 # nm: unknown option "B" ignored
3208 # Tru64's nm complains that /dev/null is an invalid object file
3209 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3210 */dev/null* | *'Invalid file or object type'*)
3211 lt_cv_path_NM="$tmp_nm -B"
a.rottmann9bc8b932004-02-29 15:18:31 +00003212 break
3213 ;;
3214 *)
vapier7f19c022007-02-17 14:46:31 +00003215 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3216 */dev/null*)
3217 lt_cv_path_NM="$tmp_nm -p"
3218 break
3219 ;;
3220 *)
3221 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3222 continue # so that we can try to find one that supports BSD flags
3223 ;;
3224 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00003225 ;;
3226 esac
vapier7f19c022007-02-17 14:46:31 +00003227 fi
3228 done
3229 IFS="$lt_save_ifs"
a.rottmann9bc8b932004-02-29 15:18:31 +00003230 done
mlcreech636a9952008-05-05 22:52:56 +00003231 : ${lt_cv_path_NM=no}
a.rottmann9bc8b932004-02-29 15:18:31 +00003232fi])
mlcreech636a9952008-05-05 22:52:56 +00003233if test "$lt_cv_path_NM" != "no"; then
3234 NM="$lt_cv_path_NM"
3235else
3236 # Didn't find any BSD compatible name lister, look for dumpbin.
3237 AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
3238 AC_SUBST([DUMPBIN])
3239 if test "$DUMPBIN" != ":"; then
3240 NM="$DUMPBIN"
3241 fi
3242fi
3243test -z "$NM" && NM=nm
3244AC_SUBST([NM])
3245_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3246
3247AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3248 [lt_cv_nm_interface="BSD nm"
3249 echo "int some_variable = 0;" > conftest.$ac_ext
3250 (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3251 (eval "$ac_compile" 2>conftest.err)
3252 cat conftest.err >&AS_MESSAGE_LOG_FD
3253 (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3254 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3255 cat conftest.err >&AS_MESSAGE_LOG_FD
3256 (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
3257 cat conftest.out >&AS_MESSAGE_LOG_FD
3258 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3259 lt_cv_nm_interface="MS dumpbin"
3260 fi
3261 rm -f conftest*])
3262])# LT_PATH_NM
3263
3264# Old names:
3265AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3266AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3267dnl aclocal-1.4 backwards compatibility:
3268dnl AC_DEFUN([AM_PROG_NM], [])
3269dnl AC_DEFUN([AC_PROG_NM], [])
a.rottmann9bc8b932004-02-29 15:18:31 +00003270
3271
mlcreech636a9952008-05-05 22:52:56 +00003272# LT_LIB_M
3273# --------
a.rottmann9bc8b932004-02-29 15:18:31 +00003274# check for math library
mlcreech636a9952008-05-05 22:52:56 +00003275AC_DEFUN([LT_LIB_M],
a.rottmann9bc8b932004-02-29 15:18:31 +00003276[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3277LIBM=
3278case $host in
3279*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
3280 # These system don't have libm, or don't need it
3281 ;;
3282*-ncr-sysv4.3*)
3283 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3284 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3285 ;;
3286*)
3287 AC_CHECK_LIB(m, cos, LIBM="-lm")
3288 ;;
3289esac
mlcreech636a9952008-05-05 22:52:56 +00003290AC_SUBST([LIBM])
3291])# LT_LIB_M
a.rottmann9bc8b932004-02-29 15:18:31 +00003292
mlcreech636a9952008-05-05 22:52:56 +00003293# Old name:
3294AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3295dnl aclocal-1.4 backwards compatibility:
3296dnl AC_DEFUN([AC_CHECK_LIBM], [])
a.rottmann9bc8b932004-02-29 15:18:31 +00003297
a.rottmann9bc8b932004-02-29 15:18:31 +00003298
mlcreech636a9952008-05-05 22:52:56 +00003299# _LT_COMPILER_NO_RTTI([TAGNAME])
3300# -------------------------------
3301m4_defun([_LT_COMPILER_NO_RTTI],
3302[m4_require([_LT_TAG_COMPILER])dnl
a.rottmann9bc8b932004-02-29 15:18:31 +00003303
mlcreech636a9952008-05-05 22:52:56 +00003304_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
a.rottmann9bc8b932004-02-29 15:18:31 +00003305
3306if test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00003307 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
a.rottmann9bc8b932004-02-29 15:18:31 +00003308
mlcreech636a9952008-05-05 22:52:56 +00003309 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
a.rottmann9bc8b932004-02-29 15:18:31 +00003310 lt_cv_prog_compiler_rtti_exceptions,
3311 [-fno-rtti -fno-exceptions], [],
mlcreech636a9952008-05-05 22:52:56 +00003312 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
a.rottmann9bc8b932004-02-29 15:18:31 +00003313fi
mlcreech636a9952008-05-05 22:52:56 +00003314_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3315 [Compiler flag to turn off builtin functions])
3316])# _LT_COMPILER_NO_RTTI
a.rottmann9bc8b932004-02-29 15:18:31 +00003317
3318
mlcreech636a9952008-05-05 22:52:56 +00003319# _LT_CMD_GLOBAL_SYMBOLS
3320# ----------------------
3321m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3322[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3323AC_REQUIRE([AC_PROG_CC])dnl
3324AC_REQUIRE([LT_PATH_NM])dnl
3325AC_REQUIRE([LT_PATH_LD])dnl
3326m4_require([_LT_DECL_SED])dnl
3327m4_require([_LT_DECL_EGREP])dnl
3328m4_require([_LT_TAG_COMPILER])dnl
3329
a.rottmann9bc8b932004-02-29 15:18:31 +00003330# Check for command to grab the raw symbol name followed by C symbol from nm.
3331AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3332AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3333[
3334# These are sane defaults that work on at least a few old systems.
3335# [They come from Ultrix. What could be older than Ultrix?!! ;)]
3336
3337# Character class describing NM global symbol codes.
3338symcode='[[BCDEGRST]]'
3339
3340# Regexp to match symbols that can be accessed directly from C.
3341sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3342
a.rottmann9bc8b932004-02-29 15:18:31 +00003343# Define system-specific variables.
3344case $host_os in
3345aix*)
3346 symcode='[[BCDT]]'
3347 ;;
vapier6acb2cf2009-01-28 04:46:28 +00003348cygwin* | mingw* | pw32* | cegcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003349 symcode='[[ABCDGISTW]]'
3350 ;;
mlcreech636a9952008-05-05 22:52:56 +00003351hpux*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003352 if test "$host_cpu" = ia64; then
3353 symcode='[[ABCDEGRST]]'
3354 fi
vapier7f19c022007-02-17 14:46:31 +00003355 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00003356irix* | nonstopux*)
3357 symcode='[[BCDEGRST]]'
3358 ;;
3359osf*)
3360 symcode='[[BCDEGQRST]]'
3361 ;;
vapier7f19c022007-02-17 14:46:31 +00003362solaris*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003363 symcode='[[BDRT]]'
3364 ;;
vapier7f19c022007-02-17 14:46:31 +00003365sco3.2v5*)
3366 symcode='[[DT]]'
3367 ;;
3368sysv4.2uw2*)
3369 symcode='[[DT]]'
3370 ;;
3371sysv5* | sco5v6* | unixware* | OpenUNIX*)
3372 symcode='[[ABDT]]'
3373 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00003374sysv4)
3375 symcode='[[DFNSTU]]'
3376 ;;
3377esac
3378
a.rottmann9bc8b932004-02-29 15:18:31 +00003379# If we're using GNU nm, then use its standard symbol codes.
3380case `$NM -V 2>&1` in
3381*GNU* | *'with BFD'*)
3382 symcode='[[ABCDGIRSTW]]' ;;
3383esac
3384
mlcreech636a9952008-05-05 22:52:56 +00003385# Transform an extracted symbol line into a proper C declaration.
3386# Some systems (esp. on ia64) link data and code symbols differently,
3387# so use this general approach.
3388lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3389
3390# Transform an extracted symbol line into symbol name and symbol address
3391lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3392lt_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'"
3393
3394# Handle CRLF in mingw tool chain
3395opt_cr=
3396case $build_os in
3397mingw*)
3398 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3399 ;;
3400esac
3401
3402# Try without a prefix underscore, then with it.
a.rottmann9bc8b932004-02-29 15:18:31 +00003403for ac_symprfx in "" "_"; do
3404
vapier7f19c022007-02-17 14:46:31 +00003405 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3406 symxfrm="\\1 $ac_symprfx\\2 \\2"
3407
a.rottmann9bc8b932004-02-29 15:18:31 +00003408 # Write the raw and C identifiers.
mlcreech636a9952008-05-05 22:52:56 +00003409 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3410 # Fake it for dumpbin and say T for any non-static function
3411 # and D for any global variable.
3412 # Also find C++ and __fastcall symbols from MSVC++,
3413 # which start with @ or ?.
3414 lt_cv_sys_global_symbol_pipe="$AWK ['"\
3415" {last_section=section; section=\$ 3};"\
3416" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3417" \$ 0!~/External *\|/{next};"\
3418" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3419" {if(hide[section]) next};"\
3420" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3421" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3422" s[1]~/^[@?]/{print s[1], s[1]; next};"\
3423" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3424" ' prfx=^$ac_symprfx]"
3425 else
3426 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3427 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00003428
3429 # Check to see that the pipe works correctly.
3430 pipe_works=no
3431
3432 rm -f conftest*
mlcreech636a9952008-05-05 22:52:56 +00003433 cat > conftest.$ac_ext <<_LT_EOF
a.rottmann9bc8b932004-02-29 15:18:31 +00003434#ifdef __cplusplus
3435extern "C" {
3436#endif
3437char nm_test_var;
mlcreech636a9952008-05-05 22:52:56 +00003438void nm_test_func(void);
3439void nm_test_func(void){}
a.rottmann9bc8b932004-02-29 15:18:31 +00003440#ifdef __cplusplus
3441}
3442#endif
3443int main(){nm_test_var='a';nm_test_func();return(0);}
mlcreech636a9952008-05-05 22:52:56 +00003444_LT_EOF
a.rottmann9bc8b932004-02-29 15:18:31 +00003445
3446 if AC_TRY_EVAL(ac_compile); then
3447 # Now try to grab the symbols.
3448 nlist=conftest.nm
3449 if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
3450 # Try sorting and uniquifying the output.
3451 if sort "$nlist" | uniq > "$nlist"T; then
3452 mv -f "$nlist"T "$nlist"
3453 else
3454 rm -f "$nlist"T
3455 fi
3456
3457 # Make sure that we snagged all the symbols we need.
mlcreech636a9952008-05-05 22:52:56 +00003458 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3459 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3460 cat <<_LT_EOF > conftest.$ac_ext
a.rottmann9bc8b932004-02-29 15:18:31 +00003461#ifdef __cplusplus
3462extern "C" {
3463#endif
3464
mlcreech636a9952008-05-05 22:52:56 +00003465_LT_EOF
a.rottmann9bc8b932004-02-29 15:18:31 +00003466 # Now generate the symbol file.
mlcreech636a9952008-05-05 22:52:56 +00003467 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
a.rottmann9bc8b932004-02-29 15:18:31 +00003468
mlcreech636a9952008-05-05 22:52:56 +00003469 cat <<_LT_EOF >> conftest.$ac_ext
a.rottmann9bc8b932004-02-29 15:18:31 +00003470
mlcreech636a9952008-05-05 22:52:56 +00003471/* The mapping between symbol names and symbols. */
a.rottmann9bc8b932004-02-29 15:18:31 +00003472const struct {
3473 const char *name;
mlcreech636a9952008-05-05 22:52:56 +00003474 void *address;
a.rottmann9bc8b932004-02-29 15:18:31 +00003475}
mlcreech636a9952008-05-05 22:52:56 +00003476lt__PROGRAM__LTX_preloaded_symbols[[]] =
a.rottmann9bc8b932004-02-29 15:18:31 +00003477{
mlcreech636a9952008-05-05 22:52:56 +00003478 { "@PROGRAM@", (void *) 0 },
3479_LT_EOF
3480 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3481 cat <<\_LT_EOF >> conftest.$ac_ext
3482 {0, (void *) 0}
a.rottmann9bc8b932004-02-29 15:18:31 +00003483};
3484
mlcreech636a9952008-05-05 22:52:56 +00003485/* This works around a problem in FreeBSD linker */
3486#ifdef FREEBSD_WORKAROUND
3487static const void *lt_preloaded_setup() {
3488 return lt__PROGRAM__LTX_preloaded_symbols;
3489}
3490#endif
3491
a.rottmann9bc8b932004-02-29 15:18:31 +00003492#ifdef __cplusplus
3493}
3494#endif
mlcreech636a9952008-05-05 22:52:56 +00003495_LT_EOF
a.rottmann9bc8b932004-02-29 15:18:31 +00003496 # Now try linking the two files.
3497 mv conftest.$ac_objext conftstm.$ac_objext
3498 lt_save_LIBS="$LIBS"
3499 lt_save_CFLAGS="$CFLAGS"
3500 LIBS="conftstm.$ac_objext"
mlcreech636a9952008-05-05 22:52:56 +00003501 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
a.rottmann9bc8b932004-02-29 15:18:31 +00003502 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3503 pipe_works=yes
3504 fi
3505 LIBS="$lt_save_LIBS"
3506 CFLAGS="$lt_save_CFLAGS"
3507 else
3508 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3509 fi
3510 else
3511 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3512 fi
3513 else
3514 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
3515 fi
3516 else
3517 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3518 cat conftest.$ac_ext >&5
3519 fi
mlcreech636a9952008-05-05 22:52:56 +00003520 rm -rf conftest* conftst*
a.rottmann9bc8b932004-02-29 15:18:31 +00003521
3522 # Do not use the global_symbol_pipe unless it works.
3523 if test "$pipe_works" = yes; then
3524 break
3525 else
3526 lt_cv_sys_global_symbol_pipe=
3527 fi
3528done
3529])
3530if test -z "$lt_cv_sys_global_symbol_pipe"; then
3531 lt_cv_sys_global_symbol_to_cdecl=
3532fi
3533if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3534 AC_MSG_RESULT(failed)
3535else
3536 AC_MSG_RESULT(ok)
3537fi
mlcreech636a9952008-05-05 22:52:56 +00003538
3539_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3540 [Take the output of nm and produce a listing of raw symbols and C names])
3541_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3542 [Transform the output of nm in a proper C declaration])
3543_LT_DECL([global_symbol_to_c_name_address],
3544 [lt_cv_sys_global_symbol_to_c_name_address], [1],
3545 [Transform the output of nm in a C name address pair])
3546_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3547 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3548 [Transform the output of nm in a C name address pair when lib prefix is needed])
3549]) # _LT_CMD_GLOBAL_SYMBOLS
a.rottmann9bc8b932004-02-29 15:18:31 +00003550
3551
mlcreech636a9952008-05-05 22:52:56 +00003552# _LT_COMPILER_PIC([TAGNAME])
3553# ---------------------------
3554m4_defun([_LT_COMPILER_PIC],
3555[m4_require([_LT_TAG_COMPILER])dnl
3556_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3557_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3558_LT_TAGVAR(lt_prog_compiler_static, $1)=
a.rottmann9bc8b932004-02-29 15:18:31 +00003559
3560AC_MSG_CHECKING([for $compiler option to produce PIC])
mlcreech636a9952008-05-05 22:52:56 +00003561m4_if([$1], [CXX], [
a.rottmann9bc8b932004-02-29 15:18:31 +00003562 # C++ specific cases for pic, static, wl, etc.
3563 if test "$GXX" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00003564 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3565 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
a.rottmann9bc8b932004-02-29 15:18:31 +00003566
3567 case $host_os in
3568 aix*)
3569 # All AIX code is PIC.
3570 if test "$host_cpu" = ia64; then
3571 # AIX 5 now supports IA64 processor
mlcreech636a9952008-05-05 22:52:56 +00003572 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00003573 fi
3574 ;;
mlcreech636a9952008-05-05 22:52:56 +00003575
a.rottmann9bc8b932004-02-29 15:18:31 +00003576 amigaos*)
mlcreech636a9952008-05-05 22:52:56 +00003577 case $host_cpu in
3578 powerpc)
3579 # see comment about AmigaOS4 .so support
3580 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3581 ;;
3582 m68k)
3583 # FIXME: we need at least 68020 code to build shared libraries, but
3584 # adding the `-m68020' flag to GCC prevents building anything better,
3585 # like `-m68040'.
3586 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3587 ;;
3588 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00003589 ;;
mlcreech636a9952008-05-05 22:52:56 +00003590
3591 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003592 # PIC is the default for these OSes.
3593 ;;
vapier6acb2cf2009-01-28 04:46:28 +00003594 mingw* | cygwin* | os2* | pw32* | cegcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003595 # This hack is so that the source file can tell whether it is being
3596 # built for inclusion in a dll (and should export symbols for example).
mlcreech636a9952008-05-05 22:52:56 +00003597 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3598 # (--disable-auto-import) libraries
3599 m4_if([$1], [GCJ], [],
3600 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
a.rottmann9bc8b932004-02-29 15:18:31 +00003601 ;;
3602 darwin* | rhapsody*)
3603 # PIC is the default on this platform
3604 # Common symbols not allowed in MH_DYLIB files
mlcreech636a9952008-05-05 22:52:56 +00003605 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
a.rottmann9bc8b932004-02-29 15:18:31 +00003606 ;;
3607 *djgpp*)
3608 # DJGPP does not support shared libraries at all
mlcreech636a9952008-05-05 22:52:56 +00003609 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
a.rottmann9bc8b932004-02-29 15:18:31 +00003610 ;;
mlcreech636a9952008-05-05 22:52:56 +00003611 interix[[3-9]]*)
vapier7f19c022007-02-17 14:46:31 +00003612 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3613 # Instead, we relocate shared libraries at runtime.
3614 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00003615 sysv4*MP*)
3616 if test -d /usr/nec; then
mlcreech636a9952008-05-05 22:52:56 +00003617 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
a.rottmann9bc8b932004-02-29 15:18:31 +00003618 fi
3619 ;;
3620 hpux*)
vapier6acb2cf2009-01-28 04:46:28 +00003621 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3622 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3623 # sets the default TLS model and affects inlining.
vapier7f19c022007-02-17 14:46:31 +00003624 case $host_cpu in
vapier6acb2cf2009-01-28 04:46:28 +00003625 hppa*64*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003626 ;;
3627 *)
mlcreech636a9952008-05-05 22:52:56 +00003628 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
a.rottmann9bc8b932004-02-29 15:18:31 +00003629 ;;
3630 esac
3631 ;;
mlcreech636a9952008-05-05 22:52:56 +00003632 *qnx* | *nto*)
3633 # QNX uses GNU C++, but need to define -shared option too, otherwise
3634 # it will coredump.
3635 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3636 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00003637 *)
mlcreech636a9952008-05-05 22:52:56 +00003638 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
a.rottmann9bc8b932004-02-29 15:18:31 +00003639 ;;
3640 esac
3641 else
3642 case $host_os in
mlcreech636a9952008-05-05 22:52:56 +00003643 aix[[4-9]]*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003644 # All AIX code is PIC.
3645 if test "$host_cpu" = ia64; then
3646 # AIX 5 now supports IA64 processor
mlcreech636a9952008-05-05 22:52:56 +00003647 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00003648 else
mlcreech636a9952008-05-05 22:52:56 +00003649 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
a.rottmann9bc8b932004-02-29 15:18:31 +00003650 fi
3651 ;;
3652 chorus*)
3653 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003654 cxch68*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003655 # Green Hills C++ Compiler
mlcreech636a9952008-05-05 22:52:56 +00003656 # _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"
a.rottmann9bc8b932004-02-29 15:18:31 +00003657 ;;
3658 esac
3659 ;;
3660 dgux*)
3661 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003662 ec++*)
mlcreech636a9952008-05-05 22:52:56 +00003663 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
a.rottmann9bc8b932004-02-29 15:18:31 +00003664 ;;
vapier7f19c022007-02-17 14:46:31 +00003665 ghcx*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003666 # Green Hills C++ Compiler
mlcreech636a9952008-05-05 22:52:56 +00003667 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
a.rottmann9bc8b932004-02-29 15:18:31 +00003668 ;;
3669 *)
3670 ;;
3671 esac
3672 ;;
mlcreech636a9952008-05-05 22:52:56 +00003673 freebsd* | dragonfly*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003674 # FreeBSD uses GNU C++
3675 ;;
3676 hpux9* | hpux10* | hpux11*)
3677 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003678 CC*)
mlcreech636a9952008-05-05 22:52:56 +00003679 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3680 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
a.rottmann9bc8b932004-02-29 15:18:31 +00003681 if test "$host_cpu" != ia64; then
mlcreech636a9952008-05-05 22:52:56 +00003682 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
a.rottmann9bc8b932004-02-29 15:18:31 +00003683 fi
3684 ;;
vapier7f19c022007-02-17 14:46:31 +00003685 aCC*)
mlcreech636a9952008-05-05 22:52:56 +00003686 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3687 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
vapier7f19c022007-02-17 14:46:31 +00003688 case $host_cpu in
a.rottmann9bc8b932004-02-29 15:18:31 +00003689 hppa*64*|ia64*)
3690 # +Z the default
3691 ;;
3692 *)
mlcreech636a9952008-05-05 22:52:56 +00003693 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
a.rottmann9bc8b932004-02-29 15:18:31 +00003694 ;;
3695 esac
3696 ;;
3697 *)
3698 ;;
3699 esac
3700 ;;
vapier7f19c022007-02-17 14:46:31 +00003701 interix*)
3702 # This is c89, which is MS Visual C++ (no shared libs)
3703 # Anyone wants to do a port?
3704 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00003705 irix5* | irix6* | nonstopux*)
3706 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003707 CC*)
mlcreech636a9952008-05-05 22:52:56 +00003708 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3709 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
a.rottmann9bc8b932004-02-29 15:18:31 +00003710 # CC pic flag -KPIC is the default.
3711 ;;
3712 *)
3713 ;;
3714 esac
3715 ;;
mlcreech636a9952008-05-05 22:52:56 +00003716 linux* | k*bsd*-gnu)
a.rottmann9bc8b932004-02-29 15:18:31 +00003717 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003718 KCC*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003719 # KAI C++ Compiler
mlcreech636a9952008-05-05 22:52:56 +00003720 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
3721 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
a.rottmann9bc8b932004-02-29 15:18:31 +00003722 ;;
vapier6acb2cf2009-01-28 04:46:28 +00003723 ecpc* )
3724 # old Intel C++ for x86_64 which still supported -KPIC.
mlcreech636a9952008-05-05 22:52:56 +00003725 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3726 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3727 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
a.rottmann9bc8b932004-02-29 15:18:31 +00003728 ;;
vapier6acb2cf2009-01-28 04:46:28 +00003729 icpc* )
3730 # Intel C++, used to be incompatible with GCC.
3731 # ICC 10 doesn't accept -KPIC any more.
3732 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3733 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3734 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
3735 ;;
mlcreech636a9952008-05-05 22:52:56 +00003736 pgCC* | pgcpp*)
3737 # Portland Group C++ compiler
3738 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3739 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
3740 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
vapier7f19c022007-02-17 14:46:31 +00003741 ;;
3742 cxx*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003743 # Compaq C++
3744 # Make sure the PIC flag is empty. It appears that all Alpha
3745 # Linux and Compaq Tru64 Unix objects are PIC.
mlcreech636a9952008-05-05 22:52:56 +00003746 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3747 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
3748 ;;
3749 xlc* | xlC*)
3750 # IBM XL 8.0 on PPC
3751 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3752 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
3753 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
a.rottmann9bc8b932004-02-29 15:18:31 +00003754 ;;
3755 *)
mlcreech636a9952008-05-05 22:52:56 +00003756 case `$CC -V 2>&1 | sed 5q` in
3757 *Sun\ C*)
3758 # Sun C++ 5.9
3759 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3760 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3761 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
3762 ;;
3763 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00003764 ;;
3765 esac
3766 ;;
3767 lynxos*)
3768 ;;
3769 m88k*)
3770 ;;
3771 mvs*)
3772 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003773 cxx*)
mlcreech636a9952008-05-05 22:52:56 +00003774 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
a.rottmann9bc8b932004-02-29 15:18:31 +00003775 ;;
3776 *)
3777 ;;
3778 esac
3779 ;;
vapier7f19c022007-02-17 14:46:31 +00003780 netbsd*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003781 ;;
mlcreech636a9952008-05-05 22:52:56 +00003782 *qnx* | *nto*)
3783 # QNX uses GNU C++, but need to define -shared option too, otherwise
3784 # it will coredump.
3785 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3786 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00003787 osf3* | osf4* | osf5*)
3788 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003789 KCC*)
mlcreech636a9952008-05-05 22:52:56 +00003790 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
a.rottmann9bc8b932004-02-29 15:18:31 +00003791 ;;
vapier7f19c022007-02-17 14:46:31 +00003792 RCC*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003793 # Rational C++ 2.4.1
mlcreech636a9952008-05-05 22:52:56 +00003794 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
a.rottmann9bc8b932004-02-29 15:18:31 +00003795 ;;
vapier7f19c022007-02-17 14:46:31 +00003796 cxx*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003797 # Digital/Compaq C++
mlcreech636a9952008-05-05 22:52:56 +00003798 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
a.rottmann9bc8b932004-02-29 15:18:31 +00003799 # Make sure the PIC flag is empty. It appears that all Alpha
3800 # Linux and Compaq Tru64 Unix objects are PIC.
mlcreech636a9952008-05-05 22:52:56 +00003801 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3802 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
a.rottmann9bc8b932004-02-29 15:18:31 +00003803 ;;
3804 *)
3805 ;;
3806 esac
3807 ;;
3808 psos*)
3809 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00003810 solaris*)
3811 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003812 CC*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003813 # Sun C++ 4.2, 5.x and Centerline C++
mlcreech636a9952008-05-05 22:52:56 +00003814 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3815 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3816 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
a.rottmann9bc8b932004-02-29 15:18:31 +00003817 ;;
vapier7f19c022007-02-17 14:46:31 +00003818 gcx*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003819 # Green Hills C++ Compiler
mlcreech636a9952008-05-05 22:52:56 +00003820 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
a.rottmann9bc8b932004-02-29 15:18:31 +00003821 ;;
3822 *)
3823 ;;
3824 esac
3825 ;;
3826 sunos4*)
3827 case $cc_basename in
vapier7f19c022007-02-17 14:46:31 +00003828 CC*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003829 # Sun C++ 4.x
mlcreech636a9952008-05-05 22:52:56 +00003830 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
3831 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00003832 ;;
vapier7f19c022007-02-17 14:46:31 +00003833 lcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003834 # Lucid
mlcreech636a9952008-05-05 22:52:56 +00003835 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
a.rottmann9bc8b932004-02-29 15:18:31 +00003836 ;;
3837 *)
3838 ;;
3839 esac
3840 ;;
vapier7f19c022007-02-17 14:46:31 +00003841 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
3842 case $cc_basename in
3843 CC*)
mlcreech636a9952008-05-05 22:52:56 +00003844 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3845 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3846 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3847 ;;
3848 esac
3849 ;;
3850 tandem*)
3851 case $cc_basename in
3852 NCC*)
3853 # NonStop-UX NCC 3.20
3854 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3855 ;;
3856 *)
vapier7f19c022007-02-17 14:46:31 +00003857 ;;
3858 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00003859 ;;
3860 vxworks*)
3861 ;;
3862 *)
mlcreech636a9952008-05-05 22:52:56 +00003863 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00003864 ;;
3865 esac
3866 fi
3867],
3868[
3869 if test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00003870 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3871 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
a.rottmann9bc8b932004-02-29 15:18:31 +00003872
3873 case $host_os in
3874 aix*)
3875 # All AIX code is PIC.
3876 if test "$host_cpu" = ia64; then
3877 # AIX 5 now supports IA64 processor
mlcreech636a9952008-05-05 22:52:56 +00003878 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00003879 fi
3880 ;;
3881
3882 amigaos*)
mlcreech636a9952008-05-05 22:52:56 +00003883 case $host_cpu in
3884 powerpc)
3885 # see comment about AmigaOS4 .so support
3886 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3887 ;;
3888 m68k)
3889 # FIXME: we need at least 68020 code to build shared libraries, but
3890 # adding the `-m68020' flag to GCC prevents building anything better,
3891 # like `-m68040'.
3892 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3893 ;;
3894 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00003895 ;;
3896
mlcreech636a9952008-05-05 22:52:56 +00003897 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003898 # PIC is the default for these OSes.
3899 ;;
3900
vapier6acb2cf2009-01-28 04:46:28 +00003901 mingw* | cygwin* | pw32* | os2* | cegcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003902 # This hack is so that the source file can tell whether it is being
3903 # built for inclusion in a dll (and should export symbols for example).
mlcreech636a9952008-05-05 22:52:56 +00003904 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3905 # (--disable-auto-import) libraries
3906 m4_if([$1], [GCJ], [],
3907 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
a.rottmann9bc8b932004-02-29 15:18:31 +00003908 ;;
3909
3910 darwin* | rhapsody*)
3911 # PIC is the default on this platform
3912 # Common symbols not allowed in MH_DYLIB files
mlcreech636a9952008-05-05 22:52:56 +00003913 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
a.rottmann9bc8b932004-02-29 15:18:31 +00003914 ;;
3915
3916 hpux*)
vapier6acb2cf2009-01-28 04:46:28 +00003917 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3918 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3919 # sets the default TLS model and affects inlining.
vapier7f19c022007-02-17 14:46:31 +00003920 case $host_cpu in
vapier6acb2cf2009-01-28 04:46:28 +00003921 hppa*64*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003922 # +Z the default
3923 ;;
3924 *)
mlcreech636a9952008-05-05 22:52:56 +00003925 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
a.rottmann9bc8b932004-02-29 15:18:31 +00003926 ;;
3927 esac
3928 ;;
3929
mlcreech636a9952008-05-05 22:52:56 +00003930 interix[[3-9]]*)
3931 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3932 # Instead, we relocate shared libraries at runtime.
3933 ;;
3934
3935 msdosdjgpp*)
3936 # Just because we use GCC doesn't mean we suddenly get shared libraries
3937 # on systems that don't support them.
3938 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
3939 enable_shared=no
3940 ;;
3941
3942 *nto* | *qnx*)
3943 # QNX uses GNU C++, but need to define -shared option too, otherwise
3944 # it will coredump.
3945 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3946 ;;
3947
3948 sysv4*MP*)
3949 if test -d /usr/nec; then
3950 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
3951 fi
3952 ;;
3953
a.rottmann9bc8b932004-02-29 15:18:31 +00003954 *)
mlcreech636a9952008-05-05 22:52:56 +00003955 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
a.rottmann9bc8b932004-02-29 15:18:31 +00003956 ;;
3957 esac
3958 else
3959 # PORTME Check for flag to pass linker flags through the system compiler.
3960 case $host_os in
3961 aix*)
mlcreech636a9952008-05-05 22:52:56 +00003962 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
a.rottmann9bc8b932004-02-29 15:18:31 +00003963 if test "$host_cpu" = ia64; then
3964 # AIX 5 now supports IA64 processor
mlcreech636a9952008-05-05 22:52:56 +00003965 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00003966 else
mlcreech636a9952008-05-05 22:52:56 +00003967 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
a.rottmann9bc8b932004-02-29 15:18:31 +00003968 fi
3969 ;;
3970
vapier6acb2cf2009-01-28 04:46:28 +00003971 mingw* | cygwin* | pw32* | os2* | cegcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00003972 # This hack is so that the source file can tell whether it is being
3973 # built for inclusion in a dll (and should export symbols for example).
mlcreech636a9952008-05-05 22:52:56 +00003974 m4_if([$1], [GCJ], [],
3975 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
a.rottmann9bc8b932004-02-29 15:18:31 +00003976 ;;
3977
3978 hpux9* | hpux10* | hpux11*)
mlcreech636a9952008-05-05 22:52:56 +00003979 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
a.rottmann9bc8b932004-02-29 15:18:31 +00003980 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
3981 # not for PA HP-UX.
vapier7f19c022007-02-17 14:46:31 +00003982 case $host_cpu in
a.rottmann9bc8b932004-02-29 15:18:31 +00003983 hppa*64*|ia64*)
3984 # +Z the default
3985 ;;
3986 *)
mlcreech636a9952008-05-05 22:52:56 +00003987 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
a.rottmann9bc8b932004-02-29 15:18:31 +00003988 ;;
3989 esac
3990 # Is there a better lt_prog_compiler_static that works with the bundled CC?
mlcreech636a9952008-05-05 22:52:56 +00003991 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
a.rottmann9bc8b932004-02-29 15:18:31 +00003992 ;;
3993
3994 irix5* | irix6* | nonstopux*)
mlcreech636a9952008-05-05 22:52:56 +00003995 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
a.rottmann9bc8b932004-02-29 15:18:31 +00003996 # PIC (with -KPIC) is the default.
mlcreech636a9952008-05-05 22:52:56 +00003997 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
a.rottmann9bc8b932004-02-29 15:18:31 +00003998 ;;
3999
mlcreech636a9952008-05-05 22:52:56 +00004000 linux* | k*bsd*-gnu)
vapier7f19c022007-02-17 14:46:31 +00004001 case $cc_basename in
vapier6acb2cf2009-01-28 04:46:28 +00004002 # old Intel for x86_64 which still supported -KPIC.
4003 ecc*)
mlcreech636a9952008-05-05 22:52:56 +00004004 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4005 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4006 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
a.rottmann9bc8b932004-02-29 15:18:31 +00004007 ;;
vapier6acb2cf2009-01-28 04:46:28 +00004008 # icc used to be incompatible with GCC.
4009 # ICC 10 doesn't accept -KPIC any more.
4010 icc* | ifort*)
4011 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4012 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4013 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4014 ;;
4015 # Lahey Fortran 8.1.
4016 lf95*)
4017 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4018 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4019 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4020 ;;
vapier7f19c022007-02-17 14:46:31 +00004021 pgcc* | pgf77* | pgf90* | pgf95*)
4022 # Portland Group compilers (*not* the Pentium gcc compiler,
4023 # which looks to be a dead project)
mlcreech636a9952008-05-05 22:52:56 +00004024 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4025 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4026 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
vapier7f19c022007-02-17 14:46:31 +00004027 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00004028 ccc*)
mlcreech636a9952008-05-05 22:52:56 +00004029 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
a.rottmann9bc8b932004-02-29 15:18:31 +00004030 # All Alpha code is PIC.
mlcreech636a9952008-05-05 22:52:56 +00004031 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
a.rottmann9bc8b932004-02-29 15:18:31 +00004032 ;;
mlcreech636a9952008-05-05 22:52:56 +00004033 xl*)
4034 # IBM XL C 8.0/Fortran 10.1 on PPC
4035 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4036 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4037 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4038 ;;
4039 *)
4040 case `$CC -V 2>&1 | sed 5q` in
4041 *Sun\ C*)
4042 # Sun C 5.9
4043 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4044 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4045 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4046 ;;
4047 *Sun\ F*)
4048 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4049 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4050 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4051 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4052 ;;
4053 esac
4054 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00004055 esac
4056 ;;
4057
mlcreech636a9952008-05-05 22:52:56 +00004058 newsos6)
4059 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4060 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4061 ;;
4062
4063 *nto* | *qnx*)
4064 # QNX uses GNU C++, but need to define -shared option too, otherwise
4065 # it will coredump.
4066 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4067 ;;
4068
a.rottmann9bc8b932004-02-29 15:18:31 +00004069 osf3* | osf4* | osf5*)
mlcreech636a9952008-05-05 22:52:56 +00004070 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
a.rottmann9bc8b932004-02-29 15:18:31 +00004071 # All OSF/1 code is PIC.
mlcreech636a9952008-05-05 22:52:56 +00004072 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4073 ;;
4074
4075 rdos*)
4076 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
a.rottmann9bc8b932004-02-29 15:18:31 +00004077 ;;
4078
a.rottmann9bc8b932004-02-29 15:18:31 +00004079 solaris*)
mlcreech636a9952008-05-05 22:52:56 +00004080 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4081 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
vapier7f19c022007-02-17 14:46:31 +00004082 case $cc_basename in
4083 f77* | f90* | f95*)
mlcreech636a9952008-05-05 22:52:56 +00004084 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
vapier7f19c022007-02-17 14:46:31 +00004085 *)
mlcreech636a9952008-05-05 22:52:56 +00004086 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
vapier7f19c022007-02-17 14:46:31 +00004087 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00004088 ;;
4089
4090 sunos4*)
mlcreech636a9952008-05-05 22:52:56 +00004091 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4092 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4093 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00004094 ;;
4095
vapier7f19c022007-02-17 14:46:31 +00004096 sysv4 | sysv4.2uw2* | sysv4.3*)
mlcreech636a9952008-05-05 22:52:56 +00004097 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4098 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4099 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00004100 ;;
4101
4102 sysv4*MP*)
4103 if test -d /usr/nec ;then
mlcreech636a9952008-05-05 22:52:56 +00004104 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4105 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00004106 fi
4107 ;;
4108
vapier7f19c022007-02-17 14:46:31 +00004109 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
mlcreech636a9952008-05-05 22:52:56 +00004110 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4111 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4112 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
vapier7f19c022007-02-17 14:46:31 +00004113 ;;
4114
4115 unicos*)
mlcreech636a9952008-05-05 22:52:56 +00004116 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4117 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
vapier7f19c022007-02-17 14:46:31 +00004118 ;;
4119
a.rottmann9bc8b932004-02-29 15:18:31 +00004120 uts4*)
mlcreech636a9952008-05-05 22:52:56 +00004121 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4122 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
a.rottmann9bc8b932004-02-29 15:18:31 +00004123 ;;
4124
4125 *)
mlcreech636a9952008-05-05 22:52:56 +00004126 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004127 ;;
4128 esac
4129 fi
4130])
mlcreech636a9952008-05-05 22:52:56 +00004131case $host_os in
4132 # For platforms which do not support PIC, -DPIC is meaningless:
4133 *djgpp*)
4134 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4135 ;;
4136 *)
4137 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4138 ;;
4139esac
4140AC_MSG_RESULT([$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4141_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4142 [How to pass a linker flag through the compiler])
a.rottmann9bc8b932004-02-29 15:18:31 +00004143
4144#
4145# Check to make sure the PIC flag actually works.
4146#
mlcreech636a9952008-05-05 22:52:56 +00004147if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4148 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4149 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4150 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4151 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
a.rottmann9bc8b932004-02-29 15:18:31 +00004152 "" | " "*) ;;
mlcreech636a9952008-05-05 22:52:56 +00004153 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00004154 esac],
mlcreech636a9952008-05-05 22:52:56 +00004155 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4156 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
a.rottmann9bc8b932004-02-29 15:18:31 +00004157fi
mlcreech636a9952008-05-05 22:52:56 +00004158_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4159 [Additional compiler flags for building library objects])
vapier7f19c022007-02-17 14:46:31 +00004160
4161#
4162# Check to make sure the static flag actually works.
4163#
mlcreech636a9952008-05-05 22:52:56 +00004164wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4165_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4166 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
vapier7f19c022007-02-17 14:46:31 +00004167 $lt_tmp_static_flag,
4168 [],
mlcreech636a9952008-05-05 22:52:56 +00004169 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4170_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4171 [Compiler flag to prevent dynamic linking])
4172])# _LT_COMPILER_PIC
a.rottmann9bc8b932004-02-29 15:18:31 +00004173
4174
mlcreech636a9952008-05-05 22:52:56 +00004175# _LT_LINKER_SHLIBS([TAGNAME])
4176# ----------------------------
a.rottmann9bc8b932004-02-29 15:18:31 +00004177# See if the linker supports building shared libraries.
mlcreech636a9952008-05-05 22:52:56 +00004178m4_defun([_LT_LINKER_SHLIBS],
4179[AC_REQUIRE([LT_PATH_LD])dnl
4180AC_REQUIRE([LT_PATH_NM])dnl
4181m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4182m4_require([_LT_DECL_EGREP])dnl
4183m4_require([_LT_DECL_SED])dnl
4184m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4185m4_require([_LT_TAG_COMPILER])dnl
4186AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4187m4_if([$1], [CXX], [
4188 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
drh71eb93e2001-09-28 01:34:43 +00004189 case $host_os in
mlcreech636a9952008-05-05 22:52:56 +00004190 aix[[4-9]]*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004191 # If we're using GNU nm, then we don't want the "-C" option.
4192 # -C means demangle to AIX nm, but means don't demangle with GNU nm
mlcreech636a9952008-05-05 22:52:56 +00004193 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4194 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004195 else
mlcreech636a9952008-05-05 22:52:56 +00004196 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004197 fi
4198 ;;
4199 pw32*)
mlcreech636a9952008-05-05 22:52:56 +00004200 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
a.rottmann9bc8b932004-02-29 15:18:31 +00004201 ;;
vapier6acb2cf2009-01-28 04:46:28 +00004202 cygwin* | mingw* | cegcc*)
mlcreech636a9952008-05-05 22:52:56 +00004203 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004204 ;;
4205 *)
mlcreech636a9952008-05-05 22:52:56 +00004206 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
a.rottmann9bc8b932004-02-29 15:18:31 +00004207 ;;
4208 esac
mlcreech636a9952008-05-05 22:52:56 +00004209 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4210], [
a.rottmann9bc8b932004-02-29 15:18:31 +00004211 runpath_var=
mlcreech636a9952008-05-05 22:52:56 +00004212 _LT_TAGVAR(allow_undefined_flag, $1)=
4213 _LT_TAGVAR(always_export_symbols, $1)=no
4214 _LT_TAGVAR(archive_cmds, $1)=
4215 _LT_TAGVAR(archive_expsym_cmds, $1)=
4216 _LT_TAGVAR(compiler_needs_object, $1)=no
4217 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4218 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4219 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4220 _LT_TAGVAR(hardcode_automatic, $1)=no
4221 _LT_TAGVAR(hardcode_direct, $1)=no
4222 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4223 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4224 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
4225 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4226 _LT_TAGVAR(hardcode_minus_L, $1)=no
4227 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4228 _LT_TAGVAR(inherit_rpath, $1)=no
4229 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4230 _LT_TAGVAR(module_cmds, $1)=
4231 _LT_TAGVAR(module_expsym_cmds, $1)=
4232 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4233 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4234 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4235 _LT_TAGVAR(whole_archive_flag_spec, $1)=
a.rottmann9bc8b932004-02-29 15:18:31 +00004236 # include_expsyms should be a list of space-separated symbols to be *always*
4237 # included in the symbol list
mlcreech636a9952008-05-05 22:52:56 +00004238 _LT_TAGVAR(include_expsyms, $1)=
a.rottmann9bc8b932004-02-29 15:18:31 +00004239 # exclude_expsyms can be an extended regexp of symbols to exclude
4240 # it will be wrapped by ` (' and `)$', so one must not match beginning or
4241 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4242 # as well as any symbol that contains `d'.
mlcreech636a9952008-05-05 22:52:56 +00004243 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
a.rottmann9bc8b932004-02-29 15:18:31 +00004244 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4245 # platforms (ab)use it in PIC code, but their linkers get confused if
4246 # the symbol is explicitly referenced. Since portable code cannot
4247 # rely on this symbol name, it's probably fine to never include it in
4248 # preloaded symbol tables.
mlcreech636a9952008-05-05 22:52:56 +00004249 # Exclude shared library initialization/finalization symbols.
4250dnl Note also adjust exclude_expsyms for C++ above.
a.rottmann9bc8b932004-02-29 15:18:31 +00004251 extract_expsyms_cmds=
mlcreech636a9952008-05-05 22:52:56 +00004252
a.rottmann9bc8b932004-02-29 15:18:31 +00004253 case $host_os in
vapier6acb2cf2009-01-28 04:46:28 +00004254 cygwin* | mingw* | pw32* | cegcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004255 # FIXME: the MSVC++ port hasn't been tested in a loooong time
4256 # When not using gcc, we currently assume that we are using
4257 # Microsoft Visual C++.
4258 if test "$GCC" != yes; then
4259 with_gnu_ld=no
4260 fi
4261 ;;
vapier7f19c022007-02-17 14:46:31 +00004262 interix*)
4263 # we just hope/assume this is gcc and not c89 (= MSVC++)
4264 with_gnu_ld=yes
4265 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00004266 openbsd*)
4267 with_gnu_ld=no
4268 ;;
4269 esac
4270
mlcreech636a9952008-05-05 22:52:56 +00004271 _LT_TAGVAR(ld_shlibs, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00004272 if test "$with_gnu_ld" = yes; then
4273 # If archive_cmds runs LD, not CC, wlarc should be empty
4274 wlarc='${wl}'
4275
vapier7f19c022007-02-17 14:46:31 +00004276 # Set some defaults for GNU ld with shared library support. These
4277 # are reset later if shared libraries are not supported. Putting them
4278 # here allows them to be overridden if necessary.
4279 runpath_var=LD_RUN_PATH
mlcreech636a9952008-05-05 22:52:56 +00004280 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4281 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
vapier7f19c022007-02-17 14:46:31 +00004282 # ancient GNU ld didn't support --whole-archive et. al.
mlcreech636a9952008-05-05 22:52:56 +00004283 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4284 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4285 else
4286 _LT_TAGVAR(whole_archive_flag_spec, $1)=
vapier7f19c022007-02-17 14:46:31 +00004287 fi
4288 supports_anon_versioning=no
mlcreech636a9952008-05-05 22:52:56 +00004289 case `$LD -v 2>&1` in
vapier7f19c022007-02-17 14:46:31 +00004290 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4291 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4292 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4293 *\ 2.11.*) ;; # other 2.11 versions
4294 *) supports_anon_versioning=yes ;;
4295 esac
4296
a.rottmann9bc8b932004-02-29 15:18:31 +00004297 # See if GNU ld supports shared libraries.
4298 case $host_os in
mlcreech636a9952008-05-05 22:52:56 +00004299 aix[[3-9]]*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004300 # On AIX/PPC, the GNU linker is very broken
4301 if test "$host_cpu" != ia64; then
mlcreech636a9952008-05-05 22:52:56 +00004302 _LT_TAGVAR(ld_shlibs, $1)=no
4303 cat <<_LT_EOF 1>&2
a.rottmann9bc8b932004-02-29 15:18:31 +00004304
4305*** Warning: the GNU linker, at least up to release 2.9.1, is reported
4306*** to be unable to reliably create shared libraries on AIX.
4307*** Therefore, libtool is disabling shared libraries support. If you
4308*** really care for shared libraries, you may want to modify your PATH
4309*** so that a non-GNU linker is found, and then restart.
4310
mlcreech636a9952008-05-05 22:52:56 +00004311_LT_EOF
a.rottmann9bc8b932004-02-29 15:18:31 +00004312 fi
4313 ;;
4314
4315 amigaos*)
mlcreech636a9952008-05-05 22:52:56 +00004316 case $host_cpu in
4317 powerpc)
4318 # see comment about AmigaOS4 .so support
4319 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4320 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4321 ;;
4322 m68k)
4323 _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)'
4324 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4325 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4326 ;;
4327 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00004328 ;;
4329
4330 beos*)
mlcreech636a9952008-05-05 22:52:56 +00004331 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4332 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
a.rottmann9bc8b932004-02-29 15:18:31 +00004333 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4334 # support --undefined. This deserves some investigation. FIXME
mlcreech636a9952008-05-05 22:52:56 +00004335 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
a.rottmann9bc8b932004-02-29 15:18:31 +00004336 else
mlcreech636a9952008-05-05 22:52:56 +00004337 _LT_TAGVAR(ld_shlibs, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004338 fi
4339 ;;
4340
vapier6acb2cf2009-01-28 04:46:28 +00004341 cygwin* | mingw* | pw32* | cegcc*)
mlcreech636a9952008-05-05 22:52:56 +00004342 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
a.rottmann9bc8b932004-02-29 15:18:31 +00004343 # as there is no search path for DLLs.
mlcreech636a9952008-05-05 22:52:56 +00004344 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4345 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4346 _LT_TAGVAR(always_export_symbols, $1)=no
4347 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
4348 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004349
mlcreech636a9952008-05-05 22:52:56 +00004350 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4351 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004352 # If the export-symbols file already is a .def file (1st line
4353 # is EXPORTS), use it as is; otherwise, prepend...
mlcreech636a9952008-05-05 22:52:56 +00004354 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
a.rottmann9bc8b932004-02-29 15:18:31 +00004355 cp $export_symbols $output_objdir/$soname.def;
4356 else
4357 echo EXPORTS > $output_objdir/$soname.def;
4358 cat $export_symbols >> $output_objdir/$soname.def;
4359 fi~
vapier7f19c022007-02-17 14:46:31 +00004360 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
a.rottmann9bc8b932004-02-29 15:18:31 +00004361 else
mlcreech636a9952008-05-05 22:52:56 +00004362 _LT_TAGVAR(ld_shlibs, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004363 fi
4364 ;;
4365
mlcreech636a9952008-05-05 22:52:56 +00004366 interix[[3-9]]*)
4367 _LT_TAGVAR(hardcode_direct, $1)=no
4368 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4369 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4370 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
vapier7f19c022007-02-17 14:46:31 +00004371 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4372 # Instead, shared libraries are loaded at an image base (0x10000000 by
4373 # default) and relocated if they conflict, which is a slow very memory
4374 # consuming and fragmenting process. To avoid this, we pick a random,
4375 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4376 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
mlcreech636a9952008-05-05 22:52:56 +00004377 _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'
4378 _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'
vapier7f19c022007-02-17 14:46:31 +00004379 ;;
4380
mlcreech636a9952008-05-05 22:52:56 +00004381 gnu* | linux* | tpf* | k*bsd*-gnu)
4382 tmp_diet=no
4383 if test "$host_os" = linux-dietlibc; then
4384 case $cc_basename in
4385 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
4386 esac
4387 fi
4388 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4389 && test "$tmp_diet" = no
4390 then
vapier7f19c022007-02-17 14:46:31 +00004391 tmp_addflag=
mlcreech636a9952008-05-05 22:52:56 +00004392 tmp_sharedflag='-shared'
vapier7f19c022007-02-17 14:46:31 +00004393 case $cc_basename,$host_cpu in
mlcreech636a9952008-05-05 22:52:56 +00004394 pgcc*) # Portland Group C compiler
4395 _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'
vapier7f19c022007-02-17 14:46:31 +00004396 tmp_addflag=' $pic_flag'
4397 ;;
4398 pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
mlcreech636a9952008-05-05 22:52:56 +00004399 _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'
vapier7f19c022007-02-17 14:46:31 +00004400 tmp_addflag=' $pic_flag -Mnomain' ;;
mlcreech636a9952008-05-05 22:52:56 +00004401 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
vapier7f19c022007-02-17 14:46:31 +00004402 tmp_addflag=' -i_dynamic' ;;
4403 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
4404 tmp_addflag=' -i_dynamic -nofor_main' ;;
4405 ifc* | ifort*) # Intel Fortran compiler
4406 tmp_addflag=' -nofor_main' ;;
vapier6acb2cf2009-01-28 04:46:28 +00004407 lf95*) # Lahey Fortran 8.1
4408 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4409 tmp_sharedflag='--shared' ;;
mlcreech636a9952008-05-05 22:52:56 +00004410 xl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
4411 tmp_sharedflag='-qmkshrobj'
4412 tmp_addflag= ;;
vapier7f19c022007-02-17 14:46:31 +00004413 esac
mlcreech636a9952008-05-05 22:52:56 +00004414 case `$CC -V 2>&1 | sed 5q` in
4415 *Sun\ C*) # Sun C 5.9
4416 _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'
4417 _LT_TAGVAR(compiler_needs_object, $1)=yes
4418 tmp_sharedflag='-G' ;;
4419 *Sun\ F*) # Sun Fortran 8.3
4420 tmp_sharedflag='-G' ;;
4421 esac
4422 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
vapier7f19c022007-02-17 14:46:31 +00004423
mlcreech636a9952008-05-05 22:52:56 +00004424 if test "x$supports_anon_versioning" = xyes; then
4425 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4426 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4427 echo "local: *; };" >> $output_objdir/$libname.ver~
4428 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4429 fi
4430
4431 case $cc_basename in
4432 xlf*)
4433 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4434 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
4435 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4436 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
4437 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
4438 if test "x$supports_anon_versioning" = xyes; then
4439 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4440 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4441 echo "local: *; };" >> $output_objdir/$libname.ver~
4442 $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
4443 fi
4444 ;;
4445 esac
vapier7f19c022007-02-17 14:46:31 +00004446 else
mlcreech636a9952008-05-05 22:52:56 +00004447 _LT_TAGVAR(ld_shlibs, $1)=no
vapier7f19c022007-02-17 14:46:31 +00004448 fi
4449 ;;
4450
4451 netbsd*)
mlcreech636a9952008-05-05 22:52:56 +00004452 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4453 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
a.rottmann9bc8b932004-02-29 15:18:31 +00004454 wlarc=
4455 else
mlcreech636a9952008-05-05 22:52:56 +00004456 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4457 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004458 fi
4459 ;;
4460
vapier7f19c022007-02-17 14:46:31 +00004461 solaris*)
mlcreech636a9952008-05-05 22:52:56 +00004462 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4463 _LT_TAGVAR(ld_shlibs, $1)=no
4464 cat <<_LT_EOF 1>&2
a.rottmann9bc8b932004-02-29 15:18:31 +00004465
4466*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4467*** create shared libraries on Solaris systems. Therefore, libtool
4468*** is disabling shared libraries support. We urge you to upgrade GNU
4469*** binutils to release 2.9.1 or newer. Another option is to modify
4470*** your PATH or compiler configuration so that the native linker is
4471*** used, and then restart.
4472
mlcreech636a9952008-05-05 22:52:56 +00004473_LT_EOF
4474 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4475 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4476 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004477 else
mlcreech636a9952008-05-05 22:52:56 +00004478 _LT_TAGVAR(ld_shlibs, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004479 fi
4480 ;;
4481
vapier7f19c022007-02-17 14:46:31 +00004482 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4483 case `$LD -v 2>&1` in
mlcreech636a9952008-05-05 22:52:56 +00004484 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
4485 _LT_TAGVAR(ld_shlibs, $1)=no
vapier7f19c022007-02-17 14:46:31 +00004486 cat <<_LT_EOF 1>&2
4487
4488*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4489*** reliably create shared libraries on SCO systems. Therefore, libtool
4490*** is disabling shared libraries support. We urge you to upgrade GNU
4491*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
4492*** your PATH or compiler configuration so that the native linker is
4493*** used, and then restart.
4494
4495_LT_EOF
4496 ;;
4497 *)
mlcreech636a9952008-05-05 22:52:56 +00004498 # For security reasons, it is highly recommended that you always
4499 # use absolute paths for naming shared libraries, and exclude the
4500 # DT_RUNPATH tag from executables and libraries. But doing so
4501 # requires that you compile everything twice, which is a pain.
4502 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4503 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4504 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4505 _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'
vapier7f19c022007-02-17 14:46:31 +00004506 else
mlcreech636a9952008-05-05 22:52:56 +00004507 _LT_TAGVAR(ld_shlibs, $1)=no
vapier7f19c022007-02-17 14:46:31 +00004508 fi
4509 ;;
4510 esac
4511 ;;
4512
a.rottmann9bc8b932004-02-29 15:18:31 +00004513 sunos4*)
mlcreech636a9952008-05-05 22:52:56 +00004514 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00004515 wlarc=
mlcreech636a9952008-05-05 22:52:56 +00004516 _LT_TAGVAR(hardcode_direct, $1)=yes
4517 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004518 ;;
4519
a.rottmann9bc8b932004-02-29 15:18:31 +00004520 *)
mlcreech636a9952008-05-05 22:52:56 +00004521 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4522 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4523 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004524 else
mlcreech636a9952008-05-05 22:52:56 +00004525 _LT_TAGVAR(ld_shlibs, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004526 fi
4527 ;;
4528 esac
4529
mlcreech636a9952008-05-05 22:52:56 +00004530 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
vapier7f19c022007-02-17 14:46:31 +00004531 runpath_var=
mlcreech636a9952008-05-05 22:52:56 +00004532 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4533 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4534 _LT_TAGVAR(whole_archive_flag_spec, $1)=
a.rottmann9bc8b932004-02-29 15:18:31 +00004535 fi
4536 else
4537 # PORTME fill in a description of your system's linker (not GNU ld)
4538 case $host_os in
4539 aix3*)
mlcreech636a9952008-05-05 22:52:56 +00004540 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4541 _LT_TAGVAR(always_export_symbols, $1)=yes
4542 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004543 # Note: this linker hardcodes the directories in LIBPATH if there
4544 # are no directories specified by -L.
mlcreech636a9952008-05-05 22:52:56 +00004545 _LT_TAGVAR(hardcode_minus_L, $1)=yes
vapier7f19c022007-02-17 14:46:31 +00004546 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
a.rottmann9bc8b932004-02-29 15:18:31 +00004547 # Neither direct hardcoding nor static linking is supported with a
4548 # broken collect2.
mlcreech636a9952008-05-05 22:52:56 +00004549 _LT_TAGVAR(hardcode_direct, $1)=unsupported
a.rottmann9bc8b932004-02-29 15:18:31 +00004550 fi
4551 ;;
4552
mlcreech636a9952008-05-05 22:52:56 +00004553 aix[[4-9]]*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004554 if test "$host_cpu" = ia64; then
4555 # On IA64, the linker does run time linking by default, so we don't
4556 # have to do anything special.
4557 aix_use_runtimelinking=no
4558 exp_sym_flag='-Bexport'
4559 no_entry_flag=""
4560 else
4561 # If we're using GNU nm, then we don't want the "-C" option.
4562 # -C means demangle to AIX nm, but means don't demangle with GNU nm
mlcreech636a9952008-05-05 22:52:56 +00004563 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4564 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004565 else
mlcreech636a9952008-05-05 22:52:56 +00004566 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004567 fi
4568 aix_use_runtimelinking=no
4569
4570 # Test if we are trying to use run time linking or normal
4571 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
4572 # need to do runtime linking.
mlcreech636a9952008-05-05 22:52:56 +00004573 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004574 for ld_flag in $LDFLAGS; do
mlcreech636a9952008-05-05 22:52:56 +00004575 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
4576 aix_use_runtimelinking=yes
4577 break
4578 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00004579 done
vapier7f19c022007-02-17 14:46:31 +00004580 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00004581 esac
4582
4583 exp_sym_flag='-bexport'
4584 no_entry_flag='-bnoentry'
4585 fi
4586
4587 # When large executables or shared objects are built, AIX ld can
4588 # have problems creating the table of contents. If linking a library
4589 # or program results in "error TOC overflow" add -mminimal-toc to
4590 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
4591 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
4592
mlcreech636a9952008-05-05 22:52:56 +00004593 _LT_TAGVAR(archive_cmds, $1)=''
4594 _LT_TAGVAR(hardcode_direct, $1)=yes
4595 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4596 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
4597 _LT_TAGVAR(link_all_deplibs, $1)=yes
4598 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
a.rottmann9bc8b932004-02-29 15:18:31 +00004599
4600 if test "$GCC" = yes; then
vapier7f19c022007-02-17 14:46:31 +00004601 case $host_os in aix4.[[012]]|aix4.[[012]].*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004602 # We only want to do this on AIX 4.2 and lower, the check
4603 # below for broken collect2 doesn't work under 4.3+
4604 collect2name=`${CC} -print-prog-name=collect2`
mlcreech636a9952008-05-05 22:52:56 +00004605 if test -f "$collect2name" &&
4606 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
a.rottmann9bc8b932004-02-29 15:18:31 +00004607 then
mlcreech636a9952008-05-05 22:52:56 +00004608 # We have reworked collect2
4609 :
a.rottmann9bc8b932004-02-29 15:18:31 +00004610 else
mlcreech636a9952008-05-05 22:52:56 +00004611 # We have old collect2
4612 _LT_TAGVAR(hardcode_direct, $1)=unsupported
4613 # It fails to find uninstalled libraries when the uninstalled
4614 # path is not listed in the libpath. Setting hardcode_minus_L
4615 # to unsupported forces relinking
4616 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4617 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4618 _LT_TAGVAR(hardcode_libdir_separator, $1)=
a.rottmann9bc8b932004-02-29 15:18:31 +00004619 fi
vapier7f19c022007-02-17 14:46:31 +00004620 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00004621 esac
4622 shared_flag='-shared'
vapier7f19c022007-02-17 14:46:31 +00004623 if test "$aix_use_runtimelinking" = yes; then
4624 shared_flag="$shared_flag "'${wl}-G'
4625 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00004626 else
4627 # not using gcc
4628 if test "$host_cpu" = ia64; then
mlcreech636a9952008-05-05 22:52:56 +00004629 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
4630 # chokes on -Wl,-G. The following line is correct:
a.rottmann9bc8b932004-02-29 15:18:31 +00004631 shared_flag='-G'
4632 else
vapier7f19c022007-02-17 14:46:31 +00004633 if test "$aix_use_runtimelinking" = yes; then
a.rottmann9bc8b932004-02-29 15:18:31 +00004634 shared_flag='${wl}-G'
4635 else
4636 shared_flag='${wl}-bM:SRE'
vapier7f19c022007-02-17 14:46:31 +00004637 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00004638 fi
4639 fi
4640
vapier6acb2cf2009-01-28 04:46:28 +00004641 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
a.rottmann9bc8b932004-02-29 15:18:31 +00004642 # It seems that -bexpall does not export symbols beginning with
4643 # underscore (_), so it is better to generate a list of symbols to export.
mlcreech636a9952008-05-05 22:52:56 +00004644 _LT_TAGVAR(always_export_symbols, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00004645 if test "$aix_use_runtimelinking" = yes; then
4646 # Warning - without using the other runtime loading flags (-brtl),
4647 # -berok will link without error, but may produce a broken library.
mlcreech636a9952008-05-05 22:52:56 +00004648 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
4649 # Determine the default libpath from the value encoded in an
4650 # empty executable.
4651 _LT_SYS_MODULE_PATH_AIX
4652 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
4653 _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"
4654 else
a.rottmann9bc8b932004-02-29 15:18:31 +00004655 if test "$host_cpu" = ia64; then
mlcreech636a9952008-05-05 22:52:56 +00004656 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
4657 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
4658 _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"
a.rottmann9bc8b932004-02-29 15:18:31 +00004659 else
mlcreech636a9952008-05-05 22:52:56 +00004660 # Determine the default libpath from the value encoded in an
4661 # empty executable.
4662 _LT_SYS_MODULE_PATH_AIX
4663 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
a.rottmann9bc8b932004-02-29 15:18:31 +00004664 # Warning - without using the other run time loading flags,
4665 # -berok will link without error, but may produce a broken library.
mlcreech636a9952008-05-05 22:52:56 +00004666 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
4667 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
a.rottmann9bc8b932004-02-29 15:18:31 +00004668 # Exported symbols can be pulled into shared objects from archives
mlcreech636a9952008-05-05 22:52:56 +00004669 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
4670 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
vapier7f19c022007-02-17 14:46:31 +00004671 # This is similar to how AIX traditionally builds its shared libraries.
mlcreech636a9952008-05-05 22:52:56 +00004672 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004673 fi
4674 fi
4675 ;;
4676
4677 amigaos*)
mlcreech636a9952008-05-05 22:52:56 +00004678 case $host_cpu in
4679 powerpc)
4680 # see comment about AmigaOS4 .so support
4681 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4682 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4683 ;;
4684 m68k)
4685 _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)'
4686 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4687 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4688 ;;
4689 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00004690 ;;
4691
vapier7f19c022007-02-17 14:46:31 +00004692 bsdi[[45]]*)
mlcreech636a9952008-05-05 22:52:56 +00004693 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
a.rottmann9bc8b932004-02-29 15:18:31 +00004694 ;;
4695
vapier6acb2cf2009-01-28 04:46:28 +00004696 cygwin* | mingw* | pw32* | cegcc*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004697 # When not using gcc, we currently assume that we are using
4698 # Microsoft Visual C++.
4699 # hardcode_libdir_flag_spec is actually meaningless, as there is
4700 # no search path for DLLs.
mlcreech636a9952008-05-05 22:52:56 +00004701 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
4702 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
a.rottmann9bc8b932004-02-29 15:18:31 +00004703 # Tell ltmain to make .lib files, not .a files.
4704 libext=lib
4705 # Tell ltmain to make .dll files, not .so files.
vapier7f19c022007-02-17 14:46:31 +00004706 shrext_cmds=".dll"
a.rottmann9bc8b932004-02-29 15:18:31 +00004707 # FIXME: Setting linknames here is a bad hack.
mlcreech636a9952008-05-05 22:52:56 +00004708 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames='
a.rottmann9bc8b932004-02-29 15:18:31 +00004709 # The linker will automatically build a .lib file if we build a DLL.
mlcreech636a9952008-05-05 22:52:56 +00004710 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
a.rottmann9bc8b932004-02-29 15:18:31 +00004711 # FIXME: Should let the user specify the lib program.
mlcreech636a9952008-05-05 22:52:56 +00004712 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
4713 _LT_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
4714 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00004715 ;;
4716
4717 darwin* | rhapsody*)
mlcreech636a9952008-05-05 22:52:56 +00004718 _LT_DARWIN_LINKER_FEATURES($1)
a.rottmann9bc8b932004-02-29 15:18:31 +00004719 ;;
4720
4721 dgux*)
mlcreech636a9952008-05-05 22:52:56 +00004722 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4723 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4724 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004725 ;;
4726
4727 freebsd1*)
mlcreech636a9952008-05-05 22:52:56 +00004728 _LT_TAGVAR(ld_shlibs, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004729 ;;
4730
4731 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
4732 # support. Future versions do this automatically, but an explicit c++rt0.o
4733 # does not break anything, and helps significantly (at the cost of a little
4734 # extra space).
4735 freebsd2.2*)
mlcreech636a9952008-05-05 22:52:56 +00004736 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
4737 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4738 _LT_TAGVAR(hardcode_direct, $1)=yes
4739 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004740 ;;
4741
4742 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
4743 freebsd2*)
mlcreech636a9952008-05-05 22:52:56 +00004744 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4745 _LT_TAGVAR(hardcode_direct, $1)=yes
4746 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4747 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004748 ;;
4749
4750 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
mlcreech636a9952008-05-05 22:52:56 +00004751 freebsd* | dragonfly*)
4752 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
4753 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4754 _LT_TAGVAR(hardcode_direct, $1)=yes
4755 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004756 ;;
4757
4758 hpux9*)
4759 if test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00004760 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004761 else
mlcreech636a9952008-05-05 22:52:56 +00004762 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004763 fi
mlcreech636a9952008-05-05 22:52:56 +00004764 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
4765 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
4766 _LT_TAGVAR(hardcode_direct, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00004767
4768 # hardcode_minus_L: Not really in the search PATH,
4769 # but as the default location of the library.
mlcreech636a9952008-05-05 22:52:56 +00004770 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4771 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
a.rottmann9bc8b932004-02-29 15:18:31 +00004772 ;;
4773
vapier7f19c022007-02-17 14:46:31 +00004774 hpux10*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004775 if test "$GCC" = yes -a "$with_gnu_ld" = no; then
mlcreech636a9952008-05-05 22:52:56 +00004776 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
vapier7f19c022007-02-17 14:46:31 +00004777 else
mlcreech636a9952008-05-05 22:52:56 +00004778 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
vapier7f19c022007-02-17 14:46:31 +00004779 fi
4780 if test "$with_gnu_ld" = no; then
mlcreech636a9952008-05-05 22:52:56 +00004781 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
4782 _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
4783 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
4784 _LT_TAGVAR(hardcode_direct, $1)=yes
4785 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4786 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
vapier7f19c022007-02-17 14:46:31 +00004787 # hardcode_minus_L: Not really in the search PATH,
4788 # but as the default location of the library.
mlcreech636a9952008-05-05 22:52:56 +00004789 _LT_TAGVAR(hardcode_minus_L, $1)=yes
vapier7f19c022007-02-17 14:46:31 +00004790 fi
4791 ;;
4792
4793 hpux11*)
4794 if test "$GCC" = yes -a "$with_gnu_ld" = no; then
4795 case $host_cpu in
4796 hppa*64*)
mlcreech636a9952008-05-05 22:52:56 +00004797 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00004798 ;;
vapier7f19c022007-02-17 14:46:31 +00004799 ia64*)
vapier6acb2cf2009-01-28 04:46:28 +00004800 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
vapier7f19c022007-02-17 14:46:31 +00004801 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00004802 *)
mlcreech636a9952008-05-05 22:52:56 +00004803 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00004804 ;;
4805 esac
4806 else
vapier7f19c022007-02-17 14:46:31 +00004807 case $host_cpu in
4808 hppa*64*)
mlcreech636a9952008-05-05 22:52:56 +00004809 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
vapier7f19c022007-02-17 14:46:31 +00004810 ;;
4811 ia64*)
mlcreech636a9952008-05-05 22:52:56 +00004812 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00004813 ;;
4814 *)
mlcreech636a9952008-05-05 22:52:56 +00004815 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00004816 ;;
4817 esac
4818 fi
4819 if test "$with_gnu_ld" = no; then
mlcreech636a9952008-05-05 22:52:56 +00004820 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
4821 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
a.rottmann9bc8b932004-02-29 15:18:31 +00004822
vapier7f19c022007-02-17 14:46:31 +00004823 case $host_cpu in
4824 hppa*64*|ia64*)
mlcreech636a9952008-05-05 22:52:56 +00004825 _LT_TAGVAR(hardcode_direct, $1)=no
4826 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004827 ;;
4828 *)
mlcreech636a9952008-05-05 22:52:56 +00004829 _LT_TAGVAR(hardcode_direct, $1)=yes
4830 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4831 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
a.rottmann9bc8b932004-02-29 15:18:31 +00004832
4833 # hardcode_minus_L: Not really in the search PATH,
4834 # but as the default location of the library.
mlcreech636a9952008-05-05 22:52:56 +00004835 _LT_TAGVAR(hardcode_minus_L, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00004836 ;;
4837 esac
4838 fi
4839 ;;
4840
4841 irix5* | irix6* | nonstopux*)
4842 if test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00004843 _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'
4844 # Try to use the -exported_symbol ld option, if it does not
4845 # work, assume that -exports_file does not work either and
4846 # implicitly export all symbols.
4847 save_LDFLAGS="$LDFLAGS"
4848 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
4849 AC_LINK_IFELSE(int foo(void) {},
4850 _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'
4851 )
4852 LDFLAGS="$save_LDFLAGS"
a.rottmann9bc8b932004-02-29 15:18:31 +00004853 else
mlcreech636a9952008-05-05 22:52:56 +00004854 _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'
4855 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004856 fi
mlcreech636a9952008-05-05 22:52:56 +00004857 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
4858 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4859 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
4860 _LT_TAGVAR(inherit_rpath, $1)=yes
4861 _LT_TAGVAR(link_all_deplibs, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00004862 ;;
4863
vapier7f19c022007-02-17 14:46:31 +00004864 netbsd*)
mlcreech636a9952008-05-05 22:52:56 +00004865 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4866 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
a.rottmann9bc8b932004-02-29 15:18:31 +00004867 else
mlcreech636a9952008-05-05 22:52:56 +00004868 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
a.rottmann9bc8b932004-02-29 15:18:31 +00004869 fi
mlcreech636a9952008-05-05 22:52:56 +00004870 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4871 _LT_TAGVAR(hardcode_direct, $1)=yes
4872 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004873 ;;
4874
4875 newsos6)
mlcreech636a9952008-05-05 22:52:56 +00004876 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4877 _LT_TAGVAR(hardcode_direct, $1)=yes
4878 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4879 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
4880 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4881 ;;
4882
4883 *nto* | *qnx*)
a.rottmann9bc8b932004-02-29 15:18:31 +00004884 ;;
4885
4886 openbsd*)
mlcreech636a9952008-05-05 22:52:56 +00004887 if test -f /usr/libexec/ld.so; then
4888 _LT_TAGVAR(hardcode_direct, $1)=yes
4889 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4890 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
4891 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
4892 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
4893 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
4894 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4895 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4896 else
4897 case $host_os in
4898 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
4899 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4900 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4901 ;;
4902 *)
4903 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
4904 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4905 ;;
4906 esac
4907 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00004908 else
mlcreech636a9952008-05-05 22:52:56 +00004909 _LT_TAGVAR(ld_shlibs, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004910 fi
4911 ;;
4912
4913 os2*)
mlcreech636a9952008-05-05 22:52:56 +00004914 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4915 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4916 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4917 _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'
4918 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
a.rottmann9bc8b932004-02-29 15:18:31 +00004919 ;;
4920
4921 osf3*)
4922 if test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00004923 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4924 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004925 else
mlcreech636a9952008-05-05 22:52:56 +00004926 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4927 _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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004928 fi
mlcreech636a9952008-05-05 22:52:56 +00004929 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
4930 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4931 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
a.rottmann9bc8b932004-02-29 15:18:31 +00004932 ;;
4933
4934 osf4* | osf5*) # as osf3* with the addition of -msym flag
4935 if test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00004936 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4937 _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'
4938 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
a.rottmann9bc8b932004-02-29 15:18:31 +00004939 else
mlcreech636a9952008-05-05 22:52:56 +00004940 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4941 _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'
4942 _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~
4943 $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'
a.rottmann9bc8b932004-02-29 15:18:31 +00004944
4945 # Both c and cxx compiler support -rpath directly
mlcreech636a9952008-05-05 22:52:56 +00004946 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
a.rottmann9bc8b932004-02-29 15:18:31 +00004947 fi
mlcreech636a9952008-05-05 22:52:56 +00004948 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
4949 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
a.rottmann9bc8b932004-02-29 15:18:31 +00004950 ;;
4951
a.rottmann9bc8b932004-02-29 15:18:31 +00004952 solaris*)
mlcreech636a9952008-05-05 22:52:56 +00004953 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
a.rottmann9bc8b932004-02-29 15:18:31 +00004954 if test "$GCC" = yes; then
vapier7f19c022007-02-17 14:46:31 +00004955 wlarc='${wl}'
mlcreech636a9952008-05-05 22:52:56 +00004956 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
4957 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
4958 $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
a.rottmann9bc8b932004-02-29 15:18:31 +00004959 else
mlcreech636a9952008-05-05 22:52:56 +00004960 case `$CC -V 2>&1` in
4961 *"Compilers 5.0"*)
4962 wlarc=''
4963 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
4964 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
4965 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
4966 ;;
4967 *)
4968 wlarc='${wl}'
4969 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
4970 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
4971 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
4972 ;;
4973 esac
a.rottmann9bc8b932004-02-29 15:18:31 +00004974 fi
mlcreech636a9952008-05-05 22:52:56 +00004975 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4976 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00004977 case $host_os in
4978 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
vapier7f19c022007-02-17 14:46:31 +00004979 *)
mlcreech636a9952008-05-05 22:52:56 +00004980 # The compiler driver will combine and reorder linker options,
4981 # but understands `-z linker_flag'. GCC discards it without `$wl',
4982 # but is careful enough not to reorder.
4983 # Supported since Solaris 2.6 (maybe 2.5.1?)
4984 if test "$GCC" = yes; then
4985 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
4986 else
4987 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
4988 fi
4989 ;;
a.rottmann9bc8b932004-02-29 15:18:31 +00004990 esac
mlcreech636a9952008-05-05 22:52:56 +00004991 _LT_TAGVAR(link_all_deplibs, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00004992 ;;
4993
4994 sunos4*)
4995 if test "x$host_vendor" = xsequent; then
4996 # Use $CC to link under sequent, because it throws in some extra .o
4997 # files that make .init and .fini sections work.
mlcreech636a9952008-05-05 22:52:56 +00004998 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00004999 else
mlcreech636a9952008-05-05 22:52:56 +00005000 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00005001 fi
mlcreech636a9952008-05-05 22:52:56 +00005002 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5003 _LT_TAGVAR(hardcode_direct, $1)=yes
5004 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5005 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00005006 ;;
5007
5008 sysv4)
5009 case $host_vendor in
5010 sni)
mlcreech636a9952008-05-05 22:52:56 +00005011 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5012 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
a.rottmann9bc8b932004-02-29 15:18:31 +00005013 ;;
5014 siemens)
5015 ## LD is ld it makes a PLAMLIB
5016 ## CC just makes a GrossModule.
mlcreech636a9952008-05-05 22:52:56 +00005017 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5018 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5019 _LT_TAGVAR(hardcode_direct, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00005020 ;;
5021 motorola)
mlcreech636a9952008-05-05 22:52:56 +00005022 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5023 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
a.rottmann9bc8b932004-02-29 15:18:31 +00005024 ;;
5025 esac
5026 runpath_var='LD_RUN_PATH'
mlcreech636a9952008-05-05 22:52:56 +00005027 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00005028 ;;
5029
5030 sysv4.3*)
mlcreech636a9952008-05-05 22:52:56 +00005031 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5032 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5033 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
a.rottmann9bc8b932004-02-29 15:18:31 +00005034 ;;
5035
5036 sysv4*MP*)
5037 if test -d /usr/nec; then
mlcreech636a9952008-05-05 22:52:56 +00005038 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5039 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00005040 runpath_var=LD_RUN_PATH
5041 hardcode_runpath_var=yes
mlcreech636a9952008-05-05 22:52:56 +00005042 _LT_TAGVAR(ld_shlibs, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00005043 fi
5044 ;;
5045
mlcreech636a9952008-05-05 22:52:56 +00005046 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
5047 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5048 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5049 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
vapier7f19c022007-02-17 14:46:31 +00005050 runpath_var='LD_RUN_PATH'
a.rottmann9bc8b932004-02-29 15:18:31 +00005051
a.rottmann9bc8b932004-02-29 15:18:31 +00005052 if test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00005053 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5054 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00005055 else
mlcreech636a9952008-05-05 22:52:56 +00005056 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5057 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
a.rottmann9bc8b932004-02-29 15:18:31 +00005058 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00005059 ;;
5060
vapier7f19c022007-02-17 14:46:31 +00005061 sysv5* | sco3.2v5* | sco5v6*)
5062 # Note: We can NOT use -z defs as we might desire, because we do not
5063 # link with -lc, and that would cause any symbols used from libc to
5064 # always be unresolved, which means just about no library would
5065 # ever link correctly. If we're not using GNU ld we use -z text
5066 # though, which does catch some bad symbols but isn't as heavy-handed
5067 # as -z defs.
mlcreech636a9952008-05-05 22:52:56 +00005068 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5069 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5070 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5071 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5072 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5073 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5074 _LT_TAGVAR(link_all_deplibs, $1)=yes
5075 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
a.rottmann9bc8b932004-02-29 15:18:31 +00005076 runpath_var='LD_RUN_PATH'
vapier7f19c022007-02-17 14:46:31 +00005077
5078 if test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00005079 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5080 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
vapier7f19c022007-02-17 14:46:31 +00005081 else
mlcreech636a9952008-05-05 22:52:56 +00005082 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5083 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
vapier7f19c022007-02-17 14:46:31 +00005084 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00005085 ;;
5086
5087 uts4*)
mlcreech636a9952008-05-05 22:52:56 +00005088 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5089 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5090 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00005091 ;;
5092
5093 *)
mlcreech636a9952008-05-05 22:52:56 +00005094 _LT_TAGVAR(ld_shlibs, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00005095 ;;
5096 esac
mlcreech636a9952008-05-05 22:52:56 +00005097
5098 if test x$host_vendor = xsni; then
5099 case $host in
5100 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5101 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5102 ;;
5103 esac
5104 fi
a.rottmann9bc8b932004-02-29 15:18:31 +00005105 fi
5106])
mlcreech636a9952008-05-05 22:52:56 +00005107AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5108test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
5109
5110_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
5111
5112_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5113_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5114_LT_DECL([], [extract_expsyms_cmds], [2],
5115 [The commands to extract the exported symbol list from a shared archive])
a.rottmann9bc8b932004-02-29 15:18:31 +00005116
a.rottmann9bc8b932004-02-29 15:18:31 +00005117#
5118# Do we need to explicitly link libc?
5119#
mlcreech636a9952008-05-05 22:52:56 +00005120case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
a.rottmann9bc8b932004-02-29 15:18:31 +00005121x|xyes)
5122 # Assume -lc should be added
mlcreech636a9952008-05-05 22:52:56 +00005123 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00005124
5125 if test "$enable_shared" = yes && test "$GCC" = yes; then
mlcreech636a9952008-05-05 22:52:56 +00005126 case $_LT_TAGVAR(archive_cmds, $1) in
a.rottmann9bc8b932004-02-29 15:18:31 +00005127 *'~'*)
5128 # FIXME: we may have to deal with multi-command sequences.
5129 ;;
5130 '$CC '*)
5131 # Test whether the compiler implicitly links with -lc since on some
5132 # systems, -lgcc has to come before -lc. If gcc already passes -lc
5133 # to ld, don't add -lc before -lgcc.
5134 AC_MSG_CHECKING([whether -lc should be explicitly linked in])
mlcreech636a9952008-05-05 22:52:56 +00005135 $RM conftest*
5136 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
a.rottmann9bc8b932004-02-29 15:18:31 +00005137
5138 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5139 soname=conftest
5140 lib=conftest
5141 libobjs=conftest.$ac_objext
5142 deplibs=
mlcreech636a9952008-05-05 22:52:56 +00005143 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5144 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
a.rottmann9bc8b932004-02-29 15:18:31 +00005145 compiler_flags=-v
5146 linker_flags=-v
5147 verstring=
5148 output_objdir=.
5149 libname=conftest
mlcreech636a9952008-05-05 22:52:56 +00005150 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5151 _LT_TAGVAR(allow_undefined_flag, $1)=
5152 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
a.rottmann9bc8b932004-02-29 15:18:31 +00005153 then
mlcreech636a9952008-05-05 22:52:56 +00005154 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
a.rottmann9bc8b932004-02-29 15:18:31 +00005155 else
mlcreech636a9952008-05-05 22:52:56 +00005156 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
a.rottmann9bc8b932004-02-29 15:18:31 +00005157 fi
mlcreech636a9952008-05-05 22:52:56 +00005158 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
a.rottmann9bc8b932004-02-29 15:18:31 +00005159 else
5160 cat conftest.err 1>&5
5161 fi
mlcreech636a9952008-05-05 22:52:56 +00005162 $RM conftest*
5163 AC_MSG_RESULT([$_LT_TAGVAR(archive_cmds_need_lc, $1)])
a.rottmann9bc8b932004-02-29 15:18:31 +00005164 ;;
5165 esac
5166 fi
5167 ;;
5168esac
mlcreech636a9952008-05-05 22:52:56 +00005169
5170_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5171 [Whether or not to add -lc for building shared libraries])
5172_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5173 [enable_shared_with_static_runtimes], [0],
5174 [Whether or not to disallow shared libs when runtime libs are static])
5175_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5176 [Compiler flag to allow reflexive dlopens])
5177_LT_TAGDECL([], [whole_archive_flag_spec], [1],
5178 [Compiler flag to generate shared objects directly from archives])
5179_LT_TAGDECL([], [compiler_needs_object], [1],
5180 [Whether the compiler copes with passing no objects directly])
5181_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5182 [Create an old-style archive from a shared archive])
5183_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5184 [Create a temporary old-style archive to link instead of a shared archive])
5185_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5186_LT_TAGDECL([], [archive_expsym_cmds], [2])
5187_LT_TAGDECL([], [module_cmds], [2],
5188 [Commands used to build a loadable module if different from building
5189 a shared archive.])
5190_LT_TAGDECL([], [module_expsym_cmds], [2])
5191_LT_TAGDECL([], [with_gnu_ld], [1],
5192 [Whether we are building with GNU ld or not])
5193_LT_TAGDECL([], [allow_undefined_flag], [1],
5194 [Flag that allows shared libraries with undefined symbols to be built])
5195_LT_TAGDECL([], [no_undefined_flag], [1],
5196 [Flag that enforces no undefined symbols])
5197_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5198 [Flag to hardcode $libdir into a binary during linking.
5199 This must work even if $libdir does not exist])
5200_LT_TAGDECL([], [hardcode_libdir_flag_spec_ld], [1],
5201 [[If ld is used when linking, flag to hardcode $libdir into a binary
5202 during linking. This must work even if $libdir does not exist]])
5203_LT_TAGDECL([], [hardcode_libdir_separator], [1],
5204 [Whether we need a single "-rpath" flag with a separated argument])
5205_LT_TAGDECL([], [hardcode_direct], [0],
5206 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5207 DIR into the resulting binary])
5208_LT_TAGDECL([], [hardcode_direct_absolute], [0],
5209 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5210 DIR into the resulting binary and the resulting library dependency is
5211 "absolute", i.e impossible to change by setting ${shlibpath_var} if the
5212 library is relocated])
5213_LT_TAGDECL([], [hardcode_minus_L], [0],
5214 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5215 into the resulting binary])
5216_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5217 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5218 into the resulting binary])
5219_LT_TAGDECL([], [hardcode_automatic], [0],
5220 [Set to "yes" if building a shared library automatically hardcodes DIR
5221 into the library and all subsequent libraries and executables linked
5222 against it])
5223_LT_TAGDECL([], [inherit_rpath], [0],
5224 [Set to yes if linker adds runtime paths of dependent libraries
5225 to runtime path list])
5226_LT_TAGDECL([], [link_all_deplibs], [0],
5227 [Whether libtool must link a program against all its dependency libraries])
5228_LT_TAGDECL([], [fix_srcfile_path], [1],
5229 [Fix the shell variable $srcfile for the compiler])
5230_LT_TAGDECL([], [always_export_symbols], [0],
5231 [Set to "yes" if exported symbols are required])
5232_LT_TAGDECL([], [export_symbols_cmds], [2],
5233 [The commands to list exported symbols])
5234_LT_TAGDECL([], [exclude_expsyms], [1],
5235 [Symbols that should not be listed in the preloaded symbols])
5236_LT_TAGDECL([], [include_expsyms], [1],
5237 [Symbols that must always be exported])
5238_LT_TAGDECL([], [prelink_cmds], [2],
5239 [Commands necessary for linking programs (against libraries) with templates])
5240_LT_TAGDECL([], [file_list_spec], [1],
5241 [Specify filename containing input files])
5242dnl FIXME: Not yet implemented
5243dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5244dnl [Compiler flag to generate thread safe objects])
5245])# _LT_LINKER_SHLIBS
a.rottmann9bc8b932004-02-29 15:18:31 +00005246
5247
mlcreech636a9952008-05-05 22:52:56 +00005248# _LT_LANG_C_CONFIG([TAG])
5249# ------------------------
5250# Ensure that the configuration variables for a C compiler are suitably
5251# defined. These variables are subsequently used by _LT_CONFIG to write
5252# the compiler configuration to `libtool'.
5253m4_defun([_LT_LANG_C_CONFIG],
5254[m4_require([_LT_DECL_EGREP])dnl
5255lt_save_CC="$CC"
5256AC_LANG_PUSH(C)
5257
5258# Source file extension for C test sources.
5259ac_ext=c
5260
5261# Object file extension for compiled C test sources.
5262objext=o
5263_LT_TAGVAR(objext, $1)=$objext
5264
5265# Code to be used in simple compile tests
5266lt_simple_compile_test_code="int some_variable = 0;"
5267
5268# Code to be used in simple link tests
5269lt_simple_link_test_code='int main(){return(0);}'
5270
5271_LT_TAG_COMPILER
5272# Save the default compiler, since it gets overwritten when the other
5273# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5274compiler_DEFAULT=$CC
5275
5276# save warnings/boilerplate of simple test code
5277_LT_COMPILER_BOILERPLATE
5278_LT_LINKER_BOILERPLATE
5279
5280if test -n "$compiler"; then
5281 _LT_COMPILER_NO_RTTI($1)
5282 _LT_COMPILER_PIC($1)
5283 _LT_COMPILER_C_O($1)
5284 _LT_COMPILER_FILE_LOCKS($1)
5285 _LT_LINKER_SHLIBS($1)
5286 _LT_SYS_DYNAMIC_LINKER($1)
5287 _LT_LINKER_HARDCODE_LIBPATH($1)
5288 LT_SYS_DLOPEN_SELF
5289 _LT_CMD_STRIPLIB
5290
5291 # Report which library types will actually be built
5292 AC_MSG_CHECKING([if libtool supports shared libraries])
5293 AC_MSG_RESULT([$can_build_shared])
5294
5295 AC_MSG_CHECKING([whether to build shared libraries])
5296 test "$can_build_shared" = "no" && enable_shared=no
5297
5298 # On AIX, shared libraries and static libraries use the same namespace, and
5299 # are all built from PIC.
5300 case $host_os in
5301 aix3*)
5302 test "$enable_shared" = yes && enable_static=no
5303 if test -n "$RANLIB"; then
5304 archive_cmds="$archive_cmds~\$RANLIB \$lib"
5305 postinstall_cmds='$RANLIB $lib'
5306 fi
5307 ;;
5308
5309 aix[[4-9]]*)
5310 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5311 test "$enable_shared" = yes && enable_static=no
5312 fi
5313 ;;
5314 esac
5315 AC_MSG_RESULT([$enable_shared])
5316
5317 AC_MSG_CHECKING([whether to build static libraries])
5318 # Make sure either enable_shared or enable_static is yes.
5319 test "$enable_shared" = yes || enable_static=yes
5320 AC_MSG_RESULT([$enable_static])
5321
5322 _LT_CONFIG($1)
5323fi
5324AC_LANG_POP
5325CC="$lt_save_CC"
5326])# _LT_LANG_C_CONFIG
a.rottmann62507b62003-03-24 09:40:34 +00005327
5328
mlcreech636a9952008-05-05 22:52:56 +00005329# _LT_PROG_CXX
5330# ------------
5331# Since AC_PROG_CXX is broken, in that it returns g++ if there is no c++
5332# compiler, we have our own version here.
5333m4_defun([_LT_PROG_CXX],
5334[
5335pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
5336AC_PROG_CXX
5337if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5338 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5339 (test "X$CXX" != "Xg++"))) ; then
5340 AC_PROG_CXXCPP
5341else
5342 _lt_caught_CXX_error=yes
5343fi
5344popdef([AC_MSG_ERROR])
5345])# _LT_PROG_CXX
5346
5347dnl aclocal-1.4 backwards compatibility:
5348dnl AC_DEFUN([_LT_PROG_CXX], [])
5349
5350
5351# _LT_LANG_CXX_CONFIG([TAG])
5352# --------------------------
5353# Ensure that the configuration variables for a C++ compiler are suitably
5354# defined. These variables are subsequently used by _LT_CONFIG to write
5355# the compiler configuration to `libtool'.
5356m4_defun([_LT_LANG_CXX_CONFIG],
5357[AC_REQUIRE([_LT_PROG_CXX])dnl
5358m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5359m4_require([_LT_DECL_EGREP])dnl
5360
5361AC_LANG_PUSH(C++)
5362_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5363_LT_TAGVAR(allow_undefined_flag, $1)=
5364_LT_TAGVAR(always_export_symbols, $1)=no
5365_LT_TAGVAR(archive_expsym_cmds, $1)=
5366_LT_TAGVAR(compiler_needs_object, $1)=no
5367_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5368_LT_TAGVAR(hardcode_direct, $1)=no
5369_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5370_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5371_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
5372_LT_TAGVAR(hardcode_libdir_separator, $1)=
5373_LT_TAGVAR(hardcode_minus_L, $1)=no
5374_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5375_LT_TAGVAR(hardcode_automatic, $1)=no
5376_LT_TAGVAR(inherit_rpath, $1)=no
5377_LT_TAGVAR(module_cmds, $1)=
5378_LT_TAGVAR(module_expsym_cmds, $1)=
5379_LT_TAGVAR(link_all_deplibs, $1)=unknown
5380_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
5381_LT_TAGVAR(no_undefined_flag, $1)=
5382_LT_TAGVAR(whole_archive_flag_spec, $1)=
5383_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5384
5385# Source file extension for C++ test sources.
5386ac_ext=cpp
5387
5388# Object file extension for compiled C++ test sources.
5389objext=o
5390_LT_TAGVAR(objext, $1)=$objext
5391
5392# No sense in running all these tests if we already determined that
5393# the CXX compiler isn't working. Some variables (like enable_shared)
5394# are currently assumed to apply to all compilers on this platform,
5395# and will be corrupted by setting them based on a non-working compiler.
5396if test "$_lt_caught_CXX_error" != yes; then
5397 # Code to be used in simple compile tests
5398 lt_simple_compile_test_code="int some_variable = 0;"
5399
5400 # Code to be used in simple link tests
5401 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5402
5403 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
5404 _LT_TAG_COMPILER
5405
5406 # save warnings/boilerplate of simple test code
5407 _LT_COMPILER_BOILERPLATE
5408 _LT_LINKER_BOILERPLATE
5409
5410 # Allow CC to be a program name with arguments.
5411 lt_save_CC=$CC
5412 lt_save_LD=$LD
5413 lt_save_GCC=$GCC
5414 GCC=$GXX
5415 lt_save_with_gnu_ld=$with_gnu_ld
5416 lt_save_path_LD=$lt_cv_path_LD
5417 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5418 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
5419 else
5420 $as_unset lt_cv_prog_gnu_ld
5421 fi
5422 if test -n "${lt_cv_path_LDCXX+set}"; then
5423 lt_cv_path_LD=$lt_cv_path_LDCXX
5424 else
5425 $as_unset lt_cv_path_LD
5426 fi
5427 test -z "${LDCXX+set}" || LD=$LDCXX
5428 CC=${CXX-"c++"}
5429 compiler=$CC
5430 _LT_TAGVAR(compiler, $1)=$CC
5431 _LT_CC_BASENAME([$compiler])
5432
5433 if test -n "$compiler"; then
5434 # We don't want -fno-exception when compiling C++ code, so set the
5435 # no_builtin_flag separately
5436 if test "$GXX" = yes; then
5437 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5438 else
5439 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5440 fi
5441
5442 if test "$GXX" = yes; then
5443 # Set up default GNU C++ configuration
5444
5445 LT_PATH_LD
5446
5447 # Check if GNU C++ uses GNU ld as the underlying linker, since the
5448 # archiving commands below assume that GNU ld is being used.
5449 if test "$with_gnu_ld" = yes; then
5450 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5451 _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'
5452
5453 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5454 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5455
5456 # If archive_cmds runs LD, not CC, wlarc should be empty
5457 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5458 # investigate it a little bit more. (MM)
5459 wlarc='${wl}'
5460
5461 # ancient GNU ld didn't support --whole-archive et. al.
5462 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5463 $GREP 'no-whole-archive' > /dev/null; then
5464 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5465 else
5466 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5467 fi
5468 else
5469 with_gnu_ld=no
5470 wlarc=
5471
5472 # A generic and very simple default shared library creation
5473 # command for GNU C++ for the case where it uses the native
5474 # linker, instead of GNU ld. If possible, this setting should
5475 # overridden to take advantage of the native linker features on
5476 # the platform it is being used on.
5477 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
5478 fi
5479
5480 # Commands to make compiler produce verbose output that lists
5481 # what "hidden" libraries, object files and flags are used when
5482 # linking a shared library.
5483 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
5484
5485 else
5486 GXX=no
5487 with_gnu_ld=no
5488 wlarc=
5489 fi
5490
5491 # PORTME: fill in a description of your system's C++ link characteristics
5492 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5493 _LT_TAGVAR(ld_shlibs, $1)=yes
5494 case $host_os in
5495 aix3*)
5496 # FIXME: insert proper C++ library support
5497 _LT_TAGVAR(ld_shlibs, $1)=no
5498 ;;
5499 aix[[4-9]]*)
5500 if test "$host_cpu" = ia64; then
5501 # On IA64, the linker does run time linking by default, so we don't
5502 # have to do anything special.
5503 aix_use_runtimelinking=no
5504 exp_sym_flag='-Bexport'
5505 no_entry_flag=""
5506 else
5507 aix_use_runtimelinking=no
5508
5509 # Test if we are trying to use run time linking or normal
5510 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5511 # need to do runtime linking.
5512 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5513 for ld_flag in $LDFLAGS; do
5514 case $ld_flag in
5515 *-brtl*)
5516 aix_use_runtimelinking=yes
5517 break
5518 ;;
5519 esac
5520 done
5521 ;;
5522 esac
5523
5524 exp_sym_flag='-bexport'
5525 no_entry_flag='-bnoentry'
5526 fi
5527
5528 # When large executables or shared objects are built, AIX ld can
5529 # have problems creating the table of contents. If linking a library
5530 # or program results in "error TOC overflow" add -mminimal-toc to
5531 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5532 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5533
5534 _LT_TAGVAR(archive_cmds, $1)=''
5535 _LT_TAGVAR(hardcode_direct, $1)=yes
5536 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5537 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5538 _LT_TAGVAR(link_all_deplibs, $1)=yes
5539 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
5540
5541 if test "$GXX" = yes; then
5542 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5543 # We only want to do this on AIX 4.2 and lower, the check
5544 # below for broken collect2 doesn't work under 4.3+
5545 collect2name=`${CC} -print-prog-name=collect2`
5546 if test -f "$collect2name" &&
5547 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5548 then
5549 # We have reworked collect2
5550 :
5551 else
5552 # We have old collect2
5553 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5554 # It fails to find uninstalled libraries when the uninstalled
5555 # path is not listed in the libpath. Setting hardcode_minus_L
5556 # to unsupported forces relinking
5557 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5558 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5559 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5560 fi
5561 esac
5562 shared_flag='-shared'
5563 if test "$aix_use_runtimelinking" = yes; then
5564 shared_flag="$shared_flag "'${wl}-G'
5565 fi
5566 else
5567 # not using gcc
5568 if test "$host_cpu" = ia64; then
5569 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5570 # chokes on -Wl,-G. The following line is correct:
5571 shared_flag='-G'
5572 else
5573 if test "$aix_use_runtimelinking" = yes; then
5574 shared_flag='${wl}-G'
5575 else
5576 shared_flag='${wl}-bM:SRE'
5577 fi
5578 fi
5579 fi
5580
vapier6acb2cf2009-01-28 04:46:28 +00005581 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
mlcreech636a9952008-05-05 22:52:56 +00005582 # It seems that -bexpall does not export symbols beginning with
5583 # underscore (_), so it is better to generate a list of symbols to
5584 # export.
5585 _LT_TAGVAR(always_export_symbols, $1)=yes
5586 if test "$aix_use_runtimelinking" = yes; then
5587 # Warning - without using the other runtime loading flags (-brtl),
5588 # -berok will link without error, but may produce a broken library.
5589 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5590 # Determine the default libpath from the value encoded in an empty
5591 # executable.
5592 _LT_SYS_MODULE_PATH_AIX
5593 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5594
5595 _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"
5596 else
5597 if test "$host_cpu" = ia64; then
5598 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5599 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5600 _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"
5601 else
5602 # Determine the default libpath from the value encoded in an
5603 # empty executable.
5604 _LT_SYS_MODULE_PATH_AIX
5605 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5606 # Warning - without using the other run time loading flags,
5607 # -berok will link without error, but may produce a broken library.
5608 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5609 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
5610 # Exported symbols can be pulled into shared objects from archives
5611 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5612 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5613 # This is similar to how AIX traditionally builds its shared
5614 # libraries.
5615 _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'
5616 fi
5617 fi
5618 ;;
5619
5620 beos*)
5621 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5622 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5623 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5624 # support --undefined. This deserves some investigation. FIXME
5625 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5626 else
5627 _LT_TAGVAR(ld_shlibs, $1)=no
5628 fi
5629 ;;
5630
5631 chorus*)
5632 case $cc_basename in
5633 *)
5634 # FIXME: insert proper C++ library support
5635 _LT_TAGVAR(ld_shlibs, $1)=no
5636 ;;
5637 esac
5638 ;;
5639
vapier6acb2cf2009-01-28 04:46:28 +00005640 cygwin* | mingw* | pw32* | cegcc*)
mlcreech636a9952008-05-05 22:52:56 +00005641 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5642 # as there is no search path for DLLs.
5643 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5644 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5645 _LT_TAGVAR(always_export_symbols, $1)=no
5646 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5647
5648 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5649 _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'
5650 # If the export-symbols file already is a .def file (1st line
5651 # is EXPORTS), use it as is; otherwise, prepend...
5652 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5653 cp $export_symbols $output_objdir/$soname.def;
5654 else
5655 echo EXPORTS > $output_objdir/$soname.def;
5656 cat $export_symbols >> $output_objdir/$soname.def;
5657 fi~
5658 $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'
5659 else
5660 _LT_TAGVAR(ld_shlibs, $1)=no
5661 fi
5662 ;;
5663 darwin* | rhapsody*)
5664 _LT_DARWIN_LINKER_FEATURES($1)
5665 ;;
5666
5667 dgux*)
5668 case $cc_basename in
5669 ec++*)
5670 # FIXME: insert proper C++ library support
5671 _LT_TAGVAR(ld_shlibs, $1)=no
5672 ;;
5673 ghcx*)
5674 # Green Hills C++ Compiler
5675 # FIXME: insert proper C++ library support
5676 _LT_TAGVAR(ld_shlibs, $1)=no
5677 ;;
5678 *)
5679 # FIXME: insert proper C++ library support
5680 _LT_TAGVAR(ld_shlibs, $1)=no
5681 ;;
5682 esac
5683 ;;
5684
5685 freebsd[[12]]*)
5686 # C++ shared libraries reported to be fairly broken before
5687 # switch to ELF
5688 _LT_TAGVAR(ld_shlibs, $1)=no
5689 ;;
5690
5691 freebsd-elf*)
5692 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5693 ;;
5694
5695 freebsd* | dragonfly*)
5696 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
5697 # conventions
5698 _LT_TAGVAR(ld_shlibs, $1)=yes
5699 ;;
5700
5701 gnu*)
5702 ;;
5703
5704 hpux9*)
5705 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5706 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5707 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5708 _LT_TAGVAR(hardcode_direct, $1)=yes
5709 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
5710 # but as the default
5711 # location of the library.
5712
5713 case $cc_basename in
5714 CC*)
5715 # FIXME: insert proper C++ library support
5716 _LT_TAGVAR(ld_shlibs, $1)=no
5717 ;;
5718 aCC*)
5719 _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'
5720 # Commands to make compiler produce verbose output that lists
5721 # what "hidden" libraries, object files and flags are used when
5722 # linking a shared library.
5723 #
5724 # There doesn't appear to be a way to prevent this compiler from
5725 # explicitly linking system object files so we need to strip them
5726 # from the output so that they don't get included in the library
5727 # dependencies.
5728 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'
5729 ;;
5730 *)
5731 if test "$GXX" = yes; then
5732 _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'
5733 else
5734 # FIXME: insert proper C++ library support
5735 _LT_TAGVAR(ld_shlibs, $1)=no
5736 fi
5737 ;;
5738 esac
5739 ;;
5740
5741 hpux10*|hpux11*)
5742 if test $with_gnu_ld = no; then
5743 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5744 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5745
5746 case $host_cpu in
5747 hppa*64*|ia64*)
5748 ;;
5749 *)
5750 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5751 ;;
5752 esac
5753 fi
5754 case $host_cpu in
5755 hppa*64*|ia64*)
5756 _LT_TAGVAR(hardcode_direct, $1)=no
5757 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5758 ;;
5759 *)
5760 _LT_TAGVAR(hardcode_direct, $1)=yes
5761 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5762 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
5763 # but as the default
5764 # location of the library.
5765 ;;
5766 esac
5767
5768 case $cc_basename in
5769 CC*)
5770 # FIXME: insert proper C++ library support
5771 _LT_TAGVAR(ld_shlibs, $1)=no
5772 ;;
5773 aCC*)
5774 case $host_cpu in
5775 hppa*64*)
5776 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5777 ;;
5778 ia64*)
5779 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5780 ;;
5781 *)
5782 _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'
5783 ;;
5784 esac
5785 # Commands to make compiler produce verbose output that lists
5786 # what "hidden" libraries, object files and flags are used when
5787 # linking a shared library.
5788 #
5789 # There doesn't appear to be a way to prevent this compiler from
5790 # explicitly linking system object files so we need to strip them
5791 # from the output so that they don't get included in the library
5792 # dependencies.
5793 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'
5794 ;;
5795 *)
5796 if test "$GXX" = yes; then
5797 if test $with_gnu_ld = no; then
5798 case $host_cpu in
5799 hppa*64*)
5800 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5801 ;;
5802 ia64*)
5803 _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'
5804 ;;
5805 *)
5806 _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'
5807 ;;
5808 esac
5809 fi
5810 else
5811 # FIXME: insert proper C++ library support
5812 _LT_TAGVAR(ld_shlibs, $1)=no
5813 fi
5814 ;;
5815 esac
5816 ;;
5817
5818 interix[[3-9]]*)
5819 _LT_TAGVAR(hardcode_direct, $1)=no
5820 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5821 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5822 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5823 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5824 # Instead, shared libraries are loaded at an image base (0x10000000 by
5825 # default) and relocated if they conflict, which is a slow very memory
5826 # consuming and fragmenting process. To avoid this, we pick a random,
5827 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5828 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
5829 _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'
5830 _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'
5831 ;;
5832 irix5* | irix6*)
5833 case $cc_basename in
5834 CC*)
5835 # SGI C++
5836 _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'
5837
5838 # Archives containing C++ object files must be created using
5839 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
5840 # necessary to make sure instantiated templates are included
5841 # in the archive.
5842 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
5843 ;;
5844 *)
5845 if test "$GXX" = yes; then
5846 if test "$with_gnu_ld" = no; then
5847 _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'
5848 else
5849 _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'
5850 fi
5851 fi
5852 _LT_TAGVAR(link_all_deplibs, $1)=yes
5853 ;;
5854 esac
5855 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5856 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5857 _LT_TAGVAR(inherit_rpath, $1)=yes
5858 ;;
5859
5860 linux* | k*bsd*-gnu)
5861 case $cc_basename in
5862 KCC*)
5863 # Kuck and Associates, Inc. (KAI) C++ Compiler
5864
5865 # KCC will only create a shared library if the output file
5866 # ends with ".so" (or ".sl" for HP-UX), so rename the library
5867 # to its proper name (with version) after linking.
5868 _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'
5869 _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'
5870 # Commands to make compiler produce verbose output that lists
5871 # what "hidden" libraries, object files and flags are used when
5872 # linking a shared library.
5873 #
5874 # There doesn't appear to be a way to prevent this compiler from
5875 # explicitly linking system object files so we need to strip them
5876 # from the output so that they don't get included in the library
5877 # dependencies.
5878 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'
5879
5880 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5881 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5882
5883 # Archives containing C++ object files must be created using
5884 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
5885 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
5886 ;;
5887 icpc* | ecpc* )
5888 # Intel C++
5889 with_gnu_ld=yes
5890 # version 8.0 and above of icpc choke on multiply defined symbols
5891 # if we add $predep_objects and $postdep_objects, however 7.1 and
5892 # earlier do not add the objects themselves.
5893 case `$CC -V 2>&1` in
5894 *"Version 7."*)
5895 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5896 _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'
5897 ;;
5898 *) # Version 8.0 or newer
5899 tmp_idyn=
5900 case $host_cpu in
5901 ia64*) tmp_idyn=' -i_dynamic';;
5902 esac
5903 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5904 _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'
5905 ;;
5906 esac
5907 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5908 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5909 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5910 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5911 ;;
5912 pgCC* | pgcpp*)
5913 # Portland Group C++ compiler
5914 case `$CC -V` in
5915 *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
5916 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
5917 rm -rf $tpldir~
5918 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
5919 compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"'
5920 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
5921 rm -rf $tpldir~
5922 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
5923 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~
5924 $RANLIB $oldlib'
5925 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
5926 rm -rf $tpldir~
5927 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
5928 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
5929 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
5930 rm -rf $tpldir~
5931 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
5932 $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'
5933 ;;
5934 *) # Version 6 will use weak symbols
5935 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
5936 _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'
5937 ;;
5938 esac
5939
5940 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
5941 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5942 _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'
5943 ;;
5944 cxx*)
5945 # Compaq C++
5946 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5947 _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'
5948
5949 runpath_var=LD_RUN_PATH
5950 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5951 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5952
5953 # Commands to make compiler produce verbose output that lists
5954 # what "hidden" libraries, object files and flags are used when
5955 # linking a shared library.
5956 #
5957 # There doesn't appear to be a way to prevent this compiler from
5958 # explicitly linking system object files so we need to strip them
5959 # from the output so that they don't get included in the library
5960 # dependencies.
5961 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'
5962 ;;
5963 xl*)
5964 # IBM XL 8.0 on PPC, with GNU ld
5965 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5966 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5967 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5968 if test "x$supports_anon_versioning" = xyes; then
5969 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5970 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5971 echo "local: *; };" >> $output_objdir/$libname.ver~
5972 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
5973 fi
5974 ;;
5975 *)
5976 case `$CC -V 2>&1 | sed 5q` in
5977 *Sun\ C*)
5978 # Sun C++ 5.9
5979 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
5980 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5981 _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'
5982 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5983 _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'
5984 _LT_TAGVAR(compiler_needs_object, $1)=yes
5985
5986 # Not sure whether something based on
5987 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
5988 # would be better.
5989 output_verbose_link_cmd='echo'
5990
5991 # Archives containing C++ object files must be created using
5992 # "CC -xar", where "CC" is the Sun C++ compiler. This is
5993 # necessary to make sure instantiated templates are included
5994 # in the archive.
5995 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
5996 ;;
5997 esac
5998 ;;
5999 esac
6000 ;;
6001
6002 lynxos*)
6003 # FIXME: insert proper C++ library support
6004 _LT_TAGVAR(ld_shlibs, $1)=no
6005 ;;
6006
6007 m88k*)
6008 # FIXME: insert proper C++ library support
6009 _LT_TAGVAR(ld_shlibs, $1)=no
6010 ;;
6011
6012 mvs*)
6013 case $cc_basename in
6014 cxx*)
6015 # FIXME: insert proper C++ library support
6016 _LT_TAGVAR(ld_shlibs, $1)=no
6017 ;;
6018 *)
6019 # FIXME: insert proper C++ library support
6020 _LT_TAGVAR(ld_shlibs, $1)=no
6021 ;;
6022 esac
6023 ;;
6024
6025 netbsd*)
6026 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6027 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6028 wlarc=
6029 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6030 _LT_TAGVAR(hardcode_direct, $1)=yes
6031 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6032 fi
6033 # Workaround some broken pre-1.5 toolchains
6034 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6035 ;;
6036
6037 *nto* | *qnx*)
6038 _LT_TAGVAR(ld_shlibs, $1)=yes
6039 ;;
6040
6041 openbsd2*)
6042 # C++ shared libraries are fairly broken
6043 _LT_TAGVAR(ld_shlibs, $1)=no
6044 ;;
6045
6046 openbsd*)
6047 if test -f /usr/libexec/ld.so; then
6048 _LT_TAGVAR(hardcode_direct, $1)=yes
6049 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6050 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6051 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6052 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6053 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6054 _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'
6055 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6056 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6057 fi
6058 output_verbose_link_cmd=echo
6059 else
6060 _LT_TAGVAR(ld_shlibs, $1)=no
6061 fi
6062 ;;
6063
6064 osf3* | osf4* | osf5*)
6065 case $cc_basename in
6066 KCC*)
6067 # Kuck and Associates, Inc. (KAI) C++ Compiler
6068
6069 # KCC will only create a shared library if the output file
6070 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6071 # to its proper name (with version) after linking.
6072 _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'
6073
6074 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6075 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6076
6077 # Archives containing C++ object files must be created using
6078 # the KAI C++ compiler.
6079 case $host in
6080 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6081 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6082 esac
6083 ;;
6084 RCC*)
6085 # Rational C++ 2.4.1
6086 # FIXME: insert proper C++ library support
6087 _LT_TAGVAR(ld_shlibs, $1)=no
6088 ;;
6089 cxx*)
6090 case $host in
6091 osf3*)
6092 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6093 _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'
6094 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6095 ;;
6096 *)
6097 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6098 _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'
6099 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6100 echo "-hidden">> $lib.exp~
6101 $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~
6102 $RM $lib.exp'
6103 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6104 ;;
6105 esac
6106
6107 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6108
6109 # Commands to make compiler produce verbose output that lists
6110 # what "hidden" libraries, object files and flags are used when
6111 # linking a shared library.
6112 #
6113 # There doesn't appear to be a way to prevent this compiler from
6114 # explicitly linking system object files so we need to strip them
6115 # from the output so that they don't get included in the library
6116 # dependencies.
6117 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'
6118 ;;
6119 *)
6120 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6121 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6122 case $host in
6123 osf3*)
6124 _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'
6125 ;;
6126 *)
6127 _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'
6128 ;;
6129 esac
6130
6131 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6132 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6133
6134 # Commands to make compiler produce verbose output that lists
6135 # what "hidden" libraries, object files and flags are used when
6136 # linking a shared library.
6137 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6138
6139 else
6140 # FIXME: insert proper C++ library support
6141 _LT_TAGVAR(ld_shlibs, $1)=no
6142 fi
6143 ;;
6144 esac
6145 ;;
6146
6147 psos*)
6148 # FIXME: insert proper C++ library support
6149 _LT_TAGVAR(ld_shlibs, $1)=no
6150 ;;
6151
6152 sunos4*)
6153 case $cc_basename in
6154 CC*)
6155 # Sun C++ 4.x
6156 # FIXME: insert proper C++ library support
6157 _LT_TAGVAR(ld_shlibs, $1)=no
6158 ;;
6159 lcc*)
6160 # Lucid
6161 # FIXME: insert proper C++ library support
6162 _LT_TAGVAR(ld_shlibs, $1)=no
6163 ;;
6164 *)
6165 # FIXME: insert proper C++ library support
6166 _LT_TAGVAR(ld_shlibs, $1)=no
6167 ;;
6168 esac
6169 ;;
6170
6171 solaris*)
6172 case $cc_basename in
6173 CC*)
6174 # Sun C++ 4.2, 5.x and Centerline C++
6175 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6176 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6177 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6178 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6179 $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'
6180
6181 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6182 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6183 case $host_os in
6184 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6185 *)
6186 # The compiler driver will combine and reorder linker options,
6187 # but understands `-z linker_flag'.
6188 # Supported since Solaris 2.6 (maybe 2.5.1?)
6189 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6190 ;;
6191 esac
6192 _LT_TAGVAR(link_all_deplibs, $1)=yes
6193
6194 output_verbose_link_cmd='echo'
6195
6196 # Archives containing C++ object files must be created using
6197 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6198 # necessary to make sure instantiated templates are included
6199 # in the archive.
6200 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6201 ;;
6202 gcx*)
6203 # Green Hills C++ Compiler
6204 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6205
6206 # The C++ compiler must be used to create the archive.
6207 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
6208 ;;
6209 *)
6210 # GNU C++ compiler with Solaris linker
6211 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6212 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6213 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
6214 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6215 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6216 $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6217
6218 # Commands to make compiler produce verbose output that lists
6219 # what "hidden" libraries, object files and flags are used when
6220 # linking a shared library.
6221 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6222 else
6223 # g++ 2.7 appears to require `-G' NOT `-shared' on this
6224 # platform.
6225 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6226 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6227 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6228
6229 # Commands to make compiler produce verbose output that lists
6230 # what "hidden" libraries, object files and flags are used when
6231 # linking a shared library.
6232 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"'
6233 fi
6234
6235 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6236 case $host_os in
6237 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6238 *)
6239 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6240 ;;
6241 esac
6242 fi
6243 ;;
6244 esac
6245 ;;
6246
6247 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6248 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6249 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6250 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6251 runpath_var='LD_RUN_PATH'
6252
6253 case $cc_basename in
6254 CC*)
6255 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6256 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6257 ;;
6258 *)
6259 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6260 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6261 ;;
6262 esac
6263 ;;
6264
6265 sysv5* | sco3.2v5* | sco5v6*)
6266 # Note: We can NOT use -z defs as we might desire, because we do not
6267 # link with -lc, and that would cause any symbols used from libc to
6268 # always be unresolved, which means just about no library would
6269 # ever link correctly. If we're not using GNU ld we use -z text
6270 # though, which does catch some bad symbols but isn't as heavy-handed
6271 # as -z defs.
6272 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6273 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6274 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6275 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6276 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6277 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6278 _LT_TAGVAR(link_all_deplibs, $1)=yes
6279 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6280 runpath_var='LD_RUN_PATH'
6281
6282 case $cc_basename in
6283 CC*)
6284 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6285 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6286 ;;
6287 *)
6288 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6289 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6290 ;;
6291 esac
6292 ;;
6293
6294 tandem*)
6295 case $cc_basename in
6296 NCC*)
6297 # NonStop-UX NCC 3.20
6298 # FIXME: insert proper C++ library support
6299 _LT_TAGVAR(ld_shlibs, $1)=no
6300 ;;
6301 *)
6302 # FIXME: insert proper C++ library support
6303 _LT_TAGVAR(ld_shlibs, $1)=no
6304 ;;
6305 esac
6306 ;;
6307
6308 vxworks*)
6309 # FIXME: insert proper C++ library support
6310 _LT_TAGVAR(ld_shlibs, $1)=no
6311 ;;
6312
6313 *)
6314 # FIXME: insert proper C++ library support
6315 _LT_TAGVAR(ld_shlibs, $1)=no
6316 ;;
6317 esac
6318
6319 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6320 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6321
6322 _LT_TAGVAR(GCC, $1)="$GXX"
6323 _LT_TAGVAR(LD, $1)="$LD"
6324
6325 ## CAVEAT EMPTOR:
6326 ## There is no encapsulation within the following macros, do not change
6327 ## the running order or otherwise move them around unless you know exactly
6328 ## what you are doing...
6329 _LT_SYS_HIDDEN_LIBDEPS($1)
6330 _LT_COMPILER_PIC($1)
6331 _LT_COMPILER_C_O($1)
6332 _LT_COMPILER_FILE_LOCKS($1)
6333 _LT_LINKER_SHLIBS($1)
6334 _LT_SYS_DYNAMIC_LINKER($1)
6335 _LT_LINKER_HARDCODE_LIBPATH($1)
6336
6337 _LT_CONFIG($1)
6338 fi # test -n "$compiler"
6339
6340 CC=$lt_save_CC
6341 LDCXX=$LD
6342 LD=$lt_save_LD
6343 GCC=$lt_save_GCC
6344 with_gnu_ld=$lt_save_with_gnu_ld
6345 lt_cv_path_LDCXX=$lt_cv_path_LD
6346 lt_cv_path_LD=$lt_save_path_LD
6347 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6348 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6349fi # test "$_lt_caught_CXX_error" != yes
6350
6351AC_LANG_POP
6352])# _LT_LANG_CXX_CONFIG
6353
6354
6355# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
a.rottmann9bc8b932004-02-29 15:18:31 +00006356# ---------------------------------
mlcreech636a9952008-05-05 22:52:56 +00006357# Figure out "hidden" library dependencies from verbose
6358# compiler output when linking a shared library.
6359# Parse the compiler output and extract the necessary
6360# objects, libraries and library flags.
6361m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6362[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6363# Dependencies to place before and after the object being linked:
6364_LT_TAGVAR(predep_objects, $1)=
6365_LT_TAGVAR(postdep_objects, $1)=
6366_LT_TAGVAR(predeps, $1)=
6367_LT_TAGVAR(postdeps, $1)=
6368_LT_TAGVAR(compiler_lib_search_path, $1)=
a.rottmann62507b62003-03-24 09:40:34 +00006369
mlcreech636a9952008-05-05 22:52:56 +00006370dnl we can't use the lt_simple_compile_test_code here,
6371dnl because it contains code intended for an executable,
6372dnl not a library. It's possible we should let each
6373dnl tag define a new lt_????_link_test_code variable,
6374dnl but it's only used here...
6375m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6376int a;
6377void foo (void) { a = 0; }
6378_LT_EOF
6379], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6380class Foo
6381{
6382public:
6383 Foo (void) { a = 0; }
6384private:
6385 int a;
6386};
6387_LT_EOF
6388], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6389 subroutine foo
6390 implicit none
6391 integer*4 a
6392 a=0
6393 return
6394 end
6395_LT_EOF
6396], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6397 subroutine foo
6398 implicit none
6399 integer a
6400 a=0
6401 return
6402 end
6403_LT_EOF
6404], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6405public class foo {
6406 private int a;
6407 public void bar (void) {
6408 a = 0;
6409 }
6410};
6411_LT_EOF
6412])
6413dnl Parse the compiler output and extract the necessary
6414dnl objects, libraries and library flags.
6415if AC_TRY_EVAL(ac_compile); then
6416 # Parse the compiler output and extract the necessary
6417 # objects, libraries and library flags.
drh71eb93e2001-09-28 01:34:43 +00006418
mlcreech636a9952008-05-05 22:52:56 +00006419 # Sentinel used to keep track of whether or not we are before
6420 # the conftest object file.
6421 pre_test_object_deps_done=no
drh71eb93e2001-09-28 01:34:43 +00006422
mlcreech636a9952008-05-05 22:52:56 +00006423 for p in `eval "$output_verbose_link_cmd"`; do
6424 case $p in
drh71eb93e2001-09-28 01:34:43 +00006425
mlcreech636a9952008-05-05 22:52:56 +00006426 -L* | -R* | -l*)
6427 # Some compilers place space between "-{L,R}" and the path.
6428 # Remove the space.
6429 if test $p = "-L" ||
6430 test $p = "-R"; then
6431 prev=$p
6432 continue
6433 else
6434 prev=
6435 fi
6436
6437 if test "$pre_test_object_deps_done" = no; then
6438 case $p in
6439 -L* | -R*)
6440 # Internal compiler library paths should come after those
6441 # provided the user. The postdeps already come after the
6442 # user supplied libs so there is no need to process them.
6443 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
6444 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
6445 else
6446 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
6447 fi
6448 ;;
6449 # The "-l" case would never come before the object being
6450 # linked, so don't bother handling this case.
6451 esac
6452 else
6453 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
6454 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
6455 else
6456 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
6457 fi
6458 fi
6459 ;;
6460
6461 *.$objext)
6462 # This assumes that the test object file only shows up
6463 # once in the compiler output.
6464 if test "$p" = "conftest.$objext"; then
6465 pre_test_object_deps_done=yes
6466 continue
6467 fi
6468
6469 if test "$pre_test_object_deps_done" = no; then
6470 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
6471 _LT_TAGVAR(predep_objects, $1)="$p"
6472 else
6473 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
6474 fi
6475 else
6476 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
6477 _LT_TAGVAR(postdep_objects, $1)="$p"
6478 else
6479 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
6480 fi
6481 fi
6482 ;;
6483
6484 *) ;; # Ignore the rest.
6485
6486 esac
6487 done
6488
6489 # Clean up.
6490 rm -f a.out a.exe
6491else
6492 echo "libtool.m4: error: problem compiling $1 test program"
6493fi
6494
6495$RM -f confest.$objext
6496
6497# PORTME: override above test on systems where it is broken
6498m4_if([$1], [CXX],
6499[case $host_os in
6500interix[[3-9]]*)
6501 # Interix 3.5 installs completely hosed .la files for C++, so rather than
6502 # hack all around it, let's just trust "g++" to DTRT.
6503 _LT_TAGVAR(predep_objects,$1)=
6504 _LT_TAGVAR(postdep_objects,$1)=
6505 _LT_TAGVAR(postdeps,$1)=
6506 ;;
6507
6508linux*)
6509 case `$CC -V 2>&1 | sed 5q` in
6510 *Sun\ C*)
6511 # Sun C++ 5.9
6512
6513 # The more standards-conforming stlport4 library is
6514 # incompatible with the Cstd library. Avoid specifying
6515 # it if it's in CXXFLAGS. Ignore libCrun as
6516 # -library=stlport4 depends on it.
6517 case " $CXX $CXXFLAGS " in
6518 *" -library=stlport4 "*)
6519 solaris_use_stlport4=yes
6520 ;;
6521 esac
6522
6523 if test "$solaris_use_stlport4" != yes; then
6524 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
6525 fi
6526 ;;
6527 esac
6528 ;;
6529
6530solaris*)
6531 case $cc_basename in
6532 CC*)
6533 # The more standards-conforming stlport4 library is
6534 # incompatible with the Cstd library. Avoid specifying
6535 # it if it's in CXXFLAGS. Ignore libCrun as
6536 # -library=stlport4 depends on it.
6537 case " $CXX $CXXFLAGS " in
6538 *" -library=stlport4 "*)
6539 solaris_use_stlport4=yes
6540 ;;
6541 esac
6542
6543 # Adding this requires a known-good setup of shared libraries for
6544 # Sun compiler versions before 5.6, else PIC objects from an old
6545 # archive will be linked into the output, leading to subtle bugs.
6546 if test "$solaris_use_stlport4" != yes; then
6547 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
6548 fi
6549 ;;
6550 esac
6551 ;;
6552esac
a.rottmann9bc8b932004-02-29 15:18:31 +00006553])
6554
mlcreech636a9952008-05-05 22:52:56 +00006555case " $_LT_TAGVAR(postdeps, $1) " in
6556*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
6557esac
6558 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
6559if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
6560 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
6561fi
6562_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
6563 [The directories searched by this compiler when creating a shared library])
6564_LT_TAGDECL([], [predep_objects], [1],
6565 [Dependencies to place before and after the objects being linked to
6566 create a shared library])
6567_LT_TAGDECL([], [postdep_objects], [1])
6568_LT_TAGDECL([], [predeps], [1])
6569_LT_TAGDECL([], [postdeps], [1])
6570_LT_TAGDECL([], [compiler_lib_search_path], [1],
6571 [The library search path used internally by the compiler when linking
6572 a shared library])
6573])# _LT_SYS_HIDDEN_LIBDEPS
6574
6575
6576# _LT_PROG_F77
6577# ------------
6578# Since AC_PROG_F77 is broken, in that it returns the empty string
6579# if there is no fortran compiler, we have our own version here.
6580m4_defun([_LT_PROG_F77],
6581[
6582pushdef([AC_MSG_ERROR], [_lt_disable_F77=yes])
6583AC_PROG_F77
6584if test -z "$F77" || test "X$F77" = "Xno"; then
6585 _lt_disable_F77=yes
6586fi
6587popdef([AC_MSG_ERROR])
6588])# _LT_PROG_F77
6589
6590dnl aclocal-1.4 backwards compatibility:
6591dnl AC_DEFUN([_LT_PROG_F77], [])
6592
6593
6594# _LT_LANG_F77_CONFIG([TAG])
6595# --------------------------
6596# Ensure that the configuration variables for a Fortran 77 compiler are
6597# suitably defined. These variables are subsequently used by _LT_CONFIG
6598# to write the compiler configuration to `libtool'.
6599m4_defun([_LT_LANG_F77_CONFIG],
6600[AC_REQUIRE([_LT_PROG_F77])dnl
6601AC_LANG_PUSH(Fortran 77)
6602
6603_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6604_LT_TAGVAR(allow_undefined_flag, $1)=
6605_LT_TAGVAR(always_export_symbols, $1)=no
6606_LT_TAGVAR(archive_expsym_cmds, $1)=
6607_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6608_LT_TAGVAR(hardcode_direct, $1)=no
6609_LT_TAGVAR(hardcode_direct_absolute, $1)=no
6610_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6611_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
6612_LT_TAGVAR(hardcode_libdir_separator, $1)=
6613_LT_TAGVAR(hardcode_minus_L, $1)=no
6614_LT_TAGVAR(hardcode_automatic, $1)=no
6615_LT_TAGVAR(inherit_rpath, $1)=no
6616_LT_TAGVAR(module_cmds, $1)=
6617_LT_TAGVAR(module_expsym_cmds, $1)=
6618_LT_TAGVAR(link_all_deplibs, $1)=unknown
6619_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6620_LT_TAGVAR(no_undefined_flag, $1)=
6621_LT_TAGVAR(whole_archive_flag_spec, $1)=
6622_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6623
6624# Source file extension for f77 test sources.
6625ac_ext=f
6626
6627# Object file extension for compiled f77 test sources.
6628objext=o
6629_LT_TAGVAR(objext, $1)=$objext
6630
6631# No sense in running all these tests if we already determined that
6632# the F77 compiler isn't working. Some variables (like enable_shared)
6633# are currently assumed to apply to all compilers on this platform,
6634# and will be corrupted by setting them based on a non-working compiler.
6635if test "$_lt_disable_F77" != yes; then
6636 # Code to be used in simple compile tests
6637 lt_simple_compile_test_code="\
6638 subroutine t
6639 return
6640 end
6641"
6642
6643 # Code to be used in simple link tests
6644 lt_simple_link_test_code="\
6645 program t
6646 end
6647"
6648
6649 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6650 _LT_TAG_COMPILER
6651
6652 # save warnings/boilerplate of simple test code
6653 _LT_COMPILER_BOILERPLATE
6654 _LT_LINKER_BOILERPLATE
6655
6656 # Allow CC to be a program name with arguments.
6657 lt_save_CC="$CC"
6658 lt_save_GCC=$GCC
6659 CC=${F77-"f77"}
6660 compiler=$CC
6661 _LT_TAGVAR(compiler, $1)=$CC
6662 _LT_CC_BASENAME([$compiler])
6663 GCC=$G77
6664 if test -n "$compiler"; then
6665 AC_MSG_CHECKING([if libtool supports shared libraries])
6666 AC_MSG_RESULT([$can_build_shared])
6667
6668 AC_MSG_CHECKING([whether to build shared libraries])
6669 test "$can_build_shared" = "no" && enable_shared=no
6670
6671 # On AIX, shared libraries and static libraries use the same namespace, and
6672 # are all built from PIC.
6673 case $host_os in
6674 aix3*)
6675 test "$enable_shared" = yes && enable_static=no
6676 if test -n "$RANLIB"; then
6677 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6678 postinstall_cmds='$RANLIB $lib'
6679 fi
6680 ;;
6681 aix[[4-9]]*)
6682 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
6683 test "$enable_shared" = yes && enable_static=no
6684 fi
6685 ;;
6686 esac
6687 AC_MSG_RESULT([$enable_shared])
6688
6689 AC_MSG_CHECKING([whether to build static libraries])
6690 # Make sure either enable_shared or enable_static is yes.
6691 test "$enable_shared" = yes || enable_static=yes
6692 AC_MSG_RESULT([$enable_static])
6693
6694 _LT_TAGVAR(GCC, $1)="$G77"
6695 _LT_TAGVAR(LD, $1)="$LD"
6696
6697 ## CAVEAT EMPTOR:
6698 ## There is no encapsulation within the following macros, do not change
6699 ## the running order or otherwise move them around unless you know exactly
6700 ## what you are doing...
6701 _LT_COMPILER_PIC($1)
6702 _LT_COMPILER_C_O($1)
6703 _LT_COMPILER_FILE_LOCKS($1)
6704 _LT_LINKER_SHLIBS($1)
6705 _LT_SYS_DYNAMIC_LINKER($1)
6706 _LT_LINKER_HARDCODE_LIBPATH($1)
6707
6708 _LT_CONFIG($1)
6709 fi # test -n "$compiler"
6710
6711 GCC=$lt_save_GCC
6712 CC="$lt_save_CC"
6713fi # test "$_lt_disable_F77" != yes
6714
6715AC_LANG_POP
6716])# _LT_LANG_F77_CONFIG
6717
6718
6719# _LT_PROG_FC
6720# -----------
6721# Since AC_PROG_FC is broken, in that it returns the empty string
6722# if there is no fortran compiler, we have our own version here.
6723m4_defun([_LT_PROG_FC],
6724[
6725pushdef([AC_MSG_ERROR], [_lt_disable_FC=yes])
6726AC_PROG_FC
6727if test -z "$FC" || test "X$FC" = "Xno"; then
6728 _lt_disable_FC=yes
6729fi
6730popdef([AC_MSG_ERROR])
6731])# _LT_PROG_FC
6732
6733dnl aclocal-1.4 backwards compatibility:
6734dnl AC_DEFUN([_LT_PROG_FC], [])
6735
6736
6737# _LT_LANG_FC_CONFIG([TAG])
6738# -------------------------
6739# Ensure that the configuration variables for a Fortran compiler are
6740# suitably defined. These variables are subsequently used by _LT_CONFIG
6741# to write the compiler configuration to `libtool'.
6742m4_defun([_LT_LANG_FC_CONFIG],
6743[AC_REQUIRE([_LT_PROG_FC])dnl
6744AC_LANG_PUSH(Fortran)
6745
6746_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6747_LT_TAGVAR(allow_undefined_flag, $1)=
6748_LT_TAGVAR(always_export_symbols, $1)=no
6749_LT_TAGVAR(archive_expsym_cmds, $1)=
6750_LT_TAGVAR(export_dynamic_flag_spec, $1)=
6751_LT_TAGVAR(hardcode_direct, $1)=no
6752_LT_TAGVAR(hardcode_direct_absolute, $1)=no
6753_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6754_LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
6755_LT_TAGVAR(hardcode_libdir_separator, $1)=
6756_LT_TAGVAR(hardcode_minus_L, $1)=no
6757_LT_TAGVAR(hardcode_automatic, $1)=no
6758_LT_TAGVAR(inherit_rpath, $1)=no
6759_LT_TAGVAR(module_cmds, $1)=
6760_LT_TAGVAR(module_expsym_cmds, $1)=
6761_LT_TAGVAR(link_all_deplibs, $1)=unknown
6762_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6763_LT_TAGVAR(no_undefined_flag, $1)=
6764_LT_TAGVAR(whole_archive_flag_spec, $1)=
6765_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6766
6767# Source file extension for fc test sources.
6768ac_ext=${ac_fc_srcext-f}
6769
6770# Object file extension for compiled fc test sources.
6771objext=o
6772_LT_TAGVAR(objext, $1)=$objext
6773
6774# No sense in running all these tests if we already determined that
6775# the FC compiler isn't working. Some variables (like enable_shared)
6776# are currently assumed to apply to all compilers on this platform,
6777# and will be corrupted by setting them based on a non-working compiler.
6778if test "$_lt_disable_FC" != yes; then
6779 # Code to be used in simple compile tests
6780 lt_simple_compile_test_code="\
6781 subroutine t
6782 return
6783 end
6784"
6785
6786 # Code to be used in simple link tests
6787 lt_simple_link_test_code="\
6788 program t
6789 end
6790"
6791
6792 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6793 _LT_TAG_COMPILER
6794
6795 # save warnings/boilerplate of simple test code
6796 _LT_COMPILER_BOILERPLATE
6797 _LT_LINKER_BOILERPLATE
6798
6799 # Allow CC to be a program name with arguments.
6800 lt_save_CC="$CC"
6801 lt_save_GCC=$GCC
6802 CC=${FC-"f95"}
6803 compiler=$CC
6804 GCC=$ac_cv_fc_compiler_gnu
6805
6806 _LT_TAGVAR(compiler, $1)=$CC
6807 _LT_CC_BASENAME([$compiler])
6808
6809 if test -n "$compiler"; then
6810 AC_MSG_CHECKING([if libtool supports shared libraries])
6811 AC_MSG_RESULT([$can_build_shared])
6812
6813 AC_MSG_CHECKING([whether to build shared libraries])
6814 test "$can_build_shared" = "no" && enable_shared=no
6815
6816 # On AIX, shared libraries and static libraries use the same namespace, and
6817 # are all built from PIC.
6818 case $host_os in
6819 aix3*)
6820 test "$enable_shared" = yes && enable_static=no
6821 if test -n "$RANLIB"; then
6822 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6823 postinstall_cmds='$RANLIB $lib'
6824 fi
6825 ;;
6826 aix[[4-9]]*)
6827 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
6828 test "$enable_shared" = yes && enable_static=no
6829 fi
6830 ;;
6831 esac
6832 AC_MSG_RESULT([$enable_shared])
6833
6834 AC_MSG_CHECKING([whether to build static libraries])
6835 # Make sure either enable_shared or enable_static is yes.
6836 test "$enable_shared" = yes || enable_static=yes
6837 AC_MSG_RESULT([$enable_static])
6838
6839 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
6840 _LT_TAGVAR(LD, $1)="$LD"
6841
6842 ## CAVEAT EMPTOR:
6843 ## There is no encapsulation within the following macros, do not change
6844 ## the running order or otherwise move them around unless you know exactly
6845 ## what you are doing...
6846 _LT_SYS_HIDDEN_LIBDEPS($1)
6847 _LT_COMPILER_PIC($1)
6848 _LT_COMPILER_C_O($1)
6849 _LT_COMPILER_FILE_LOCKS($1)
6850 _LT_LINKER_SHLIBS($1)
6851 _LT_SYS_DYNAMIC_LINKER($1)
6852 _LT_LINKER_HARDCODE_LIBPATH($1)
6853
6854 _LT_CONFIG($1)
6855 fi # test -n "$compiler"
6856
6857 GCC=$lt_save_GCC
6858 CC="$lt_save_CC"
6859fi # test "$_lt_disable_FC" != yes
6860
6861AC_LANG_POP
6862])# _LT_LANG_FC_CONFIG
6863
6864
6865# _LT_LANG_GCJ_CONFIG([TAG])
6866# --------------------------
6867# Ensure that the configuration variables for the GNU Java Compiler compiler
6868# are suitably defined. These variables are subsequently used by _LT_CONFIG
6869# to write the compiler configuration to `libtool'.
6870m4_defun([_LT_LANG_GCJ_CONFIG],
6871[AC_REQUIRE([LT_PROG_GCJ])dnl
6872AC_LANG_SAVE
6873
6874# Source file extension for Java test sources.
6875ac_ext=java
6876
6877# Object file extension for compiled Java test sources.
6878objext=o
6879_LT_TAGVAR(objext, $1)=$objext
6880
6881# Code to be used in simple compile tests
6882lt_simple_compile_test_code="class foo {}"
6883
6884# Code to be used in simple link tests
6885lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
6886
6887# ltmain only uses $CC for tagged configurations so make sure $CC is set.
6888_LT_TAG_COMPILER
6889
6890# save warnings/boilerplate of simple test code
6891_LT_COMPILER_BOILERPLATE
6892_LT_LINKER_BOILERPLATE
6893
6894# Allow CC to be a program name with arguments.
6895lt_save_CC="$CC"
6896lt_save_GCC=$GCC
6897GCC=yes
6898CC=${GCJ-"gcj"}
6899compiler=$CC
6900_LT_TAGVAR(compiler, $1)=$CC
6901_LT_TAGVAR(LD, $1)="$LD"
6902_LT_CC_BASENAME([$compiler])
6903
6904# GCJ did not exist at the time GCC didn't implicitly link libc in.
6905_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6906
6907_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6908
6909if test -n "$compiler"; then
6910 _LT_COMPILER_NO_RTTI($1)
6911 _LT_COMPILER_PIC($1)
6912 _LT_COMPILER_C_O($1)
6913 _LT_COMPILER_FILE_LOCKS($1)
6914 _LT_LINKER_SHLIBS($1)
6915 _LT_LINKER_HARDCODE_LIBPATH($1)
6916
6917 _LT_CONFIG($1)
6918fi
6919
6920AC_LANG_RESTORE
6921
6922GCC=$lt_save_GCC
6923CC="$lt_save_CC"
6924])# _LT_LANG_GCJ_CONFIG
6925
6926
6927# _LT_LANG_RC_CONFIG([TAG])
6928# -------------------------
6929# Ensure that the configuration variables for the Windows resource compiler
6930# are suitably defined. These variables are subsequently used by _LT_CONFIG
6931# to write the compiler configuration to `libtool'.
6932m4_defun([_LT_LANG_RC_CONFIG],
6933[AC_REQUIRE([LT_PROG_RC])dnl
6934AC_LANG_SAVE
6935
6936# Source file extension for RC test sources.
6937ac_ext=rc
6938
6939# Object file extension for compiled RC test sources.
6940objext=o
6941_LT_TAGVAR(objext, $1)=$objext
6942
6943# Code to be used in simple compile tests
6944lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
6945
6946# Code to be used in simple link tests
6947lt_simple_link_test_code="$lt_simple_compile_test_code"
6948
6949# ltmain only uses $CC for tagged configurations so make sure $CC is set.
6950_LT_TAG_COMPILER
6951
6952# save warnings/boilerplate of simple test code
6953_LT_COMPILER_BOILERPLATE
6954_LT_LINKER_BOILERPLATE
6955
6956# Allow CC to be a program name with arguments.
6957lt_save_CC="$CC"
6958lt_save_GCC=$GCC
6959GCC=
6960CC=${RC-"windres"}
6961compiler=$CC
6962_LT_TAGVAR(compiler, $1)=$CC
6963_LT_CC_BASENAME([$compiler])
6964_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
6965
6966if test -n "$compiler"; then
6967 :
6968 _LT_CONFIG($1)
6969fi
6970
6971GCC=$lt_save_GCC
6972AC_LANG_RESTORE
6973CC="$lt_save_CC"
6974])# _LT_LANG_RC_CONFIG
6975
6976
6977# LT_PROG_GCJ
6978# -----------
6979AC_DEFUN([LT_PROG_GCJ],
6980[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
6981 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
6982 [AC_CHECK_TOOL(GCJ, gcj,)
6983 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
6984 AC_SUBST(GCJFLAGS)])])[]dnl
a.rottmann9bc8b932004-02-29 15:18:31 +00006985])
6986
mlcreech636a9952008-05-05 22:52:56 +00006987# Old name:
6988AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
6989dnl aclocal-1.4 backwards compatibility:
6990dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
6991
6992
6993# LT_PROG_RC
6994# ----------
6995AC_DEFUN([LT_PROG_RC],
6996[AC_CHECK_TOOL(RC, windres,)
6997])
6998
6999# Old name:
7000AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7001dnl aclocal-1.4 backwards compatibility:
7002dnl AC_DEFUN([LT_AC_PROG_RC], [])
7003
7004
7005# _LT_DECL_EGREP
7006# --------------
7007# If we don't have a new enough Autoconf to choose the best grep
7008# available, choose the one first in the user's PATH.
7009m4_defun([_LT_DECL_EGREP],
7010[AC_REQUIRE([AC_PROG_EGREP])dnl
7011AC_REQUIRE([AC_PROG_FGREP])dnl
7012test -z "$GREP" && GREP=grep
7013_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7014_LT_DECL([], [EGREP], [1], [An ERE matcher])
7015_LT_DECL([], [FGREP], [1], [A literal string matcher])
7016dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7017AC_SUBST([GREP])
7018])
7019
7020
vapier6acb2cf2009-01-28 04:46:28 +00007021# _LT_DECL_OBJDUMP
7022# --------------
7023# If we don't have a new enough Autoconf to choose the best objdump
7024# available, choose the one first in the user's PATH.
7025m4_defun([_LT_DECL_OBJDUMP],
7026[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7027test -z "$OBJDUMP" && OBJDUMP=objdump
7028_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7029AC_SUBST([OBJDUMP])
7030])
7031
7032
mlcreech636a9952008-05-05 22:52:56 +00007033# _LT_DECL_SED
7034# ------------
7035# Check for a fully-functional sed program, that truncates
7036# as few characters as possible. Prefer GNU sed if found.
7037m4_defun([_LT_DECL_SED],
7038[AC_PROG_SED
7039test -z "$SED" && SED=sed
7040Xsed="$SED -e 1s/^X//"
7041_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7042_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7043 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7044])# _LT_DECL_SED
7045
7046m4_ifndef([AC_PROG_SED], [
a.rottmann62507b62003-03-24 09:40:34 +00007047# NOTE: This macro has been submitted for inclusion into #
7048# GNU Autoconf as AC_PROG_SED. When it is available in #
7049# a released version of Autoconf we should remove this #
7050# macro and use it instead. #
mlcreech636a9952008-05-05 22:52:56 +00007051
7052m4_defun([AC_PROG_SED],
a.rottmann62507b62003-03-24 09:40:34 +00007053[AC_MSG_CHECKING([for a sed that does not truncate output])
7054AC_CACHE_VAL(lt_cv_path_SED,
7055[# Loop through the user's path and test for sed and gsed.
7056# Then use that list of sed's as ones to test for truncation.
a.rottmann62507b62003-03-24 09:40:34 +00007057as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7058for as_dir in $PATH
7059do
7060 IFS=$as_save_IFS
7061 test -z "$as_dir" && as_dir=.
a.rottmann9bc8b932004-02-29 15:18:31 +00007062 for lt_ac_prog in sed gsed; do
a.rottmann62507b62003-03-24 09:40:34 +00007063 for ac_exec_ext in '' $ac_executable_extensions; do
a.rottmann9bc8b932004-02-29 15:18:31 +00007064 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7065 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
a.rottmann62507b62003-03-24 09:40:34 +00007066 fi
7067 done
7068 done
7069done
mlcreech636a9952008-05-05 22:52:56 +00007070IFS=$as_save_IFS
a.rottmann9bc8b932004-02-29 15:18:31 +00007071lt_ac_max=0
7072lt_ac_count=0
7073# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7074# along with /bin/sed that truncates output.
7075for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
vapier7f19c022007-02-17 14:46:31 +00007076 test ! -f $lt_ac_sed && continue
a.rottmann9bc8b932004-02-29 15:18:31 +00007077 cat /dev/null > conftest.in
7078 lt_ac_count=0
7079 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7080 # Check for GNU sed and select it if it is found.
7081 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7082 lt_cv_path_SED=$lt_ac_sed
7083 break
7084 fi
7085 while true; do
7086 cat conftest.in conftest.in >conftest.tmp
7087 mv conftest.tmp conftest.in
7088 cp conftest.in conftest.nl
7089 echo >>conftest.nl
7090 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7091 cmp -s conftest.out conftest.nl || break
7092 # 10000 chars as input seems more than enough
7093 test $lt_ac_count -gt 10 && break
7094 lt_ac_count=`expr $lt_ac_count + 1`
7095 if test $lt_ac_count -gt $lt_ac_max; then
7096 lt_ac_max=$lt_ac_count
7097 lt_cv_path_SED=$lt_ac_sed
a.rottmann62507b62003-03-24 09:40:34 +00007098 fi
a.rottmann62507b62003-03-24 09:40:34 +00007099 done
a.rottmann9bc8b932004-02-29 15:18:31 +00007100done
a.rottmann62507b62003-03-24 09:40:34 +00007101])
vapier7f19c022007-02-17 14:46:31 +00007102SED=$lt_cv_path_SED
mlcreech636a9952008-05-05 22:52:56 +00007103AC_SUBST([SED])
a.rottmann62507b62003-03-24 09:40:34 +00007104AC_MSG_RESULT([$SED])
mlcreech636a9952008-05-05 22:52:56 +00007105])#AC_PROG_SED
7106])#m4_ifndef
7107
7108# Old name:
7109AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7110dnl aclocal-1.4 backwards compatibility:
7111dnl AC_DEFUN([LT_AC_PROG_SED], [])
7112
7113
7114# _LT_CHECK_SHELL_FEATURES
7115# ------------------------
7116# Find out whether the shell is Bourne or XSI compatible,
7117# or has some other useful features.
7118m4_defun([_LT_CHECK_SHELL_FEATURES],
7119[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7120# Try some XSI features
7121xsi_shell=no
7122( _lt_dummy="a/b/c"
7123 test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
7124 = c,a/b,, \
7125 && eval 'test $(( 1 + 1 )) -eq 2 \
7126 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7127 && xsi_shell=yes
7128AC_MSG_RESULT([$xsi_shell])
7129_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7130
7131AC_MSG_CHECKING([whether the shell understands "+="])
7132lt_shell_append=no
7133( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7134 >/dev/null 2>&1 \
7135 && lt_shell_append=yes
7136AC_MSG_RESULT([$lt_shell_append])
7137_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7138
7139if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7140 lt_unset=unset
7141else
7142 lt_unset=false
7143fi
7144_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7145
7146# test EBCDIC or ASCII
7147case `echo X|tr X '\101'` in
7148 A) # ASCII based system
7149 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7150 lt_SP2NL='tr \040 \012'
7151 lt_NL2SP='tr \015\012 \040\040'
7152 ;;
7153 *) # EBCDIC based system
7154 lt_SP2NL='tr \100 \n'
7155 lt_NL2SP='tr \r\n \100\100'
7156 ;;
7157esac
7158_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7159_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7160])# _LT_CHECK_SHELL_FEATURES
7161
7162
7163# _LT_PROG_XSI_SHELLFNS
7164# ---------------------
7165# Bourne and XSI compatible variants of some useful shell functions.
7166m4_defun([_LT_PROG_XSI_SHELLFNS],
7167[case $xsi_shell in
7168 yes)
7169 cat << \_LT_EOF >> "$cfgfile"
7170
7171# func_dirname file append nondir_replacement
7172# Compute the dirname of FILE. If nonempty, add APPEND to the result,
7173# otherwise set result to NONDIR_REPLACEMENT.
7174func_dirname ()
7175{
7176 case ${1} in
7177 */*) func_dirname_result="${1%/*}${2}" ;;
7178 * ) func_dirname_result="${3}" ;;
7179 esac
7180}
7181
7182# func_basename file
7183func_basename ()
7184{
7185 func_basename_result="${1##*/}"
7186}
7187
7188# func_dirname_and_basename file append nondir_replacement
7189# perform func_basename and func_dirname in a single function
7190# call:
7191# dirname: Compute the dirname of FILE. If nonempty,
7192# add APPEND to the result, otherwise set result
7193# to NONDIR_REPLACEMENT.
7194# value returned in "$func_dirname_result"
7195# basename: Compute filename of FILE.
7196# value retuned in "$func_basename_result"
7197# Implementation must be kept synchronized with func_dirname
7198# and func_basename. For efficiency, we do not delegate to
7199# those functions but instead duplicate the functionality here.
7200func_dirname_and_basename ()
7201{
7202 case ${1} in
7203 */*) func_dirname_result="${1%/*}${2}" ;;
7204 * ) func_dirname_result="${3}" ;;
7205 esac
7206 func_basename_result="${1##*/}"
7207}
7208
7209# func_stripname prefix suffix name
7210# strip PREFIX and SUFFIX off of NAME.
7211# PREFIX and SUFFIX must not contain globbing or regex special
7212# characters, hashes, percent signs, but SUFFIX may contain a leading
7213# dot (in which case that matches only a dot).
7214func_stripname ()
7215{
7216 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7217 # positional parameters, so assign one to ordinary parameter first.
7218 func_stripname_result=${3}
7219 func_stripname_result=${func_stripname_result#"${1}"}
7220 func_stripname_result=${func_stripname_result%"${2}"}
7221}
7222
7223# func_opt_split
7224func_opt_split ()
7225{
7226 func_opt_split_opt=${1%%=*}
7227 func_opt_split_arg=${1#*=}
7228}
7229
7230# func_lo2o object
7231func_lo2o ()
7232{
7233 case ${1} in
7234 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7235 *) func_lo2o_result=${1} ;;
7236 esac
7237}
7238
7239# func_xform libobj-or-source
7240func_xform ()
7241{
7242 func_xform_result=${1%.*}.lo
7243}
7244
7245# func_arith arithmetic-term...
7246func_arith ()
7247{
7248 func_arith_result=$(( $[*] ))
7249}
7250
7251# func_len string
7252# STRING may not start with a hyphen.
7253func_len ()
7254{
7255 func_len_result=${#1}
7256}
7257
7258_LT_EOF
7259 ;;
7260 *) # Bourne compatible functions.
7261 cat << \_LT_EOF >> "$cfgfile"
7262
7263# func_dirname file append nondir_replacement
7264# Compute the dirname of FILE. If nonempty, add APPEND to the result,
7265# otherwise set result to NONDIR_REPLACEMENT.
7266func_dirname ()
7267{
7268 # Extract subdirectory from the argument.
7269 func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"`
7270 if test "X$func_dirname_result" = "X${1}"; then
7271 func_dirname_result="${3}"
7272 else
7273 func_dirname_result="$func_dirname_result${2}"
7274 fi
7275}
7276
7277# func_basename file
7278func_basename ()
7279{
7280 func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"`
7281}
7282
7283dnl func_dirname_and_basename
7284dnl A portable version of this function is already defined in general.m4sh
7285dnl so there is no need for it here.
7286
7287# func_stripname prefix suffix name
7288# strip PREFIX and SUFFIX off of NAME.
7289# PREFIX and SUFFIX must not contain globbing or regex special
7290# characters, hashes, percent signs, but SUFFIX may contain a leading
7291# dot (in which case that matches only a dot).
7292# func_strip_suffix prefix name
7293func_stripname ()
7294{
7295 case ${2} in
7296 .*) func_stripname_result=`$ECHO "X${3}" \
7297 | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;;
7298 *) func_stripname_result=`$ECHO "X${3}" \
7299 | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;;
7300 esac
7301}
7302
7303# sed scripts:
7304my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
7305my_sed_long_arg='1s/^-[[^=]]*=//'
7306
7307# func_opt_split
7308func_opt_split ()
7309{
7310 func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"`
7311 func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"`
7312}
7313
7314# func_lo2o object
7315func_lo2o ()
7316{
7317 func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"`
7318}
7319
7320# func_xform libobj-or-source
7321func_xform ()
7322{
7323 func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[[^.]]*$/.lo/'`
7324}
7325
7326# func_arith arithmetic-term...
7327func_arith ()
7328{
7329 func_arith_result=`expr "$[@]"`
7330}
7331
7332# func_len string
7333# STRING may not start with a hyphen.
7334func_len ()
7335{
7336 func_len_result=`expr "$[1]" : ".*" 2>/dev/null || echo $max_cmd_len`
7337}
7338
7339_LT_EOF
7340esac
7341
7342case $lt_shell_append in
7343 yes)
7344 cat << \_LT_EOF >> "$cfgfile"
7345
7346# func_append var value
7347# Append VALUE to the end of shell variable VAR.
7348func_append ()
7349{
7350 eval "$[1]+=\$[2]"
7351}
7352_LT_EOF
7353 ;;
7354 *)
7355 cat << \_LT_EOF >> "$cfgfile"
7356
7357# func_append var value
7358# Append VALUE to the end of shell variable VAR.
7359func_append ()
7360{
7361 eval "$[1]=\$$[1]\$[2]"
7362}
7363
7364_LT_EOF
7365 ;;
7366 esac
drh71eb93e2001-09-28 01:34:43 +00007367])
7368
mlcreech636a9952008-05-05 22:52:56 +00007369# Helper functions for option handling. -*- Autoconf -*-
7370#
7371# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
7372# Written by Gary V. Vaughan, 2004
7373#
7374# This file is free software; the Free Software Foundation gives
7375# unlimited permission to copy and/or distribute it, with or without
7376# modifications, as long as this notice is preserved.
7377
7378# serial 6 ltoptions.m4
7379
7380# This is to help aclocal find these macros, as it can't see m4_define.
7381AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
7382
7383
7384# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
7385# ------------------------------------------
7386m4_define([_LT_MANGLE_OPTION],
7387[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
7388
7389
7390# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
7391# ---------------------------------------
7392# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
7393# matching handler defined, dispatch to it. Other OPTION-NAMEs are
7394# saved as a flag.
7395m4_define([_LT_SET_OPTION],
7396[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
7397m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
7398 _LT_MANGLE_DEFUN([$1], [$2]),
7399 [m4_warning([Unknown $1 option `$2'])])[]dnl
7400])
7401
7402
7403# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
7404# ------------------------------------------------------------
7405# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
7406m4_define([_LT_IF_OPTION],
7407[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
7408
7409
7410# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
7411# -------------------------------------------------------
7412# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
7413# are set.
7414m4_define([_LT_UNLESS_OPTIONS],
7415[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
7416 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
7417 [m4_define([$0_found])])])[]dnl
7418m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
7419])[]dnl
7420])
7421
7422
7423# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
7424# ----------------------------------------
7425# OPTION-LIST is a space-separated list of Libtool options associated
7426# with MACRO-NAME. If any OPTION has a matching handler declared with
7427# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
7428# the unknown option and exit.
7429m4_defun([_LT_SET_OPTIONS],
7430[# Set options
7431m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
7432 [_LT_SET_OPTION([$1], _LT_Option)])
7433
7434m4_if([$1],[LT_INIT],[
7435 dnl
7436 dnl Simply set some default values (i.e off) if boolean options were not
7437 dnl specified:
7438 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
7439 ])
7440 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
7441 ])
7442 dnl
7443 dnl If no reference was made to various pairs of opposing options, then
7444 dnl we run the default mode handler for the pair. For example, if neither
7445 dnl `shared' nor `disable-shared' was passed, we enable building of shared
7446 dnl archives by default:
7447 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
7448 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
7449 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
7450 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
7451 [_LT_ENABLE_FAST_INSTALL])
7452 ])
7453])# _LT_SET_OPTIONS
7454
7455
7456
7457# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
7458# -----------------------------------------
7459m4_define([_LT_MANGLE_DEFUN],
7460[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
7461
7462
7463# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
7464# -----------------------------------------------
7465m4_define([LT_OPTION_DEFINE],
7466[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
7467])# LT_OPTION_DEFINE
7468
7469
7470# dlopen
7471# ------
7472LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
7473])
7474
7475AU_DEFUN([AC_LIBTOOL_DLOPEN],
7476[_LT_SET_OPTION([LT_INIT], [dlopen])
7477AC_DIAGNOSE([obsolete],
7478[$0: Remove this warning and the call to _LT_SET_OPTION when you
7479put the `dlopen' option into LT_INIT's first parameter.])
7480])
7481
7482dnl aclocal-1.4 backwards compatibility:
7483dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
7484
7485
7486# win32-dll
7487# ---------
7488# Declare package support for building win32 dll's.
7489LT_OPTION_DEFINE([LT_INIT], [win32-dll],
7490[enable_win32_dll=yes
7491
7492case $host in
vapier6acb2cf2009-01-28 04:46:28 +00007493*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*)
mlcreech636a9952008-05-05 22:52:56 +00007494 AC_CHECK_TOOL(AS, as, false)
7495 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7496 AC_CHECK_TOOL(OBJDUMP, objdump, false)
7497 ;;
7498esac
7499
7500test -z "$AS" && AS=as
7501_LT_DECL([], [AS], [0], [Assembler program])dnl
7502
7503test -z "$DLLTOOL" && DLLTOOL=dlltool
7504_LT_DECL([], [DLLTOOL], [0], [DLL creation program])dnl
7505
7506test -z "$OBJDUMP" && OBJDUMP=objdump
7507_LT_DECL([], [OBJDUMP], [0], [Object dumper program])dnl
7508])# win32-dll
7509
7510AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
7511[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7512_LT_SET_OPTION([LT_INIT], [win32-dll])
7513AC_DIAGNOSE([obsolete],
7514[$0: Remove this warning and the call to _LT_SET_OPTION when you
7515put the `win32-dll' option into LT_INIT's first parameter.])
7516])
7517
7518dnl aclocal-1.4 backwards compatibility:
7519dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
7520
7521
7522# _LT_ENABLE_SHARED([DEFAULT])
7523# ----------------------------
7524# implement the --enable-shared flag, and supports the `shared' and
7525# `disable-shared' LT_INIT options.
7526# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
7527m4_define([_LT_ENABLE_SHARED],
7528[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
7529AC_ARG_ENABLE([shared],
7530 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
7531 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
7532 [p=${PACKAGE-default}
7533 case $enableval in
7534 yes) enable_shared=yes ;;
7535 no) enable_shared=no ;;
7536 *)
7537 enable_shared=no
7538 # Look at the argument we got. We use all the common list separators.
7539 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
7540 for pkg in $enableval; do
7541 IFS="$lt_save_ifs"
7542 if test "X$pkg" = "X$p"; then
7543 enable_shared=yes
7544 fi
7545 done
7546 IFS="$lt_save_ifs"
7547 ;;
7548 esac],
7549 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
7550
7551 _LT_DECL([build_libtool_libs], [enable_shared], [0],
7552 [Whether or not to build shared libraries])
7553])# _LT_ENABLE_SHARED
7554
7555LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
7556LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
7557
7558# Old names:
7559AC_DEFUN([AC_ENABLE_SHARED],
7560[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
7561])
7562
7563AC_DEFUN([AC_DISABLE_SHARED],
7564[_LT_SET_OPTION([LT_INIT], [disable-shared])
7565])
7566
7567AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
7568AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
7569
7570dnl aclocal-1.4 backwards compatibility:
7571dnl AC_DEFUN([AM_ENABLE_SHARED], [])
7572dnl AC_DEFUN([AM_DISABLE_SHARED], [])
7573
7574
7575
7576# _LT_ENABLE_STATIC([DEFAULT])
7577# ----------------------------
7578# implement the --enable-static flag, and support the `static' and
7579# `disable-static' LT_INIT options.
7580# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
7581m4_define([_LT_ENABLE_STATIC],
7582[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
7583AC_ARG_ENABLE([static],
7584 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
7585 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
7586 [p=${PACKAGE-default}
7587 case $enableval in
7588 yes) enable_static=yes ;;
7589 no) enable_static=no ;;
7590 *)
7591 enable_static=no
7592 # Look at the argument we got. We use all the common list separators.
7593 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
7594 for pkg in $enableval; do
7595 IFS="$lt_save_ifs"
7596 if test "X$pkg" = "X$p"; then
7597 enable_static=yes
7598 fi
7599 done
7600 IFS="$lt_save_ifs"
7601 ;;
7602 esac],
7603 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
7604
7605 _LT_DECL([build_old_libs], [enable_static], [0],
7606 [Whether or not to build static libraries])
7607])# _LT_ENABLE_STATIC
7608
7609LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
7610LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
7611
7612# Old names:
7613AC_DEFUN([AC_ENABLE_STATIC],
7614[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
7615])
7616
7617AC_DEFUN([AC_DISABLE_STATIC],
7618[_LT_SET_OPTION([LT_INIT], [disable-static])
7619])
7620
7621AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
7622AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
7623
7624dnl aclocal-1.4 backwards compatibility:
7625dnl AC_DEFUN([AM_ENABLE_STATIC], [])
7626dnl AC_DEFUN([AM_DISABLE_STATIC], [])
7627
7628
7629
7630# _LT_ENABLE_FAST_INSTALL([DEFAULT])
7631# ----------------------------------
7632# implement the --enable-fast-install flag, and support the `fast-install'
7633# and `disable-fast-install' LT_INIT options.
7634# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
7635m4_define([_LT_ENABLE_FAST_INSTALL],
7636[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
7637AC_ARG_ENABLE([fast-install],
7638 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
7639 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
7640 [p=${PACKAGE-default}
7641 case $enableval in
7642 yes) enable_fast_install=yes ;;
7643 no) enable_fast_install=no ;;
7644 *)
7645 enable_fast_install=no
7646 # Look at the argument we got. We use all the common list separators.
7647 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
7648 for pkg in $enableval; do
7649 IFS="$lt_save_ifs"
7650 if test "X$pkg" = "X$p"; then
7651 enable_fast_install=yes
7652 fi
7653 done
7654 IFS="$lt_save_ifs"
7655 ;;
7656 esac],
7657 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
7658
7659_LT_DECL([fast_install], [enable_fast_install], [0],
7660 [Whether or not to optimize for fast installation])dnl
7661])# _LT_ENABLE_FAST_INSTALL
7662
7663LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
7664LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
7665
7666# Old names:
7667AU_DEFUN([AC_ENABLE_FAST_INSTALL],
7668[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
7669AC_DIAGNOSE([obsolete],
7670[$0: Remove this warning and the call to _LT_SET_OPTION when you put
7671the `fast-install' option into LT_INIT's first parameter.])
7672])
7673
7674AU_DEFUN([AC_DISABLE_FAST_INSTALL],
7675[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
7676AC_DIAGNOSE([obsolete],
7677[$0: Remove this warning and the call to _LT_SET_OPTION when you put
7678the `disable-fast-install' option into LT_INIT's first parameter.])
7679])
7680
7681dnl aclocal-1.4 backwards compatibility:
7682dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
7683dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
7684
7685
7686# _LT_WITH_PIC([MODE])
7687# --------------------
7688# implement the --with-pic flag, and support the `pic-only' and `no-pic'
7689# LT_INIT options.
7690# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
7691m4_define([_LT_WITH_PIC],
7692[AC_ARG_WITH([pic],
7693 [AS_HELP_STRING([--with-pic],
7694 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
7695 [pic_mode="$withval"],
7696 [pic_mode=default])
7697
7698test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
7699
7700_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
7701])# _LT_WITH_PIC
7702
7703LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
7704LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
7705
7706# Old name:
7707AU_DEFUN([AC_LIBTOOL_PICMODE],
7708[_LT_SET_OPTION([LT_INIT], [pic-only])
7709AC_DIAGNOSE([obsolete],
7710[$0: Remove this warning and the call to _LT_SET_OPTION when you
7711put the `pic-only' option into LT_INIT's first parameter.])
7712])
7713
7714dnl aclocal-1.4 backwards compatibility:
7715dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
7716
7717
7718m4_define([_LTDL_MODE], [])
7719LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
7720 [m4_define([_LTDL_MODE], [nonrecursive])])
7721LT_OPTION_DEFINE([LTDL_INIT], [recursive],
7722 [m4_define([_LTDL_MODE], [recursive])])
7723LT_OPTION_DEFINE([LTDL_INIT], [subproject],
7724 [m4_define([_LTDL_MODE], [subproject])])
7725
7726m4_define([_LTDL_TYPE], [])
7727LT_OPTION_DEFINE([LTDL_INIT], [installable],
7728 [m4_define([_LTDL_TYPE], [installable])])
7729LT_OPTION_DEFINE([LTDL_INIT], [convenience],
7730 [m4_define([_LTDL_TYPE], [convenience])])
7731
7732# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
7733#
vapier6acb2cf2009-01-28 04:46:28 +00007734# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
7735# Written by Gary V. Vaughan, 2004
mlcreech636a9952008-05-05 22:52:56 +00007736#
7737# This file is free software; the Free Software Foundation gives
7738# unlimited permission to copy and/or distribute it, with or without
7739# modifications, as long as this notice is preserved.
7740
vapier6acb2cf2009-01-28 04:46:28 +00007741# serial 6 ltsugar.m4
mlcreech636a9952008-05-05 22:52:56 +00007742
7743# This is to help aclocal find these macros, as it can't see m4_define.
7744AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
7745
7746
7747# lt_join(SEP, ARG1, [ARG2...])
7748# -----------------------------
7749# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
7750# associated separator.
7751# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
7752# versions in m4sugar had bugs.
7753m4_define([lt_join],
7754[m4_if([$#], [1], [],
7755 [$#], [2], [[$2]],
7756 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
7757m4_define([_lt_join],
7758[m4_if([$#$2], [2], [],
7759 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
7760
7761
7762# lt_car(LIST)
7763# lt_cdr(LIST)
7764# ------------
7765# Manipulate m4 lists.
7766# These macros are necessary as long as will still need to support
7767# Autoconf-2.59 which quotes differently.
7768m4_define([lt_car], [[$1]])
7769m4_define([lt_cdr],
7770[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
7771 [$#], 1, [],
7772 [m4_dquote(m4_shift($@))])])
7773m4_define([lt_unquote], $1)
7774
7775
7776# lt_append(MACRO-NAME, STRING, [SEPARATOR])
7777# ------------------------------------------
7778# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
7779# Note that neither SEPARATOR nor STRING are expanded; they are appended
7780# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
7781# No SEPARATOR is output if MACRO-NAME was previously undefined (different
7782# than defined and empty).
7783#
7784# This macro is needed until we can rely on Autoconf 2.62, since earlier
7785# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
7786m4_define([lt_append],
7787[m4_define([$1],
7788 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
7789
7790
7791
7792# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
7793# ----------------------------------------------------------
7794# Produce a SEP delimited list of all paired combinations of elements of
7795# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
7796# has the form PREFIXmINFIXSUFFIXn.
vapier6acb2cf2009-01-28 04:46:28 +00007797# Needed until we can rely on m4_combine added in Autoconf 2.62.
mlcreech636a9952008-05-05 22:52:56 +00007798m4_define([lt_combine],
vapier6acb2cf2009-01-28 04:46:28 +00007799[m4_if(m4_eval([$# > 3]), [1],
7800 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
7801[[m4_foreach([_Lt_prefix], [$2],
7802 [m4_foreach([_Lt_suffix],
7803 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
7804 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
mlcreech636a9952008-05-05 22:52:56 +00007805
7806
7807# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
7808# -----------------------------------------------------------------------
7809# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
7810# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
7811m4_define([lt_if_append_uniq],
7812[m4_ifdef([$1],
7813 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
7814 [lt_append([$1], [$2], [$3])$4],
7815 [$5])],
7816 [lt_append([$1], [$2], [$3])$4])])
7817
7818
7819# lt_dict_add(DICT, KEY, VALUE)
7820# -----------------------------
7821m4_define([lt_dict_add],
7822[m4_define([$1($2)], [$3])])
7823
7824
7825# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
7826# --------------------------------------------
7827m4_define([lt_dict_add_subkey],
7828[m4_define([$1($2:$3)], [$4])])
7829
7830
7831# lt_dict_fetch(DICT, KEY, [SUBKEY])
7832# ----------------------------------
7833m4_define([lt_dict_fetch],
7834[m4_ifval([$3],
7835 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
7836 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
7837
7838
7839# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
7840# -----------------------------------------------------------------
7841m4_define([lt_if_dict_fetch],
7842[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
7843 [$5],
7844 [$6])])
7845
7846
7847# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
7848# --------------------------------------------------------------
7849m4_define([lt_dict_filter],
7850[m4_if([$5], [], [],
7851 [lt_join(m4_quote(m4_default([$4], [[, ]])),
7852 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
7853 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
7854])
7855
7856# ltversion.m4 -- version numbers -*- Autoconf -*-
7857#
7858# Copyright (C) 2004 Free Software Foundation, Inc.
7859# Written by Scott James Remnant, 2004
7860#
7861# This file is free software; the Free Software Foundation gives
7862# unlimited permission to copy and/or distribute it, with or without
7863# modifications, as long as this notice is preserved.
7864
7865# Generated from ltversion.in.
7866
vapier6acb2cf2009-01-28 04:46:28 +00007867# serial 3012 ltversion.m4
mlcreech636a9952008-05-05 22:52:56 +00007868# This file is part of GNU Libtool
7869
vapier6acb2cf2009-01-28 04:46:28 +00007870m4_define([LT_PACKAGE_VERSION], [2.2.6])
7871m4_define([LT_PACKAGE_REVISION], [1.3012])
mlcreech636a9952008-05-05 22:52:56 +00007872
7873AC_DEFUN([LTVERSION_VERSION],
vapier6acb2cf2009-01-28 04:46:28 +00007874[macro_version='2.2.6'
7875macro_revision='1.3012'
mlcreech636a9952008-05-05 22:52:56 +00007876_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
7877_LT_DECL(, macro_revision, 0)
7878])
7879
7880# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
7881#
7882# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
7883# Written by Scott James Remnant, 2004.
7884#
7885# This file is free software; the Free Software Foundation gives
7886# unlimited permission to copy and/or distribute it, with or without
7887# modifications, as long as this notice is preserved.
7888
7889# serial 4 lt~obsolete.m4
7890
7891# These exist entirely to fool aclocal when bootstrapping libtool.
7892#
7893# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
7894# which have later been changed to m4_define as they aren't part of the
7895# exported API, or moved to Autoconf or Automake where they belong.
7896#
7897# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
7898# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
7899# using a macro with the same name in our local m4/libtool.m4 it'll
7900# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
7901# and doesn't know about Autoconf macros at all.)
7902#
7903# So we provide this file, which has a silly filename so it's always
7904# included after everything else. This provides aclocal with the
7905# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
7906# because those macros already exist, or will be overwritten later.
7907# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
7908#
7909# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
7910# Yes, that means every name once taken will need to remain here until
7911# we give up compatibility with versions before 1.7, at which point
7912# we need to keep only those names which we still refer to.
7913
7914# This is to help aclocal find these macros, as it can't see m4_define.
7915AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
7916
7917m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
7918m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
7919m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
7920m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
7921m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
7922m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
7923m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
7924m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
7925m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
7926m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
7927m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
7928m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
7929m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
7930m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
7931m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
7932m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
7933m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
7934m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
7935m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
7936m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
7937m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
7938m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
7939m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
7940m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
7941m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
7942m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
7943m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
7944m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
7945m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
7946m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
7947m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
7948m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
7949m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
7950m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
7951m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
7952m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
7953m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
7954m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
7955m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
7956m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
7957m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
7958m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
7959m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])])
7960m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
7961m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
7962m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
7963m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
7964m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
7965m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
7966m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
7967m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
7968m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
7969m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
7970m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
7971m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
7972