]> andersk Git - libyaml.git/blame - aclocal.m4
Imported Upstream version 0.1.6
[libyaml.git] / aclocal.m4
CommitLineData
059850b5 1# generated automatically by aclocal 1.11.3 -*- Autoconf -*-
b9668ba4
AK
2
3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
059850b5
AK
4# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
5# Inc.
b9668ba4
AK
6# This file is free software; the Free Software Foundation
7# gives unlimited permission to copy and/or distribute it,
8# with or without modifications, as long as this notice is preserved.
9
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
12# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
13# PARTICULAR PURPOSE.
14
5c706339
AK
15m4_ifndef([AC_AUTOCONF_VERSION],
16 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
059850b5
AK
17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
18[m4_warning([this file was generated for autoconf 2.68.
5c706339
AK
19You have another version of autoconf. It may work, but is not guaranteed to.
20If you have problems, you may need to regenerate the build system entirely.
21To do so, use the procedure documented by the package, typically `autoreconf'.])])
22
b9668ba4 23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
5c706339
AK
24#
25# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
059850b5
AK
26# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
27# Foundation, Inc.
5c706339
AK
28# Written by Gordon Matzigkeit, 1996
29#
30# This file is free software; the Free Software Foundation gives
31# unlimited permission to copy and/or distribute it, with or without
32# modifications, as long as this notice is preserved.
33
34m4_define([_LT_COPYING], [dnl
35# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
059850b5
AK
36# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
37# Foundation, Inc.
5c706339
AK
38# Written by Gordon Matzigkeit, 1996
39#
40# This file is part of GNU Libtool.
41#
42# GNU Libtool is free software; you can redistribute it and/or
43# modify it under the terms of the GNU General Public License as
44# published by the Free Software Foundation; either version 2 of
45# the License, or (at your option) any later version.
46#
47# As a special exception to the GNU General Public License,
48# if you distribute this file as part of a program or library that
49# is built using GNU Libtool, you may include this file under the
50# same distribution terms that you use for the rest of that program.
51#
52# GNU Libtool is distributed in the hope that it will be useful,
53# but WITHOUT ANY WARRANTY; without even the implied warranty of
54# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
55# GNU General Public License for more details.
56#
57# You should have received a copy of the GNU General Public License
58# along with GNU Libtool; see the file COPYING. If not, a copy
59# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
60# obtained by writing to the Free Software Foundation, Inc.,
61# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
62])
b9668ba4 63
059850b5 64# serial 57 LT_INIT
b9668ba4
AK
65
66
5c706339
AK
67# LT_PREREQ(VERSION)
68# ------------------
69# Complain and exit if this libtool version is less that VERSION.
70m4_defun([LT_PREREQ],
71[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
72 [m4_default([$3],
73 [m4_fatal([Libtool version $1 or higher is required],
74 63)])],
75 [$2])])
b9668ba4
AK
76
77
5c706339
AK
78# _LT_CHECK_BUILDDIR
79# ------------------
80# Complain if the absolute build directory name contains unusual characters
81m4_defun([_LT_CHECK_BUILDDIR],
82[case `pwd` in
83 *\ * | *\ *)
84 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
85esac
86])
87
88
89# LT_INIT([OPTIONS])
90# ------------------
91AC_DEFUN([LT_INIT],
92[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
059850b5 93AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
5c706339
AK
94AC_BEFORE([$0], [LT_LANG])dnl
95AC_BEFORE([$0], [LT_OUTPUT])dnl
96AC_BEFORE([$0], [LTDL_INIT])dnl
97m4_require([_LT_CHECK_BUILDDIR])dnl
98
99dnl Autoconf doesn't catch unexpanded LT_ macros by default:
100m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
101m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
102dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
103dnl unless we require an AC_DEFUNed macro:
104AC_REQUIRE([LTOPTIONS_VERSION])dnl
105AC_REQUIRE([LTSUGAR_VERSION])dnl
106AC_REQUIRE([LTVERSION_VERSION])dnl
107AC_REQUIRE([LTOBSOLETE_VERSION])dnl
108m4_require([_LT_PROG_LTMAIN])dnl
109
059850b5
AK
110_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
111
5c706339
AK
112dnl Parse OPTIONS
113_LT_SET_OPTIONS([$0], [$1])
b9668ba4
AK
114
115# This can be used to rebuild libtool when needed
5c706339 116LIBTOOL_DEPS="$ltmain"
b9668ba4
AK
117
118# Always use our own libtool.
119LIBTOOL='$(SHELL) $(top_builddir)/libtool'
120AC_SUBST(LIBTOOL)dnl
121
5c706339 122_LT_SETUP
b9668ba4 123
5c706339
AK
124# Only expand once:
125m4_define([LT_INIT])
126])# LT_INIT
b9668ba4 127
5c706339
AK
128# Old names:
129AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
130AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
131dnl aclocal-1.4 backwards compatibility:
132dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
133dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
134
135
136# _LT_CC_BASENAME(CC)
137# -------------------
138# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
139m4_defun([_LT_CC_BASENAME],
140[for cc_temp in $1""; do
141 case $cc_temp in
142 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
143 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
144 \-*) ;;
145 *) break;;
146 esac
147done
059850b5 148cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
5c706339
AK
149])
150
151
152# _LT_FILEUTILS_DEFAULTS
153# ----------------------
154# It is okay to use these file commands and assume they have been set
155# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
156m4_defun([_LT_FILEUTILS_DEFAULTS],
157[: ${CP="cp -f"}
158: ${MV="mv -f"}
159: ${RM="rm -f"}
160])# _LT_FILEUTILS_DEFAULTS
161
162
163# _LT_SETUP
164# ---------
165m4_defun([_LT_SETUP],
166[AC_REQUIRE([AC_CANONICAL_HOST])dnl
b9668ba4 167AC_REQUIRE([AC_CANONICAL_BUILD])dnl
059850b5
AK
168AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
169AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
170
171_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
172dnl
5c706339
AK
173_LT_DECL([], [host_alias], [0], [The host system])dnl
174_LT_DECL([], [host], [0])dnl
175_LT_DECL([], [host_os], [0])dnl
176dnl
177_LT_DECL([], [build_alias], [0], [The build system])dnl
178_LT_DECL([], [build], [0])dnl
179_LT_DECL([], [build_os], [0])dnl
180dnl
b9668ba4 181AC_REQUIRE([AC_PROG_CC])dnl
5c706339
AK
182AC_REQUIRE([LT_PATH_LD])dnl
183AC_REQUIRE([LT_PATH_NM])dnl
184dnl
b9668ba4 185AC_REQUIRE([AC_PROG_LN_S])dnl
5c706339
AK
186test -z "$LN_S" && LN_S="ln -s"
187_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
b9668ba4 188dnl
5c706339
AK
189AC_REQUIRE([LT_CMD_MAX_LEN])dnl
190_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
191_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
192dnl
193m4_require([_LT_FILEUTILS_DEFAULTS])dnl
194m4_require([_LT_CHECK_SHELL_FEATURES])dnl
059850b5 195m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
5c706339
AK
196m4_require([_LT_CMD_RELOAD])dnl
197m4_require([_LT_CHECK_MAGIC_METHOD])dnl
059850b5 198m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
5c706339
AK
199m4_require([_LT_CMD_OLD_ARCHIVE])dnl
200m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
059850b5 201m4_require([_LT_WITH_SYSROOT])dnl
5c706339
AK
202
203_LT_CONFIG_LIBTOOL_INIT([
204# See if we are running on zsh, and set the options which allow our
205# commands through without removal of \ escapes INIT.
206if test -n "\${ZSH_VERSION+set}" ; then
207 setopt NO_GLOB_SUBST
208fi
209])
210if test -n "${ZSH_VERSION+set}" ; then
211 setopt NO_GLOB_SUBST
212fi
b9668ba4 213
5c706339 214_LT_CHECK_OBJDIR
b9668ba4 215
5c706339 216m4_require([_LT_TAG_COMPILER])dnl
b9668ba4
AK
217
218case $host_os in
219aix3*)
220 # AIX sometimes has problems with the GCC collect2 program. For some
221 # reason, if we set the COLLECT_NAMES environment variable, the problems
222 # vanish in a puff of smoke.
223 if test "X${COLLECT_NAMES+set}" != Xset; then
224 COLLECT_NAMES=
225 export COLLECT_NAMES
226 fi
227 ;;
228esac
229
b9668ba4 230# Global variables:
5c706339 231ofile=libtool
b9668ba4
AK
232can_build_shared=yes
233
234# All known linkers require a `.a' archive for static linking (except MSVC,
235# which needs '.lib').
236libext=a
b9668ba4 237
5c706339 238with_gnu_ld="$lt_cv_prog_gnu_ld"
b9668ba4
AK
239
240old_CC="$CC"
241old_CFLAGS="$CFLAGS"
242
243# Set sane defaults for various variables
b9668ba4
AK
244test -z "$CC" && CC=cc
245test -z "$LTCC" && LTCC=$CC
246test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
b9668ba4 247test -z "$LD" && LD=ld
b9668ba4
AK
248test -z "$ac_objext" && ac_objext=o
249
b9668ba4
AK
250_LT_CC_BASENAME([$compiler])
251
252# Only perform the check for file, if the check method requires it
5c706339 253test -z "$MAGIC_CMD" && MAGIC_CMD=file
b9668ba4
AK
254case $deplibs_check_method in
255file_magic*)
256 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
5c706339 257 _LT_PATH_MAGIC
b9668ba4
AK
258 fi
259 ;;
260esac
261
5c706339
AK
262# Use C for the default configuration in the libtool script
263LT_SUPPORTED_TAG([CC])
264_LT_LANG_C_CONFIG
265_LT_LANG_DEFAULT_CONFIG
266_LT_CONFIG_COMMANDS
267])# _LT_SETUP
b9668ba4 268
b9668ba4 269
059850b5
AK
270# _LT_PREPARE_SED_QUOTE_VARS
271# --------------------------
272# Define a few sed substitution that help us do robust quoting.
273m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
274[# Backslashify metacharacters that are still active within
275# double-quoted strings.
276sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
277
278# Same as above, but do not quote variable references.
279double_quote_subst='s/\([["`\\]]\)/\\\1/g'
280
281# Sed substitution to delay expansion of an escaped shell variable in a
282# double_quote_subst'ed string.
283delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
284
285# Sed substitution to delay expansion of an escaped single quote.
286delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
287
288# Sed substitution to avoid accidental globbing in evaled expressions
289no_glob_subst='s/\*/\\\*/g'
290])
291
5c706339
AK
292# _LT_PROG_LTMAIN
293# ---------------
294# Note that this code is called both from `configure', and `config.status'
295# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
296# `config.status' has no value for ac_aux_dir unless we are using Automake,
297# so we pass a copy along to make sure it has a sensible value anyway.
298m4_defun([_LT_PROG_LTMAIN],
299[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
300_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
301ltmain="$ac_aux_dir/ltmain.sh"
302])# _LT_PROG_LTMAIN
b9668ba4 303
b9668ba4
AK
304
305
5c706339
AK
306# So that we can recreate a full libtool script including additional
307# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
308# in macros and then make a single call at the end using the `libtool'
309# label.
b9668ba4 310
b9668ba4 311
5c706339
AK
312# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
313# ----------------------------------------
314# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
315m4_define([_LT_CONFIG_LIBTOOL_INIT],
316[m4_ifval([$1],
317 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
318 [$1
319])])])
b9668ba4 320
5c706339
AK
321# Initialize.
322m4_define([_LT_OUTPUT_LIBTOOL_INIT])
b9668ba4
AK
323
324
5c706339
AK
325# _LT_CONFIG_LIBTOOL([COMMANDS])
326# ------------------------------
327# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
328m4_define([_LT_CONFIG_LIBTOOL],
329[m4_ifval([$1],
330 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
331 [$1
332])])])
333
334# Initialize.
335m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
336
337
338# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
339# -----------------------------------------------------
340m4_defun([_LT_CONFIG_SAVE_COMMANDS],
341[_LT_CONFIG_LIBTOOL([$1])
342_LT_CONFIG_LIBTOOL_INIT([$2])
b9668ba4
AK
343])
344
345
5c706339
AK
346# _LT_FORMAT_COMMENT([COMMENT])
347# -----------------------------
348# Add leading comment marks to the start of each line, and a trailing
349# full-stop to the whole comment if one is not present already.
350m4_define([_LT_FORMAT_COMMENT],
351[m4_ifval([$1], [
352m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
353 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
354)])
355
356
357
358
359
360# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
361# -------------------------------------------------------------------
362# CONFIGNAME is the name given to the value in the libtool script.
363# VARNAME is the (base) name used in the configure script.
364# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
365# VARNAME. Any other value will be used directly.
366m4_define([_LT_DECL],
367[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
368 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
369 [m4_ifval([$1], [$1], [$2])])
370 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
371 m4_ifval([$4],
372 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
373 lt_dict_add_subkey([lt_decl_dict], [$2],
374 [tagged?], [m4_ifval([$5], [yes], [no])])])
375])
b9668ba4
AK
376
377
5c706339
AK
378# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
379# --------------------------------------------------------
380m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
b9668ba4
AK
381
382
5c706339
AK
383# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
384# ------------------------------------------------
385m4_define([lt_decl_tag_varnames],
386[_lt_decl_filter([tagged?], [yes], $@)])
b9668ba4
AK
387
388
5c706339
AK
389# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
390# ---------------------------------------------------------
391m4_define([_lt_decl_filter],
392[m4_case([$#],
393 [0], [m4_fatal([$0: too few arguments: $#])],
394 [1], [m4_fatal([$0: too few arguments: $#: $1])],
395 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
396 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
397 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
398])
b9668ba4
AK
399
400
5c706339
AK
401# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
402# --------------------------------------------------
403m4_define([lt_decl_quote_varnames],
404[_lt_decl_filter([value], [1], $@)])
b9668ba4 405
b9668ba4 406
5c706339
AK
407# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
408# ---------------------------------------------------
409m4_define([lt_decl_dquote_varnames],
410[_lt_decl_filter([value], [2], $@)])
b9668ba4 411
b9668ba4 412
5c706339
AK
413# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
414# ---------------------------------------------------
415m4_define([lt_decl_varnames_tagged],
47dc80f6
AK
416[m4_assert([$# <= 2])dnl
417_$0(m4_quote(m4_default([$1], [[, ]])),
418 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
419 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
420m4_define([_lt_decl_varnames_tagged],
421[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
b9668ba4 422
b9668ba4 423
5c706339
AK
424# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
425# ------------------------------------------------
426m4_define([lt_decl_all_varnames],
427[_$0(m4_quote(m4_default([$1], [[, ]])),
428 m4_if([$2], [],
429 m4_quote(lt_decl_varnames),
430 m4_quote(m4_shift($@))))[]dnl
431])
432m4_define([_lt_decl_all_varnames],
433[lt_join($@, lt_decl_varnames_tagged([$1],
434 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
435])
b9668ba4 436
b9668ba4 437
5c706339
AK
438# _LT_CONFIG_STATUS_DECLARE([VARNAME])
439# ------------------------------------
440# Quote a variable value, and forward it to `config.status' so that its
441# declaration there will have the same value as in `configure'. VARNAME
442# must have a single quote delimited value for this to work.
443m4_define([_LT_CONFIG_STATUS_DECLARE],
059850b5 444[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
b9668ba4 445
b9668ba4 446
5c706339
AK
447# _LT_CONFIG_STATUS_DECLARATIONS
448# ------------------------------
449# We delimit libtool config variables with single quotes, so when
450# we write them to config.status, we have to be sure to quote all
451# embedded single quotes properly. In configure, this macro expands
452# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
453#
059850b5 454# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
5c706339
AK
455m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
456[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
457 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
b9668ba4 458
b9668ba4 459
5c706339
AK
460# _LT_LIBTOOL_TAGS
461# ----------------
462# Output comment and list of tags supported by the script
463m4_defun([_LT_LIBTOOL_TAGS],
464[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
465available_tags="_LT_TAGS"dnl
466])
b9668ba4
AK
467
468
5c706339
AK
469# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
470# -----------------------------------
471# Extract the dictionary values for VARNAME (optionally with TAG) and
472# expand to a commented shell variable setting:
473#
474# # Some comment about what VAR is for.
475# visible_name=$lt_internal_name
476m4_define([_LT_LIBTOOL_DECLARE],
477[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
478 [description])))[]dnl
479m4_pushdef([_libtool_name],
480 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
481m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
482 [0], [_libtool_name=[$]$1],
483 [1], [_libtool_name=$lt_[]$1],
484 [2], [_libtool_name=$lt_[]$1],
485 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
486m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
487])
b9668ba4 488
5c706339
AK
489
490# _LT_LIBTOOL_CONFIG_VARS
491# -----------------------
492# Produce commented declarations of non-tagged libtool config variables
493# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
494# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
495# section) are produced by _LT_LIBTOOL_TAG_VARS.
496m4_defun([_LT_LIBTOOL_CONFIG_VARS],
497[m4_foreach([_lt_var],
498 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
499 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
500
501
502# _LT_LIBTOOL_TAG_VARS(TAG)
503# -------------------------
504m4_define([_LT_LIBTOOL_TAG_VARS],
505[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
506 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
507
508
509# _LT_TAGVAR(VARNAME, [TAGNAME])
510# ------------------------------
511m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
512
513
514# _LT_CONFIG_COMMANDS
515# -------------------
516# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
517# variables for single and double quote escaping we saved from calls
518# to _LT_DECL, we can put quote escaped variables declarations
519# into `config.status', and then the shell code to quote escape them in
520# for loops in `config.status'. Finally, any additional code accumulated
521# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
522m4_defun([_LT_CONFIG_COMMANDS],
523[AC_PROVIDE_IFELSE([LT_OUTPUT],
524 dnl If the libtool generation code has been placed in $CONFIG_LT,
525 dnl instead of duplicating it all over again into config.status,
526 dnl then we will have config.status run $CONFIG_LT later, so it
527 dnl needs to know what name is stored there:
528 [AC_CONFIG_COMMANDS([libtool],
529 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
530 dnl If the libtool generation code is destined for config.status,
531 dnl expand the accumulated commands and init code now:
532 [AC_CONFIG_COMMANDS([libtool],
533 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
534])#_LT_CONFIG_COMMANDS
535
536
537# Initialize.
538m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
539[
540
541# The HP-UX ksh and POSIX shell print the target directory to stdout
542# if CDPATH is set.
543(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
544
545sed_quote_subst='$sed_quote_subst'
546double_quote_subst='$double_quote_subst'
547delay_variable_subst='$delay_variable_subst'
548_LT_CONFIG_STATUS_DECLARATIONS
549LTCC='$LTCC'
550LTCFLAGS='$LTCFLAGS'
551compiler='$compiler_DEFAULT'
552
059850b5
AK
553# A function that is used when there is no print builtin or printf.
554func_fallback_echo ()
555{
556 eval 'cat <<_LTECHO_EOF
557\$[]1
558_LTECHO_EOF'
559}
560
5c706339
AK
561# Quote evaled strings.
562for var in lt_decl_all_varnames([[ \
563]], lt_decl_quote_varnames); do
059850b5 564 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
5c706339 565 *[[\\\\\\\`\\"\\\$]]*)
059850b5 566 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
b9668ba4 567 ;;
5c706339
AK
568 *)
569 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
b9668ba4
AK
570 ;;
571 esac
5c706339
AK
572done
573
574# Double-quote double-evaled strings.
575for var in lt_decl_all_varnames([[ \
576]], lt_decl_dquote_varnames); do
059850b5 577 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
5c706339 578 *[[\\\\\\\`\\"\\\$]]*)
059850b5 579 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
b9668ba4 580 ;;
5c706339
AK
581 *)
582 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
b9668ba4
AK
583 ;;
584 esac
5c706339 585done
b9668ba4 586
5c706339
AK
587_LT_OUTPUT_LIBTOOL_INIT
588])
b9668ba4 589
059850b5
AK
590# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
591# ------------------------------------
592# Generate a child script FILE with all initialization necessary to
593# reuse the environment learned by the parent script, and make the
594# file executable. If COMMENT is supplied, it is inserted after the
595# `#!' sequence but before initialization text begins. After this
596# macro, additional text can be appended to FILE to form the body of
597# the child script. The macro ends with non-zero status if the
598# file could not be fully written (such as if the disk is full).
599m4_ifdef([AS_INIT_GENERATED],
600[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
601[m4_defun([_LT_GENERATED_FILE_INIT],
602[m4_require([AS_PREPARE])]dnl
603[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
604[lt_write_fail=0
605cat >$1 <<_ASEOF || lt_write_fail=1
606#! $SHELL
607# Generated by $as_me.
608$2
609SHELL=\${CONFIG_SHELL-$SHELL}
610export SHELL
611_ASEOF
612cat >>$1 <<\_ASEOF || lt_write_fail=1
613AS_SHELL_SANITIZE
614_AS_PREPARE
615exec AS_MESSAGE_FD>&1
616_ASEOF
617test $lt_write_fail = 0 && chmod +x $1[]dnl
618m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
b9668ba4 619
5c706339
AK
620# LT_OUTPUT
621# ---------
622# This macro allows early generation of the libtool script (before
623# AC_OUTPUT is called), incase it is used in configure for compilation
624# tests.
625AC_DEFUN([LT_OUTPUT],
626[: ${CONFIG_LT=./config.lt}
627AC_MSG_NOTICE([creating $CONFIG_LT])
059850b5
AK
628_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
629[# Run this file to recreate a libtool stub with the current configuration.])
5c706339
AK
630
631cat >>"$CONFIG_LT" <<\_LTEOF
059850b5 632lt_cl_silent=false
5c706339
AK
633exec AS_MESSAGE_LOG_FD>>config.log
634{
635 echo
636 AS_BOX([Running $as_me.])
637} >&AS_MESSAGE_LOG_FD
b9668ba4 638
5c706339
AK
639lt_cl_help="\
640\`$as_me' creates a local libtool stub from the current configuration,
641for use in further configure time tests before the real libtool is
642generated.
b9668ba4 643
5c706339 644Usage: $[0] [[OPTIONS]]
b9668ba4 645
5c706339
AK
646 -h, --help print this help, then exit
647 -V, --version print version number, then exit
648 -q, --quiet do not print progress messages
649 -d, --debug don't remove temporary files
b9668ba4 650
5c706339 651Report bugs to <bug-libtool@gnu.org>."
b9668ba4 652
5c706339
AK
653lt_cl_version="\
654m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
655m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
656configured by $[0], generated by m4_PACKAGE_STRING.
b9668ba4 657
059850b5 658Copyright (C) 2011 Free Software Foundation, Inc.
5c706339
AK
659This config.lt script is free software; the Free Software Foundation
660gives unlimited permision to copy, distribute and modify it."
b9668ba4 661
5c706339
AK
662while test $[#] != 0
663do
664 case $[1] in
665 --version | --v* | -V )
666 echo "$lt_cl_version"; exit 0 ;;
667 --help | --h* | -h )
668 echo "$lt_cl_help"; exit 0 ;;
669 --debug | --d* | -d )
670 debug=: ;;
671 --quiet | --q* | --silent | --s* | -q )
672 lt_cl_silent=: ;;
673
674 -*) AC_MSG_ERROR([unrecognized option: $[1]
675Try \`$[0] --help' for more information.]) ;;
676
677 *) AC_MSG_ERROR([unrecognized argument: $[1]
678Try \`$[0] --help' for more information.]) ;;
679 esac
680 shift
681done
b9668ba4 682
5c706339
AK
683if $lt_cl_silent; then
684 exec AS_MESSAGE_FD>/dev/null
685fi
686_LTEOF
687
688cat >>"$CONFIG_LT" <<_LTEOF
689_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
690_LTEOF
691
692cat >>"$CONFIG_LT" <<\_LTEOF
693AC_MSG_NOTICE([creating $ofile])
694_LT_OUTPUT_LIBTOOL_COMMANDS
695AS_EXIT(0)
696_LTEOF
697chmod +x "$CONFIG_LT"
698
699# configure is writing to config.log, but config.lt does its own redirection,
700# appending to config.log, which fails on DOS, as config.log is still kept
701# open by configure. Here we exec the FD to /dev/null, effectively closing
702# config.log, so it can be properly (re)opened and appended to by config.lt.
059850b5
AK
703lt_cl_success=:
704test "$silent" = yes &&
705 lt_config_lt_args="$lt_config_lt_args --quiet"
706exec AS_MESSAGE_LOG_FD>/dev/null
707$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
708exec AS_MESSAGE_LOG_FD>>config.log
709$lt_cl_success || AS_EXIT(1)
5c706339 710])# LT_OUTPUT
b9668ba4 711
b9668ba4 712
5c706339
AK
713# _LT_CONFIG(TAG)
714# ---------------
715# If TAG is the built-in tag, create an initial libtool script with a
716# default configuration from the untagged config vars. Otherwise add code
717# to config.status for appending the configuration named by TAG from the
718# matching tagged config vars.
719m4_defun([_LT_CONFIG],
720[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
721_LT_CONFIG_SAVE_COMMANDS([
722 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
723 m4_if(_LT_TAG, [C], [
724 # See if we are running on zsh, and set the options which allow our
725 # commands through without removal of \ escapes.
726 if test -n "${ZSH_VERSION+set}" ; then
727 setopt NO_GLOB_SUBST
728 fi
b9668ba4 729
5c706339
AK
730 cfgfile="${ofile}T"
731 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
732 $RM "$cfgfile"
b9668ba4 733
5c706339
AK
734 cat <<_LT_EOF >> "$cfgfile"
735#! $SHELL
b9668ba4 736
5c706339
AK
737# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
738# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
739# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
740# NOTE: Changes made to this file will be lost: look at ltmain.sh.
741#
742_LT_COPYING
743_LT_LIBTOOL_TAGS
b9668ba4 744
5c706339
AK
745# ### BEGIN LIBTOOL CONFIG
746_LT_LIBTOOL_CONFIG_VARS
747_LT_LIBTOOL_TAG_VARS
748# ### END LIBTOOL CONFIG
b9668ba4 749
5c706339 750_LT_EOF
b9668ba4 751
5c706339
AK
752 case $host_os in
753 aix3*)
754 cat <<\_LT_EOF >> "$cfgfile"
755# AIX sometimes has problems with the GCC collect2 program. For some
756# reason, if we set the COLLECT_NAMES environment variable, the problems
757# vanish in a puff of smoke.
758if test "X${COLLECT_NAMES+set}" != Xset; then
759 COLLECT_NAMES=
760 export COLLECT_NAMES
761fi
762_LT_EOF
b9668ba4
AK
763 ;;
764 esac
b9668ba4 765
5c706339 766 _LT_PROG_LTMAIN
b9668ba4 767
5c706339
AK
768 # We use sed instead of cat because bash on DJGPP gets confused if
769 # if finds mixed CR/LF and LF-only lines. Since sed operates in
770 # text mode, it properly converts lines to CR/LF. This bash problem
771 # is reportedly fixed, but why not run on old versions too?
059850b5
AK
772 sed '$q' "$ltmain" >> "$cfgfile" \
773 || (rm -f "$cfgfile"; exit 1)
b9668ba4 774
059850b5 775 _LT_PROG_REPLACE_SHELLFNS
b9668ba4 776
059850b5 777 mv -f "$cfgfile" "$ofile" ||
5c706339
AK
778 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
779 chmod +x "$ofile"
780],
781[cat <<_LT_EOF >> "$ofile"
b9668ba4 782
5c706339
AK
783dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
784dnl in a comment (ie after a #).
785# ### BEGIN LIBTOOL TAG CONFIG: $1
786_LT_LIBTOOL_TAG_VARS(_LT_TAG)
787# ### END LIBTOOL TAG CONFIG: $1
788_LT_EOF
789])dnl /m4_if
790],
791[m4_if([$1], [], [
792 PACKAGE='$PACKAGE'
793 VERSION='$VERSION'
794 TIMESTAMP='$TIMESTAMP'
795 RM='$RM'
796 ofile='$ofile'], [])
797])dnl /_LT_CONFIG_SAVE_COMMANDS
798])# _LT_CONFIG
b9668ba4 799
b9668ba4 800
5c706339
AK
801# LT_SUPPORTED_TAG(TAG)
802# ---------------------
803# Trace this macro to discover what tags are supported by the libtool
804# --tag option, using:
805# autoconf --trace 'LT_SUPPORTED_TAG:$1'
806AC_DEFUN([LT_SUPPORTED_TAG], [])
b9668ba4 807
b9668ba4 808
5c706339
AK
809# C support is built-in for now
810m4_define([_LT_LANG_C_enabled], [])
811m4_define([_LT_TAGS], [])
b9668ba4 812
b9668ba4 813
5c706339
AK
814# LT_LANG(LANG)
815# -------------
816# Enable libtool support for the given language if not already enabled.
817AC_DEFUN([LT_LANG],
818[AC_BEFORE([$0], [LT_OUTPUT])dnl
819m4_case([$1],
820 [C], [_LT_LANG(C)],
821 [C++], [_LT_LANG(CXX)],
059850b5 822 [Go], [_LT_LANG(GO)],
5c706339
AK
823 [Java], [_LT_LANG(GCJ)],
824 [Fortran 77], [_LT_LANG(F77)],
825 [Fortran], [_LT_LANG(FC)],
826 [Windows Resource], [_LT_LANG(RC)],
827 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
828 [_LT_LANG($1)],
829 [m4_fatal([$0: unsupported language: "$1"])])])dnl
830])# LT_LANG
831
832
833# _LT_LANG(LANGNAME)
834# ------------------
835m4_defun([_LT_LANG],
836[m4_ifdef([_LT_LANG_]$1[_enabled], [],
837 [LT_SUPPORTED_TAG([$1])dnl
838 m4_append([_LT_TAGS], [$1 ])dnl
839 m4_define([_LT_LANG_]$1[_enabled], [])dnl
840 _LT_LANG_$1_CONFIG($1)])dnl
841])# _LT_LANG
b9668ba4 842
b9668ba4 843
059850b5
AK
844m4_ifndef([AC_PROG_GO], [
845# NOTE: This macro has been submitted for inclusion into #
846# GNU Autoconf as AC_PROG_GO. When it is available in #
847# a released version of Autoconf we should remove this #
848# macro and use it instead. #
849m4_defun([AC_PROG_GO],
850[AC_LANG_PUSH(Go)dnl
851AC_ARG_VAR([GOC], [Go compiler command])dnl
852AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
853_AC_ARG_VAR_LDFLAGS()dnl
854AC_CHECK_TOOL(GOC, gccgo)
855if test -z "$GOC"; then
856 if test -n "$ac_tool_prefix"; then
857 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
858 fi
859fi
860if test -z "$GOC"; then
861 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
862fi
863])#m4_defun
864])#m4_ifndef
865
866
5c706339
AK
867# _LT_LANG_DEFAULT_CONFIG
868# -----------------------
869m4_defun([_LT_LANG_DEFAULT_CONFIG],
870[AC_PROVIDE_IFELSE([AC_PROG_CXX],
871 [LT_LANG(CXX)],
872 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
873
874AC_PROVIDE_IFELSE([AC_PROG_F77],
875 [LT_LANG(F77)],
876 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
877
878AC_PROVIDE_IFELSE([AC_PROG_FC],
879 [LT_LANG(FC)],
880 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
881
882dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
883dnl pulling things in needlessly.
884AC_PROVIDE_IFELSE([AC_PROG_GCJ],
885 [LT_LANG(GCJ)],
886 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
887 [LT_LANG(GCJ)],
888 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
889 [LT_LANG(GCJ)],
890 [m4_ifdef([AC_PROG_GCJ],
891 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
892 m4_ifdef([A][M_PROG_GCJ],
893 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
894 m4_ifdef([LT_PROG_GCJ],
895 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
896
059850b5
AK
897AC_PROVIDE_IFELSE([AC_PROG_GO],
898 [LT_LANG(GO)],
899 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
900
5c706339
AK
901AC_PROVIDE_IFELSE([LT_PROG_RC],
902 [LT_LANG(RC)],
903 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
904])# _LT_LANG_DEFAULT_CONFIG
905
906# Obsolete macros:
907AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
908AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
909AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
910AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
059850b5 911AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
5c706339
AK
912dnl aclocal-1.4 backwards compatibility:
913dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
914dnl AC_DEFUN([AC_LIBTOOL_F77], [])
915dnl AC_DEFUN([AC_LIBTOOL_FC], [])
916dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
059850b5 917dnl AC_DEFUN([AC_LIBTOOL_RC], [])
5c706339
AK
918
919
920# _LT_TAG_COMPILER
921# ----------------
922m4_defun([_LT_TAG_COMPILER],
923[AC_REQUIRE([AC_PROG_CC])dnl
b9668ba4 924
5c706339
AK
925_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
926_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
927_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
928_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
b9668ba4 929
5c706339
AK
930# If no C compiler was specified, use CC.
931LTCC=${LTCC-"$CC"}
b9668ba4 932
5c706339
AK
933# If no C compiler flags were specified, use CFLAGS.
934LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
b9668ba4 935
5c706339
AK
936# Allow CC to be a program name with arguments.
937compiler=$CC
938])# _LT_TAG_COMPILER
b9668ba4 939
b9668ba4 940
5c706339
AK
941# _LT_COMPILER_BOILERPLATE
942# ------------------------
943# Check for compiler boilerplate output or warnings with
944# the simple compiler test code.
945m4_defun([_LT_COMPILER_BOILERPLATE],
946[m4_require([_LT_DECL_SED])dnl
947ac_outfile=conftest.$ac_objext
948echo "$lt_simple_compile_test_code" >conftest.$ac_ext
949eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
950_lt_compiler_boilerplate=`cat conftest.err`
951$RM conftest*
952])# _LT_COMPILER_BOILERPLATE
b9668ba4 953
b9668ba4 954
5c706339
AK
955# _LT_LINKER_BOILERPLATE
956# ----------------------
957# Check for linker boilerplate output or warnings with
958# the simple link test code.
959m4_defun([_LT_LINKER_BOILERPLATE],
960[m4_require([_LT_DECL_SED])dnl
961ac_outfile=conftest.$ac_objext
962echo "$lt_simple_link_test_code" >conftest.$ac_ext
963eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
964_lt_linker_boilerplate=`cat conftest.err`
965$RM -r conftest*
966])# _LT_LINKER_BOILERPLATE
b9668ba4 967
5c706339
AK
968# _LT_REQUIRED_DARWIN_CHECKS
969# -------------------------
970m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
971 case $host_os in
972 rhapsody* | darwin*)
973 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
974 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
975 AC_CHECK_TOOL([LIPO], [lipo], [:])
976 AC_CHECK_TOOL([OTOOL], [otool], [:])
977 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
978 _LT_DECL([], [DSYMUTIL], [1],
979 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
980 _LT_DECL([], [NMEDIT], [1],
981 [Tool to change global to local symbols on Mac OS X])
982 _LT_DECL([], [LIPO], [1],
983 [Tool to manipulate fat objects and archives on Mac OS X])
984 _LT_DECL([], [OTOOL], [1],
985 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
986 _LT_DECL([], [OTOOL64], [1],
987 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
988
989 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
990 [lt_cv_apple_cc_single_mod=no
991 if test -z "${LT_MULTI_MODULE}"; then
992 # By default we will add the -single_module flag. You can override
993 # by either setting the environment variable LT_MULTI_MODULE
994 # non-empty at configure time, or by adding -multi_module to the
995 # link flags.
996 rm -rf libconftest.dylib*
997 echo "int foo(void){return 1;}" > conftest.c
998 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
999-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1000 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1001 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1002 _lt_result=$?
059850b5
AK
1003 # If there is a non-empty error log, and "single_module"
1004 # appears in it, assume the flag caused a linker warning
1005 if test -s conftest.err && $GREP single_module conftest.err; then
1006 cat conftest.err >&AS_MESSAGE_LOG_FD
1007 # Otherwise, if the output was created with a 0 exit code from
1008 # the compiler, it worked.
1009 elif test -f libconftest.dylib && test $_lt_result -eq 0; then
5c706339
AK
1010 lt_cv_apple_cc_single_mod=yes
1011 else
1012 cat conftest.err >&AS_MESSAGE_LOG_FD
1013 fi
1014 rm -rf libconftest.dylib*
1015 rm -f conftest.*
1016 fi])
059850b5 1017
5c706339
AK
1018 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1019 [lt_cv_ld_exported_symbols_list],
1020 [lt_cv_ld_exported_symbols_list=no
1021 save_LDFLAGS=$LDFLAGS
1022 echo "_main" > conftest.sym
1023 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1024 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1025 [lt_cv_ld_exported_symbols_list=yes],
1026 [lt_cv_ld_exported_symbols_list=no])
1027 LDFLAGS="$save_LDFLAGS"
b9668ba4 1028 ])
059850b5
AK
1029
1030 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1031 [lt_cv_ld_force_load=no
1032 cat > conftest.c << _LT_EOF
1033int forced_loaded() { return 2;}
1034_LT_EOF
1035 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1036 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1037 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1038 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1039 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1040 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1041 cat > conftest.c << _LT_EOF
1042int main() { return 0;}
1043_LT_EOF
1044 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1045 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1046 _lt_result=$?
1047 if test -s conftest.err && $GREP force_load conftest.err; then
1048 cat conftest.err >&AS_MESSAGE_LOG_FD
1049 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
1050 lt_cv_ld_force_load=yes
1051 else
1052 cat conftest.err >&AS_MESSAGE_LOG_FD
1053 fi
1054 rm -f conftest.err libconftest.a conftest conftest.c
1055 rm -rf conftest.dSYM
1056 ])
5c706339
AK
1057 case $host_os in
1058 rhapsody* | darwin1.[[012]])
1059 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
1060 darwin1.*)
1061 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
47dc80f6 1062 darwin*) # darwin 5.x on
5c706339
AK
1063 # if running on 10.5 or later, the deployment target defaults
1064 # to the OS version, if on x86, and 10.4, the deployment
47dc80f6 1065 # target defaults to 10.4. Don't you love it?
5c706339
AK
1066 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1067 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1068 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1069 10.[[012]]*)
1070 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1071 10.*)
1072 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1073 esac
b9668ba4
AK
1074 ;;
1075 esac
5c706339
AK
1076 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
1077 _lt_dar_single_mod='$single_module'
1078 fi
1079 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
1080 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
1081 else
1082 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
1083 fi
059850b5 1084 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
5c706339
AK
1085 _lt_dsymutil='~$DSYMUTIL $lib || :'
1086 else
1087 _lt_dsymutil=
1088 fi
1089 ;;
b9668ba4 1090 esac
5c706339 1091])
b9668ba4 1092
b9668ba4 1093
059850b5
AK
1094# _LT_DARWIN_LINKER_FEATURES([TAG])
1095# ---------------------------------
5c706339
AK
1096# Checks for linker and compiler features on darwin
1097m4_defun([_LT_DARWIN_LINKER_FEATURES],
1098[
1099 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1100 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1101 _LT_TAGVAR(hardcode_direct, $1)=no
1102 _LT_TAGVAR(hardcode_automatic, $1)=yes
1103 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
059850b5
AK
1104 if test "$lt_cv_ld_force_load" = "yes"; then
1105 _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
1106 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1107 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1108 else
1109 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1110 fi
5c706339
AK
1111 _LT_TAGVAR(link_all_deplibs, $1)=yes
1112 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
47dc80f6
AK
1113 case $cc_basename in
1114 ifort*) _lt_dar_can_shared=yes ;;
1115 *) _lt_dar_can_shared=$GCC ;;
1116 esac
1117 if test "$_lt_dar_can_shared" = "yes"; then
059850b5 1118 output_verbose_link_cmd=func_echo_all
5c706339
AK
1119 _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}"
1120 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1121 _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}"
1122 _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}"
1123 m4_if([$1], [CXX],
1124[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1125 _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}"
1126 _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}"
1127 fi
1128],[])
1129 else
1130 _LT_TAGVAR(ld_shlibs, $1)=no
1131 fi
1132])
b9668ba4 1133
059850b5
AK
1134# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1135# ----------------------------------
5c706339
AK
1136# Links a minimal program and checks the executable
1137# for the system default hardcoded library path. In most cases,
1138# this is /usr/lib:/lib, but when the MPI compilers are used
1139# the location of the communication and MPI libs are included too.
1140# If we don't find anything, use the default library path according
1141# to the aix ld manual.
059850b5
AK
1142# Store the results from the different compilers for each TAGNAME.
1143# Allow to override them for all tags through lt_cv_aix_libpath.
5c706339
AK
1144m4_defun([_LT_SYS_MODULE_PATH_AIX],
1145[m4_require([_LT_DECL_SED])dnl
059850b5
AK
1146if test "${lt_cv_aix_libpath+set}" = set; then
1147 aix_libpath=$lt_cv_aix_libpath
1148else
1149 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1150 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1151 lt_aix_libpath_sed='[
1152 /Import File Strings/,/^$/ {
1153 /^0/ {
1154 s/^0 *\([^ ]*\) *$/\1/
1155 p
1156 }
1157 }]'
1158 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1159 # Check for a 64-bit object if we didn't find anything.
1160 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1161 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1162 fi],[])
1163 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1164 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1165 fi
1166 ])
1167 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1168fi
5c706339 1169])# _LT_SYS_MODULE_PATH_AIX
b9668ba4 1170
b9668ba4 1171
5c706339
AK
1172# _LT_SHELL_INIT(ARG)
1173# -------------------
1174m4_define([_LT_SHELL_INIT],
059850b5
AK
1175[m4_divert_text([M4SH-INIT], [$1
1176])])# _LT_SHELL_INIT
1177
b9668ba4 1178
b9668ba4 1179
5c706339
AK
1180# _LT_PROG_ECHO_BACKSLASH
1181# -----------------------
059850b5
AK
1182# Find how we can fake an echo command that does not interpret backslash.
1183# In particular, with Autoconf 2.60 or later we add some code to the start
1184# of the generated configure script which will find a shell with a builtin
1185# printf (which we can use as an echo command).
5c706339 1186m4_defun([_LT_PROG_ECHO_BACKSLASH],
059850b5
AK
1187[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1188ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1189ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1190
1191AC_MSG_CHECKING([how to print strings])
1192# Test print first, because it will be a builtin if present.
1193if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1194 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1195 ECHO='print -r --'
1196elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1197 ECHO='printf %s\n'
b9668ba4 1198else
059850b5
AK
1199 # Use this function as a fallback that always works.
1200 func_fallback_echo ()
1201 {
1202 eval 'cat <<_LTECHO_EOF
1203$[]1
1204_LTECHO_EOF'
1205 }
1206 ECHO='func_fallback_echo'
5c706339 1207fi
b9668ba4 1208
059850b5
AK
1209# func_echo_all arg...
1210# Invoke $ECHO with all args, space-separated.
1211func_echo_all ()
1212{
1213 $ECHO "$*"
1214}
b9668ba4 1215
059850b5
AK
1216case "$ECHO" in
1217 printf*) AC_MSG_RESULT([printf]) ;;
1218 print*) AC_MSG_RESULT([print -r]) ;;
1219 *) AC_MSG_RESULT([cat]) ;;
1220esac
b9668ba4 1221
059850b5
AK
1222m4_ifdef([_AS_DETECT_SUGGESTED],
1223[_AS_DETECT_SUGGESTED([
1224 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1225 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1226 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1227 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1228 PATH=/empty FPATH=/empty; export PATH FPATH
1229 test "X`printf %s $ECHO`" = "X$ECHO" \
1230 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
b9668ba4 1231
5c706339 1232_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
059850b5 1233_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
5c706339 1234])# _LT_PROG_ECHO_BACKSLASH
b9668ba4 1235
b9668ba4 1236
059850b5
AK
1237# _LT_WITH_SYSROOT
1238# ----------------
1239AC_DEFUN([_LT_WITH_SYSROOT],
1240[AC_MSG_CHECKING([for sysroot])
1241AC_ARG_WITH([sysroot],
1242[ --with-sysroot[=DIR] Search for dependent libraries within DIR
1243 (or the compiler's sysroot if not specified).],
1244[], [with_sysroot=no])
1245
1246dnl lt_sysroot will always be passed unquoted. We quote it here
1247dnl in case the user passed a directory name.
1248lt_sysroot=
1249case ${with_sysroot} in #(
1250 yes)
1251 if test "$GCC" = yes; then
1252 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1253 fi
1254 ;; #(
1255 /*)
1256 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1257 ;; #(
1258 no|'')
1259 ;; #(
1260 *)
1261 AC_MSG_RESULT([${with_sysroot}])
1262 AC_MSG_ERROR([The sysroot must be an absolute path.])
1263 ;;
1264esac
1265
1266 AC_MSG_RESULT([${lt_sysroot:-no}])
1267_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1268[dependent libraries, and in which our libraries should be installed.])])
1269
5c706339
AK
1270# _LT_ENABLE_LOCK
1271# ---------------
1272m4_defun([_LT_ENABLE_LOCK],
1273[AC_ARG_ENABLE([libtool-lock],
1274 [AS_HELP_STRING([--disable-libtool-lock],
1275 [avoid locking (might break parallel builds)])])
1276test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1277
1278# Some flags need to be propagated to the compiler or linker for good
1279# libtool support.
1280case $host in
1281ia64-*-hpux*)
1282 # Find out which ABI we are using.
1283 echo 'int i;' > conftest.$ac_ext
1284 if AC_TRY_EVAL(ac_compile); then
1285 case `/usr/bin/file conftest.$ac_objext` in
1286 *ELF-32*)
1287 HPUX_IA64_MODE="32"
1288 ;;
1289 *ELF-64*)
1290 HPUX_IA64_MODE="64"
1291 ;;
b9668ba4 1292 esac
5c706339
AK
1293 fi
1294 rm -rf conftest*
1295 ;;
1296*-*-irix6*)
1297 # Find out which ABI we are using.
059850b5 1298 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
5c706339
AK
1299 if AC_TRY_EVAL(ac_compile); then
1300 if test "$lt_cv_prog_gnu_ld" = yes; then
1301 case `/usr/bin/file conftest.$ac_objext` in
1302 *32-bit*)
1303 LD="${LD-ld} -melf32bsmip"
1304 ;;
1305 *N32*)
1306 LD="${LD-ld} -melf32bmipn32"
1307 ;;
1308 *64-bit*)
1309 LD="${LD-ld} -melf64bmip"
1310 ;;
1311 esac
b9668ba4 1312 else
5c706339
AK
1313 case `/usr/bin/file conftest.$ac_objext` in
1314 *32-bit*)
1315 LD="${LD-ld} -32"
1316 ;;
1317 *N32*)
1318 LD="${LD-ld} -n32"
1319 ;;
1320 *64-bit*)
1321 LD="${LD-ld} -64"
1322 ;;
1323 esac
b9668ba4 1324 fi
b9668ba4 1325 fi
5c706339 1326 rm -rf conftest*
b9668ba4
AK
1327 ;;
1328
5c706339
AK
1329x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1330s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1331 # Find out which ABI we are using.
1332 echo 'int i;' > conftest.$ac_ext
1333 if AC_TRY_EVAL(ac_compile); then
1334 case `/usr/bin/file conftest.o` in
1335 *32-bit*)
1336 case $host in
1337 x86_64-*kfreebsd*-gnu)
1338 LD="${LD-ld} -m elf_i386_fbsd"
1339 ;;
1340 x86_64-*linux*)
1341 LD="${LD-ld} -m elf_i386"
1342 ;;
1343 ppc64-*linux*|powerpc64-*linux*)
1344 LD="${LD-ld} -m elf32ppclinux"
1345 ;;
1346 s390x-*linux*)
1347 LD="${LD-ld} -m elf_s390"
1348 ;;
1349 sparc64-*linux*)
1350 LD="${LD-ld} -m elf32_sparc"
1351 ;;
1352 esac
1353 ;;
1354 *64-bit*)
1355 case $host in
1356 x86_64-*kfreebsd*-gnu)
1357 LD="${LD-ld} -m elf_x86_64_fbsd"
1358 ;;
1359 x86_64-*linux*)
1360 LD="${LD-ld} -m elf_x86_64"
1361 ;;
1362 ppc*-*linux*|powerpc*-*linux*)
1363 LD="${LD-ld} -m elf64ppc"
1364 ;;
1365 s390*-*linux*|s390*-*tpf*)
1366 LD="${LD-ld} -m elf64_s390"
1367 ;;
1368 sparc*-*linux*)
1369 LD="${LD-ld} -m elf64_sparc"
1370 ;;
1371 esac
1372 ;;
1373 esac
1374 fi
1375 rm -rf conftest*
b9668ba4
AK
1376 ;;
1377
5c706339
AK
1378*-*-sco3.2v5*)
1379 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1380 SAVE_CFLAGS="$CFLAGS"
1381 CFLAGS="$CFLAGS -belf"
1382 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1383 [AC_LANG_PUSH(C)
1384 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1385 AC_LANG_POP])
1386 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1387 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1388 CFLAGS="$SAVE_CFLAGS"
1389 fi
b9668ba4 1390 ;;
059850b5 1391*-*solaris*)
5c706339
AK
1392 # Find out which ABI we are using.
1393 echo 'int i;' > conftest.$ac_ext
1394 if AC_TRY_EVAL(ac_compile); then
1395 case `/usr/bin/file conftest.o` in
1396 *64-bit*)
1397 case $lt_cv_prog_gnu_ld in
059850b5
AK
1398 yes*)
1399 case $host in
1400 i?86-*-solaris*)
1401 LD="${LD-ld} -m elf_x86_64"
1402 ;;
1403 sparc*-*-solaris*)
1404 LD="${LD-ld} -m elf64_sparc"
1405 ;;
1406 esac
1407 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1408 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1409 LD="${LD-ld}_sol2"
1410 fi
1411 ;;
5c706339
AK
1412 *)
1413 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1414 LD="${LD-ld} -64"
1415 fi
1416 ;;
1417 esac
1418 ;;
1419 esac
1420 fi
1421 rm -rf conftest*
b9668ba4 1422 ;;
5c706339 1423esac
b9668ba4 1424
5c706339
AK
1425need_locks="$enable_libtool_lock"
1426])# _LT_ENABLE_LOCK
1427
1428
059850b5
AK
1429# _LT_PROG_AR
1430# -----------
1431m4_defun([_LT_PROG_AR],
1432[AC_CHECK_TOOLS(AR, [ar], false)
1433: ${AR=ar}
1434: ${AR_FLAGS=cru}
1435_LT_DECL([], [AR], [1], [The archiver])
1436_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1437
1438AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1439 [lt_cv_ar_at_file=no
1440 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1441 [echo conftest.$ac_objext > conftest.lst
1442 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1443 AC_TRY_EVAL([lt_ar_try])
1444 if test "$ac_status" -eq 0; then
1445 # Ensure the archiver fails upon bogus file names.
1446 rm -f conftest.$ac_objext libconftest.a
1447 AC_TRY_EVAL([lt_ar_try])
1448 if test "$ac_status" -ne 0; then
1449 lt_cv_ar_at_file=@
1450 fi
1451 fi
1452 rm -f conftest.* libconftest.a
1453 ])
1454 ])
1455
1456if test "x$lt_cv_ar_at_file" = xno; then
1457 archiver_list_spec=
1458else
1459 archiver_list_spec=$lt_cv_ar_at_file
1460fi
1461_LT_DECL([], [archiver_list_spec], [1],
1462 [How to feed a file listing to the archiver])
1463])# _LT_PROG_AR
1464
1465
5c706339
AK
1466# _LT_CMD_OLD_ARCHIVE
1467# -------------------
1468m4_defun([_LT_CMD_OLD_ARCHIVE],
059850b5 1469[_LT_PROG_AR
5c706339
AK
1470
1471AC_CHECK_TOOL(STRIP, strip, :)
1472test -z "$STRIP" && STRIP=:
1473_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1474
1475AC_CHECK_TOOL(RANLIB, ranlib, :)
1476test -z "$RANLIB" && RANLIB=:
1477_LT_DECL([], [RANLIB], [1],
1478 [Commands used to install an old-style archive])
1479
1480# Determine commands to create old-style static archives.
1481old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1482old_postinstall_cmds='chmod 644 $oldlib'
1483old_postuninstall_cmds=
1484
1485if test -n "$RANLIB"; then
1486 case $host_os in
1487 openbsd*)
059850b5 1488 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
5c706339
AK
1489 ;;
1490 *)
059850b5 1491 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
5c706339
AK
1492 ;;
1493 esac
059850b5 1494 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
5c706339 1495fi
059850b5
AK
1496
1497case $host_os in
1498 darwin*)
1499 lock_old_archive_extraction=yes ;;
1500 *)
1501 lock_old_archive_extraction=no ;;
1502esac
5c706339
AK
1503_LT_DECL([], [old_postinstall_cmds], [2])
1504_LT_DECL([], [old_postuninstall_cmds], [2])
1505_LT_TAGDECL([], [old_archive_cmds], [2],
1506 [Commands used to build an old-style archive])
059850b5
AK
1507_LT_DECL([], [lock_old_archive_extraction], [0],
1508 [Whether to use a lock for old archive extraction])
5c706339
AK
1509])# _LT_CMD_OLD_ARCHIVE
1510
1511
1512# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1513# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1514# ----------------------------------------------------------------
1515# Check whether the given compiler option works
1516AC_DEFUN([_LT_COMPILER_OPTION],
1517[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1518m4_require([_LT_DECL_SED])dnl
1519AC_CACHE_CHECK([$1], [$2],
1520 [$2=no
1521 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1522 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1523 lt_compiler_flag="$3"
1524 # Insert the option either (1) after the last *FLAGS variable, or
1525 # (2) before a word containing "conftest.", or (3) at the end.
1526 # Note that $ac_compile itself does not contain backslashes and begins
1527 # with a dollar sign (not a hyphen), so the echo should work correctly.
1528 # The option is referenced via a variable to avoid confusing sed.
1529 lt_compile=`echo "$ac_compile" | $SED \
1530 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1531 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1532 -e 's:$: $lt_compiler_flag:'`
059850b5 1533 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
1534 (eval "$lt_compile" 2>conftest.err)
1535 ac_status=$?
1536 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 1537 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
5c706339
AK
1538 if (exit $ac_status) && test -s "$ac_outfile"; then
1539 # The compiler can only warn and ignore the option if not recognized
1540 # So say no if there are warnings other than the usual output.
059850b5 1541 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
5c706339
AK
1542 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1543 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1544 $2=yes
1545 fi
1546 fi
1547 $RM conftest*
1548])
1549
1550if test x"[$]$2" = xyes; then
1551 m4_if([$5], , :, [$5])
1552else
1553 m4_if([$6], , :, [$6])
1554fi
1555])# _LT_COMPILER_OPTION
1556
1557# Old name:
1558AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1559dnl aclocal-1.4 backwards compatibility:
1560dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1561
1562
1563# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1564# [ACTION-SUCCESS], [ACTION-FAILURE])
1565# ----------------------------------------------------
1566# Check whether the given linker option works
1567AC_DEFUN([_LT_LINKER_OPTION],
1568[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1569m4_require([_LT_DECL_SED])dnl
1570AC_CACHE_CHECK([$1], [$2],
1571 [$2=no
1572 save_LDFLAGS="$LDFLAGS"
1573 LDFLAGS="$LDFLAGS $3"
1574 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1575 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1576 # The linker can only warn and ignore the option if not recognized
1577 # So say no if there are warnings
1578 if test -s conftest.err; then
1579 # Append any errors to the config.log.
1580 cat conftest.err 1>&AS_MESSAGE_LOG_FD
059850b5 1581 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
5c706339
AK
1582 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1583 if diff conftest.exp conftest.er2 >/dev/null; then
1584 $2=yes
1585 fi
1586 else
1587 $2=yes
1588 fi
1589 fi
1590 $RM -r conftest*
1591 LDFLAGS="$save_LDFLAGS"
1592])
1593
1594if test x"[$]$2" = xyes; then
1595 m4_if([$4], , :, [$4])
1596else
1597 m4_if([$5], , :, [$5])
1598fi
1599])# _LT_LINKER_OPTION
1600
1601# Old name:
1602AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1603dnl aclocal-1.4 backwards compatibility:
1604dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1605
1606
1607# LT_CMD_MAX_LEN
1608#---------------
1609AC_DEFUN([LT_CMD_MAX_LEN],
1610[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1611# find the maximum length of command line arguments
1612AC_MSG_CHECKING([the maximum length of command line arguments])
1613AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1614 i=0
1615 teststring="ABCD"
1616
1617 case $build_os in
1618 msdosdjgpp*)
1619 # On DJGPP, this test can blow up pretty badly due to problems in libc
1620 # (any single argument exceeding 2000 bytes causes a buffer overrun
1621 # during glob expansion). Even if it were fixed, the result of this
1622 # check would be larger than it should be.
1623 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1624 ;;
1625
1626 gnu*)
1627 # Under GNU Hurd, this test is not required because there is
1628 # no limit to the length of command line arguments.
1629 # Libtool will interpret -1 as no limit whatsoever
1630 lt_cv_sys_max_cmd_len=-1;
1631 ;;
1632
47dc80f6 1633 cygwin* | mingw* | cegcc*)
5c706339
AK
1634 # On Win9x/ME, this test blows up -- it succeeds, but takes
1635 # about 5 minutes as the teststring grows exponentially.
1636 # Worse, since 9x/ME are not pre-emptively multitasking,
1637 # you end up with a "frozen" computer, even though with patience
1638 # the test eventually succeeds (with a max line length of 256k).
1639 # Instead, let's just punt: use the minimum linelength reported by
1640 # all of the supported platforms: 8192 (on NT/2K/XP).
1641 lt_cv_sys_max_cmd_len=8192;
1642 ;;
1643
059850b5
AK
1644 mint*)
1645 # On MiNT this can take a long time and run out of memory.
1646 lt_cv_sys_max_cmd_len=8192;
1647 ;;
1648
5c706339
AK
1649 amigaos*)
1650 # On AmigaOS with pdksh, this test takes hours, literally.
1651 # So we just punt and use a minimum line length of 8192.
1652 lt_cv_sys_max_cmd_len=8192;
1653 ;;
1654
1655 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1656 # This has been around since 386BSD, at least. Likely further.
1657 if test -x /sbin/sysctl; then
1658 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1659 elif test -x /usr/sbin/sysctl; then
1660 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1661 else
1662 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1663 fi
1664 # And add a safety zone
1665 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1666 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1667 ;;
1668
1669 interix*)
1670 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1671 lt_cv_sys_max_cmd_len=196608
1672 ;;
1673
059850b5
AK
1674 os2*)
1675 # The test takes a long time on OS/2.
1676 lt_cv_sys_max_cmd_len=8192
1677 ;;
1678
5c706339
AK
1679 osf*)
1680 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1681 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1682 # nice to cause kernel panics so lets avoid the loop below.
1683 # First set a reasonable default.
1684 lt_cv_sys_max_cmd_len=16384
1685 #
1686 if test -x /sbin/sysconfig; then
1687 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1688 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1689 esac
1690 fi
1691 ;;
1692 sco3.2v5*)
1693 lt_cv_sys_max_cmd_len=102400
1694 ;;
1695 sysv5* | sco5v6* | sysv4.2uw2*)
1696 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1697 if test -n "$kargmax"; then
1698 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1699 else
1700 lt_cv_sys_max_cmd_len=32768
1701 fi
1702 ;;
1703 *)
1704 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1705 if test -n "$lt_cv_sys_max_cmd_len"; then
1706 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1707 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1708 else
1709 # Make teststring a little bigger before we do anything with it.
1710 # a 1K string should be a reasonable start.
1711 for i in 1 2 3 4 5 6 7 8 ; do
1712 teststring=$teststring$teststring
1713 done
1714 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1715 # If test is not a shell built-in, we'll probably end up computing a
1716 # maximum length that is only half of the actual maximum length, but
1717 # we can't tell.
059850b5
AK
1718 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
1719 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
5c706339
AK
1720 test $i != 17 # 1/2 MB should be enough
1721 do
1722 i=`expr $i + 1`
1723 teststring=$teststring$teststring
1724 done
1725 # Only check the string length outside the loop.
1726 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1727 teststring=
1728 # Add a significant safety factor because C++ compilers can tack on
1729 # massive amounts of additional arguments before passing them to the
1730 # linker. It appears as though 1/2 is a usable value.
1731 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1732 fi
1733 ;;
1734 esac
1735])
1736if test -n $lt_cv_sys_max_cmd_len ; then
1737 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1738else
1739 AC_MSG_RESULT(none)
1740fi
1741max_cmd_len=$lt_cv_sys_max_cmd_len
1742_LT_DECL([], [max_cmd_len], [0],
1743 [What is the maximum length of a command?])
1744])# LT_CMD_MAX_LEN
1745
1746# Old name:
1747AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1748dnl aclocal-1.4 backwards compatibility:
1749dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1750
1751
1752# _LT_HEADER_DLFCN
1753# ----------------
1754m4_defun([_LT_HEADER_DLFCN],
1755[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1756])# _LT_HEADER_DLFCN
1757
1758
1759# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1760# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1761# ----------------------------------------------------------------
1762m4_defun([_LT_TRY_DLOPEN_SELF],
1763[m4_require([_LT_HEADER_DLFCN])dnl
1764if test "$cross_compiling" = yes; then :
1765 [$4]
1766else
1767 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1768 lt_status=$lt_dlunknown
1769 cat > conftest.$ac_ext <<_LT_EOF
059850b5 1770[#line $LINENO "configure"
5c706339
AK
1771#include "confdefs.h"
1772
1773#if HAVE_DLFCN_H
1774#include <dlfcn.h>
1775#endif
1776
1777#include <stdio.h>
1778
1779#ifdef RTLD_GLOBAL
1780# define LT_DLGLOBAL RTLD_GLOBAL
1781#else
1782# ifdef DL_GLOBAL
1783# define LT_DLGLOBAL DL_GLOBAL
1784# else
1785# define LT_DLGLOBAL 0
1786# endif
1787#endif
1788
1789/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1790 find out it does not work in some platform. */
1791#ifndef LT_DLLAZY_OR_NOW
1792# ifdef RTLD_LAZY
1793# define LT_DLLAZY_OR_NOW RTLD_LAZY
1794# else
1795# ifdef DL_LAZY
1796# define LT_DLLAZY_OR_NOW DL_LAZY
1797# else
1798# ifdef RTLD_NOW
1799# define LT_DLLAZY_OR_NOW RTLD_NOW
1800# else
1801# ifdef DL_NOW
1802# define LT_DLLAZY_OR_NOW DL_NOW
1803# else
1804# define LT_DLLAZY_OR_NOW 0
1805# endif
1806# endif
1807# endif
1808# endif
1809#endif
1810
059850b5
AK
1811/* When -fvisbility=hidden is used, assume the code has been annotated
1812 correspondingly for the symbols needed. */
1813#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1814int fnord () __attribute__((visibility("default")));
1815#endif
1816
1817int fnord () { return 42; }
5c706339
AK
1818int main ()
1819{
1820 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1821 int status = $lt_dlunknown;
1822
1823 if (self)
1824 {
1825 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
059850b5
AK
1826 else
1827 {
1828 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1829 else puts (dlerror ());
1830 }
5c706339
AK
1831 /* dlclose (self); */
1832 }
1833 else
1834 puts (dlerror ());
1835
47dc80f6 1836 return status;
5c706339
AK
1837}]
1838_LT_EOF
1839 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1840 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1841 lt_status=$?
1842 case x$lt_status in
1843 x$lt_dlno_uscore) $1 ;;
1844 x$lt_dlneed_uscore) $2 ;;
1845 x$lt_dlunknown|x*) $3 ;;
1846 esac
1847 else :
1848 # compilation failed
1849 $3
1850 fi
1851fi
1852rm -fr conftest*
1853])# _LT_TRY_DLOPEN_SELF
1854
1855
1856# LT_SYS_DLOPEN_SELF
1857# ------------------
1858AC_DEFUN([LT_SYS_DLOPEN_SELF],
1859[m4_require([_LT_HEADER_DLFCN])dnl
1860if test "x$enable_dlopen" != xyes; then
1861 enable_dlopen=unknown
1862 enable_dlopen_self=unknown
1863 enable_dlopen_self_static=unknown
1864else
1865 lt_cv_dlopen=no
1866 lt_cv_dlopen_libs=
1867
1868 case $host_os in
1869 beos*)
1870 lt_cv_dlopen="load_add_on"
1871 lt_cv_dlopen_libs=
1872 lt_cv_dlopen_self=yes
1873 ;;
1874
47dc80f6 1875 mingw* | pw32* | cegcc*)
5c706339
AK
1876 lt_cv_dlopen="LoadLibrary"
1877 lt_cv_dlopen_libs=
1878 ;;
1879
1880 cygwin*)
1881 lt_cv_dlopen="dlopen"
1882 lt_cv_dlopen_libs=
1883 ;;
1884
1885 darwin*)
1886 # if libdl is installed we need to link against it
1887 AC_CHECK_LIB([dl], [dlopen],
1888 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1889 lt_cv_dlopen="dyld"
1890 lt_cv_dlopen_libs=
1891 lt_cv_dlopen_self=yes
1892 ])
1893 ;;
1894
1895 *)
1896 AC_CHECK_FUNC([shl_load],
1897 [lt_cv_dlopen="shl_load"],
1898 [AC_CHECK_LIB([dld], [shl_load],
1899 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1900 [AC_CHECK_FUNC([dlopen],
1901 [lt_cv_dlopen="dlopen"],
1902 [AC_CHECK_LIB([dl], [dlopen],
1903 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1904 [AC_CHECK_LIB([svld], [dlopen],
1905 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1906 [AC_CHECK_LIB([dld], [dld_link],
1907 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1908 ])
1909 ])
1910 ])
1911 ])
1912 ])
1913 ;;
1914 esac
1915
1916 if test "x$lt_cv_dlopen" != xno; then
1917 enable_dlopen=yes
1918 else
1919 enable_dlopen=no
1920 fi
1921
1922 case $lt_cv_dlopen in
1923 dlopen)
1924 save_CPPFLAGS="$CPPFLAGS"
1925 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1926
1927 save_LDFLAGS="$LDFLAGS"
1928 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1929
1930 save_LIBS="$LIBS"
1931 LIBS="$lt_cv_dlopen_libs $LIBS"
1932
1933 AC_CACHE_CHECK([whether a program can dlopen itself],
1934 lt_cv_dlopen_self, [dnl
1935 _LT_TRY_DLOPEN_SELF(
1936 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1937 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1938 ])
1939
1940 if test "x$lt_cv_dlopen_self" = xyes; then
1941 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1942 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1943 lt_cv_dlopen_self_static, [dnl
1944 _LT_TRY_DLOPEN_SELF(
1945 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1946 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1947 ])
1948 fi
1949
1950 CPPFLAGS="$save_CPPFLAGS"
1951 LDFLAGS="$save_LDFLAGS"
1952 LIBS="$save_LIBS"
1953 ;;
1954 esac
1955
1956 case $lt_cv_dlopen_self in
1957 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1958 *) enable_dlopen_self=unknown ;;
1959 esac
1960
1961 case $lt_cv_dlopen_self_static in
1962 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1963 *) enable_dlopen_self_static=unknown ;;
1964 esac
1965fi
1966_LT_DECL([dlopen_support], [enable_dlopen], [0],
1967 [Whether dlopen is supported])
1968_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1969 [Whether dlopen of programs is supported])
1970_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1971 [Whether dlopen of statically linked programs is supported])
1972])# LT_SYS_DLOPEN_SELF
1973
1974# Old name:
1975AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1976dnl aclocal-1.4 backwards compatibility:
1977dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
1978
1979
1980# _LT_COMPILER_C_O([TAGNAME])
1981# ---------------------------
1982# Check to see if options -c and -o are simultaneously supported by compiler.
1983# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1984m4_defun([_LT_COMPILER_C_O],
1985[m4_require([_LT_DECL_SED])dnl
1986m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1987m4_require([_LT_TAG_COMPILER])dnl
1988AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1989 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1990 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1991 $RM -r conftest 2>/dev/null
1992 mkdir conftest
1993 cd conftest
1994 mkdir out
1995 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1996
1997 lt_compiler_flag="-o out/conftest2.$ac_objext"
1998 # Insert the option either (1) after the last *FLAGS variable, or
1999 # (2) before a word containing "conftest.", or (3) at the end.
2000 # Note that $ac_compile itself does not contain backslashes and begins
2001 # with a dollar sign (not a hyphen), so the echo should work correctly.
2002 lt_compile=`echo "$ac_compile" | $SED \
2003 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2004 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2005 -e 's:$: $lt_compiler_flag:'`
059850b5 2006 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
2007 (eval "$lt_compile" 2>out/conftest.err)
2008 ac_status=$?
2009 cat out/conftest.err >&AS_MESSAGE_LOG_FD
059850b5 2010 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
5c706339
AK
2011 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2012 then
2013 # The compiler can only warn and ignore the option if not recognized
2014 # So say no if there are warnings
059850b5 2015 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
5c706339
AK
2016 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2017 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2018 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2019 fi
2020 fi
2021 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2022 $RM conftest*
2023 # SGI C++ compiler will create directory out/ii_files/ for
2024 # template instantiation
2025 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2026 $RM out/* && rmdir out
2027 cd ..
2028 $RM -r conftest
2029 $RM conftest*
2030])
2031_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2032 [Does compiler simultaneously support -c and -o options?])
2033])# _LT_COMPILER_C_O
2034
2035
2036# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2037# ----------------------------------
2038# Check to see if we can do hard links to lock some files if needed
2039m4_defun([_LT_COMPILER_FILE_LOCKS],
2040[m4_require([_LT_ENABLE_LOCK])dnl
2041m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2042_LT_COMPILER_C_O([$1])
2043
2044hard_links="nottested"
2045if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
2046 # do not overwrite the value of need_locks provided by the user
2047 AC_MSG_CHECKING([if we can lock with hard links])
2048 hard_links=yes
2049 $RM conftest*
2050 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2051 touch conftest.a
2052 ln conftest.a conftest.b 2>&5 || hard_links=no
2053 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2054 AC_MSG_RESULT([$hard_links])
2055 if test "$hard_links" = no; then
2056 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
2057 need_locks=warn
2058 fi
2059else
2060 need_locks=no
2061fi
2062_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2063])# _LT_COMPILER_FILE_LOCKS
2064
2065
2066# _LT_CHECK_OBJDIR
2067# ----------------
2068m4_defun([_LT_CHECK_OBJDIR],
2069[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2070[rm -f .libs 2>/dev/null
2071mkdir .libs 2>/dev/null
2072if test -d .libs; then
2073 lt_cv_objdir=.libs
2074else
2075 # MS-DOS does not allow filenames that begin with a dot.
2076 lt_cv_objdir=_libs
2077fi
2078rmdir .libs 2>/dev/null])
2079objdir=$lt_cv_objdir
2080_LT_DECL([], [objdir], [0],
2081 [The name of the directory that contains temporary libtool files])dnl
2082m4_pattern_allow([LT_OBJDIR])dnl
2083AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2084 [Define to the sub-directory in which libtool stores uninstalled libraries.])
2085])# _LT_CHECK_OBJDIR
2086
2087
2088# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2089# --------------------------------------
2090# Check hardcoding attributes.
2091m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2092[AC_MSG_CHECKING([how to hardcode library paths into programs])
2093_LT_TAGVAR(hardcode_action, $1)=
2094if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2095 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2096 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
2097
2098 # We can hardcode non-existent directories.
2099 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
2100 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2101 # have to relink, otherwise we might link with an installed library
2102 # when we should be linking with a yet-to-be-installed one
2103 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2104 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
2105 # Linking always hardcodes the temporary library directory.
2106 _LT_TAGVAR(hardcode_action, $1)=relink
2107 else
2108 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2109 _LT_TAGVAR(hardcode_action, $1)=immediate
2110 fi
2111else
2112 # We cannot hardcode anything, or else we can only hardcode existing
2113 # directories.
2114 _LT_TAGVAR(hardcode_action, $1)=unsupported
2115fi
2116AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2117
2118if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2119 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
2120 # Fast installation is not supported
2121 enable_fast_install=no
2122elif test "$shlibpath_overrides_runpath" = yes ||
2123 test "$enable_shared" = no; then
2124 # Fast installation is not necessary
2125 enable_fast_install=needless
2126fi
2127_LT_TAGDECL([], [hardcode_action], [0],
2128 [How to hardcode a shared library path into an executable])
2129])# _LT_LINKER_HARDCODE_LIBPATH
2130
2131
2132# _LT_CMD_STRIPLIB
2133# ----------------
2134m4_defun([_LT_CMD_STRIPLIB],
2135[m4_require([_LT_DECL_EGREP])
2136striplib=
2137old_striplib=
2138AC_MSG_CHECKING([whether stripping libraries is possible])
2139if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2140 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2141 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2142 AC_MSG_RESULT([yes])
2143else
2144# FIXME - insert some real tests, host_os isn't really good enough
2145 case $host_os in
2146 darwin*)
2147 if test -n "$STRIP" ; then
2148 striplib="$STRIP -x"
2149 old_striplib="$STRIP -S"
2150 AC_MSG_RESULT([yes])
2151 else
2152 AC_MSG_RESULT([no])
2153 fi
2154 ;;
2155 *)
2156 AC_MSG_RESULT([no])
2157 ;;
2158 esac
2159fi
2160_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2161_LT_DECL([], [striplib], [1])
2162])# _LT_CMD_STRIPLIB
2163
2164
2165# _LT_SYS_DYNAMIC_LINKER([TAG])
2166# -----------------------------
2167# PORTME Fill in your ld.so characteristics
2168m4_defun([_LT_SYS_DYNAMIC_LINKER],
2169[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2170m4_require([_LT_DECL_EGREP])dnl
2171m4_require([_LT_FILEUTILS_DEFAULTS])dnl
47dc80f6 2172m4_require([_LT_DECL_OBJDUMP])dnl
5c706339 2173m4_require([_LT_DECL_SED])dnl
059850b5 2174m4_require([_LT_CHECK_SHELL_FEATURES])dnl
5c706339
AK
2175AC_MSG_CHECKING([dynamic linker characteristics])
2176m4_if([$1],
2177 [], [
2178if test "$GCC" = yes; then
2179 case $host_os in
2180 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2181 *) lt_awk_arg="/^libraries:/" ;;
2182 esac
059850b5
AK
2183 case $host_os in
2184 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2185 *) lt_sed_strip_eq="s,=/,/,g" ;;
2186 esac
2187 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2188 case $lt_search_path_spec in
2189 *\;*)
5c706339
AK
2190 # if the path contains ";" then we assume it to be the separator
2191 # otherwise default to the standard path separator (i.e. ":") - it is
2192 # assumed that no part of a normal pathname contains ";" but that should
2193 # okay in the real world where ";" in dirpaths is itself problematic.
059850b5
AK
2194 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2195 ;;
2196 *)
2197 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2198 ;;
2199 esac
5c706339
AK
2200 # Ok, now we have the path, separated by spaces, we can step through it
2201 # and add multilib dir if necessary.
2202 lt_tmp_lt_search_path_spec=
2203 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2204 for lt_sys_path in $lt_search_path_spec; do
2205 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2206 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2207 else
2208 test -d "$lt_sys_path" && \
2209 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2210 fi
2211 done
059850b5 2212 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
5c706339
AK
2213BEGIN {RS=" "; FS="/|\n";} {
2214 lt_foo="";
2215 lt_count=0;
2216 for (lt_i = NF; lt_i > 0; lt_i--) {
2217 if ($lt_i != "" && $lt_i != ".") {
2218 if ($lt_i == "..") {
2219 lt_count++;
2220 } else {
2221 if (lt_count == 0) {
2222 lt_foo="/" $lt_i lt_foo;
2223 } else {
2224 lt_count--;
2225 }
2226 }
2227 }
2228 }
2229 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2230 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2231}'`
059850b5
AK
2232 # AWK program above erroneously prepends '/' to C:/dos/paths
2233 # for these hosts.
2234 case $host_os in
2235 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2236 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2237 esac
2238 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
5c706339
AK
2239else
2240 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2241fi])
2242library_names_spec=
2243libname_spec='lib$name'
2244soname_spec=
2245shrext_cmds=".so"
2246postinstall_cmds=
2247postuninstall_cmds=
2248finish_cmds=
2249finish_eval=
2250shlibpath_var=
2251shlibpath_overrides_runpath=unknown
2252version_type=none
2253dynamic_linker="$host_os ld.so"
2254sys_lib_dlsearch_path_spec="/lib /usr/lib"
2255need_lib_prefix=unknown
2256hardcode_into_libs=no
2257
2258# when you set need_version to no, make sure it does not cause -set_version
2259# flags to be left without arguments
2260need_version=unknown
2261
2262case $host_os in
2263aix3*)
059850b5 2264 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2265 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2266 shlibpath_var=LIBPATH
2267
2268 # AIX 3 has no versioning support, so we append a major version to the name.
2269 soname_spec='${libname}${release}${shared_ext}$major'
2270 ;;
2271
2272aix[[4-9]]*)
059850b5 2273 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2274 need_lib_prefix=no
2275 need_version=no
2276 hardcode_into_libs=yes
2277 if test "$host_cpu" = ia64; then
2278 # AIX 5 supports IA64
2279 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2280 shlibpath_var=LD_LIBRARY_PATH
2281 else
2282 # With GCC up to 2.95.x, collect2 would create an import file
2283 # for dependence libraries. The import file would start with
2284 # the line `#! .'. This would cause the generated library to
2285 # depend on `.', always an invalid library. This was fixed in
2286 # development snapshots of GCC prior to 3.0.
2287 case $host_os in
2288 aix4 | aix4.[[01]] | aix4.[[01]].*)
2289 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2290 echo ' yes '
2291 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
2292 :
2293 else
2294 can_build_shared=no
2295 fi
2296 ;;
2297 esac
2298 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2299 # soname into executable. Probably we can add versioning support to
2300 # collect2, so additional links can be useful in future.
2301 if test "$aix_use_runtimelinking" = yes; then
2302 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2303 # instead of lib<name>.a to let people know that these are not
2304 # typical AIX shared libraries.
2305 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2306 else
2307 # We preserve .a as extension for shared libraries through AIX4.2
2308 # and later when we are not doing run time linking.
2309 library_names_spec='${libname}${release}.a $libname.a'
2310 soname_spec='${libname}${release}${shared_ext}$major'
2311 fi
2312 shlibpath_var=LIBPATH
2313 fi
2314 ;;
2315
2316amigaos*)
2317 case $host_cpu in
2318 powerpc)
2319 # Since July 2007 AmigaOS4 officially supports .so libraries.
2320 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2321 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2322 ;;
2323 m68k)
2324 library_names_spec='$libname.ixlibrary $libname.a'
2325 # Create ${libname}_ixlibrary.a entries in /sys/libs.
059850b5 2326 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
5c706339
AK
2327 ;;
2328 esac
2329 ;;
2330
2331beos*)
2332 library_names_spec='${libname}${shared_ext}'
2333 dynamic_linker="$host_os ld.so"
2334 shlibpath_var=LIBRARY_PATH
2335 ;;
2336
2337bsdi[[45]]*)
059850b5 2338 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2339 need_version=no
2340 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2341 soname_spec='${libname}${release}${shared_ext}$major'
2342 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2343 shlibpath_var=LD_LIBRARY_PATH
2344 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2345 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2346 # the default ld.so.conf also contains /usr/contrib/lib and
2347 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2348 # libtool to hard-code these into programs
2349 ;;
2350
47dc80f6 2351cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
2352 version_type=windows
2353 shrext_cmds=".dll"
2354 need_version=no
b9668ba4
AK
2355 need_lib_prefix=no
2356
059850b5
AK
2357 case $GCC,$cc_basename in
2358 yes,*)
2359 # gcc
b9668ba4
AK
2360 library_names_spec='$libname.dll.a'
2361 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2362 postinstall_cmds='base_file=`basename \${file}`~
5c706339 2363 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
b9668ba4
AK
2364 dldir=$destdir/`dirname \$dlpath`~
2365 test -d \$dldir || mkdir -p \$dldir~
2366 $install_prog $dir/$dlname \$dldir/$dlname~
5c706339
AK
2367 chmod a+x \$dldir/$dlname~
2368 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2369 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2370 fi'
b9668ba4
AK
2371 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2372 dlpath=$dir/\$dldll~
5c706339 2373 $RM \$dlpath'
b9668ba4
AK
2374 shlibpath_overrides_runpath=yes
2375
2376 case $host_os in
2377 cygwin*)
2378 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2379 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
059850b5
AK
2380m4_if([$1], [],[
2381 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
b9668ba4 2382 ;;
47dc80f6 2383 mingw* | cegcc*)
b9668ba4
AK
2384 # MinGW DLLs use traditional 'lib' prefix
2385 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
b9668ba4
AK
2386 ;;
2387 pw32*)
2388 # pw32 DLLs use 'pw' prefix rather than 'lib'
2389 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2390 ;;
2391 esac
059850b5
AK
2392 dynamic_linker='Win32 ld.exe'
2393 ;;
2394
2395 *,cl*)
2396 # Native MSVC
2397 libname_spec='$name'
2398 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2399 library_names_spec='${libname}.dll.lib'
2400
2401 case $build_os in
2402 mingw*)
2403 sys_lib_search_path_spec=
2404 lt_save_ifs=$IFS
2405 IFS=';'
2406 for lt_path in $LIB
2407 do
2408 IFS=$lt_save_ifs
2409 # Let DOS variable expansion print the short 8.3 style file name.
2410 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2411 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2412 done
2413 IFS=$lt_save_ifs
2414 # Convert to MSYS style.
2415 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2416 ;;
2417 cygwin*)
2418 # Convert to unix form, then to dos form, then back to unix form
2419 # but this time dos style (no spaces!) so that the unix form looks
2420 # like /cygdrive/c/PROGRA~1:/cygdr...
2421 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2422 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2423 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2424 ;;
2425 *)
2426 sys_lib_search_path_spec="$LIB"
2427 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2428 # It is most probably a Windows format PATH.
2429 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2430 else
2431 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2432 fi
2433 # FIXME: find the short name or the path components, as spaces are
2434 # common. (e.g. "Program Files" -> "PROGRA~1")
2435 ;;
2436 esac
2437
2438 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2439 postinstall_cmds='base_file=`basename \${file}`~
2440 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2441 dldir=$destdir/`dirname \$dlpath`~
2442 test -d \$dldir || mkdir -p \$dldir~
2443 $install_prog $dir/$dlname \$dldir/$dlname'
2444 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2445 dlpath=$dir/\$dldll~
2446 $RM \$dlpath'
2447 shlibpath_overrides_runpath=yes
2448 dynamic_linker='Win32 link.exe'
b9668ba4
AK
2449 ;;
2450
2451 *)
059850b5 2452 # Assume MSVC wrapper
b9668ba4 2453 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
059850b5 2454 dynamic_linker='Win32 ld.exe'
b9668ba4
AK
2455 ;;
2456 esac
b9668ba4
AK
2457 # FIXME: first we should search . and the directory the executable is in
2458 shlibpath_var=PATH
2459 ;;
2460
2461darwin* | rhapsody*)
2462 dynamic_linker="$host_os dyld"
2463 version_type=darwin
2464 need_lib_prefix=no
2465 need_version=no
5c706339 2466 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
b9668ba4
AK
2467 soname_spec='${libname}${release}${major}$shared_ext'
2468 shlibpath_overrides_runpath=yes
2469 shlibpath_var=DYLD_LIBRARY_PATH
2470 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
5c706339
AK
2471m4_if([$1], [],[
2472 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
b9668ba4
AK
2473 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2474 ;;
2475
2476dgux*)
059850b5 2477 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2478 need_lib_prefix=no
2479 need_version=no
2480 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2481 soname_spec='${libname}${release}${shared_ext}$major'
2482 shlibpath_var=LD_LIBRARY_PATH
2483 ;;
2484
b9668ba4
AK
2485freebsd* | dragonfly*)
2486 # DragonFly does not have aout. When/if they implement a new
2487 # versioning mechanism, adjust this.
2488 if test -x /usr/bin/objformat; then
2489 objformat=`/usr/bin/objformat`
2490 else
2491 case $host_os in
059850b5 2492 freebsd[[23]].*) objformat=aout ;;
b9668ba4
AK
2493 *) objformat=elf ;;
2494 esac
2495 fi
2496 version_type=freebsd-$objformat
2497 case $version_type in
2498 freebsd-elf*)
2499 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2500 need_version=no
2501 need_lib_prefix=no
2502 ;;
2503 freebsd-*)
2504 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2505 need_version=yes
2506 ;;
2507 esac
2508 shlibpath_var=LD_LIBRARY_PATH
2509 case $host_os in
059850b5 2510 freebsd2.*)
b9668ba4
AK
2511 shlibpath_overrides_runpath=yes
2512 ;;
2513 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2514 shlibpath_overrides_runpath=yes
2515 hardcode_into_libs=yes
2516 ;;
2517 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2518 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2519 shlibpath_overrides_runpath=no
2520 hardcode_into_libs=yes
2521 ;;
5c706339 2522 *) # from 4.6 on, and DragonFly
b9668ba4
AK
2523 shlibpath_overrides_runpath=yes
2524 hardcode_into_libs=yes
2525 ;;
2526 esac
2527 ;;
2528
2529gnu*)
059850b5 2530 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2531 need_lib_prefix=no
2532 need_version=no
2533 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2534 soname_spec='${libname}${release}${shared_ext}$major'
2535 shlibpath_var=LD_LIBRARY_PATH
059850b5
AK
2536 shlibpath_overrides_runpath=no
2537 hardcode_into_libs=yes
2538 ;;
2539
2540haiku*)
2541 version_type=linux # correct to gnu/linux during the next big refactor
2542 need_lib_prefix=no
2543 need_version=no
2544 dynamic_linker="$host_os runtime_loader"
2545 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2546 soname_spec='${libname}${release}${shared_ext}$major'
2547 shlibpath_var=LIBRARY_PATH
2548 shlibpath_overrides_runpath=yes
2549 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
b9668ba4
AK
2550 hardcode_into_libs=yes
2551 ;;
2552
2553hpux9* | hpux10* | hpux11*)
2554 # Give a soname corresponding to the major version so that dld.sl refuses to
2555 # link against other versions.
2556 version_type=sunos
2557 need_lib_prefix=no
2558 need_version=no
2559 case $host_cpu in
2560 ia64*)
2561 shrext_cmds='.so'
2562 hardcode_into_libs=yes
2563 dynamic_linker="$host_os dld.so"
2564 shlibpath_var=LD_LIBRARY_PATH
2565 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2566 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2567 soname_spec='${libname}${release}${shared_ext}$major'
2568 if test "X$HPUX_IA64_MODE" = X32; then
2569 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2570 else
2571 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2572 fi
2573 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2574 ;;
5c706339
AK
2575 hppa*64*)
2576 shrext_cmds='.sl'
2577 hardcode_into_libs=yes
2578 dynamic_linker="$host_os dld.sl"
2579 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2580 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2581 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2582 soname_spec='${libname}${release}${shared_ext}$major'
2583 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2584 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2585 ;;
2586 *)
b9668ba4
AK
2587 shrext_cmds='.sl'
2588 dynamic_linker="$host_os dld.sl"
2589 shlibpath_var=SHLIB_PATH
2590 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2591 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2592 soname_spec='${libname}${release}${shared_ext}$major'
2593 ;;
2594 esac
059850b5 2595 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
b9668ba4 2596 postinstall_cmds='chmod 555 $lib'
059850b5
AK
2597 # or fails outright, so override atomically:
2598 install_override_mode=555
b9668ba4
AK
2599 ;;
2600
5c706339 2601interix[[3-9]]*)
059850b5 2602 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2603 need_lib_prefix=no
2604 need_version=no
2605 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2606 soname_spec='${libname}${release}${shared_ext}$major'
2607 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2608 shlibpath_var=LD_LIBRARY_PATH
2609 shlibpath_overrides_runpath=no
2610 hardcode_into_libs=yes
2611 ;;
2612
2613irix5* | irix6* | nonstopux*)
2614 case $host_os in
2615 nonstopux*) version_type=nonstopux ;;
2616 *)
2617 if test "$lt_cv_prog_gnu_ld" = yes; then
059850b5 2618 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2619 else
2620 version_type=irix
2621 fi ;;
2622 esac
2623 need_lib_prefix=no
2624 need_version=no
2625 soname_spec='${libname}${release}${shared_ext}$major'
2626 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2627 case $host_os in
2628 irix5* | nonstopux*)
2629 libsuff= shlibsuff=
2630 ;;
2631 *)
2632 case $LD in # libtool.m4 will add one of these switches to LD
2633 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2634 libsuff= shlibsuff= libmagic=32-bit;;
2635 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2636 libsuff=32 shlibsuff=N32 libmagic=N32;;
2637 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2638 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2639 *) libsuff= shlibsuff= libmagic=never-match;;
2640 esac
2641 ;;
2642 esac
2643 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2644 shlibpath_overrides_runpath=no
2645 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2646 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2647 hardcode_into_libs=yes
2648 ;;
2649
2650# No shared lib support for Linux oldld, aout, or coff.
2651linux*oldld* | linux*aout* | linux*coff*)
2652 dynamic_linker=no
2653 ;;
2654
059850b5 2655# This must be glibc/ELF.
0fbeb4dc 2656linux* | k*bsd*-gnu | kopensolaris*-gnu)
059850b5 2657 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2658 need_lib_prefix=no
2659 need_version=no
2660 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2661 soname_spec='${libname}${release}${shared_ext}$major'
2662 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2663 shlibpath_var=LD_LIBRARY_PATH
2664 shlibpath_overrides_runpath=no
059850b5 2665
5c706339 2666 # Some binutils ld are patched to set DT_RUNPATH
059850b5
AK
2667 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2668 [lt_cv_shlibpath_overrides_runpath=no
2669 save_LDFLAGS=$LDFLAGS
2670 save_libdir=$libdir
2671 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2672 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2673 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2674 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2675 [lt_cv_shlibpath_overrides_runpath=yes])])
2676 LDFLAGS=$save_LDFLAGS
2677 libdir=$save_libdir
2678 ])
2679 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
5c706339 2680
b9668ba4
AK
2681 # This implies no fast_install, which is unacceptable.
2682 # Some rework will be needed to allow for fast_install
2683 # before this can be enabled.
2684 hardcode_into_libs=yes
2685
2686 # Append ld.so.conf contents to the search path
2687 if test -f /etc/ld.so.conf; then
059850b5 2688 lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
b9668ba4
AK
2689 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2690 fi
2691
2692 # We used to test for /lib/ld.so.1 and disable shared libraries on
2693 # powerpc, because MkLinux only supported shared libraries with the
2694 # GNU dynamic linker. Since this was broken with cross compilers,
2695 # most powerpc-linux boxes support dynamic linking these days and
2696 # people can always --disable-shared, the test was removed, and we
2697 # assume the GNU/Linux dynamic linker is in use.
2698 dynamic_linker='GNU/Linux ld.so'
2699 ;;
2700
2701netbsdelf*-gnu)
2702 version_type=linux
2703 need_lib_prefix=no
2704 need_version=no
2705 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2706 soname_spec='${libname}${release}${shared_ext}$major'
2707 shlibpath_var=LD_LIBRARY_PATH
2708 shlibpath_overrides_runpath=no
2709 hardcode_into_libs=yes
2710 dynamic_linker='NetBSD ld.elf_so'
2711 ;;
2712
2713netbsd*)
2714 version_type=sunos
2715 need_lib_prefix=no
2716 need_version=no
5c706339 2717 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
b9668ba4
AK
2718 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2719 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2720 dynamic_linker='NetBSD (a.out) ld.so'
2721 else
2722 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2723 soname_spec='${libname}${release}${shared_ext}$major'
2724 dynamic_linker='NetBSD ld.elf_so'
2725 fi
2726 shlibpath_var=LD_LIBRARY_PATH
2727 shlibpath_overrides_runpath=yes
2728 hardcode_into_libs=yes
2729 ;;
2730
2731newsos6)
059850b5 2732 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2733 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2734 shlibpath_var=LD_LIBRARY_PATH
2735 shlibpath_overrides_runpath=yes
2736 ;;
2737
5c706339
AK
2738*nto* | *qnx*)
2739 version_type=qnx
b9668ba4
AK
2740 need_lib_prefix=no
2741 need_version=no
2742 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2743 soname_spec='${libname}${release}${shared_ext}$major'
2744 shlibpath_var=LD_LIBRARY_PATH
5c706339
AK
2745 shlibpath_overrides_runpath=no
2746 hardcode_into_libs=yes
2747 dynamic_linker='ldqnx.so'
b9668ba4
AK
2748 ;;
2749
2750openbsd*)
2751 version_type=sunos
2752 sys_lib_dlsearch_path_spec="/usr/lib"
2753 need_lib_prefix=no
2754 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2755 case $host_os in
5c706339
AK
2756 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2757 *) need_version=no ;;
b9668ba4
AK
2758 esac
2759 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2760 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2761 shlibpath_var=LD_LIBRARY_PATH
5c706339 2762 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
b9668ba4
AK
2763 case $host_os in
2764 openbsd2.[[89]] | openbsd2.[[89]].*)
2765 shlibpath_overrides_runpath=no
2766 ;;
2767 *)
2768 shlibpath_overrides_runpath=yes
2769 ;;
2770 esac
2771 else
2772 shlibpath_overrides_runpath=yes
2773 fi
2774 ;;
2775
2776os2*)
2777 libname_spec='$name'
2778 shrext_cmds=".dll"
2779 need_lib_prefix=no
2780 library_names_spec='$libname${shared_ext} $libname.a'
2781 dynamic_linker='OS/2 ld.exe'
2782 shlibpath_var=LIBPATH
2783 ;;
2784
2785osf3* | osf4* | osf5*)
2786 version_type=osf
2787 need_lib_prefix=no
2788 need_version=no
2789 soname_spec='${libname}${release}${shared_ext}$major'
2790 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2791 shlibpath_var=LD_LIBRARY_PATH
2792 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2793 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2794 ;;
2795
5c706339
AK
2796rdos*)
2797 dynamic_linker=no
2798 ;;
2799
b9668ba4 2800solaris*)
059850b5 2801 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2802 need_lib_prefix=no
2803 need_version=no
2804 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2805 soname_spec='${libname}${release}${shared_ext}$major'
2806 shlibpath_var=LD_LIBRARY_PATH
2807 shlibpath_overrides_runpath=yes
2808 hardcode_into_libs=yes
2809 # ldd complains unless libraries are executable
2810 postinstall_cmds='chmod +x $lib'
2811 ;;
2812
2813sunos4*)
2814 version_type=sunos
2815 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2816 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2817 shlibpath_var=LD_LIBRARY_PATH
2818 shlibpath_overrides_runpath=yes
2819 if test "$with_gnu_ld" = yes; then
2820 need_lib_prefix=no
2821 fi
2822 need_version=yes
2823 ;;
2824
2825sysv4 | sysv4.3*)
059850b5 2826 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2827 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2828 soname_spec='${libname}${release}${shared_ext}$major'
2829 shlibpath_var=LD_LIBRARY_PATH
2830 case $host_vendor in
2831 sni)
2832 shlibpath_overrides_runpath=no
2833 need_lib_prefix=no
b9668ba4
AK
2834 runpath_var=LD_RUN_PATH
2835 ;;
2836 siemens)
2837 need_lib_prefix=no
2838 ;;
2839 motorola)
2840 need_lib_prefix=no
2841 need_version=no
2842 shlibpath_overrides_runpath=no
2843 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2844 ;;
5c706339
AK
2845 esac
2846 ;;
b9668ba4 2847
5c706339
AK
2848sysv4*MP*)
2849 if test -d /usr/nec ;then
059850b5 2850 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2851 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2852 soname_spec='$libname${shared_ext}.$major'
2853 shlibpath_var=LD_LIBRARY_PATH
2854 fi
2855 ;;
b9668ba4 2856
5c706339
AK
2857sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2858 version_type=freebsd-elf
2859 need_lib_prefix=no
2860 need_version=no
2861 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2862 soname_spec='${libname}${release}${shared_ext}$major'
2863 shlibpath_var=LD_LIBRARY_PATH
2864 shlibpath_overrides_runpath=yes
2865 hardcode_into_libs=yes
2866 if test "$with_gnu_ld" = yes; then
2867 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
2868 else
2869 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
2870 case $host_os in
2871 sco3.2v5*)
2872 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2873 ;;
2874 esac
2875 fi
2876 sys_lib_dlsearch_path_spec='/usr/lib'
2877 ;;
b9668ba4 2878
5c706339
AK
2879tpf*)
2880 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
059850b5 2881 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2882 need_lib_prefix=no
2883 need_version=no
47dc80f6 2884 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
5c706339
AK
2885 shlibpath_var=LD_LIBRARY_PATH
2886 shlibpath_overrides_runpath=no
2887 hardcode_into_libs=yes
2888 ;;
b9668ba4 2889
5c706339 2890uts4*)
059850b5 2891 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2892 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2893 soname_spec='${libname}${release}${shared_ext}$major'
2894 shlibpath_var=LD_LIBRARY_PATH
2895 ;;
b9668ba4 2896
5c706339
AK
2897*)
2898 dynamic_linker=no
2899 ;;
2900esac
2901AC_MSG_RESULT([$dynamic_linker])
2902test "$dynamic_linker" = no && can_build_shared=no
b9668ba4 2903
5c706339
AK
2904variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2905if test "$GCC" = yes; then
2906 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2907fi
47dc80f6 2908
5c706339
AK
2909if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2910 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2911fi
2912if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2913 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2914fi
2915
2916_LT_DECL([], [variables_saved_for_relink], [1],
2917 [Variables whose values should be saved in libtool wrapper scripts and
2918 restored at link time])
2919_LT_DECL([], [need_lib_prefix], [0],
2920 [Do we need the "lib" prefix for modules?])
2921_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2922_LT_DECL([], [version_type], [0], [Library versioning type])
2923_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2924_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2925_LT_DECL([], [shlibpath_overrides_runpath], [0],
2926 [Is shlibpath searched before the hard-coded library search path?])
2927_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2928_LT_DECL([], [library_names_spec], [1],
2929 [[List of archive names. First name is the real one, the rest are links.
2930 The last name is the one that the linker finds with -lNAME]])
2931_LT_DECL([], [soname_spec], [1],
2932 [[The coded name of the library, if different from the real name]])
059850b5
AK
2933_LT_DECL([], [install_override_mode], [1],
2934 [Permission mode override for installation of shared libraries])
5c706339
AK
2935_LT_DECL([], [postinstall_cmds], [2],
2936 [Command to use after installation of a shared archive])
2937_LT_DECL([], [postuninstall_cmds], [2],
2938 [Command to use after uninstallation of a shared archive])
2939_LT_DECL([], [finish_cmds], [2],
2940 [Commands used to finish a libtool library installation in a directory])
2941_LT_DECL([], [finish_eval], [1],
2942 [[As "finish_cmds", except a single script fragment to be evaled but
2943 not shown]])
2944_LT_DECL([], [hardcode_into_libs], [0],
2945 [Whether we should hardcode library paths into libraries])
2946_LT_DECL([], [sys_lib_search_path_spec], [2],
2947 [Compile-time system search path for libraries])
2948_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2949 [Run-time system search path for libraries])
2950])# _LT_SYS_DYNAMIC_LINKER
2951
2952
2953# _LT_PATH_TOOL_PREFIX(TOOL)
2954# --------------------------
2955# find a file program which can recognize shared library
2956AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2957[m4_require([_LT_DECL_EGREP])dnl
b9668ba4
AK
2958AC_MSG_CHECKING([for $1])
2959AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2960[case $MAGIC_CMD in
2961[[\\/*] | ?:[\\/]*])
2962 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2963 ;;
2964*)
2965 lt_save_MAGIC_CMD="$MAGIC_CMD"
2966 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2967dnl $ac_dummy forces splitting on constant user-supplied paths.
2968dnl POSIX.2 word splitting is done only on the output of word expansions,
2969dnl not every word. This closes a longstanding sh security hole.
5c706339 2970 ac_dummy="m4_if([$2], , $PATH, [$2])"
b9668ba4
AK
2971 for ac_dir in $ac_dummy; do
2972 IFS="$lt_save_ifs"
2973 test -z "$ac_dir" && ac_dir=.
2974 if test -f $ac_dir/$1; then
2975 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2976 if test -n "$file_magic_test_file"; then
2977 case $deplibs_check_method in
2978 "file_magic "*)
2979 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2980 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2981 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2982 $EGREP "$file_magic_regex" > /dev/null; then
2983 :
2984 else
5c706339 2985 cat <<_LT_EOF 1>&2
b9668ba4
AK
2986
2987*** Warning: the command libtool uses to detect shared libraries,
2988*** $file_magic_cmd, produces output that libtool cannot recognize.
2989*** The result is that libtool may fail to recognize shared libraries
2990*** as such. This will affect the creation of libtool libraries that
2991*** depend on shared libraries, but programs linked with such libtool
2992*** libraries will work regardless of this problem. Nevertheless, you
2993*** may want to report the problem to your system manager and/or to
2994*** bug-libtool@gnu.org
2995
5c706339 2996_LT_EOF
b9668ba4
AK
2997 fi ;;
2998 esac
2999 fi
3000 break
3001 fi
3002 done
3003 IFS="$lt_save_ifs"
3004 MAGIC_CMD="$lt_save_MAGIC_CMD"
3005 ;;
3006esac])
3007MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
3008if test -n "$MAGIC_CMD"; then
3009 AC_MSG_RESULT($MAGIC_CMD)
3010else
3011 AC_MSG_RESULT(no)
3012fi
5c706339
AK
3013_LT_DECL([], [MAGIC_CMD], [0],
3014 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3015])# _LT_PATH_TOOL_PREFIX
b9668ba4 3016
5c706339
AK
3017# Old name:
3018AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3019dnl aclocal-1.4 backwards compatibility:
3020dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
b9668ba4 3021
5c706339
AK
3022
3023# _LT_PATH_MAGIC
3024# --------------
3025# find a file program which can recognize a shared library
3026m4_defun([_LT_PATH_MAGIC],
3027[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
b9668ba4
AK
3028if test -z "$lt_cv_path_MAGIC_CMD"; then
3029 if test -n "$ac_tool_prefix"; then
5c706339 3030 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
b9668ba4
AK
3031 else
3032 MAGIC_CMD=:
3033 fi
3034fi
5c706339 3035])# _LT_PATH_MAGIC
b9668ba4
AK
3036
3037
5c706339 3038# LT_PATH_LD
b9668ba4
AK
3039# ----------
3040# find the pathname to the GNU or non-GNU linker
5c706339
AK
3041AC_DEFUN([LT_PATH_LD],
3042[AC_REQUIRE([AC_PROG_CC])dnl
b9668ba4
AK
3043AC_REQUIRE([AC_CANONICAL_HOST])dnl
3044AC_REQUIRE([AC_CANONICAL_BUILD])dnl
5c706339
AK
3045m4_require([_LT_DECL_SED])dnl
3046m4_require([_LT_DECL_EGREP])dnl
059850b5 3047m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
5c706339
AK
3048
3049AC_ARG_WITH([gnu-ld],
3050 [AS_HELP_STRING([--with-gnu-ld],
3051 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
3052 [test "$withval" = no || with_gnu_ld=yes],
3053 [with_gnu_ld=no])dnl
3054
b9668ba4
AK
3055ac_prog=ld
3056if test "$GCC" = yes; then
3057 # Check if gcc -print-prog-name=ld gives a path.
3058 AC_MSG_CHECKING([for ld used by $CC])
3059 case $host in
3060 *-*-mingw*)
3061 # gcc leaves a trailing carriage return which upsets mingw
3062 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3063 *)
3064 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3065 esac
3066 case $ac_prog in
3067 # Accept absolute paths.
3068 [[\\/]]* | ?:[[\\/]]*)
3069 re_direlt='/[[^/]][[^/]]*/\.\./'
3070 # Canonicalize the pathname of ld
5c706339
AK
3071 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3072 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3073 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
b9668ba4
AK
3074 done
3075 test -z "$LD" && LD="$ac_prog"
3076 ;;
3077 "")
3078 # If it fails, then pretend we aren't using GCC.
3079 ac_prog=ld
3080 ;;
3081 *)
3082 # If it is relative, then search for the first ld in PATH.
3083 with_gnu_ld=unknown
3084 ;;
3085 esac
3086elif test "$with_gnu_ld" = yes; then
3087 AC_MSG_CHECKING([for GNU ld])
3088else
3089 AC_MSG_CHECKING([for non-GNU ld])
3090fi
3091AC_CACHE_VAL(lt_cv_path_LD,
3092[if test -z "$LD"; then
3093 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3094 for ac_dir in $PATH; do
3095 IFS="$lt_save_ifs"
3096 test -z "$ac_dir" && ac_dir=.
3097 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3098 lt_cv_path_LD="$ac_dir/$ac_prog"
3099 # Check to see if the program is GNU ld. I'd rather use --version,
3100 # but apparently some variants of GNU ld only accept -v.
3101 # Break only if it was the GNU/non-GNU ld that we prefer.
3102 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3103 *GNU* | *'with BFD'*)
3104 test "$with_gnu_ld" != no && break
3105 ;;
3106 *)
3107 test "$with_gnu_ld" != yes && break
3108 ;;
3109 esac
3110 fi
3111 done
3112 IFS="$lt_save_ifs"
3113else
3114 lt_cv_path_LD="$LD" # Let the user override the test with a path.
3115fi])
3116LD="$lt_cv_path_LD"
3117if test -n "$LD"; then
3118 AC_MSG_RESULT($LD)
3119else
3120 AC_MSG_RESULT(no)
3121fi
3122test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
5c706339
AK
3123_LT_PATH_LD_GNU
3124AC_SUBST([LD])
b9668ba4 3125
5c706339
AK
3126_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3127])# LT_PATH_LD
b9668ba4 3128
5c706339
AK
3129# Old names:
3130AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3131AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3132dnl aclocal-1.4 backwards compatibility:
3133dnl AC_DEFUN([AM_PROG_LD], [])
3134dnl AC_DEFUN([AC_PROG_LD], [])
3135
3136
3137# _LT_PATH_LD_GNU
3138#- --------------
3139m4_defun([_LT_PATH_LD_GNU],
3140[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
b9668ba4
AK
3141[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3142case `$LD -v 2>&1 </dev/null` in
3143*GNU* | *'with BFD'*)
3144 lt_cv_prog_gnu_ld=yes
3145 ;;
3146*)
3147 lt_cv_prog_gnu_ld=no
3148 ;;
3149esac])
3150with_gnu_ld=$lt_cv_prog_gnu_ld
5c706339 3151])# _LT_PATH_LD_GNU
b9668ba4
AK
3152
3153
5c706339
AK
3154# _LT_CMD_RELOAD
3155# --------------
b9668ba4
AK
3156# find reload flag for linker
3157# -- PORTME Some linkers may need a different reload flag.
5c706339 3158m4_defun([_LT_CMD_RELOAD],
b9668ba4
AK
3159[AC_CACHE_CHECK([for $LD option to reload object files],
3160 lt_cv_ld_reload_flag,
3161 [lt_cv_ld_reload_flag='-r'])
3162reload_flag=$lt_cv_ld_reload_flag
3163case $reload_flag in
3164"" | " "*) ;;
3165*) reload_flag=" $reload_flag" ;;
3166esac
3167reload_cmds='$LD$reload_flag -o $output$reload_objs'
3168case $host_os in
059850b5
AK
3169 cygwin* | mingw* | pw32* | cegcc*)
3170 if test "$GCC" != yes; then
3171 reload_cmds=false
3172 fi
3173 ;;
b9668ba4
AK
3174 darwin*)
3175 if test "$GCC" = yes; then
3176 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
3177 else
3178 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3179 fi
3180 ;;
3181esac
059850b5
AK
3182_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3183_LT_TAGDECL([], [reload_cmds], [2])dnl
5c706339 3184])# _LT_CMD_RELOAD
b9668ba4
AK
3185
3186
5c706339
AK
3187# _LT_CHECK_MAGIC_METHOD
3188# ----------------------
b9668ba4
AK
3189# how to check for library dependencies
3190# -- PORTME fill in with the dynamic library characteristics
5c706339
AK
3191m4_defun([_LT_CHECK_MAGIC_METHOD],
3192[m4_require([_LT_DECL_EGREP])
47dc80f6 3193m4_require([_LT_DECL_OBJDUMP])
5c706339 3194AC_CACHE_CHECK([how to recognize dependent libraries],
b9668ba4
AK
3195lt_cv_deplibs_check_method,
3196[lt_cv_file_magic_cmd='$MAGIC_CMD'
3197lt_cv_file_magic_test_file=
3198lt_cv_deplibs_check_method='unknown'
3199# Need to set the preceding variable on all platforms that support
3200# interlibrary dependencies.
3201# 'none' -- dependencies not supported.
3202# `unknown' -- same as none, but documents that we really don't know.
3203# 'pass_all' -- all dependencies passed with no checks.
3204# 'test_compile' -- check by making test program.
3205# 'file_magic [[regex]]' -- check by looking for files in library path
3206# which responds to the $file_magic_cmd with a given extended regex.
3207# If you have `file' or equivalent on your system and you're not sure
3208# whether `pass_all' will *always* work, you probably want this one.
3209
3210case $host_os in
5c706339 3211aix[[4-9]]*)
b9668ba4
AK
3212 lt_cv_deplibs_check_method=pass_all
3213 ;;
3214
3215beos*)
3216 lt_cv_deplibs_check_method=pass_all
3217 ;;
3218
3219bsdi[[45]]*)
3220 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3221 lt_cv_file_magic_cmd='/usr/bin/file -L'
3222 lt_cv_file_magic_test_file=/shlib/libc.so
3223 ;;
3224
3225cygwin*)
3226 # func_win32_libid is a shell function defined in ltmain.sh
3227 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3228 lt_cv_file_magic_cmd='func_win32_libid'
3229 ;;
3230
3231mingw* | pw32*)
3232 # Base MSYS/MinGW do not provide the 'file' command needed by
5c706339
AK
3233 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3234 # unless we find 'file', for example because we are cross-compiling.
059850b5
AK
3235 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3236 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
5c706339
AK
3237 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3238 lt_cv_file_magic_cmd='func_win32_libid'
3239 else
059850b5
AK
3240 # Keep this pattern in sync with the one in func_win32_libid.
3241 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
5c706339
AK
3242 lt_cv_file_magic_cmd='$OBJDUMP -f'
3243 fi
b9668ba4
AK
3244 ;;
3245
059850b5 3246cegcc*)
47dc80f6
AK
3247 # use the weaker test based on 'objdump'. See mingw*.
3248 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3249 lt_cv_file_magic_cmd='$OBJDUMP -f'
3250 ;;
3251
b9668ba4
AK
3252darwin* | rhapsody*)
3253 lt_cv_deplibs_check_method=pass_all
3254 ;;
3255
3256freebsd* | dragonfly*)
5c706339 3257 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
b9668ba4
AK
3258 case $host_cpu in
3259 i*86 )
3260 # Not sure whether the presence of OpenBSD here was a mistake.
3261 # Let's accept both of them until this is cleared up.
3262 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3263 lt_cv_file_magic_cmd=/usr/bin/file
3264 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3265 ;;
3266 esac
3267 else
3268 lt_cv_deplibs_check_method=pass_all
3269 fi
3270 ;;
3271
3272gnu*)
3273 lt_cv_deplibs_check_method=pass_all
3274 ;;
3275
059850b5
AK
3276haiku*)
3277 lt_cv_deplibs_check_method=pass_all
3278 ;;
3279
b9668ba4
AK
3280hpux10.20* | hpux11*)
3281 lt_cv_file_magic_cmd=/usr/bin/file
3282 case $host_cpu in
3283 ia64*)
3284 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3285 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3286 ;;
3287 hppa*64*)
059850b5 3288 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
b9668ba4
AK
3289 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3290 ;;
3291 *)
059850b5 3292 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
b9668ba4
AK
3293 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3294 ;;
3295 esac
3296 ;;
3297
5c706339 3298interix[[3-9]]*)
b9668ba4
AK
3299 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3300 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3301 ;;
3302
3303irix5* | irix6* | nonstopux*)
3304 case $LD in
3305 *-32|*"-32 ") libmagic=32-bit;;
3306 *-n32|*"-n32 ") libmagic=N32;;
3307 *-64|*"-64 ") libmagic=64-bit;;
3308 *) libmagic=never-match;;
3309 esac
3310 lt_cv_deplibs_check_method=pass_all
3311 ;;
3312
059850b5 3313# This must be glibc/ELF.
0fbeb4dc 3314linux* | k*bsd*-gnu | kopensolaris*-gnu)
b9668ba4
AK
3315 lt_cv_deplibs_check_method=pass_all
3316 ;;
3317
3318netbsd* | netbsdelf*-gnu)
5c706339 3319 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
b9668ba4
AK
3320 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3321 else
3322 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3323 fi
3324 ;;
3325
3326newos6*)
3327 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3328 lt_cv_file_magic_cmd=/usr/bin/file
3329 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3330 ;;
3331
5c706339
AK
3332*nto* | *qnx*)
3333 lt_cv_deplibs_check_method=pass_all
b9668ba4
AK
3334 ;;
3335
3336openbsd*)
5c706339 3337 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
b9668ba4
AK
3338 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3339 else
3340 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3341 fi
3342 ;;
3343
3344osf3* | osf4* | osf5*)
3345 lt_cv_deplibs_check_method=pass_all
3346 ;;
3347
5c706339
AK
3348rdos*)
3349 lt_cv_deplibs_check_method=pass_all
3350 ;;
3351
b9668ba4
AK
3352solaris*)
3353 lt_cv_deplibs_check_method=pass_all
3354 ;;
3355
5c706339
AK
3356sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3357 lt_cv_deplibs_check_method=pass_all
3358 ;;
3359
b9668ba4
AK
3360sysv4 | sysv4.3*)
3361 case $host_vendor in
3362 motorola)
3363 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]]'
3364 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3365 ;;
3366 ncr)
3367 lt_cv_deplibs_check_method=pass_all
3368 ;;
3369 sequent)
3370 lt_cv_file_magic_cmd='/bin/file'
3371 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3372 ;;
3373 sni)
3374 lt_cv_file_magic_cmd='/bin/file'
3375 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3376 lt_cv_file_magic_test_file=/lib/libc.so
3377 ;;
3378 siemens)
3379 lt_cv_deplibs_check_method=pass_all
3380 ;;
3381 pc)
3382 lt_cv_deplibs_check_method=pass_all
3383 ;;
3384 esac
3385 ;;
3386
5c706339 3387tpf*)
b9668ba4
AK
3388 lt_cv_deplibs_check_method=pass_all
3389 ;;
3390esac
3391])
059850b5
AK
3392
3393file_magic_glob=
3394want_nocaseglob=no
3395if test "$build" = "$host"; then
3396 case $host_os in
3397 mingw* | pw32*)
3398 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3399 want_nocaseglob=yes
3400 else
3401 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3402 fi
3403 ;;
3404 esac
3405fi
3406
b9668ba4
AK
3407file_magic_cmd=$lt_cv_file_magic_cmd
3408deplibs_check_method=$lt_cv_deplibs_check_method
3409test -z "$deplibs_check_method" && deplibs_check_method=unknown
b9668ba4 3410
5c706339
AK
3411_LT_DECL([], [deplibs_check_method], [1],
3412 [Method to check whether dependent libraries are shared objects])
3413_LT_DECL([], [file_magic_cmd], [1],
059850b5
AK
3414 [Command to use when deplibs_check_method = "file_magic"])
3415_LT_DECL([], [file_magic_glob], [1],
3416 [How to find potential files when deplibs_check_method = "file_magic"])
3417_LT_DECL([], [want_nocaseglob], [1],
3418 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
5c706339 3419])# _LT_CHECK_MAGIC_METHOD
b9668ba4 3420
5c706339
AK
3421
3422# LT_PATH_NM
b9668ba4 3423# ----------
5c706339
AK
3424# find the pathname to a BSD- or MS-compatible name lister
3425AC_DEFUN([LT_PATH_NM],
3426[AC_REQUIRE([AC_PROG_CC])dnl
3427AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
b9668ba4
AK
3428[if test -n "$NM"; then
3429 # Let the user override the test.
3430 lt_cv_path_NM="$NM"
3431else
3432 lt_nm_to_check="${ac_tool_prefix}nm"
5c706339 3433 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
b9668ba4
AK
3434 lt_nm_to_check="$lt_nm_to_check nm"
3435 fi
3436 for lt_tmp_nm in $lt_nm_to_check; do
3437 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3438 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3439 IFS="$lt_save_ifs"
3440 test -z "$ac_dir" && ac_dir=.
3441 tmp_nm="$ac_dir/$lt_tmp_nm"
3442 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3443 # Check to see if the nm accepts a BSD-compat flag.
3444 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3445 # nm: unknown option "B" ignored
3446 # Tru64's nm complains that /dev/null is an invalid object file
3447 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3448 */dev/null* | *'Invalid file or object type'*)
3449 lt_cv_path_NM="$tmp_nm -B"
3450 break
3451 ;;
3452 *)
3453 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3454 */dev/null*)
3455 lt_cv_path_NM="$tmp_nm -p"
3456 break
3457 ;;
3458 *)
3459 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3460 continue # so that we can try to find one that supports BSD flags
3461 ;;
3462 esac
3463 ;;
3464 esac
3465 fi
3466 done
3467 IFS="$lt_save_ifs"
3468 done
5c706339 3469 : ${lt_cv_path_NM=no}
b9668ba4 3470fi])
5c706339
AK
3471if test "$lt_cv_path_NM" != "no"; then
3472 NM="$lt_cv_path_NM"
3473else
3474 # Didn't find any BSD compatible name lister, look for dumpbin.
059850b5
AK
3475 if test -n "$DUMPBIN"; then :
3476 # Let the user override the test.
3477 else
3478 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3479 case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
3480 *COFF*)
3481 DUMPBIN="$DUMPBIN -symbols"
3482 ;;
3483 *)
3484 DUMPBIN=:
3485 ;;
3486 esac
3487 fi
5c706339
AK
3488 AC_SUBST([DUMPBIN])
3489 if test "$DUMPBIN" != ":"; then
3490 NM="$DUMPBIN"
3491 fi
3492fi
3493test -z "$NM" && NM=nm
3494AC_SUBST([NM])
3495_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3496
3497AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3498 [lt_cv_nm_interface="BSD nm"
3499 echo "int some_variable = 0;" > conftest.$ac_ext
059850b5 3500 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
3501 (eval "$ac_compile" 2>conftest.err)
3502 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 3503 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
3504 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3505 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 3506 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
3507 cat conftest.out >&AS_MESSAGE_LOG_FD
3508 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3509 lt_cv_nm_interface="MS dumpbin"
3510 fi
3511 rm -f conftest*])
3512])# LT_PATH_NM
b9668ba4 3513
5c706339
AK
3514# Old names:
3515AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3516AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3517dnl aclocal-1.4 backwards compatibility:
3518dnl AC_DEFUN([AM_PROG_NM], [])
3519dnl AC_DEFUN([AC_PROG_NM], [])
b9668ba4 3520
059850b5
AK
3521# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3522# --------------------------------
3523# how to determine the name of the shared library
3524# associated with a specific link library.
3525# -- PORTME fill in with the dynamic library characteristics
3526m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3527[m4_require([_LT_DECL_EGREP])
3528m4_require([_LT_DECL_OBJDUMP])
3529m4_require([_LT_DECL_DLLTOOL])
3530AC_CACHE_CHECK([how to associate runtime and link libraries],
3531lt_cv_sharedlib_from_linklib_cmd,
3532[lt_cv_sharedlib_from_linklib_cmd='unknown'
3533
3534case $host_os in
3535cygwin* | mingw* | pw32* | cegcc*)
3536 # two different shell functions defined in ltmain.sh
3537 # decide which to use based on capabilities of $DLLTOOL
3538 case `$DLLTOOL --help 2>&1` in
3539 *--identify-strict*)
3540 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3541 ;;
3542 *)
3543 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3544 ;;
3545 esac
3546 ;;
3547*)
3548 # fallback: assume linklib IS sharedlib
3549 lt_cv_sharedlib_from_linklib_cmd="$ECHO"
3550 ;;
3551esac
3552])
3553sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3554test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3555
3556_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3557 [Command to associate shared and link libraries])
3558])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3559
3560
3561# _LT_PATH_MANIFEST_TOOL
3562# ----------------------
3563# locate the manifest tool
3564m4_defun([_LT_PATH_MANIFEST_TOOL],
3565[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3566test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3567AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3568 [lt_cv_path_mainfest_tool=no
3569 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3570 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3571 cat conftest.err >&AS_MESSAGE_LOG_FD
3572 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3573 lt_cv_path_mainfest_tool=yes
3574 fi
3575 rm -f conftest*])
3576if test "x$lt_cv_path_mainfest_tool" != xyes; then
3577 MANIFEST_TOOL=:
3578fi
3579_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3580])# _LT_PATH_MANIFEST_TOOL
3581
5c706339
AK
3582
3583# LT_LIB_M
3584# --------
b9668ba4 3585# check for math library
5c706339 3586AC_DEFUN([LT_LIB_M],
b9668ba4
AK
3587[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3588LIBM=
3589case $host in
059850b5 3590*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
b9668ba4
AK
3591 # These system don't have libm, or don't need it
3592 ;;
3593*-ncr-sysv4.3*)
3594 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3595 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3596 ;;
3597*)
3598 AC_CHECK_LIB(m, cos, LIBM="-lm")
3599 ;;
3600esac
5c706339
AK
3601AC_SUBST([LIBM])
3602])# LT_LIB_M
b9668ba4 3603
5c706339
AK
3604# Old name:
3605AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3606dnl aclocal-1.4 backwards compatibility:
3607dnl AC_DEFUN([AC_CHECK_LIBM], [])
b9668ba4
AK
3608
3609
5c706339
AK
3610# _LT_COMPILER_NO_RTTI([TAGNAME])
3611# -------------------------------
3612m4_defun([_LT_COMPILER_NO_RTTI],
3613[m4_require([_LT_TAG_COMPILER])dnl
b9668ba4 3614
5c706339 3615_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
b9668ba4 3616
5c706339 3617if test "$GCC" = yes; then
059850b5
AK
3618 case $cc_basename in
3619 nvcc*)
3620 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3621 *)
3622 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3623 esac
b9668ba4 3624
5c706339
AK
3625 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3626 lt_cv_prog_compiler_rtti_exceptions,
3627 [-fno-rtti -fno-exceptions], [],
3628 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
b9668ba4 3629fi
5c706339
AK
3630_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3631 [Compiler flag to turn off builtin functions])
3632])# _LT_COMPILER_NO_RTTI
b9668ba4 3633
b9668ba4 3634
5c706339
AK
3635# _LT_CMD_GLOBAL_SYMBOLS
3636# ----------------------
3637m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3638[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3639AC_REQUIRE([AC_PROG_CC])dnl
059850b5 3640AC_REQUIRE([AC_PROG_AWK])dnl
5c706339
AK
3641AC_REQUIRE([LT_PATH_NM])dnl
3642AC_REQUIRE([LT_PATH_LD])dnl
3643m4_require([_LT_DECL_SED])dnl
3644m4_require([_LT_DECL_EGREP])dnl
3645m4_require([_LT_TAG_COMPILER])dnl
b9668ba4 3646
5c706339
AK
3647# Check for command to grab the raw symbol name followed by C symbol from nm.
3648AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3649AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3650[
3651# These are sane defaults that work on at least a few old systems.
3652# [They come from Ultrix. What could be older than Ultrix?!! ;)]
b9668ba4 3653
5c706339
AK
3654# Character class describing NM global symbol codes.
3655symcode='[[BCDEGRST]]'
b9668ba4 3656
5c706339
AK
3657# Regexp to match symbols that can be accessed directly from C.
3658sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
b9668ba4 3659
5c706339 3660# Define system-specific variables.
b9668ba4 3661case $host_os in
5c706339
AK
3662aix*)
3663 symcode='[[BCDT]]'
b9668ba4 3664 ;;
47dc80f6 3665cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
3666 symcode='[[ABCDGISTW]]'
3667 ;;
3668hpux*)
3669 if test "$host_cpu" = ia64; then
3670 symcode='[[ABCDEGRST]]'
b9668ba4 3671 fi
5c706339
AK
3672 ;;
3673irix* | nonstopux*)
3674 symcode='[[BCDEGRST]]'
3675 ;;
3676osf*)
3677 symcode='[[BCDEGQRST]]'
3678 ;;
3679solaris*)
3680 symcode='[[BDRT]]'
3681 ;;
3682sco3.2v5*)
3683 symcode='[[DT]]'
3684 ;;
3685sysv4.2uw2*)
3686 symcode='[[DT]]'
3687 ;;
3688sysv5* | sco5v6* | unixware* | OpenUNIX*)
3689 symcode='[[ABDT]]'
3690 ;;
3691sysv4)
3692 symcode='[[DFNSTU]]'
3693 ;;
b9668ba4 3694esac
b9668ba4 3695
5c706339
AK
3696# If we're using GNU nm, then use its standard symbol codes.
3697case `$NM -V 2>&1` in
3698*GNU* | *'with BFD'*)
3699 symcode='[[ABCDGIRSTW]]' ;;
3700esac
b9668ba4 3701
5c706339
AK
3702# Transform an extracted symbol line into a proper C declaration.
3703# Some systems (esp. on ia64) link data and code symbols differently,
3704# so use this general approach.
3705lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
b9668ba4 3706
5c706339 3707# Transform an extracted symbol line into symbol name and symbol address
059850b5
AK
3708lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3709lt_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'"
b9668ba4 3710
5c706339
AK
3711# Handle CRLF in mingw tool chain
3712opt_cr=
3713case $build_os in
3714mingw*)
3715 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3716 ;;
3717esac
b9668ba4 3718
5c706339
AK
3719# Try without a prefix underscore, then with it.
3720for ac_symprfx in "" "_"; do
b9668ba4 3721
5c706339
AK
3722 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3723 symxfrm="\\1 $ac_symprfx\\2 \\2"
b9668ba4 3724
5c706339
AK
3725 # Write the raw and C identifiers.
3726 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3727 # Fake it for dumpbin and say T for any non-static function
3728 # and D for any global variable.
3729 # Also find C++ and __fastcall symbols from MSVC++,
3730 # which start with @ or ?.
3731 lt_cv_sys_global_symbol_pipe="$AWK ['"\
3732" {last_section=section; section=\$ 3};"\
059850b5 3733" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
5c706339
AK
3734" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3735" \$ 0!~/External *\|/{next};"\
3736" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3737" {if(hide[section]) next};"\
3738" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3739" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3740" s[1]~/^[@?]/{print s[1], s[1]; next};"\
3741" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3742" ' prfx=^$ac_symprfx]"
b9668ba4 3743 else
5c706339 3744 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
b9668ba4 3745 fi
059850b5 3746 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
b9668ba4 3747
5c706339
AK
3748 # Check to see that the pipe works correctly.
3749 pipe_works=no
b9668ba4 3750
5c706339
AK
3751 rm -f conftest*
3752 cat > conftest.$ac_ext <<_LT_EOF
3753#ifdef __cplusplus
3754extern "C" {
3755#endif
3756char nm_test_var;
3757void nm_test_func(void);
3758void nm_test_func(void){}
3759#ifdef __cplusplus
3760}
3761#endif
3762int main(){nm_test_var='a';nm_test_func();return(0);}
3763_LT_EOF
b9668ba4 3764
5c706339
AK
3765 if AC_TRY_EVAL(ac_compile); then
3766 # Now try to grab the symbols.
3767 nlist=conftest.nm
059850b5 3768 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
5c706339
AK
3769 # Try sorting and uniquifying the output.
3770 if sort "$nlist" | uniq > "$nlist"T; then
3771 mv -f "$nlist"T "$nlist"
3772 else
3773 rm -f "$nlist"T
3774 fi
b9668ba4 3775
5c706339
AK
3776 # Make sure that we snagged all the symbols we need.
3777 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3778 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3779 cat <<_LT_EOF > conftest.$ac_ext
059850b5
AK
3780/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
3781#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
3782/* DATA imports from DLLs on WIN32 con't be const, because runtime
3783 relocations are performed -- see ld's documentation on pseudo-relocs. */
3784# define LT@&t@_DLSYM_CONST
3785#elif defined(__osf__)
3786/* This system does not cope well with relocations in const data. */
3787# define LT@&t@_DLSYM_CONST
3788#else
3789# define LT@&t@_DLSYM_CONST const
3790#endif
3791
5c706339
AK
3792#ifdef __cplusplus
3793extern "C" {
3794#endif
b9668ba4 3795
5c706339
AK
3796_LT_EOF
3797 # Now generate the symbol file.
3798 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
b9668ba4 3799
5c706339 3800 cat <<_LT_EOF >> conftest.$ac_ext
b9668ba4 3801
5c706339 3802/* The mapping between symbol names and symbols. */
059850b5 3803LT@&t@_DLSYM_CONST struct {
5c706339
AK
3804 const char *name;
3805 void *address;
3806}
3807lt__PROGRAM__LTX_preloaded_symbols[[]] =
3808{
3809 { "@PROGRAM@", (void *) 0 },
3810_LT_EOF
3811 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3812 cat <<\_LT_EOF >> conftest.$ac_ext
3813 {0, (void *) 0}
3814};
3815
3816/* This works around a problem in FreeBSD linker */
3817#ifdef FREEBSD_WORKAROUND
3818static const void *lt_preloaded_setup() {
3819 return lt__PROGRAM__LTX_preloaded_symbols;
3820}
3821#endif
3822
3823#ifdef __cplusplus
3824}
3825#endif
3826_LT_EOF
3827 # Now try linking the two files.
3828 mv conftest.$ac_objext conftstm.$ac_objext
059850b5
AK
3829 lt_globsym_save_LIBS=$LIBS
3830 lt_globsym_save_CFLAGS=$CFLAGS
5c706339
AK
3831 LIBS="conftstm.$ac_objext"
3832 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3833 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3834 pipe_works=yes
3835 fi
059850b5
AK
3836 LIBS=$lt_globsym_save_LIBS
3837 CFLAGS=$lt_globsym_save_CFLAGS
b9668ba4 3838 else
5c706339 3839 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
b9668ba4 3840 fi
b9668ba4 3841 else
5c706339 3842 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
b9668ba4 3843 fi
5c706339
AK
3844 else
3845 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
b9668ba4 3846 fi
5c706339
AK
3847 else
3848 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3849 cat conftest.$ac_ext >&5
3850 fi
3851 rm -rf conftest* conftst*
b9668ba4 3852
5c706339
AK
3853 # Do not use the global_symbol_pipe unless it works.
3854 if test "$pipe_works" = yes; then
3855 break
3856 else
3857 lt_cv_sys_global_symbol_pipe=
3858 fi
3859done
3860])
3861if test -z "$lt_cv_sys_global_symbol_pipe"; then
3862 lt_cv_sys_global_symbol_to_cdecl=
3863fi
3864if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3865 AC_MSG_RESULT(failed)
3866else
3867 AC_MSG_RESULT(ok)
3868fi
b9668ba4 3869
059850b5
AK
3870# Response file support.
3871if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3872 nm_file_list_spec='@'
3873elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
3874 nm_file_list_spec='@'
3875fi
3876
5c706339
AK
3877_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3878 [Take the output of nm and produce a listing of raw symbols and C names])
3879_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3880 [Transform the output of nm in a proper C declaration])
3881_LT_DECL([global_symbol_to_c_name_address],
3882 [lt_cv_sys_global_symbol_to_c_name_address], [1],
3883 [Transform the output of nm in a C name address pair])
3884_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3885 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3886 [Transform the output of nm in a C name address pair when lib prefix is needed])
059850b5
AK
3887_LT_DECL([], [nm_file_list_spec], [1],
3888 [Specify filename containing input files for $NM])
5c706339 3889]) # _LT_CMD_GLOBAL_SYMBOLS
b9668ba4 3890
b9668ba4 3891
5c706339
AK
3892# _LT_COMPILER_PIC([TAGNAME])
3893# ---------------------------
3894m4_defun([_LT_COMPILER_PIC],
3895[m4_require([_LT_TAG_COMPILER])dnl
3896_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3897_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3898_LT_TAGVAR(lt_prog_compiler_static, $1)=
b9668ba4 3899
5c706339
AK
3900m4_if([$1], [CXX], [
3901 # C++ specific cases for pic, static, wl, etc.
3902 if test "$GXX" = yes; then
3903 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3904 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
3905
3906 case $host_os in
3907 aix*)
3908 # All AIX code is PIC.
3909 if test "$host_cpu" = ia64; then
3910 # AIX 5 now supports IA64 processor
3911 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4
AK
3912 fi
3913 ;;
b9668ba4 3914
5c706339 3915 amigaos*)
b9668ba4 3916 case $host_cpu in
5c706339
AK
3917 powerpc)
3918 # see comment about AmigaOS4 .so support
3919 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
b9668ba4 3920 ;;
5c706339
AK
3921 m68k)
3922 # FIXME: we need at least 68020 code to build shared libraries, but
3923 # adding the `-m68020' flag to GCC prevents building anything better,
3924 # like `-m68040'.
3925 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
b9668ba4
AK
3926 ;;
3927 esac
b9668ba4 3928 ;;
b9668ba4 3929
5c706339
AK
3930 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
3931 # PIC is the default for these OSes.
3932 ;;
47dc80f6 3933 mingw* | cygwin* | os2* | pw32* | cegcc*)
5c706339
AK
3934 # This hack is so that the source file can tell whether it is being
3935 # built for inclusion in a dll (and should export symbols for example).
3936 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3937 # (--disable-auto-import) libraries
3938 m4_if([$1], [GCJ], [],
3939 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3940 ;;
3941 darwin* | rhapsody*)
3942 # PIC is the default on this platform
3943 # Common symbols not allowed in MH_DYLIB files
3944 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
3945 ;;
3946 *djgpp*)
3947 # DJGPP does not support shared libraries at all
3948 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3949 ;;
059850b5
AK
3950 haiku*)
3951 # PIC is the default for Haiku.
3952 # The "-static" flag exists, but is broken.
3953 _LT_TAGVAR(lt_prog_compiler_static, $1)=
3954 ;;
5c706339
AK
3955 interix[[3-9]]*)
3956 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3957 # Instead, we relocate shared libraries at runtime.
3958 ;;
3959 sysv4*MP*)
3960 if test -d /usr/nec; then
3961 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
3962 fi
3963 ;;
3964 hpux*)
47dc80f6
AK
3965 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3966 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3967 # sets the default TLS model and affects inlining.
5c706339 3968 case $host_cpu in
47dc80f6 3969 hppa*64*)
b9668ba4
AK
3970 ;;
3971 *)
5c706339 3972 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
b9668ba4 3973 ;;
5c706339
AK
3974 esac
3975 ;;
3976 *qnx* | *nto*)
3977 # QNX uses GNU C++, but need to define -shared option too, otherwise
3978 # it will coredump.
3979 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3980 ;;
3981 *)
3982 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3983 ;;
b9668ba4 3984 esac
5c706339
AK
3985 else
3986 case $host_os in
3987 aix[[4-9]]*)
3988 # All AIX code is PIC.
3989 if test "$host_cpu" = ia64; then
3990 # AIX 5 now supports IA64 processor
3991 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4 3992 else
5c706339 3993 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
b9668ba4
AK
3994 fi
3995 ;;
5c706339
AK
3996 chorus*)
3997 case $cc_basename in
3998 cxch68*)
3999 # Green Hills C++ Compiler
4000 # _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"
4001 ;;
4002 esac
b9668ba4 4003 ;;
059850b5
AK
4004 mingw* | cygwin* | os2* | pw32* | cegcc*)
4005 # This hack is so that the source file can tell whether it is being
4006 # built for inclusion in a dll (and should export symbols for example).
4007 m4_if([$1], [GCJ], [],
4008 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4009 ;;
5c706339
AK
4010 dgux*)
4011 case $cc_basename in
4012 ec++*)
4013 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4014 ;;
4015 ghcx*)
4016 # Green Hills C++ Compiler
4017 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4018 ;;
4019 *)
4020 ;;
4021 esac
b9668ba4 4022 ;;
5c706339
AK
4023 freebsd* | dragonfly*)
4024 # FreeBSD uses GNU C++
b9668ba4 4025 ;;
5c706339
AK
4026 hpux9* | hpux10* | hpux11*)
4027 case $cc_basename in
4028 CC*)
4029 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4030 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4031 if test "$host_cpu" != ia64; then
4032 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4033 fi
4034 ;;
4035 aCC*)
4036 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4037 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4038 case $host_cpu in
4039 hppa*64*|ia64*)
4040 # +Z the default
4041 ;;
4042 *)
4043 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4044 ;;
4045 esac
4046 ;;
b9668ba4 4047 *)
b9668ba4
AK
4048 ;;
4049 esac
b9668ba4 4050 ;;
5c706339
AK
4051 interix*)
4052 # This is c89, which is MS Visual C++ (no shared libs)
4053 # Anyone wants to do a port?
b9668ba4 4054 ;;
5c706339
AK
4055 irix5* | irix6* | nonstopux*)
4056 case $cc_basename in
4057 CC*)
4058 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4059 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4060 # CC pic flag -KPIC is the default.
4061 ;;
4062 *)
4063 ;;
4064 esac
b9668ba4 4065 ;;
0fbeb4dc 4066 linux* | k*bsd*-gnu | kopensolaris*-gnu)
5c706339
AK
4067 case $cc_basename in
4068 KCC*)
4069 # KAI C++ Compiler
4070 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4071 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4072 ;;
47dc80f6
AK
4073 ecpc* )
4074 # old Intel C++ for x86_64 which still supported -KPIC.
5c706339
AK
4075 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4076 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4077 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4078 ;;
47dc80f6
AK
4079 icpc* )
4080 # Intel C++, used to be incompatible with GCC.
4081 # ICC 10 doesn't accept -KPIC any more.
4082 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4083 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4084 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4085 ;;
5c706339
AK
4086 pgCC* | pgcpp*)
4087 # Portland Group C++ compiler
4088 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4089 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4090 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4091 ;;
4092 cxx*)
4093 # Compaq C++
4094 # Make sure the PIC flag is empty. It appears that all Alpha
4095 # Linux and Compaq Tru64 Unix objects are PIC.
4096 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4097 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4098 ;;
059850b5
AK
4099 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4100 # IBM XL 8.0, 9.0 on PPC and BlueGene
5c706339
AK
4101 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4102 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4103 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4104 ;;
4105 *)
4106 case `$CC -V 2>&1 | sed 5q` in
4107 *Sun\ C*)
4108 # Sun C++ 5.9
4109 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4110 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4111 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4112 ;;
4113 esac
4114 ;;
4115 esac
b9668ba4 4116 ;;
5c706339 4117 lynxos*)
b9668ba4 4118 ;;
5c706339 4119 m88k*)
b9668ba4 4120 ;;
5c706339
AK
4121 mvs*)
4122 case $cc_basename in
4123 cxx*)
4124 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4125 ;;
4126 *)
4127 ;;
4128 esac
b9668ba4 4129 ;;
5c706339
AK
4130 netbsd* | netbsdelf*-gnu)
4131 ;;
4132 *qnx* | *nto*)
4133 # QNX uses GNU C++, but need to define -shared option too, otherwise
4134 # it will coredump.
4135 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4136 ;;
4137 osf3* | osf4* | osf5*)
4138 case $cc_basename in
4139 KCC*)
4140 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4141 ;;
4142 RCC*)
4143 # Rational C++ 2.4.1
4144 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4145 ;;
4146 cxx*)
4147 # Digital/Compaq C++
4148 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4149 # Make sure the PIC flag is empty. It appears that all Alpha
4150 # Linux and Compaq Tru64 Unix objects are PIC.
4151 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4152 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4153 ;;
4154 *)
4155 ;;
4156 esac
4157 ;;
4158 psos*)
4159 ;;
4160 solaris*)
4161 case $cc_basename in
059850b5 4162 CC* | sunCC*)
5c706339
AK
4163 # Sun C++ 4.2, 5.x and Centerline C++
4164 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4165 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4166 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4167 ;;
4168 gcx*)
4169 # Green Hills C++ Compiler
4170 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4171 ;;
4172 *)
4173 ;;
4174 esac
4175 ;;
4176 sunos4*)
4177 case $cc_basename in
4178 CC*)
4179 # Sun C++ 4.x
4180 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4181 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4182 ;;
4183 lcc*)
4184 # Lucid
4185 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4186 ;;
4187 *)
4188 ;;
4189 esac
4190 ;;
4191 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4192 case $cc_basename in
4193 CC*)
4194 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4195 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4196 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4197 ;;
4198 esac
4199 ;;
4200 tandem*)
4201 case $cc_basename in
4202 NCC*)
4203 # NonStop-UX NCC 3.20
4204 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4205 ;;
4206 *)
4207 ;;
4208 esac
4209 ;;
4210 vxworks*)
4211 ;;
4212 *)
4213 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
b9668ba4
AK
4214 ;;
4215 esac
b9668ba4 4216 fi
5c706339
AK
4217],
4218[
4219 if test "$GCC" = yes; then
4220 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4221 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
b9668ba4 4222
5c706339
AK
4223 case $host_os in
4224 aix*)
4225 # All AIX code is PIC.
4226 if test "$host_cpu" = ia64; then
4227 # AIX 5 now supports IA64 processor
4228 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4229 fi
4230 ;;
b9668ba4 4231
5c706339
AK
4232 amigaos*)
4233 case $host_cpu in
4234 powerpc)
4235 # see comment about AmigaOS4 .so support
4236 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4237 ;;
4238 m68k)
4239 # FIXME: we need at least 68020 code to build shared libraries, but
4240 # adding the `-m68020' flag to GCC prevents building anything better,
4241 # like `-m68040'.
4242 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4243 ;;
4244 esac
4245 ;;
b9668ba4 4246
5c706339
AK
4247 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4248 # PIC is the default for these OSes.
4249 ;;
b9668ba4 4250
47dc80f6 4251 mingw* | cygwin* | pw32* | os2* | cegcc*)
5c706339
AK
4252 # This hack is so that the source file can tell whether it is being
4253 # built for inclusion in a dll (and should export symbols for example).
4254 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4255 # (--disable-auto-import) libraries
4256 m4_if([$1], [GCJ], [],
4257 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4258 ;;
b9668ba4 4259
5c706339
AK
4260 darwin* | rhapsody*)
4261 # PIC is the default on this platform
4262 # Common symbols not allowed in MH_DYLIB files
4263 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4264 ;;
b9668ba4 4265
059850b5
AK
4266 haiku*)
4267 # PIC is the default for Haiku.
4268 # The "-static" flag exists, but is broken.
4269 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4270 ;;
4271
5c706339 4272 hpux*)
47dc80f6
AK
4273 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4274 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4275 # sets the default TLS model and affects inlining.
5c706339 4276 case $host_cpu in
47dc80f6 4277 hppa*64*)
5c706339
AK
4278 # +Z the default
4279 ;;
4280 *)
4281 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4282 ;;
4283 esac
4284 ;;
b9668ba4 4285
5c706339
AK
4286 interix[[3-9]]*)
4287 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4288 # Instead, we relocate shared libraries at runtime.
4289 ;;
b9668ba4 4290
5c706339
AK
4291 msdosdjgpp*)
4292 # Just because we use GCC doesn't mean we suddenly get shared libraries
4293 # on systems that don't support them.
4294 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4295 enable_shared=no
4296 ;;
b9668ba4 4297
5c706339
AK
4298 *nto* | *qnx*)
4299 # QNX uses GNU C++, but need to define -shared option too, otherwise
4300 # it will coredump.
4301 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4302 ;;
b9668ba4 4303
5c706339
AK
4304 sysv4*MP*)
4305 if test -d /usr/nec; then
4306 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4307 fi
4308 ;;
b9668ba4 4309
5c706339
AK
4310 *)
4311 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4312 ;;
4313 esac
059850b5
AK
4314
4315 case $cc_basename in
4316 nvcc*) # Cuda Compiler Driver 2.2
4317 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4318 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4319 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4320 fi
4321 ;;
4322 esac
5c706339
AK
4323 else
4324 # PORTME Check for flag to pass linker flags through the system compiler.
4325 case $host_os in
4326 aix*)
4327 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4328 if test "$host_cpu" = ia64; then
4329 # AIX 5 now supports IA64 processor
4330 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4331 else
4332 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4333 fi
4334 ;;
b9668ba4 4335
47dc80f6 4336 mingw* | cygwin* | pw32* | os2* | cegcc*)
5c706339
AK
4337 # This hack is so that the source file can tell whether it is being
4338 # built for inclusion in a dll (and should export symbols for example).
4339 m4_if([$1], [GCJ], [],
4340 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4341 ;;
b9668ba4 4342
5c706339
AK
4343 hpux9* | hpux10* | hpux11*)
4344 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4345 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4346 # not for PA HP-UX.
4347 case $host_cpu in
4348 hppa*64*|ia64*)
4349 # +Z the default
4350 ;;
4351 *)
4352 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4353 ;;
4354 esac
4355 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4356 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4357 ;;
b9668ba4 4358
5c706339
AK
4359 irix5* | irix6* | nonstopux*)
4360 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4361 # PIC (with -KPIC) is the default.
4362 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4363 ;;
b9668ba4 4364
0fbeb4dc 4365 linux* | k*bsd*-gnu | kopensolaris*-gnu)
5c706339 4366 case $cc_basename in
47dc80f6
AK
4367 # old Intel for x86_64 which still supported -KPIC.
4368 ecc*)
5c706339
AK
4369 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4370 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4371 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4372 ;;
47dc80f6
AK
4373 # icc used to be incompatible with GCC.
4374 # ICC 10 doesn't accept -KPIC any more.
4375 icc* | ifort*)
4376 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4377 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4378 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4379 ;;
4380 # Lahey Fortran 8.1.
4381 lf95*)
4382 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4383 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4384 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4385 ;;
059850b5
AK
4386 nagfor*)
4387 # NAG Fortran compiler
4388 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4389 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4390 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4391 ;;
4392 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
5c706339
AK
4393 # Portland Group compilers (*not* the Pentium gcc compiler,
4394 # which looks to be a dead project)
4395 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4396 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4397 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4398 ;;
4399 ccc*)
4400 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4401 # All Alpha code is PIC.
4402 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4403 ;;
059850b5
AK
4404 xl* | bgxl* | bgf* | mpixl*)
4405 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
5c706339
AK
4406 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4407 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4408 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4409 ;;
4410 *)
4411 case `$CC -V 2>&1 | sed 5q` in
059850b5
AK
4412 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4413 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4414 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4415 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4416 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4417 ;;
4418 *Sun\ F* | *Sun*Fortran*)
4419 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4420 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4421 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4422 ;;
5c706339
AK
4423 *Sun\ C*)
4424 # Sun C 5.9
4425 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4426 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4427 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4428 ;;
059850b5
AK
4429 *Intel*\ [[CF]]*Compiler*)
4430 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4431 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4432 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4433 ;;
4434 *Portland\ Group*)
4435 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4436 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
5c706339 4437 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5c706339
AK
4438 ;;
4439 esac
4440 ;;
4441 esac
4442 ;;
b9668ba4 4443
5c706339
AK
4444 newsos6)
4445 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4446 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4447 ;;
b9668ba4 4448
5c706339
AK
4449 *nto* | *qnx*)
4450 # QNX uses GNU C++, but need to define -shared option too, otherwise
4451 # it will coredump.
4452 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4453 ;;
b9668ba4 4454
5c706339
AK
4455 osf3* | osf4* | osf5*)
4456 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4457 # All OSF/1 code is PIC.
4458 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4459 ;;
b9668ba4 4460
5c706339
AK
4461 rdos*)
4462 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4463 ;;
b9668ba4 4464
5c706339
AK
4465 solaris*)
4466 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4467 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4468 case $cc_basename in
059850b5 4469 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
5c706339
AK
4470 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4471 *)
4472 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4473 esac
4474 ;;
b9668ba4 4475
5c706339
AK
4476 sunos4*)
4477 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4478 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4479 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4480 ;;
b9668ba4 4481
5c706339
AK
4482 sysv4 | sysv4.2uw2* | sysv4.3*)
4483 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4484 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4485 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4486 ;;
b9668ba4 4487
5c706339
AK
4488 sysv4*MP*)
4489 if test -d /usr/nec ;then
4490 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4491 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4492 fi
4493 ;;
b9668ba4 4494
5c706339
AK
4495 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4496 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4497 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4498 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4499 ;;
b9668ba4 4500
5c706339
AK
4501 unicos*)
4502 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4503 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4504 ;;
b9668ba4 4505
5c706339
AK
4506 uts4*)
4507 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4508 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4 4509 ;;
5c706339 4510
b9668ba4 4511 *)
5c706339 4512 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
b9668ba4
AK
4513 ;;
4514 esac
5c706339
AK
4515 fi
4516])
4517case $host_os in
4518 # For platforms which do not support PIC, -DPIC is meaningless:
4519 *djgpp*)
4520 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
b9668ba4 4521 ;;
5c706339
AK
4522 *)
4523 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4524 ;;
4525esac
059850b5
AK
4526
4527AC_CACHE_CHECK([for $compiler option to produce PIC],
4528 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4529 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4530_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
b9668ba4 4531
b9668ba4 4532#
5c706339 4533# Check to make sure the PIC flag actually works.
b9668ba4 4534#
5c706339
AK
4535if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4536 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4537 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4538 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4539 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4540 "" | " "*) ;;
4541 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4542 esac],
4543 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4544 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4545fi
4546_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4547 [Additional compiler flags for building library objects])
4548
059850b5
AK
4549_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4550 [How to pass a linker flag through the compiler])
b9668ba4 4551#
5c706339 4552# Check to make sure the static flag actually works.
b9668ba4 4553#
5c706339
AK
4554wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4555_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4556 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4557 $lt_tmp_static_flag,
4558 [],
4559 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4560_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4561 [Compiler flag to prevent dynamic linking])
4562])# _LT_COMPILER_PIC
b9668ba4 4563
b9668ba4 4564
5c706339
AK
4565# _LT_LINKER_SHLIBS([TAGNAME])
4566# ----------------------------
4567# See if the linker supports building shared libraries.
4568m4_defun([_LT_LINKER_SHLIBS],
4569[AC_REQUIRE([LT_PATH_LD])dnl
4570AC_REQUIRE([LT_PATH_NM])dnl
059850b5 4571m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5c706339
AK
4572m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4573m4_require([_LT_DECL_EGREP])dnl
4574m4_require([_LT_DECL_SED])dnl
4575m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4576m4_require([_LT_TAG_COMPILER])dnl
4577AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4578m4_if([$1], [CXX], [
4579 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
059850b5 4580 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5c706339
AK
4581 case $host_os in
4582 aix[[4-9]]*)
4583 # If we're using GNU nm, then we don't want the "-C" option.
4584 # -C means demangle to AIX nm, but means don't demangle with GNU nm
059850b5
AK
4585 # Also, AIX nm treats weak defined symbols like other global defined
4586 # symbols, whereas GNU nm marks them as "W".
5c706339 4587 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
059850b5 4588 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
5c706339
AK
4589 else
4590 _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'
4591 fi
4592 ;;
4593 pw32*)
4594 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
059850b5 4595 ;;
47dc80f6 4596 cygwin* | mingw* | cegcc*)
059850b5
AK
4597 case $cc_basename in
4598 cl*)
4599 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4600 ;;
4601 *)
4602 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4603 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4604 ;;
4605 esac
4606 ;;
4607 linux* | k*bsd*-gnu | gnu*)
5c706339 4608 _LT_TAGVAR(link_all_deplibs, $1)=no
059850b5 4609 ;;
5c706339
AK
4610 *)
4611 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
059850b5 4612 ;;
5c706339 4613 esac
5c706339
AK
4614], [
4615 runpath_var=
4616 _LT_TAGVAR(allow_undefined_flag, $1)=
4617 _LT_TAGVAR(always_export_symbols, $1)=no
4618 _LT_TAGVAR(archive_cmds, $1)=
4619 _LT_TAGVAR(archive_expsym_cmds, $1)=
4620 _LT_TAGVAR(compiler_needs_object, $1)=no
4621 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4622 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4623 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4624 _LT_TAGVAR(hardcode_automatic, $1)=no
4625 _LT_TAGVAR(hardcode_direct, $1)=no
4626 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4627 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5c706339
AK
4628 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4629 _LT_TAGVAR(hardcode_minus_L, $1)=no
4630 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4631 _LT_TAGVAR(inherit_rpath, $1)=no
4632 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4633 _LT_TAGVAR(module_cmds, $1)=
4634 _LT_TAGVAR(module_expsym_cmds, $1)=
4635 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4636 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4637 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4638 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4639 # include_expsyms should be a list of space-separated symbols to be *always*
4640 # included in the symbol list
4641 _LT_TAGVAR(include_expsyms, $1)=
4642 # exclude_expsyms can be an extended regexp of symbols to exclude
4643 # it will be wrapped by ` (' and `)$', so one must not match beginning or
4644 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4645 # as well as any symbol that contains `d'.
4646 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4647 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4648 # platforms (ab)use it in PIC code, but their linkers get confused if
4649 # the symbol is explicitly referenced. Since portable code cannot
4650 # rely on this symbol name, it's probably fine to never include it in
4651 # preloaded symbol tables.
4652 # Exclude shared library initialization/finalization symbols.
4653dnl Note also adjust exclude_expsyms for C++ above.
4654 extract_expsyms_cmds=
b9668ba4 4655
5c706339 4656 case $host_os in
47dc80f6 4657 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
4658 # FIXME: the MSVC++ port hasn't been tested in a loooong time
4659 # When not using gcc, we currently assume that we are using
4660 # Microsoft Visual C++.
4661 if test "$GCC" != yes; then
4662 with_gnu_ld=no
4663 fi
4664 ;;
4665 interix*)
4666 # we just hope/assume this is gcc and not c89 (= MSVC++)
4667 with_gnu_ld=yes
4668 ;;
4669 openbsd*)
4670 with_gnu_ld=no
4671 ;;
059850b5 4672 linux* | k*bsd*-gnu | gnu*)
0fbeb4dc
AK
4673 _LT_TAGVAR(link_all_deplibs, $1)=no
4674 ;;
5c706339 4675 esac
b9668ba4 4676
5c706339 4677 _LT_TAGVAR(ld_shlibs, $1)=yes
059850b5
AK
4678
4679 # On some targets, GNU ld is compatible enough with the native linker
4680 # that we're better off using the native interface for both.
4681 lt_use_gnu_ld_interface=no
5c706339 4682 if test "$with_gnu_ld" = yes; then
059850b5
AK
4683 case $host_os in
4684 aix*)
4685 # The AIX port of GNU ld has always aspired to compatibility
4686 # with the native linker. However, as the warning in the GNU ld
4687 # block says, versions before 2.19.5* couldn't really create working
4688 # shared libraries, regardless of the interface used.
4689 case `$LD -v 2>&1` in
4690 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
4691 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
4692 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
4693 *)
4694 lt_use_gnu_ld_interface=yes
4695 ;;
4696 esac
4697 ;;
4698 *)
4699 lt_use_gnu_ld_interface=yes
4700 ;;
4701 esac
4702 fi
4703
4704 if test "$lt_use_gnu_ld_interface" = yes; then
5c706339
AK
4705 # If archive_cmds runs LD, not CC, wlarc should be empty
4706 wlarc='${wl}'
b9668ba4 4707
5c706339
AK
4708 # Set some defaults for GNU ld with shared library support. These
4709 # are reset later if shared libraries are not supported. Putting them
4710 # here allows them to be overridden if necessary.
4711 runpath_var=LD_RUN_PATH
4712 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4713 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
4714 # ancient GNU ld didn't support --whole-archive et. al.
4715 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4716 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4717 else
4718 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4719 fi
4720 supports_anon_versioning=no
4721 case `$LD -v 2>&1` in
0fbeb4dc 4722 *GNU\ gold*) supports_anon_versioning=yes ;;
5c706339
AK
4723 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4724 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4725 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4726 *\ 2.11.*) ;; # other 2.11 versions
4727 *) supports_anon_versioning=yes ;;
4728 esac
b9668ba4 4729
5c706339
AK
4730 # See if GNU ld supports shared libraries.
4731 case $host_os in
4732 aix[[3-9]]*)
4733 # On AIX/PPC, the GNU linker is very broken
4734 if test "$host_cpu" != ia64; then
4735 _LT_TAGVAR(ld_shlibs, $1)=no
4736 cat <<_LT_EOF 1>&2
b9668ba4 4737
059850b5 4738*** Warning: the GNU linker, at least up to release 2.19, is reported
5c706339
AK
4739*** to be unable to reliably create shared libraries on AIX.
4740*** Therefore, libtool is disabling shared libraries support. If you
059850b5
AK
4741*** really care for shared libraries, you may want to install binutils
4742*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
4743*** You will then need to restart the configuration process.
b9668ba4 4744
5c706339
AK
4745_LT_EOF
4746 fi
4747 ;;
b9668ba4 4748
5c706339
AK
4749 amigaos*)
4750 case $host_cpu in
4751 powerpc)
4752 # see comment about AmigaOS4 .so support
4753 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4754 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4755 ;;
4756 m68k)
4757 _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)'
4758 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4759 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4760 ;;
4761 esac
4762 ;;
b9668ba4 4763
5c706339
AK
4764 beos*)
4765 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4766 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4767 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4768 # support --undefined. This deserves some investigation. FIXME
4769 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4770 else
4771 _LT_TAGVAR(ld_shlibs, $1)=no
4772 fi
4773 ;;
b9668ba4 4774
47dc80f6 4775 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
4776 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
4777 # as there is no search path for DLLs.
4778 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
059850b5 4779 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
5c706339
AK
4780 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4781 _LT_TAGVAR(always_export_symbols, $1)=no
4782 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
059850b5
AK
4783 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4784 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5c706339
AK
4785
4786 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4787 _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'
4788 # If the export-symbols file already is a .def file (1st line
4789 # is EXPORTS), use it as is; otherwise, prepend...
4790 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
4791 cp $export_symbols $output_objdir/$soname.def;
4792 else
4793 echo EXPORTS > $output_objdir/$soname.def;
4794 cat $export_symbols >> $output_objdir/$soname.def;
4795 fi~
4796 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4797 else
4798 _LT_TAGVAR(ld_shlibs, $1)=no
4799 fi
4800 ;;
b9668ba4 4801
059850b5
AK
4802 haiku*)
4803 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4804 _LT_TAGVAR(link_all_deplibs, $1)=yes
4805 ;;
4806
5c706339
AK
4807 interix[[3-9]]*)
4808 _LT_TAGVAR(hardcode_direct, $1)=no
4809 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4810 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4811 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4812 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4813 # Instead, shared libraries are loaded at an image base (0x10000000 by
4814 # default) and relocated if they conflict, which is a slow very memory
4815 # consuming and fragmenting process. To avoid this, we pick a random,
4816 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4817 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
4818 _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'
4819 _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'
4820 ;;
b9668ba4 4821
0fbeb4dc 4822 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5c706339
AK
4823 tmp_diet=no
4824 if test "$host_os" = linux-dietlibc; then
4825 case $cc_basename in
4826 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
4827 esac
4828 fi
4829 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4830 && test "$tmp_diet" = no
4831 then
059850b5 4832 tmp_addflag=' $pic_flag'
5c706339
AK
4833 tmp_sharedflag='-shared'
4834 case $cc_basename,$host_cpu in
4835 pgcc*) # Portland Group C compiler
059850b5 4836 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
5c706339
AK
4837 tmp_addflag=' $pic_flag'
4838 ;;
059850b5
AK
4839 pgf77* | pgf90* | pgf95* | pgfortran*)
4840 # Portland Group f77 and f90 compilers
4841 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
5c706339
AK
4842 tmp_addflag=' $pic_flag -Mnomain' ;;
4843 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
4844 tmp_addflag=' -i_dynamic' ;;
4845 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
4846 tmp_addflag=' -i_dynamic -nofor_main' ;;
4847 ifc* | ifort*) # Intel Fortran compiler
4848 tmp_addflag=' -nofor_main' ;;
47dc80f6
AK
4849 lf95*) # Lahey Fortran 8.1
4850 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4851 tmp_sharedflag='--shared' ;;
059850b5 4852 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5c706339
AK
4853 tmp_sharedflag='-qmkshrobj'
4854 tmp_addflag= ;;
059850b5
AK
4855 nvcc*) # Cuda Compiler Driver 2.2
4856 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4857 _LT_TAGVAR(compiler_needs_object, $1)=yes
4858 ;;
5c706339
AK
4859 esac
4860 case `$CC -V 2>&1 | sed 5q` in
4861 *Sun\ C*) # Sun C 5.9
059850b5 4862 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
5c706339
AK
4863 _LT_TAGVAR(compiler_needs_object, $1)=yes
4864 tmp_sharedflag='-G' ;;
4865 *Sun\ F*) # Sun Fortran 8.3
4866 tmp_sharedflag='-G' ;;
4867 esac
4868 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
b9668ba4 4869
5c706339
AK
4870 if test "x$supports_anon_versioning" = xyes; then
4871 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4872 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4873 echo "local: *; };" >> $output_objdir/$libname.ver~
4874 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4875 fi
b9668ba4 4876
5c706339 4877 case $cc_basename in
059850b5 4878 xlf* | bgf* | bgxlf* | mpixlf*)
5c706339
AK
4879 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4880 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
059850b5
AK
4881 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4882 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5c706339
AK
4883 if test "x$supports_anon_versioning" = xyes; then
4884 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4885 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4886 echo "local: *; };" >> $output_objdir/$libname.ver~
059850b5 4887 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5c706339
AK
4888 fi
4889 ;;
4890 esac
4891 else
4892 _LT_TAGVAR(ld_shlibs, $1)=no
4893 fi
4894 ;;
b9668ba4 4895
5c706339
AK
4896 netbsd* | netbsdelf*-gnu)
4897 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4898 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
4899 wlarc=
4900 else
059850b5
AK
4901 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4902 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5c706339
AK
4903 fi
4904 ;;
b9668ba4 4905
5c706339
AK
4906 solaris*)
4907 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4908 _LT_TAGVAR(ld_shlibs, $1)=no
4909 cat <<_LT_EOF 1>&2
b9668ba4 4910
5c706339
AK
4911*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4912*** create shared libraries on Solaris systems. Therefore, libtool
4913*** is disabling shared libraries support. We urge you to upgrade GNU
4914*** binutils to release 2.9.1 or newer. Another option is to modify
4915*** your PATH or compiler configuration so that the native linker is
4916*** used, and then restart.
b9668ba4 4917
5c706339
AK
4918_LT_EOF
4919 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
059850b5
AK
4920 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4921 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5c706339
AK
4922 else
4923 _LT_TAGVAR(ld_shlibs, $1)=no
4924 fi
4925 ;;
b9668ba4 4926
5c706339
AK
4927 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4928 case `$LD -v 2>&1` in
4929 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
4930 _LT_TAGVAR(ld_shlibs, $1)=no
4931 cat <<_LT_EOF 1>&2
b9668ba4 4932
5c706339
AK
4933*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4934*** reliably create shared libraries on SCO systems. Therefore, libtool
4935*** is disabling shared libraries support. We urge you to upgrade GNU
4936*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
4937*** your PATH or compiler configuration so that the native linker is
4938*** used, and then restart.
b9668ba4 4939
5c706339
AK
4940_LT_EOF
4941 ;;
4942 *)
4943 # For security reasons, it is highly recommended that you always
4944 # use absolute paths for naming shared libraries, and exclude the
4945 # DT_RUNPATH tag from executables and libraries. But doing so
4946 # requires that you compile everything twice, which is a pain.
4947 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4948 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4949 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4950 _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'
4951 else
4952 _LT_TAGVAR(ld_shlibs, $1)=no
4953 fi
4954 ;;
4955 esac
4956 ;;
b9668ba4 4957
5c706339
AK
4958 sunos4*)
4959 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4960 wlarc=
4961 _LT_TAGVAR(hardcode_direct, $1)=yes
4962 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4963 ;;
b9668ba4 4964
5c706339
AK
4965 *)
4966 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
059850b5
AK
4967 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4968 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5c706339
AK
4969 else
4970 _LT_TAGVAR(ld_shlibs, $1)=no
4971 fi
4972 ;;
4973 esac
b9668ba4 4974
5c706339
AK
4975 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
4976 runpath_var=
4977 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4978 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4979 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4980 fi
4981 else
4982 # PORTME fill in a description of your system's linker (not GNU ld)
4983 case $host_os in
4984 aix3*)
4985 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4986 _LT_TAGVAR(always_export_symbols, $1)=yes
4987 _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'
4988 # Note: this linker hardcodes the directories in LIBPATH if there
4989 # are no directories specified by -L.
4990 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4991 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
4992 # Neither direct hardcoding nor static linking is supported with a
4993 # broken collect2.
4994 _LT_TAGVAR(hardcode_direct, $1)=unsupported
4995 fi
4996 ;;
b9668ba4 4997
5c706339
AK
4998 aix[[4-9]]*)
4999 if test "$host_cpu" = ia64; then
5000 # On IA64, the linker does run time linking by default, so we don't
5001 # have to do anything special.
5002 aix_use_runtimelinking=no
5003 exp_sym_flag='-Bexport'
5004 no_entry_flag=""
5005 else
5006 # If we're using GNU nm, then we don't want the "-C" option.
5007 # -C means demangle to AIX nm, but means don't demangle with GNU nm
059850b5
AK
5008 # Also, AIX nm treats weak defined symbols like other global
5009 # defined symbols, whereas GNU nm marks them as "W".
5c706339 5010 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
059850b5 5011 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
5c706339
AK
5012 else
5013 _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'
5014 fi
5015 aix_use_runtimelinking=no
b9668ba4 5016
5c706339
AK
5017 # Test if we are trying to use run time linking or normal
5018 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5019 # need to do runtime linking.
5020 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5021 for ld_flag in $LDFLAGS; do
5022 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
5023 aix_use_runtimelinking=yes
5024 break
5025 fi
5026 done
5027 ;;
5028 esac
b9668ba4 5029
5c706339
AK
5030 exp_sym_flag='-bexport'
5031 no_entry_flag='-bnoentry'
5032 fi
b9668ba4 5033
5c706339
AK
5034 # When large executables or shared objects are built, AIX ld can
5035 # have problems creating the table of contents. If linking a library
5036 # or program results in "error TOC overflow" add -mminimal-toc to
5037 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5038 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
b9668ba4 5039
5c706339
AK
5040 _LT_TAGVAR(archive_cmds, $1)=''
5041 _LT_TAGVAR(hardcode_direct, $1)=yes
5042 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5043 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5044 _LT_TAGVAR(link_all_deplibs, $1)=yes
5045 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
b9668ba4 5046
5c706339
AK
5047 if test "$GCC" = yes; then
5048 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5049 # We only want to do this on AIX 4.2 and lower, the check
5050 # below for broken collect2 doesn't work under 4.3+
5051 collect2name=`${CC} -print-prog-name=collect2`
5052 if test -f "$collect2name" &&
5053 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5054 then
5055 # We have reworked collect2
5056 :
5057 else
5058 # We have old collect2
5059 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5060 # It fails to find uninstalled libraries when the uninstalled
5061 # path is not listed in the libpath. Setting hardcode_minus_L
5062 # to unsupported forces relinking
5063 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5064 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5065 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5066 fi
5067 ;;
5068 esac
5069 shared_flag='-shared'
5070 if test "$aix_use_runtimelinking" = yes; then
5071 shared_flag="$shared_flag "'${wl}-G'
5072 fi
5073 _LT_TAGVAR(link_all_deplibs, $1)=no
5074 else
5075 # not using gcc
5076 if test "$host_cpu" = ia64; then
5077 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5078 # chokes on -Wl,-G. The following line is correct:
5079 shared_flag='-G'
5080 else
5081 if test "$aix_use_runtimelinking" = yes; then
5082 shared_flag='${wl}-G'
5083 else
5084 shared_flag='${wl}-bM:SRE'
5085 fi
5086 fi
5087 fi
b9668ba4 5088
47dc80f6 5089 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
5c706339
AK
5090 # It seems that -bexpall does not export symbols beginning with
5091 # underscore (_), so it is better to generate a list of symbols to export.
5092 _LT_TAGVAR(always_export_symbols, $1)=yes
5093 if test "$aix_use_runtimelinking" = yes; then
5094 # Warning - without using the other runtime loading flags (-brtl),
5095 # -berok will link without error, but may produce a broken library.
5096 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5097 # Determine the default libpath from the value encoded in an
5098 # empty executable.
059850b5 5099 _LT_SYS_MODULE_PATH_AIX([$1])
5c706339 5100 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
059850b5 5101 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
5c706339
AK
5102 else
5103 if test "$host_cpu" = ia64; then
5104 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5105 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5106 _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"
5107 else
5108 # Determine the default libpath from the value encoded in an
5109 # empty executable.
059850b5 5110 _LT_SYS_MODULE_PATH_AIX([$1])
5c706339
AK
5111 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5112 # Warning - without using the other run time loading flags,
5113 # -berok will link without error, but may produce a broken library.
5114 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5115 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
059850b5
AK
5116 if test "$with_gnu_ld" = yes; then
5117 # We only use this code for GNU lds that support --whole-archive.
5118 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5119 else
5120 # Exported symbols can be pulled into shared objects from archives
5121 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5122 fi
5c706339
AK
5123 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5124 # This is similar to how AIX traditionally builds its shared libraries.
5125 _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'
5126 fi
5127 fi
5128 ;;
b9668ba4 5129
5c706339
AK
5130 amigaos*)
5131 case $host_cpu in
5132 powerpc)
5133 # see comment about AmigaOS4 .so support
5134 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5135 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5136 ;;
5137 m68k)
5138 _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)'
5139 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5140 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5141 ;;
5142 esac
5143 ;;
b9668ba4 5144
5c706339
AK
5145 bsdi[[45]]*)
5146 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5147 ;;
b9668ba4 5148
47dc80f6 5149 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
5150 # When not using gcc, we currently assume that we are using
5151 # Microsoft Visual C++.
5152 # hardcode_libdir_flag_spec is actually meaningless, as there is
5153 # no search path for DLLs.
059850b5
AK
5154 case $cc_basename in
5155 cl*)
5156 # Native MSVC
5157 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5158 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5159 _LT_TAGVAR(always_export_symbols, $1)=yes
5160 _LT_TAGVAR(file_list_spec, $1)='@'
5161 # Tell ltmain to make .lib files, not .a files.
5162 libext=lib
5163 # Tell ltmain to make .dll files, not .so files.
5164 shrext_cmds=".dll"
5165 # FIXME: Setting linknames here is a bad hack.
5166 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
5167 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5168 sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
5169 else
5170 sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
5171 fi~
5172 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5173 linknames='
5174 # The linker will not automatically build a static lib if we build a DLL.
5175 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5176 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5177 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5178 _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'
5179 # Don't use ranlib
5180 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5181 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5182 lt_tool_outputfile="@TOOL_OUTPUT@"~
5183 case $lt_outputfile in
5184 *.exe|*.EXE) ;;
5185 *)
5186 lt_outputfile="$lt_outputfile.exe"
5187 lt_tool_outputfile="$lt_tool_outputfile.exe"
5188 ;;
5189 esac~
5190 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
5191 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5192 $RM "$lt_outputfile.manifest";
5193 fi'
5194 ;;
5195 *)
5196 # Assume MSVC wrapper
5197 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5198 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5199 # Tell ltmain to make .lib files, not .a files.
5200 libext=lib
5201 # Tell ltmain to make .dll files, not .so files.
5202 shrext_cmds=".dll"
5203 # FIXME: Setting linknames here is a bad hack.
5204 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5205 # The linker will automatically build a .lib file if we build a DLL.
5206 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5207 # FIXME: Should let the user specify the lib program.
5208 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5209 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5210 ;;
5211 esac
5c706339 5212 ;;
b9668ba4 5213
5c706339
AK
5214 darwin* | rhapsody*)
5215 _LT_DARWIN_LINKER_FEATURES($1)
5216 ;;
b9668ba4 5217
5c706339
AK
5218 dgux*)
5219 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5220 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5221 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5222 ;;
b9668ba4 5223
5c706339
AK
5224 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5225 # support. Future versions do this automatically, but an explicit c++rt0.o
5226 # does not break anything, and helps significantly (at the cost of a little
5227 # extra space).
5228 freebsd2.2*)
5229 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5230 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5231 _LT_TAGVAR(hardcode_direct, $1)=yes
5232 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5233 ;;
b9668ba4 5234
5c706339 5235 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
059850b5 5236 freebsd2.*)
5c706339
AK
5237 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5238 _LT_TAGVAR(hardcode_direct, $1)=yes
5239 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5240 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5241 ;;
b9668ba4 5242
5c706339
AK
5243 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5244 freebsd* | dragonfly*)
059850b5 5245 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5246 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5247 _LT_TAGVAR(hardcode_direct, $1)=yes
5248 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5249 ;;
b9668ba4 5250
5c706339
AK
5251 hpux9*)
5252 if test "$GCC" = yes; then
059850b5 5253 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5c706339
AK
5254 else
5255 _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'
5256 fi
5257 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5258 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5259 _LT_TAGVAR(hardcode_direct, $1)=yes
b9668ba4 5260
5c706339
AK
5261 # hardcode_minus_L: Not really in the search PATH,
5262 # but as the default location of the library.
5263 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5264 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5265 ;;
b9668ba4 5266
5c706339 5267 hpux10*)
059850b5
AK
5268 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5269 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5270 else
5271 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5272 fi
5273 if test "$with_gnu_ld" = no; then
5274 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5c706339
AK
5275 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5276 _LT_TAGVAR(hardcode_direct, $1)=yes
5277 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5278 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5279 # hardcode_minus_L: Not really in the search PATH,
5280 # but as the default location of the library.
5281 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5282 fi
5283 ;;
b9668ba4 5284
5c706339 5285 hpux11*)
059850b5 5286 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5c706339
AK
5287 case $host_cpu in
5288 hppa*64*)
5289 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5290 ;;
5291 ia64*)
059850b5 5292 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5293 ;;
5294 *)
059850b5 5295 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5296 ;;
5297 esac
5298 else
5299 case $host_cpu in
5300 hppa*64*)
5301 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5302 ;;
5303 ia64*)
5304 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5305 ;;
5306 *)
059850b5
AK
5307 m4_if($1, [], [
5308 # Older versions of the 11.00 compiler do not understand -b yet
5309 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5310 _LT_LINKER_OPTION([if $CC understands -b],
5311 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5312 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5313 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5314 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5c706339
AK
5315 ;;
5316 esac
5317 fi
5318 if test "$with_gnu_ld" = no; then
5319 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5320 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
b9668ba4 5321
5c706339
AK
5322 case $host_cpu in
5323 hppa*64*|ia64*)
5324 _LT_TAGVAR(hardcode_direct, $1)=no
5325 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5326 ;;
5327 *)
5328 _LT_TAGVAR(hardcode_direct, $1)=yes
5329 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5330 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
b9668ba4 5331
5c706339
AK
5332 # hardcode_minus_L: Not really in the search PATH,
5333 # but as the default location of the library.
5334 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5335 ;;
5336 esac
5337 fi
5338 ;;
b9668ba4 5339
5c706339
AK
5340 irix5* | irix6* | nonstopux*)
5341 if test "$GCC" = yes; then
059850b5 5342 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5c706339
AK
5343 # Try to use the -exported_symbol ld option, if it does not
5344 # work, assume that -exports_file does not work either and
5345 # implicitly export all symbols.
059850b5
AK
5346 # This should be the same for all languages, so no per-tag cache variable.
5347 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5348 [lt_cv_irix_exported_symbol],
5349 [save_LDFLAGS="$LDFLAGS"
5350 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
5351 AC_LINK_IFELSE(
5352 [AC_LANG_SOURCE(
5353 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5354 [C++], [[int foo (void) { return 0; }]],
5355 [Fortran 77], [[
5356 subroutine foo
5357 end]],
5358 [Fortran], [[
5359 subroutine foo
5360 end]])])],
5361 [lt_cv_irix_exported_symbol=yes],
5362 [lt_cv_irix_exported_symbol=no])
5363 LDFLAGS="$save_LDFLAGS"])
5364 if test "$lt_cv_irix_exported_symbol" = yes; then
5365 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
5366 fi
5c706339 5367 else
059850b5
AK
5368 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5369 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
5c706339
AK
5370 fi
5371 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5372 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5373 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5374 _LT_TAGVAR(inherit_rpath, $1)=yes
5375 _LT_TAGVAR(link_all_deplibs, $1)=yes
5376 ;;
b9668ba4 5377
5c706339
AK
5378 netbsd* | netbsdelf*-gnu)
5379 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5380 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5381 else
5382 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5383 fi
5384 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5385 _LT_TAGVAR(hardcode_direct, $1)=yes
5386 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5387 ;;
b9668ba4 5388
5c706339
AK
5389 newsos6)
5390 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5391 _LT_TAGVAR(hardcode_direct, $1)=yes
5392 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5393 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5394 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5395 ;;
b9668ba4 5396
5c706339
AK
5397 *nto* | *qnx*)
5398 ;;
b9668ba4 5399
5c706339
AK
5400 openbsd*)
5401 if test -f /usr/libexec/ld.so; then
5402 _LT_TAGVAR(hardcode_direct, $1)=yes
5403 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5404 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5405 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
5406 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5407 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
5408 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5409 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5410 else
5411 case $host_os in
5412 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
5413 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5414 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5415 ;;
5416 *)
5417 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5418 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5419 ;;
5420 esac
5421 fi
5422 else
5423 _LT_TAGVAR(ld_shlibs, $1)=no
5424 fi
5425 ;;
b9668ba4 5426
5c706339
AK
5427 os2*)
5428 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5429 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5430 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
059850b5 5431 _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'
5c706339
AK
5432 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
5433 ;;
b9668ba4 5434
5c706339
AK
5435 osf3*)
5436 if test "$GCC" = yes; then
5437 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
059850b5 5438 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5c706339
AK
5439 else
5440 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
059850b5 5441 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5c706339
AK
5442 fi
5443 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5444 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5445 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5446 ;;
b9668ba4 5447
5c706339
AK
5448 osf4* | osf5*) # as osf3* with the addition of -msym flag
5449 if test "$GCC" = yes; then
5450 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
059850b5 5451 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5c706339
AK
5452 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5453 else
5454 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
059850b5 5455 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5c706339 5456 _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~
059850b5 5457 $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
b9668ba4 5458
5c706339
AK
5459 # Both c and cxx compiler support -rpath directly
5460 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5461 fi
5462 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5463 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5464 ;;
b9668ba4 5465
5c706339
AK
5466 solaris*)
5467 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5468 if test "$GCC" = yes; then
5469 wlarc='${wl}'
059850b5 5470 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5c706339 5471 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
059850b5 5472 $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5c706339
AK
5473 else
5474 case `$CC -V 2>&1` in
5475 *"Compilers 5.0"*)
5476 wlarc=''
5477 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5478 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5479 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5480 ;;
5481 *)
5482 wlarc='${wl}'
5483 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5484 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5485 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5486 ;;
5487 esac
5488 fi
5489 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5490 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5491 case $host_os in
5492 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5493 *)
5494 # The compiler driver will combine and reorder linker options,
5495 # but understands `-z linker_flag'. GCC discards it without `$wl',
5496 # but is careful enough not to reorder.
5497 # Supported since Solaris 2.6 (maybe 2.5.1?)
5498 if test "$GCC" = yes; then
5499 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
5500 else
5501 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5502 fi
5503 ;;
5504 esac
5505 _LT_TAGVAR(link_all_deplibs, $1)=yes
5506 ;;
b9668ba4 5507
5c706339
AK
5508 sunos4*)
5509 if test "x$host_vendor" = xsequent; then
5510 # Use $CC to link under sequent, because it throws in some extra .o
5511 # files that make .init and .fini sections work.
5512 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5513 else
5514 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5515 fi
5516 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5517 _LT_TAGVAR(hardcode_direct, $1)=yes
5518 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5519 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5520 ;;
b9668ba4 5521
5c706339
AK
5522 sysv4)
5523 case $host_vendor in
5524 sni)
5525 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5526 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5527 ;;
5528 siemens)
5529 ## LD is ld it makes a PLAMLIB
5530 ## CC just makes a GrossModule.
5531 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5532 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5533 _LT_TAGVAR(hardcode_direct, $1)=no
5534 ;;
5535 motorola)
5536 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5537 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5538 ;;
5539 esac
5540 runpath_var='LD_RUN_PATH'
5541 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5542 ;;
b9668ba4 5543
5c706339
AK
5544 sysv4.3*)
5545 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5546 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5547 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5548 ;;
b9668ba4 5549
5c706339
AK
5550 sysv4*MP*)
5551 if test -d /usr/nec; then
5552 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5553 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5554 runpath_var=LD_RUN_PATH
5555 hardcode_runpath_var=yes
5556 _LT_TAGVAR(ld_shlibs, $1)=yes
5557 fi
5558 ;;
b9668ba4 5559
5c706339
AK
5560 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
5561 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5562 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5563 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5564 runpath_var='LD_RUN_PATH'
b9668ba4 5565
5c706339
AK
5566 if test "$GCC" = yes; then
5567 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5568 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5569 else
5570 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5571 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5572 fi
5573 ;;
b9668ba4 5574
5c706339
AK
5575 sysv5* | sco3.2v5* | sco5v6*)
5576 # Note: We can NOT use -z defs as we might desire, because we do not
5577 # link with -lc, and that would cause any symbols used from libc to
5578 # always be unresolved, which means just about no library would
5579 # ever link correctly. If we're not using GNU ld we use -z text
5580 # though, which does catch some bad symbols but isn't as heavy-handed
5581 # as -z defs.
5582 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5583 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5584 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5585 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5586 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5587 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5588 _LT_TAGVAR(link_all_deplibs, $1)=yes
5589 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
5590 runpath_var='LD_RUN_PATH'
b9668ba4 5591
5c706339
AK
5592 if test "$GCC" = yes; then
5593 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5594 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5595 else
5596 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5597 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5598 fi
5599 ;;
b9668ba4 5600
5c706339
AK
5601 uts4*)
5602 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5603 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5604 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5605 ;;
b9668ba4 5606
5c706339
AK
5607 *)
5608 _LT_TAGVAR(ld_shlibs, $1)=no
5609 ;;
5610 esac
b9668ba4 5611
5c706339
AK
5612 if test x$host_vendor = xsni; then
5613 case $host in
5614 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5615 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5616 ;;
5617 esac
5618 fi
5619 fi
5620])
5621AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5622test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
b9668ba4 5623
5c706339 5624_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
b9668ba4 5625
5c706339
AK
5626_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5627_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5628_LT_DECL([], [extract_expsyms_cmds], [2],
5629 [The commands to extract the exported symbol list from a shared archive])
b9668ba4 5630
5c706339
AK
5631#
5632# Do we need to explicitly link libc?
5633#
5634case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
5635x|xyes)
5636 # Assume -lc should be added
5637 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
b9668ba4 5638
5c706339
AK
5639 if test "$enable_shared" = yes && test "$GCC" = yes; then
5640 case $_LT_TAGVAR(archive_cmds, $1) in
5641 *'~'*)
5642 # FIXME: we may have to deal with multi-command sequences.
5643 ;;
5644 '$CC '*)
5645 # Test whether the compiler implicitly links with -lc since on some
5646 # systems, -lgcc has to come before -lc. If gcc already passes -lc
5647 # to ld, don't add -lc before -lgcc.
059850b5
AK
5648 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
5649 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
5650 [$RM conftest*
5651 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5652
5653 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5654 soname=conftest
5655 lib=conftest
5656 libobjs=conftest.$ac_objext
5657 deplibs=
5658 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5659 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5660 compiler_flags=-v
5661 linker_flags=-v
5662 verstring=
5663 output_objdir=.
5664 libname=conftest
5665 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5666 _LT_TAGVAR(allow_undefined_flag, $1)=
5667 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5668 then
5669 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5670 else
5671 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5672 fi
5673 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5674 else
5675 cat conftest.err 1>&5
5676 fi
5677 $RM conftest*
5678 ])
5679 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
5c706339
AK
5680 ;;
5681 esac
5682 fi
5683 ;;
5684esac
b9668ba4 5685
5c706339
AK
5686_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5687 [Whether or not to add -lc for building shared libraries])
5688_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5689 [enable_shared_with_static_runtimes], [0],
5690 [Whether or not to disallow shared libs when runtime libs are static])
5691_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5692 [Compiler flag to allow reflexive dlopens])
5693_LT_TAGDECL([], [whole_archive_flag_spec], [1],
5694 [Compiler flag to generate shared objects directly from archives])
5695_LT_TAGDECL([], [compiler_needs_object], [1],
5696 [Whether the compiler copes with passing no objects directly])
5697_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5698 [Create an old-style archive from a shared archive])
5699_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5700 [Create a temporary old-style archive to link instead of a shared archive])
5701_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5702_LT_TAGDECL([], [archive_expsym_cmds], [2])
5703_LT_TAGDECL([], [module_cmds], [2],
5704 [Commands used to build a loadable module if different from building
5705 a shared archive.])
5706_LT_TAGDECL([], [module_expsym_cmds], [2])
5707_LT_TAGDECL([], [with_gnu_ld], [1],
5708 [Whether we are building with GNU ld or not])
5709_LT_TAGDECL([], [allow_undefined_flag], [1],
5710 [Flag that allows shared libraries with undefined symbols to be built])
5711_LT_TAGDECL([], [no_undefined_flag], [1],
5712 [Flag that enforces no undefined symbols])
5713_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5714 [Flag to hardcode $libdir into a binary during linking.
5715 This must work even if $libdir does not exist])
5c706339
AK
5716_LT_TAGDECL([], [hardcode_libdir_separator], [1],
5717 [Whether we need a single "-rpath" flag with a separated argument])
5718_LT_TAGDECL([], [hardcode_direct], [0],
5719 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5720 DIR into the resulting binary])
5721_LT_TAGDECL([], [hardcode_direct_absolute], [0],
5722 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5723 DIR into the resulting binary and the resulting library dependency is
5724 "absolute", i.e impossible to change by setting ${shlibpath_var} if the
5725 library is relocated])
5726_LT_TAGDECL([], [hardcode_minus_L], [0],
5727 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5728 into the resulting binary])
5729_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5730 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5731 into the resulting binary])
5732_LT_TAGDECL([], [hardcode_automatic], [0],
5733 [Set to "yes" if building a shared library automatically hardcodes DIR
5734 into the library and all subsequent libraries and executables linked
5735 against it])
5736_LT_TAGDECL([], [inherit_rpath], [0],
5737 [Set to yes if linker adds runtime paths of dependent libraries
5738 to runtime path list])
5739_LT_TAGDECL([], [link_all_deplibs], [0],
5740 [Whether libtool must link a program against all its dependency libraries])
5c706339
AK
5741_LT_TAGDECL([], [always_export_symbols], [0],
5742 [Set to "yes" if exported symbols are required])
5743_LT_TAGDECL([], [export_symbols_cmds], [2],
5744 [The commands to list exported symbols])
5745_LT_TAGDECL([], [exclude_expsyms], [1],
5746 [Symbols that should not be listed in the preloaded symbols])
5747_LT_TAGDECL([], [include_expsyms], [1],
5748 [Symbols that must always be exported])
5749_LT_TAGDECL([], [prelink_cmds], [2],
5750 [Commands necessary for linking programs (against libraries) with templates])
059850b5
AK
5751_LT_TAGDECL([], [postlink_cmds], [2],
5752 [Commands necessary for finishing linking programs])
5c706339
AK
5753_LT_TAGDECL([], [file_list_spec], [1],
5754 [Specify filename containing input files])
5755dnl FIXME: Not yet implemented
5756dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5757dnl [Compiler flag to generate thread safe objects])
5758])# _LT_LINKER_SHLIBS
5759
5760
5761# _LT_LANG_C_CONFIG([TAG])
5762# ------------------------
5763# Ensure that the configuration variables for a C compiler are suitably
5764# defined. These variables are subsequently used by _LT_CONFIG to write
5765# the compiler configuration to `libtool'.
5766m4_defun([_LT_LANG_C_CONFIG],
5767[m4_require([_LT_DECL_EGREP])dnl
5768lt_save_CC="$CC"
5769AC_LANG_PUSH(C)
b9668ba4 5770
5c706339
AK
5771# Source file extension for C test sources.
5772ac_ext=c
b9668ba4 5773
5c706339
AK
5774# Object file extension for compiled C test sources.
5775objext=o
5776_LT_TAGVAR(objext, $1)=$objext
b9668ba4 5777
5c706339
AK
5778# Code to be used in simple compile tests
5779lt_simple_compile_test_code="int some_variable = 0;"
b9668ba4 5780
5c706339
AK
5781# Code to be used in simple link tests
5782lt_simple_link_test_code='int main(){return(0);}'
b9668ba4 5783
5c706339
AK
5784_LT_TAG_COMPILER
5785# Save the default compiler, since it gets overwritten when the other
5786# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5787compiler_DEFAULT=$CC
b9668ba4 5788
5c706339
AK
5789# save warnings/boilerplate of simple test code
5790_LT_COMPILER_BOILERPLATE
5791_LT_LINKER_BOILERPLATE
b9668ba4 5792
5c706339
AK
5793if test -n "$compiler"; then
5794 _LT_COMPILER_NO_RTTI($1)
5795 _LT_COMPILER_PIC($1)
5796 _LT_COMPILER_C_O($1)
5797 _LT_COMPILER_FILE_LOCKS($1)
5798 _LT_LINKER_SHLIBS($1)
5799 _LT_SYS_DYNAMIC_LINKER($1)
5800 _LT_LINKER_HARDCODE_LIBPATH($1)
5801 LT_SYS_DLOPEN_SELF
5802 _LT_CMD_STRIPLIB
5803
5804 # Report which library types will actually be built
5805 AC_MSG_CHECKING([if libtool supports shared libraries])
5806 AC_MSG_RESULT([$can_build_shared])
5807
5808 AC_MSG_CHECKING([whether to build shared libraries])
5809 test "$can_build_shared" = "no" && enable_shared=no
5810
5811 # On AIX, shared libraries and static libraries use the same namespace, and
5812 # are all built from PIC.
b9668ba4
AK
5813 case $host_os in
5814 aix3*)
5c706339
AK
5815 test "$enable_shared" = yes && enable_static=no
5816 if test -n "$RANLIB"; then
5817 archive_cmds="$archive_cmds~\$RANLIB \$lib"
5818 postinstall_cmds='$RANLIB $lib'
5819 fi
5820 ;;
b9668ba4 5821
5c706339
AK
5822 aix[[4-9]]*)
5823 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5824 test "$enable_shared" = yes && enable_static=no
5825 fi
b9668ba4
AK
5826 ;;
5827 esac
5c706339 5828 AC_MSG_RESULT([$enable_shared])
b9668ba4 5829
5c706339
AK
5830 AC_MSG_CHECKING([whether to build static libraries])
5831 # Make sure either enable_shared or enable_static is yes.
5832 test "$enable_shared" = yes || enable_static=yes
5833 AC_MSG_RESULT([$enable_static])
b9668ba4 5834
5c706339 5835 _LT_CONFIG($1)
b9668ba4 5836fi
5c706339
AK
5837AC_LANG_POP
5838CC="$lt_save_CC"
5839])# _LT_LANG_C_CONFIG
b9668ba4
AK
5840
5841
5c706339
AK
5842# _LT_LANG_CXX_CONFIG([TAG])
5843# --------------------------
5844# Ensure that the configuration variables for a C++ compiler are suitably
5845# defined. These variables are subsequently used by _LT_CONFIG to write
5846# the compiler configuration to `libtool'.
5847m4_defun([_LT_LANG_CXX_CONFIG],
059850b5 5848[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5c706339 5849m4_require([_LT_DECL_EGREP])dnl
059850b5
AK
5850m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5851if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5852 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5853 (test "X$CXX" != "Xg++"))) ; then
5854 AC_PROG_CXXCPP
5855else
5856 _lt_caught_CXX_error=yes
5857fi
5c706339
AK
5858
5859AC_LANG_PUSH(C++)
5860_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5861_LT_TAGVAR(allow_undefined_flag, $1)=
5862_LT_TAGVAR(always_export_symbols, $1)=no
5863_LT_TAGVAR(archive_expsym_cmds, $1)=
5864_LT_TAGVAR(compiler_needs_object, $1)=no
5865_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5866_LT_TAGVAR(hardcode_direct, $1)=no
5867_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5868_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5c706339
AK
5869_LT_TAGVAR(hardcode_libdir_separator, $1)=
5870_LT_TAGVAR(hardcode_minus_L, $1)=no
5871_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5872_LT_TAGVAR(hardcode_automatic, $1)=no
5873_LT_TAGVAR(inherit_rpath, $1)=no
5874_LT_TAGVAR(module_cmds, $1)=
5875_LT_TAGVAR(module_expsym_cmds, $1)=
5876_LT_TAGVAR(link_all_deplibs, $1)=unknown
5877_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
059850b5
AK
5878_LT_TAGVAR(reload_flag, $1)=$reload_flag
5879_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
5880_LT_TAGVAR(no_undefined_flag, $1)=
5881_LT_TAGVAR(whole_archive_flag_spec, $1)=
5882_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
b9668ba4 5883
5c706339
AK
5884# Source file extension for C++ test sources.
5885ac_ext=cpp
5886
5887# Object file extension for compiled C++ test sources.
5888objext=o
5889_LT_TAGVAR(objext, $1)=$objext
5890
5891# No sense in running all these tests if we already determined that
5892# the CXX compiler isn't working. Some variables (like enable_shared)
5893# are currently assumed to apply to all compilers on this platform,
5894# and will be corrupted by setting them based on a non-working compiler.
5895if test "$_lt_caught_CXX_error" != yes; then
5896 # Code to be used in simple compile tests
5897 lt_simple_compile_test_code="int some_variable = 0;"
5898
5899 # Code to be used in simple link tests
5900 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5901
5902 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
5903 _LT_TAG_COMPILER
5904
5905 # save warnings/boilerplate of simple test code
5906 _LT_COMPILER_BOILERPLATE
5907 _LT_LINKER_BOILERPLATE
5908
5909 # Allow CC to be a program name with arguments.
5910 lt_save_CC=$CC
059850b5 5911 lt_save_CFLAGS=$CFLAGS
5c706339
AK
5912 lt_save_LD=$LD
5913 lt_save_GCC=$GCC
5914 GCC=$GXX
5915 lt_save_with_gnu_ld=$with_gnu_ld
5916 lt_save_path_LD=$lt_cv_path_LD
5917 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5918 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
b9668ba4 5919 else
5c706339 5920 $as_unset lt_cv_prog_gnu_ld
b9668ba4 5921 fi
5c706339
AK
5922 if test -n "${lt_cv_path_LDCXX+set}"; then
5923 lt_cv_path_LD=$lt_cv_path_LDCXX
b9668ba4 5924 else
5c706339 5925 $as_unset lt_cv_path_LD
b9668ba4 5926 fi
5c706339
AK
5927 test -z "${LDCXX+set}" || LD=$LDCXX
5928 CC=${CXX-"c++"}
059850b5 5929 CFLAGS=$CXXFLAGS
5c706339
AK
5930 compiler=$CC
5931 _LT_TAGVAR(compiler, $1)=$CC
5932 _LT_CC_BASENAME([$compiler])
b9668ba4 5933
5c706339
AK
5934 if test -n "$compiler"; then
5935 # We don't want -fno-exception when compiling C++ code, so set the
5936 # no_builtin_flag separately
5937 if test "$GXX" = yes; then
5938 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5939 else
5940 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5941 fi
b9668ba4 5942
5c706339
AK
5943 if test "$GXX" = yes; then
5944 # Set up default GNU C++ configuration
b9668ba4 5945
5c706339 5946 LT_PATH_LD
b9668ba4 5947
5c706339
AK
5948 # Check if GNU C++ uses GNU ld as the underlying linker, since the
5949 # archiving commands below assume that GNU ld is being used.
5950 if test "$with_gnu_ld" = yes; then
059850b5
AK
5951 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5952 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
5c706339
AK
5953
5954 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5955 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5956
5957 # If archive_cmds runs LD, not CC, wlarc should be empty
5958 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5959 # investigate it a little bit more. (MM)
5960 wlarc='${wl}'
5961
5962 # ancient GNU ld didn't support --whole-archive et. al.
5963 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5964 $GREP 'no-whole-archive' > /dev/null; then
5965 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5966 else
5967 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5968 fi
5969 else
5970 with_gnu_ld=no
5971 wlarc=
5972
5973 # A generic and very simple default shared library creation
5974 # command for GNU C++ for the case where it uses the native
5975 # linker, instead of GNU ld. If possible, this setting should
5976 # overridden to take advantage of the native linker features on
5977 # the platform it is being used on.
5978 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
b9668ba4 5979 fi
5c706339
AK
5980
5981 # Commands to make compiler produce verbose output that lists
5982 # what "hidden" libraries, object files and flags are used when
5983 # linking a shared library.
059850b5 5984 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
5985
5986 else
5987 GXX=no
5988 with_gnu_ld=no
5989 wlarc=
5990 fi
5991
5992 # PORTME: fill in a description of your system's C++ link characteristics
5993 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5994 _LT_TAGVAR(ld_shlibs, $1)=yes
b9668ba4 5995 case $host_os in
5c706339
AK
5996 aix3*)
5997 # FIXME: insert proper C++ library support
5998 _LT_TAGVAR(ld_shlibs, $1)=no
5999 ;;
6000 aix[[4-9]]*)
6001 if test "$host_cpu" = ia64; then
6002 # On IA64, the linker does run time linking by default, so we don't
6003 # have to do anything special.
6004 aix_use_runtimelinking=no
6005 exp_sym_flag='-Bexport'
6006 no_entry_flag=""
6007 else
6008 aix_use_runtimelinking=no
6009
6010 # Test if we are trying to use run time linking or normal
6011 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6012 # need to do runtime linking.
6013 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6014 for ld_flag in $LDFLAGS; do
6015 case $ld_flag in
6016 *-brtl*)
6017 aix_use_runtimelinking=yes
6018 break
6019 ;;
6020 esac
6021 done
6022 ;;
6023 esac
6024
6025 exp_sym_flag='-bexport'
6026 no_entry_flag='-bnoentry'
6027 fi
6028
6029 # When large executables or shared objects are built, AIX ld can
6030 # have problems creating the table of contents. If linking a library
6031 # or program results in "error TOC overflow" add -mminimal-toc to
6032 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6033 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6034
6035 _LT_TAGVAR(archive_cmds, $1)=''
6036 _LT_TAGVAR(hardcode_direct, $1)=yes
6037 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6038 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6039 _LT_TAGVAR(link_all_deplibs, $1)=yes
6040 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
6041
6042 if test "$GXX" = yes; then
6043 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6044 # We only want to do this on AIX 4.2 and lower, the check
6045 # below for broken collect2 doesn't work under 4.3+
6046 collect2name=`${CC} -print-prog-name=collect2`
6047 if test -f "$collect2name" &&
6048 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6049 then
6050 # We have reworked collect2
6051 :
6052 else
6053 # We have old collect2
6054 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6055 # It fails to find uninstalled libraries when the uninstalled
6056 # path is not listed in the libpath. Setting hardcode_minus_L
6057 # to unsupported forces relinking
6058 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6059 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6060 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6061 fi
6062 esac
6063 shared_flag='-shared'
6064 if test "$aix_use_runtimelinking" = yes; then
6065 shared_flag="$shared_flag "'${wl}-G'
6066 fi
6067 else
6068 # not using gcc
6069 if test "$host_cpu" = ia64; then
6070 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6071 # chokes on -Wl,-G. The following line is correct:
6072 shared_flag='-G'
6073 else
6074 if test "$aix_use_runtimelinking" = yes; then
6075 shared_flag='${wl}-G'
6076 else
6077 shared_flag='${wl}-bM:SRE'
6078 fi
6079 fi
6080 fi
6081
47dc80f6 6082 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
5c706339
AK
6083 # It seems that -bexpall does not export symbols beginning with
6084 # underscore (_), so it is better to generate a list of symbols to
6085 # export.
6086 _LT_TAGVAR(always_export_symbols, $1)=yes
6087 if test "$aix_use_runtimelinking" = yes; then
6088 # Warning - without using the other runtime loading flags (-brtl),
6089 # -berok will link without error, but may produce a broken library.
6090 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
6091 # Determine the default libpath from the value encoded in an empty
6092 # executable.
059850b5 6093 _LT_SYS_MODULE_PATH_AIX([$1])
5c706339
AK
6094 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6095
059850b5 6096 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
5c706339
AK
6097 else
6098 if test "$host_cpu" = ia64; then
6099 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6100 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6101 _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"
6102 else
6103 # Determine the default libpath from the value encoded in an
6104 # empty executable.
059850b5 6105 _LT_SYS_MODULE_PATH_AIX([$1])
5c706339
AK
6106 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6107 # Warning - without using the other run time loading flags,
6108 # -berok will link without error, but may produce a broken library.
6109 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6110 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
059850b5
AK
6111 if test "$with_gnu_ld" = yes; then
6112 # We only use this code for GNU lds that support --whole-archive.
6113 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6114 else
6115 # Exported symbols can be pulled into shared objects from archives
6116 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6117 fi
5c706339
AK
6118 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6119 # This is similar to how AIX traditionally builds its shared
6120 # libraries.
6121 _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'
6122 fi
6123 fi
6124 ;;
6125
6126 beos*)
6127 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6128 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6129 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6130 # support --undefined. This deserves some investigation. FIXME
6131 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
b9668ba4 6132 else
5c706339 6133 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
6134 fi
6135 ;;
5c706339 6136
b9668ba4 6137 chorus*)
5c706339
AK
6138 case $cc_basename in
6139 *)
6140 # FIXME: insert proper C++ library support
6141 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6142 ;;
5c706339
AK
6143 esac
6144 ;;
6145
47dc80f6 6146 cygwin* | mingw* | pw32* | cegcc*)
059850b5
AK
6147 case $GXX,$cc_basename in
6148 ,cl* | no,cl*)
6149 # Native MSVC
6150 # hardcode_libdir_flag_spec is actually meaningless, as there is
6151 # no search path for DLLs.
6152 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6153 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6154 _LT_TAGVAR(always_export_symbols, $1)=yes
6155 _LT_TAGVAR(file_list_spec, $1)='@'
6156 # Tell ltmain to make .lib files, not .a files.
6157 libext=lib
6158 # Tell ltmain to make .dll files, not .so files.
6159 shrext_cmds=".dll"
6160 # FIXME: Setting linknames here is a bad hack.
6161 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6162 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6163 $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6164 else
6165 $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6166 fi~
6167 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6168 linknames='
6169 # The linker will not automatically build a static lib if we build a DLL.
6170 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6171 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6172 # Don't use ranlib
6173 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6174 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6175 lt_tool_outputfile="@TOOL_OUTPUT@"~
6176 case $lt_outputfile in
6177 *.exe|*.EXE) ;;
6178 *)
6179 lt_outputfile="$lt_outputfile.exe"
6180 lt_tool_outputfile="$lt_tool_outputfile.exe"
6181 ;;
6182 esac~
6183 func_to_tool_file "$lt_outputfile"~
6184 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6185 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6186 $RM "$lt_outputfile.manifest";
6187 fi'
6188 ;;
6189 *)
6190 # g++
6191 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6192 # as there is no search path for DLLs.
6193 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6194 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
6195 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6196 _LT_TAGVAR(always_export_symbols, $1)=no
6197 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6198
6199 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6200 _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'
6201 # If the export-symbols file already is a .def file (1st line
6202 # is EXPORTS), use it as is; otherwise, prepend...
6203 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6204 cp $export_symbols $output_objdir/$soname.def;
6205 else
6206 echo EXPORTS > $output_objdir/$soname.def;
6207 cat $export_symbols >> $output_objdir/$soname.def;
6208 fi~
6209 $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'
6210 else
6211 _LT_TAGVAR(ld_shlibs, $1)=no
6212 fi
6213 ;;
6214 esac
6215 ;;
5c706339
AK
6216 darwin* | rhapsody*)
6217 _LT_DARWIN_LINKER_FEATURES($1)
b9668ba4 6218 ;;
5c706339 6219
b9668ba4 6220 dgux*)
5c706339
AK
6221 case $cc_basename in
6222 ec++*)
6223 # FIXME: insert proper C++ library support
6224 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6225 ;;
5c706339 6226 ghcx*)
b9668ba4 6227 # Green Hills C++ Compiler
5c706339
AK
6228 # FIXME: insert proper C++ library support
6229 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6230 ;;
5c706339
AK
6231 *)
6232 # FIXME: insert proper C++ library support
6233 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6234 ;;
5c706339
AK
6235 esac
6236 ;;
6237
059850b5 6238 freebsd2.*)
5c706339
AK
6239 # C++ shared libraries reported to be fairly broken before
6240 # switch to ELF
6241 _LT_TAGVAR(ld_shlibs, $1)=no
6242 ;;
6243
6244 freebsd-elf*)
6245 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6246 ;;
6247
b9668ba4 6248 freebsd* | dragonfly*)
5c706339
AK
6249 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6250 # conventions
6251 _LT_TAGVAR(ld_shlibs, $1)=yes
6252 ;;
6253
6254 gnu*)
6255 ;;
6256
059850b5
AK
6257 haiku*)
6258 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6259 _LT_TAGVAR(link_all_deplibs, $1)=yes
6260 ;;
6261
5c706339
AK
6262 hpux9*)
6263 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6264 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6265 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6266 _LT_TAGVAR(hardcode_direct, $1)=yes
6267 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6268 # but as the default
6269 # location of the library.
6270
6271 case $cc_basename in
6272 CC*)
6273 # FIXME: insert proper C++ library support
6274 _LT_TAGVAR(ld_shlibs, $1)=no
6275 ;;
6276 aCC*)
6277 _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'
6278 # Commands to make compiler produce verbose output that lists
6279 # what "hidden" libraries, object files and flags are used when
6280 # linking a shared library.
6281 #
6282 # There doesn't appear to be a way to prevent this compiler from
6283 # explicitly linking system object files so we need to strip them
6284 # from the output so that they don't get included in the library
6285 # dependencies.
059850b5 6286 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
5c706339
AK
6287 ;;
6288 *)
6289 if test "$GXX" = yes; then
059850b5 6290 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5c706339
AK
6291 else
6292 # FIXME: insert proper C++ library support
6293 _LT_TAGVAR(ld_shlibs, $1)=no
6294 fi
6295 ;;
6296 esac
6297 ;;
6298
6299 hpux10*|hpux11*)
6300 if test $with_gnu_ld = no; then
6301 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6302 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6303
6304 case $host_cpu in
6305 hppa*64*|ia64*)
6306 ;;
6307 *)
6308 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6309 ;;
6310 esac
6311 fi
6312 case $host_cpu in
6313 hppa*64*|ia64*)
6314 _LT_TAGVAR(hardcode_direct, $1)=no
6315 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6316 ;;
6317 *)
6318 _LT_TAGVAR(hardcode_direct, $1)=yes
6319 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6320 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6321 # but as the default
6322 # location of the library.
6323 ;;
6324 esac
6325
6326 case $cc_basename in
6327 CC*)
6328 # FIXME: insert proper C++ library support
6329 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6330 ;;
5c706339 6331 aCC*)
b9668ba4 6332 case $host_cpu in
5c706339
AK
6333 hppa*64*)
6334 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6335 ;;
6336 ia64*)
6337 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6338 ;;
6339 *)
6340 _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'
6341 ;;
b9668ba4 6342 esac
5c706339
AK
6343 # Commands to make compiler produce verbose output that lists
6344 # what "hidden" libraries, object files and flags are used when
6345 # linking a shared library.
6346 #
6347 # There doesn't appear to be a way to prevent this compiler from
6348 # explicitly linking system object files so we need to strip them
6349 # from the output so that they don't get included in the library
6350 # dependencies.
059850b5 6351 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
b9668ba4 6352 ;;
5c706339
AK
6353 *)
6354 if test "$GXX" = yes; then
6355 if test $with_gnu_ld = no; then
6356 case $host_cpu in
6357 hppa*64*)
6358 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6359 ;;
6360 ia64*)
059850b5 6361 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5c706339
AK
6362 ;;
6363 *)
059850b5 6364 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
5c706339
AK
6365 ;;
6366 esac
6367 fi
6368 else
6369 # FIXME: insert proper C++ library support
6370 _LT_TAGVAR(ld_shlibs, $1)=no
6371 fi
b9668ba4 6372 ;;
5c706339
AK
6373 esac
6374 ;;
6375
6376 interix[[3-9]]*)
6377 _LT_TAGVAR(hardcode_direct, $1)=no
6378 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6379 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6380 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6381 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6382 # Instead, shared libraries are loaded at an image base (0x10000000 by
6383 # default) and relocated if they conflict, which is a slow very memory
6384 # consuming and fragmenting process. To avoid this, we pick a random,
6385 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6386 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6387 _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'
6388 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
b9668ba4 6389 ;;
5c706339
AK
6390 irix5* | irix6*)
6391 case $cc_basename in
6392 CC*)
6393 # SGI C++
059850b5 6394 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5c706339
AK
6395
6396 # Archives containing C++ object files must be created using
6397 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6398 # necessary to make sure instantiated templates are included
6399 # in the archive.
6400 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
b9668ba4 6401 ;;
5c706339
AK
6402 *)
6403 if test "$GXX" = yes; then
6404 if test "$with_gnu_ld" = no; then
059850b5 6405 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5c706339 6406 else
059850b5 6407 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
5c706339
AK
6408 fi
6409 fi
6410 _LT_TAGVAR(link_all_deplibs, $1)=yes
b9668ba4 6411 ;;
5c706339
AK
6412 esac
6413 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6414 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6415 _LT_TAGVAR(inherit_rpath, $1)=yes
6416 ;;
6417
0fbeb4dc 6418 linux* | k*bsd*-gnu | kopensolaris*-gnu)
5c706339
AK
6419 case $cc_basename in
6420 KCC*)
6421 # Kuck and Associates, Inc. (KAI) C++ Compiler
6422
6423 # KCC will only create a shared library if the output file
6424 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6425 # to its proper name (with version) after linking.
6426 _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'
6427 _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'
6428 # Commands to make compiler produce verbose output that lists
6429 # what "hidden" libraries, object files and flags are used when
6430 # linking a shared library.
6431 #
6432 # There doesn't appear to be a way to prevent this compiler from
6433 # explicitly linking system object files so we need to strip them
6434 # from the output so that they don't get included in the library
6435 # dependencies.
059850b5 6436 output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
5c706339
AK
6437
6438 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6439 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6440
6441 # Archives containing C++ object files must be created using
6442 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6443 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
b9668ba4 6444 ;;
5c706339 6445 icpc* | ecpc* )
b9668ba4 6446 # Intel C++
5c706339
AK
6447 with_gnu_ld=yes
6448 # version 8.0 and above of icpc choke on multiply defined symbols
6449 # if we add $predep_objects and $postdep_objects, however 7.1 and
6450 # earlier do not add the objects themselves.
6451 case `$CC -V 2>&1` in
6452 *"Version 7."*)
6453 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6454 _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'
6455 ;;
6456 *) # Version 8.0 or newer
6457 tmp_idyn=
6458 case $host_cpu in
6459 ia64*) tmp_idyn=' -i_dynamic';;
6460 esac
6461 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6462 _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'
6463 ;;
6464 esac
6465 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6466 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6467 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6468 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
b9668ba4 6469 ;;
5c706339
AK
6470 pgCC* | pgcpp*)
6471 # Portland Group C++ compiler
6472 case `$CC -V` in
059850b5 6473 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
5c706339
AK
6474 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6475 rm -rf $tpldir~
6476 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
059850b5 6477 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
5c706339
AK
6478 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6479 rm -rf $tpldir~
6480 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
059850b5 6481 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
5c706339
AK
6482 $RANLIB $oldlib'
6483 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6484 rm -rf $tpldir~
6485 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
059850b5 6486 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
5c706339
AK
6487 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
6488 rm -rf $tpldir~
6489 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
059850b5 6490 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
5c706339 6491 ;;
059850b5 6492 *) # Version 6 and above use weak symbols
5c706339
AK
6493 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6494 _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'
6495 ;;
6496 esac
6497
6498 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6499 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
059850b5 6500 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
5c706339 6501 ;;
b9668ba4
AK
6502 cxx*)
6503 # Compaq C++
5c706339
AK
6504 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6505 _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'
6506
6507 runpath_var=LD_RUN_PATH
6508 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6509 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6510
6511 # Commands to make compiler produce verbose output that lists
6512 # what "hidden" libraries, object files and flags are used when
6513 # linking a shared library.
6514 #
6515 # There doesn't appear to be a way to prevent this compiler from
6516 # explicitly linking system object files so we need to strip them
6517 # from the output so that they don't get included in the library
6518 # dependencies.
059850b5 6519 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
5c706339 6520 ;;
059850b5 6521 xl* | mpixl* | bgxl*)
5c706339
AK
6522 # IBM XL 8.0 on PPC, with GNU ld
6523 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6524 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6525 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6526 if test "x$supports_anon_versioning" = xyes; then
6527 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6528 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6529 echo "local: *; };" >> $output_objdir/$libname.ver~
6530 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6531 fi
b9668ba4
AK
6532 ;;
6533 *)
5c706339
AK
6534 case `$CC -V 2>&1 | sed 5q` in
6535 *Sun\ C*)
6536 # Sun C++ 5.9
6537 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6538 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6539 _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'
6540 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
059850b5 6541 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
5c706339
AK
6542 _LT_TAGVAR(compiler_needs_object, $1)=yes
6543
6544 # Not sure whether something based on
6545 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6546 # would be better.
059850b5 6547 output_verbose_link_cmd='func_echo_all'
5c706339
AK
6548
6549 # Archives containing C++ object files must be created using
6550 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6551 # necessary to make sure instantiated templates are included
6552 # in the archive.
6553 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6554 ;;
6555 esac
b9668ba4
AK
6556 ;;
6557 esac
6558 ;;
5c706339 6559
b9668ba4 6560 lynxos*)
5c706339
AK
6561 # FIXME: insert proper C++ library support
6562 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6563 ;;
5c706339 6564
b9668ba4 6565 m88k*)
5c706339
AK
6566 # FIXME: insert proper C++ library support
6567 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6568 ;;
5c706339 6569
b9668ba4 6570 mvs*)
5c706339
AK
6571 case $cc_basename in
6572 cxx*)
6573 # FIXME: insert proper C++ library support
6574 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
6575 ;;
6576 *)
5c706339
AK
6577 # FIXME: insert proper C++ library support
6578 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
6579 ;;
6580 esac
6581 ;;
5c706339
AK
6582
6583 netbsd*)
6584 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6585 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6586 wlarc=
6587 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6588 _LT_TAGVAR(hardcode_direct, $1)=yes
6589 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6590 fi
6591 # Workaround some broken pre-1.5 toolchains
6592 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6593 ;;
6594
6595 *nto* | *qnx*)
6596 _LT_TAGVAR(ld_shlibs, $1)=yes
6597 ;;
6598
6599 openbsd2*)
6600 # C++ shared libraries are fairly broken
6601 _LT_TAGVAR(ld_shlibs, $1)=no
6602 ;;
6603
6604 openbsd*)
6605 if test -f /usr/libexec/ld.so; then
6606 _LT_TAGVAR(hardcode_direct, $1)=yes
6607 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6608 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6609 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6610 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6611 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6612 _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'
6613 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6614 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6615 fi
059850b5 6616 output_verbose_link_cmd=func_echo_all
5c706339
AK
6617 else
6618 _LT_TAGVAR(ld_shlibs, $1)=no
6619 fi
b9668ba4 6620 ;;
5c706339 6621
b9668ba4 6622 osf3* | osf4* | osf5*)
5c706339
AK
6623 case $cc_basename in
6624 KCC*)
6625 # Kuck and Associates, Inc. (KAI) C++ Compiler
6626
6627 # KCC will only create a shared library if the output file
6628 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6629 # to its proper name (with version) after linking.
6630 _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'
6631
6632 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6633 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6634
6635 # Archives containing C++ object files must be created using
6636 # the KAI C++ compiler.
6637 case $host in
6638 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6639 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6640 esac
b9668ba4 6641 ;;
5c706339 6642 RCC*)
b9668ba4 6643 # Rational C++ 2.4.1
5c706339
AK
6644 # FIXME: insert proper C++ library support
6645 _LT_TAGVAR(ld_shlibs, $1)=no
6646 ;;
6647 cxx*)
6648 case $host in
6649 osf3*)
6650 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
059850b5 6651 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5c706339
AK
6652 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6653 ;;
6654 *)
6655 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
059850b5 6656 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5c706339
AK
6657 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6658 echo "-hidden">> $lib.exp~
059850b5 6659 $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
5c706339
AK
6660 $RM $lib.exp'
6661 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6662 ;;
6663 esac
6664
6665 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6666
6667 # Commands to make compiler produce verbose output that lists
6668 # what "hidden" libraries, object files and flags are used when
6669 # linking a shared library.
6670 #
6671 # There doesn't appear to be a way to prevent this compiler from
6672 # explicitly linking system object files so we need to strip them
6673 # from the output so that they don't get included in the library
6674 # dependencies.
059850b5 6675 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
5c706339
AK
6676 ;;
6677 *)
6678 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6679 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6680 case $host in
6681 osf3*)
059850b5 6682 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5c706339
AK
6683 ;;
6684 *)
059850b5 6685 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
5c706339
AK
6686 ;;
6687 esac
6688
6689 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6690 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6691
6692 # Commands to make compiler produce verbose output that lists
6693 # what "hidden" libraries, object files and flags are used when
6694 # linking a shared library.
059850b5 6695 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
6696
6697 else
6698 # FIXME: insert proper C++ library support
6699 _LT_TAGVAR(ld_shlibs, $1)=no
6700 fi
6701 ;;
6702 esac
6703 ;;
6704
6705 psos*)
6706 # FIXME: insert proper C++ library support
6707 _LT_TAGVAR(ld_shlibs, $1)=no
6708 ;;
6709
6710 sunos4*)
6711 case $cc_basename in
6712 CC*)
6713 # Sun C++ 4.x
6714 # FIXME: insert proper C++ library support
6715 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6716 ;;
5c706339
AK
6717 lcc*)
6718 # Lucid
6719 # FIXME: insert proper C++ library support
6720 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6721 ;;
5c706339
AK
6722 *)
6723 # FIXME: insert proper C++ library support
6724 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6725 ;;
5c706339
AK
6726 esac
6727 ;;
6728
b9668ba4 6729 solaris*)
5c706339 6730 case $cc_basename in
059850b5 6731 CC* | sunCC*)
b9668ba4 6732 # Sun C++ 4.2, 5.x and Centerline C++
5c706339
AK
6733 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6734 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6735 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6736 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6737 $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'
6738
6739 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6740 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6741 case $host_os in
6742 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6743 *)
6744 # The compiler driver will combine and reorder linker options,
6745 # but understands `-z linker_flag'.
6746 # Supported since Solaris 2.6 (maybe 2.5.1?)
6747 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6748 ;;
6749 esac
6750 _LT_TAGVAR(link_all_deplibs, $1)=yes
6751
059850b5 6752 output_verbose_link_cmd='func_echo_all'
5c706339
AK
6753
6754 # Archives containing C++ object files must be created using
6755 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6756 # necessary to make sure instantiated templates are included
6757 # in the archive.
6758 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
b9668ba4 6759 ;;
5c706339 6760 gcx*)
b9668ba4 6761 # Green Hills C++ Compiler
5c706339
AK
6762 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6763
6764 # The C++ compiler must be used to create the archive.
6765 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
b9668ba4 6766 ;;
5c706339
AK
6767 *)
6768 # GNU C++ compiler with Solaris linker
6769 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6770 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6771 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
059850b5 6772 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
5c706339 6773 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
059850b5 6774 $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
5c706339
AK
6775
6776 # Commands to make compiler produce verbose output that lists
6777 # what "hidden" libraries, object files and flags are used when
6778 # linking a shared library.
059850b5 6779 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
6780 else
6781 # g++ 2.7 appears to require `-G' NOT `-shared' on this
6782 # platform.
6783 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6784 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6785 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6786
6787 # Commands to make compiler produce verbose output that lists
6788 # what "hidden" libraries, object files and flags are used when
6789 # linking a shared library.
059850b5 6790 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
6791 fi
6792
6793 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6794 case $host_os in
6795 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6796 *)
6797 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6798 ;;
6799 esac
6800 fi
b9668ba4 6801 ;;
5c706339
AK
6802 esac
6803 ;;
6804
6805 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6806 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6807 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6808 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6809 runpath_var='LD_RUN_PATH'
6810
6811 case $cc_basename in
6812 CC*)
6813 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6814 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6815 ;;
6816 *)
6817 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6818 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6819 ;;
6820 esac
6821 ;;
6822
6823 sysv5* | sco3.2v5* | sco5v6*)
6824 # Note: We can NOT use -z defs as we might desire, because we do not
6825 # link with -lc, and that would cause any symbols used from libc to
6826 # always be unresolved, which means just about no library would
6827 # ever link correctly. If we're not using GNU ld we use -z text
6828 # though, which does catch some bad symbols but isn't as heavy-handed
6829 # as -z defs.
6830 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6831 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6832 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6833 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6834 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6835 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6836 _LT_TAGVAR(link_all_deplibs, $1)=yes
6837 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6838 runpath_var='LD_RUN_PATH'
6839
b9668ba4 6840 case $cc_basename in
5c706339
AK
6841 CC*)
6842 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6843 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
059850b5
AK
6844 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6845 '"$_LT_TAGVAR(old_archive_cmds, $1)"
6846 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6847 '"$_LT_TAGVAR(reload_cmds, $1)"
b9668ba4
AK
6848 ;;
6849 *)
5c706339
AK
6850 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6851 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
b9668ba4
AK
6852 ;;
6853 esac
5c706339
AK
6854 ;;
6855
b9668ba4 6856 tandem*)
5c706339
AK
6857 case $cc_basename in
6858 NCC*)
b9668ba4 6859 # NonStop-UX NCC 3.20
5c706339
AK
6860 # FIXME: insert proper C++ library support
6861 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6862 ;;
5c706339
AK
6863 *)
6864 # FIXME: insert proper C++ library support
6865 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6866 ;;
5c706339
AK
6867 esac
6868 ;;
6869
b9668ba4 6870 vxworks*)
5c706339
AK
6871 # FIXME: insert proper C++ library support
6872 _LT_TAGVAR(ld_shlibs, $1)=no
6873 ;;
6874
b9668ba4 6875 *)
5c706339
AK
6876 # FIXME: insert proper C++ library support
6877 _LT_TAGVAR(ld_shlibs, $1)=no
6878 ;;
b9668ba4 6879 esac
5c706339
AK
6880
6881 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6882 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6883
6884 _LT_TAGVAR(GCC, $1)="$GXX"
6885 _LT_TAGVAR(LD, $1)="$LD"
6886
6887 ## CAVEAT EMPTOR:
6888 ## There is no encapsulation within the following macros, do not change
6889 ## the running order or otherwise move them around unless you know exactly
6890 ## what you are doing...
6891 _LT_SYS_HIDDEN_LIBDEPS($1)
6892 _LT_COMPILER_PIC($1)
6893 _LT_COMPILER_C_O($1)
6894 _LT_COMPILER_FILE_LOCKS($1)
6895 _LT_LINKER_SHLIBS($1)
6896 _LT_SYS_DYNAMIC_LINKER($1)
6897 _LT_LINKER_HARDCODE_LIBPATH($1)
6898
6899 _LT_CONFIG($1)
6900 fi # test -n "$compiler"
6901
6902 CC=$lt_save_CC
059850b5 6903 CFLAGS=$lt_save_CFLAGS
5c706339
AK
6904 LDCXX=$LD
6905 LD=$lt_save_LD
6906 GCC=$lt_save_GCC
6907 with_gnu_ld=$lt_save_with_gnu_ld
6908 lt_cv_path_LDCXX=$lt_cv_path_LD
6909 lt_cv_path_LD=$lt_save_path_LD
6910 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6911 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6912fi # test "$_lt_caught_CXX_error" != yes
6913
6914AC_LANG_POP
6915])# _LT_LANG_CXX_CONFIG
6916
6917
059850b5
AK
6918# _LT_FUNC_STRIPNAME_CNF
6919# ----------------------
6920# func_stripname_cnf prefix suffix name
6921# strip PREFIX and SUFFIX off of NAME.
6922# PREFIX and SUFFIX must not contain globbing or regex special
6923# characters, hashes, percent signs, but SUFFIX may contain a leading
6924# dot (in which case that matches only a dot).
6925#
6926# This function is identical to the (non-XSI) version of func_stripname,
6927# except this one can be used by m4 code that may be executed by configure,
6928# rather than the libtool script.
6929m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6930AC_REQUIRE([_LT_DECL_SED])
6931AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6932func_stripname_cnf ()
6933{
6934 case ${2} in
6935 .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6936 *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6937 esac
6938} # func_stripname_cnf
6939])# _LT_FUNC_STRIPNAME_CNF
6940
5c706339
AK
6941# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6942# ---------------------------------
6943# Figure out "hidden" library dependencies from verbose
6944# compiler output when linking a shared library.
6945# Parse the compiler output and extract the necessary
6946# objects, libraries and library flags.
6947m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6948[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
059850b5 6949AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
5c706339
AK
6950# Dependencies to place before and after the object being linked:
6951_LT_TAGVAR(predep_objects, $1)=
6952_LT_TAGVAR(postdep_objects, $1)=
6953_LT_TAGVAR(predeps, $1)=
6954_LT_TAGVAR(postdeps, $1)=
6955_LT_TAGVAR(compiler_lib_search_path, $1)=
6956
6957dnl we can't use the lt_simple_compile_test_code here,
6958dnl because it contains code intended for an executable,
6959dnl not a library. It's possible we should let each
6960dnl tag define a new lt_????_link_test_code variable,
6961dnl but it's only used here...
6962m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6963int a;
6964void foo (void) { a = 0; }
6965_LT_EOF
6966], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6967class Foo
6968{
6969public:
6970 Foo (void) { a = 0; }
6971private:
6972 int a;
6973};
6974_LT_EOF
6975], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6976 subroutine foo
6977 implicit none
6978 integer*4 a
6979 a=0
6980 return
6981 end
6982_LT_EOF
6983], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6984 subroutine foo
6985 implicit none
6986 integer a
6987 a=0
6988 return
6989 end
6990_LT_EOF
6991], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6992public class foo {
6993 private int a;
6994 public void bar (void) {
6995 a = 0;
6996 }
6997};
6998_LT_EOF
059850b5
AK
6999], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7000package foo
7001func foo() {
7002}
7003_LT_EOF
5c706339 7004])
059850b5
AK
7005
7006_lt_libdeps_save_CFLAGS=$CFLAGS
7007case "$CC $CFLAGS " in #(
7008*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7009*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7010*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7011esac
7012
5c706339
AK
7013dnl Parse the compiler output and extract the necessary
7014dnl objects, libraries and library flags.
7015if AC_TRY_EVAL(ac_compile); then
7016 # Parse the compiler output and extract the necessary
7017 # objects, libraries and library flags.
7018
7019 # Sentinel used to keep track of whether or not we are before
7020 # the conftest object file.
7021 pre_test_object_deps_done=no
7022
7023 for p in `eval "$output_verbose_link_cmd"`; do
059850b5 7024 case ${prev}${p} in
5c706339
AK
7025
7026 -L* | -R* | -l*)
7027 # Some compilers place space between "-{L,R}" and the path.
7028 # Remove the space.
7029 if test $p = "-L" ||
7030 test $p = "-R"; then
7031 prev=$p
7032 continue
5c706339
AK
7033 fi
7034
059850b5
AK
7035 # Expand the sysroot to ease extracting the directories later.
7036 if test -z "$prev"; then
7037 case $p in
7038 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7039 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7040 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7041 esac
7042 fi
7043 case $p in
7044 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7045 esac
5c706339 7046 if test "$pre_test_object_deps_done" = no; then
059850b5
AK
7047 case ${prev} in
7048 -L | -R)
5c706339
AK
7049 # Internal compiler library paths should come after those
7050 # provided the user. The postdeps already come after the
7051 # user supplied libs so there is no need to process them.
7052 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7053 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
7054 else
7055 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
7056 fi
7057 ;;
7058 # The "-l" case would never come before the object being
7059 # linked, so don't bother handling this case.
7060 esac
7061 else
7062 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7063 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
7064 else
7065 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
7066 fi
7067 fi
059850b5 7068 prev=
5c706339
AK
7069 ;;
7070
059850b5 7071 *.lto.$objext) ;; # Ignore GCC LTO objects
5c706339
AK
7072 *.$objext)
7073 # This assumes that the test object file only shows up
7074 # once in the compiler output.
7075 if test "$p" = "conftest.$objext"; then
7076 pre_test_object_deps_done=yes
7077 continue
7078 fi
7079
7080 if test "$pre_test_object_deps_done" = no; then
7081 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7082 _LT_TAGVAR(predep_objects, $1)="$p"
7083 else
7084 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7085 fi
7086 else
7087 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7088 _LT_TAGVAR(postdep_objects, $1)="$p"
7089 else
7090 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7091 fi
7092 fi
7093 ;;
7094
7095 *) ;; # Ignore the rest.
7096
7097 esac
7098 done
7099
7100 # Clean up.
7101 rm -f a.out a.exe
7102else
7103 echo "libtool.m4: error: problem compiling $1 test program"
7104fi
7105
7106$RM -f confest.$objext
059850b5 7107CFLAGS=$_lt_libdeps_save_CFLAGS
5c706339
AK
7108
7109# PORTME: override above test on systems where it is broken
7110m4_if([$1], [CXX],
7111[case $host_os in
7112interix[[3-9]]*)
7113 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7114 # hack all around it, let's just trust "g++" to DTRT.
7115 _LT_TAGVAR(predep_objects,$1)=
7116 _LT_TAGVAR(postdep_objects,$1)=
7117 _LT_TAGVAR(postdeps,$1)=
7118 ;;
7119
7120linux*)
7121 case `$CC -V 2>&1 | sed 5q` in
7122 *Sun\ C*)
7123 # Sun C++ 5.9
7124
7125 # The more standards-conforming stlport4 library is
7126 # incompatible with the Cstd library. Avoid specifying
7127 # it if it's in CXXFLAGS. Ignore libCrun as
7128 # -library=stlport4 depends on it.
7129 case " $CXX $CXXFLAGS " in
7130 *" -library=stlport4 "*)
7131 solaris_use_stlport4=yes
7132 ;;
7133 esac
7134
7135 if test "$solaris_use_stlport4" != yes; then
7136 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7137 fi
7138 ;;
7139 esac
7140 ;;
7141
7142solaris*)
7143 case $cc_basename in
059850b5 7144 CC* | sunCC*)
5c706339
AK
7145 # The more standards-conforming stlport4 library is
7146 # incompatible with the Cstd library. Avoid specifying
7147 # it if it's in CXXFLAGS. Ignore libCrun as
7148 # -library=stlport4 depends on it.
7149 case " $CXX $CXXFLAGS " in
7150 *" -library=stlport4 "*)
7151 solaris_use_stlport4=yes
7152 ;;
7153 esac
7154
7155 # Adding this requires a known-good setup of shared libraries for
7156 # Sun compiler versions before 5.6, else PIC objects from an old
7157 # archive will be linked into the output, leading to subtle bugs.
7158 if test "$solaris_use_stlport4" != yes; then
7159 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7160 fi
7161 ;;
7162 esac
7163 ;;
7164esac
7165])
7166
7167case " $_LT_TAGVAR(postdeps, $1) " in
7168*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7169esac
7170 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7171if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7172 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
7173fi
7174_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7175 [The directories searched by this compiler when creating a shared library])
7176_LT_TAGDECL([], [predep_objects], [1],
7177 [Dependencies to place before and after the objects being linked to
7178 create a shared library])
7179_LT_TAGDECL([], [postdep_objects], [1])
7180_LT_TAGDECL([], [predeps], [1])
7181_LT_TAGDECL([], [postdeps], [1])
7182_LT_TAGDECL([], [compiler_lib_search_path], [1],
7183 [The library search path used internally by the compiler when linking
7184 a shared library])
7185])# _LT_SYS_HIDDEN_LIBDEPS
7186
7187
5c706339
AK
7188# _LT_LANG_F77_CONFIG([TAG])
7189# --------------------------
7190# Ensure that the configuration variables for a Fortran 77 compiler are
7191# suitably defined. These variables are subsequently used by _LT_CONFIG
7192# to write the compiler configuration to `libtool'.
7193m4_defun([_LT_LANG_F77_CONFIG],
059850b5
AK
7194[AC_LANG_PUSH(Fortran 77)
7195if test -z "$F77" || test "X$F77" = "Xno"; then
7196 _lt_disable_F77=yes
7197fi
5c706339
AK
7198
7199_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7200_LT_TAGVAR(allow_undefined_flag, $1)=
7201_LT_TAGVAR(always_export_symbols, $1)=no
7202_LT_TAGVAR(archive_expsym_cmds, $1)=
7203_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7204_LT_TAGVAR(hardcode_direct, $1)=no
7205_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7206_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5c706339
AK
7207_LT_TAGVAR(hardcode_libdir_separator, $1)=
7208_LT_TAGVAR(hardcode_minus_L, $1)=no
7209_LT_TAGVAR(hardcode_automatic, $1)=no
7210_LT_TAGVAR(inherit_rpath, $1)=no
7211_LT_TAGVAR(module_cmds, $1)=
7212_LT_TAGVAR(module_expsym_cmds, $1)=
7213_LT_TAGVAR(link_all_deplibs, $1)=unknown
7214_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
059850b5
AK
7215_LT_TAGVAR(reload_flag, $1)=$reload_flag
7216_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
7217_LT_TAGVAR(no_undefined_flag, $1)=
7218_LT_TAGVAR(whole_archive_flag_spec, $1)=
7219_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7220
7221# Source file extension for f77 test sources.
7222ac_ext=f
7223
7224# Object file extension for compiled f77 test sources.
7225objext=o
7226_LT_TAGVAR(objext, $1)=$objext
7227
7228# No sense in running all these tests if we already determined that
7229# the F77 compiler isn't working. Some variables (like enable_shared)
7230# are currently assumed to apply to all compilers on this platform,
7231# and will be corrupted by setting them based on a non-working compiler.
7232if test "$_lt_disable_F77" != yes; then
7233 # Code to be used in simple compile tests
7234 lt_simple_compile_test_code="\
7235 subroutine t
7236 return
7237 end
7238"
7239
7240 # Code to be used in simple link tests
7241 lt_simple_link_test_code="\
7242 program t
7243 end
7244"
7245
7246 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7247 _LT_TAG_COMPILER
7248
7249 # save warnings/boilerplate of simple test code
7250 _LT_COMPILER_BOILERPLATE
7251 _LT_LINKER_BOILERPLATE
7252
7253 # Allow CC to be a program name with arguments.
7254 lt_save_CC="$CC"
7255 lt_save_GCC=$GCC
059850b5 7256 lt_save_CFLAGS=$CFLAGS
5c706339 7257 CC=${F77-"f77"}
059850b5 7258 CFLAGS=$FFLAGS
5c706339
AK
7259 compiler=$CC
7260 _LT_TAGVAR(compiler, $1)=$CC
7261 _LT_CC_BASENAME([$compiler])
7262 GCC=$G77
7263 if test -n "$compiler"; then
7264 AC_MSG_CHECKING([if libtool supports shared libraries])
7265 AC_MSG_RESULT([$can_build_shared])
7266
7267 AC_MSG_CHECKING([whether to build shared libraries])
7268 test "$can_build_shared" = "no" && enable_shared=no
7269
7270 # On AIX, shared libraries and static libraries use the same namespace, and
7271 # are all built from PIC.
7272 case $host_os in
7273 aix3*)
7274 test "$enable_shared" = yes && enable_static=no
7275 if test -n "$RANLIB"; then
7276 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7277 postinstall_cmds='$RANLIB $lib'
7278 fi
7279 ;;
7280 aix[[4-9]]*)
7281 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7282 test "$enable_shared" = yes && enable_static=no
7283 fi
7284 ;;
7285 esac
7286 AC_MSG_RESULT([$enable_shared])
7287
7288 AC_MSG_CHECKING([whether to build static libraries])
7289 # Make sure either enable_shared or enable_static is yes.
7290 test "$enable_shared" = yes || enable_static=yes
7291 AC_MSG_RESULT([$enable_static])
7292
7293 _LT_TAGVAR(GCC, $1)="$G77"
7294 _LT_TAGVAR(LD, $1)="$LD"
7295
7296 ## CAVEAT EMPTOR:
7297 ## There is no encapsulation within the following macros, do not change
7298 ## the running order or otherwise move them around unless you know exactly
7299 ## what you are doing...
7300 _LT_COMPILER_PIC($1)
7301 _LT_COMPILER_C_O($1)
7302 _LT_COMPILER_FILE_LOCKS($1)
7303 _LT_LINKER_SHLIBS($1)
7304 _LT_SYS_DYNAMIC_LINKER($1)
7305 _LT_LINKER_HARDCODE_LIBPATH($1)
7306
7307 _LT_CONFIG($1)
7308 fi # test -n "$compiler"
7309
7310 GCC=$lt_save_GCC
7311 CC="$lt_save_CC"
059850b5 7312 CFLAGS="$lt_save_CFLAGS"
5c706339
AK
7313fi # test "$_lt_disable_F77" != yes
7314
7315AC_LANG_POP
7316])# _LT_LANG_F77_CONFIG
7317
7318
5c706339
AK
7319# _LT_LANG_FC_CONFIG([TAG])
7320# -------------------------
7321# Ensure that the configuration variables for a Fortran compiler are
7322# suitably defined. These variables are subsequently used by _LT_CONFIG
7323# to write the compiler configuration to `libtool'.
7324m4_defun([_LT_LANG_FC_CONFIG],
059850b5
AK
7325[AC_LANG_PUSH(Fortran)
7326
7327if test -z "$FC" || test "X$FC" = "Xno"; then
7328 _lt_disable_FC=yes
7329fi
5c706339
AK
7330
7331_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7332_LT_TAGVAR(allow_undefined_flag, $1)=
7333_LT_TAGVAR(always_export_symbols, $1)=no
7334_LT_TAGVAR(archive_expsym_cmds, $1)=
7335_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7336_LT_TAGVAR(hardcode_direct, $1)=no
7337_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7338_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5c706339
AK
7339_LT_TAGVAR(hardcode_libdir_separator, $1)=
7340_LT_TAGVAR(hardcode_minus_L, $1)=no
7341_LT_TAGVAR(hardcode_automatic, $1)=no
7342_LT_TAGVAR(inherit_rpath, $1)=no
7343_LT_TAGVAR(module_cmds, $1)=
7344_LT_TAGVAR(module_expsym_cmds, $1)=
7345_LT_TAGVAR(link_all_deplibs, $1)=unknown
7346_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
059850b5
AK
7347_LT_TAGVAR(reload_flag, $1)=$reload_flag
7348_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
7349_LT_TAGVAR(no_undefined_flag, $1)=
7350_LT_TAGVAR(whole_archive_flag_spec, $1)=
7351_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7352
7353# Source file extension for fc test sources.
7354ac_ext=${ac_fc_srcext-f}
7355
7356# Object file extension for compiled fc test sources.
7357objext=o
7358_LT_TAGVAR(objext, $1)=$objext
7359
7360# No sense in running all these tests if we already determined that
7361# the FC compiler isn't working. Some variables (like enable_shared)
7362# are currently assumed to apply to all compilers on this platform,
7363# and will be corrupted by setting them based on a non-working compiler.
7364if test "$_lt_disable_FC" != yes; then
7365 # Code to be used in simple compile tests
7366 lt_simple_compile_test_code="\
7367 subroutine t
7368 return
7369 end
7370"
b9668ba4 7371
5c706339
AK
7372 # Code to be used in simple link tests
7373 lt_simple_link_test_code="\
7374 program t
7375 end
7376"
b9668ba4 7377
5c706339
AK
7378 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7379 _LT_TAG_COMPILER
b9668ba4 7380
5c706339
AK
7381 # save warnings/boilerplate of simple test code
7382 _LT_COMPILER_BOILERPLATE
7383 _LT_LINKER_BOILERPLATE
b9668ba4 7384
5c706339
AK
7385 # Allow CC to be a program name with arguments.
7386 lt_save_CC="$CC"
7387 lt_save_GCC=$GCC
059850b5 7388 lt_save_CFLAGS=$CFLAGS
5c706339 7389 CC=${FC-"f95"}
059850b5 7390 CFLAGS=$FCFLAGS
5c706339
AK
7391 compiler=$CC
7392 GCC=$ac_cv_fc_compiler_gnu
b9668ba4 7393
5c706339
AK
7394 _LT_TAGVAR(compiler, $1)=$CC
7395 _LT_CC_BASENAME([$compiler])
b9668ba4 7396
5c706339
AK
7397 if test -n "$compiler"; then
7398 AC_MSG_CHECKING([if libtool supports shared libraries])
7399 AC_MSG_RESULT([$can_build_shared])
b9668ba4 7400
5c706339
AK
7401 AC_MSG_CHECKING([whether to build shared libraries])
7402 test "$can_build_shared" = "no" && enable_shared=no
7403
7404 # On AIX, shared libraries and static libraries use the same namespace, and
7405 # are all built from PIC.
b9668ba4 7406 case $host_os in
5c706339
AK
7407 aix3*)
7408 test "$enable_shared" = yes && enable_static=no
7409 if test -n "$RANLIB"; then
7410 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7411 postinstall_cmds='$RANLIB $lib'
7412 fi
7413 ;;
7414 aix[[4-9]]*)
7415 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7416 test "$enable_shared" = yes && enable_static=no
7417 fi
7418 ;;
7419 esac
7420 AC_MSG_RESULT([$enable_shared])
7421
7422 AC_MSG_CHECKING([whether to build static libraries])
7423 # Make sure either enable_shared or enable_static is yes.
7424 test "$enable_shared" = yes || enable_static=yes
7425 AC_MSG_RESULT([$enable_static])
7426
7427 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
7428 _LT_TAGVAR(LD, $1)="$LD"
7429
7430 ## CAVEAT EMPTOR:
7431 ## There is no encapsulation within the following macros, do not change
7432 ## the running order or otherwise move them around unless you know exactly
7433 ## what you are doing...
7434 _LT_SYS_HIDDEN_LIBDEPS($1)
7435 _LT_COMPILER_PIC($1)
7436 _LT_COMPILER_C_O($1)
7437 _LT_COMPILER_FILE_LOCKS($1)
7438 _LT_LINKER_SHLIBS($1)
7439 _LT_SYS_DYNAMIC_LINKER($1)
7440 _LT_LINKER_HARDCODE_LIBPATH($1)
7441
7442 _LT_CONFIG($1)
7443 fi # test -n "$compiler"
7444
7445 GCC=$lt_save_GCC
059850b5
AK
7446 CC=$lt_save_CC
7447 CFLAGS=$lt_save_CFLAGS
5c706339 7448fi # test "$_lt_disable_FC" != yes
b9668ba4 7449
5c706339
AK
7450AC_LANG_POP
7451])# _LT_LANG_FC_CONFIG
b9668ba4 7452
b9668ba4 7453
5c706339
AK
7454# _LT_LANG_GCJ_CONFIG([TAG])
7455# --------------------------
7456# Ensure that the configuration variables for the GNU Java Compiler compiler
7457# are suitably defined. These variables are subsequently used by _LT_CONFIG
7458# to write the compiler configuration to `libtool'.
7459m4_defun([_LT_LANG_GCJ_CONFIG],
7460[AC_REQUIRE([LT_PROG_GCJ])dnl
7461AC_LANG_SAVE
b9668ba4 7462
5c706339
AK
7463# Source file extension for Java test sources.
7464ac_ext=java
7465
7466# Object file extension for compiled Java test sources.
7467objext=o
7468_LT_TAGVAR(objext, $1)=$objext
7469
7470# Code to be used in simple compile tests
7471lt_simple_compile_test_code="class foo {}"
7472
7473# Code to be used in simple link tests
7474lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7475
7476# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7477_LT_TAG_COMPILER
7478
7479# save warnings/boilerplate of simple test code
7480_LT_COMPILER_BOILERPLATE
7481_LT_LINKER_BOILERPLATE
7482
7483# Allow CC to be a program name with arguments.
059850b5
AK
7484lt_save_CC=$CC
7485lt_save_CFLAGS=$CFLAGS
5c706339
AK
7486lt_save_GCC=$GCC
7487GCC=yes
7488CC=${GCJ-"gcj"}
059850b5 7489CFLAGS=$GCJFLAGS
5c706339
AK
7490compiler=$CC
7491_LT_TAGVAR(compiler, $1)=$CC
7492_LT_TAGVAR(LD, $1)="$LD"
7493_LT_CC_BASENAME([$compiler])
7494
7495# GCJ did not exist at the time GCC didn't implicitly link libc in.
7496_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7497
7498_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
059850b5
AK
7499_LT_TAGVAR(reload_flag, $1)=$reload_flag
7500_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
7501
7502if test -n "$compiler"; then
7503 _LT_COMPILER_NO_RTTI($1)
7504 _LT_COMPILER_PIC($1)
7505 _LT_COMPILER_C_O($1)
7506 _LT_COMPILER_FILE_LOCKS($1)
7507 _LT_LINKER_SHLIBS($1)
7508 _LT_LINKER_HARDCODE_LIBPATH($1)
7509
7510 _LT_CONFIG($1)
7511fi
7512
7513AC_LANG_RESTORE
7514
7515GCC=$lt_save_GCC
059850b5
AK
7516CC=$lt_save_CC
7517CFLAGS=$lt_save_CFLAGS
5c706339
AK
7518])# _LT_LANG_GCJ_CONFIG
7519
7520
059850b5
AK
7521# _LT_LANG_GO_CONFIG([TAG])
7522# --------------------------
7523# Ensure that the configuration variables for the GNU Go compiler
7524# are suitably defined. These variables are subsequently used by _LT_CONFIG
7525# to write the compiler configuration to `libtool'.
7526m4_defun([_LT_LANG_GO_CONFIG],
7527[AC_REQUIRE([LT_PROG_GO])dnl
7528AC_LANG_SAVE
7529
7530# Source file extension for Go test sources.
7531ac_ext=go
7532
7533# Object file extension for compiled Go test sources.
7534objext=o
7535_LT_TAGVAR(objext, $1)=$objext
7536
7537# Code to be used in simple compile tests
7538lt_simple_compile_test_code="package main; func main() { }"
7539
7540# Code to be used in simple link tests
7541lt_simple_link_test_code='package main; func main() { }'
7542
7543# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7544_LT_TAG_COMPILER
7545
7546# save warnings/boilerplate of simple test code
7547_LT_COMPILER_BOILERPLATE
7548_LT_LINKER_BOILERPLATE
7549
7550# Allow CC to be a program name with arguments.
7551lt_save_CC=$CC
7552lt_save_CFLAGS=$CFLAGS
7553lt_save_GCC=$GCC
7554GCC=yes
7555CC=${GOC-"gccgo"}
7556CFLAGS=$GOFLAGS
7557compiler=$CC
7558_LT_TAGVAR(compiler, $1)=$CC
7559_LT_TAGVAR(LD, $1)="$LD"
7560_LT_CC_BASENAME([$compiler])
7561
7562# Go did not exist at the time GCC didn't implicitly link libc in.
7563_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7564
7565_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7566_LT_TAGVAR(reload_flag, $1)=$reload_flag
7567_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7568
7569if test -n "$compiler"; then
7570 _LT_COMPILER_NO_RTTI($1)
7571 _LT_COMPILER_PIC($1)
7572 _LT_COMPILER_C_O($1)
7573 _LT_COMPILER_FILE_LOCKS($1)
7574 _LT_LINKER_SHLIBS($1)
7575 _LT_LINKER_HARDCODE_LIBPATH($1)
7576
7577 _LT_CONFIG($1)
7578fi
7579
7580AC_LANG_RESTORE
7581
7582GCC=$lt_save_GCC
7583CC=$lt_save_CC
7584CFLAGS=$lt_save_CFLAGS
7585])# _LT_LANG_GO_CONFIG
7586
7587
5c706339
AK
7588# _LT_LANG_RC_CONFIG([TAG])
7589# -------------------------
7590# Ensure that the configuration variables for the Windows resource compiler
7591# are suitably defined. These variables are subsequently used by _LT_CONFIG
7592# to write the compiler configuration to `libtool'.
7593m4_defun([_LT_LANG_RC_CONFIG],
7594[AC_REQUIRE([LT_PROG_RC])dnl
7595AC_LANG_SAVE
7596
7597# Source file extension for RC test sources.
7598ac_ext=rc
7599
7600# Object file extension for compiled RC test sources.
7601objext=o
7602_LT_TAGVAR(objext, $1)=$objext
7603
7604# Code to be used in simple compile tests
7605lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
7606
7607# Code to be used in simple link tests
7608lt_simple_link_test_code="$lt_simple_compile_test_code"
7609
7610# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7611_LT_TAG_COMPILER
7612
7613# save warnings/boilerplate of simple test code
7614_LT_COMPILER_BOILERPLATE
7615_LT_LINKER_BOILERPLATE
7616
7617# Allow CC to be a program name with arguments.
7618lt_save_CC="$CC"
059850b5 7619lt_save_CFLAGS=$CFLAGS
5c706339
AK
7620lt_save_GCC=$GCC
7621GCC=
7622CC=${RC-"windres"}
059850b5 7623CFLAGS=
5c706339
AK
7624compiler=$CC
7625_LT_TAGVAR(compiler, $1)=$CC
7626_LT_CC_BASENAME([$compiler])
7627_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
7628
7629if test -n "$compiler"; then
7630 :
7631 _LT_CONFIG($1)
7632fi
7633
7634GCC=$lt_save_GCC
7635AC_LANG_RESTORE
059850b5
AK
7636CC=$lt_save_CC
7637CFLAGS=$lt_save_CFLAGS
5c706339
AK
7638])# _LT_LANG_RC_CONFIG
7639
7640
7641# LT_PROG_GCJ
7642# -----------
7643AC_DEFUN([LT_PROG_GCJ],
7644[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
7645 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
7646 [AC_CHECK_TOOL(GCJ, gcj,)
7647 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
7648 AC_SUBST(GCJFLAGS)])])[]dnl
7649])
7650
7651# Old name:
7652AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7653dnl aclocal-1.4 backwards compatibility:
7654dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
7655
7656
059850b5
AK
7657# LT_PROG_GO
7658# ----------
7659AC_DEFUN([LT_PROG_GO],
7660[AC_CHECK_TOOL(GOC, gccgo,)
7661])
7662
7663
5c706339
AK
7664# LT_PROG_RC
7665# ----------
7666AC_DEFUN([LT_PROG_RC],
7667[AC_CHECK_TOOL(RC, windres,)
7668])
7669
7670# Old name:
7671AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7672dnl aclocal-1.4 backwards compatibility:
7673dnl AC_DEFUN([LT_AC_PROG_RC], [])
7674
7675
7676# _LT_DECL_EGREP
7677# --------------
7678# If we don't have a new enough Autoconf to choose the best grep
7679# available, choose the one first in the user's PATH.
7680m4_defun([_LT_DECL_EGREP],
7681[AC_REQUIRE([AC_PROG_EGREP])dnl
7682AC_REQUIRE([AC_PROG_FGREP])dnl
7683test -z "$GREP" && GREP=grep
7684_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7685_LT_DECL([], [EGREP], [1], [An ERE matcher])
7686_LT_DECL([], [FGREP], [1], [A literal string matcher])
7687dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7688AC_SUBST([GREP])
7689])
7690
7691
47dc80f6
AK
7692# _LT_DECL_OBJDUMP
7693# --------------
7694# If we don't have a new enough Autoconf to choose the best objdump
7695# available, choose the one first in the user's PATH.
7696m4_defun([_LT_DECL_OBJDUMP],
7697[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7698test -z "$OBJDUMP" && OBJDUMP=objdump
7699_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7700AC_SUBST([OBJDUMP])
7701])
7702
059850b5
AK
7703# _LT_DECL_DLLTOOL
7704# ----------------
7705# Ensure DLLTOOL variable is set.
7706m4_defun([_LT_DECL_DLLTOOL],
7707[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7708test -z "$DLLTOOL" && DLLTOOL=dlltool
7709_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7710AC_SUBST([DLLTOOL])
7711])
47dc80f6 7712
5c706339
AK
7713# _LT_DECL_SED
7714# ------------
7715# Check for a fully-functional sed program, that truncates
7716# as few characters as possible. Prefer GNU sed if found.
7717m4_defun([_LT_DECL_SED],
7718[AC_PROG_SED
7719test -z "$SED" && SED=sed
7720Xsed="$SED -e 1s/^X//"
7721_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7722_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7723 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7724])# _LT_DECL_SED
7725
7726m4_ifndef([AC_PROG_SED], [
7727# NOTE: This macro has been submitted for inclusion into #
7728# GNU Autoconf as AC_PROG_SED. When it is available in #
7729# a released version of Autoconf we should remove this #
7730# macro and use it instead. #
7731
7732m4_defun([AC_PROG_SED],
7733[AC_MSG_CHECKING([for a sed that does not truncate output])
7734AC_CACHE_VAL(lt_cv_path_SED,
7735[# Loop through the user's path and test for sed and gsed.
7736# Then use that list of sed's as ones to test for truncation.
7737as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7738for as_dir in $PATH
7739do
7740 IFS=$as_save_IFS
7741 test -z "$as_dir" && as_dir=.
7742 for lt_ac_prog in sed gsed; do
7743 for ac_exec_ext in '' $ac_executable_extensions; do
7744 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7745 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
7746 fi
7747 done
7748 done
7749done
7750IFS=$as_save_IFS
7751lt_ac_max=0
7752lt_ac_count=0
7753# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7754# along with /bin/sed that truncates output.
7755for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
7756 test ! -f $lt_ac_sed && continue
7757 cat /dev/null > conftest.in
7758 lt_ac_count=0
7759 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7760 # Check for GNU sed and select it if it is found.
7761 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7762 lt_cv_path_SED=$lt_ac_sed
7763 break
7764 fi
7765 while true; do
7766 cat conftest.in conftest.in >conftest.tmp
7767 mv conftest.tmp conftest.in
7768 cp conftest.in conftest.nl
7769 echo >>conftest.nl
7770 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7771 cmp -s conftest.out conftest.nl || break
7772 # 10000 chars as input seems more than enough
7773 test $lt_ac_count -gt 10 && break
7774 lt_ac_count=`expr $lt_ac_count + 1`
7775 if test $lt_ac_count -gt $lt_ac_max; then
7776 lt_ac_max=$lt_ac_count
7777 lt_cv_path_SED=$lt_ac_sed
7778 fi
7779 done
7780done
7781])
7782SED=$lt_cv_path_SED
7783AC_SUBST([SED])
7784AC_MSG_RESULT([$SED])
7785])#AC_PROG_SED
7786])#m4_ifndef
7787
7788# Old name:
7789AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7790dnl aclocal-1.4 backwards compatibility:
7791dnl AC_DEFUN([LT_AC_PROG_SED], [])
7792
7793
7794# _LT_CHECK_SHELL_FEATURES
7795# ------------------------
7796# Find out whether the shell is Bourne or XSI compatible,
7797# or has some other useful features.
7798m4_defun([_LT_CHECK_SHELL_FEATURES],
7799[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7800# Try some XSI features
7801xsi_shell=no
7802( _lt_dummy="a/b/c"
059850b5
AK
7803 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7804 = c,a/b,b/c, \
5c706339
AK
7805 && eval 'test $(( 1 + 1 )) -eq 2 \
7806 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7807 && xsi_shell=yes
7808AC_MSG_RESULT([$xsi_shell])
7809_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7810
7811AC_MSG_CHECKING([whether the shell understands "+="])
7812lt_shell_append=no
7813( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7814 >/dev/null 2>&1 \
7815 && lt_shell_append=yes
7816AC_MSG_RESULT([$lt_shell_append])
7817_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7818
7819if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7820 lt_unset=unset
7821else
7822 lt_unset=false
7823fi
7824_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7825
7826# test EBCDIC or ASCII
7827case `echo X|tr X '\101'` in
7828 A) # ASCII based system
7829 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7830 lt_SP2NL='tr \040 \012'
7831 lt_NL2SP='tr \015\012 \040\040'
7832 ;;
7833 *) # EBCDIC based system
7834 lt_SP2NL='tr \100 \n'
7835 lt_NL2SP='tr \r\n \100\100'
7836 ;;
7837esac
7838_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7839_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7840])# _LT_CHECK_SHELL_FEATURES
b9668ba4 7841
b9668ba4 7842
059850b5
AK
7843# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7844# ------------------------------------------------------
7845# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7846# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7847m4_defun([_LT_PROG_FUNCTION_REPLACE],
7848[dnl {
7849sed -e '/^$1 ()$/,/^} # $1 /c\
7850$1 ()\
7851{\
7852m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
7853} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7854 && mv -f "$cfgfile.tmp" "$cfgfile" \
7855 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7856test 0 -eq $? || _lt_function_replace_fail=:
7857])
b9668ba4 7858
b9668ba4 7859
059850b5
AK
7860# _LT_PROG_REPLACE_SHELLFNS
7861# -------------------------
7862# Replace existing portable implementations of several shell functions with
7863# equivalent extended shell implementations where those features are available..
7864m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7865[if test x"$xsi_shell" = xyes; then
7866 _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7867 case ${1} in
7868 */*) func_dirname_result="${1%/*}${2}" ;;
7869 * ) func_dirname_result="${3}" ;;
7870 esac])
7871
7872 _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7873 func_basename_result="${1##*/}"])
7874
7875 _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7876 case ${1} in
7877 */*) func_dirname_result="${1%/*}${2}" ;;
7878 * ) func_dirname_result="${3}" ;;
7879 esac
7880 func_basename_result="${1##*/}"])
b9668ba4 7881
059850b5
AK
7882 _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7883 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7884 # positional parameters, so assign one to ordinary parameter first.
7885 func_stripname_result=${3}
7886 func_stripname_result=${func_stripname_result#"${1}"}
7887 func_stripname_result=${func_stripname_result%"${2}"}])
b9668ba4 7888
059850b5
AK
7889 _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7890 func_split_long_opt_name=${1%%=*}
7891 func_split_long_opt_arg=${1#*=}])
5c706339 7892
059850b5
AK
7893 _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7894 func_split_short_opt_arg=${1#??}
7895 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
b9668ba4 7896
059850b5
AK
7897 _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7898 case ${1} in
7899 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7900 *) func_lo2o_result=${1} ;;
7901 esac])
b9668ba4 7902
059850b5 7903 _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
b9668ba4 7904
059850b5 7905 _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
b9668ba4 7906
059850b5
AK
7907 _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
7908fi
b9668ba4 7909
059850b5
AK
7910if test x"$lt_shell_append" = xyes; then
7911 _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
b9668ba4 7912
059850b5
AK
7913 _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7914 func_quote_for_eval "${2}"
7915dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7916 eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
b9668ba4 7917
059850b5
AK
7918 # Save a `func_append' function call where possible by direct use of '+='
7919 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7920 && mv -f "$cfgfile.tmp" "$cfgfile" \
7921 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7922 test 0 -eq $? || _lt_function_replace_fail=:
7923else
7924 # Save a `func_append' function call even when '+=' is not available
7925 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7926 && mv -f "$cfgfile.tmp" "$cfgfile" \
7927 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7928 test 0 -eq $? || _lt_function_replace_fail=:
7929fi
b9668ba4 7930
059850b5
AK
7931if test x"$_lt_function_replace_fail" = x":"; then
7932 AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7933fi
7934])
b9668ba4 7935
059850b5
AK
7936# _LT_PATH_CONVERSION_FUNCTIONS
7937# -----------------------------
7938# Determine which file name conversion functions should be used by
7939# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
7940# for certain cross-compile configurations and native mingw.
7941m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7942[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7943AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7944AC_MSG_CHECKING([how to convert $build file names to $host format])
7945AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7946[case $host in
7947 *-*-mingw* )
7948 case $build in
7949 *-*-mingw* ) # actually msys
7950 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7951 ;;
7952 *-*-cygwin* )
7953 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7954 ;;
7955 * ) # otherwise, assume *nix
7956 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7957 ;;
7958 esac
5c706339 7959 ;;
059850b5
AK
7960 *-*-cygwin* )
7961 case $build in
7962 *-*-mingw* ) # actually msys
7963 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7964 ;;
7965 *-*-cygwin* )
7966 lt_cv_to_host_file_cmd=func_convert_file_noop
7967 ;;
7968 * ) # otherwise, assume *nix
7969 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7970 ;;
7971 esac
5c706339 7972 ;;
059850b5
AK
7973 * ) # unhandled hosts (and "normal" native builds)
7974 lt_cv_to_host_file_cmd=func_convert_file_noop
7975 ;;
7976esac
5c706339 7977])
059850b5
AK
7978to_host_file_cmd=$lt_cv_to_host_file_cmd
7979AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7980_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7981 [0], [convert $build file names to $host format])dnl
7982
7983AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7984AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7985[#assume ordinary cross tools, or native build.
7986lt_cv_to_tool_file_cmd=func_convert_file_noop
7987case $host in
7988 *-*-mingw* )
7989 case $build in
7990 *-*-mingw* ) # actually msys
7991 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7992 ;;
7993 esac
7994 ;;
7995esac
7996])
7997to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7998AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7999_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8000 [0], [convert $build files to toolchain format])dnl
8001])# _LT_PATH_CONVERSION_FUNCTIONS
b9668ba4 8002
5c706339
AK
8003# Helper functions for option handling. -*- Autoconf -*-
8004#
059850b5
AK
8005# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
8006# Inc.
5c706339
AK
8007# Written by Gary V. Vaughan, 2004
8008#
8009# This file is free software; the Free Software Foundation gives
8010# unlimited permission to copy and/or distribute it, with or without
8011# modifications, as long as this notice is preserved.
b9668ba4 8012
059850b5 8013# serial 7 ltoptions.m4
b9668ba4 8014
5c706339
AK
8015# This is to help aclocal find these macros, as it can't see m4_define.
8016AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
b9668ba4 8017
b9668ba4 8018
5c706339
AK
8019# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8020# ------------------------------------------
8021m4_define([_LT_MANGLE_OPTION],
8022[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
b9668ba4 8023
b9668ba4 8024
5c706339
AK
8025# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8026# ---------------------------------------
8027# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8028# matching handler defined, dispatch to it. Other OPTION-NAMEs are
8029# saved as a flag.
8030m4_define([_LT_SET_OPTION],
8031[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8032m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8033 _LT_MANGLE_DEFUN([$1], [$2]),
8034 [m4_warning([Unknown $1 option `$2'])])[]dnl
8035])
8036
8037
8038# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8039# ------------------------------------------------------------
8040# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8041m4_define([_LT_IF_OPTION],
8042[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8043
8044
8045# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8046# -------------------------------------------------------
8047# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8048# are set.
8049m4_define([_LT_UNLESS_OPTIONS],
8050[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8051 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8052 [m4_define([$0_found])])])[]dnl
8053m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8054])[]dnl
8055])
8056
8057
8058# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8059# ----------------------------------------
8060# OPTION-LIST is a space-separated list of Libtool options associated
8061# with MACRO-NAME. If any OPTION has a matching handler declared with
8062# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8063# the unknown option and exit.
8064m4_defun([_LT_SET_OPTIONS],
8065[# Set options
8066m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8067 [_LT_SET_OPTION([$1], _LT_Option)])
8068
8069m4_if([$1],[LT_INIT],[
8070 dnl
8071 dnl Simply set some default values (i.e off) if boolean options were not
8072 dnl specified:
8073 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8074 ])
8075 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8076 ])
8077 dnl
8078 dnl If no reference was made to various pairs of opposing options, then
8079 dnl we run the default mode handler for the pair. For example, if neither
8080 dnl `shared' nor `disable-shared' was passed, we enable building of shared
8081 dnl archives by default:
8082 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8083 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8084 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8085 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8086 [_LT_ENABLE_FAST_INSTALL])
8087 ])
8088])# _LT_SET_OPTIONS
8089
b9668ba4 8090
b9668ba4 8091
5c706339
AK
8092# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8093# -----------------------------------------
8094m4_define([_LT_MANGLE_DEFUN],
8095[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
b9668ba4 8096
b9668ba4 8097
5c706339
AK
8098# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8099# -----------------------------------------------
8100m4_define([LT_OPTION_DEFINE],
8101[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8102])# LT_OPTION_DEFINE
b9668ba4 8103
b9668ba4 8104
5c706339
AK
8105# dlopen
8106# ------
8107LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8108])
b9668ba4 8109
5c706339
AK
8110AU_DEFUN([AC_LIBTOOL_DLOPEN],
8111[_LT_SET_OPTION([LT_INIT], [dlopen])
8112AC_DIAGNOSE([obsolete],
8113[$0: Remove this warning and the call to _LT_SET_OPTION when you
8114put the `dlopen' option into LT_INIT's first parameter.])
8115])
b9668ba4 8116
5c706339
AK
8117dnl aclocal-1.4 backwards compatibility:
8118dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
b9668ba4 8119
b9668ba4 8120
5c706339
AK
8121# win32-dll
8122# ---------
8123# Declare package support for building win32 dll's.
8124LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8125[enable_win32_dll=yes
b9668ba4 8126
5c706339 8127case $host in
059850b5 8128*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
5c706339
AK
8129 AC_CHECK_TOOL(AS, as, false)
8130 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8131 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8132 ;;
8133esac
b9668ba4 8134
5c706339 8135test -z "$AS" && AS=as
059850b5 8136_LT_DECL([], [AS], [1], [Assembler program])dnl
b9668ba4 8137
5c706339 8138test -z "$DLLTOOL" && DLLTOOL=dlltool
059850b5 8139_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
b9668ba4 8140
5c706339 8141test -z "$OBJDUMP" && OBJDUMP=objdump
059850b5 8142_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
5c706339 8143])# win32-dll
b9668ba4 8144
5c706339
AK
8145AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8146[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8147_LT_SET_OPTION([LT_INIT], [win32-dll])
8148AC_DIAGNOSE([obsolete],
8149[$0: Remove this warning and the call to _LT_SET_OPTION when you
8150put the `win32-dll' option into LT_INIT's first parameter.])
8151])
b9668ba4 8152
5c706339
AK
8153dnl aclocal-1.4 backwards compatibility:
8154dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
b9668ba4 8155
b9668ba4 8156
5c706339
AK
8157# _LT_ENABLE_SHARED([DEFAULT])
8158# ----------------------------
8159# implement the --enable-shared flag, and supports the `shared' and
8160# `disable-shared' LT_INIT options.
8161# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8162m4_define([_LT_ENABLE_SHARED],
8163[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8164AC_ARG_ENABLE([shared],
8165 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8166 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8167 [p=${PACKAGE-default}
8168 case $enableval in
8169 yes) enable_shared=yes ;;
8170 no) enable_shared=no ;;
8171 *)
8172 enable_shared=no
8173 # Look at the argument we got. We use all the common list separators.
8174 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8175 for pkg in $enableval; do
8176 IFS="$lt_save_ifs"
8177 if test "X$pkg" = "X$p"; then
8178 enable_shared=yes
8179 fi
8180 done
8181 IFS="$lt_save_ifs"
b9668ba4 8182 ;;
5c706339
AK
8183 esac],
8184 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
b9668ba4 8185
5c706339
AK
8186 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8187 [Whether or not to build shared libraries])
8188])# _LT_ENABLE_SHARED
b9668ba4 8189
5c706339
AK
8190LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8191LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
b9668ba4 8192
5c706339
AK
8193# Old names:
8194AC_DEFUN([AC_ENABLE_SHARED],
8195[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8196])
b9668ba4 8197
5c706339
AK
8198AC_DEFUN([AC_DISABLE_SHARED],
8199[_LT_SET_OPTION([LT_INIT], [disable-shared])
8200])
b9668ba4 8201
5c706339
AK
8202AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8203AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
b9668ba4 8204
5c706339
AK
8205dnl aclocal-1.4 backwards compatibility:
8206dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8207dnl AC_DEFUN([AM_DISABLE_SHARED], [])
b9668ba4 8208
b9668ba4 8209
b9668ba4 8210
5c706339
AK
8211# _LT_ENABLE_STATIC([DEFAULT])
8212# ----------------------------
8213# implement the --enable-static flag, and support the `static' and
8214# `disable-static' LT_INIT options.
8215# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8216m4_define([_LT_ENABLE_STATIC],
8217[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8218AC_ARG_ENABLE([static],
8219 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8220 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8221 [p=${PACKAGE-default}
8222 case $enableval in
8223 yes) enable_static=yes ;;
8224 no) enable_static=no ;;
8225 *)
8226 enable_static=no
8227 # Look at the argument we got. We use all the common list separators.
8228 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8229 for pkg in $enableval; do
8230 IFS="$lt_save_ifs"
8231 if test "X$pkg" = "X$p"; then
8232 enable_static=yes
8233 fi
8234 done
8235 IFS="$lt_save_ifs"
b9668ba4 8236 ;;
5c706339
AK
8237 esac],
8238 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
b9668ba4 8239
5c706339
AK
8240 _LT_DECL([build_old_libs], [enable_static], [0],
8241 [Whether or not to build static libraries])
8242])# _LT_ENABLE_STATIC
b9668ba4 8243
5c706339
AK
8244LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8245LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
b9668ba4 8246
5c706339
AK
8247# Old names:
8248AC_DEFUN([AC_ENABLE_STATIC],
8249[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8250])
b9668ba4 8251
5c706339
AK
8252AC_DEFUN([AC_DISABLE_STATIC],
8253[_LT_SET_OPTION([LT_INIT], [disable-static])
8254])
b9668ba4 8255
5c706339
AK
8256AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8257AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
b9668ba4 8258
5c706339
AK
8259dnl aclocal-1.4 backwards compatibility:
8260dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8261dnl AC_DEFUN([AM_DISABLE_STATIC], [])
b9668ba4 8262
b9668ba4 8263
b9668ba4 8264
5c706339
AK
8265# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8266# ----------------------------------
8267# implement the --enable-fast-install flag, and support the `fast-install'
8268# and `disable-fast-install' LT_INIT options.
8269# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8270m4_define([_LT_ENABLE_FAST_INSTALL],
8271[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8272AC_ARG_ENABLE([fast-install],
8273 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8274 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8275 [p=${PACKAGE-default}
8276 case $enableval in
8277 yes) enable_fast_install=yes ;;
8278 no) enable_fast_install=no ;;
8279 *)
8280 enable_fast_install=no
8281 # Look at the argument we got. We use all the common list separators.
8282 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8283 for pkg in $enableval; do
8284 IFS="$lt_save_ifs"
8285 if test "X$pkg" = "X$p"; then
8286 enable_fast_install=yes
8287 fi
8288 done
8289 IFS="$lt_save_ifs"
b9668ba4 8290 ;;
5c706339
AK
8291 esac],
8292 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
b9668ba4 8293
5c706339
AK
8294_LT_DECL([fast_install], [enable_fast_install], [0],
8295 [Whether or not to optimize for fast installation])dnl
8296])# _LT_ENABLE_FAST_INSTALL
b9668ba4 8297
5c706339
AK
8298LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8299LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
b9668ba4 8300
5c706339
AK
8301# Old names:
8302AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8303[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8304AC_DIAGNOSE([obsolete],
8305[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8306the `fast-install' option into LT_INIT's first parameter.])
8307])
b9668ba4 8308
5c706339
AK
8309AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8310[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8311AC_DIAGNOSE([obsolete],
8312[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8313the `disable-fast-install' option into LT_INIT's first parameter.])
8314])
b9668ba4 8315
5c706339
AK
8316dnl aclocal-1.4 backwards compatibility:
8317dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8318dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
b9668ba4 8319
b9668ba4 8320
5c706339
AK
8321# _LT_WITH_PIC([MODE])
8322# --------------------
8323# implement the --with-pic flag, and support the `pic-only' and `no-pic'
8324# LT_INIT options.
8325# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
8326m4_define([_LT_WITH_PIC],
8327[AC_ARG_WITH([pic],
059850b5 8328 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
5c706339 8329 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
059850b5
AK
8330 [lt_p=${PACKAGE-default}
8331 case $withval in
8332 yes|no) pic_mode=$withval ;;
8333 *)
8334 pic_mode=default
8335 # Look at the argument we got. We use all the common list separators.
8336 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8337 for lt_pkg in $withval; do
8338 IFS="$lt_save_ifs"
8339 if test "X$lt_pkg" = "X$lt_p"; then
8340 pic_mode=yes
8341 fi
8342 done
8343 IFS="$lt_save_ifs"
8344 ;;
8345 esac],
5c706339 8346 [pic_mode=default])
b9668ba4 8347
5c706339 8348test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
b9668ba4 8349
5c706339
AK
8350_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8351])# _LT_WITH_PIC
b9668ba4 8352
5c706339
AK
8353LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8354LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8355
8356# Old name:
8357AU_DEFUN([AC_LIBTOOL_PICMODE],
8358[_LT_SET_OPTION([LT_INIT], [pic-only])
8359AC_DIAGNOSE([obsolete],
8360[$0: Remove this warning and the call to _LT_SET_OPTION when you
8361put the `pic-only' option into LT_INIT's first parameter.])
b9668ba4 8362])
b9668ba4 8363
5c706339
AK
8364dnl aclocal-1.4 backwards compatibility:
8365dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
b9668ba4 8366
b9668ba4 8367
5c706339
AK
8368m4_define([_LTDL_MODE], [])
8369LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8370 [m4_define([_LTDL_MODE], [nonrecursive])])
8371LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8372 [m4_define([_LTDL_MODE], [recursive])])
8373LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8374 [m4_define([_LTDL_MODE], [subproject])])
b9668ba4 8375
5c706339
AK
8376m4_define([_LTDL_TYPE], [])
8377LT_OPTION_DEFINE([LTDL_INIT], [installable],
8378 [m4_define([_LTDL_TYPE], [installable])])
8379LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8380 [m4_define([_LTDL_TYPE], [convenience])])
b9668ba4 8381
5c706339 8382# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
b9668ba4 8383#
47dc80f6
AK
8384# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
8385# Written by Gary V. Vaughan, 2004
b9668ba4 8386#
5c706339
AK
8387# This file is free software; the Free Software Foundation gives
8388# unlimited permission to copy and/or distribute it, with or without
8389# modifications, as long as this notice is preserved.
8390
47dc80f6 8391# serial 6 ltsugar.m4
5c706339
AK
8392
8393# This is to help aclocal find these macros, as it can't see m4_define.
8394AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8395
8396
8397# lt_join(SEP, ARG1, [ARG2...])
8398# -----------------------------
8399# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8400# associated separator.
8401# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8402# versions in m4sugar had bugs.
8403m4_define([lt_join],
8404[m4_if([$#], [1], [],
8405 [$#], [2], [[$2]],
8406 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8407m4_define([_lt_join],
8408[m4_if([$#$2], [2], [],
8409 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8410
8411
8412# lt_car(LIST)
8413# lt_cdr(LIST)
8414# ------------
8415# Manipulate m4 lists.
8416# These macros are necessary as long as will still need to support
8417# Autoconf-2.59 which quotes differently.
8418m4_define([lt_car], [[$1]])
8419m4_define([lt_cdr],
8420[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8421 [$#], 1, [],
8422 [m4_dquote(m4_shift($@))])])
8423m4_define([lt_unquote], $1)
8424
8425
8426# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8427# ------------------------------------------
8428# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
8429# Note that neither SEPARATOR nor STRING are expanded; they are appended
8430# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8431# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8432# than defined and empty).
b9668ba4 8433#
5c706339
AK
8434# This macro is needed until we can rely on Autoconf 2.62, since earlier
8435# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8436m4_define([lt_append],
8437[m4_define([$1],
8438 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8439
8440
8441
8442# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8443# ----------------------------------------------------------
8444# Produce a SEP delimited list of all paired combinations of elements of
8445# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8446# has the form PREFIXmINFIXSUFFIXn.
47dc80f6 8447# Needed until we can rely on m4_combine added in Autoconf 2.62.
5c706339 8448m4_define([lt_combine],
47dc80f6
AK
8449[m4_if(m4_eval([$# > 3]), [1],
8450 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8451[[m4_foreach([_Lt_prefix], [$2],
8452 [m4_foreach([_Lt_suffix],
8453 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8454 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
b9668ba4
AK
8455
8456
5c706339
AK
8457# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8458# -----------------------------------------------------------------------
8459# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8460# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8461m4_define([lt_if_append_uniq],
8462[m4_ifdef([$1],
8463 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8464 [lt_append([$1], [$2], [$3])$4],
8465 [$5])],
8466 [lt_append([$1], [$2], [$3])$4])])
b9668ba4
AK
8467
8468
5c706339
AK
8469# lt_dict_add(DICT, KEY, VALUE)
8470# -----------------------------
8471m4_define([lt_dict_add],
8472[m4_define([$1($2)], [$3])])
b9668ba4 8473
b9668ba4 8474
5c706339
AK
8475# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8476# --------------------------------------------
8477m4_define([lt_dict_add_subkey],
8478[m4_define([$1($2:$3)], [$4])])
b9668ba4 8479
b9668ba4 8480
5c706339
AK
8481# lt_dict_fetch(DICT, KEY, [SUBKEY])
8482# ----------------------------------
8483m4_define([lt_dict_fetch],
8484[m4_ifval([$3],
8485 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8486 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8487
8488
8489# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8490# -----------------------------------------------------------------
8491m4_define([lt_if_dict_fetch],
8492[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8493 [$5],
8494 [$6])])
8495
8496
8497# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8498# --------------------------------------------------------------
8499m4_define([lt_dict_filter],
8500[m4_if([$5], [], [],
8501 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8502 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8503 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
b9668ba4 8504])
5c706339
AK
8505
8506# ltversion.m4 -- version numbers -*- Autoconf -*-
8507#
8508# Copyright (C) 2004 Free Software Foundation, Inc.
8509# Written by Scott James Remnant, 2004
8510#
8511# This file is free software; the Free Software Foundation gives
8512# unlimited permission to copy and/or distribute it, with or without
8513# modifications, as long as this notice is preserved.
8514
059850b5 8515# @configure_input@
5c706339 8516
059850b5 8517# serial 3337 ltversion.m4
5c706339
AK
8518# This file is part of GNU Libtool
8519
059850b5
AK
8520m4_define([LT_PACKAGE_VERSION], [2.4.2])
8521m4_define([LT_PACKAGE_REVISION], [1.3337])
5c706339
AK
8522
8523AC_DEFUN([LTVERSION_VERSION],
059850b5
AK
8524[macro_version='2.4.2'
8525macro_revision='1.3337'
5c706339
AK
8526_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8527_LT_DECL(, macro_revision, 0)
b9668ba4
AK
8528])
8529
5c706339
AK
8530# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8531#
059850b5 8532# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
5c706339
AK
8533# Written by Scott James Remnant, 2004.
8534#
8535# This file is free software; the Free Software Foundation gives
8536# unlimited permission to copy and/or distribute it, with or without
8537# modifications, as long as this notice is preserved.
8538
059850b5 8539# serial 5 lt~obsolete.m4
5c706339
AK
8540
8541# These exist entirely to fool aclocal when bootstrapping libtool.
8542#
8543# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
8544# which have later been changed to m4_define as they aren't part of the
8545# exported API, or moved to Autoconf or Automake where they belong.
8546#
8547# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8548# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8549# using a macro with the same name in our local m4/libtool.m4 it'll
8550# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8551# and doesn't know about Autoconf macros at all.)
8552#
8553# So we provide this file, which has a silly filename so it's always
8554# included after everything else. This provides aclocal with the
8555# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8556# because those macros already exist, or will be overwritten later.
8557# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8558#
8559# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8560# Yes, that means every name once taken will need to remain here until
8561# we give up compatibility with versions before 1.7, at which point
8562# we need to keep only those names which we still refer to.
8563
8564# This is to help aclocal find these macros, as it can't see m4_define.
8565AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8566
8567m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8568m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8569m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8570m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8571m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8572m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8573m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8574m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8575m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8576m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
8577m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
8578m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8579m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8580m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8581m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
8582m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
8583m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
8584m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
8585m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
8586m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
8587m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
8588m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
8589m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
8590m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
8591m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
8592m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
8593m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
8594m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
8595m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
8596m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
8597m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
8598m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
8599m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
8600m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
8601m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
8602m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
8603m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
8604m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
8605m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
8606m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
8607m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
8608m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
5c706339
AK
8609m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
8610m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
8611m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
8612m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
8613m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
8614m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
8615m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
8616m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
8617m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
8618m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
8619m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
8620m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
059850b5
AK
8621m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
8622m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
8623m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
8624m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
8625m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
8626m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
8627m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
8628
8629# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software
8630# Foundation, Inc.
b9668ba4
AK
8631#
8632# This file is free software; the Free Software Foundation
8633# gives unlimited permission to copy and/or distribute it,
8634# with or without modifications, as long as this notice is preserved.
8635
059850b5
AK
8636# serial 1
8637
b9668ba4
AK
8638# AM_AUTOMAKE_VERSION(VERSION)
8639# ----------------------------
8640# Automake X.Y traces this macro to ensure aclocal.m4 has been
8641# generated from the m4 files accompanying Automake X.Y.
5c706339
AK
8642# (This private macro should not be called outside this file.)
8643AC_DEFUN([AM_AUTOMAKE_VERSION],
0fbeb4dc 8644[am__api_version='1.11'
5c706339
AK
8645dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
8646dnl require some minimum version. Point them to the right macro.
059850b5 8647m4_if([$1], [1.11.3], [],
5c706339
AK
8648 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
8649])
8650
8651# _AM_AUTOCONF_VERSION(VERSION)
8652# -----------------------------
8653# aclocal traces this macro to find the Autoconf version.
8654# This is a private macro too. Using m4_define simplifies
8655# the logic in aclocal, which can simply ignore this definition.
8656m4_define([_AM_AUTOCONF_VERSION], [])
b9668ba4
AK
8657
8658# AM_SET_CURRENT_AUTOMAKE_VERSION
8659# -------------------------------
5c706339 8660# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
47dc80f6 8661# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
b9668ba4 8662AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
059850b5 8663[AM_AUTOMAKE_VERSION([1.11.3])dnl
5c706339
AK
8664m4_ifndef([AC_AUTOCONF_VERSION],
8665 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
47dc80f6 8666_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
b9668ba4
AK
8667
8668# AM_AUX_DIR_EXPAND -*- Autoconf -*-
8669
059850b5 8670# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
b9668ba4
AK
8671#
8672# This file is free software; the Free Software Foundation
8673# gives unlimited permission to copy and/or distribute it,
8674# with or without modifications, as long as this notice is preserved.
8675
059850b5
AK
8676# serial 1
8677
b9668ba4
AK
8678# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
8679# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
8680# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
8681#
8682# Of course, Automake must honor this variable whenever it calls a
8683# tool from the auxiliary directory. The problem is that $srcdir (and
8684# therefore $ac_aux_dir as well) can be either absolute or relative,
8685# depending on how configure is run. This is pretty annoying, since
8686# it makes $ac_aux_dir quite unusable in subdirectories: in the top
8687# source directory, any form will work fine, but in subdirectories a
8688# relative path needs to be adjusted first.
8689#
8690# $ac_aux_dir/missing
8691# fails when called from a subdirectory if $ac_aux_dir is relative
8692# $top_srcdir/$ac_aux_dir/missing
8693# fails if $ac_aux_dir is absolute,
8694# fails when called from a subdirectory in a VPATH build with
8695# a relative $ac_aux_dir
8696#
8697# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
8698# are both prefixed by $srcdir. In an in-source build this is usually
8699# harmless because $srcdir is `.', but things will broke when you
8700# start a VPATH build or use an absolute $srcdir.
8701#
8702# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
8703# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
8704# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
8705# and then we would define $MISSING as
8706# MISSING="\${SHELL} $am_aux_dir/missing"
8707# This will work as long as MISSING is not called from configure, because
8708# unfortunately $(top_srcdir) has no meaning in configure.
8709# However there are other variables, like CC, which are often used in
8710# configure, and could therefore not use this "fixed" $ac_aux_dir.
8711#
8712# Another solution, used here, is to always expand $ac_aux_dir to an
8713# absolute PATH. The drawback is that using absolute paths prevent a
8714# configured tree to be moved without reconfiguration.
8715
8716AC_DEFUN([AM_AUX_DIR_EXPAND],
8717[dnl Rely on autoconf to set up CDPATH properly.
8718AC_PREREQ([2.50])dnl
8719# expand $ac_aux_dir to an absolute path
8720am_aux_dir=`cd $ac_aux_dir && pwd`
8721])
8722
8723# AM_CONDITIONAL -*- Autoconf -*-
8724
0fbeb4dc 8725# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
b9668ba4
AK
8726# Free Software Foundation, Inc.
8727#
8728# This file is free software; the Free Software Foundation
8729# gives unlimited permission to copy and/or distribute it,
8730# with or without modifications, as long as this notice is preserved.
8731
0fbeb4dc 8732# serial 9
b9668ba4
AK
8733
8734# AM_CONDITIONAL(NAME, SHELL-CONDITION)
8735# -------------------------------------
8736# Define a conditional.
8737AC_DEFUN([AM_CONDITIONAL],
8738[AC_PREREQ(2.52)dnl
8739 ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
8740 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
5c706339
AK
8741AC_SUBST([$1_TRUE])dnl
8742AC_SUBST([$1_FALSE])dnl
8743_AM_SUBST_NOTMAKE([$1_TRUE])dnl
8744_AM_SUBST_NOTMAKE([$1_FALSE])dnl
0fbeb4dc 8745m4_define([_AM_COND_VALUE_$1], [$2])dnl
b9668ba4
AK
8746if $2; then
8747 $1_TRUE=
8748 $1_FALSE='#'
8749else
8750 $1_TRUE='#'
8751 $1_FALSE=
8752fi
8753AC_CONFIG_COMMANDS_PRE(
8754[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
8755 AC_MSG_ERROR([[conditional "$1" was never defined.
8756Usually this means the macro was only invoked conditionally.]])
8757fi])])
8758
059850b5
AK
8759# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009,
8760# 2010, 2011 Free Software Foundation, Inc.
b9668ba4
AK
8761#
8762# This file is free software; the Free Software Foundation
8763# gives unlimited permission to copy and/or distribute it,
8764# with or without modifications, as long as this notice is preserved.
8765
059850b5 8766# serial 12
b9668ba4
AK
8767
8768# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
8769# written in clear, in which case automake, when reading aclocal.m4,
8770# will think it sees a *use*, and therefore will trigger all it's
8771# C support machinery. Also note that it means that autoscan, seeing
8772# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
8773
8774
8775# _AM_DEPENDENCIES(NAME)
8776# ----------------------
8777# See how the compiler implements dependency checking.
8778# NAME is "CC", "CXX", "GCJ", or "OBJC".
8779# We try a few techniques and use that to set a single cache variable.
8780#
8781# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
8782# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
8783# dependency, and given that the user is not expected to run this macro,
8784# just rely on AC_PROG_CC.
8785AC_DEFUN([_AM_DEPENDENCIES],
8786[AC_REQUIRE([AM_SET_DEPDIR])dnl
8787AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
8788AC_REQUIRE([AM_MAKE_INCLUDE])dnl
8789AC_REQUIRE([AM_DEP_TRACK])dnl
8790
8791ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
8792 [$1], CXX, [depcc="$CXX" am_compiler_list=],
8793 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
5c706339 8794 [$1], UPC, [depcc="$UPC" am_compiler_list=],
b9668ba4
AK
8795 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
8796 [depcc="$$1" am_compiler_list=])
8797
8798AC_CACHE_CHECK([dependency style of $depcc],
8799 [am_cv_$1_dependencies_compiler_type],
8800[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
8801 # We make a subdir and do the tests there. Otherwise we can end up
8802 # making bogus files that we don't know about and never remove. For
8803 # instance it was reported that on HP-UX the gcc test will end up
8804 # making a dummy file named `D' -- because `-MD' means `put the output
8805 # in D'.
059850b5 8806 rm -rf conftest.dir
b9668ba4
AK
8807 mkdir conftest.dir
8808 # Copy depcomp to subdir because otherwise we won't find it if we're
8809 # using a relative directory.
8810 cp "$am_depcomp" conftest.dir
8811 cd conftest.dir
8812 # We will build objects and dependencies in a subdirectory because
8813 # it helps to detect inapplicable dependency modes. For instance
8814 # both Tru64's cc and ICC support -MD to output dependencies as a
8815 # side effect of compilation, but ICC will put the dependencies in
8816 # the current directory while Tru64 will put them in the object
8817 # directory.
8818 mkdir sub
8819
8820 am_cv_$1_dependencies_compiler_type=none
8821 if test "$am_compiler_list" = ""; then
8822 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
8823 fi
0fbeb4dc
AK
8824 am__universal=false
8825 m4_case([$1], [CC],
8826 [case " $depcc " in #(
8827 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8828 esac],
8829 [CXX],
8830 [case " $depcc " in #(
8831 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8832 esac])
8833
b9668ba4
AK
8834 for depmode in $am_compiler_list; do
8835 # Setup a source with many dependencies, because some compilers
8836 # like to wrap large dependency lists on column 80 (with \), and
8837 # we should not choose a depcomp mode which is confused by this.
8838 #
8839 # We need to recreate these files for each test, as the compiler may
8840 # overwrite some of them when testing with obscure command lines.
8841 # This happens at least with the AIX C compiler.
8842 : > sub/conftest.c
8843 for i in 1 2 3 4 5 6; do
8844 echo '#include "conftst'$i'.h"' >> sub/conftest.c
8845 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
8846 # Solaris 8's {/usr,}/bin/sh.
8847 touch sub/conftst$i.h
8848 done
8849 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
8850
0fbeb4dc
AK
8851 # We check with `-c' and `-o' for the sake of the "dashmstdout"
8852 # mode. It turns out that the SunPro C++ compiler does not properly
8853 # handle `-M -o', and we need to detect this. Also, some Intel
8854 # versions had trouble with output in subdirs
8855 am__obj=sub/conftest.${OBJEXT-o}
8856 am__minus_obj="-o $am__obj"
b9668ba4 8857 case $depmode in
0fbeb4dc
AK
8858 gcc)
8859 # This depmode causes a compiler race in universal mode.
8860 test "$am__universal" = false || continue
8861 ;;
b9668ba4
AK
8862 nosideeffect)
8863 # after this tag, mechanisms are not by side-effect, so they'll
8864 # only be used when explicitly requested
8865 if test "x$enable_dependency_tracking" = xyes; then
8866 continue
8867 else
8868 break
8869 fi
8870 ;;
059850b5 8871 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
0fbeb4dc
AK
8872 # This compiler won't grok `-c -o', but also, the minuso test has
8873 # not run yet. These depmodes are late enough in the game, and
8874 # so weak that their functioning should not be impacted.
8875 am__obj=conftest.${OBJEXT-o}
8876 am__minus_obj=
8877 ;;
b9668ba4
AK
8878 none) break ;;
8879 esac
b9668ba4 8880 if depmode=$depmode \
0fbeb4dc 8881 source=sub/conftest.c object=$am__obj \
b9668ba4 8882 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
0fbeb4dc 8883 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
b9668ba4 8884 >/dev/null 2>conftest.err &&
5c706339 8885 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
b9668ba4 8886 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
0fbeb4dc 8887 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
b9668ba4
AK
8888 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
8889 # icc doesn't choke on unknown options, it will just issue warnings
8890 # or remarks (even with -Werror). So we grep stderr for any message
8891 # that says an option was ignored or not supported.
8892 # When given -MP, icc 7.0 and 7.1 complain thusly:
8893 # icc: Command line warning: ignoring option '-M'; no argument required
8894 # The diagnosis changed in icc 8.0:
8895 # icc: Command line remark: option '-MP' not supported
8896 if (grep 'ignoring option' conftest.err ||
8897 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
8898 am_cv_$1_dependencies_compiler_type=$depmode
8899 break
8900 fi
8901 fi
8902 done
8903
8904 cd ..
8905 rm -rf conftest.dir
8906else
8907 am_cv_$1_dependencies_compiler_type=none
8908fi
8909])
8910AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
8911AM_CONDITIONAL([am__fastdep$1], [
8912 test "x$enable_dependency_tracking" != xno \
8913 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
8914])
8915
8916
8917# AM_SET_DEPDIR
8918# -------------
8919# Choose a directory name for dependency files.
8920# This macro is AC_REQUIREd in _AM_DEPENDENCIES
8921AC_DEFUN([AM_SET_DEPDIR],
8922[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
8923AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
8924])
8925
8926
8927# AM_DEP_TRACK
8928# ------------
8929AC_DEFUN([AM_DEP_TRACK],
8930[AC_ARG_ENABLE(dependency-tracking,
8931[ --disable-dependency-tracking speeds up one-time build
8932 --enable-dependency-tracking do not reject slow dependency extractors])
8933if test "x$enable_dependency_tracking" != xno; then
8934 am_depcomp="$ac_aux_dir/depcomp"
8935 AMDEPBACKSLASH='\'
059850b5 8936 am__nodep='_no'
b9668ba4
AK
8937fi
8938AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
5c706339
AK
8939AC_SUBST([AMDEPBACKSLASH])dnl
8940_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
059850b5
AK
8941AC_SUBST([am__nodep])dnl
8942_AM_SUBST_NOTMAKE([am__nodep])dnl
b9668ba4
AK
8943])
8944
8945# Generate code to set up dependency tracking. -*- Autoconf -*-
8946
47dc80f6 8947# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
b9668ba4
AK
8948# Free Software Foundation, Inc.
8949#
8950# This file is free software; the Free Software Foundation
8951# gives unlimited permission to copy and/or distribute it,
8952# with or without modifications, as long as this notice is preserved.
8953
47dc80f6 8954#serial 5
b9668ba4
AK
8955
8956# _AM_OUTPUT_DEPENDENCY_COMMANDS
8957# ------------------------------
8958AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
47dc80f6
AK
8959[{
8960 # Autoconf 2.62 quotes --file arguments for eval, but not when files
8961 # are listed without --file. Let's play safe and only enable the eval
8962 # if we detect the quoting.
8963 case $CONFIG_FILES in
8964 *\'*) eval set x "$CONFIG_FILES" ;;
8965 *) set x $CONFIG_FILES ;;
8966 esac
8967 shift
8968 for mf
8969 do
8970 # Strip MF so we end up with the name of the file.
8971 mf=`echo "$mf" | sed -e 's/:.*$//'`
8972 # Check whether this is an Automake generated Makefile or not.
8973 # We used to match only the files named `Makefile.in', but
8974 # some people rename them; so instead we look at the file content.
8975 # Grep'ing the first line is not enough: some people post-process
8976 # each Makefile.in and add a new line on top of each file to say so.
8977 # Grep'ing the whole file is not good either: AIX grep has a line
8978 # limit of 2048, but all sed's we know have understand at least 4000.
8979 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
8980 dirpart=`AS_DIRNAME("$mf")`
8981 else
8982 continue
8983 fi
8984 # Extract the definition of DEPDIR, am__include, and am__quote
8985 # from the Makefile without running `make'.
8986 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
8987 test -z "$DEPDIR" && continue
8988 am__include=`sed -n 's/^am__include = //p' < "$mf"`
8989 test -z "am__include" && continue
8990 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
8991 # When using ansi2knr, U may be empty or an underscore; expand it
8992 U=`sed -n 's/^U = //p' < "$mf"`
8993 # Find all dependency output files, they are included files with
8994 # $(DEPDIR) in their names. We invoke sed twice because it is the
8995 # simplest approach to changing $(DEPDIR) to its actual value in the
8996 # expansion.
8997 for file in `sed -n "
8998 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
8999 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
9000 # Make sure the directory exists.
9001 test -f "$dirpart/$file" && continue
9002 fdir=`AS_DIRNAME(["$file"])`
9003 AS_MKDIR_P([$dirpart/$fdir])
9004 # echo "creating $dirpart/$file"
9005 echo '# dummy' > "$dirpart/$file"
9006 done
b9668ba4 9007 done
47dc80f6 9008}
b9668ba4
AK
9009])# _AM_OUTPUT_DEPENDENCY_COMMANDS
9010
9011
9012# AM_OUTPUT_DEPENDENCY_COMMANDS
9013# -----------------------------
9014# This macro should only be invoked once -- use via AC_REQUIRE.
9015#
9016# This code is only required when automatic dependency tracking
9017# is enabled. FIXME. This creates each `.P' file that we will
9018# need in order to bootstrap the dependency handling code.
9019AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9020[AC_CONFIG_COMMANDS([depfiles],
9021 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
9022 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
9023])
9024
9025# Do all the work for Automake. -*- Autoconf -*-
9026
5c706339 9027# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
0fbeb4dc 9028# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
b9668ba4
AK
9029#
9030# This file is free software; the Free Software Foundation
9031# gives unlimited permission to copy and/or distribute it,
9032# with or without modifications, as long as this notice is preserved.
9033
0fbeb4dc 9034# serial 16
b9668ba4
AK
9035
9036# This macro actually does too much. Some checks are only needed if
9037# your package does certain things. But this isn't really a big deal.
9038
9039# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9040# AM_INIT_AUTOMAKE([OPTIONS])
9041# -----------------------------------------------
9042# The call with PACKAGE and VERSION arguments is the old style
9043# call (pre autoconf-2.50), which is being phased out. PACKAGE
9044# and VERSION should now be passed to AC_INIT and removed from
9045# the call to AM_INIT_AUTOMAKE.
9046# We support both call styles for the transition. After
9047# the next Automake release, Autoconf can make the AC_INIT
9048# arguments mandatory, and then we can depend on a new Autoconf
9049# release and drop the old call support.
9050AC_DEFUN([AM_INIT_AUTOMAKE],
0fbeb4dc 9051[AC_PREREQ([2.62])dnl
b9668ba4
AK
9052dnl Autoconf wants to disallow AM_ names. We explicitly allow
9053dnl the ones we care about.
9054m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9055AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9056AC_REQUIRE([AC_PROG_INSTALL])dnl
5c706339
AK
9057if test "`cd $srcdir && pwd`" != "`pwd`"; then
9058 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9059 # is not polluted with repeated "-I."
9060 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9061 # test to see if srcdir already configured
9062 if test -f $srcdir/config.status; then
9063 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9064 fi
b9668ba4
AK
9065fi
9066
9067# test whether we have cygpath
9068if test -z "$CYGPATH_W"; then
9069 if (cygpath --version) >/dev/null 2>/dev/null; then
9070 CYGPATH_W='cygpath -w'
9071 else
9072 CYGPATH_W=echo
9073 fi
9074fi
9075AC_SUBST([CYGPATH_W])
9076
9077# Define the identity of the package.
9078dnl Distinguish between old-style and new-style calls.
9079m4_ifval([$2],
9080[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
9081 AC_SUBST([PACKAGE], [$1])dnl
9082 AC_SUBST([VERSION], [$2])],
9083[_AM_SET_OPTIONS([$1])dnl
5c706339
AK
9084dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
9085m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
9086 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
b9668ba4
AK
9087 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9088 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9089
9090_AM_IF_OPTION([no-define],,
9091[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
9092 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
9093
9094# Some tools Automake needs.
9095AC_REQUIRE([AM_SANITY_CHECK])dnl
9096AC_REQUIRE([AC_ARG_PROGRAM])dnl
9097AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
9098AM_MISSING_PROG(AUTOCONF, autoconf)
9099AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
9100AM_MISSING_PROG(AUTOHEADER, autoheader)
9101AM_MISSING_PROG(MAKEINFO, makeinfo)
0fbeb4dc
AK
9102AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9103AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
b9668ba4
AK
9104AC_REQUIRE([AM_PROG_MKDIR_P])dnl
9105# We need awk for the "check" target. The system "awk" is bad on
9106# some platforms.
9107AC_REQUIRE([AC_PROG_AWK])dnl
9108AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9109AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9110_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
0fbeb4dc
AK
9111 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9112 [_AM_PROG_TAR([v7])])])
b9668ba4
AK
9113_AM_IF_OPTION([no-dependencies],,
9114[AC_PROVIDE_IFELSE([AC_PROG_CC],
0fbeb4dc
AK
9115 [_AM_DEPENDENCIES(CC)],
9116 [define([AC_PROG_CC],
9117 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
b9668ba4 9118AC_PROVIDE_IFELSE([AC_PROG_CXX],
0fbeb4dc
AK
9119 [_AM_DEPENDENCIES(CXX)],
9120 [define([AC_PROG_CXX],
9121 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
5c706339 9122AC_PROVIDE_IFELSE([AC_PROG_OBJC],
0fbeb4dc
AK
9123 [_AM_DEPENDENCIES(OBJC)],
9124 [define([AC_PROG_OBJC],
9125 defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
b9668ba4 9126])
0fbeb4dc
AK
9127_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
9128dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
9129dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
9130dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
9131AC_CONFIG_COMMANDS_PRE(dnl
9132[m4_provide_if([_AM_COMPILER_EXEEXT],
9133 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
b9668ba4
AK
9134])
9135
0fbeb4dc
AK
9136dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
9137dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9138dnl mangled by Autoconf and run in a shell conditional statement.
9139m4_define([_AC_COMPILER_EXEEXT],
9140m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9141
b9668ba4
AK
9142
9143# When config.status generates a header, we must update the stamp-h file.
9144# This file resides in the same directory as the config header
9145# that is generated. The stamp files are numbered to have different names.
9146
9147# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9148# loop where config.status creates the headers, so we can generate
9149# our stamp files there.
9150AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9151[# Compute $1's index in $config_headers.
5c706339 9152_am_arg=$1
b9668ba4
AK
9153_am_stamp_count=1
9154for _am_header in $config_headers :; do
9155 case $_am_header in
5c706339 9156 $_am_arg | $_am_arg:* )
b9668ba4
AK
9157 break ;;
9158 * )
9159 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9160 esac
9161done
5c706339 9162echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
b9668ba4 9163
059850b5
AK
9164# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation,
9165# Inc.
b9668ba4
AK
9166#
9167# This file is free software; the Free Software Foundation
9168# gives unlimited permission to copy and/or distribute it,
9169# with or without modifications, as long as this notice is preserved.
9170
059850b5
AK
9171# serial 1
9172
b9668ba4
AK
9173# AM_PROG_INSTALL_SH
9174# ------------------
9175# Define $install_sh.
9176AC_DEFUN([AM_PROG_INSTALL_SH],
9177[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
0fbeb4dc
AK
9178if test x"${install_sh}" != xset; then
9179 case $am_aux_dir in
9180 *\ * | *\ *)
9181 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9182 *)
9183 install_sh="\${SHELL} $am_aux_dir/install-sh"
9184 esac
9185fi
b9668ba4
AK
9186AC_SUBST(install_sh)])
9187
9188# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
9189#
9190# This file is free software; the Free Software Foundation
9191# gives unlimited permission to copy and/or distribute it,
9192# with or without modifications, as long as this notice is preserved.
9193
9194# serial 2
9195
9196# Check whether the underlying file-system supports filenames
9197# with a leading dot. For instance MS-DOS doesn't.
9198AC_DEFUN([AM_SET_LEADING_DOT],
9199[rm -rf .tst 2>/dev/null
9200mkdir .tst 2>/dev/null
9201if test -d .tst; then
9202 am__leading_dot=.
9203else
9204 am__leading_dot=_
9205fi
9206rmdir .tst 2>/dev/null
9207AC_SUBST([am__leading_dot])])
9208
9209# Check to see how 'make' treats includes. -*- Autoconf -*-
9210
0fbeb4dc 9211# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
b9668ba4
AK
9212#
9213# This file is free software; the Free Software Foundation
9214# gives unlimited permission to copy and/or distribute it,
9215# with or without modifications, as long as this notice is preserved.
9216
0fbeb4dc 9217# serial 4
b9668ba4
AK
9218
9219# AM_MAKE_INCLUDE()
9220# -----------------
9221# Check to see how make treats includes.
9222AC_DEFUN([AM_MAKE_INCLUDE],
9223[am_make=${MAKE-make}
9224cat > confinc << 'END'
9225am__doit:
0fbeb4dc 9226 @echo this is the am__doit target
b9668ba4
AK
9227.PHONY: am__doit
9228END
9229# If we don't find an include directive, just comment out the code.
9230AC_MSG_CHECKING([for style of include used by $am_make])
9231am__include="#"
9232am__quote=
9233_am_result=none
9234# First try GNU make style include.
9235echo "include confinc" > confmf
0fbeb4dc
AK
9236# Ignore all kinds of additional output from `make'.
9237case `$am_make -s -f confmf 2> /dev/null` in #(
9238*the\ am__doit\ target*)
9239 am__include=include
9240 am__quote=
9241 _am_result=GNU
9242 ;;
9243esac
b9668ba4
AK
9244# Now try BSD make style include.
9245if test "$am__include" = "#"; then
9246 echo '.include "confinc"' > confmf
0fbeb4dc
AK
9247 case `$am_make -s -f confmf 2> /dev/null` in #(
9248 *the\ am__doit\ target*)
9249 am__include=.include
9250 am__quote="\""
9251 _am_result=BSD
9252 ;;
9253 esac
b9668ba4
AK
9254fi
9255AC_SUBST([am__include])
9256AC_SUBST([am__quote])
9257AC_MSG_RESULT([$_am_result])
9258rm -f confinc confmf
9259])
9260
9261# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9262
0fbeb4dc 9263# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
b9668ba4
AK
9264# Free Software Foundation, Inc.
9265#
9266# This file is free software; the Free Software Foundation
9267# gives unlimited permission to copy and/or distribute it,
9268# with or without modifications, as long as this notice is preserved.
9269
0fbeb4dc 9270# serial 6
b9668ba4
AK
9271
9272# AM_MISSING_PROG(NAME, PROGRAM)
9273# ------------------------------
9274AC_DEFUN([AM_MISSING_PROG],
9275[AC_REQUIRE([AM_MISSING_HAS_RUN])
9276$1=${$1-"${am_missing_run}$2"}
9277AC_SUBST($1)])
9278
9279
9280# AM_MISSING_HAS_RUN
9281# ------------------
9282# Define MISSING if not defined so far and test if it supports --run.
9283# If it does, set am_missing_run to use it, otherwise, to nothing.
9284AC_DEFUN([AM_MISSING_HAS_RUN],
9285[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
5c706339 9286AC_REQUIRE_AUX_FILE([missing])dnl
0fbeb4dc
AK
9287if test x"${MISSING+set}" != xset; then
9288 case $am_aux_dir in
9289 *\ * | *\ *)
9290 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9291 *)
9292 MISSING="\${SHELL} $am_aux_dir/missing" ;;
9293 esac
9294fi
b9668ba4
AK
9295# Use eval to expand $SHELL
9296if eval "$MISSING --run true"; then
9297 am_missing_run="$MISSING --run "
9298else
9299 am_missing_run=
9300 AC_MSG_WARN([`missing' script is too old or missing])
9301fi
9302])
9303
059850b5
AK
9304# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation,
9305# Inc.
b9668ba4
AK
9306#
9307# This file is free software; the Free Software Foundation
9308# gives unlimited permission to copy and/or distribute it,
9309# with or without modifications, as long as this notice is preserved.
9310
059850b5
AK
9311# serial 1
9312
b9668ba4
AK
9313# AM_PROG_MKDIR_P
9314# ---------------
5c706339 9315# Check for `mkdir -p'.
b9668ba4 9316AC_DEFUN([AM_PROG_MKDIR_P],
5c706339
AK
9317[AC_PREREQ([2.60])dnl
9318AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9319dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
9320dnl while keeping a definition of mkdir_p for backward compatibility.
9321dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
9322dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
9323dnl Makefile.ins that do not define MKDIR_P, so we do our own
9324dnl adjustment using top_builddir (which is defined more often than
9325dnl MKDIR_P).
9326AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
9327case $mkdir_p in
9328 [[\\/$]]* | ?:[[\\/]]*) ;;
9329 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
9330esac
9331])
b9668ba4
AK
9332
9333# Helper functions for option handling. -*- Autoconf -*-
9334
059850b5
AK
9335# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software
9336# Foundation, Inc.
b9668ba4
AK
9337#
9338# This file is free software; the Free Software Foundation
9339# gives unlimited permission to copy and/or distribute it,
9340# with or without modifications, as long as this notice is preserved.
9341
059850b5 9342# serial 5
b9668ba4
AK
9343
9344# _AM_MANGLE_OPTION(NAME)
9345# -----------------------
9346AC_DEFUN([_AM_MANGLE_OPTION],
9347[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
9348
9349# _AM_SET_OPTION(NAME)
059850b5 9350# --------------------
b9668ba4
AK
9351# Set option NAME. Presently that only means defining a flag for this option.
9352AC_DEFUN([_AM_SET_OPTION],
9353[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
9354
9355# _AM_SET_OPTIONS(OPTIONS)
059850b5 9356# ------------------------
b9668ba4
AK
9357# OPTIONS is a space-separated list of Automake options.
9358AC_DEFUN([_AM_SET_OPTIONS],
47dc80f6 9359[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
b9668ba4
AK
9360
9361# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
9362# -------------------------------------------
9363# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9364AC_DEFUN([_AM_IF_OPTION],
9365[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9366
9367# Check to make sure that the build environment is sane. -*- Autoconf -*-
9368
0fbeb4dc 9369# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
b9668ba4
AK
9370# Free Software Foundation, Inc.
9371#
9372# This file is free software; the Free Software Foundation
9373# gives unlimited permission to copy and/or distribute it,
9374# with or without modifications, as long as this notice is preserved.
9375
0fbeb4dc 9376# serial 5
b9668ba4
AK
9377
9378# AM_SANITY_CHECK
9379# ---------------
9380AC_DEFUN([AM_SANITY_CHECK],
9381[AC_MSG_CHECKING([whether build environment is sane])
9382# Just in case
9383sleep 1
9384echo timestamp > conftest.file
0fbeb4dc
AK
9385# Reject unsafe characters in $srcdir or the absolute working directory
9386# name. Accept space and tab only in the latter.
9387am_lf='
9388'
9389case `pwd` in
9390 *[[\\\"\#\$\&\'\`$am_lf]]*)
9391 AC_MSG_ERROR([unsafe absolute working directory name]);;
9392esac
9393case $srcdir in
9394 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
9395 AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
9396esac
9397
b9668ba4
AK
9398# Do `set' in a subshell so we don't clobber the current shell's
9399# arguments. Must try -L first in case configure is actually a
9400# symlink; some systems play weird games with the mod time of symlinks
9401# (eg FreeBSD returns the mod time of the symlink's containing
9402# directory).
9403if (
0fbeb4dc 9404 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
b9668ba4
AK
9405 if test "$[*]" = "X"; then
9406 # -L didn't work.
0fbeb4dc 9407 set X `ls -t "$srcdir/configure" conftest.file`
b9668ba4
AK
9408 fi
9409 rm -f conftest.file
9410 if test "$[*]" != "X $srcdir/configure conftest.file" \
9411 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9412
9413 # If neither matched, then we have a broken ls. This can happen
9414 # if, for instance, CONFIG_SHELL is bash and it inherits a
9415 # broken ls alias from the environment. This has actually
9416 # happened. Such a system could not be considered "sane".
9417 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9418alias in your environment])
9419 fi
9420
9421 test "$[2]" = conftest.file
9422 )
9423then
9424 # Ok.
9425 :
9426else
9427 AC_MSG_ERROR([newly created file is older than distributed files!
9428Check your system clock])
9429fi
9430AC_MSG_RESULT(yes)])
9431
059850b5 9432# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
b9668ba4
AK
9433#
9434# This file is free software; the Free Software Foundation
9435# gives unlimited permission to copy and/or distribute it,
9436# with or without modifications, as long as this notice is preserved.
9437
059850b5
AK
9438# serial 1
9439
b9668ba4
AK
9440# AM_PROG_INSTALL_STRIP
9441# ---------------------
9442# One issue with vendor `install' (even GNU) is that you can't
9443# specify the program used to strip binaries. This is especially
9444# annoying in cross-compiling environments, where the build's strip
9445# is unlikely to handle the host's binaries.
9446# Fortunately install-sh will honor a STRIPPROG variable, so we
9447# always use install-sh in `make install-strip', and initialize
9448# STRIPPROG with the value of the STRIP variable (set by the user).
9449AC_DEFUN([AM_PROG_INSTALL_STRIP],
9450[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9451# Installed binaries are usually stripped using `strip' when the user
9452# run `make install-strip'. However `strip' might not be the right
9453# tool to use in cross-compilation environments, therefore Automake
9454# will honor the `STRIP' environment variable to overrule this program.
9455dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
9456if test "$cross_compiling" != no; then
9457 AC_CHECK_TOOL([STRIP], [strip], :)
9458fi
5c706339 9459INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
b9668ba4
AK
9460AC_SUBST([INSTALL_STRIP_PROGRAM])])
9461
059850b5 9462# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc.
5c706339
AK
9463#
9464# This file is free software; the Free Software Foundation
9465# gives unlimited permission to copy and/or distribute it,
9466# with or without modifications, as long as this notice is preserved.
9467
059850b5 9468# serial 3
0fbeb4dc 9469
5c706339
AK
9470# _AM_SUBST_NOTMAKE(VARIABLE)
9471# ---------------------------
9472# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
9473# This macro is traced by Automake.
9474AC_DEFUN([_AM_SUBST_NOTMAKE])
9475
0fbeb4dc 9476# AM_SUBST_NOTMAKE(VARIABLE)
059850b5 9477# --------------------------
0fbeb4dc
AK
9478# Public sister of _AM_SUBST_NOTMAKE.
9479AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
9480
b9668ba4
AK
9481# Check how to create a tarball. -*- Autoconf -*-
9482
059850b5 9483# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc.
b9668ba4
AK
9484#
9485# This file is free software; the Free Software Foundation
9486# gives unlimited permission to copy and/or distribute it,
9487# with or without modifications, as long as this notice is preserved.
9488
9489# serial 2
9490
9491# _AM_PROG_TAR(FORMAT)
9492# --------------------
9493# Check how to create a tarball in format FORMAT.
9494# FORMAT should be one of `v7', `ustar', or `pax'.
9495#
9496# Substitute a variable $(am__tar) that is a command
9497# writing to stdout a FORMAT-tarball containing the directory
9498# $tardir.
9499# tardir=directory && $(am__tar) > result.tar
9500#
9501# Substitute a variable $(am__untar) that extract such
9502# a tarball read from stdin.
9503# $(am__untar) < result.tar
9504AC_DEFUN([_AM_PROG_TAR],
059850b5
AK
9505[# Always define AMTAR for backward compatibility. Yes, it's still used
9506# in the wild :-( We should find a proper way to deprecate it ...
9507AC_SUBST([AMTAR], ['$${TAR-tar}'])
b9668ba4 9508m4_if([$1], [v7],
059850b5 9509 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
b9668ba4
AK
9510 [m4_case([$1], [ustar],, [pax],,
9511 [m4_fatal([Unknown tar format])])
9512AC_MSG_CHECKING([how to create a $1 tar archive])
9513# Loop over all known methods to create a tar archive until one works.
9514_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
9515_am_tools=${am_cv_prog_tar_$1-$_am_tools}
9516# Do not fold the above two line into one, because Tru64 sh and
9517# Solaris sh will not grok spaces in the rhs of `-'.
9518for _am_tool in $_am_tools
9519do
9520 case $_am_tool in
9521 gnutar)
9522 for _am_tar in tar gnutar gtar;
9523 do
9524 AM_RUN_LOG([$_am_tar --version]) && break
9525 done
9526 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
9527 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
9528 am__untar="$_am_tar -xf -"
9529 ;;
9530 plaintar)
9531 # Must skip GNU tar: if it does not support --format= it doesn't create
9532 # ustar tarball either.
9533 (tar --version) >/dev/null 2>&1 && continue
9534 am__tar='tar chf - "$$tardir"'
9535 am__tar_='tar chf - "$tardir"'
9536 am__untar='tar xf -'
9537 ;;
9538 pax)
9539 am__tar='pax -L -x $1 -w "$$tardir"'
9540 am__tar_='pax -L -x $1 -w "$tardir"'
9541 am__untar='pax -r'
9542 ;;
9543 cpio)
9544 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
9545 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
9546 am__untar='cpio -i -H $1 -d'
9547 ;;
9548 none)
9549 am__tar=false
9550 am__tar_=false
9551 am__untar=false
9552 ;;
9553 esac
9554
9555 # If the value was cached, stop now. We just wanted to have am__tar
9556 # and am__untar set.
9557 test -n "${am_cv_prog_tar_$1}" && break
9558
9559 # tar/untar a dummy directory, and stop if the command works
9560 rm -rf conftest.dir
9561 mkdir conftest.dir
9562 echo GrepMe > conftest.dir/file
9563 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
9564 rm -rf conftest.dir
9565 if test -s conftest.tar; then
9566 AM_RUN_LOG([$am__untar <conftest.tar])
9567 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
9568 fi
9569done
9570rm -rf conftest.dir
9571
9572AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
9573AC_MSG_RESULT([$am_cv_prog_tar_$1])])
9574AC_SUBST([am__tar])
9575AC_SUBST([am__untar])
9576]) # _AM_PROG_TAR
9577
This page took 1.6706 seconds and 5 git commands to generate.