]> andersk Git - libyaml.git/blame - aclocal.m4
debian/changelog: Fix spelling error
[libyaml.git] / aclocal.m4
CommitLineData
0044e680
AK
1# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
2
3# Copyright (C) 1996-2013 Free Software Foundation, Inc.
b9668ba4 4
b9668ba4
AK
5# This file is free software; the Free Software Foundation
6# gives unlimited permission to copy and/or distribute it,
7# with or without modifications, as long as this notice is preserved.
8
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12# PARTICULAR PURPOSE.
13
0044e680 14m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
5c706339
AK
15m4_ifndef([AC_AUTOCONF_VERSION],
16 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
0044e680
AK
17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
18[m4_warning([this file was generated for autoconf 2.69.
5c706339
AK
19You have another version of autoconf. It may work, but is not guaranteed to.
20If you have problems, you may need to regenerate the build system entirely.
0044e680 21To do so, use the procedure documented by the package, typically 'autoreconf'.])])
5c706339 22
b9668ba4 23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
5c706339
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
0044e680 1329x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
5c706339
AK
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*)
0044e680
AK
1341 case `/usr/bin/file conftest.o` in
1342 *x86-64*)
1343 LD="${LD-ld} -m elf32_x86_64"
1344 ;;
1345 *)
1346 LD="${LD-ld} -m elf_i386"
1347 ;;
1348 esac
5c706339 1349 ;;
0044e680
AK
1350 powerpc64le-*)
1351 LD="${LD-ld} -m elf32lppclinux"
1352 ;;
1353 powerpc64-*)
5c706339
AK
1354 LD="${LD-ld} -m elf32ppclinux"
1355 ;;
1356 s390x-*linux*)
1357 LD="${LD-ld} -m elf_s390"
1358 ;;
1359 sparc64-*linux*)
1360 LD="${LD-ld} -m elf32_sparc"
1361 ;;
1362 esac
1363 ;;
1364 *64-bit*)
1365 case $host in
1366 x86_64-*kfreebsd*-gnu)
1367 LD="${LD-ld} -m elf_x86_64_fbsd"
1368 ;;
1369 x86_64-*linux*)
1370 LD="${LD-ld} -m elf_x86_64"
1371 ;;
0044e680
AK
1372 powerpcle-*)
1373 LD="${LD-ld} -m elf64lppc"
1374 ;;
1375 powerpc-*)
5c706339
AK
1376 LD="${LD-ld} -m elf64ppc"
1377 ;;
1378 s390*-*linux*|s390*-*tpf*)
1379 LD="${LD-ld} -m elf64_s390"
1380 ;;
1381 sparc*-*linux*)
1382 LD="${LD-ld} -m elf64_sparc"
1383 ;;
1384 esac
1385 ;;
1386 esac
1387 fi
1388 rm -rf conftest*
b9668ba4
AK
1389 ;;
1390
5c706339
AK
1391*-*-sco3.2v5*)
1392 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1393 SAVE_CFLAGS="$CFLAGS"
1394 CFLAGS="$CFLAGS -belf"
1395 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1396 [AC_LANG_PUSH(C)
1397 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1398 AC_LANG_POP])
1399 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1400 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1401 CFLAGS="$SAVE_CFLAGS"
1402 fi
b9668ba4 1403 ;;
059850b5 1404*-*solaris*)
5c706339
AK
1405 # Find out which ABI we are using.
1406 echo 'int i;' > conftest.$ac_ext
1407 if AC_TRY_EVAL(ac_compile); then
1408 case `/usr/bin/file conftest.o` in
1409 *64-bit*)
1410 case $lt_cv_prog_gnu_ld in
059850b5
AK
1411 yes*)
1412 case $host in
1413 i?86-*-solaris*)
1414 LD="${LD-ld} -m elf_x86_64"
1415 ;;
1416 sparc*-*-solaris*)
1417 LD="${LD-ld} -m elf64_sparc"
1418 ;;
1419 esac
1420 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1421 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1422 LD="${LD-ld}_sol2"
1423 fi
1424 ;;
5c706339
AK
1425 *)
1426 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1427 LD="${LD-ld} -64"
1428 fi
1429 ;;
1430 esac
1431 ;;
1432 esac
1433 fi
1434 rm -rf conftest*
b9668ba4 1435 ;;
5c706339 1436esac
b9668ba4 1437
5c706339
AK
1438need_locks="$enable_libtool_lock"
1439])# _LT_ENABLE_LOCK
1440
1441
059850b5
AK
1442# _LT_PROG_AR
1443# -----------
1444m4_defun([_LT_PROG_AR],
1445[AC_CHECK_TOOLS(AR, [ar], false)
1446: ${AR=ar}
1447: ${AR_FLAGS=cru}
1448_LT_DECL([], [AR], [1], [The archiver])
1449_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1450
1451AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1452 [lt_cv_ar_at_file=no
1453 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1454 [echo conftest.$ac_objext > conftest.lst
1455 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1456 AC_TRY_EVAL([lt_ar_try])
1457 if test "$ac_status" -eq 0; then
1458 # Ensure the archiver fails upon bogus file names.
1459 rm -f conftest.$ac_objext libconftest.a
1460 AC_TRY_EVAL([lt_ar_try])
1461 if test "$ac_status" -ne 0; then
1462 lt_cv_ar_at_file=@
1463 fi
1464 fi
1465 rm -f conftest.* libconftest.a
1466 ])
1467 ])
1468
1469if test "x$lt_cv_ar_at_file" = xno; then
1470 archiver_list_spec=
1471else
1472 archiver_list_spec=$lt_cv_ar_at_file
1473fi
1474_LT_DECL([], [archiver_list_spec], [1],
1475 [How to feed a file listing to the archiver])
1476])# _LT_PROG_AR
1477
1478
5c706339
AK
1479# _LT_CMD_OLD_ARCHIVE
1480# -------------------
1481m4_defun([_LT_CMD_OLD_ARCHIVE],
059850b5 1482[_LT_PROG_AR
5c706339
AK
1483
1484AC_CHECK_TOOL(STRIP, strip, :)
1485test -z "$STRIP" && STRIP=:
1486_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1487
1488AC_CHECK_TOOL(RANLIB, ranlib, :)
1489test -z "$RANLIB" && RANLIB=:
1490_LT_DECL([], [RANLIB], [1],
1491 [Commands used to install an old-style archive])
1492
1493# Determine commands to create old-style static archives.
1494old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1495old_postinstall_cmds='chmod 644 $oldlib'
1496old_postuninstall_cmds=
1497
1498if test -n "$RANLIB"; then
1499 case $host_os in
1500 openbsd*)
059850b5 1501 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
5c706339
AK
1502 ;;
1503 *)
059850b5 1504 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
5c706339
AK
1505 ;;
1506 esac
059850b5 1507 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
5c706339 1508fi
059850b5
AK
1509
1510case $host_os in
1511 darwin*)
1512 lock_old_archive_extraction=yes ;;
1513 *)
1514 lock_old_archive_extraction=no ;;
1515esac
5c706339
AK
1516_LT_DECL([], [old_postinstall_cmds], [2])
1517_LT_DECL([], [old_postuninstall_cmds], [2])
1518_LT_TAGDECL([], [old_archive_cmds], [2],
1519 [Commands used to build an old-style archive])
059850b5
AK
1520_LT_DECL([], [lock_old_archive_extraction], [0],
1521 [Whether to use a lock for old archive extraction])
5c706339
AK
1522])# _LT_CMD_OLD_ARCHIVE
1523
1524
1525# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1526# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1527# ----------------------------------------------------------------
1528# Check whether the given compiler option works
1529AC_DEFUN([_LT_COMPILER_OPTION],
1530[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1531m4_require([_LT_DECL_SED])dnl
1532AC_CACHE_CHECK([$1], [$2],
1533 [$2=no
1534 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1535 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1536 lt_compiler_flag="$3"
1537 # Insert the option either (1) after the last *FLAGS variable, or
1538 # (2) before a word containing "conftest.", or (3) at the end.
1539 # Note that $ac_compile itself does not contain backslashes and begins
1540 # with a dollar sign (not a hyphen), so the echo should work correctly.
1541 # The option is referenced via a variable to avoid confusing sed.
1542 lt_compile=`echo "$ac_compile" | $SED \
1543 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1544 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1545 -e 's:$: $lt_compiler_flag:'`
059850b5 1546 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
1547 (eval "$lt_compile" 2>conftest.err)
1548 ac_status=$?
1549 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 1550 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
5c706339
AK
1551 if (exit $ac_status) && test -s "$ac_outfile"; then
1552 # The compiler can only warn and ignore the option if not recognized
1553 # So say no if there are warnings other than the usual output.
059850b5 1554 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
5c706339
AK
1555 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1556 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1557 $2=yes
1558 fi
1559 fi
1560 $RM conftest*
1561])
1562
1563if test x"[$]$2" = xyes; then
1564 m4_if([$5], , :, [$5])
1565else
1566 m4_if([$6], , :, [$6])
1567fi
1568])# _LT_COMPILER_OPTION
1569
1570# Old name:
1571AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1572dnl aclocal-1.4 backwards compatibility:
1573dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1574
1575
1576# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1577# [ACTION-SUCCESS], [ACTION-FAILURE])
1578# ----------------------------------------------------
1579# Check whether the given linker option works
1580AC_DEFUN([_LT_LINKER_OPTION],
1581[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1582m4_require([_LT_DECL_SED])dnl
1583AC_CACHE_CHECK([$1], [$2],
1584 [$2=no
1585 save_LDFLAGS="$LDFLAGS"
1586 LDFLAGS="$LDFLAGS $3"
1587 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1588 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1589 # The linker can only warn and ignore the option if not recognized
1590 # So say no if there are warnings
1591 if test -s conftest.err; then
1592 # Append any errors to the config.log.
1593 cat conftest.err 1>&AS_MESSAGE_LOG_FD
059850b5 1594 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
5c706339
AK
1595 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1596 if diff conftest.exp conftest.er2 >/dev/null; then
1597 $2=yes
1598 fi
1599 else
1600 $2=yes
1601 fi
1602 fi
1603 $RM -r conftest*
1604 LDFLAGS="$save_LDFLAGS"
1605])
1606
1607if test x"[$]$2" = xyes; then
1608 m4_if([$4], , :, [$4])
1609else
1610 m4_if([$5], , :, [$5])
1611fi
1612])# _LT_LINKER_OPTION
1613
1614# Old name:
1615AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1616dnl aclocal-1.4 backwards compatibility:
1617dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1618
1619
1620# LT_CMD_MAX_LEN
1621#---------------
1622AC_DEFUN([LT_CMD_MAX_LEN],
1623[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1624# find the maximum length of command line arguments
1625AC_MSG_CHECKING([the maximum length of command line arguments])
1626AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1627 i=0
1628 teststring="ABCD"
1629
1630 case $build_os in
1631 msdosdjgpp*)
1632 # On DJGPP, this test can blow up pretty badly due to problems in libc
1633 # (any single argument exceeding 2000 bytes causes a buffer overrun
1634 # during glob expansion). Even if it were fixed, the result of this
1635 # check would be larger than it should be.
1636 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1637 ;;
1638
1639 gnu*)
1640 # Under GNU Hurd, this test is not required because there is
1641 # no limit to the length of command line arguments.
1642 # Libtool will interpret -1 as no limit whatsoever
1643 lt_cv_sys_max_cmd_len=-1;
1644 ;;
1645
47dc80f6 1646 cygwin* | mingw* | cegcc*)
5c706339
AK
1647 # On Win9x/ME, this test blows up -- it succeeds, but takes
1648 # about 5 minutes as the teststring grows exponentially.
1649 # Worse, since 9x/ME are not pre-emptively multitasking,
1650 # you end up with a "frozen" computer, even though with patience
1651 # the test eventually succeeds (with a max line length of 256k).
1652 # Instead, let's just punt: use the minimum linelength reported by
1653 # all of the supported platforms: 8192 (on NT/2K/XP).
1654 lt_cv_sys_max_cmd_len=8192;
1655 ;;
1656
059850b5
AK
1657 mint*)
1658 # On MiNT this can take a long time and run out of memory.
1659 lt_cv_sys_max_cmd_len=8192;
1660 ;;
1661
5c706339
AK
1662 amigaos*)
1663 # On AmigaOS with pdksh, this test takes hours, literally.
1664 # So we just punt and use a minimum line length of 8192.
1665 lt_cv_sys_max_cmd_len=8192;
1666 ;;
1667
1668 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1669 # This has been around since 386BSD, at least. Likely further.
1670 if test -x /sbin/sysctl; then
1671 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1672 elif test -x /usr/sbin/sysctl; then
1673 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1674 else
1675 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1676 fi
1677 # And add a safety zone
1678 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1679 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1680 ;;
1681
1682 interix*)
1683 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1684 lt_cv_sys_max_cmd_len=196608
1685 ;;
1686
059850b5
AK
1687 os2*)
1688 # The test takes a long time on OS/2.
1689 lt_cv_sys_max_cmd_len=8192
1690 ;;
1691
5c706339
AK
1692 osf*)
1693 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1694 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1695 # nice to cause kernel panics so lets avoid the loop below.
1696 # First set a reasonable default.
1697 lt_cv_sys_max_cmd_len=16384
1698 #
1699 if test -x /sbin/sysconfig; then
1700 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1701 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1702 esac
1703 fi
1704 ;;
1705 sco3.2v5*)
1706 lt_cv_sys_max_cmd_len=102400
1707 ;;
1708 sysv5* | sco5v6* | sysv4.2uw2*)
1709 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1710 if test -n "$kargmax"; then
1711 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1712 else
1713 lt_cv_sys_max_cmd_len=32768
1714 fi
1715 ;;
1716 *)
1717 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
0044e680
AK
1718 if test -n "$lt_cv_sys_max_cmd_len" && \
1719 test undefined != "$lt_cv_sys_max_cmd_len"; then
5c706339
AK
1720 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1721 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1722 else
1723 # Make teststring a little bigger before we do anything with it.
1724 # a 1K string should be a reasonable start.
1725 for i in 1 2 3 4 5 6 7 8 ; do
1726 teststring=$teststring$teststring
1727 done
1728 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1729 # If test is not a shell built-in, we'll probably end up computing a
1730 # maximum length that is only half of the actual maximum length, but
1731 # we can't tell.
059850b5
AK
1732 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
1733 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
5c706339
AK
1734 test $i != 17 # 1/2 MB should be enough
1735 do
1736 i=`expr $i + 1`
1737 teststring=$teststring$teststring
1738 done
1739 # Only check the string length outside the loop.
1740 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1741 teststring=
1742 # Add a significant safety factor because C++ compilers can tack on
1743 # massive amounts of additional arguments before passing them to the
1744 # linker. It appears as though 1/2 is a usable value.
1745 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1746 fi
1747 ;;
1748 esac
1749])
1750if test -n $lt_cv_sys_max_cmd_len ; then
1751 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1752else
1753 AC_MSG_RESULT(none)
1754fi
1755max_cmd_len=$lt_cv_sys_max_cmd_len
1756_LT_DECL([], [max_cmd_len], [0],
1757 [What is the maximum length of a command?])
1758])# LT_CMD_MAX_LEN
1759
1760# Old name:
1761AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1762dnl aclocal-1.4 backwards compatibility:
1763dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1764
1765
1766# _LT_HEADER_DLFCN
1767# ----------------
1768m4_defun([_LT_HEADER_DLFCN],
1769[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1770])# _LT_HEADER_DLFCN
1771
1772
1773# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1774# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1775# ----------------------------------------------------------------
1776m4_defun([_LT_TRY_DLOPEN_SELF],
1777[m4_require([_LT_HEADER_DLFCN])dnl
1778if test "$cross_compiling" = yes; then :
1779 [$4]
1780else
1781 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1782 lt_status=$lt_dlunknown
1783 cat > conftest.$ac_ext <<_LT_EOF
059850b5 1784[#line $LINENO "configure"
5c706339
AK
1785#include "confdefs.h"
1786
1787#if HAVE_DLFCN_H
1788#include <dlfcn.h>
1789#endif
1790
1791#include <stdio.h>
1792
1793#ifdef RTLD_GLOBAL
1794# define LT_DLGLOBAL RTLD_GLOBAL
1795#else
1796# ifdef DL_GLOBAL
1797# define LT_DLGLOBAL DL_GLOBAL
1798# else
1799# define LT_DLGLOBAL 0
1800# endif
1801#endif
1802
1803/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1804 find out it does not work in some platform. */
1805#ifndef LT_DLLAZY_OR_NOW
1806# ifdef RTLD_LAZY
1807# define LT_DLLAZY_OR_NOW RTLD_LAZY
1808# else
1809# ifdef DL_LAZY
1810# define LT_DLLAZY_OR_NOW DL_LAZY
1811# else
1812# ifdef RTLD_NOW
1813# define LT_DLLAZY_OR_NOW RTLD_NOW
1814# else
1815# ifdef DL_NOW
1816# define LT_DLLAZY_OR_NOW DL_NOW
1817# else
1818# define LT_DLLAZY_OR_NOW 0
1819# endif
1820# endif
1821# endif
1822# endif
1823#endif
1824
059850b5
AK
1825/* When -fvisbility=hidden is used, assume the code has been annotated
1826 correspondingly for the symbols needed. */
1827#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1828int fnord () __attribute__((visibility("default")));
1829#endif
1830
1831int fnord () { return 42; }
5c706339
AK
1832int main ()
1833{
1834 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1835 int status = $lt_dlunknown;
1836
1837 if (self)
1838 {
1839 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
059850b5
AK
1840 else
1841 {
1842 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1843 else puts (dlerror ());
1844 }
5c706339
AK
1845 /* dlclose (self); */
1846 }
1847 else
1848 puts (dlerror ());
1849
47dc80f6 1850 return status;
5c706339
AK
1851}]
1852_LT_EOF
1853 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1854 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1855 lt_status=$?
1856 case x$lt_status in
1857 x$lt_dlno_uscore) $1 ;;
1858 x$lt_dlneed_uscore) $2 ;;
1859 x$lt_dlunknown|x*) $3 ;;
1860 esac
1861 else :
1862 # compilation failed
1863 $3
1864 fi
1865fi
1866rm -fr conftest*
1867])# _LT_TRY_DLOPEN_SELF
1868
1869
1870# LT_SYS_DLOPEN_SELF
1871# ------------------
1872AC_DEFUN([LT_SYS_DLOPEN_SELF],
1873[m4_require([_LT_HEADER_DLFCN])dnl
1874if test "x$enable_dlopen" != xyes; then
1875 enable_dlopen=unknown
1876 enable_dlopen_self=unknown
1877 enable_dlopen_self_static=unknown
1878else
1879 lt_cv_dlopen=no
1880 lt_cv_dlopen_libs=
1881
1882 case $host_os in
1883 beos*)
1884 lt_cv_dlopen="load_add_on"
1885 lt_cv_dlopen_libs=
1886 lt_cv_dlopen_self=yes
1887 ;;
1888
47dc80f6 1889 mingw* | pw32* | cegcc*)
5c706339
AK
1890 lt_cv_dlopen="LoadLibrary"
1891 lt_cv_dlopen_libs=
1892 ;;
1893
1894 cygwin*)
1895 lt_cv_dlopen="dlopen"
1896 lt_cv_dlopen_libs=
1897 ;;
1898
1899 darwin*)
1900 # if libdl is installed we need to link against it
1901 AC_CHECK_LIB([dl], [dlopen],
1902 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1903 lt_cv_dlopen="dyld"
1904 lt_cv_dlopen_libs=
1905 lt_cv_dlopen_self=yes
1906 ])
1907 ;;
1908
1909 *)
1910 AC_CHECK_FUNC([shl_load],
1911 [lt_cv_dlopen="shl_load"],
1912 [AC_CHECK_LIB([dld], [shl_load],
1913 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1914 [AC_CHECK_FUNC([dlopen],
1915 [lt_cv_dlopen="dlopen"],
1916 [AC_CHECK_LIB([dl], [dlopen],
1917 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1918 [AC_CHECK_LIB([svld], [dlopen],
1919 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1920 [AC_CHECK_LIB([dld], [dld_link],
1921 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1922 ])
1923 ])
1924 ])
1925 ])
1926 ])
1927 ;;
1928 esac
1929
1930 if test "x$lt_cv_dlopen" != xno; then
1931 enable_dlopen=yes
1932 else
1933 enable_dlopen=no
1934 fi
1935
1936 case $lt_cv_dlopen in
1937 dlopen)
1938 save_CPPFLAGS="$CPPFLAGS"
1939 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1940
1941 save_LDFLAGS="$LDFLAGS"
1942 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1943
1944 save_LIBS="$LIBS"
1945 LIBS="$lt_cv_dlopen_libs $LIBS"
1946
1947 AC_CACHE_CHECK([whether a program can dlopen itself],
1948 lt_cv_dlopen_self, [dnl
1949 _LT_TRY_DLOPEN_SELF(
1950 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1951 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1952 ])
1953
1954 if test "x$lt_cv_dlopen_self" = xyes; then
1955 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1956 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1957 lt_cv_dlopen_self_static, [dnl
1958 _LT_TRY_DLOPEN_SELF(
1959 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1960 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1961 ])
1962 fi
1963
1964 CPPFLAGS="$save_CPPFLAGS"
1965 LDFLAGS="$save_LDFLAGS"
1966 LIBS="$save_LIBS"
1967 ;;
1968 esac
1969
1970 case $lt_cv_dlopen_self in
1971 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1972 *) enable_dlopen_self=unknown ;;
1973 esac
1974
1975 case $lt_cv_dlopen_self_static in
1976 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1977 *) enable_dlopen_self_static=unknown ;;
1978 esac
1979fi
1980_LT_DECL([dlopen_support], [enable_dlopen], [0],
1981 [Whether dlopen is supported])
1982_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1983 [Whether dlopen of programs is supported])
1984_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1985 [Whether dlopen of statically linked programs is supported])
1986])# LT_SYS_DLOPEN_SELF
1987
1988# Old name:
1989AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1990dnl aclocal-1.4 backwards compatibility:
1991dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
1992
1993
1994# _LT_COMPILER_C_O([TAGNAME])
1995# ---------------------------
1996# Check to see if options -c and -o are simultaneously supported by compiler.
1997# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1998m4_defun([_LT_COMPILER_C_O],
1999[m4_require([_LT_DECL_SED])dnl
2000m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2001m4_require([_LT_TAG_COMPILER])dnl
2002AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
2003 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
2004 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
2005 $RM -r conftest 2>/dev/null
2006 mkdir conftest
2007 cd conftest
2008 mkdir out
2009 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2010
2011 lt_compiler_flag="-o out/conftest2.$ac_objext"
2012 # Insert the option either (1) after the last *FLAGS variable, or
2013 # (2) before a word containing "conftest.", or (3) at the end.
2014 # Note that $ac_compile itself does not contain backslashes and begins
2015 # with a dollar sign (not a hyphen), so the echo should work correctly.
2016 lt_compile=`echo "$ac_compile" | $SED \
2017 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2018 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2019 -e 's:$: $lt_compiler_flag:'`
059850b5 2020 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
2021 (eval "$lt_compile" 2>out/conftest.err)
2022 ac_status=$?
2023 cat out/conftest.err >&AS_MESSAGE_LOG_FD
059850b5 2024 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
5c706339
AK
2025 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2026 then
2027 # The compiler can only warn and ignore the option if not recognized
2028 # So say no if there are warnings
059850b5 2029 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
5c706339
AK
2030 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2031 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2032 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2033 fi
2034 fi
2035 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2036 $RM conftest*
2037 # SGI C++ compiler will create directory out/ii_files/ for
2038 # template instantiation
2039 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2040 $RM out/* && rmdir out
2041 cd ..
2042 $RM -r conftest
2043 $RM conftest*
2044])
2045_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2046 [Does compiler simultaneously support -c and -o options?])
2047])# _LT_COMPILER_C_O
2048
2049
2050# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2051# ----------------------------------
2052# Check to see if we can do hard links to lock some files if needed
2053m4_defun([_LT_COMPILER_FILE_LOCKS],
2054[m4_require([_LT_ENABLE_LOCK])dnl
2055m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2056_LT_COMPILER_C_O([$1])
2057
2058hard_links="nottested"
2059if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
2060 # do not overwrite the value of need_locks provided by the user
2061 AC_MSG_CHECKING([if we can lock with hard links])
2062 hard_links=yes
2063 $RM conftest*
2064 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2065 touch conftest.a
2066 ln conftest.a conftest.b 2>&5 || hard_links=no
2067 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2068 AC_MSG_RESULT([$hard_links])
2069 if test "$hard_links" = no; then
2070 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
2071 need_locks=warn
2072 fi
2073else
2074 need_locks=no
2075fi
2076_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2077])# _LT_COMPILER_FILE_LOCKS
2078
2079
2080# _LT_CHECK_OBJDIR
2081# ----------------
2082m4_defun([_LT_CHECK_OBJDIR],
2083[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2084[rm -f .libs 2>/dev/null
2085mkdir .libs 2>/dev/null
2086if test -d .libs; then
2087 lt_cv_objdir=.libs
2088else
2089 # MS-DOS does not allow filenames that begin with a dot.
2090 lt_cv_objdir=_libs
2091fi
2092rmdir .libs 2>/dev/null])
2093objdir=$lt_cv_objdir
2094_LT_DECL([], [objdir], [0],
2095 [The name of the directory that contains temporary libtool files])dnl
2096m4_pattern_allow([LT_OBJDIR])dnl
2097AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2098 [Define to the sub-directory in which libtool stores uninstalled libraries.])
2099])# _LT_CHECK_OBJDIR
2100
2101
2102# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2103# --------------------------------------
2104# Check hardcoding attributes.
2105m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2106[AC_MSG_CHECKING([how to hardcode library paths into programs])
2107_LT_TAGVAR(hardcode_action, $1)=
2108if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2109 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2110 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
2111
2112 # We can hardcode non-existent directories.
2113 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
2114 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2115 # have to relink, otherwise we might link with an installed library
2116 # when we should be linking with a yet-to-be-installed one
2117 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2118 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
2119 # Linking always hardcodes the temporary library directory.
2120 _LT_TAGVAR(hardcode_action, $1)=relink
2121 else
2122 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2123 _LT_TAGVAR(hardcode_action, $1)=immediate
2124 fi
2125else
2126 # We cannot hardcode anything, or else we can only hardcode existing
2127 # directories.
2128 _LT_TAGVAR(hardcode_action, $1)=unsupported
2129fi
2130AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2131
2132if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2133 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
2134 # Fast installation is not supported
2135 enable_fast_install=no
2136elif test "$shlibpath_overrides_runpath" = yes ||
2137 test "$enable_shared" = no; then
2138 # Fast installation is not necessary
2139 enable_fast_install=needless
2140fi
2141_LT_TAGDECL([], [hardcode_action], [0],
2142 [How to hardcode a shared library path into an executable])
2143])# _LT_LINKER_HARDCODE_LIBPATH
2144
2145
2146# _LT_CMD_STRIPLIB
2147# ----------------
2148m4_defun([_LT_CMD_STRIPLIB],
2149[m4_require([_LT_DECL_EGREP])
2150striplib=
2151old_striplib=
2152AC_MSG_CHECKING([whether stripping libraries is possible])
2153if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2154 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2155 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2156 AC_MSG_RESULT([yes])
2157else
2158# FIXME - insert some real tests, host_os isn't really good enough
2159 case $host_os in
2160 darwin*)
2161 if test -n "$STRIP" ; then
2162 striplib="$STRIP -x"
2163 old_striplib="$STRIP -S"
2164 AC_MSG_RESULT([yes])
2165 else
2166 AC_MSG_RESULT([no])
2167 fi
2168 ;;
2169 *)
2170 AC_MSG_RESULT([no])
2171 ;;
2172 esac
2173fi
2174_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2175_LT_DECL([], [striplib], [1])
2176])# _LT_CMD_STRIPLIB
2177
2178
2179# _LT_SYS_DYNAMIC_LINKER([TAG])
2180# -----------------------------
2181# PORTME Fill in your ld.so characteristics
2182m4_defun([_LT_SYS_DYNAMIC_LINKER],
2183[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2184m4_require([_LT_DECL_EGREP])dnl
2185m4_require([_LT_FILEUTILS_DEFAULTS])dnl
47dc80f6 2186m4_require([_LT_DECL_OBJDUMP])dnl
5c706339 2187m4_require([_LT_DECL_SED])dnl
059850b5 2188m4_require([_LT_CHECK_SHELL_FEATURES])dnl
5c706339
AK
2189AC_MSG_CHECKING([dynamic linker characteristics])
2190m4_if([$1],
2191 [], [
2192if test "$GCC" = yes; then
2193 case $host_os in
2194 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2195 *) lt_awk_arg="/^libraries:/" ;;
2196 esac
059850b5
AK
2197 case $host_os in
2198 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2199 *) lt_sed_strip_eq="s,=/,/,g" ;;
2200 esac
2201 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2202 case $lt_search_path_spec in
2203 *\;*)
5c706339
AK
2204 # if the path contains ";" then we assume it to be the separator
2205 # otherwise default to the standard path separator (i.e. ":") - it is
2206 # assumed that no part of a normal pathname contains ";" but that should
2207 # okay in the real world where ";" in dirpaths is itself problematic.
059850b5
AK
2208 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2209 ;;
2210 *)
2211 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2212 ;;
2213 esac
5c706339
AK
2214 # Ok, now we have the path, separated by spaces, we can step through it
2215 # and add multilib dir if necessary.
2216 lt_tmp_lt_search_path_spec=
2217 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2218 for lt_sys_path in $lt_search_path_spec; do
2219 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2220 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2221 else
2222 test -d "$lt_sys_path" && \
2223 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2224 fi
2225 done
059850b5 2226 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
5c706339
AK
2227BEGIN {RS=" "; FS="/|\n";} {
2228 lt_foo="";
2229 lt_count=0;
2230 for (lt_i = NF; lt_i > 0; lt_i--) {
2231 if ($lt_i != "" && $lt_i != ".") {
2232 if ($lt_i == "..") {
2233 lt_count++;
2234 } else {
2235 if (lt_count == 0) {
2236 lt_foo="/" $lt_i lt_foo;
2237 } else {
2238 lt_count--;
2239 }
2240 }
2241 }
2242 }
2243 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2244 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2245}'`
059850b5
AK
2246 # AWK program above erroneously prepends '/' to C:/dos/paths
2247 # for these hosts.
2248 case $host_os in
2249 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2250 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2251 esac
2252 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
5c706339
AK
2253else
2254 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2255fi])
2256library_names_spec=
2257libname_spec='lib$name'
2258soname_spec=
2259shrext_cmds=".so"
2260postinstall_cmds=
2261postuninstall_cmds=
2262finish_cmds=
2263finish_eval=
2264shlibpath_var=
2265shlibpath_overrides_runpath=unknown
2266version_type=none
2267dynamic_linker="$host_os ld.so"
2268sys_lib_dlsearch_path_spec="/lib /usr/lib"
2269need_lib_prefix=unknown
2270hardcode_into_libs=no
2271
2272# when you set need_version to no, make sure it does not cause -set_version
2273# flags to be left without arguments
2274need_version=unknown
2275
2276case $host_os in
2277aix3*)
059850b5 2278 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2279 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2280 shlibpath_var=LIBPATH
2281
2282 # AIX 3 has no versioning support, so we append a major version to the name.
2283 soname_spec='${libname}${release}${shared_ext}$major'
2284 ;;
2285
2286aix[[4-9]]*)
059850b5 2287 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2288 need_lib_prefix=no
2289 need_version=no
2290 hardcode_into_libs=yes
2291 if test "$host_cpu" = ia64; then
2292 # AIX 5 supports IA64
2293 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2294 shlibpath_var=LD_LIBRARY_PATH
2295 else
2296 # With GCC up to 2.95.x, collect2 would create an import file
2297 # for dependence libraries. The import file would start with
2298 # the line `#! .'. This would cause the generated library to
2299 # depend on `.', always an invalid library. This was fixed in
2300 # development snapshots of GCC prior to 3.0.
2301 case $host_os in
2302 aix4 | aix4.[[01]] | aix4.[[01]].*)
2303 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2304 echo ' yes '
2305 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
2306 :
2307 else
2308 can_build_shared=no
2309 fi
2310 ;;
2311 esac
2312 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2313 # soname into executable. Probably we can add versioning support to
2314 # collect2, so additional links can be useful in future.
2315 if test "$aix_use_runtimelinking" = yes; then
2316 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2317 # instead of lib<name>.a to let people know that these are not
2318 # typical AIX shared libraries.
2319 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2320 else
2321 # We preserve .a as extension for shared libraries through AIX4.2
2322 # and later when we are not doing run time linking.
2323 library_names_spec='${libname}${release}.a $libname.a'
2324 soname_spec='${libname}${release}${shared_ext}$major'
2325 fi
2326 shlibpath_var=LIBPATH
2327 fi
2328 ;;
2329
2330amigaos*)
2331 case $host_cpu in
2332 powerpc)
2333 # Since July 2007 AmigaOS4 officially supports .so libraries.
2334 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2335 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2336 ;;
2337 m68k)
2338 library_names_spec='$libname.ixlibrary $libname.a'
2339 # Create ${libname}_ixlibrary.a entries in /sys/libs.
059850b5 2340 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
2341 ;;
2342 esac
2343 ;;
2344
2345beos*)
2346 library_names_spec='${libname}${shared_ext}'
2347 dynamic_linker="$host_os ld.so"
2348 shlibpath_var=LIBRARY_PATH
2349 ;;
2350
2351bsdi[[45]]*)
059850b5 2352 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2353 need_version=no
2354 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2355 soname_spec='${libname}${release}${shared_ext}$major'
2356 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2357 shlibpath_var=LD_LIBRARY_PATH
2358 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2359 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2360 # the default ld.so.conf also contains /usr/contrib/lib and
2361 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2362 # libtool to hard-code these into programs
2363 ;;
2364
47dc80f6 2365cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
2366 version_type=windows
2367 shrext_cmds=".dll"
2368 need_version=no
b9668ba4
AK
2369 need_lib_prefix=no
2370
059850b5
AK
2371 case $GCC,$cc_basename in
2372 yes,*)
2373 # gcc
b9668ba4
AK
2374 library_names_spec='$libname.dll.a'
2375 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2376 postinstall_cmds='base_file=`basename \${file}`~
5c706339 2377 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
b9668ba4
AK
2378 dldir=$destdir/`dirname \$dlpath`~
2379 test -d \$dldir || mkdir -p \$dldir~
2380 $install_prog $dir/$dlname \$dldir/$dlname~
5c706339
AK
2381 chmod a+x \$dldir/$dlname~
2382 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2383 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2384 fi'
b9668ba4
AK
2385 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2386 dlpath=$dir/\$dldll~
5c706339 2387 $RM \$dlpath'
b9668ba4
AK
2388 shlibpath_overrides_runpath=yes
2389
2390 case $host_os in
2391 cygwin*)
2392 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2393 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
059850b5
AK
2394m4_if([$1], [],[
2395 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
b9668ba4 2396 ;;
47dc80f6 2397 mingw* | cegcc*)
b9668ba4
AK
2398 # MinGW DLLs use traditional 'lib' prefix
2399 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
b9668ba4
AK
2400 ;;
2401 pw32*)
2402 # pw32 DLLs use 'pw' prefix rather than 'lib'
2403 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2404 ;;
2405 esac
059850b5
AK
2406 dynamic_linker='Win32 ld.exe'
2407 ;;
2408
2409 *,cl*)
2410 # Native MSVC
2411 libname_spec='$name'
2412 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2413 library_names_spec='${libname}.dll.lib'
2414
2415 case $build_os in
2416 mingw*)
2417 sys_lib_search_path_spec=
2418 lt_save_ifs=$IFS
2419 IFS=';'
2420 for lt_path in $LIB
2421 do
2422 IFS=$lt_save_ifs
2423 # Let DOS variable expansion print the short 8.3 style file name.
2424 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2425 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2426 done
2427 IFS=$lt_save_ifs
2428 # Convert to MSYS style.
2429 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2430 ;;
2431 cygwin*)
2432 # Convert to unix form, then to dos form, then back to unix form
2433 # but this time dos style (no spaces!) so that the unix form looks
2434 # like /cygdrive/c/PROGRA~1:/cygdr...
2435 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2436 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2437 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2438 ;;
2439 *)
2440 sys_lib_search_path_spec="$LIB"
2441 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2442 # It is most probably a Windows format PATH.
2443 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2444 else
2445 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2446 fi
2447 # FIXME: find the short name or the path components, as spaces are
2448 # common. (e.g. "Program Files" -> "PROGRA~1")
2449 ;;
2450 esac
2451
2452 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2453 postinstall_cmds='base_file=`basename \${file}`~
2454 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2455 dldir=$destdir/`dirname \$dlpath`~
2456 test -d \$dldir || mkdir -p \$dldir~
2457 $install_prog $dir/$dlname \$dldir/$dlname'
2458 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2459 dlpath=$dir/\$dldll~
2460 $RM \$dlpath'
2461 shlibpath_overrides_runpath=yes
2462 dynamic_linker='Win32 link.exe'
b9668ba4
AK
2463 ;;
2464
2465 *)
059850b5 2466 # Assume MSVC wrapper
b9668ba4 2467 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
059850b5 2468 dynamic_linker='Win32 ld.exe'
b9668ba4
AK
2469 ;;
2470 esac
b9668ba4
AK
2471 # FIXME: first we should search . and the directory the executable is in
2472 shlibpath_var=PATH
2473 ;;
2474
2475darwin* | rhapsody*)
2476 dynamic_linker="$host_os dyld"
2477 version_type=darwin
2478 need_lib_prefix=no
2479 need_version=no
5c706339 2480 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
b9668ba4
AK
2481 soname_spec='${libname}${release}${major}$shared_ext'
2482 shlibpath_overrides_runpath=yes
2483 shlibpath_var=DYLD_LIBRARY_PATH
2484 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
5c706339
AK
2485m4_if([$1], [],[
2486 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
b9668ba4
AK
2487 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2488 ;;
2489
2490dgux*)
059850b5 2491 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2492 need_lib_prefix=no
2493 need_version=no
2494 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2495 soname_spec='${libname}${release}${shared_ext}$major'
2496 shlibpath_var=LD_LIBRARY_PATH
2497 ;;
2498
b9668ba4
AK
2499freebsd* | dragonfly*)
2500 # DragonFly does not have aout. When/if they implement a new
2501 # versioning mechanism, adjust this.
2502 if test -x /usr/bin/objformat; then
2503 objformat=`/usr/bin/objformat`
2504 else
2505 case $host_os in
059850b5 2506 freebsd[[23]].*) objformat=aout ;;
b9668ba4
AK
2507 *) objformat=elf ;;
2508 esac
2509 fi
2510 version_type=freebsd-$objformat
2511 case $version_type in
2512 freebsd-elf*)
2513 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2514 need_version=no
2515 need_lib_prefix=no
2516 ;;
2517 freebsd-*)
2518 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2519 need_version=yes
2520 ;;
2521 esac
2522 shlibpath_var=LD_LIBRARY_PATH
2523 case $host_os in
059850b5 2524 freebsd2.*)
b9668ba4
AK
2525 shlibpath_overrides_runpath=yes
2526 ;;
2527 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2528 shlibpath_overrides_runpath=yes
2529 hardcode_into_libs=yes
2530 ;;
2531 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2532 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2533 shlibpath_overrides_runpath=no
2534 hardcode_into_libs=yes
2535 ;;
5c706339 2536 *) # from 4.6 on, and DragonFly
b9668ba4
AK
2537 shlibpath_overrides_runpath=yes
2538 hardcode_into_libs=yes
2539 ;;
2540 esac
2541 ;;
2542
059850b5
AK
2543haiku*)
2544 version_type=linux # correct to gnu/linux during the next big refactor
2545 need_lib_prefix=no
2546 need_version=no
2547 dynamic_linker="$host_os runtime_loader"
2548 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2549 soname_spec='${libname}${release}${shared_ext}$major'
2550 shlibpath_var=LIBRARY_PATH
2551 shlibpath_overrides_runpath=yes
2552 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
b9668ba4
AK
2553 hardcode_into_libs=yes
2554 ;;
2555
2556hpux9* | hpux10* | hpux11*)
2557 # Give a soname corresponding to the major version so that dld.sl refuses to
2558 # link against other versions.
2559 version_type=sunos
2560 need_lib_prefix=no
2561 need_version=no
2562 case $host_cpu in
2563 ia64*)
2564 shrext_cmds='.so'
2565 hardcode_into_libs=yes
2566 dynamic_linker="$host_os dld.so"
2567 shlibpath_var=LD_LIBRARY_PATH
2568 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2569 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2570 soname_spec='${libname}${release}${shared_ext}$major'
2571 if test "X$HPUX_IA64_MODE" = X32; then
2572 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2573 else
2574 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2575 fi
2576 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2577 ;;
5c706339
AK
2578 hppa*64*)
2579 shrext_cmds='.sl'
2580 hardcode_into_libs=yes
2581 dynamic_linker="$host_os dld.sl"
2582 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2583 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2584 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2585 soname_spec='${libname}${release}${shared_ext}$major'
2586 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2587 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2588 ;;
2589 *)
b9668ba4
AK
2590 shrext_cmds='.sl'
2591 dynamic_linker="$host_os dld.sl"
2592 shlibpath_var=SHLIB_PATH
2593 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2594 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2595 soname_spec='${libname}${release}${shared_ext}$major'
2596 ;;
2597 esac
059850b5 2598 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
b9668ba4 2599 postinstall_cmds='chmod 555 $lib'
059850b5
AK
2600 # or fails outright, so override atomically:
2601 install_override_mode=555
b9668ba4
AK
2602 ;;
2603
5c706339 2604interix[[3-9]]*)
059850b5 2605 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2606 need_lib_prefix=no
2607 need_version=no
2608 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2609 soname_spec='${libname}${release}${shared_ext}$major'
2610 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2611 shlibpath_var=LD_LIBRARY_PATH
2612 shlibpath_overrides_runpath=no
2613 hardcode_into_libs=yes
2614 ;;
2615
2616irix5* | irix6* | nonstopux*)
2617 case $host_os in
2618 nonstopux*) version_type=nonstopux ;;
2619 *)
2620 if test "$lt_cv_prog_gnu_ld" = yes; then
059850b5 2621 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2622 else
2623 version_type=irix
2624 fi ;;
2625 esac
2626 need_lib_prefix=no
2627 need_version=no
2628 soname_spec='${libname}${release}${shared_ext}$major'
2629 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2630 case $host_os in
2631 irix5* | nonstopux*)
2632 libsuff= shlibsuff=
2633 ;;
2634 *)
2635 case $LD in # libtool.m4 will add one of these switches to LD
2636 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2637 libsuff= shlibsuff= libmagic=32-bit;;
2638 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2639 libsuff=32 shlibsuff=N32 libmagic=N32;;
2640 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2641 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2642 *) libsuff= shlibsuff= libmagic=never-match;;
2643 esac
2644 ;;
2645 esac
2646 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2647 shlibpath_overrides_runpath=no
2648 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2649 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2650 hardcode_into_libs=yes
2651 ;;
2652
2653# No shared lib support for Linux oldld, aout, or coff.
2654linux*oldld* | linux*aout* | linux*coff*)
2655 dynamic_linker=no
2656 ;;
2657
059850b5 2658# This must be glibc/ELF.
0044e680 2659linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
059850b5 2660 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2661 need_lib_prefix=no
2662 need_version=no
2663 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2664 soname_spec='${libname}${release}${shared_ext}$major'
2665 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2666 shlibpath_var=LD_LIBRARY_PATH
2667 shlibpath_overrides_runpath=no
059850b5 2668
5c706339 2669 # Some binutils ld are patched to set DT_RUNPATH
059850b5
AK
2670 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2671 [lt_cv_shlibpath_overrides_runpath=no
2672 save_LDFLAGS=$LDFLAGS
2673 save_libdir=$libdir
2674 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2675 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2676 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2677 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2678 [lt_cv_shlibpath_overrides_runpath=yes])])
2679 LDFLAGS=$save_LDFLAGS
2680 libdir=$save_libdir
2681 ])
2682 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
5c706339 2683
b9668ba4
AK
2684 # This implies no fast_install, which is unacceptable.
2685 # Some rework will be needed to allow for fast_install
2686 # before this can be enabled.
2687 hardcode_into_libs=yes
2688
2689 # Append ld.so.conf contents to the search path
2690 if test -f /etc/ld.so.conf; then
059850b5 2691 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
2692 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2693 fi
2694
2695 # We used to test for /lib/ld.so.1 and disable shared libraries on
2696 # powerpc, because MkLinux only supported shared libraries with the
2697 # GNU dynamic linker. Since this was broken with cross compilers,
2698 # most powerpc-linux boxes support dynamic linking these days and
2699 # people can always --disable-shared, the test was removed, and we
2700 # assume the GNU/Linux dynamic linker is in use.
2701 dynamic_linker='GNU/Linux ld.so'
2702 ;;
2703
2704netbsdelf*-gnu)
2705 version_type=linux
2706 need_lib_prefix=no
2707 need_version=no
2708 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2709 soname_spec='${libname}${release}${shared_ext}$major'
2710 shlibpath_var=LD_LIBRARY_PATH
2711 shlibpath_overrides_runpath=no
2712 hardcode_into_libs=yes
2713 dynamic_linker='NetBSD ld.elf_so'
2714 ;;
2715
2716netbsd*)
2717 version_type=sunos
2718 need_lib_prefix=no
2719 need_version=no
5c706339 2720 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
b9668ba4
AK
2721 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2722 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2723 dynamic_linker='NetBSD (a.out) ld.so'
2724 else
2725 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2726 soname_spec='${libname}${release}${shared_ext}$major'
2727 dynamic_linker='NetBSD ld.elf_so'
2728 fi
2729 shlibpath_var=LD_LIBRARY_PATH
2730 shlibpath_overrides_runpath=yes
2731 hardcode_into_libs=yes
2732 ;;
2733
2734newsos6)
059850b5 2735 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2736 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2737 shlibpath_var=LD_LIBRARY_PATH
2738 shlibpath_overrides_runpath=yes
2739 ;;
2740
5c706339
AK
2741*nto* | *qnx*)
2742 version_type=qnx
b9668ba4
AK
2743 need_lib_prefix=no
2744 need_version=no
2745 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2746 soname_spec='${libname}${release}${shared_ext}$major'
2747 shlibpath_var=LD_LIBRARY_PATH
5c706339
AK
2748 shlibpath_overrides_runpath=no
2749 hardcode_into_libs=yes
2750 dynamic_linker='ldqnx.so'
b9668ba4
AK
2751 ;;
2752
2753openbsd*)
2754 version_type=sunos
2755 sys_lib_dlsearch_path_spec="/usr/lib"
2756 need_lib_prefix=no
2757 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2758 case $host_os in
5c706339
AK
2759 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2760 *) need_version=no ;;
b9668ba4
AK
2761 esac
2762 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2763 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2764 shlibpath_var=LD_LIBRARY_PATH
5c706339 2765 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
b9668ba4
AK
2766 case $host_os in
2767 openbsd2.[[89]] | openbsd2.[[89]].*)
2768 shlibpath_overrides_runpath=no
2769 ;;
2770 *)
2771 shlibpath_overrides_runpath=yes
2772 ;;
2773 esac
2774 else
2775 shlibpath_overrides_runpath=yes
2776 fi
2777 ;;
2778
2779os2*)
2780 libname_spec='$name'
2781 shrext_cmds=".dll"
2782 need_lib_prefix=no
2783 library_names_spec='$libname${shared_ext} $libname.a'
2784 dynamic_linker='OS/2 ld.exe'
2785 shlibpath_var=LIBPATH
2786 ;;
2787
2788osf3* | osf4* | osf5*)
2789 version_type=osf
2790 need_lib_prefix=no
2791 need_version=no
2792 soname_spec='${libname}${release}${shared_ext}$major'
2793 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2794 shlibpath_var=LD_LIBRARY_PATH
2795 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2796 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2797 ;;
2798
5c706339
AK
2799rdos*)
2800 dynamic_linker=no
2801 ;;
2802
b9668ba4 2803solaris*)
059850b5 2804 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2805 need_lib_prefix=no
2806 need_version=no
2807 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2808 soname_spec='${libname}${release}${shared_ext}$major'
2809 shlibpath_var=LD_LIBRARY_PATH
2810 shlibpath_overrides_runpath=yes
2811 hardcode_into_libs=yes
2812 # ldd complains unless libraries are executable
2813 postinstall_cmds='chmod +x $lib'
2814 ;;
2815
2816sunos4*)
2817 version_type=sunos
2818 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2819 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2820 shlibpath_var=LD_LIBRARY_PATH
2821 shlibpath_overrides_runpath=yes
2822 if test "$with_gnu_ld" = yes; then
2823 need_lib_prefix=no
2824 fi
2825 need_version=yes
2826 ;;
2827
2828sysv4 | sysv4.3*)
059850b5 2829 version_type=linux # correct to gnu/linux during the next big refactor
b9668ba4
AK
2830 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2831 soname_spec='${libname}${release}${shared_ext}$major'
2832 shlibpath_var=LD_LIBRARY_PATH
2833 case $host_vendor in
2834 sni)
2835 shlibpath_overrides_runpath=no
2836 need_lib_prefix=no
b9668ba4
AK
2837 runpath_var=LD_RUN_PATH
2838 ;;
2839 siemens)
2840 need_lib_prefix=no
2841 ;;
2842 motorola)
2843 need_lib_prefix=no
2844 need_version=no
2845 shlibpath_overrides_runpath=no
2846 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2847 ;;
5c706339
AK
2848 esac
2849 ;;
b9668ba4 2850
5c706339
AK
2851sysv4*MP*)
2852 if test -d /usr/nec ;then
059850b5 2853 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2854 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2855 soname_spec='$libname${shared_ext}.$major'
2856 shlibpath_var=LD_LIBRARY_PATH
2857 fi
2858 ;;
b9668ba4 2859
5c706339
AK
2860sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2861 version_type=freebsd-elf
2862 need_lib_prefix=no
2863 need_version=no
2864 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2865 soname_spec='${libname}${release}${shared_ext}$major'
2866 shlibpath_var=LD_LIBRARY_PATH
2867 shlibpath_overrides_runpath=yes
2868 hardcode_into_libs=yes
2869 if test "$with_gnu_ld" = yes; then
2870 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
2871 else
2872 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
2873 case $host_os in
2874 sco3.2v5*)
2875 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2876 ;;
2877 esac
2878 fi
2879 sys_lib_dlsearch_path_spec='/usr/lib'
2880 ;;
b9668ba4 2881
5c706339
AK
2882tpf*)
2883 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
059850b5 2884 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2885 need_lib_prefix=no
2886 need_version=no
47dc80f6 2887 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
5c706339
AK
2888 shlibpath_var=LD_LIBRARY_PATH
2889 shlibpath_overrides_runpath=no
2890 hardcode_into_libs=yes
2891 ;;
b9668ba4 2892
5c706339 2893uts4*)
059850b5 2894 version_type=linux # correct to gnu/linux during the next big refactor
5c706339
AK
2895 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2896 soname_spec='${libname}${release}${shared_ext}$major'
2897 shlibpath_var=LD_LIBRARY_PATH
2898 ;;
b9668ba4 2899
5c706339
AK
2900*)
2901 dynamic_linker=no
2902 ;;
2903esac
2904AC_MSG_RESULT([$dynamic_linker])
2905test "$dynamic_linker" = no && can_build_shared=no
b9668ba4 2906
5c706339
AK
2907variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2908if test "$GCC" = yes; then
2909 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2910fi
47dc80f6 2911
5c706339
AK
2912if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2913 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2914fi
2915if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2916 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2917fi
2918
2919_LT_DECL([], [variables_saved_for_relink], [1],
2920 [Variables whose values should be saved in libtool wrapper scripts and
2921 restored at link time])
2922_LT_DECL([], [need_lib_prefix], [0],
2923 [Do we need the "lib" prefix for modules?])
2924_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2925_LT_DECL([], [version_type], [0], [Library versioning type])
2926_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2927_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2928_LT_DECL([], [shlibpath_overrides_runpath], [0],
2929 [Is shlibpath searched before the hard-coded library search path?])
2930_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2931_LT_DECL([], [library_names_spec], [1],
2932 [[List of archive names. First name is the real one, the rest are links.
2933 The last name is the one that the linker finds with -lNAME]])
2934_LT_DECL([], [soname_spec], [1],
2935 [[The coded name of the library, if different from the real name]])
059850b5
AK
2936_LT_DECL([], [install_override_mode], [1],
2937 [Permission mode override for installation of shared libraries])
5c706339
AK
2938_LT_DECL([], [postinstall_cmds], [2],
2939 [Command to use after installation of a shared archive])
2940_LT_DECL([], [postuninstall_cmds], [2],
2941 [Command to use after uninstallation of a shared archive])
2942_LT_DECL([], [finish_cmds], [2],
2943 [Commands used to finish a libtool library installation in a directory])
2944_LT_DECL([], [finish_eval], [1],
2945 [[As "finish_cmds", except a single script fragment to be evaled but
2946 not shown]])
2947_LT_DECL([], [hardcode_into_libs], [0],
2948 [Whether we should hardcode library paths into libraries])
2949_LT_DECL([], [sys_lib_search_path_spec], [2],
2950 [Compile-time system search path for libraries])
2951_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2952 [Run-time system search path for libraries])
2953])# _LT_SYS_DYNAMIC_LINKER
2954
2955
2956# _LT_PATH_TOOL_PREFIX(TOOL)
2957# --------------------------
2958# find a file program which can recognize shared library
2959AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2960[m4_require([_LT_DECL_EGREP])dnl
b9668ba4
AK
2961AC_MSG_CHECKING([for $1])
2962AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2963[case $MAGIC_CMD in
2964[[\\/*] | ?:[\\/]*])
2965 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2966 ;;
2967*)
2968 lt_save_MAGIC_CMD="$MAGIC_CMD"
2969 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2970dnl $ac_dummy forces splitting on constant user-supplied paths.
2971dnl POSIX.2 word splitting is done only on the output of word expansions,
2972dnl not every word. This closes a longstanding sh security hole.
5c706339 2973 ac_dummy="m4_if([$2], , $PATH, [$2])"
b9668ba4
AK
2974 for ac_dir in $ac_dummy; do
2975 IFS="$lt_save_ifs"
2976 test -z "$ac_dir" && ac_dir=.
2977 if test -f $ac_dir/$1; then
2978 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2979 if test -n "$file_magic_test_file"; then
2980 case $deplibs_check_method in
2981 "file_magic "*)
2982 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2983 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2984 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2985 $EGREP "$file_magic_regex" > /dev/null; then
2986 :
2987 else
5c706339 2988 cat <<_LT_EOF 1>&2
b9668ba4
AK
2989
2990*** Warning: the command libtool uses to detect shared libraries,
2991*** $file_magic_cmd, produces output that libtool cannot recognize.
2992*** The result is that libtool may fail to recognize shared libraries
2993*** as such. This will affect the creation of libtool libraries that
2994*** depend on shared libraries, but programs linked with such libtool
2995*** libraries will work regardless of this problem. Nevertheless, you
2996*** may want to report the problem to your system manager and/or to
2997*** bug-libtool@gnu.org
2998
5c706339 2999_LT_EOF
b9668ba4
AK
3000 fi ;;
3001 esac
3002 fi
3003 break
3004 fi
3005 done
3006 IFS="$lt_save_ifs"
3007 MAGIC_CMD="$lt_save_MAGIC_CMD"
3008 ;;
3009esac])
3010MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
3011if test -n "$MAGIC_CMD"; then
3012 AC_MSG_RESULT($MAGIC_CMD)
3013else
3014 AC_MSG_RESULT(no)
3015fi
5c706339
AK
3016_LT_DECL([], [MAGIC_CMD], [0],
3017 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3018])# _LT_PATH_TOOL_PREFIX
b9668ba4 3019
5c706339
AK
3020# Old name:
3021AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3022dnl aclocal-1.4 backwards compatibility:
3023dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
b9668ba4 3024
5c706339
AK
3025
3026# _LT_PATH_MAGIC
3027# --------------
3028# find a file program which can recognize a shared library
3029m4_defun([_LT_PATH_MAGIC],
3030[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
b9668ba4
AK
3031if test -z "$lt_cv_path_MAGIC_CMD"; then
3032 if test -n "$ac_tool_prefix"; then
5c706339 3033 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
b9668ba4
AK
3034 else
3035 MAGIC_CMD=:
3036 fi
3037fi
5c706339 3038])# _LT_PATH_MAGIC
b9668ba4
AK
3039
3040
5c706339 3041# LT_PATH_LD
b9668ba4
AK
3042# ----------
3043# find the pathname to the GNU or non-GNU linker
5c706339
AK
3044AC_DEFUN([LT_PATH_LD],
3045[AC_REQUIRE([AC_PROG_CC])dnl
b9668ba4
AK
3046AC_REQUIRE([AC_CANONICAL_HOST])dnl
3047AC_REQUIRE([AC_CANONICAL_BUILD])dnl
5c706339
AK
3048m4_require([_LT_DECL_SED])dnl
3049m4_require([_LT_DECL_EGREP])dnl
059850b5 3050m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
5c706339
AK
3051
3052AC_ARG_WITH([gnu-ld],
3053 [AS_HELP_STRING([--with-gnu-ld],
3054 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
3055 [test "$withval" = no || with_gnu_ld=yes],
3056 [with_gnu_ld=no])dnl
3057
b9668ba4
AK
3058ac_prog=ld
3059if test "$GCC" = yes; then
3060 # Check if gcc -print-prog-name=ld gives a path.
3061 AC_MSG_CHECKING([for ld used by $CC])
3062 case $host in
3063 *-*-mingw*)
3064 # gcc leaves a trailing carriage return which upsets mingw
3065 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3066 *)
3067 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3068 esac
3069 case $ac_prog in
3070 # Accept absolute paths.
3071 [[\\/]]* | ?:[[\\/]]*)
3072 re_direlt='/[[^/]][[^/]]*/\.\./'
3073 # Canonicalize the pathname of ld
5c706339
AK
3074 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3075 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3076 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
b9668ba4
AK
3077 done
3078 test -z "$LD" && LD="$ac_prog"
3079 ;;
3080 "")
3081 # If it fails, then pretend we aren't using GCC.
3082 ac_prog=ld
3083 ;;
3084 *)
3085 # If it is relative, then search for the first ld in PATH.
3086 with_gnu_ld=unknown
3087 ;;
3088 esac
3089elif test "$with_gnu_ld" = yes; then
3090 AC_MSG_CHECKING([for GNU ld])
3091else
3092 AC_MSG_CHECKING([for non-GNU ld])
3093fi
3094AC_CACHE_VAL(lt_cv_path_LD,
3095[if test -z "$LD"; then
3096 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3097 for ac_dir in $PATH; do
3098 IFS="$lt_save_ifs"
3099 test -z "$ac_dir" && ac_dir=.
3100 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3101 lt_cv_path_LD="$ac_dir/$ac_prog"
3102 # Check to see if the program is GNU ld. I'd rather use --version,
3103 # but apparently some variants of GNU ld only accept -v.
3104 # Break only if it was the GNU/non-GNU ld that we prefer.
3105 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3106 *GNU* | *'with BFD'*)
3107 test "$with_gnu_ld" != no && break
3108 ;;
3109 *)
3110 test "$with_gnu_ld" != yes && break
3111 ;;
3112 esac
3113 fi
3114 done
3115 IFS="$lt_save_ifs"
3116else
3117 lt_cv_path_LD="$LD" # Let the user override the test with a path.
3118fi])
3119LD="$lt_cv_path_LD"
3120if test -n "$LD"; then
3121 AC_MSG_RESULT($LD)
3122else
3123 AC_MSG_RESULT(no)
3124fi
3125test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
5c706339
AK
3126_LT_PATH_LD_GNU
3127AC_SUBST([LD])
b9668ba4 3128
5c706339
AK
3129_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3130])# LT_PATH_LD
b9668ba4 3131
5c706339
AK
3132# Old names:
3133AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3134AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3135dnl aclocal-1.4 backwards compatibility:
3136dnl AC_DEFUN([AM_PROG_LD], [])
3137dnl AC_DEFUN([AC_PROG_LD], [])
3138
3139
3140# _LT_PATH_LD_GNU
3141#- --------------
3142m4_defun([_LT_PATH_LD_GNU],
3143[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
b9668ba4
AK
3144[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3145case `$LD -v 2>&1 </dev/null` in
3146*GNU* | *'with BFD'*)
3147 lt_cv_prog_gnu_ld=yes
3148 ;;
3149*)
3150 lt_cv_prog_gnu_ld=no
3151 ;;
3152esac])
3153with_gnu_ld=$lt_cv_prog_gnu_ld
5c706339 3154])# _LT_PATH_LD_GNU
b9668ba4
AK
3155
3156
5c706339
AK
3157# _LT_CMD_RELOAD
3158# --------------
b9668ba4
AK
3159# find reload flag for linker
3160# -- PORTME Some linkers may need a different reload flag.
5c706339 3161m4_defun([_LT_CMD_RELOAD],
b9668ba4
AK
3162[AC_CACHE_CHECK([for $LD option to reload object files],
3163 lt_cv_ld_reload_flag,
3164 [lt_cv_ld_reload_flag='-r'])
3165reload_flag=$lt_cv_ld_reload_flag
3166case $reload_flag in
3167"" | " "*) ;;
3168*) reload_flag=" $reload_flag" ;;
3169esac
3170reload_cmds='$LD$reload_flag -o $output$reload_objs'
3171case $host_os in
059850b5
AK
3172 cygwin* | mingw* | pw32* | cegcc*)
3173 if test "$GCC" != yes; then
3174 reload_cmds=false
3175 fi
3176 ;;
b9668ba4
AK
3177 darwin*)
3178 if test "$GCC" = yes; then
3179 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
3180 else
3181 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3182 fi
3183 ;;
3184esac
059850b5
AK
3185_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3186_LT_TAGDECL([], [reload_cmds], [2])dnl
5c706339 3187])# _LT_CMD_RELOAD
b9668ba4
AK
3188
3189
5c706339
AK
3190# _LT_CHECK_MAGIC_METHOD
3191# ----------------------
b9668ba4
AK
3192# how to check for library dependencies
3193# -- PORTME fill in with the dynamic library characteristics
5c706339
AK
3194m4_defun([_LT_CHECK_MAGIC_METHOD],
3195[m4_require([_LT_DECL_EGREP])
47dc80f6 3196m4_require([_LT_DECL_OBJDUMP])
5c706339 3197AC_CACHE_CHECK([how to recognize dependent libraries],
b9668ba4
AK
3198lt_cv_deplibs_check_method,
3199[lt_cv_file_magic_cmd='$MAGIC_CMD'
3200lt_cv_file_magic_test_file=
3201lt_cv_deplibs_check_method='unknown'
3202# Need to set the preceding variable on all platforms that support
3203# interlibrary dependencies.
3204# 'none' -- dependencies not supported.
3205# `unknown' -- same as none, but documents that we really don't know.
3206# 'pass_all' -- all dependencies passed with no checks.
3207# 'test_compile' -- check by making test program.
3208# 'file_magic [[regex]]' -- check by looking for files in library path
3209# which responds to the $file_magic_cmd with a given extended regex.
3210# If you have `file' or equivalent on your system and you're not sure
3211# whether `pass_all' will *always* work, you probably want this one.
3212
3213case $host_os in
5c706339 3214aix[[4-9]]*)
b9668ba4
AK
3215 lt_cv_deplibs_check_method=pass_all
3216 ;;
3217
3218beos*)
3219 lt_cv_deplibs_check_method=pass_all
3220 ;;
3221
3222bsdi[[45]]*)
3223 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3224 lt_cv_file_magic_cmd='/usr/bin/file -L'
3225 lt_cv_file_magic_test_file=/shlib/libc.so
3226 ;;
3227
3228cygwin*)
3229 # func_win32_libid is a shell function defined in ltmain.sh
3230 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3231 lt_cv_file_magic_cmd='func_win32_libid'
3232 ;;
3233
3234mingw* | pw32*)
3235 # Base MSYS/MinGW do not provide the 'file' command needed by
5c706339
AK
3236 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3237 # unless we find 'file', for example because we are cross-compiling.
059850b5
AK
3238 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3239 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
5c706339
AK
3240 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3241 lt_cv_file_magic_cmd='func_win32_libid'
3242 else
059850b5
AK
3243 # Keep this pattern in sync with the one in func_win32_libid.
3244 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
5c706339
AK
3245 lt_cv_file_magic_cmd='$OBJDUMP -f'
3246 fi
b9668ba4
AK
3247 ;;
3248
059850b5 3249cegcc*)
47dc80f6
AK
3250 # use the weaker test based on 'objdump'. See mingw*.
3251 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3252 lt_cv_file_magic_cmd='$OBJDUMP -f'
3253 ;;
3254
b9668ba4
AK
3255darwin* | rhapsody*)
3256 lt_cv_deplibs_check_method=pass_all
3257 ;;
3258
3259freebsd* | dragonfly*)
5c706339 3260 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
b9668ba4
AK
3261 case $host_cpu in
3262 i*86 )
3263 # Not sure whether the presence of OpenBSD here was a mistake.
3264 # Let's accept both of them until this is cleared up.
3265 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3266 lt_cv_file_magic_cmd=/usr/bin/file
3267 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3268 ;;
3269 esac
3270 else
3271 lt_cv_deplibs_check_method=pass_all
3272 fi
3273 ;;
3274
059850b5
AK
3275haiku*)
3276 lt_cv_deplibs_check_method=pass_all
3277 ;;
3278
b9668ba4
AK
3279hpux10.20* | hpux11*)
3280 lt_cv_file_magic_cmd=/usr/bin/file
3281 case $host_cpu in
3282 ia64*)
3283 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3284 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3285 ;;
3286 hppa*64*)
059850b5 3287 [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
3288 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3289 ;;
3290 *)
059850b5 3291 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
b9668ba4
AK
3292 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3293 ;;
3294 esac
3295 ;;
3296
5c706339 3297interix[[3-9]]*)
b9668ba4
AK
3298 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3299 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3300 ;;
3301
3302irix5* | irix6* | nonstopux*)
3303 case $LD in
3304 *-32|*"-32 ") libmagic=32-bit;;
3305 *-n32|*"-n32 ") libmagic=N32;;
3306 *-64|*"-64 ") libmagic=64-bit;;
3307 *) libmagic=never-match;;
3308 esac
3309 lt_cv_deplibs_check_method=pass_all
3310 ;;
3311
059850b5 3312# This must be glibc/ELF.
0044e680 3313linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
b9668ba4
AK
3314 lt_cv_deplibs_check_method=pass_all
3315 ;;
3316
3317netbsd* | netbsdelf*-gnu)
5c706339 3318 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
b9668ba4
AK
3319 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3320 else
3321 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3322 fi
3323 ;;
3324
3325newos6*)
3326 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3327 lt_cv_file_magic_cmd=/usr/bin/file
3328 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3329 ;;
3330
5c706339
AK
3331*nto* | *qnx*)
3332 lt_cv_deplibs_check_method=pass_all
b9668ba4
AK
3333 ;;
3334
3335openbsd*)
5c706339 3336 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
b9668ba4
AK
3337 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3338 else
3339 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3340 fi
3341 ;;
3342
3343osf3* | osf4* | osf5*)
3344 lt_cv_deplibs_check_method=pass_all
3345 ;;
3346
5c706339
AK
3347rdos*)
3348 lt_cv_deplibs_check_method=pass_all
3349 ;;
3350
b9668ba4
AK
3351solaris*)
3352 lt_cv_deplibs_check_method=pass_all
3353 ;;
3354
5c706339
AK
3355sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3356 lt_cv_deplibs_check_method=pass_all
3357 ;;
3358
b9668ba4
AK
3359sysv4 | sysv4.3*)
3360 case $host_vendor in
3361 motorola)
3362 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]]'
3363 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3364 ;;
3365 ncr)
3366 lt_cv_deplibs_check_method=pass_all
3367 ;;
3368 sequent)
3369 lt_cv_file_magic_cmd='/bin/file'
3370 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3371 ;;
3372 sni)
3373 lt_cv_file_magic_cmd='/bin/file'
3374 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3375 lt_cv_file_magic_test_file=/lib/libc.so
3376 ;;
3377 siemens)
3378 lt_cv_deplibs_check_method=pass_all
3379 ;;
3380 pc)
3381 lt_cv_deplibs_check_method=pass_all
3382 ;;
3383 esac
3384 ;;
3385
5c706339 3386tpf*)
b9668ba4
AK
3387 lt_cv_deplibs_check_method=pass_all
3388 ;;
3389esac
3390])
059850b5
AK
3391
3392file_magic_glob=
3393want_nocaseglob=no
3394if test "$build" = "$host"; then
3395 case $host_os in
3396 mingw* | pw32*)
3397 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3398 want_nocaseglob=yes
3399 else
3400 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3401 fi
3402 ;;
3403 esac
3404fi
3405
b9668ba4
AK
3406file_magic_cmd=$lt_cv_file_magic_cmd
3407deplibs_check_method=$lt_cv_deplibs_check_method
3408test -z "$deplibs_check_method" && deplibs_check_method=unknown
b9668ba4 3409
5c706339
AK
3410_LT_DECL([], [deplibs_check_method], [1],
3411 [Method to check whether dependent libraries are shared objects])
3412_LT_DECL([], [file_magic_cmd], [1],
059850b5
AK
3413 [Command to use when deplibs_check_method = "file_magic"])
3414_LT_DECL([], [file_magic_glob], [1],
3415 [How to find potential files when deplibs_check_method = "file_magic"])
3416_LT_DECL([], [want_nocaseglob], [1],
3417 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
5c706339 3418])# _LT_CHECK_MAGIC_METHOD
b9668ba4 3419
5c706339
AK
3420
3421# LT_PATH_NM
b9668ba4 3422# ----------
5c706339
AK
3423# find the pathname to a BSD- or MS-compatible name lister
3424AC_DEFUN([LT_PATH_NM],
3425[AC_REQUIRE([AC_PROG_CC])dnl
3426AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
b9668ba4
AK
3427[if test -n "$NM"; then
3428 # Let the user override the test.
3429 lt_cv_path_NM="$NM"
3430else
3431 lt_nm_to_check="${ac_tool_prefix}nm"
5c706339 3432 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
b9668ba4
AK
3433 lt_nm_to_check="$lt_nm_to_check nm"
3434 fi
3435 for lt_tmp_nm in $lt_nm_to_check; do
3436 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3437 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3438 IFS="$lt_save_ifs"
3439 test -z "$ac_dir" && ac_dir=.
3440 tmp_nm="$ac_dir/$lt_tmp_nm"
3441 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3442 # Check to see if the nm accepts a BSD-compat flag.
3443 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3444 # nm: unknown option "B" ignored
3445 # Tru64's nm complains that /dev/null is an invalid object file
3446 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3447 */dev/null* | *'Invalid file or object type'*)
3448 lt_cv_path_NM="$tmp_nm -B"
3449 break
3450 ;;
3451 *)
3452 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3453 */dev/null*)
3454 lt_cv_path_NM="$tmp_nm -p"
3455 break
3456 ;;
3457 *)
3458 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3459 continue # so that we can try to find one that supports BSD flags
3460 ;;
3461 esac
3462 ;;
3463 esac
3464 fi
3465 done
3466 IFS="$lt_save_ifs"
3467 done
5c706339 3468 : ${lt_cv_path_NM=no}
b9668ba4 3469fi])
5c706339
AK
3470if test "$lt_cv_path_NM" != "no"; then
3471 NM="$lt_cv_path_NM"
3472else
3473 # Didn't find any BSD compatible name lister, look for dumpbin.
059850b5
AK
3474 if test -n "$DUMPBIN"; then :
3475 # Let the user override the test.
3476 else
3477 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3478 case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
3479 *COFF*)
3480 DUMPBIN="$DUMPBIN -symbols"
3481 ;;
3482 *)
3483 DUMPBIN=:
3484 ;;
3485 esac
3486 fi
5c706339
AK
3487 AC_SUBST([DUMPBIN])
3488 if test "$DUMPBIN" != ":"; then
3489 NM="$DUMPBIN"
3490 fi
3491fi
3492test -z "$NM" && NM=nm
3493AC_SUBST([NM])
3494_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3495
3496AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3497 [lt_cv_nm_interface="BSD nm"
3498 echo "int some_variable = 0;" > conftest.$ac_ext
059850b5 3499 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
3500 (eval "$ac_compile" 2>conftest.err)
3501 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 3502 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
3503 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3504 cat conftest.err >&AS_MESSAGE_LOG_FD
059850b5 3505 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
5c706339
AK
3506 cat conftest.out >&AS_MESSAGE_LOG_FD
3507 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3508 lt_cv_nm_interface="MS dumpbin"
3509 fi
3510 rm -f conftest*])
3511])# LT_PATH_NM
b9668ba4 3512
5c706339
AK
3513# Old names:
3514AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3515AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3516dnl aclocal-1.4 backwards compatibility:
3517dnl AC_DEFUN([AM_PROG_NM], [])
3518dnl AC_DEFUN([AC_PROG_NM], [])
b9668ba4 3519
059850b5
AK
3520# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3521# --------------------------------
3522# how to determine the name of the shared library
3523# associated with a specific link library.
3524# -- PORTME fill in with the dynamic library characteristics
3525m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3526[m4_require([_LT_DECL_EGREP])
3527m4_require([_LT_DECL_OBJDUMP])
3528m4_require([_LT_DECL_DLLTOOL])
3529AC_CACHE_CHECK([how to associate runtime and link libraries],
3530lt_cv_sharedlib_from_linklib_cmd,
3531[lt_cv_sharedlib_from_linklib_cmd='unknown'
3532
3533case $host_os in
3534cygwin* | mingw* | pw32* | cegcc*)
3535 # two different shell functions defined in ltmain.sh
3536 # decide which to use based on capabilities of $DLLTOOL
3537 case `$DLLTOOL --help 2>&1` in
3538 *--identify-strict*)
3539 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3540 ;;
3541 *)
3542 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3543 ;;
3544 esac
3545 ;;
3546*)
3547 # fallback: assume linklib IS sharedlib
3548 lt_cv_sharedlib_from_linklib_cmd="$ECHO"
3549 ;;
3550esac
3551])
3552sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3553test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3554
3555_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3556 [Command to associate shared and link libraries])
3557])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3558
3559
3560# _LT_PATH_MANIFEST_TOOL
3561# ----------------------
3562# locate the manifest tool
3563m4_defun([_LT_PATH_MANIFEST_TOOL],
3564[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3565test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3566AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3567 [lt_cv_path_mainfest_tool=no
3568 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3569 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3570 cat conftest.err >&AS_MESSAGE_LOG_FD
3571 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3572 lt_cv_path_mainfest_tool=yes
3573 fi
3574 rm -f conftest*])
3575if test "x$lt_cv_path_mainfest_tool" != xyes; then
3576 MANIFEST_TOOL=:
3577fi
3578_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3579])# _LT_PATH_MANIFEST_TOOL
3580
5c706339
AK
3581
3582# LT_LIB_M
3583# --------
b9668ba4 3584# check for math library
5c706339 3585AC_DEFUN([LT_LIB_M],
b9668ba4
AK
3586[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3587LIBM=
3588case $host in
059850b5 3589*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
b9668ba4
AK
3590 # These system don't have libm, or don't need it
3591 ;;
3592*-ncr-sysv4.3*)
3593 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3594 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3595 ;;
3596*)
3597 AC_CHECK_LIB(m, cos, LIBM="-lm")
3598 ;;
3599esac
5c706339
AK
3600AC_SUBST([LIBM])
3601])# LT_LIB_M
b9668ba4 3602
5c706339
AK
3603# Old name:
3604AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3605dnl aclocal-1.4 backwards compatibility:
3606dnl AC_DEFUN([AC_CHECK_LIBM], [])
b9668ba4
AK
3607
3608
5c706339
AK
3609# _LT_COMPILER_NO_RTTI([TAGNAME])
3610# -------------------------------
3611m4_defun([_LT_COMPILER_NO_RTTI],
3612[m4_require([_LT_TAG_COMPILER])dnl
b9668ba4 3613
5c706339 3614_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
b9668ba4 3615
5c706339 3616if test "$GCC" = yes; then
059850b5
AK
3617 case $cc_basename in
3618 nvcc*)
3619 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3620 *)
3621 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3622 esac
b9668ba4 3623
5c706339
AK
3624 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3625 lt_cv_prog_compiler_rtti_exceptions,
3626 [-fno-rtti -fno-exceptions], [],
3627 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
b9668ba4 3628fi
5c706339
AK
3629_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3630 [Compiler flag to turn off builtin functions])
3631])# _LT_COMPILER_NO_RTTI
b9668ba4 3632
b9668ba4 3633
5c706339
AK
3634# _LT_CMD_GLOBAL_SYMBOLS
3635# ----------------------
3636m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3637[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3638AC_REQUIRE([AC_PROG_CC])dnl
059850b5 3639AC_REQUIRE([AC_PROG_AWK])dnl
5c706339
AK
3640AC_REQUIRE([LT_PATH_NM])dnl
3641AC_REQUIRE([LT_PATH_LD])dnl
3642m4_require([_LT_DECL_SED])dnl
3643m4_require([_LT_DECL_EGREP])dnl
3644m4_require([_LT_TAG_COMPILER])dnl
b9668ba4 3645
5c706339
AK
3646# Check for command to grab the raw symbol name followed by C symbol from nm.
3647AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3648AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3649[
3650# These are sane defaults that work on at least a few old systems.
3651# [They come from Ultrix. What could be older than Ultrix?!! ;)]
b9668ba4 3652
5c706339
AK
3653# Character class describing NM global symbol codes.
3654symcode='[[BCDEGRST]]'
b9668ba4 3655
5c706339
AK
3656# Regexp to match symbols that can be accessed directly from C.
3657sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
b9668ba4 3658
5c706339 3659# Define system-specific variables.
b9668ba4 3660case $host_os in
5c706339
AK
3661aix*)
3662 symcode='[[BCDT]]'
b9668ba4 3663 ;;
47dc80f6 3664cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
3665 symcode='[[ABCDGISTW]]'
3666 ;;
3667hpux*)
3668 if test "$host_cpu" = ia64; then
3669 symcode='[[ABCDEGRST]]'
b9668ba4 3670 fi
5c706339
AK
3671 ;;
3672irix* | nonstopux*)
3673 symcode='[[BCDEGRST]]'
3674 ;;
3675osf*)
3676 symcode='[[BCDEGQRST]]'
3677 ;;
3678solaris*)
3679 symcode='[[BDRT]]'
3680 ;;
3681sco3.2v5*)
3682 symcode='[[DT]]'
3683 ;;
3684sysv4.2uw2*)
3685 symcode='[[DT]]'
3686 ;;
3687sysv5* | sco5v6* | unixware* | OpenUNIX*)
3688 symcode='[[ABDT]]'
3689 ;;
3690sysv4)
3691 symcode='[[DFNSTU]]'
3692 ;;
b9668ba4 3693esac
b9668ba4 3694
5c706339
AK
3695# If we're using GNU nm, then use its standard symbol codes.
3696case `$NM -V 2>&1` in
3697*GNU* | *'with BFD'*)
3698 symcode='[[ABCDGIRSTW]]' ;;
3699esac
b9668ba4 3700
5c706339
AK
3701# Transform an extracted symbol line into a proper C declaration.
3702# Some systems (esp. on ia64) link data and code symbols differently,
3703# so use this general approach.
3704lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
b9668ba4 3705
5c706339 3706# Transform an extracted symbol line into symbol name and symbol address
059850b5
AK
3707lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3708lt_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 3709
5c706339
AK
3710# Handle CRLF in mingw tool chain
3711opt_cr=
3712case $build_os in
3713mingw*)
3714 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3715 ;;
3716esac
b9668ba4 3717
5c706339
AK
3718# Try without a prefix underscore, then with it.
3719for ac_symprfx in "" "_"; do
b9668ba4 3720
5c706339
AK
3721 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3722 symxfrm="\\1 $ac_symprfx\\2 \\2"
b9668ba4 3723
5c706339
AK
3724 # Write the raw and C identifiers.
3725 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3726 # Fake it for dumpbin and say T for any non-static function
3727 # and D for any global variable.
3728 # Also find C++ and __fastcall symbols from MSVC++,
3729 # which start with @ or ?.
3730 lt_cv_sys_global_symbol_pipe="$AWK ['"\
3731" {last_section=section; section=\$ 3};"\
059850b5 3732" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
5c706339
AK
3733" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3734" \$ 0!~/External *\|/{next};"\
3735" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3736" {if(hide[section]) next};"\
3737" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3738" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3739" s[1]~/^[@?]/{print s[1], s[1]; next};"\
3740" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3741" ' prfx=^$ac_symprfx]"
b9668ba4 3742 else
5c706339 3743 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
b9668ba4 3744 fi
059850b5 3745 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
b9668ba4 3746
5c706339
AK
3747 # Check to see that the pipe works correctly.
3748 pipe_works=no
b9668ba4 3749
5c706339
AK
3750 rm -f conftest*
3751 cat > conftest.$ac_ext <<_LT_EOF
3752#ifdef __cplusplus
3753extern "C" {
3754#endif
3755char nm_test_var;
3756void nm_test_func(void);
3757void nm_test_func(void){}
3758#ifdef __cplusplus
3759}
3760#endif
3761int main(){nm_test_var='a';nm_test_func();return(0);}
3762_LT_EOF
b9668ba4 3763
5c706339
AK
3764 if AC_TRY_EVAL(ac_compile); then
3765 # Now try to grab the symbols.
3766 nlist=conftest.nm
059850b5 3767 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
5c706339
AK
3768 # Try sorting and uniquifying the output.
3769 if sort "$nlist" | uniq > "$nlist"T; then
3770 mv -f "$nlist"T "$nlist"
3771 else
3772 rm -f "$nlist"T
3773 fi
b9668ba4 3774
5c706339
AK
3775 # Make sure that we snagged all the symbols we need.
3776 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3777 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3778 cat <<_LT_EOF > conftest.$ac_ext
059850b5
AK
3779/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
3780#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
3781/* DATA imports from DLLs on WIN32 con't be const, because runtime
3782 relocations are performed -- see ld's documentation on pseudo-relocs. */
3783# define LT@&t@_DLSYM_CONST
3784#elif defined(__osf__)
3785/* This system does not cope well with relocations in const data. */
3786# define LT@&t@_DLSYM_CONST
3787#else
3788# define LT@&t@_DLSYM_CONST const
3789#endif
3790
5c706339
AK
3791#ifdef __cplusplus
3792extern "C" {
3793#endif
b9668ba4 3794
5c706339
AK
3795_LT_EOF
3796 # Now generate the symbol file.
3797 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
b9668ba4 3798
5c706339 3799 cat <<_LT_EOF >> conftest.$ac_ext
b9668ba4 3800
5c706339 3801/* The mapping between symbol names and symbols. */
059850b5 3802LT@&t@_DLSYM_CONST struct {
5c706339
AK
3803 const char *name;
3804 void *address;
3805}
3806lt__PROGRAM__LTX_preloaded_symbols[[]] =
3807{
3808 { "@PROGRAM@", (void *) 0 },
3809_LT_EOF
3810 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3811 cat <<\_LT_EOF >> conftest.$ac_ext
3812 {0, (void *) 0}
3813};
3814
3815/* This works around a problem in FreeBSD linker */
3816#ifdef FREEBSD_WORKAROUND
3817static const void *lt_preloaded_setup() {
3818 return lt__PROGRAM__LTX_preloaded_symbols;
3819}
3820#endif
3821
3822#ifdef __cplusplus
3823}
3824#endif
3825_LT_EOF
3826 # Now try linking the two files.
3827 mv conftest.$ac_objext conftstm.$ac_objext
059850b5
AK
3828 lt_globsym_save_LIBS=$LIBS
3829 lt_globsym_save_CFLAGS=$CFLAGS
5c706339
AK
3830 LIBS="conftstm.$ac_objext"
3831 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3832 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3833 pipe_works=yes
3834 fi
059850b5
AK
3835 LIBS=$lt_globsym_save_LIBS
3836 CFLAGS=$lt_globsym_save_CFLAGS
b9668ba4 3837 else
5c706339 3838 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
b9668ba4 3839 fi
b9668ba4 3840 else
5c706339 3841 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
b9668ba4 3842 fi
5c706339
AK
3843 else
3844 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
b9668ba4 3845 fi
5c706339
AK
3846 else
3847 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3848 cat conftest.$ac_ext >&5
3849 fi
3850 rm -rf conftest* conftst*
b9668ba4 3851
5c706339
AK
3852 # Do not use the global_symbol_pipe unless it works.
3853 if test "$pipe_works" = yes; then
3854 break
3855 else
3856 lt_cv_sys_global_symbol_pipe=
3857 fi
3858done
3859])
3860if test -z "$lt_cv_sys_global_symbol_pipe"; then
3861 lt_cv_sys_global_symbol_to_cdecl=
3862fi
3863if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3864 AC_MSG_RESULT(failed)
3865else
3866 AC_MSG_RESULT(ok)
3867fi
b9668ba4 3868
059850b5
AK
3869# Response file support.
3870if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3871 nm_file_list_spec='@'
3872elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
3873 nm_file_list_spec='@'
3874fi
3875
5c706339
AK
3876_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3877 [Take the output of nm and produce a listing of raw symbols and C names])
3878_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3879 [Transform the output of nm in a proper C declaration])
3880_LT_DECL([global_symbol_to_c_name_address],
3881 [lt_cv_sys_global_symbol_to_c_name_address], [1],
3882 [Transform the output of nm in a C name address pair])
3883_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3884 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3885 [Transform the output of nm in a C name address pair when lib prefix is needed])
059850b5
AK
3886_LT_DECL([], [nm_file_list_spec], [1],
3887 [Specify filename containing input files for $NM])
5c706339 3888]) # _LT_CMD_GLOBAL_SYMBOLS
b9668ba4 3889
b9668ba4 3890
5c706339
AK
3891# _LT_COMPILER_PIC([TAGNAME])
3892# ---------------------------
3893m4_defun([_LT_COMPILER_PIC],
3894[m4_require([_LT_TAG_COMPILER])dnl
3895_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3896_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3897_LT_TAGVAR(lt_prog_compiler_static, $1)=
b9668ba4 3898
5c706339
AK
3899m4_if([$1], [CXX], [
3900 # C++ specific cases for pic, static, wl, etc.
3901 if test "$GXX" = yes; then
3902 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3903 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
3904
3905 case $host_os in
3906 aix*)
3907 # All AIX code is PIC.
3908 if test "$host_cpu" = ia64; then
3909 # AIX 5 now supports IA64 processor
3910 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4
AK
3911 fi
3912 ;;
b9668ba4 3913
5c706339 3914 amigaos*)
b9668ba4 3915 case $host_cpu in
5c706339
AK
3916 powerpc)
3917 # see comment about AmigaOS4 .so support
3918 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
b9668ba4 3919 ;;
5c706339
AK
3920 m68k)
3921 # FIXME: we need at least 68020 code to build shared libraries, but
3922 # adding the `-m68020' flag to GCC prevents building anything better,
3923 # like `-m68040'.
3924 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
b9668ba4
AK
3925 ;;
3926 esac
b9668ba4 3927 ;;
b9668ba4 3928
5c706339
AK
3929 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
3930 # PIC is the default for these OSes.
3931 ;;
47dc80f6 3932 mingw* | cygwin* | os2* | pw32* | cegcc*)
5c706339
AK
3933 # This hack is so that the source file can tell whether it is being
3934 # built for inclusion in a dll (and should export symbols for example).
3935 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3936 # (--disable-auto-import) libraries
3937 m4_if([$1], [GCJ], [],
3938 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3939 ;;
3940 darwin* | rhapsody*)
3941 # PIC is the default on this platform
3942 # Common symbols not allowed in MH_DYLIB files
3943 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
3944 ;;
3945 *djgpp*)
3946 # DJGPP does not support shared libraries at all
3947 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3948 ;;
059850b5
AK
3949 haiku*)
3950 # PIC is the default for Haiku.
3951 # The "-static" flag exists, but is broken.
3952 _LT_TAGVAR(lt_prog_compiler_static, $1)=
3953 ;;
5c706339
AK
3954 interix[[3-9]]*)
3955 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3956 # Instead, we relocate shared libraries at runtime.
3957 ;;
3958 sysv4*MP*)
3959 if test -d /usr/nec; then
3960 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
3961 fi
3962 ;;
3963 hpux*)
47dc80f6
AK
3964 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3965 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3966 # sets the default TLS model and affects inlining.
5c706339 3967 case $host_cpu in
47dc80f6 3968 hppa*64*)
b9668ba4
AK
3969 ;;
3970 *)
5c706339 3971 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
b9668ba4 3972 ;;
5c706339
AK
3973 esac
3974 ;;
3975 *qnx* | *nto*)
3976 # QNX uses GNU C++, but need to define -shared option too, otherwise
3977 # it will coredump.
3978 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
3979 ;;
3980 *)
3981 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3982 ;;
b9668ba4 3983 esac
5c706339
AK
3984 else
3985 case $host_os in
3986 aix[[4-9]]*)
3987 # All AIX code is PIC.
3988 if test "$host_cpu" = ia64; then
3989 # AIX 5 now supports IA64 processor
3990 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4 3991 else
5c706339 3992 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
b9668ba4
AK
3993 fi
3994 ;;
5c706339
AK
3995 chorus*)
3996 case $cc_basename in
3997 cxch68*)
3998 # Green Hills C++ Compiler
3999 # _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"
4000 ;;
4001 esac
b9668ba4 4002 ;;
059850b5
AK
4003 mingw* | cygwin* | os2* | pw32* | cegcc*)
4004 # This hack is so that the source file can tell whether it is being
4005 # built for inclusion in a dll (and should export symbols for example).
4006 m4_if([$1], [GCJ], [],
4007 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4008 ;;
5c706339
AK
4009 dgux*)
4010 case $cc_basename in
4011 ec++*)
4012 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4013 ;;
4014 ghcx*)
4015 # Green Hills C++ Compiler
4016 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4017 ;;
4018 *)
4019 ;;
4020 esac
b9668ba4 4021 ;;
5c706339
AK
4022 freebsd* | dragonfly*)
4023 # FreeBSD uses GNU C++
b9668ba4 4024 ;;
5c706339
AK
4025 hpux9* | hpux10* | hpux11*)
4026 case $cc_basename in
4027 CC*)
4028 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4029 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4030 if test "$host_cpu" != ia64; then
4031 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4032 fi
4033 ;;
4034 aCC*)
4035 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4036 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4037 case $host_cpu in
4038 hppa*64*|ia64*)
4039 # +Z the default
4040 ;;
4041 *)
4042 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4043 ;;
4044 esac
4045 ;;
b9668ba4 4046 *)
b9668ba4
AK
4047 ;;
4048 esac
b9668ba4 4049 ;;
5c706339
AK
4050 interix*)
4051 # This is c89, which is MS Visual C++ (no shared libs)
4052 # Anyone wants to do a port?
b9668ba4 4053 ;;
5c706339
AK
4054 irix5* | irix6* | nonstopux*)
4055 case $cc_basename in
4056 CC*)
4057 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4058 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4059 # CC pic flag -KPIC is the default.
4060 ;;
4061 *)
4062 ;;
4063 esac
b9668ba4 4064 ;;
0044e680 4065 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
5c706339
AK
4066 case $cc_basename in
4067 KCC*)
4068 # KAI C++ Compiler
4069 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4070 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4071 ;;
47dc80f6
AK
4072 ecpc* )
4073 # old Intel C++ for x86_64 which still supported -KPIC.
5c706339
AK
4074 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4075 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4076 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4077 ;;
47dc80f6
AK
4078 icpc* )
4079 # Intel C++, used to be incompatible with GCC.
4080 # ICC 10 doesn't accept -KPIC any more.
4081 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4082 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4083 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4084 ;;
5c706339
AK
4085 pgCC* | pgcpp*)
4086 # Portland Group C++ compiler
4087 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4088 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4089 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4090 ;;
4091 cxx*)
4092 # Compaq C++
4093 # Make sure the PIC flag is empty. It appears that all Alpha
4094 # Linux and Compaq Tru64 Unix objects are PIC.
4095 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4096 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4097 ;;
059850b5
AK
4098 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4099 # IBM XL 8.0, 9.0 on PPC and BlueGene
5c706339
AK
4100 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4101 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4102 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4103 ;;
4104 *)
4105 case `$CC -V 2>&1 | sed 5q` in
4106 *Sun\ C*)
4107 # Sun C++ 5.9
4108 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4109 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4110 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4111 ;;
4112 esac
4113 ;;
4114 esac
b9668ba4 4115 ;;
5c706339 4116 lynxos*)
b9668ba4 4117 ;;
5c706339 4118 m88k*)
b9668ba4 4119 ;;
5c706339
AK
4120 mvs*)
4121 case $cc_basename in
4122 cxx*)
4123 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4124 ;;
4125 *)
4126 ;;
4127 esac
b9668ba4 4128 ;;
5c706339
AK
4129 netbsd* | netbsdelf*-gnu)
4130 ;;
4131 *qnx* | *nto*)
4132 # QNX uses GNU C++, but need to define -shared option too, otherwise
4133 # it will coredump.
4134 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4135 ;;
4136 osf3* | osf4* | osf5*)
4137 case $cc_basename in
4138 KCC*)
4139 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4140 ;;
4141 RCC*)
4142 # Rational C++ 2.4.1
4143 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4144 ;;
4145 cxx*)
4146 # Digital/Compaq C++
4147 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4148 # Make sure the PIC flag is empty. It appears that all Alpha
4149 # Linux and Compaq Tru64 Unix objects are PIC.
4150 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4151 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4152 ;;
4153 *)
4154 ;;
4155 esac
4156 ;;
4157 psos*)
4158 ;;
4159 solaris*)
4160 case $cc_basename in
059850b5 4161 CC* | sunCC*)
5c706339
AK
4162 # Sun C++ 4.2, 5.x and Centerline C++
4163 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4164 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4165 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4166 ;;
4167 gcx*)
4168 # Green Hills C++ Compiler
4169 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4170 ;;
4171 *)
4172 ;;
4173 esac
4174 ;;
4175 sunos4*)
4176 case $cc_basename in
4177 CC*)
4178 # Sun C++ 4.x
4179 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4180 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4181 ;;
4182 lcc*)
4183 # Lucid
4184 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4185 ;;
4186 *)
4187 ;;
4188 esac
4189 ;;
4190 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4191 case $cc_basename in
4192 CC*)
4193 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4194 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4195 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4196 ;;
4197 esac
4198 ;;
4199 tandem*)
4200 case $cc_basename in
4201 NCC*)
4202 # NonStop-UX NCC 3.20
4203 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4204 ;;
4205 *)
4206 ;;
4207 esac
4208 ;;
4209 vxworks*)
4210 ;;
4211 *)
4212 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
b9668ba4
AK
4213 ;;
4214 esac
b9668ba4 4215 fi
5c706339
AK
4216],
4217[
4218 if test "$GCC" = yes; then
4219 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4220 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
b9668ba4 4221
5c706339
AK
4222 case $host_os in
4223 aix*)
4224 # All AIX code is PIC.
4225 if test "$host_cpu" = ia64; then
4226 # AIX 5 now supports IA64 processor
4227 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4228 fi
4229 ;;
b9668ba4 4230
5c706339
AK
4231 amigaos*)
4232 case $host_cpu in
4233 powerpc)
4234 # see comment about AmigaOS4 .so support
4235 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4236 ;;
4237 m68k)
4238 # FIXME: we need at least 68020 code to build shared libraries, but
4239 # adding the `-m68020' flag to GCC prevents building anything better,
4240 # like `-m68040'.
4241 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4242 ;;
4243 esac
4244 ;;
b9668ba4 4245
5c706339
AK
4246 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4247 # PIC is the default for these OSes.
4248 ;;
b9668ba4 4249
47dc80f6 4250 mingw* | cygwin* | pw32* | os2* | cegcc*)
5c706339
AK
4251 # This hack is so that the source file can tell whether it is being
4252 # built for inclusion in a dll (and should export symbols for example).
4253 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4254 # (--disable-auto-import) libraries
4255 m4_if([$1], [GCJ], [],
4256 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4257 ;;
b9668ba4 4258
5c706339
AK
4259 darwin* | rhapsody*)
4260 # PIC is the default on this platform
4261 # Common symbols not allowed in MH_DYLIB files
4262 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4263 ;;
b9668ba4 4264
059850b5
AK
4265 haiku*)
4266 # PIC is the default for Haiku.
4267 # The "-static" flag exists, but is broken.
4268 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4269 ;;
4270
5c706339 4271 hpux*)
47dc80f6
AK
4272 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4273 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4274 # sets the default TLS model and affects inlining.
5c706339 4275 case $host_cpu in
47dc80f6 4276 hppa*64*)
5c706339
AK
4277 # +Z the default
4278 ;;
4279 *)
4280 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4281 ;;
4282 esac
4283 ;;
b9668ba4 4284
5c706339
AK
4285 interix[[3-9]]*)
4286 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4287 # Instead, we relocate shared libraries at runtime.
4288 ;;
b9668ba4 4289
5c706339
AK
4290 msdosdjgpp*)
4291 # Just because we use GCC doesn't mean we suddenly get shared libraries
4292 # on systems that don't support them.
4293 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4294 enable_shared=no
4295 ;;
b9668ba4 4296
5c706339
AK
4297 *nto* | *qnx*)
4298 # QNX uses GNU C++, but need to define -shared option too, otherwise
4299 # it will coredump.
4300 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4301 ;;
b9668ba4 4302
5c706339
AK
4303 sysv4*MP*)
4304 if test -d /usr/nec; then
4305 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4306 fi
4307 ;;
b9668ba4 4308
5c706339
AK
4309 *)
4310 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4311 ;;
4312 esac
059850b5
AK
4313
4314 case $cc_basename in
4315 nvcc*) # Cuda Compiler Driver 2.2
4316 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4317 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4318 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4319 fi
4320 ;;
4321 esac
5c706339
AK
4322 else
4323 # PORTME Check for flag to pass linker flags through the system compiler.
4324 case $host_os in
4325 aix*)
4326 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4327 if test "$host_cpu" = ia64; then
4328 # AIX 5 now supports IA64 processor
4329 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4330 else
4331 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4332 fi
4333 ;;
b9668ba4 4334
47dc80f6 4335 mingw* | cygwin* | pw32* | os2* | cegcc*)
5c706339
AK
4336 # This hack is so that the source file can tell whether it is being
4337 # built for inclusion in a dll (and should export symbols for example).
4338 m4_if([$1], [GCJ], [],
4339 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4340 ;;
b9668ba4 4341
5c706339
AK
4342 hpux9* | hpux10* | hpux11*)
4343 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4344 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4345 # not for PA HP-UX.
4346 case $host_cpu in
4347 hppa*64*|ia64*)
4348 # +Z the default
4349 ;;
4350 *)
4351 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4352 ;;
4353 esac
4354 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4355 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4356 ;;
b9668ba4 4357
5c706339
AK
4358 irix5* | irix6* | nonstopux*)
4359 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4360 # PIC (with -KPIC) is the default.
4361 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4362 ;;
b9668ba4 4363
0044e680 4364 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
5c706339 4365 case $cc_basename in
47dc80f6
AK
4366 # old Intel for x86_64 which still supported -KPIC.
4367 ecc*)
5c706339
AK
4368 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4369 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4370 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4371 ;;
47dc80f6
AK
4372 # icc used to be incompatible with GCC.
4373 # ICC 10 doesn't accept -KPIC any more.
4374 icc* | ifort*)
4375 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4376 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4377 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4378 ;;
4379 # Lahey Fortran 8.1.
4380 lf95*)
4381 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4382 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4383 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4384 ;;
059850b5
AK
4385 nagfor*)
4386 # NAG Fortran compiler
4387 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4388 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4389 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4390 ;;
4391 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
5c706339
AK
4392 # Portland Group compilers (*not* the Pentium gcc compiler,
4393 # which looks to be a dead project)
4394 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4395 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4396 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4397 ;;
4398 ccc*)
4399 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4400 # All Alpha code is PIC.
4401 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4402 ;;
059850b5
AK
4403 xl* | bgxl* | bgf* | mpixl*)
4404 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
5c706339
AK
4405 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4406 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4407 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4408 ;;
4409 *)
4410 case `$CC -V 2>&1 | sed 5q` in
059850b5
AK
4411 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4412 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4413 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4414 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4415 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4416 ;;
4417 *Sun\ F* | *Sun*Fortran*)
4418 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4419 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4420 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4421 ;;
5c706339
AK
4422 *Sun\ C*)
4423 # Sun C 5.9
4424 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4425 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4426 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4427 ;;
059850b5
AK
4428 *Intel*\ [[CF]]*Compiler*)
4429 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4430 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4431 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4432 ;;
4433 *Portland\ Group*)
4434 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4435 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
5c706339 4436 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5c706339
AK
4437 ;;
4438 esac
4439 ;;
4440 esac
4441 ;;
b9668ba4 4442
5c706339
AK
4443 newsos6)
4444 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4445 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4446 ;;
b9668ba4 4447
5c706339
AK
4448 *nto* | *qnx*)
4449 # QNX uses GNU C++, but need to define -shared option too, otherwise
4450 # it will coredump.
4451 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4452 ;;
b9668ba4 4453
5c706339
AK
4454 osf3* | osf4* | osf5*)
4455 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4456 # All OSF/1 code is PIC.
4457 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4458 ;;
b9668ba4 4459
5c706339
AK
4460 rdos*)
4461 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4462 ;;
b9668ba4 4463
5c706339
AK
4464 solaris*)
4465 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4466 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4467 case $cc_basename in
059850b5 4468 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
5c706339
AK
4469 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4470 *)
4471 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4472 esac
4473 ;;
b9668ba4 4474
5c706339
AK
4475 sunos4*)
4476 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4477 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4478 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4479 ;;
b9668ba4 4480
5c706339
AK
4481 sysv4 | sysv4.2uw2* | sysv4.3*)
4482 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4483 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4484 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4485 ;;
b9668ba4 4486
5c706339
AK
4487 sysv4*MP*)
4488 if test -d /usr/nec ;then
4489 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4490 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4491 fi
4492 ;;
b9668ba4 4493
5c706339
AK
4494 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4495 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4496 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4497 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4498 ;;
b9668ba4 4499
5c706339
AK
4500 unicos*)
4501 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4502 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4503 ;;
b9668ba4 4504
5c706339
AK
4505 uts4*)
4506 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4507 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b9668ba4 4508 ;;
5c706339 4509
b9668ba4 4510 *)
5c706339 4511 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
b9668ba4
AK
4512 ;;
4513 esac
5c706339
AK
4514 fi
4515])
4516case $host_os in
4517 # For platforms which do not support PIC, -DPIC is meaningless:
4518 *djgpp*)
4519 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
b9668ba4 4520 ;;
5c706339
AK
4521 *)
4522 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4523 ;;
4524esac
059850b5
AK
4525
4526AC_CACHE_CHECK([for $compiler option to produce PIC],
4527 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4528 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4529_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
b9668ba4 4530
b9668ba4 4531#
5c706339 4532# Check to make sure the PIC flag actually works.
b9668ba4 4533#
5c706339
AK
4534if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4535 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4536 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4537 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4538 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4539 "" | " "*) ;;
4540 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4541 esac],
4542 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4543 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4544fi
4545_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4546 [Additional compiler flags for building library objects])
4547
059850b5
AK
4548_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4549 [How to pass a linker flag through the compiler])
b9668ba4 4550#
5c706339 4551# Check to make sure the static flag actually works.
b9668ba4 4552#
5c706339
AK
4553wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4554_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4555 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4556 $lt_tmp_static_flag,
4557 [],
4558 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4559_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4560 [Compiler flag to prevent dynamic linking])
4561])# _LT_COMPILER_PIC
b9668ba4 4562
b9668ba4 4563
5c706339
AK
4564# _LT_LINKER_SHLIBS([TAGNAME])
4565# ----------------------------
4566# See if the linker supports building shared libraries.
4567m4_defun([_LT_LINKER_SHLIBS],
4568[AC_REQUIRE([LT_PATH_LD])dnl
4569AC_REQUIRE([LT_PATH_NM])dnl
059850b5 4570m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5c706339
AK
4571m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4572m4_require([_LT_DECL_EGREP])dnl
4573m4_require([_LT_DECL_SED])dnl
4574m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4575m4_require([_LT_TAG_COMPILER])dnl
4576AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4577m4_if([$1], [CXX], [
4578 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
059850b5 4579 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5c706339
AK
4580 case $host_os in
4581 aix[[4-9]]*)
4582 # If we're using GNU nm, then we don't want the "-C" option.
4583 # -C means demangle to AIX nm, but means don't demangle with GNU nm
059850b5
AK
4584 # Also, AIX nm treats weak defined symbols like other global defined
4585 # symbols, whereas GNU nm marks them as "W".
5c706339 4586 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
059850b5 4587 _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
4588 else
4589 _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'
4590 fi
4591 ;;
4592 pw32*)
4593 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
059850b5 4594 ;;
47dc80f6 4595 cygwin* | mingw* | cegcc*)
059850b5
AK
4596 case $cc_basename in
4597 cl*)
4598 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4599 ;;
4600 *)
4601 _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'
4602 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4603 ;;
4604 esac
4605 ;;
4606 linux* | k*bsd*-gnu | gnu*)
5c706339 4607 _LT_TAGVAR(link_all_deplibs, $1)=no
059850b5 4608 ;;
5c706339
AK
4609 *)
4610 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
059850b5 4611 ;;
5c706339 4612 esac
5c706339
AK
4613], [
4614 runpath_var=
4615 _LT_TAGVAR(allow_undefined_flag, $1)=
4616 _LT_TAGVAR(always_export_symbols, $1)=no
4617 _LT_TAGVAR(archive_cmds, $1)=
4618 _LT_TAGVAR(archive_expsym_cmds, $1)=
4619 _LT_TAGVAR(compiler_needs_object, $1)=no
4620 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4621 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4622 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4623 _LT_TAGVAR(hardcode_automatic, $1)=no
4624 _LT_TAGVAR(hardcode_direct, $1)=no
4625 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4626 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5c706339
AK
4627 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4628 _LT_TAGVAR(hardcode_minus_L, $1)=no
4629 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4630 _LT_TAGVAR(inherit_rpath, $1)=no
4631 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4632 _LT_TAGVAR(module_cmds, $1)=
4633 _LT_TAGVAR(module_expsym_cmds, $1)=
4634 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4635 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4636 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4637 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4638 # include_expsyms should be a list of space-separated symbols to be *always*
4639 # included in the symbol list
4640 _LT_TAGVAR(include_expsyms, $1)=
4641 # exclude_expsyms can be an extended regexp of symbols to exclude
4642 # it will be wrapped by ` (' and `)$', so one must not match beginning or
4643 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4644 # as well as any symbol that contains `d'.
4645 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4646 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4647 # platforms (ab)use it in PIC code, but their linkers get confused if
4648 # the symbol is explicitly referenced. Since portable code cannot
4649 # rely on this symbol name, it's probably fine to never include it in
4650 # preloaded symbol tables.
4651 # Exclude shared library initialization/finalization symbols.
4652dnl Note also adjust exclude_expsyms for C++ above.
4653 extract_expsyms_cmds=
b9668ba4 4654
5c706339 4655 case $host_os in
47dc80f6 4656 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
4657 # FIXME: the MSVC++ port hasn't been tested in a loooong time
4658 # When not using gcc, we currently assume that we are using
4659 # Microsoft Visual C++.
4660 if test "$GCC" != yes; then
4661 with_gnu_ld=no
4662 fi
4663 ;;
4664 interix*)
4665 # we just hope/assume this is gcc and not c89 (= MSVC++)
4666 with_gnu_ld=yes
4667 ;;
4668 openbsd*)
4669 with_gnu_ld=no
4670 ;;
059850b5 4671 linux* | k*bsd*-gnu | gnu*)
0fbeb4dc
AK
4672 _LT_TAGVAR(link_all_deplibs, $1)=no
4673 ;;
5c706339 4674 esac
b9668ba4 4675
5c706339 4676 _LT_TAGVAR(ld_shlibs, $1)=yes
059850b5
AK
4677
4678 # On some targets, GNU ld is compatible enough with the native linker
4679 # that we're better off using the native interface for both.
4680 lt_use_gnu_ld_interface=no
5c706339 4681 if test "$with_gnu_ld" = yes; then
059850b5
AK
4682 case $host_os in
4683 aix*)
4684 # The AIX port of GNU ld has always aspired to compatibility
4685 # with the native linker. However, as the warning in the GNU ld
4686 # block says, versions before 2.19.5* couldn't really create working
4687 # shared libraries, regardless of the interface used.
4688 case `$LD -v 2>&1` in
4689 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
4690 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
4691 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
4692 *)
4693 lt_use_gnu_ld_interface=yes
4694 ;;
4695 esac
4696 ;;
4697 *)
4698 lt_use_gnu_ld_interface=yes
4699 ;;
4700 esac
4701 fi
4702
4703 if test "$lt_use_gnu_ld_interface" = yes; then
5c706339
AK
4704 # If archive_cmds runs LD, not CC, wlarc should be empty
4705 wlarc='${wl}'
b9668ba4 4706
5c706339
AK
4707 # Set some defaults for GNU ld with shared library support. These
4708 # are reset later if shared libraries are not supported. Putting them
4709 # here allows them to be overridden if necessary.
4710 runpath_var=LD_RUN_PATH
4711 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4712 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
4713 # ancient GNU ld didn't support --whole-archive et. al.
4714 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4715 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4716 else
4717 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4718 fi
4719 supports_anon_versioning=no
4720 case `$LD -v 2>&1` in
0fbeb4dc 4721 *GNU\ gold*) supports_anon_versioning=yes ;;
5c706339
AK
4722 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4723 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4724 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4725 *\ 2.11.*) ;; # other 2.11 versions
4726 *) supports_anon_versioning=yes ;;
4727 esac
b9668ba4 4728
5c706339
AK
4729 # See if GNU ld supports shared libraries.
4730 case $host_os in
4731 aix[[3-9]]*)
4732 # On AIX/PPC, the GNU linker is very broken
4733 if test "$host_cpu" != ia64; then
4734 _LT_TAGVAR(ld_shlibs, $1)=no
4735 cat <<_LT_EOF 1>&2
b9668ba4 4736
059850b5 4737*** Warning: the GNU linker, at least up to release 2.19, is reported
5c706339
AK
4738*** to be unable to reliably create shared libraries on AIX.
4739*** Therefore, libtool is disabling shared libraries support. If you
059850b5
AK
4740*** really care for shared libraries, you may want to install binutils
4741*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
4742*** You will then need to restart the configuration process.
b9668ba4 4743
5c706339
AK
4744_LT_EOF
4745 fi
4746 ;;
b9668ba4 4747
5c706339
AK
4748 amigaos*)
4749 case $host_cpu in
4750 powerpc)
4751 # see comment about AmigaOS4 .so support
4752 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4753 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4754 ;;
4755 m68k)
4756 _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)'
4757 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4758 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4759 ;;
4760 esac
4761 ;;
b9668ba4 4762
5c706339
AK
4763 beos*)
4764 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4765 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4766 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4767 # support --undefined. This deserves some investigation. FIXME
4768 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4769 else
4770 _LT_TAGVAR(ld_shlibs, $1)=no
4771 fi
4772 ;;
b9668ba4 4773
47dc80f6 4774 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
4775 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
4776 # as there is no search path for DLLs.
4777 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
059850b5 4778 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
5c706339
AK
4779 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4780 _LT_TAGVAR(always_export_symbols, $1)=no
4781 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
059850b5
AK
4782 _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'
4783 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5c706339
AK
4784
4785 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4786 _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'
4787 # If the export-symbols file already is a .def file (1st line
4788 # is EXPORTS), use it as is; otherwise, prepend...
4789 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
4790 cp $export_symbols $output_objdir/$soname.def;
4791 else
4792 echo EXPORTS > $output_objdir/$soname.def;
4793 cat $export_symbols >> $output_objdir/$soname.def;
4794 fi~
4795 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4796 else
4797 _LT_TAGVAR(ld_shlibs, $1)=no
4798 fi
4799 ;;
b9668ba4 4800
059850b5
AK
4801 haiku*)
4802 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4803 _LT_TAGVAR(link_all_deplibs, $1)=yes
4804 ;;
4805
5c706339
AK
4806 interix[[3-9]]*)
4807 _LT_TAGVAR(hardcode_direct, $1)=no
4808 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4809 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4810 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4811 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4812 # Instead, shared libraries are loaded at an image base (0x10000000 by
4813 # default) and relocated if they conflict, which is a slow very memory
4814 # consuming and fragmenting process. To avoid this, we pick a random,
4815 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4816 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
4817 _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'
4818 _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'
4819 ;;
b9668ba4 4820
0fbeb4dc 4821 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5c706339
AK
4822 tmp_diet=no
4823 if test "$host_os" = linux-dietlibc; then
4824 case $cc_basename in
4825 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
4826 esac
4827 fi
4828 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4829 && test "$tmp_diet" = no
4830 then
059850b5 4831 tmp_addflag=' $pic_flag'
5c706339
AK
4832 tmp_sharedflag='-shared'
4833 case $cc_basename,$host_cpu in
4834 pgcc*) # Portland Group C compiler
059850b5 4835 _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
4836 tmp_addflag=' $pic_flag'
4837 ;;
059850b5
AK
4838 pgf77* | pgf90* | pgf95* | pgfortran*)
4839 # Portland Group f77 and f90 compilers
4840 _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
4841 tmp_addflag=' $pic_flag -Mnomain' ;;
4842 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
4843 tmp_addflag=' -i_dynamic' ;;
4844 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
4845 tmp_addflag=' -i_dynamic -nofor_main' ;;
4846 ifc* | ifort*) # Intel Fortran compiler
4847 tmp_addflag=' -nofor_main' ;;
47dc80f6
AK
4848 lf95*) # Lahey Fortran 8.1
4849 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4850 tmp_sharedflag='--shared' ;;
059850b5 4851 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5c706339
AK
4852 tmp_sharedflag='-qmkshrobj'
4853 tmp_addflag= ;;
059850b5
AK
4854 nvcc*) # Cuda Compiler Driver 2.2
4855 _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'
4856 _LT_TAGVAR(compiler_needs_object, $1)=yes
4857 ;;
5c706339
AK
4858 esac
4859 case `$CC -V 2>&1 | sed 5q` in
4860 *Sun\ C*) # Sun C 5.9
059850b5 4861 _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
4862 _LT_TAGVAR(compiler_needs_object, $1)=yes
4863 tmp_sharedflag='-G' ;;
4864 *Sun\ F*) # Sun Fortran 8.3
4865 tmp_sharedflag='-G' ;;
4866 esac
4867 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
b9668ba4 4868
5c706339
AK
4869 if test "x$supports_anon_versioning" = xyes; then
4870 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4871 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4872 echo "local: *; };" >> $output_objdir/$libname.ver~
4873 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4874 fi
b9668ba4 4875
5c706339 4876 case $cc_basename in
059850b5 4877 xlf* | bgf* | bgxlf* | mpixlf*)
5c706339
AK
4878 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4879 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
059850b5
AK
4880 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4881 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5c706339
AK
4882 if test "x$supports_anon_versioning" = xyes; then
4883 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4884 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4885 echo "local: *; };" >> $output_objdir/$libname.ver~
059850b5 4886 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5c706339
AK
4887 fi
4888 ;;
4889 esac
4890 else
4891 _LT_TAGVAR(ld_shlibs, $1)=no
4892 fi
4893 ;;
b9668ba4 4894
5c706339
AK
4895 netbsd* | netbsdelf*-gnu)
4896 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4897 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
4898 wlarc=
4899 else
059850b5
AK
4900 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4901 _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
4902 fi
4903 ;;
b9668ba4 4904
5c706339
AK
4905 solaris*)
4906 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4907 _LT_TAGVAR(ld_shlibs, $1)=no
4908 cat <<_LT_EOF 1>&2
b9668ba4 4909
5c706339
AK
4910*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4911*** create shared libraries on Solaris systems. Therefore, libtool
4912*** is disabling shared libraries support. We urge you to upgrade GNU
4913*** binutils to release 2.9.1 or newer. Another option is to modify
4914*** your PATH or compiler configuration so that the native linker is
4915*** used, and then restart.
b9668ba4 4916
5c706339
AK
4917_LT_EOF
4918 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
059850b5
AK
4919 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4920 _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
4921 else
4922 _LT_TAGVAR(ld_shlibs, $1)=no
4923 fi
4924 ;;
b9668ba4 4925
5c706339
AK
4926 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4927 case `$LD -v 2>&1` in
4928 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
4929 _LT_TAGVAR(ld_shlibs, $1)=no
4930 cat <<_LT_EOF 1>&2
b9668ba4 4931
5c706339
AK
4932*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4933*** reliably create shared libraries on SCO systems. Therefore, libtool
4934*** is disabling shared libraries support. We urge you to upgrade GNU
4935*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
4936*** your PATH or compiler configuration so that the native linker is
4937*** used, and then restart.
b9668ba4 4938
5c706339
AK
4939_LT_EOF
4940 ;;
4941 *)
4942 # For security reasons, it is highly recommended that you always
4943 # use absolute paths for naming shared libraries, and exclude the
4944 # DT_RUNPATH tag from executables and libraries. But doing so
4945 # requires that you compile everything twice, which is a pain.
4946 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4947 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4948 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4949 _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'
4950 else
4951 _LT_TAGVAR(ld_shlibs, $1)=no
4952 fi
4953 ;;
4954 esac
4955 ;;
b9668ba4 4956
5c706339
AK
4957 sunos4*)
4958 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4959 wlarc=
4960 _LT_TAGVAR(hardcode_direct, $1)=yes
4961 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4962 ;;
b9668ba4 4963
5c706339
AK
4964 *)
4965 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
059850b5
AK
4966 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4967 _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
4968 else
4969 _LT_TAGVAR(ld_shlibs, $1)=no
4970 fi
4971 ;;
4972 esac
b9668ba4 4973
5c706339
AK
4974 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
4975 runpath_var=
4976 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4977 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4978 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4979 fi
4980 else
4981 # PORTME fill in a description of your system's linker (not GNU ld)
4982 case $host_os in
4983 aix3*)
4984 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4985 _LT_TAGVAR(always_export_symbols, $1)=yes
4986 _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'
4987 # Note: this linker hardcodes the directories in LIBPATH if there
4988 # are no directories specified by -L.
4989 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4990 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
4991 # Neither direct hardcoding nor static linking is supported with a
4992 # broken collect2.
4993 _LT_TAGVAR(hardcode_direct, $1)=unsupported
4994 fi
4995 ;;
b9668ba4 4996
5c706339
AK
4997 aix[[4-9]]*)
4998 if test "$host_cpu" = ia64; then
4999 # On IA64, the linker does run time linking by default, so we don't
5000 # have to do anything special.
5001 aix_use_runtimelinking=no
5002 exp_sym_flag='-Bexport'
5003 no_entry_flag=""
5004 else
5005 # If we're using GNU nm, then we don't want the "-C" option.
5006 # -C means demangle to AIX nm, but means don't demangle with GNU nm
059850b5
AK
5007 # Also, AIX nm treats weak defined symbols like other global
5008 # defined symbols, whereas GNU nm marks them as "W".
5c706339 5009 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
059850b5 5010 _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
5011 else
5012 _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'
5013 fi
5014 aix_use_runtimelinking=no
b9668ba4 5015
5c706339
AK
5016 # Test if we are trying to use run time linking or normal
5017 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5018 # need to do runtime linking.
5019 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5020 for ld_flag in $LDFLAGS; do
5021 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
5022 aix_use_runtimelinking=yes
5023 break
5024 fi
5025 done
5026 ;;
5027 esac
b9668ba4 5028
5c706339
AK
5029 exp_sym_flag='-bexport'
5030 no_entry_flag='-bnoentry'
5031 fi
b9668ba4 5032
5c706339
AK
5033 # When large executables or shared objects are built, AIX ld can
5034 # have problems creating the table of contents. If linking a library
5035 # or program results in "error TOC overflow" add -mminimal-toc to
5036 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5037 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
b9668ba4 5038
5c706339
AK
5039 _LT_TAGVAR(archive_cmds, $1)=''
5040 _LT_TAGVAR(hardcode_direct, $1)=yes
5041 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5042 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5043 _LT_TAGVAR(link_all_deplibs, $1)=yes
5044 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
b9668ba4 5045
5c706339
AK
5046 if test "$GCC" = yes; then
5047 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5048 # We only want to do this on AIX 4.2 and lower, the check
5049 # below for broken collect2 doesn't work under 4.3+
5050 collect2name=`${CC} -print-prog-name=collect2`
5051 if test -f "$collect2name" &&
5052 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5053 then
5054 # We have reworked collect2
5055 :
5056 else
5057 # We have old collect2
5058 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5059 # It fails to find uninstalled libraries when the uninstalled
5060 # path is not listed in the libpath. Setting hardcode_minus_L
5061 # to unsupported forces relinking
5062 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5063 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5064 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5065 fi
5066 ;;
5067 esac
5068 shared_flag='-shared'
5069 if test "$aix_use_runtimelinking" = yes; then
5070 shared_flag="$shared_flag "'${wl}-G'
5071 fi
5072 _LT_TAGVAR(link_all_deplibs, $1)=no
5073 else
5074 # not using gcc
5075 if test "$host_cpu" = ia64; then
5076 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5077 # chokes on -Wl,-G. The following line is correct:
5078 shared_flag='-G'
5079 else
5080 if test "$aix_use_runtimelinking" = yes; then
5081 shared_flag='${wl}-G'
5082 else
5083 shared_flag='${wl}-bM:SRE'
5084 fi
5085 fi
5086 fi
b9668ba4 5087
47dc80f6 5088 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
5c706339
AK
5089 # It seems that -bexpall does not export symbols beginning with
5090 # underscore (_), so it is better to generate a list of symbols to export.
5091 _LT_TAGVAR(always_export_symbols, $1)=yes
5092 if test "$aix_use_runtimelinking" = yes; then
5093 # Warning - without using the other runtime loading flags (-brtl),
5094 # -berok will link without error, but may produce a broken library.
5095 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5096 # Determine the default libpath from the value encoded in an
5097 # empty executable.
059850b5 5098 _LT_SYS_MODULE_PATH_AIX([$1])
5c706339 5099 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
059850b5 5100 _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
5101 else
5102 if test "$host_cpu" = ia64; then
5103 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5104 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5105 _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"
5106 else
5107 # Determine the default libpath from the value encoded in an
5108 # empty executable.
059850b5 5109 _LT_SYS_MODULE_PATH_AIX([$1])
5c706339
AK
5110 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5111 # Warning - without using the other run time loading flags,
5112 # -berok will link without error, but may produce a broken library.
5113 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5114 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
059850b5
AK
5115 if test "$with_gnu_ld" = yes; then
5116 # We only use this code for GNU lds that support --whole-archive.
5117 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5118 else
5119 # Exported symbols can be pulled into shared objects from archives
5120 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5121 fi
5c706339
AK
5122 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5123 # This is similar to how AIX traditionally builds its shared libraries.
5124 _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'
5125 fi
5126 fi
5127 ;;
b9668ba4 5128
5c706339
AK
5129 amigaos*)
5130 case $host_cpu in
5131 powerpc)
5132 # see comment about AmigaOS4 .so support
5133 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5134 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5135 ;;
5136 m68k)
5137 _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)'
5138 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5139 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5140 ;;
5141 esac
5142 ;;
b9668ba4 5143
5c706339
AK
5144 bsdi[[45]]*)
5145 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5146 ;;
b9668ba4 5147
47dc80f6 5148 cygwin* | mingw* | pw32* | cegcc*)
5c706339
AK
5149 # When not using gcc, we currently assume that we are using
5150 # Microsoft Visual C++.
5151 # hardcode_libdir_flag_spec is actually meaningless, as there is
5152 # no search path for DLLs.
059850b5
AK
5153 case $cc_basename in
5154 cl*)
5155 # Native MSVC
5156 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5157 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5158 _LT_TAGVAR(always_export_symbols, $1)=yes
5159 _LT_TAGVAR(file_list_spec, $1)='@'
5160 # Tell ltmain to make .lib files, not .a files.
5161 libext=lib
5162 # Tell ltmain to make .dll files, not .so files.
5163 shrext_cmds=".dll"
5164 # FIXME: Setting linknames here is a bad hack.
5165 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
5166 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5167 sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
5168 else
5169 sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
5170 fi~
5171 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5172 linknames='
5173 # The linker will not automatically build a static lib if we build a DLL.
5174 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5175 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5176 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5177 _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'
5178 # Don't use ranlib
5179 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5180 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5181 lt_tool_outputfile="@TOOL_OUTPUT@"~
5182 case $lt_outputfile in
5183 *.exe|*.EXE) ;;
5184 *)
5185 lt_outputfile="$lt_outputfile.exe"
5186 lt_tool_outputfile="$lt_tool_outputfile.exe"
5187 ;;
5188 esac~
5189 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
5190 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5191 $RM "$lt_outputfile.manifest";
5192 fi'
5193 ;;
5194 *)
5195 # Assume MSVC wrapper
5196 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5197 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5198 # Tell ltmain to make .lib files, not .a files.
5199 libext=lib
5200 # Tell ltmain to make .dll files, not .so files.
5201 shrext_cmds=".dll"
5202 # FIXME: Setting linknames here is a bad hack.
5203 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5204 # The linker will automatically build a .lib file if we build a DLL.
5205 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5206 # FIXME: Should let the user specify the lib program.
5207 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5208 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5209 ;;
5210 esac
5c706339 5211 ;;
b9668ba4 5212
5c706339
AK
5213 darwin* | rhapsody*)
5214 _LT_DARWIN_LINKER_FEATURES($1)
5215 ;;
b9668ba4 5216
5c706339
AK
5217 dgux*)
5218 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5219 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5220 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5221 ;;
b9668ba4 5222
5c706339
AK
5223 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5224 # support. Future versions do this automatically, but an explicit c++rt0.o
5225 # does not break anything, and helps significantly (at the cost of a little
5226 # extra space).
5227 freebsd2.2*)
5228 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5229 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5230 _LT_TAGVAR(hardcode_direct, $1)=yes
5231 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5232 ;;
b9668ba4 5233
5c706339 5234 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
059850b5 5235 freebsd2.*)
5c706339
AK
5236 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5237 _LT_TAGVAR(hardcode_direct, $1)=yes
5238 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5239 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5240 ;;
b9668ba4 5241
5c706339
AK
5242 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5243 freebsd* | dragonfly*)
059850b5 5244 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5245 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5246 _LT_TAGVAR(hardcode_direct, $1)=yes
5247 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5248 ;;
b9668ba4 5249
5c706339
AK
5250 hpux9*)
5251 if test "$GCC" = yes; then
059850b5 5252 _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
5253 else
5254 _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'
5255 fi
5256 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5257 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5258 _LT_TAGVAR(hardcode_direct, $1)=yes
b9668ba4 5259
5c706339
AK
5260 # hardcode_minus_L: Not really in the search PATH,
5261 # but as the default location of the library.
5262 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5263 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5264 ;;
b9668ba4 5265
5c706339 5266 hpux10*)
059850b5
AK
5267 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5268 _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
5269 else
5270 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5271 fi
5272 if test "$with_gnu_ld" = no; then
5273 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5c706339
AK
5274 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5275 _LT_TAGVAR(hardcode_direct, $1)=yes
5276 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5277 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5278 # hardcode_minus_L: Not really in the search PATH,
5279 # but as the default location of the library.
5280 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5281 fi
5282 ;;
b9668ba4 5283
5c706339 5284 hpux11*)
059850b5 5285 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5c706339
AK
5286 case $host_cpu in
5287 hppa*64*)
5288 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5289 ;;
5290 ia64*)
059850b5 5291 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5c706339
AK
5292 ;;
5293 *)
059850b5 5294 _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
5295 ;;
5296 esac
5297 else
5298 case $host_cpu in
5299 hppa*64*)
5300 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5301 ;;
5302 ia64*)
5303 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5304 ;;
5305 *)
059850b5
AK
5306 m4_if($1, [], [
5307 # Older versions of the 11.00 compiler do not understand -b yet
5308 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5309 _LT_LINKER_OPTION([if $CC understands -b],
5310 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5311 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5312 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5313 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5c706339
AK
5314 ;;
5315 esac
5316 fi
5317 if test "$with_gnu_ld" = no; then
5318 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5319 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
b9668ba4 5320
5c706339
AK
5321 case $host_cpu in
5322 hppa*64*|ia64*)
5323 _LT_TAGVAR(hardcode_direct, $1)=no
5324 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5325 ;;
5326 *)
5327 _LT_TAGVAR(hardcode_direct, $1)=yes
5328 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5329 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
b9668ba4 5330
5c706339
AK
5331 # hardcode_minus_L: Not really in the search PATH,
5332 # but as the default location of the library.
5333 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5334 ;;
5335 esac
5336 fi
5337 ;;
b9668ba4 5338
5c706339
AK
5339 irix5* | irix6* | nonstopux*)
5340 if test "$GCC" = yes; then
059850b5 5341 _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
5342 # Try to use the -exported_symbol ld option, if it does not
5343 # work, assume that -exports_file does not work either and
5344 # implicitly export all symbols.
059850b5
AK
5345 # This should be the same for all languages, so no per-tag cache variable.
5346 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5347 [lt_cv_irix_exported_symbol],
5348 [save_LDFLAGS="$LDFLAGS"
5349 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
5350 AC_LINK_IFELSE(
5351 [AC_LANG_SOURCE(
5352 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5353 [C++], [[int foo (void) { return 0; }]],
5354 [Fortran 77], [[
5355 subroutine foo
5356 end]],
5357 [Fortran], [[
5358 subroutine foo
5359 end]])])],
5360 [lt_cv_irix_exported_symbol=yes],
5361 [lt_cv_irix_exported_symbol=no])
5362 LDFLAGS="$save_LDFLAGS"])
5363 if test "$lt_cv_irix_exported_symbol" = yes; then
5364 _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'
5365 fi
5c706339 5366 else
059850b5
AK
5367 _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'
5368 _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
5369 fi
5370 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5371 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5372 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5373 _LT_TAGVAR(inherit_rpath, $1)=yes
5374 _LT_TAGVAR(link_all_deplibs, $1)=yes
5375 ;;
b9668ba4 5376
5c706339
AK
5377 netbsd* | netbsdelf*-gnu)
5378 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5379 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5380 else
5381 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5382 fi
5383 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5384 _LT_TAGVAR(hardcode_direct, $1)=yes
5385 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5386 ;;
b9668ba4 5387
5c706339
AK
5388 newsos6)
5389 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5390 _LT_TAGVAR(hardcode_direct, $1)=yes
5391 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5392 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5393 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5394 ;;
b9668ba4 5395
5c706339
AK
5396 *nto* | *qnx*)
5397 ;;
b9668ba4 5398
5c706339
AK
5399 openbsd*)
5400 if test -f /usr/libexec/ld.so; then
5401 _LT_TAGVAR(hardcode_direct, $1)=yes
5402 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5403 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5404 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
5405 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5406 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
5407 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5408 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5409 else
5410 case $host_os in
5411 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
5412 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5413 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5414 ;;
5415 *)
5416 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5417 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5418 ;;
5419 esac
5420 fi
5421 else
5422 _LT_TAGVAR(ld_shlibs, $1)=no
5423 fi
5424 ;;
b9668ba4 5425
5c706339
AK
5426 os2*)
5427 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5428 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5429 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
059850b5 5430 _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
5431 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
5432 ;;
b9668ba4 5433
5c706339
AK
5434 osf3*)
5435 if test "$GCC" = yes; then
5436 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
059850b5 5437 _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
5438 else
5439 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
059850b5 5440 _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
5441 fi
5442 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5443 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5444 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5445 ;;
b9668ba4 5446
5c706339
AK
5447 osf4* | osf5*) # as osf3* with the addition of -msym flag
5448 if test "$GCC" = yes; then
5449 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
059850b5 5450 _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
5451 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5452 else
5453 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
059850b5 5454 _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 5455 _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 5456 $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 5457
5c706339
AK
5458 # Both c and cxx compiler support -rpath directly
5459 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5460 fi
5461 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5462 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5463 ;;
b9668ba4 5464
5c706339
AK
5465 solaris*)
5466 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5467 if test "$GCC" = yes; then
5468 wlarc='${wl}'
059850b5 5469 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5c706339 5470 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
059850b5 5471 $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
5472 else
5473 case `$CC -V 2>&1` in
5474 *"Compilers 5.0"*)
5475 wlarc=''
5476 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5477 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5478 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5479 ;;
5480 *)
5481 wlarc='${wl}'
5482 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5483 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5484 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5485 ;;
5486 esac
5487 fi
5488 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5489 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5490 case $host_os in
5491 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5492 *)
5493 # The compiler driver will combine and reorder linker options,
5494 # but understands `-z linker_flag'. GCC discards it without `$wl',
5495 # but is careful enough not to reorder.
5496 # Supported since Solaris 2.6 (maybe 2.5.1?)
5497 if test "$GCC" = yes; then
5498 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
5499 else
5500 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5501 fi
5502 ;;
5503 esac
5504 _LT_TAGVAR(link_all_deplibs, $1)=yes
5505 ;;
b9668ba4 5506
5c706339
AK
5507 sunos4*)
5508 if test "x$host_vendor" = xsequent; then
5509 # Use $CC to link under sequent, because it throws in some extra .o
5510 # files that make .init and .fini sections work.
5511 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5512 else
5513 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5514 fi
5515 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5516 _LT_TAGVAR(hardcode_direct, $1)=yes
5517 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5518 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5519 ;;
b9668ba4 5520
5c706339
AK
5521 sysv4)
5522 case $host_vendor in
5523 sni)
5524 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5525 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5526 ;;
5527 siemens)
5528 ## LD is ld it makes a PLAMLIB
5529 ## CC just makes a GrossModule.
5530 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5531 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5532 _LT_TAGVAR(hardcode_direct, $1)=no
5533 ;;
5534 motorola)
5535 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5536 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5537 ;;
5538 esac
5539 runpath_var='LD_RUN_PATH'
5540 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5541 ;;
b9668ba4 5542
5c706339
AK
5543 sysv4.3*)
5544 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5545 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5546 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5547 ;;
b9668ba4 5548
5c706339
AK
5549 sysv4*MP*)
5550 if test -d /usr/nec; then
5551 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5552 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5553 runpath_var=LD_RUN_PATH
5554 hardcode_runpath_var=yes
5555 _LT_TAGVAR(ld_shlibs, $1)=yes
5556 fi
5557 ;;
b9668ba4 5558
5c706339
AK
5559 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
5560 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5561 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5562 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5563 runpath_var='LD_RUN_PATH'
b9668ba4 5564
5c706339
AK
5565 if test "$GCC" = yes; then
5566 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5567 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5568 else
5569 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5570 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5571 fi
5572 ;;
b9668ba4 5573
5c706339
AK
5574 sysv5* | sco3.2v5* | sco5v6*)
5575 # Note: We can NOT use -z defs as we might desire, because we do not
5576 # link with -lc, and that would cause any symbols used from libc to
5577 # always be unresolved, which means just about no library would
5578 # ever link correctly. If we're not using GNU ld we use -z text
5579 # though, which does catch some bad symbols but isn't as heavy-handed
5580 # as -z defs.
5581 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5582 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5583 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5584 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5585 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5586 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5587 _LT_TAGVAR(link_all_deplibs, $1)=yes
5588 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
5589 runpath_var='LD_RUN_PATH'
b9668ba4 5590
5c706339
AK
5591 if test "$GCC" = yes; then
5592 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5593 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5594 else
5595 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5596 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5597 fi
5598 ;;
b9668ba4 5599
5c706339
AK
5600 uts4*)
5601 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5602 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5603 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5604 ;;
b9668ba4 5605
5c706339
AK
5606 *)
5607 _LT_TAGVAR(ld_shlibs, $1)=no
5608 ;;
5609 esac
b9668ba4 5610
5c706339
AK
5611 if test x$host_vendor = xsni; then
5612 case $host in
5613 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5614 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5615 ;;
5616 esac
5617 fi
5618 fi
5619])
5620AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5621test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
b9668ba4 5622
5c706339 5623_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
b9668ba4 5624
5c706339
AK
5625_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5626_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5627_LT_DECL([], [extract_expsyms_cmds], [2],
5628 [The commands to extract the exported symbol list from a shared archive])
b9668ba4 5629
5c706339
AK
5630#
5631# Do we need to explicitly link libc?
5632#
5633case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
5634x|xyes)
5635 # Assume -lc should be added
5636 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
b9668ba4 5637
5c706339
AK
5638 if test "$enable_shared" = yes && test "$GCC" = yes; then
5639 case $_LT_TAGVAR(archive_cmds, $1) in
5640 *'~'*)
5641 # FIXME: we may have to deal with multi-command sequences.
5642 ;;
5643 '$CC '*)
5644 # Test whether the compiler implicitly links with -lc since on some
5645 # systems, -lgcc has to come before -lc. If gcc already passes -lc
5646 # to ld, don't add -lc before -lgcc.
059850b5
AK
5647 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
5648 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
5649 [$RM conftest*
5650 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5651
5652 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5653 soname=conftest
5654 lib=conftest
5655 libobjs=conftest.$ac_objext
5656 deplibs=
5657 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5658 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5659 compiler_flags=-v
5660 linker_flags=-v
5661 verstring=
5662 output_objdir=.
5663 libname=conftest
5664 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5665 _LT_TAGVAR(allow_undefined_flag, $1)=
5666 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5667 then
5668 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5669 else
5670 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5671 fi
5672 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5673 else
5674 cat conftest.err 1>&5
5675 fi
5676 $RM conftest*
5677 ])
5678 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
5c706339
AK
5679 ;;
5680 esac
5681 fi
5682 ;;
5683esac
b9668ba4 5684
5c706339
AK
5685_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5686 [Whether or not to add -lc for building shared libraries])
5687_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5688 [enable_shared_with_static_runtimes], [0],
5689 [Whether or not to disallow shared libs when runtime libs are static])
5690_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5691 [Compiler flag to allow reflexive dlopens])
5692_LT_TAGDECL([], [whole_archive_flag_spec], [1],
5693 [Compiler flag to generate shared objects directly from archives])
5694_LT_TAGDECL([], [compiler_needs_object], [1],
5695 [Whether the compiler copes with passing no objects directly])
5696_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5697 [Create an old-style archive from a shared archive])
5698_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5699 [Create a temporary old-style archive to link instead of a shared archive])
5700_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5701_LT_TAGDECL([], [archive_expsym_cmds], [2])
5702_LT_TAGDECL([], [module_cmds], [2],
5703 [Commands used to build a loadable module if different from building
5704 a shared archive.])
5705_LT_TAGDECL([], [module_expsym_cmds], [2])
5706_LT_TAGDECL([], [with_gnu_ld], [1],
5707 [Whether we are building with GNU ld or not])
5708_LT_TAGDECL([], [allow_undefined_flag], [1],
5709 [Flag that allows shared libraries with undefined symbols to be built])
5710_LT_TAGDECL([], [no_undefined_flag], [1],
5711 [Flag that enforces no undefined symbols])
5712_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5713 [Flag to hardcode $libdir into a binary during linking.
5714 This must work even if $libdir does not exist])
5c706339
AK
5715_LT_TAGDECL([], [hardcode_libdir_separator], [1],
5716 [Whether we need a single "-rpath" flag with a separated argument])
5717_LT_TAGDECL([], [hardcode_direct], [0],
5718 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5719 DIR into the resulting binary])
5720_LT_TAGDECL([], [hardcode_direct_absolute], [0],
5721 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5722 DIR into the resulting binary and the resulting library dependency is
5723 "absolute", i.e impossible to change by setting ${shlibpath_var} if the
5724 library is relocated])
5725_LT_TAGDECL([], [hardcode_minus_L], [0],
5726 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5727 into the resulting binary])
5728_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5729 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5730 into the resulting binary])
5731_LT_TAGDECL([], [hardcode_automatic], [0],
5732 [Set to "yes" if building a shared library automatically hardcodes DIR
5733 into the library and all subsequent libraries and executables linked
5734 against it])
5735_LT_TAGDECL([], [inherit_rpath], [0],
5736 [Set to yes if linker adds runtime paths of dependent libraries
5737 to runtime path list])
5738_LT_TAGDECL([], [link_all_deplibs], [0],
5739 [Whether libtool must link a program against all its dependency libraries])
5c706339
AK
5740_LT_TAGDECL([], [always_export_symbols], [0],
5741 [Set to "yes" if exported symbols are required])
5742_LT_TAGDECL([], [export_symbols_cmds], [2],
5743 [The commands to list exported symbols])
5744_LT_TAGDECL([], [exclude_expsyms], [1],
5745 [Symbols that should not be listed in the preloaded symbols])
5746_LT_TAGDECL([], [include_expsyms], [1],
5747 [Symbols that must always be exported])
5748_LT_TAGDECL([], [prelink_cmds], [2],
5749 [Commands necessary for linking programs (against libraries) with templates])
059850b5
AK
5750_LT_TAGDECL([], [postlink_cmds], [2],
5751 [Commands necessary for finishing linking programs])
5c706339
AK
5752_LT_TAGDECL([], [file_list_spec], [1],
5753 [Specify filename containing input files])
5754dnl FIXME: Not yet implemented
5755dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5756dnl [Compiler flag to generate thread safe objects])
5757])# _LT_LINKER_SHLIBS
5758
5759
5760# _LT_LANG_C_CONFIG([TAG])
5761# ------------------------
5762# Ensure that the configuration variables for a C compiler are suitably
5763# defined. These variables are subsequently used by _LT_CONFIG to write
5764# the compiler configuration to `libtool'.
5765m4_defun([_LT_LANG_C_CONFIG],
5766[m4_require([_LT_DECL_EGREP])dnl
5767lt_save_CC="$CC"
5768AC_LANG_PUSH(C)
b9668ba4 5769
5c706339
AK
5770# Source file extension for C test sources.
5771ac_ext=c
b9668ba4 5772
5c706339
AK
5773# Object file extension for compiled C test sources.
5774objext=o
5775_LT_TAGVAR(objext, $1)=$objext
b9668ba4 5776
5c706339
AK
5777# Code to be used in simple compile tests
5778lt_simple_compile_test_code="int some_variable = 0;"
b9668ba4 5779
5c706339
AK
5780# Code to be used in simple link tests
5781lt_simple_link_test_code='int main(){return(0);}'
b9668ba4 5782
5c706339
AK
5783_LT_TAG_COMPILER
5784# Save the default compiler, since it gets overwritten when the other
5785# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5786compiler_DEFAULT=$CC
b9668ba4 5787
5c706339
AK
5788# save warnings/boilerplate of simple test code
5789_LT_COMPILER_BOILERPLATE
5790_LT_LINKER_BOILERPLATE
b9668ba4 5791
5c706339
AK
5792if test -n "$compiler"; then
5793 _LT_COMPILER_NO_RTTI($1)
5794 _LT_COMPILER_PIC($1)
5795 _LT_COMPILER_C_O($1)
5796 _LT_COMPILER_FILE_LOCKS($1)
5797 _LT_LINKER_SHLIBS($1)
5798 _LT_SYS_DYNAMIC_LINKER($1)
5799 _LT_LINKER_HARDCODE_LIBPATH($1)
5800 LT_SYS_DLOPEN_SELF
5801 _LT_CMD_STRIPLIB
5802
5803 # Report which library types will actually be built
5804 AC_MSG_CHECKING([if libtool supports shared libraries])
5805 AC_MSG_RESULT([$can_build_shared])
5806
5807 AC_MSG_CHECKING([whether to build shared libraries])
5808 test "$can_build_shared" = "no" && enable_shared=no
5809
5810 # On AIX, shared libraries and static libraries use the same namespace, and
5811 # are all built from PIC.
b9668ba4
AK
5812 case $host_os in
5813 aix3*)
5c706339
AK
5814 test "$enable_shared" = yes && enable_static=no
5815 if test -n "$RANLIB"; then
5816 archive_cmds="$archive_cmds~\$RANLIB \$lib"
5817 postinstall_cmds='$RANLIB $lib'
5818 fi
5819 ;;
b9668ba4 5820
5c706339
AK
5821 aix[[4-9]]*)
5822 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5823 test "$enable_shared" = yes && enable_static=no
5824 fi
b9668ba4
AK
5825 ;;
5826 esac
5c706339 5827 AC_MSG_RESULT([$enable_shared])
b9668ba4 5828
5c706339
AK
5829 AC_MSG_CHECKING([whether to build static libraries])
5830 # Make sure either enable_shared or enable_static is yes.
5831 test "$enable_shared" = yes || enable_static=yes
5832 AC_MSG_RESULT([$enable_static])
b9668ba4 5833
5c706339 5834 _LT_CONFIG($1)
b9668ba4 5835fi
5c706339
AK
5836AC_LANG_POP
5837CC="$lt_save_CC"
5838])# _LT_LANG_C_CONFIG
b9668ba4
AK
5839
5840
5c706339
AK
5841# _LT_LANG_CXX_CONFIG([TAG])
5842# --------------------------
5843# Ensure that the configuration variables for a C++ compiler are suitably
5844# defined. These variables are subsequently used by _LT_CONFIG to write
5845# the compiler configuration to `libtool'.
5846m4_defun([_LT_LANG_CXX_CONFIG],
059850b5 5847[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
5c706339 5848m4_require([_LT_DECL_EGREP])dnl
059850b5
AK
5849m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5850if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5851 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5852 (test "X$CXX" != "Xg++"))) ; then
5853 AC_PROG_CXXCPP
5854else
5855 _lt_caught_CXX_error=yes
5856fi
5c706339
AK
5857
5858AC_LANG_PUSH(C++)
5859_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5860_LT_TAGVAR(allow_undefined_flag, $1)=
5861_LT_TAGVAR(always_export_symbols, $1)=no
5862_LT_TAGVAR(archive_expsym_cmds, $1)=
5863_LT_TAGVAR(compiler_needs_object, $1)=no
5864_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5865_LT_TAGVAR(hardcode_direct, $1)=no
5866_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5867_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5c706339
AK
5868_LT_TAGVAR(hardcode_libdir_separator, $1)=
5869_LT_TAGVAR(hardcode_minus_L, $1)=no
5870_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5871_LT_TAGVAR(hardcode_automatic, $1)=no
5872_LT_TAGVAR(inherit_rpath, $1)=no
5873_LT_TAGVAR(module_cmds, $1)=
5874_LT_TAGVAR(module_expsym_cmds, $1)=
5875_LT_TAGVAR(link_all_deplibs, $1)=unknown
5876_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
059850b5
AK
5877_LT_TAGVAR(reload_flag, $1)=$reload_flag
5878_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
5879_LT_TAGVAR(no_undefined_flag, $1)=
5880_LT_TAGVAR(whole_archive_flag_spec, $1)=
5881_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
b9668ba4 5882
5c706339
AK
5883# Source file extension for C++ test sources.
5884ac_ext=cpp
5885
5886# Object file extension for compiled C++ test sources.
5887objext=o
5888_LT_TAGVAR(objext, $1)=$objext
5889
5890# No sense in running all these tests if we already determined that
5891# the CXX compiler isn't working. Some variables (like enable_shared)
5892# are currently assumed to apply to all compilers on this platform,
5893# and will be corrupted by setting them based on a non-working compiler.
5894if test "$_lt_caught_CXX_error" != yes; then
5895 # Code to be used in simple compile tests
5896 lt_simple_compile_test_code="int some_variable = 0;"
5897
5898 # Code to be used in simple link tests
5899 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5900
5901 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
5902 _LT_TAG_COMPILER
5903
5904 # save warnings/boilerplate of simple test code
5905 _LT_COMPILER_BOILERPLATE
5906 _LT_LINKER_BOILERPLATE
5907
5908 # Allow CC to be a program name with arguments.
5909 lt_save_CC=$CC
059850b5 5910 lt_save_CFLAGS=$CFLAGS
5c706339
AK
5911 lt_save_LD=$LD
5912 lt_save_GCC=$GCC
5913 GCC=$GXX
5914 lt_save_with_gnu_ld=$with_gnu_ld
5915 lt_save_path_LD=$lt_cv_path_LD
5916 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5917 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
b9668ba4 5918 else
5c706339 5919 $as_unset lt_cv_prog_gnu_ld
b9668ba4 5920 fi
5c706339
AK
5921 if test -n "${lt_cv_path_LDCXX+set}"; then
5922 lt_cv_path_LD=$lt_cv_path_LDCXX
b9668ba4 5923 else
5c706339 5924 $as_unset lt_cv_path_LD
b9668ba4 5925 fi
5c706339
AK
5926 test -z "${LDCXX+set}" || LD=$LDCXX
5927 CC=${CXX-"c++"}
059850b5 5928 CFLAGS=$CXXFLAGS
5c706339
AK
5929 compiler=$CC
5930 _LT_TAGVAR(compiler, $1)=$CC
5931 _LT_CC_BASENAME([$compiler])
b9668ba4 5932
5c706339
AK
5933 if test -n "$compiler"; then
5934 # We don't want -fno-exception when compiling C++ code, so set the
5935 # no_builtin_flag separately
5936 if test "$GXX" = yes; then
5937 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5938 else
5939 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5940 fi
b9668ba4 5941
5c706339
AK
5942 if test "$GXX" = yes; then
5943 # Set up default GNU C++ configuration
b9668ba4 5944
5c706339 5945 LT_PATH_LD
b9668ba4 5946
5c706339
AK
5947 # Check if GNU C++ uses GNU ld as the underlying linker, since the
5948 # archiving commands below assume that GNU ld is being used.
5949 if test "$with_gnu_ld" = yes; then
059850b5
AK
5950 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5951 _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
5952
5953 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5954 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
5955
5956 # If archive_cmds runs LD, not CC, wlarc should be empty
5957 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5958 # investigate it a little bit more. (MM)
5959 wlarc='${wl}'
5960
5961 # ancient GNU ld didn't support --whole-archive et. al.
5962 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5963 $GREP 'no-whole-archive' > /dev/null; then
5964 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5965 else
5966 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5967 fi
5968 else
5969 with_gnu_ld=no
5970 wlarc=
5971
5972 # A generic and very simple default shared library creation
5973 # command for GNU C++ for the case where it uses the native
5974 # linker, instead of GNU ld. If possible, this setting should
5975 # overridden to take advantage of the native linker features on
5976 # the platform it is being used on.
5977 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
b9668ba4 5978 fi
5c706339
AK
5979
5980 # Commands to make compiler produce verbose output that lists
5981 # what "hidden" libraries, object files and flags are used when
5982 # linking a shared library.
059850b5 5983 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
5984
5985 else
5986 GXX=no
5987 with_gnu_ld=no
5988 wlarc=
5989 fi
5990
5991 # PORTME: fill in a description of your system's C++ link characteristics
5992 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5993 _LT_TAGVAR(ld_shlibs, $1)=yes
b9668ba4 5994 case $host_os in
5c706339
AK
5995 aix3*)
5996 # FIXME: insert proper C++ library support
5997 _LT_TAGVAR(ld_shlibs, $1)=no
5998 ;;
5999 aix[[4-9]]*)
6000 if test "$host_cpu" = ia64; then
6001 # On IA64, the linker does run time linking by default, so we don't
6002 # have to do anything special.
6003 aix_use_runtimelinking=no
6004 exp_sym_flag='-Bexport'
6005 no_entry_flag=""
6006 else
6007 aix_use_runtimelinking=no
6008
6009 # Test if we are trying to use run time linking or normal
6010 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6011 # need to do runtime linking.
6012 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6013 for ld_flag in $LDFLAGS; do
6014 case $ld_flag in
6015 *-brtl*)
6016 aix_use_runtimelinking=yes
6017 break
6018 ;;
6019 esac
6020 done
6021 ;;
6022 esac
6023
6024 exp_sym_flag='-bexport'
6025 no_entry_flag='-bnoentry'
6026 fi
6027
6028 # When large executables or shared objects are built, AIX ld can
6029 # have problems creating the table of contents. If linking a library
6030 # or program results in "error TOC overflow" add -mminimal-toc to
6031 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6032 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6033
6034 _LT_TAGVAR(archive_cmds, $1)=''
6035 _LT_TAGVAR(hardcode_direct, $1)=yes
6036 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6037 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6038 _LT_TAGVAR(link_all_deplibs, $1)=yes
6039 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
6040
6041 if test "$GXX" = yes; then
6042 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6043 # We only want to do this on AIX 4.2 and lower, the check
6044 # below for broken collect2 doesn't work under 4.3+
6045 collect2name=`${CC} -print-prog-name=collect2`
6046 if test -f "$collect2name" &&
6047 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6048 then
6049 # We have reworked collect2
6050 :
6051 else
6052 # We have old collect2
6053 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6054 # It fails to find uninstalled libraries when the uninstalled
6055 # path is not listed in the libpath. Setting hardcode_minus_L
6056 # to unsupported forces relinking
6057 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6058 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6059 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6060 fi
6061 esac
6062 shared_flag='-shared'
6063 if test "$aix_use_runtimelinking" = yes; then
6064 shared_flag="$shared_flag "'${wl}-G'
6065 fi
6066 else
6067 # not using gcc
6068 if test "$host_cpu" = ia64; then
6069 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6070 # chokes on -Wl,-G. The following line is correct:
6071 shared_flag='-G'
6072 else
6073 if test "$aix_use_runtimelinking" = yes; then
6074 shared_flag='${wl}-G'
6075 else
6076 shared_flag='${wl}-bM:SRE'
6077 fi
6078 fi
6079 fi
6080
47dc80f6 6081 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
5c706339
AK
6082 # It seems that -bexpall does not export symbols beginning with
6083 # underscore (_), so it is better to generate a list of symbols to
6084 # export.
6085 _LT_TAGVAR(always_export_symbols, $1)=yes
6086 if test "$aix_use_runtimelinking" = yes; then
6087 # Warning - without using the other runtime loading flags (-brtl),
6088 # -berok will link without error, but may produce a broken library.
6089 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
6090 # Determine the default libpath from the value encoded in an empty
6091 # executable.
059850b5 6092 _LT_SYS_MODULE_PATH_AIX([$1])
5c706339
AK
6093 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6094
059850b5 6095 _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
6096 else
6097 if test "$host_cpu" = ia64; then
6098 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6099 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6100 _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"
6101 else
6102 # Determine the default libpath from the value encoded in an
6103 # empty executable.
059850b5 6104 _LT_SYS_MODULE_PATH_AIX([$1])
5c706339
AK
6105 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6106 # Warning - without using the other run time loading flags,
6107 # -berok will link without error, but may produce a broken library.
6108 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6109 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
059850b5
AK
6110 if test "$with_gnu_ld" = yes; then
6111 # We only use this code for GNU lds that support --whole-archive.
6112 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6113 else
6114 # Exported symbols can be pulled into shared objects from archives
6115 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6116 fi
5c706339
AK
6117 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6118 # This is similar to how AIX traditionally builds its shared
6119 # libraries.
6120 _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'
6121 fi
6122 fi
6123 ;;
6124
6125 beos*)
6126 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6127 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6128 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6129 # support --undefined. This deserves some investigation. FIXME
6130 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
b9668ba4 6131 else
5c706339 6132 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
6133 fi
6134 ;;
5c706339 6135
b9668ba4 6136 chorus*)
5c706339
AK
6137 case $cc_basename in
6138 *)
6139 # FIXME: insert proper C++ library support
6140 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6141 ;;
5c706339
AK
6142 esac
6143 ;;
6144
47dc80f6 6145 cygwin* | mingw* | pw32* | cegcc*)
059850b5
AK
6146 case $GXX,$cc_basename in
6147 ,cl* | no,cl*)
6148 # Native MSVC
6149 # hardcode_libdir_flag_spec is actually meaningless, as there is
6150 # no search path for DLLs.
6151 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6152 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6153 _LT_TAGVAR(always_export_symbols, $1)=yes
6154 _LT_TAGVAR(file_list_spec, $1)='@'
6155 # Tell ltmain to make .lib files, not .a files.
6156 libext=lib
6157 # Tell ltmain to make .dll files, not .so files.
6158 shrext_cmds=".dll"
6159 # FIXME: Setting linknames here is a bad hack.
6160 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6161 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6162 $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6163 else
6164 $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6165 fi~
6166 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6167 linknames='
6168 # The linker will not automatically build a static lib if we build a DLL.
6169 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6170 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6171 # Don't use ranlib
6172 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6173 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6174 lt_tool_outputfile="@TOOL_OUTPUT@"~
6175 case $lt_outputfile in
6176 *.exe|*.EXE) ;;
6177 *)
6178 lt_outputfile="$lt_outputfile.exe"
6179 lt_tool_outputfile="$lt_tool_outputfile.exe"
6180 ;;
6181 esac~
6182 func_to_tool_file "$lt_outputfile"~
6183 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6184 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6185 $RM "$lt_outputfile.manifest";
6186 fi'
6187 ;;
6188 *)
6189 # g++
6190 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6191 # as there is no search path for DLLs.
6192 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6193 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
6194 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6195 _LT_TAGVAR(always_export_symbols, $1)=no
6196 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6197
6198 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6199 _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'
6200 # If the export-symbols file already is a .def file (1st line
6201 # is EXPORTS), use it as is; otherwise, prepend...
6202 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6203 cp $export_symbols $output_objdir/$soname.def;
6204 else
6205 echo EXPORTS > $output_objdir/$soname.def;
6206 cat $export_symbols >> $output_objdir/$soname.def;
6207 fi~
6208 $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'
6209 else
6210 _LT_TAGVAR(ld_shlibs, $1)=no
6211 fi
6212 ;;
6213 esac
6214 ;;
5c706339
AK
6215 darwin* | rhapsody*)
6216 _LT_DARWIN_LINKER_FEATURES($1)
b9668ba4 6217 ;;
5c706339 6218
b9668ba4 6219 dgux*)
5c706339
AK
6220 case $cc_basename in
6221 ec++*)
6222 # FIXME: insert proper C++ library support
6223 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6224 ;;
5c706339 6225 ghcx*)
b9668ba4 6226 # Green Hills C++ Compiler
5c706339
AK
6227 # FIXME: insert proper C++ library support
6228 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6229 ;;
5c706339
AK
6230 *)
6231 # FIXME: insert proper C++ library support
6232 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6233 ;;
5c706339
AK
6234 esac
6235 ;;
6236
059850b5 6237 freebsd2.*)
5c706339
AK
6238 # C++ shared libraries reported to be fairly broken before
6239 # switch to ELF
6240 _LT_TAGVAR(ld_shlibs, $1)=no
6241 ;;
6242
6243 freebsd-elf*)
6244 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6245 ;;
6246
b9668ba4 6247 freebsd* | dragonfly*)
5c706339
AK
6248 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6249 # conventions
6250 _LT_TAGVAR(ld_shlibs, $1)=yes
6251 ;;
6252
059850b5
AK
6253 haiku*)
6254 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6255 _LT_TAGVAR(link_all_deplibs, $1)=yes
6256 ;;
6257
5c706339
AK
6258 hpux9*)
6259 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6260 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6261 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6262 _LT_TAGVAR(hardcode_direct, $1)=yes
6263 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6264 # but as the default
6265 # location of the library.
6266
6267 case $cc_basename in
6268 CC*)
6269 # FIXME: insert proper C++ library support
6270 _LT_TAGVAR(ld_shlibs, $1)=no
6271 ;;
6272 aCC*)
6273 _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'
6274 # Commands to make compiler produce verbose output that lists
6275 # what "hidden" libraries, object files and flags are used when
6276 # linking a shared library.
6277 #
6278 # There doesn't appear to be a way to prevent this compiler from
6279 # explicitly linking system object files so we need to strip them
6280 # from the output so that they don't get included in the library
6281 # dependencies.
059850b5 6282 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
6283 ;;
6284 *)
6285 if test "$GXX" = yes; then
059850b5 6286 _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
6287 else
6288 # FIXME: insert proper C++ library support
6289 _LT_TAGVAR(ld_shlibs, $1)=no
6290 fi
6291 ;;
6292 esac
6293 ;;
6294
6295 hpux10*|hpux11*)
6296 if test $with_gnu_ld = no; then
6297 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6298 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6299
6300 case $host_cpu in
6301 hppa*64*|ia64*)
6302 ;;
6303 *)
6304 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6305 ;;
6306 esac
6307 fi
6308 case $host_cpu in
6309 hppa*64*|ia64*)
6310 _LT_TAGVAR(hardcode_direct, $1)=no
6311 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6312 ;;
6313 *)
6314 _LT_TAGVAR(hardcode_direct, $1)=yes
6315 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6316 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6317 # but as the default
6318 # location of the library.
6319 ;;
6320 esac
6321
6322 case $cc_basename in
6323 CC*)
6324 # FIXME: insert proper C++ library support
6325 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6326 ;;
5c706339 6327 aCC*)
b9668ba4 6328 case $host_cpu in
5c706339
AK
6329 hppa*64*)
6330 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6331 ;;
6332 ia64*)
6333 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6334 ;;
6335 *)
6336 _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'
6337 ;;
b9668ba4 6338 esac
5c706339
AK
6339 # Commands to make compiler produce verbose output that lists
6340 # what "hidden" libraries, object files and flags are used when
6341 # linking a shared library.
6342 #
6343 # There doesn't appear to be a way to prevent this compiler from
6344 # explicitly linking system object files so we need to strip them
6345 # from the output so that they don't get included in the library
6346 # dependencies.
059850b5 6347 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 6348 ;;
5c706339
AK
6349 *)
6350 if test "$GXX" = yes; then
6351 if test $with_gnu_ld = no; then
6352 case $host_cpu in
6353 hppa*64*)
6354 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6355 ;;
6356 ia64*)
059850b5 6357 _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
6358 ;;
6359 *)
059850b5 6360 _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
6361 ;;
6362 esac
6363 fi
6364 else
6365 # FIXME: insert proper C++ library support
6366 _LT_TAGVAR(ld_shlibs, $1)=no
6367 fi
b9668ba4 6368 ;;
5c706339
AK
6369 esac
6370 ;;
6371
6372 interix[[3-9]]*)
6373 _LT_TAGVAR(hardcode_direct, $1)=no
6374 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6375 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6376 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6377 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6378 # Instead, shared libraries are loaded at an image base (0x10000000 by
6379 # default) and relocated if they conflict, which is a slow very memory
6380 # consuming and fragmenting process. To avoid this, we pick a random,
6381 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6382 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6383 _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'
6384 _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 6385 ;;
5c706339
AK
6386 irix5* | irix6*)
6387 case $cc_basename in
6388 CC*)
6389 # SGI C++
059850b5 6390 _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
6391
6392 # Archives containing C++ object files must be created using
6393 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6394 # necessary to make sure instantiated templates are included
6395 # in the archive.
6396 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
b9668ba4 6397 ;;
5c706339
AK
6398 *)
6399 if test "$GXX" = yes; then
6400 if test "$with_gnu_ld" = no; then
059850b5 6401 _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 6402 else
059850b5 6403 _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
6404 fi
6405 fi
6406 _LT_TAGVAR(link_all_deplibs, $1)=yes
b9668ba4 6407 ;;
5c706339
AK
6408 esac
6409 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6410 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6411 _LT_TAGVAR(inherit_rpath, $1)=yes
6412 ;;
6413
0044e680 6414 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
5c706339
AK
6415 case $cc_basename in
6416 KCC*)
6417 # Kuck and Associates, Inc. (KAI) C++ Compiler
6418
6419 # KCC will only create a shared library if the output file
6420 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6421 # to its proper name (with version) after linking.
6422 _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'
6423 _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'
6424 # Commands to make compiler produce verbose output that lists
6425 # what "hidden" libraries, object files and flags are used when
6426 # linking a shared library.
6427 #
6428 # There doesn't appear to be a way to prevent this compiler from
6429 # explicitly linking system object files so we need to strip them
6430 # from the output so that they don't get included in the library
6431 # dependencies.
059850b5 6432 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
6433
6434 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6435 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6436
6437 # Archives containing C++ object files must be created using
6438 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6439 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
b9668ba4 6440 ;;
5c706339 6441 icpc* | ecpc* )
b9668ba4 6442 # Intel C++
5c706339
AK
6443 with_gnu_ld=yes
6444 # version 8.0 and above of icpc choke on multiply defined symbols
6445 # if we add $predep_objects and $postdep_objects, however 7.1 and
6446 # earlier do not add the objects themselves.
6447 case `$CC -V 2>&1` in
6448 *"Version 7."*)
6449 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6450 _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'
6451 ;;
6452 *) # Version 8.0 or newer
6453 tmp_idyn=
6454 case $host_cpu in
6455 ia64*) tmp_idyn=' -i_dynamic';;
6456 esac
6457 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6458 _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'
6459 ;;
6460 esac
6461 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6462 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6463 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6464 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
b9668ba4 6465 ;;
5c706339
AK
6466 pgCC* | pgcpp*)
6467 # Portland Group C++ compiler
6468 case `$CC -V` in
059850b5 6469 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
5c706339
AK
6470 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6471 rm -rf $tpldir~
6472 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
059850b5 6473 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
5c706339
AK
6474 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6475 rm -rf $tpldir~
6476 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
059850b5 6477 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
5c706339
AK
6478 $RANLIB $oldlib'
6479 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6480 rm -rf $tpldir~
6481 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
059850b5 6482 $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
6483 _LT_TAGVAR(archive_expsym_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 ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
5c706339 6487 ;;
059850b5 6488 *) # Version 6 and above use weak symbols
5c706339
AK
6489 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6490 _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'
6491 ;;
6492 esac
6493
6494 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6495 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
059850b5 6496 _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 6497 ;;
b9668ba4
AK
6498 cxx*)
6499 # Compaq C++
5c706339
AK
6500 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6501 _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'
6502
6503 runpath_var=LD_RUN_PATH
6504 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6505 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6506
6507 # Commands to make compiler produce verbose output that lists
6508 # what "hidden" libraries, object files and flags are used when
6509 # linking a shared library.
6510 #
6511 # There doesn't appear to be a way to prevent this compiler from
6512 # explicitly linking system object files so we need to strip them
6513 # from the output so that they don't get included in the library
6514 # dependencies.
059850b5 6515 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 6516 ;;
059850b5 6517 xl* | mpixl* | bgxl*)
5c706339
AK
6518 # IBM XL 8.0 on PPC, with GNU ld
6519 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6520 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6521 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6522 if test "x$supports_anon_versioning" = xyes; then
6523 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6524 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6525 echo "local: *; };" >> $output_objdir/$libname.ver~
6526 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6527 fi
b9668ba4
AK
6528 ;;
6529 *)
5c706339
AK
6530 case `$CC -V 2>&1 | sed 5q` in
6531 *Sun\ C*)
6532 # Sun C++ 5.9
6533 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6534 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6535 _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'
6536 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
059850b5 6537 _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
6538 _LT_TAGVAR(compiler_needs_object, $1)=yes
6539
6540 # Not sure whether something based on
6541 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6542 # would be better.
059850b5 6543 output_verbose_link_cmd='func_echo_all'
5c706339
AK
6544
6545 # Archives containing C++ object files must be created using
6546 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6547 # necessary to make sure instantiated templates are included
6548 # in the archive.
6549 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6550 ;;
6551 esac
b9668ba4
AK
6552 ;;
6553 esac
6554 ;;
5c706339 6555
b9668ba4 6556 lynxos*)
5c706339
AK
6557 # FIXME: insert proper C++ library support
6558 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6559 ;;
5c706339 6560
b9668ba4 6561 m88k*)
5c706339
AK
6562 # FIXME: insert proper C++ library support
6563 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6564 ;;
5c706339 6565
b9668ba4 6566 mvs*)
5c706339
AK
6567 case $cc_basename in
6568 cxx*)
6569 # FIXME: insert proper C++ library support
6570 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
6571 ;;
6572 *)
5c706339
AK
6573 # FIXME: insert proper C++ library support
6574 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4
AK
6575 ;;
6576 esac
6577 ;;
5c706339
AK
6578
6579 netbsd*)
6580 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6581 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6582 wlarc=
6583 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6584 _LT_TAGVAR(hardcode_direct, $1)=yes
6585 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6586 fi
6587 # Workaround some broken pre-1.5 toolchains
6588 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6589 ;;
6590
6591 *nto* | *qnx*)
6592 _LT_TAGVAR(ld_shlibs, $1)=yes
6593 ;;
6594
6595 openbsd2*)
6596 # C++ shared libraries are fairly broken
6597 _LT_TAGVAR(ld_shlibs, $1)=no
6598 ;;
6599
6600 openbsd*)
6601 if test -f /usr/libexec/ld.so; then
6602 _LT_TAGVAR(hardcode_direct, $1)=yes
6603 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6604 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6605 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6606 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6607 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6608 _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'
6609 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6610 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6611 fi
059850b5 6612 output_verbose_link_cmd=func_echo_all
5c706339
AK
6613 else
6614 _LT_TAGVAR(ld_shlibs, $1)=no
6615 fi
b9668ba4 6616 ;;
5c706339 6617
b9668ba4 6618 osf3* | osf4* | osf5*)
5c706339
AK
6619 case $cc_basename in
6620 KCC*)
6621 # Kuck and Associates, Inc. (KAI) C++ Compiler
6622
6623 # KCC will only create a shared library if the output file
6624 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6625 # to its proper name (with version) after linking.
6626 _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'
6627
6628 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6629 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6630
6631 # Archives containing C++ object files must be created using
6632 # the KAI C++ compiler.
6633 case $host in
6634 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6635 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6636 esac
b9668ba4 6637 ;;
5c706339 6638 RCC*)
b9668ba4 6639 # Rational C++ 2.4.1
5c706339
AK
6640 # FIXME: insert proper C++ library support
6641 _LT_TAGVAR(ld_shlibs, $1)=no
6642 ;;
6643 cxx*)
6644 case $host in
6645 osf3*)
6646 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
059850b5 6647 _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
6648 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6649 ;;
6650 *)
6651 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
059850b5 6652 _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
6653 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6654 echo "-hidden">> $lib.exp~
059850b5 6655 $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
6656 $RM $lib.exp'
6657 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6658 ;;
6659 esac
6660
6661 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6662
6663 # Commands to make compiler produce verbose output that lists
6664 # what "hidden" libraries, object files and flags are used when
6665 # linking a shared library.
6666 #
6667 # There doesn't appear to be a way to prevent this compiler from
6668 # explicitly linking system object files so we need to strip them
6669 # from the output so that they don't get included in the library
6670 # dependencies.
059850b5 6671 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
6672 ;;
6673 *)
6674 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6675 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6676 case $host in
6677 osf3*)
059850b5 6678 _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
6679 ;;
6680 *)
059850b5 6681 _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
6682 ;;
6683 esac
6684
6685 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6686 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6687
6688 # Commands to make compiler produce verbose output that lists
6689 # what "hidden" libraries, object files and flags are used when
6690 # linking a shared library.
059850b5 6691 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
6692
6693 else
6694 # FIXME: insert proper C++ library support
6695 _LT_TAGVAR(ld_shlibs, $1)=no
6696 fi
6697 ;;
6698 esac
6699 ;;
6700
6701 psos*)
6702 # FIXME: insert proper C++ library support
6703 _LT_TAGVAR(ld_shlibs, $1)=no
6704 ;;
6705
6706 sunos4*)
6707 case $cc_basename in
6708 CC*)
6709 # Sun C++ 4.x
6710 # FIXME: insert proper C++ library support
6711 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6712 ;;
5c706339
AK
6713 lcc*)
6714 # Lucid
6715 # FIXME: insert proper C++ library support
6716 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6717 ;;
5c706339
AK
6718 *)
6719 # FIXME: insert proper C++ library support
6720 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6721 ;;
5c706339
AK
6722 esac
6723 ;;
6724
b9668ba4 6725 solaris*)
5c706339 6726 case $cc_basename in
059850b5 6727 CC* | sunCC*)
b9668ba4 6728 # Sun C++ 4.2, 5.x and Centerline C++
5c706339
AK
6729 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6730 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6731 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6732 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6733 $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'
6734
6735 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6736 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6737 case $host_os in
6738 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6739 *)
6740 # The compiler driver will combine and reorder linker options,
6741 # but understands `-z linker_flag'.
6742 # Supported since Solaris 2.6 (maybe 2.5.1?)
6743 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6744 ;;
6745 esac
6746 _LT_TAGVAR(link_all_deplibs, $1)=yes
6747
059850b5 6748 output_verbose_link_cmd='func_echo_all'
5c706339
AK
6749
6750 # Archives containing C++ object files must be created using
6751 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6752 # necessary to make sure instantiated templates are included
6753 # in the archive.
6754 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
b9668ba4 6755 ;;
5c706339 6756 gcx*)
b9668ba4 6757 # Green Hills C++ Compiler
5c706339
AK
6758 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6759
6760 # The C++ compiler must be used to create the archive.
6761 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
b9668ba4 6762 ;;
5c706339
AK
6763 *)
6764 # GNU C++ compiler with Solaris linker
6765 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6766 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6767 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
059850b5 6768 _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 6769 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
059850b5 6770 $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
6771
6772 # Commands to make compiler produce verbose output that lists
6773 # what "hidden" libraries, object files and flags are used when
6774 # linking a shared library.
059850b5 6775 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
6776 else
6777 # g++ 2.7 appears to require `-G' NOT `-shared' on this
6778 # platform.
6779 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6780 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6781 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6782
6783 # Commands to make compiler produce verbose output that lists
6784 # what "hidden" libraries, object files and flags are used when
6785 # linking a shared library.
059850b5 6786 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
5c706339
AK
6787 fi
6788
6789 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6790 case $host_os in
6791 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6792 *)
6793 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6794 ;;
6795 esac
6796 fi
b9668ba4 6797 ;;
5c706339
AK
6798 esac
6799 ;;
6800
6801 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6802 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6803 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6804 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6805 runpath_var='LD_RUN_PATH'
6806
6807 case $cc_basename in
6808 CC*)
6809 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6810 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6811 ;;
6812 *)
6813 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6814 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6815 ;;
6816 esac
6817 ;;
6818
6819 sysv5* | sco3.2v5* | sco5v6*)
6820 # Note: We can NOT use -z defs as we might desire, because we do not
6821 # link with -lc, and that would cause any symbols used from libc to
6822 # always be unresolved, which means just about no library would
6823 # ever link correctly. If we're not using GNU ld we use -z text
6824 # though, which does catch some bad symbols but isn't as heavy-handed
6825 # as -z defs.
6826 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6827 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6828 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6829 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6830 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6831 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6832 _LT_TAGVAR(link_all_deplibs, $1)=yes
6833 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6834 runpath_var='LD_RUN_PATH'
6835
b9668ba4 6836 case $cc_basename in
5c706339
AK
6837 CC*)
6838 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6839 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
059850b5
AK
6840 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6841 '"$_LT_TAGVAR(old_archive_cmds, $1)"
6842 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6843 '"$_LT_TAGVAR(reload_cmds, $1)"
b9668ba4
AK
6844 ;;
6845 *)
5c706339
AK
6846 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6847 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
b9668ba4
AK
6848 ;;
6849 esac
5c706339
AK
6850 ;;
6851
b9668ba4 6852 tandem*)
5c706339
AK
6853 case $cc_basename in
6854 NCC*)
b9668ba4 6855 # NonStop-UX NCC 3.20
5c706339
AK
6856 # FIXME: insert proper C++ library support
6857 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6858 ;;
5c706339
AK
6859 *)
6860 # FIXME: insert proper C++ library support
6861 _LT_TAGVAR(ld_shlibs, $1)=no
b9668ba4 6862 ;;
5c706339
AK
6863 esac
6864 ;;
6865
b9668ba4 6866 vxworks*)
5c706339
AK
6867 # FIXME: insert proper C++ library support
6868 _LT_TAGVAR(ld_shlibs, $1)=no
6869 ;;
6870
b9668ba4 6871 *)
5c706339
AK
6872 # FIXME: insert proper C++ library support
6873 _LT_TAGVAR(ld_shlibs, $1)=no
6874 ;;
b9668ba4 6875 esac
5c706339
AK
6876
6877 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6878 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6879
6880 _LT_TAGVAR(GCC, $1)="$GXX"
6881 _LT_TAGVAR(LD, $1)="$LD"
6882
6883 ## CAVEAT EMPTOR:
6884 ## There is no encapsulation within the following macros, do not change
6885 ## the running order or otherwise move them around unless you know exactly
6886 ## what you are doing...
6887 _LT_SYS_HIDDEN_LIBDEPS($1)
6888 _LT_COMPILER_PIC($1)
6889 _LT_COMPILER_C_O($1)
6890 _LT_COMPILER_FILE_LOCKS($1)
6891 _LT_LINKER_SHLIBS($1)
6892 _LT_SYS_DYNAMIC_LINKER($1)
6893 _LT_LINKER_HARDCODE_LIBPATH($1)
6894
6895 _LT_CONFIG($1)
6896 fi # test -n "$compiler"
6897
6898 CC=$lt_save_CC
059850b5 6899 CFLAGS=$lt_save_CFLAGS
5c706339
AK
6900 LDCXX=$LD
6901 LD=$lt_save_LD
6902 GCC=$lt_save_GCC
6903 with_gnu_ld=$lt_save_with_gnu_ld
6904 lt_cv_path_LDCXX=$lt_cv_path_LD
6905 lt_cv_path_LD=$lt_save_path_LD
6906 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6907 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6908fi # test "$_lt_caught_CXX_error" != yes
6909
6910AC_LANG_POP
6911])# _LT_LANG_CXX_CONFIG
6912
6913
059850b5
AK
6914# _LT_FUNC_STRIPNAME_CNF
6915# ----------------------
6916# func_stripname_cnf prefix suffix name
6917# strip PREFIX and SUFFIX off of NAME.
6918# PREFIX and SUFFIX must not contain globbing or regex special
6919# characters, hashes, percent signs, but SUFFIX may contain a leading
6920# dot (in which case that matches only a dot).
6921#
6922# This function is identical to the (non-XSI) version of func_stripname,
6923# except this one can be used by m4 code that may be executed by configure,
6924# rather than the libtool script.
6925m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6926AC_REQUIRE([_LT_DECL_SED])
6927AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6928func_stripname_cnf ()
6929{
6930 case ${2} in
6931 .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6932 *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6933 esac
6934} # func_stripname_cnf
6935])# _LT_FUNC_STRIPNAME_CNF
6936
5c706339
AK
6937# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6938# ---------------------------------
6939# Figure out "hidden" library dependencies from verbose
6940# compiler output when linking a shared library.
6941# Parse the compiler output and extract the necessary
6942# objects, libraries and library flags.
6943m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6944[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
059850b5 6945AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
5c706339
AK
6946# Dependencies to place before and after the object being linked:
6947_LT_TAGVAR(predep_objects, $1)=
6948_LT_TAGVAR(postdep_objects, $1)=
6949_LT_TAGVAR(predeps, $1)=
6950_LT_TAGVAR(postdeps, $1)=
6951_LT_TAGVAR(compiler_lib_search_path, $1)=
6952
6953dnl we can't use the lt_simple_compile_test_code here,
6954dnl because it contains code intended for an executable,
6955dnl not a library. It's possible we should let each
6956dnl tag define a new lt_????_link_test_code variable,
6957dnl but it's only used here...
6958m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6959int a;
6960void foo (void) { a = 0; }
6961_LT_EOF
6962], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6963class Foo
6964{
6965public:
6966 Foo (void) { a = 0; }
6967private:
6968 int a;
6969};
6970_LT_EOF
6971], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6972 subroutine foo
6973 implicit none
6974 integer*4 a
6975 a=0
6976 return
6977 end
6978_LT_EOF
6979], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6980 subroutine foo
6981 implicit none
6982 integer a
6983 a=0
6984 return
6985 end
6986_LT_EOF
6987], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6988public class foo {
6989 private int a;
6990 public void bar (void) {
6991 a = 0;
6992 }
6993};
6994_LT_EOF
059850b5
AK
6995], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
6996package foo
6997func foo() {
6998}
6999_LT_EOF
5c706339 7000])
059850b5
AK
7001
7002_lt_libdeps_save_CFLAGS=$CFLAGS
7003case "$CC $CFLAGS " in #(
7004*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7005*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7006*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7007esac
7008
5c706339
AK
7009dnl Parse the compiler output and extract the necessary
7010dnl objects, libraries and library flags.
7011if AC_TRY_EVAL(ac_compile); then
7012 # Parse the compiler output and extract the necessary
7013 # objects, libraries and library flags.
7014
7015 # Sentinel used to keep track of whether or not we are before
7016 # the conftest object file.
7017 pre_test_object_deps_done=no
7018
7019 for p in `eval "$output_verbose_link_cmd"`; do
059850b5 7020 case ${prev}${p} in
5c706339
AK
7021
7022 -L* | -R* | -l*)
7023 # Some compilers place space between "-{L,R}" and the path.
7024 # Remove the space.
7025 if test $p = "-L" ||
7026 test $p = "-R"; then
7027 prev=$p
7028 continue
5c706339
AK
7029 fi
7030
059850b5
AK
7031 # Expand the sysroot to ease extracting the directories later.
7032 if test -z "$prev"; then
7033 case $p in
7034 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7035 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7036 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7037 esac
7038 fi
7039 case $p in
7040 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7041 esac
5c706339 7042 if test "$pre_test_object_deps_done" = no; then
059850b5
AK
7043 case ${prev} in
7044 -L | -R)
5c706339
AK
7045 # Internal compiler library paths should come after those
7046 # provided the user. The postdeps already come after the
7047 # user supplied libs so there is no need to process them.
7048 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7049 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
7050 else
7051 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
7052 fi
7053 ;;
7054 # The "-l" case would never come before the object being
7055 # linked, so don't bother handling this case.
7056 esac
7057 else
7058 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7059 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
7060 else
7061 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
7062 fi
7063 fi
059850b5 7064 prev=
5c706339
AK
7065 ;;
7066
059850b5 7067 *.lto.$objext) ;; # Ignore GCC LTO objects
5c706339
AK
7068 *.$objext)
7069 # This assumes that the test object file only shows up
7070 # once in the compiler output.
7071 if test "$p" = "conftest.$objext"; then
7072 pre_test_object_deps_done=yes
7073 continue
7074 fi
7075
7076 if test "$pre_test_object_deps_done" = no; then
7077 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7078 _LT_TAGVAR(predep_objects, $1)="$p"
7079 else
7080 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7081 fi
7082 else
7083 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7084 _LT_TAGVAR(postdep_objects, $1)="$p"
7085 else
7086 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7087 fi
7088 fi
7089 ;;
7090
7091 *) ;; # Ignore the rest.
7092
7093 esac
7094 done
7095
7096 # Clean up.
7097 rm -f a.out a.exe
7098else
7099 echo "libtool.m4: error: problem compiling $1 test program"
7100fi
7101
7102$RM -f confest.$objext
059850b5 7103CFLAGS=$_lt_libdeps_save_CFLAGS
5c706339
AK
7104
7105# PORTME: override above test on systems where it is broken
7106m4_if([$1], [CXX],
7107[case $host_os in
7108interix[[3-9]]*)
7109 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7110 # hack all around it, let's just trust "g++" to DTRT.
7111 _LT_TAGVAR(predep_objects,$1)=
7112 _LT_TAGVAR(postdep_objects,$1)=
7113 _LT_TAGVAR(postdeps,$1)=
7114 ;;
7115
7116linux*)
7117 case `$CC -V 2>&1 | sed 5q` in
7118 *Sun\ C*)
7119 # Sun C++ 5.9
7120
7121 # The more standards-conforming stlport4 library is
7122 # incompatible with the Cstd library. Avoid specifying
7123 # it if it's in CXXFLAGS. Ignore libCrun as
7124 # -library=stlport4 depends on it.
7125 case " $CXX $CXXFLAGS " in
7126 *" -library=stlport4 "*)
7127 solaris_use_stlport4=yes
7128 ;;
7129 esac
7130
7131 if test "$solaris_use_stlport4" != yes; then
7132 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7133 fi
7134 ;;
7135 esac
7136 ;;
7137
7138solaris*)
7139 case $cc_basename in
059850b5 7140 CC* | sunCC*)
5c706339
AK
7141 # The more standards-conforming stlport4 library is
7142 # incompatible with the Cstd library. Avoid specifying
7143 # it if it's in CXXFLAGS. Ignore libCrun as
7144 # -library=stlport4 depends on it.
7145 case " $CXX $CXXFLAGS " in
7146 *" -library=stlport4 "*)
7147 solaris_use_stlport4=yes
7148 ;;
7149 esac
7150
7151 # Adding this requires a known-good setup of shared libraries for
7152 # Sun compiler versions before 5.6, else PIC objects from an old
7153 # archive will be linked into the output, leading to subtle bugs.
7154 if test "$solaris_use_stlport4" != yes; then
7155 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7156 fi
7157 ;;
7158 esac
7159 ;;
7160esac
7161])
7162
7163case " $_LT_TAGVAR(postdeps, $1) " in
7164*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7165esac
7166 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7167if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7168 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
7169fi
7170_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7171 [The directories searched by this compiler when creating a shared library])
7172_LT_TAGDECL([], [predep_objects], [1],
7173 [Dependencies to place before and after the objects being linked to
7174 create a shared library])
7175_LT_TAGDECL([], [postdep_objects], [1])
7176_LT_TAGDECL([], [predeps], [1])
7177_LT_TAGDECL([], [postdeps], [1])
7178_LT_TAGDECL([], [compiler_lib_search_path], [1],
7179 [The library search path used internally by the compiler when linking
7180 a shared library])
7181])# _LT_SYS_HIDDEN_LIBDEPS
7182
7183
5c706339
AK
7184# _LT_LANG_F77_CONFIG([TAG])
7185# --------------------------
7186# Ensure that the configuration variables for a Fortran 77 compiler are
7187# suitably defined. These variables are subsequently used by _LT_CONFIG
7188# to write the compiler configuration to `libtool'.
7189m4_defun([_LT_LANG_F77_CONFIG],
059850b5
AK
7190[AC_LANG_PUSH(Fortran 77)
7191if test -z "$F77" || test "X$F77" = "Xno"; then
7192 _lt_disable_F77=yes
7193fi
5c706339
AK
7194
7195_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7196_LT_TAGVAR(allow_undefined_flag, $1)=
7197_LT_TAGVAR(always_export_symbols, $1)=no
7198_LT_TAGVAR(archive_expsym_cmds, $1)=
7199_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7200_LT_TAGVAR(hardcode_direct, $1)=no
7201_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7202_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5c706339
AK
7203_LT_TAGVAR(hardcode_libdir_separator, $1)=
7204_LT_TAGVAR(hardcode_minus_L, $1)=no
7205_LT_TAGVAR(hardcode_automatic, $1)=no
7206_LT_TAGVAR(inherit_rpath, $1)=no
7207_LT_TAGVAR(module_cmds, $1)=
7208_LT_TAGVAR(module_expsym_cmds, $1)=
7209_LT_TAGVAR(link_all_deplibs, $1)=unknown
7210_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
059850b5
AK
7211_LT_TAGVAR(reload_flag, $1)=$reload_flag
7212_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
7213_LT_TAGVAR(no_undefined_flag, $1)=
7214_LT_TAGVAR(whole_archive_flag_spec, $1)=
7215_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7216
7217# Source file extension for f77 test sources.
7218ac_ext=f
7219
7220# Object file extension for compiled f77 test sources.
7221objext=o
7222_LT_TAGVAR(objext, $1)=$objext
7223
7224# No sense in running all these tests if we already determined that
7225# the F77 compiler isn't working. Some variables (like enable_shared)
7226# are currently assumed to apply to all compilers on this platform,
7227# and will be corrupted by setting them based on a non-working compiler.
7228if test "$_lt_disable_F77" != yes; then
7229 # Code to be used in simple compile tests
7230 lt_simple_compile_test_code="\
7231 subroutine t
7232 return
7233 end
7234"
7235
7236 # Code to be used in simple link tests
7237 lt_simple_link_test_code="\
7238 program t
7239 end
7240"
7241
7242 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7243 _LT_TAG_COMPILER
7244
7245 # save warnings/boilerplate of simple test code
7246 _LT_COMPILER_BOILERPLATE
7247 _LT_LINKER_BOILERPLATE
7248
7249 # Allow CC to be a program name with arguments.
7250 lt_save_CC="$CC"
7251 lt_save_GCC=$GCC
059850b5 7252 lt_save_CFLAGS=$CFLAGS
5c706339 7253 CC=${F77-"f77"}
059850b5 7254 CFLAGS=$FFLAGS
5c706339
AK
7255 compiler=$CC
7256 _LT_TAGVAR(compiler, $1)=$CC
7257 _LT_CC_BASENAME([$compiler])
7258 GCC=$G77
7259 if test -n "$compiler"; then
7260 AC_MSG_CHECKING([if libtool supports shared libraries])
7261 AC_MSG_RESULT([$can_build_shared])
7262
7263 AC_MSG_CHECKING([whether to build shared libraries])
7264 test "$can_build_shared" = "no" && enable_shared=no
7265
7266 # On AIX, shared libraries and static libraries use the same namespace, and
7267 # are all built from PIC.
7268 case $host_os in
7269 aix3*)
7270 test "$enable_shared" = yes && enable_static=no
7271 if test -n "$RANLIB"; then
7272 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7273 postinstall_cmds='$RANLIB $lib'
7274 fi
7275 ;;
7276 aix[[4-9]]*)
7277 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7278 test "$enable_shared" = yes && enable_static=no
7279 fi
7280 ;;
7281 esac
7282 AC_MSG_RESULT([$enable_shared])
7283
7284 AC_MSG_CHECKING([whether to build static libraries])
7285 # Make sure either enable_shared or enable_static is yes.
7286 test "$enable_shared" = yes || enable_static=yes
7287 AC_MSG_RESULT([$enable_static])
7288
7289 _LT_TAGVAR(GCC, $1)="$G77"
7290 _LT_TAGVAR(LD, $1)="$LD"
7291
7292 ## CAVEAT EMPTOR:
7293 ## There is no encapsulation within the following macros, do not change
7294 ## the running order or otherwise move them around unless you know exactly
7295 ## what you are doing...
7296 _LT_COMPILER_PIC($1)
7297 _LT_COMPILER_C_O($1)
7298 _LT_COMPILER_FILE_LOCKS($1)
7299 _LT_LINKER_SHLIBS($1)
7300 _LT_SYS_DYNAMIC_LINKER($1)
7301 _LT_LINKER_HARDCODE_LIBPATH($1)
7302
7303 _LT_CONFIG($1)
7304 fi # test -n "$compiler"
7305
7306 GCC=$lt_save_GCC
7307 CC="$lt_save_CC"
059850b5 7308 CFLAGS="$lt_save_CFLAGS"
5c706339
AK
7309fi # test "$_lt_disable_F77" != yes
7310
7311AC_LANG_POP
7312])# _LT_LANG_F77_CONFIG
7313
7314
5c706339
AK
7315# _LT_LANG_FC_CONFIG([TAG])
7316# -------------------------
7317# Ensure that the configuration variables for a Fortran compiler are
7318# suitably defined. These variables are subsequently used by _LT_CONFIG
7319# to write the compiler configuration to `libtool'.
7320m4_defun([_LT_LANG_FC_CONFIG],
059850b5
AK
7321[AC_LANG_PUSH(Fortran)
7322
7323if test -z "$FC" || test "X$FC" = "Xno"; then
7324 _lt_disable_FC=yes
7325fi
5c706339
AK
7326
7327_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7328_LT_TAGVAR(allow_undefined_flag, $1)=
7329_LT_TAGVAR(always_export_symbols, $1)=no
7330_LT_TAGVAR(archive_expsym_cmds, $1)=
7331_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7332_LT_TAGVAR(hardcode_direct, $1)=no
7333_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7334_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5c706339
AK
7335_LT_TAGVAR(hardcode_libdir_separator, $1)=
7336_LT_TAGVAR(hardcode_minus_L, $1)=no
7337_LT_TAGVAR(hardcode_automatic, $1)=no
7338_LT_TAGVAR(inherit_rpath, $1)=no
7339_LT_TAGVAR(module_cmds, $1)=
7340_LT_TAGVAR(module_expsym_cmds, $1)=
7341_LT_TAGVAR(link_all_deplibs, $1)=unknown
7342_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
059850b5
AK
7343_LT_TAGVAR(reload_flag, $1)=$reload_flag
7344_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
7345_LT_TAGVAR(no_undefined_flag, $1)=
7346_LT_TAGVAR(whole_archive_flag_spec, $1)=
7347_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7348
7349# Source file extension for fc test sources.
7350ac_ext=${ac_fc_srcext-f}
7351
7352# Object file extension for compiled fc test sources.
7353objext=o
7354_LT_TAGVAR(objext, $1)=$objext
7355
7356# No sense in running all these tests if we already determined that
7357# the FC compiler isn't working. Some variables (like enable_shared)
7358# are currently assumed to apply to all compilers on this platform,
7359# and will be corrupted by setting them based on a non-working compiler.
7360if test "$_lt_disable_FC" != yes; then
7361 # Code to be used in simple compile tests
7362 lt_simple_compile_test_code="\
7363 subroutine t
7364 return
7365 end
7366"
b9668ba4 7367
5c706339
AK
7368 # Code to be used in simple link tests
7369 lt_simple_link_test_code="\
7370 program t
7371 end
7372"
b9668ba4 7373
5c706339
AK
7374 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7375 _LT_TAG_COMPILER
b9668ba4 7376
5c706339
AK
7377 # save warnings/boilerplate of simple test code
7378 _LT_COMPILER_BOILERPLATE
7379 _LT_LINKER_BOILERPLATE
b9668ba4 7380
5c706339
AK
7381 # Allow CC to be a program name with arguments.
7382 lt_save_CC="$CC"
7383 lt_save_GCC=$GCC
059850b5 7384 lt_save_CFLAGS=$CFLAGS
5c706339 7385 CC=${FC-"f95"}
059850b5 7386 CFLAGS=$FCFLAGS
5c706339
AK
7387 compiler=$CC
7388 GCC=$ac_cv_fc_compiler_gnu
b9668ba4 7389
5c706339
AK
7390 _LT_TAGVAR(compiler, $1)=$CC
7391 _LT_CC_BASENAME([$compiler])
b9668ba4 7392
5c706339
AK
7393 if test -n "$compiler"; then
7394 AC_MSG_CHECKING([if libtool supports shared libraries])
7395 AC_MSG_RESULT([$can_build_shared])
b9668ba4 7396
5c706339
AK
7397 AC_MSG_CHECKING([whether to build shared libraries])
7398 test "$can_build_shared" = "no" && enable_shared=no
7399
7400 # On AIX, shared libraries and static libraries use the same namespace, and
7401 # are all built from PIC.
b9668ba4 7402 case $host_os in
5c706339
AK
7403 aix3*)
7404 test "$enable_shared" = yes && enable_static=no
7405 if test -n "$RANLIB"; then
7406 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7407 postinstall_cmds='$RANLIB $lib'
7408 fi
7409 ;;
7410 aix[[4-9]]*)
7411 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7412 test "$enable_shared" = yes && enable_static=no
7413 fi
7414 ;;
7415 esac
7416 AC_MSG_RESULT([$enable_shared])
7417
7418 AC_MSG_CHECKING([whether to build static libraries])
7419 # Make sure either enable_shared or enable_static is yes.
7420 test "$enable_shared" = yes || enable_static=yes
7421 AC_MSG_RESULT([$enable_static])
7422
7423 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
7424 _LT_TAGVAR(LD, $1)="$LD"
7425
7426 ## CAVEAT EMPTOR:
7427 ## There is no encapsulation within the following macros, do not change
7428 ## the running order or otherwise move them around unless you know exactly
7429 ## what you are doing...
7430 _LT_SYS_HIDDEN_LIBDEPS($1)
7431 _LT_COMPILER_PIC($1)
7432 _LT_COMPILER_C_O($1)
7433 _LT_COMPILER_FILE_LOCKS($1)
7434 _LT_LINKER_SHLIBS($1)
7435 _LT_SYS_DYNAMIC_LINKER($1)
7436 _LT_LINKER_HARDCODE_LIBPATH($1)
7437
7438 _LT_CONFIG($1)
7439 fi # test -n "$compiler"
7440
7441 GCC=$lt_save_GCC
059850b5
AK
7442 CC=$lt_save_CC
7443 CFLAGS=$lt_save_CFLAGS
5c706339 7444fi # test "$_lt_disable_FC" != yes
b9668ba4 7445
5c706339
AK
7446AC_LANG_POP
7447])# _LT_LANG_FC_CONFIG
b9668ba4 7448
b9668ba4 7449
5c706339
AK
7450# _LT_LANG_GCJ_CONFIG([TAG])
7451# --------------------------
7452# Ensure that the configuration variables for the GNU Java Compiler compiler
7453# are suitably defined. These variables are subsequently used by _LT_CONFIG
7454# to write the compiler configuration to `libtool'.
7455m4_defun([_LT_LANG_GCJ_CONFIG],
7456[AC_REQUIRE([LT_PROG_GCJ])dnl
7457AC_LANG_SAVE
b9668ba4 7458
5c706339
AK
7459# Source file extension for Java test sources.
7460ac_ext=java
7461
7462# Object file extension for compiled Java test sources.
7463objext=o
7464_LT_TAGVAR(objext, $1)=$objext
7465
7466# Code to be used in simple compile tests
7467lt_simple_compile_test_code="class foo {}"
7468
7469# Code to be used in simple link tests
7470lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7471
7472# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7473_LT_TAG_COMPILER
7474
7475# save warnings/boilerplate of simple test code
7476_LT_COMPILER_BOILERPLATE
7477_LT_LINKER_BOILERPLATE
7478
7479# Allow CC to be a program name with arguments.
059850b5
AK
7480lt_save_CC=$CC
7481lt_save_CFLAGS=$CFLAGS
5c706339
AK
7482lt_save_GCC=$GCC
7483GCC=yes
7484CC=${GCJ-"gcj"}
059850b5 7485CFLAGS=$GCJFLAGS
5c706339
AK
7486compiler=$CC
7487_LT_TAGVAR(compiler, $1)=$CC
7488_LT_TAGVAR(LD, $1)="$LD"
7489_LT_CC_BASENAME([$compiler])
7490
7491# GCJ did not exist at the time GCC didn't implicitly link libc in.
7492_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7493
7494_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
059850b5
AK
7495_LT_TAGVAR(reload_flag, $1)=$reload_flag
7496_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
5c706339
AK
7497
7498if test -n "$compiler"; then
7499 _LT_COMPILER_NO_RTTI($1)
7500 _LT_COMPILER_PIC($1)
7501 _LT_COMPILER_C_O($1)
7502 _LT_COMPILER_FILE_LOCKS($1)
7503 _LT_LINKER_SHLIBS($1)
7504 _LT_LINKER_HARDCODE_LIBPATH($1)
7505
7506 _LT_CONFIG($1)
7507fi
7508
7509AC_LANG_RESTORE
7510
7511GCC=$lt_save_GCC
059850b5
AK
7512CC=$lt_save_CC
7513CFLAGS=$lt_save_CFLAGS
5c706339
AK
7514])# _LT_LANG_GCJ_CONFIG
7515
7516
059850b5
AK
7517# _LT_LANG_GO_CONFIG([TAG])
7518# --------------------------
7519# Ensure that the configuration variables for the GNU Go compiler
7520# are suitably defined. These variables are subsequently used by _LT_CONFIG
7521# to write the compiler configuration to `libtool'.
7522m4_defun([_LT_LANG_GO_CONFIG],
7523[AC_REQUIRE([LT_PROG_GO])dnl
7524AC_LANG_SAVE
7525
7526# Source file extension for Go test sources.
7527ac_ext=go
7528
7529# Object file extension for compiled Go test sources.
7530objext=o
7531_LT_TAGVAR(objext, $1)=$objext
7532
7533# Code to be used in simple compile tests
7534lt_simple_compile_test_code="package main; func main() { }"
7535
7536# Code to be used in simple link tests
7537lt_simple_link_test_code='package main; func main() { }'
7538
7539# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7540_LT_TAG_COMPILER
7541
7542# save warnings/boilerplate of simple test code
7543_LT_COMPILER_BOILERPLATE
7544_LT_LINKER_BOILERPLATE
7545
7546# Allow CC to be a program name with arguments.
7547lt_save_CC=$CC
7548lt_save_CFLAGS=$CFLAGS
7549lt_save_GCC=$GCC
7550GCC=yes
7551CC=${GOC-"gccgo"}
7552CFLAGS=$GOFLAGS
7553compiler=$CC
7554_LT_TAGVAR(compiler, $1)=$CC
7555_LT_TAGVAR(LD, $1)="$LD"
7556_LT_CC_BASENAME([$compiler])
7557
7558# Go did not exist at the time GCC didn't implicitly link libc in.
7559_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7560
7561_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7562_LT_TAGVAR(reload_flag, $1)=$reload_flag
7563_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7564
7565if test -n "$compiler"; then
7566 _LT_COMPILER_NO_RTTI($1)
7567 _LT_COMPILER_PIC($1)
7568 _LT_COMPILER_C_O($1)
7569 _LT_COMPILER_FILE_LOCKS($1)
7570 _LT_LINKER_SHLIBS($1)
7571 _LT_LINKER_HARDCODE_LIBPATH($1)
7572
7573 _LT_CONFIG($1)
7574fi
7575
7576AC_LANG_RESTORE
7577
7578GCC=$lt_save_GCC
7579CC=$lt_save_CC
7580CFLAGS=$lt_save_CFLAGS
7581])# _LT_LANG_GO_CONFIG
7582
7583
5c706339
AK
7584# _LT_LANG_RC_CONFIG([TAG])
7585# -------------------------
7586# Ensure that the configuration variables for the Windows resource compiler
7587# are suitably defined. These variables are subsequently used by _LT_CONFIG
7588# to write the compiler configuration to `libtool'.
7589m4_defun([_LT_LANG_RC_CONFIG],
7590[AC_REQUIRE([LT_PROG_RC])dnl
7591AC_LANG_SAVE
7592
7593# Source file extension for RC test sources.
7594ac_ext=rc
7595
7596# Object file extension for compiled RC test sources.
7597objext=o
7598_LT_TAGVAR(objext, $1)=$objext
7599
7600# Code to be used in simple compile tests
7601lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
7602
7603# Code to be used in simple link tests
7604lt_simple_link_test_code="$lt_simple_compile_test_code"
7605
7606# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7607_LT_TAG_COMPILER
7608
7609# save warnings/boilerplate of simple test code
7610_LT_COMPILER_BOILERPLATE
7611_LT_LINKER_BOILERPLATE
7612
7613# Allow CC to be a program name with arguments.
7614lt_save_CC="$CC"
059850b5 7615lt_save_CFLAGS=$CFLAGS
5c706339
AK
7616lt_save_GCC=$GCC
7617GCC=
7618CC=${RC-"windres"}
059850b5 7619CFLAGS=
5c706339
AK
7620compiler=$CC
7621_LT_TAGVAR(compiler, $1)=$CC
7622_LT_CC_BASENAME([$compiler])
7623_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
7624
7625if test -n "$compiler"; then
7626 :
7627 _LT_CONFIG($1)
7628fi
7629
7630GCC=$lt_save_GCC
7631AC_LANG_RESTORE
059850b5
AK
7632CC=$lt_save_CC
7633CFLAGS=$lt_save_CFLAGS
5c706339
AK
7634])# _LT_LANG_RC_CONFIG
7635
7636
7637# LT_PROG_GCJ
7638# -----------
7639AC_DEFUN([LT_PROG_GCJ],
7640[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
7641 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
7642 [AC_CHECK_TOOL(GCJ, gcj,)
7643 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
7644 AC_SUBST(GCJFLAGS)])])[]dnl
7645])
7646
7647# Old name:
7648AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7649dnl aclocal-1.4 backwards compatibility:
7650dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
7651
7652
059850b5
AK
7653# LT_PROG_GO
7654# ----------
7655AC_DEFUN([LT_PROG_GO],
7656[AC_CHECK_TOOL(GOC, gccgo,)
7657])
7658
7659
5c706339
AK
7660# LT_PROG_RC
7661# ----------
7662AC_DEFUN([LT_PROG_RC],
7663[AC_CHECK_TOOL(RC, windres,)
7664])
7665
7666# Old name:
7667AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7668dnl aclocal-1.4 backwards compatibility:
7669dnl AC_DEFUN([LT_AC_PROG_RC], [])
7670
7671
7672# _LT_DECL_EGREP
7673# --------------
7674# If we don't have a new enough Autoconf to choose the best grep
7675# available, choose the one first in the user's PATH.
7676m4_defun([_LT_DECL_EGREP],
7677[AC_REQUIRE([AC_PROG_EGREP])dnl
7678AC_REQUIRE([AC_PROG_FGREP])dnl
7679test -z "$GREP" && GREP=grep
7680_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7681_LT_DECL([], [EGREP], [1], [An ERE matcher])
7682_LT_DECL([], [FGREP], [1], [A literal string matcher])
7683dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7684AC_SUBST([GREP])
7685])
7686
7687
47dc80f6
AK
7688# _LT_DECL_OBJDUMP
7689# --------------
7690# If we don't have a new enough Autoconf to choose the best objdump
7691# available, choose the one first in the user's PATH.
7692m4_defun([_LT_DECL_OBJDUMP],
7693[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7694test -z "$OBJDUMP" && OBJDUMP=objdump
7695_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7696AC_SUBST([OBJDUMP])
7697])
7698
059850b5
AK
7699# _LT_DECL_DLLTOOL
7700# ----------------
7701# Ensure DLLTOOL variable is set.
7702m4_defun([_LT_DECL_DLLTOOL],
7703[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7704test -z "$DLLTOOL" && DLLTOOL=dlltool
7705_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7706AC_SUBST([DLLTOOL])
7707])
47dc80f6 7708
5c706339
AK
7709# _LT_DECL_SED
7710# ------------
7711# Check for a fully-functional sed program, that truncates
7712# as few characters as possible. Prefer GNU sed if found.
7713m4_defun([_LT_DECL_SED],
7714[AC_PROG_SED
7715test -z "$SED" && SED=sed
7716Xsed="$SED -e 1s/^X//"
7717_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7718_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7719 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7720])# _LT_DECL_SED
7721
7722m4_ifndef([AC_PROG_SED], [
7723# NOTE: This macro has been submitted for inclusion into #
7724# GNU Autoconf as AC_PROG_SED. When it is available in #
7725# a released version of Autoconf we should remove this #
7726# macro and use it instead. #
7727
7728m4_defun([AC_PROG_SED],
7729[AC_MSG_CHECKING([for a sed that does not truncate output])
7730AC_CACHE_VAL(lt_cv_path_SED,
7731[# Loop through the user's path and test for sed and gsed.
7732# Then use that list of sed's as ones to test for truncation.
7733as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7734for as_dir in $PATH
7735do
7736 IFS=$as_save_IFS
7737 test -z "$as_dir" && as_dir=.
7738 for lt_ac_prog in sed gsed; do
7739 for ac_exec_ext in '' $ac_executable_extensions; do
7740 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7741 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
7742 fi
7743 done
7744 done
7745done
7746IFS=$as_save_IFS
7747lt_ac_max=0
7748lt_ac_count=0
7749# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7750# along with /bin/sed that truncates output.
7751for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
7752 test ! -f $lt_ac_sed && continue
7753 cat /dev/null > conftest.in
7754 lt_ac_count=0
7755 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7756 # Check for GNU sed and select it if it is found.
7757 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7758 lt_cv_path_SED=$lt_ac_sed
7759 break
7760 fi
7761 while true; do
7762 cat conftest.in conftest.in >conftest.tmp
7763 mv conftest.tmp conftest.in
7764 cp conftest.in conftest.nl
7765 echo >>conftest.nl
7766 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7767 cmp -s conftest.out conftest.nl || break
7768 # 10000 chars as input seems more than enough
7769 test $lt_ac_count -gt 10 && break
7770 lt_ac_count=`expr $lt_ac_count + 1`
7771 if test $lt_ac_count -gt $lt_ac_max; then
7772 lt_ac_max=$lt_ac_count
7773 lt_cv_path_SED=$lt_ac_sed
7774 fi
7775 done
7776done
7777])
7778SED=$lt_cv_path_SED
7779AC_SUBST([SED])
7780AC_MSG_RESULT([$SED])
7781])#AC_PROG_SED
7782])#m4_ifndef
7783
7784# Old name:
7785AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7786dnl aclocal-1.4 backwards compatibility:
7787dnl AC_DEFUN([LT_AC_PROG_SED], [])
7788
7789
7790# _LT_CHECK_SHELL_FEATURES
7791# ------------------------
7792# Find out whether the shell is Bourne or XSI compatible,
7793# or has some other useful features.
7794m4_defun([_LT_CHECK_SHELL_FEATURES],
7795[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7796# Try some XSI features
7797xsi_shell=no
7798( _lt_dummy="a/b/c"
059850b5
AK
7799 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7800 = c,a/b,b/c, \
5c706339
AK
7801 && eval 'test $(( 1 + 1 )) -eq 2 \
7802 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7803 && xsi_shell=yes
7804AC_MSG_RESULT([$xsi_shell])
7805_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7806
7807AC_MSG_CHECKING([whether the shell understands "+="])
7808lt_shell_append=no
7809( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7810 >/dev/null 2>&1 \
7811 && lt_shell_append=yes
7812AC_MSG_RESULT([$lt_shell_append])
7813_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7814
7815if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7816 lt_unset=unset
7817else
7818 lt_unset=false
7819fi
7820_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7821
7822# test EBCDIC or ASCII
7823case `echo X|tr X '\101'` in
7824 A) # ASCII based system
7825 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7826 lt_SP2NL='tr \040 \012'
7827 lt_NL2SP='tr \015\012 \040\040'
7828 ;;
7829 *) # EBCDIC based system
7830 lt_SP2NL='tr \100 \n'
7831 lt_NL2SP='tr \r\n \100\100'
7832 ;;
7833esac
7834_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7835_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7836])# _LT_CHECK_SHELL_FEATURES
b9668ba4 7837
b9668ba4 7838
059850b5
AK
7839# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7840# ------------------------------------------------------
7841# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7842# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7843m4_defun([_LT_PROG_FUNCTION_REPLACE],
7844[dnl {
7845sed -e '/^$1 ()$/,/^} # $1 /c\
7846$1 ()\
7847{\
7848m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
7849} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7850 && mv -f "$cfgfile.tmp" "$cfgfile" \
7851 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7852test 0 -eq $? || _lt_function_replace_fail=:
7853])
b9668ba4 7854
b9668ba4 7855
059850b5
AK
7856# _LT_PROG_REPLACE_SHELLFNS
7857# -------------------------
7858# Replace existing portable implementations of several shell functions with
7859# equivalent extended shell implementations where those features are available..
7860m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7861[if test x"$xsi_shell" = xyes; then
7862 _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7863 case ${1} in
7864 */*) func_dirname_result="${1%/*}${2}" ;;
7865 * ) func_dirname_result="${3}" ;;
7866 esac])
7867
7868 _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7869 func_basename_result="${1##*/}"])
7870
7871 _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7872 case ${1} in
7873 */*) func_dirname_result="${1%/*}${2}" ;;
7874 * ) func_dirname_result="${3}" ;;
7875 esac
7876 func_basename_result="${1##*/}"])
b9668ba4 7877
059850b5
AK
7878 _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7879 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7880 # positional parameters, so assign one to ordinary parameter first.
7881 func_stripname_result=${3}
7882 func_stripname_result=${func_stripname_result#"${1}"}
7883 func_stripname_result=${func_stripname_result%"${2}"}])
b9668ba4 7884
059850b5
AK
7885 _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7886 func_split_long_opt_name=${1%%=*}
7887 func_split_long_opt_arg=${1#*=}])
5c706339 7888
059850b5
AK
7889 _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7890 func_split_short_opt_arg=${1#??}
7891 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
b9668ba4 7892
059850b5
AK
7893 _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7894 case ${1} in
7895 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7896 *) func_lo2o_result=${1} ;;
7897 esac])
b9668ba4 7898
059850b5 7899 _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
b9668ba4 7900
059850b5 7901 _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
b9668ba4 7902
059850b5
AK
7903 _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
7904fi
b9668ba4 7905
059850b5
AK
7906if test x"$lt_shell_append" = xyes; then
7907 _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
b9668ba4 7908
059850b5
AK
7909 _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7910 func_quote_for_eval "${2}"
7911dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7912 eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
b9668ba4 7913
059850b5
AK
7914 # Save a `func_append' function call where possible by direct use of '+='
7915 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7916 && mv -f "$cfgfile.tmp" "$cfgfile" \
7917 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7918 test 0 -eq $? || _lt_function_replace_fail=:
7919else
7920 # Save a `func_append' function call even when '+=' is not available
7921 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7922 && mv -f "$cfgfile.tmp" "$cfgfile" \
7923 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7924 test 0 -eq $? || _lt_function_replace_fail=:
7925fi
b9668ba4 7926
059850b5
AK
7927if test x"$_lt_function_replace_fail" = x":"; then
7928 AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7929fi
7930])
b9668ba4 7931
059850b5
AK
7932# _LT_PATH_CONVERSION_FUNCTIONS
7933# -----------------------------
7934# Determine which file name conversion functions should be used by
7935# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
7936# for certain cross-compile configurations and native mingw.
7937m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7938[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7939AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7940AC_MSG_CHECKING([how to convert $build file names to $host format])
7941AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7942[case $host in
7943 *-*-mingw* )
7944 case $build in
7945 *-*-mingw* ) # actually msys
7946 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7947 ;;
7948 *-*-cygwin* )
7949 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7950 ;;
7951 * ) # otherwise, assume *nix
7952 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7953 ;;
7954 esac
5c706339 7955 ;;
059850b5
AK
7956 *-*-cygwin* )
7957 case $build in
7958 *-*-mingw* ) # actually msys
7959 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7960 ;;
7961 *-*-cygwin* )
7962 lt_cv_to_host_file_cmd=func_convert_file_noop
7963 ;;
7964 * ) # otherwise, assume *nix
7965 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7966 ;;
7967 esac
5c706339 7968 ;;
059850b5
AK
7969 * ) # unhandled hosts (and "normal" native builds)
7970 lt_cv_to_host_file_cmd=func_convert_file_noop
7971 ;;
7972esac
5c706339 7973])
059850b5
AK
7974to_host_file_cmd=$lt_cv_to_host_file_cmd
7975AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7976_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7977 [0], [convert $build file names to $host format])dnl
7978
7979AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7980AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7981[#assume ordinary cross tools, or native build.
7982lt_cv_to_tool_file_cmd=func_convert_file_noop
7983case $host in
7984 *-*-mingw* )
7985 case $build in
7986 *-*-mingw* ) # actually msys
7987 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7988 ;;
7989 esac
7990 ;;
7991esac
7992])
7993to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7994AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7995_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
7996 [0], [convert $build files to toolchain format])dnl
7997])# _LT_PATH_CONVERSION_FUNCTIONS
b9668ba4 7998
5c706339
AK
7999# Helper functions for option handling. -*- Autoconf -*-
8000#
059850b5
AK
8001# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
8002# Inc.
5c706339
AK
8003# Written by Gary V. Vaughan, 2004
8004#
8005# This file is free software; the Free Software Foundation gives
8006# unlimited permission to copy and/or distribute it, with or without
8007# modifications, as long as this notice is preserved.
b9668ba4 8008
059850b5 8009# serial 7 ltoptions.m4
b9668ba4 8010
5c706339
AK
8011# This is to help aclocal find these macros, as it can't see m4_define.
8012AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
b9668ba4 8013
b9668ba4 8014
5c706339
AK
8015# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8016# ------------------------------------------
8017m4_define([_LT_MANGLE_OPTION],
8018[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
b9668ba4 8019
b9668ba4 8020
5c706339
AK
8021# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8022# ---------------------------------------
8023# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8024# matching handler defined, dispatch to it. Other OPTION-NAMEs are
8025# saved as a flag.
8026m4_define([_LT_SET_OPTION],
8027[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8028m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8029 _LT_MANGLE_DEFUN([$1], [$2]),
8030 [m4_warning([Unknown $1 option `$2'])])[]dnl
8031])
8032
8033
8034# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8035# ------------------------------------------------------------
8036# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8037m4_define([_LT_IF_OPTION],
8038[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8039
8040
8041# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8042# -------------------------------------------------------
8043# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8044# are set.
8045m4_define([_LT_UNLESS_OPTIONS],
8046[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8047 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8048 [m4_define([$0_found])])])[]dnl
8049m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8050])[]dnl
8051])
8052
8053
8054# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8055# ----------------------------------------
8056# OPTION-LIST is a space-separated list of Libtool options associated
8057# with MACRO-NAME. If any OPTION has a matching handler declared with
8058# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8059# the unknown option and exit.
8060m4_defun([_LT_SET_OPTIONS],
8061[# Set options
8062m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8063 [_LT_SET_OPTION([$1], _LT_Option)])
8064
8065m4_if([$1],[LT_INIT],[
8066 dnl
8067 dnl Simply set some default values (i.e off) if boolean options were not
8068 dnl specified:
8069 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8070 ])
8071 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8072 ])
8073 dnl
8074 dnl If no reference was made to various pairs of opposing options, then
8075 dnl we run the default mode handler for the pair. For example, if neither
8076 dnl `shared' nor `disable-shared' was passed, we enable building of shared
8077 dnl archives by default:
8078 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8079 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8080 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8081 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8082 [_LT_ENABLE_FAST_INSTALL])
8083 ])
8084])# _LT_SET_OPTIONS
8085
b9668ba4 8086
b9668ba4 8087
5c706339
AK
8088# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8089# -----------------------------------------
8090m4_define([_LT_MANGLE_DEFUN],
8091[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
b9668ba4 8092
b9668ba4 8093
5c706339
AK
8094# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8095# -----------------------------------------------
8096m4_define([LT_OPTION_DEFINE],
8097[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8098])# LT_OPTION_DEFINE
b9668ba4 8099
b9668ba4 8100
5c706339
AK
8101# dlopen
8102# ------
8103LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8104])
b9668ba4 8105
5c706339
AK
8106AU_DEFUN([AC_LIBTOOL_DLOPEN],
8107[_LT_SET_OPTION([LT_INIT], [dlopen])
8108AC_DIAGNOSE([obsolete],
8109[$0: Remove this warning and the call to _LT_SET_OPTION when you
8110put the `dlopen' option into LT_INIT's first parameter.])
8111])
b9668ba4 8112
5c706339
AK
8113dnl aclocal-1.4 backwards compatibility:
8114dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
b9668ba4 8115
b9668ba4 8116
5c706339
AK
8117# win32-dll
8118# ---------
8119# Declare package support for building win32 dll's.
8120LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8121[enable_win32_dll=yes
b9668ba4 8122
5c706339 8123case $host in
059850b5 8124*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
5c706339
AK
8125 AC_CHECK_TOOL(AS, as, false)
8126 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8127 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8128 ;;
8129esac
b9668ba4 8130
5c706339 8131test -z "$AS" && AS=as
059850b5 8132_LT_DECL([], [AS], [1], [Assembler program])dnl
b9668ba4 8133
5c706339 8134test -z "$DLLTOOL" && DLLTOOL=dlltool
059850b5 8135_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
b9668ba4 8136
5c706339 8137test -z "$OBJDUMP" && OBJDUMP=objdump
059850b5 8138_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
5c706339 8139])# win32-dll
b9668ba4 8140
5c706339
AK
8141AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8142[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8143_LT_SET_OPTION([LT_INIT], [win32-dll])
8144AC_DIAGNOSE([obsolete],
8145[$0: Remove this warning and the call to _LT_SET_OPTION when you
8146put the `win32-dll' option into LT_INIT's first parameter.])
8147])
b9668ba4 8148
5c706339
AK
8149dnl aclocal-1.4 backwards compatibility:
8150dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
b9668ba4 8151
b9668ba4 8152
5c706339
AK
8153# _LT_ENABLE_SHARED([DEFAULT])
8154# ----------------------------
8155# implement the --enable-shared flag, and supports the `shared' and
8156# `disable-shared' LT_INIT options.
8157# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8158m4_define([_LT_ENABLE_SHARED],
8159[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8160AC_ARG_ENABLE([shared],
8161 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8162 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8163 [p=${PACKAGE-default}
8164 case $enableval in
8165 yes) enable_shared=yes ;;
8166 no) enable_shared=no ;;
8167 *)
8168 enable_shared=no
8169 # Look at the argument we got. We use all the common list separators.
8170 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8171 for pkg in $enableval; do
8172 IFS="$lt_save_ifs"
8173 if test "X$pkg" = "X$p"; then
8174 enable_shared=yes
8175 fi
8176 done
8177 IFS="$lt_save_ifs"
b9668ba4 8178 ;;
5c706339
AK
8179 esac],
8180 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
b9668ba4 8181
5c706339
AK
8182 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8183 [Whether or not to build shared libraries])
8184])# _LT_ENABLE_SHARED
b9668ba4 8185
5c706339
AK
8186LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8187LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
b9668ba4 8188
5c706339
AK
8189# Old names:
8190AC_DEFUN([AC_ENABLE_SHARED],
8191[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8192])
b9668ba4 8193
5c706339
AK
8194AC_DEFUN([AC_DISABLE_SHARED],
8195[_LT_SET_OPTION([LT_INIT], [disable-shared])
8196])
b9668ba4 8197
5c706339
AK
8198AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8199AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
b9668ba4 8200
5c706339
AK
8201dnl aclocal-1.4 backwards compatibility:
8202dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8203dnl AC_DEFUN([AM_DISABLE_SHARED], [])
b9668ba4 8204
b9668ba4 8205
b9668ba4 8206
5c706339
AK
8207# _LT_ENABLE_STATIC([DEFAULT])
8208# ----------------------------
8209# implement the --enable-static flag, and support the `static' and
8210# `disable-static' LT_INIT options.
8211# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8212m4_define([_LT_ENABLE_STATIC],
8213[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8214AC_ARG_ENABLE([static],
8215 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8216 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8217 [p=${PACKAGE-default}
8218 case $enableval in
8219 yes) enable_static=yes ;;
8220 no) enable_static=no ;;
8221 *)
8222 enable_static=no
8223 # Look at the argument we got. We use all the common list separators.
8224 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8225 for pkg in $enableval; do
8226 IFS="$lt_save_ifs"
8227 if test "X$pkg" = "X$p"; then
8228 enable_static=yes
8229 fi
8230 done
8231 IFS="$lt_save_ifs"
b9668ba4 8232 ;;
5c706339
AK
8233 esac],
8234 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
b9668ba4 8235
5c706339
AK
8236 _LT_DECL([build_old_libs], [enable_static], [0],
8237 [Whether or not to build static libraries])
8238])# _LT_ENABLE_STATIC
b9668ba4 8239
5c706339
AK
8240LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8241LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
b9668ba4 8242
5c706339
AK
8243# Old names:
8244AC_DEFUN([AC_ENABLE_STATIC],
8245[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8246])
b9668ba4 8247
5c706339
AK
8248AC_DEFUN([AC_DISABLE_STATIC],
8249[_LT_SET_OPTION([LT_INIT], [disable-static])
8250])
b9668ba4 8251
5c706339
AK
8252AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8253AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
b9668ba4 8254
5c706339
AK
8255dnl aclocal-1.4 backwards compatibility:
8256dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8257dnl AC_DEFUN([AM_DISABLE_STATIC], [])
b9668ba4 8258
b9668ba4 8259
b9668ba4 8260
5c706339
AK
8261# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8262# ----------------------------------
8263# implement the --enable-fast-install flag, and support the `fast-install'
8264# and `disable-fast-install' LT_INIT options.
8265# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8266m4_define([_LT_ENABLE_FAST_INSTALL],
8267[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8268AC_ARG_ENABLE([fast-install],
8269 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8270 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8271 [p=${PACKAGE-default}
8272 case $enableval in
8273 yes) enable_fast_install=yes ;;
8274 no) enable_fast_install=no ;;
8275 *)
8276 enable_fast_install=no
8277 # Look at the argument we got. We use all the common list separators.
8278 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8279 for pkg in $enableval; do
8280 IFS="$lt_save_ifs"
8281 if test "X$pkg" = "X$p"; then
8282 enable_fast_install=yes
8283 fi
8284 done
8285 IFS="$lt_save_ifs"
b9668ba4 8286 ;;
5c706339
AK
8287 esac],
8288 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
b9668ba4 8289
5c706339
AK
8290_LT_DECL([fast_install], [enable_fast_install], [0],
8291 [Whether or not to optimize for fast installation])dnl
8292])# _LT_ENABLE_FAST_INSTALL
b9668ba4 8293
5c706339
AK
8294LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8295LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
b9668ba4 8296
5c706339
AK
8297# Old names:
8298AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8299[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8300AC_DIAGNOSE([obsolete],
8301[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8302the `fast-install' option into LT_INIT's first parameter.])
8303])
b9668ba4 8304
5c706339
AK
8305AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8306[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8307AC_DIAGNOSE([obsolete],
8308[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8309the `disable-fast-install' option into LT_INIT's first parameter.])
8310])
b9668ba4 8311
5c706339
AK
8312dnl aclocal-1.4 backwards compatibility:
8313dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8314dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
b9668ba4 8315
b9668ba4 8316
5c706339
AK
8317# _LT_WITH_PIC([MODE])
8318# --------------------
8319# implement the --with-pic flag, and support the `pic-only' and `no-pic'
8320# LT_INIT options.
8321# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
8322m4_define([_LT_WITH_PIC],
8323[AC_ARG_WITH([pic],
059850b5 8324 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
5c706339 8325 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
059850b5
AK
8326 [lt_p=${PACKAGE-default}
8327 case $withval in
8328 yes|no) pic_mode=$withval ;;
8329 *)
8330 pic_mode=default
8331 # Look at the argument we got. We use all the common list separators.
8332 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8333 for lt_pkg in $withval; do
8334 IFS="$lt_save_ifs"
8335 if test "X$lt_pkg" = "X$lt_p"; then
8336 pic_mode=yes
8337 fi
8338 done
8339 IFS="$lt_save_ifs"
8340 ;;
8341 esac],
5c706339 8342 [pic_mode=default])
b9668ba4 8343
5c706339 8344test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
b9668ba4 8345
5c706339
AK
8346_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8347])# _LT_WITH_PIC
b9668ba4 8348
5c706339
AK
8349LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8350LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8351
8352# Old name:
8353AU_DEFUN([AC_LIBTOOL_PICMODE],
8354[_LT_SET_OPTION([LT_INIT], [pic-only])
8355AC_DIAGNOSE([obsolete],
8356[$0: Remove this warning and the call to _LT_SET_OPTION when you
8357put the `pic-only' option into LT_INIT's first parameter.])
b9668ba4 8358])
b9668ba4 8359
5c706339
AK
8360dnl aclocal-1.4 backwards compatibility:
8361dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
b9668ba4 8362
b9668ba4 8363
5c706339
AK
8364m4_define([_LTDL_MODE], [])
8365LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8366 [m4_define([_LTDL_MODE], [nonrecursive])])
8367LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8368 [m4_define([_LTDL_MODE], [recursive])])
8369LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8370 [m4_define([_LTDL_MODE], [subproject])])
b9668ba4 8371
5c706339
AK
8372m4_define([_LTDL_TYPE], [])
8373LT_OPTION_DEFINE([LTDL_INIT], [installable],
8374 [m4_define([_LTDL_TYPE], [installable])])
8375LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8376 [m4_define([_LTDL_TYPE], [convenience])])
b9668ba4 8377
5c706339 8378# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
b9668ba4 8379#
47dc80f6
AK
8380# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
8381# Written by Gary V. Vaughan, 2004
b9668ba4 8382#
5c706339
AK
8383# This file is free software; the Free Software Foundation gives
8384# unlimited permission to copy and/or distribute it, with or without
8385# modifications, as long as this notice is preserved.
8386
47dc80f6 8387# serial 6 ltsugar.m4
5c706339
AK
8388
8389# This is to help aclocal find these macros, as it can't see m4_define.
8390AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8391
8392
8393# lt_join(SEP, ARG1, [ARG2...])
8394# -----------------------------
8395# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8396# associated separator.
8397# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8398# versions in m4sugar had bugs.
8399m4_define([lt_join],
8400[m4_if([$#], [1], [],
8401 [$#], [2], [[$2]],
8402 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8403m4_define([_lt_join],
8404[m4_if([$#$2], [2], [],
8405 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8406
8407
8408# lt_car(LIST)
8409# lt_cdr(LIST)
8410# ------------
8411# Manipulate m4 lists.
8412# These macros are necessary as long as will still need to support
8413# Autoconf-2.59 which quotes differently.
8414m4_define([lt_car], [[$1]])
8415m4_define([lt_cdr],
8416[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8417 [$#], 1, [],
8418 [m4_dquote(m4_shift($@))])])
8419m4_define([lt_unquote], $1)
8420
8421
8422# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8423# ------------------------------------------
8424# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
8425# Note that neither SEPARATOR nor STRING are expanded; they are appended
8426# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8427# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8428# than defined and empty).
b9668ba4 8429#
5c706339
AK
8430# This macro is needed until we can rely on Autoconf 2.62, since earlier
8431# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8432m4_define([lt_append],
8433[m4_define([$1],
8434 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8435
8436
8437
8438# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8439# ----------------------------------------------------------
8440# Produce a SEP delimited list of all paired combinations of elements of
8441# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8442# has the form PREFIXmINFIXSUFFIXn.
47dc80f6 8443# Needed until we can rely on m4_combine added in Autoconf 2.62.
5c706339 8444m4_define([lt_combine],
47dc80f6
AK
8445[m4_if(m4_eval([$# > 3]), [1],
8446 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8447[[m4_foreach([_Lt_prefix], [$2],
8448 [m4_foreach([_Lt_suffix],
8449 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8450 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
b9668ba4
AK
8451
8452
5c706339
AK
8453# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8454# -----------------------------------------------------------------------
8455# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8456# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8457m4_define([lt_if_append_uniq],
8458[m4_ifdef([$1],
8459 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8460 [lt_append([$1], [$2], [$3])$4],
8461 [$5])],
8462 [lt_append([$1], [$2], [$3])$4])])
b9668ba4
AK
8463
8464
5c706339
AK
8465# lt_dict_add(DICT, KEY, VALUE)
8466# -----------------------------
8467m4_define([lt_dict_add],
8468[m4_define([$1($2)], [$3])])
b9668ba4 8469
b9668ba4 8470
5c706339
AK
8471# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8472# --------------------------------------------
8473m4_define([lt_dict_add_subkey],
8474[m4_define([$1($2:$3)], [$4])])
b9668ba4 8475
b9668ba4 8476
5c706339
AK
8477# lt_dict_fetch(DICT, KEY, [SUBKEY])
8478# ----------------------------------
8479m4_define([lt_dict_fetch],
8480[m4_ifval([$3],
8481 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8482 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8483
8484
8485# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8486# -----------------------------------------------------------------
8487m4_define([lt_if_dict_fetch],
8488[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8489 [$5],
8490 [$6])])
8491
8492
8493# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8494# --------------------------------------------------------------
8495m4_define([lt_dict_filter],
8496[m4_if([$5], [], [],
8497 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8498 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8499 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
b9668ba4 8500])
5c706339
AK
8501
8502# ltversion.m4 -- version numbers -*- Autoconf -*-
8503#
8504# Copyright (C) 2004 Free Software Foundation, Inc.
8505# Written by Scott James Remnant, 2004
8506#
8507# This file is free software; the Free Software Foundation gives
8508# unlimited permission to copy and/or distribute it, with or without
8509# modifications, as long as this notice is preserved.
8510
059850b5 8511# @configure_input@
5c706339 8512
059850b5 8513# serial 3337 ltversion.m4
5c706339
AK
8514# This file is part of GNU Libtool
8515
059850b5
AK
8516m4_define([LT_PACKAGE_VERSION], [2.4.2])
8517m4_define([LT_PACKAGE_REVISION], [1.3337])
5c706339
AK
8518
8519AC_DEFUN([LTVERSION_VERSION],
059850b5
AK
8520[macro_version='2.4.2'
8521macro_revision='1.3337'
5c706339
AK
8522_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8523_LT_DECL(, macro_revision, 0)
b9668ba4
AK
8524])
8525
5c706339
AK
8526# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8527#
059850b5 8528# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
5c706339
AK
8529# Written by Scott James Remnant, 2004.
8530#
8531# This file is free software; the Free Software Foundation gives
8532# unlimited permission to copy and/or distribute it, with or without
8533# modifications, as long as this notice is preserved.
8534
059850b5 8535# serial 5 lt~obsolete.m4
5c706339
AK
8536
8537# These exist entirely to fool aclocal when bootstrapping libtool.
8538#
8539# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
8540# which have later been changed to m4_define as they aren't part of the
8541# exported API, or moved to Autoconf or Automake where they belong.
8542#
8543# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8544# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8545# using a macro with the same name in our local m4/libtool.m4 it'll
8546# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8547# and doesn't know about Autoconf macros at all.)
8548#
8549# So we provide this file, which has a silly filename so it's always
8550# included after everything else. This provides aclocal with the
8551# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8552# because those macros already exist, or will be overwritten later.
8553# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8554#
8555# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8556# Yes, that means every name once taken will need to remain here until
8557# we give up compatibility with versions before 1.7, at which point
8558# we need to keep only those names which we still refer to.
8559
8560# This is to help aclocal find these macros, as it can't see m4_define.
8561AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8562
8563m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8564m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8565m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8566m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8567m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8568m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8569m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8570m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8571m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8572m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
8573m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
8574m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8575m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8576m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8577m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
8578m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
8579m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
8580m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
8581m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
8582m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
8583m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
8584m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
8585m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
8586m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
8587m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
8588m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
8589m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
8590m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
8591m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
8592m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
8593m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
8594m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
8595m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
8596m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
8597m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
8598m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
8599m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
8600m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
8601m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
8602m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
8603m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
8604m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
5c706339
AK
8605m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
8606m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
8607m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
8608m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
8609m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
8610m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
8611m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
8612m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
8613m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
8614m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
8615m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
8616m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
059850b5
AK
8617m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
8618m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
8619m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
8620m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
8621m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
8622m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
8623m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
8624
0044e680 8625# Copyright (C) 2002-2013 Free Software Foundation, Inc.
b9668ba4
AK
8626#
8627# This file is free software; the Free Software Foundation
8628# gives unlimited permission to copy and/or distribute it,
8629# with or without modifications, as long as this notice is preserved.
8630
8631# AM_AUTOMAKE_VERSION(VERSION)
8632# ----------------------------
8633# Automake X.Y traces this macro to ensure aclocal.m4 has been
8634# generated from the m4 files accompanying Automake X.Y.
5c706339
AK
8635# (This private macro should not be called outside this file.)
8636AC_DEFUN([AM_AUTOMAKE_VERSION],
0044e680 8637[am__api_version='1.14'
5c706339
AK
8638dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
8639dnl require some minimum version. Point them to the right macro.
0044e680 8640m4_if([$1], [1.14.1], [],
5c706339
AK
8641 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
8642])
8643
8644# _AM_AUTOCONF_VERSION(VERSION)
8645# -----------------------------
8646# aclocal traces this macro to find the Autoconf version.
8647# This is a private macro too. Using m4_define simplifies
8648# the logic in aclocal, which can simply ignore this definition.
8649m4_define([_AM_AUTOCONF_VERSION], [])
b9668ba4
AK
8650
8651# AM_SET_CURRENT_AUTOMAKE_VERSION
8652# -------------------------------
5c706339 8653# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
47dc80f6 8654# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
b9668ba4 8655AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
0044e680 8656[AM_AUTOMAKE_VERSION([1.14.1])dnl
5c706339
AK
8657m4_ifndef([AC_AUTOCONF_VERSION],
8658 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
47dc80f6 8659_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
b9668ba4
AK
8660
8661# AM_AUX_DIR_EXPAND -*- Autoconf -*-
8662
0044e680 8663# Copyright (C) 2001-2013 Free Software Foundation, Inc.
b9668ba4
AK
8664#
8665# This file is free software; the Free Software Foundation
8666# gives unlimited permission to copy and/or distribute it,
8667# with or without modifications, as long as this notice is preserved.
8668
8669# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
0044e680
AK
8670# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
8671# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
b9668ba4
AK
8672#
8673# Of course, Automake must honor this variable whenever it calls a
8674# tool from the auxiliary directory. The problem is that $srcdir (and
8675# therefore $ac_aux_dir as well) can be either absolute or relative,
8676# depending on how configure is run. This is pretty annoying, since
8677# it makes $ac_aux_dir quite unusable in subdirectories: in the top
8678# source directory, any form will work fine, but in subdirectories a
8679# relative path needs to be adjusted first.
8680#
8681# $ac_aux_dir/missing
8682# fails when called from a subdirectory if $ac_aux_dir is relative
8683# $top_srcdir/$ac_aux_dir/missing
8684# fails if $ac_aux_dir is absolute,
8685# fails when called from a subdirectory in a VPATH build with
8686# a relative $ac_aux_dir
8687#
8688# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
8689# are both prefixed by $srcdir. In an in-source build this is usually
0044e680 8690# harmless because $srcdir is '.', but things will broke when you
b9668ba4
AK
8691# start a VPATH build or use an absolute $srcdir.
8692#
8693# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
8694# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
8695# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
8696# and then we would define $MISSING as
8697# MISSING="\${SHELL} $am_aux_dir/missing"
8698# This will work as long as MISSING is not called from configure, because
8699# unfortunately $(top_srcdir) has no meaning in configure.
8700# However there are other variables, like CC, which are often used in
8701# configure, and could therefore not use this "fixed" $ac_aux_dir.
8702#
8703# Another solution, used here, is to always expand $ac_aux_dir to an
8704# absolute PATH. The drawback is that using absolute paths prevent a
8705# configured tree to be moved without reconfiguration.
8706
8707AC_DEFUN([AM_AUX_DIR_EXPAND],
8708[dnl Rely on autoconf to set up CDPATH properly.
8709AC_PREREQ([2.50])dnl
8710# expand $ac_aux_dir to an absolute path
8711am_aux_dir=`cd $ac_aux_dir && pwd`
8712])
8713
8714# AM_CONDITIONAL -*- Autoconf -*-
8715
0044e680 8716# Copyright (C) 1997-2013 Free Software Foundation, Inc.
b9668ba4
AK
8717#
8718# This file is free software; the Free Software Foundation
8719# gives unlimited permission to copy and/or distribute it,
8720# with or without modifications, as long as this notice is preserved.
8721
b9668ba4
AK
8722# AM_CONDITIONAL(NAME, SHELL-CONDITION)
8723# -------------------------------------
8724# Define a conditional.
8725AC_DEFUN([AM_CONDITIONAL],
0044e680
AK
8726[AC_PREREQ([2.52])dnl
8727 m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
8728 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
5c706339
AK
8729AC_SUBST([$1_TRUE])dnl
8730AC_SUBST([$1_FALSE])dnl
8731_AM_SUBST_NOTMAKE([$1_TRUE])dnl
8732_AM_SUBST_NOTMAKE([$1_FALSE])dnl
0fbeb4dc 8733m4_define([_AM_COND_VALUE_$1], [$2])dnl
b9668ba4
AK
8734if $2; then
8735 $1_TRUE=
8736 $1_FALSE='#'
8737else
8738 $1_TRUE='#'
8739 $1_FALSE=
8740fi
8741AC_CONFIG_COMMANDS_PRE(
8742[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
8743 AC_MSG_ERROR([[conditional "$1" was never defined.
8744Usually this means the macro was only invoked conditionally.]])
8745fi])])
8746
0044e680 8747# Copyright (C) 1999-2013 Free Software Foundation, Inc.
b9668ba4
AK
8748#
8749# This file is free software; the Free Software Foundation
8750# gives unlimited permission to copy and/or distribute it,
8751# with or without modifications, as long as this notice is preserved.
8752
b9668ba4 8753
0044e680 8754# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
b9668ba4
AK
8755# written in clear, in which case automake, when reading aclocal.m4,
8756# will think it sees a *use*, and therefore will trigger all it's
8757# C support machinery. Also note that it means that autoscan, seeing
8758# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
8759
8760
8761# _AM_DEPENDENCIES(NAME)
8762# ----------------------
8763# See how the compiler implements dependency checking.
0044e680 8764# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
b9668ba4
AK
8765# We try a few techniques and use that to set a single cache variable.
8766#
8767# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
8768# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
8769# dependency, and given that the user is not expected to run this macro,
8770# just rely on AC_PROG_CC.
8771AC_DEFUN([_AM_DEPENDENCIES],
8772[AC_REQUIRE([AM_SET_DEPDIR])dnl
8773AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
8774AC_REQUIRE([AM_MAKE_INCLUDE])dnl
8775AC_REQUIRE([AM_DEP_TRACK])dnl
8776
0044e680
AK
8777m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
8778 [$1], [CXX], [depcc="$CXX" am_compiler_list=],
8779 [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
8780 [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
8781 [$1], [UPC], [depcc="$UPC" am_compiler_list=],
8782 [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
8783 [depcc="$$1" am_compiler_list=])
b9668ba4
AK
8784
8785AC_CACHE_CHECK([dependency style of $depcc],
8786 [am_cv_$1_dependencies_compiler_type],
8787[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
8788 # We make a subdir and do the tests there. Otherwise we can end up
8789 # making bogus files that we don't know about and never remove. For
8790 # instance it was reported that on HP-UX the gcc test will end up
0044e680
AK
8791 # making a dummy file named 'D' -- because '-MD' means "put the output
8792 # in D".
059850b5 8793 rm -rf conftest.dir
b9668ba4
AK
8794 mkdir conftest.dir
8795 # Copy depcomp to subdir because otherwise we won't find it if we're
8796 # using a relative directory.
8797 cp "$am_depcomp" conftest.dir
8798 cd conftest.dir
8799 # We will build objects and dependencies in a subdirectory because
8800 # it helps to detect inapplicable dependency modes. For instance
8801 # both Tru64's cc and ICC support -MD to output dependencies as a
8802 # side effect of compilation, but ICC will put the dependencies in
8803 # the current directory while Tru64 will put them in the object
8804 # directory.
8805 mkdir sub
8806
8807 am_cv_$1_dependencies_compiler_type=none
8808 if test "$am_compiler_list" = ""; then
8809 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
8810 fi
0fbeb4dc
AK
8811 am__universal=false
8812 m4_case([$1], [CC],
8813 [case " $depcc " in #(
8814 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8815 esac],
8816 [CXX],
8817 [case " $depcc " in #(
8818 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8819 esac])
8820
b9668ba4
AK
8821 for depmode in $am_compiler_list; do
8822 # Setup a source with many dependencies, because some compilers
8823 # like to wrap large dependency lists on column 80 (with \), and
8824 # we should not choose a depcomp mode which is confused by this.
8825 #
8826 # We need to recreate these files for each test, as the compiler may
8827 # overwrite some of them when testing with obscure command lines.
8828 # This happens at least with the AIX C compiler.
8829 : > sub/conftest.c
8830 for i in 1 2 3 4 5 6; do
8831 echo '#include "conftst'$i'.h"' >> sub/conftest.c
0044e680
AK
8832 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
8833 # Solaris 10 /bin/sh.
8834 echo '/* dummy */' > sub/conftst$i.h
b9668ba4
AK
8835 done
8836 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
8837
0044e680 8838 # We check with '-c' and '-o' for the sake of the "dashmstdout"
0fbeb4dc 8839 # mode. It turns out that the SunPro C++ compiler does not properly
0044e680
AK
8840 # handle '-M -o', and we need to detect this. Also, some Intel
8841 # versions had trouble with output in subdirs.
0fbeb4dc
AK
8842 am__obj=sub/conftest.${OBJEXT-o}
8843 am__minus_obj="-o $am__obj"
b9668ba4 8844 case $depmode in
0fbeb4dc
AK
8845 gcc)
8846 # This depmode causes a compiler race in universal mode.
8847 test "$am__universal" = false || continue
8848 ;;
b9668ba4 8849 nosideeffect)
0044e680
AK
8850 # After this tag, mechanisms are not by side-effect, so they'll
8851 # only be used when explicitly requested.
b9668ba4
AK
8852 if test "x$enable_dependency_tracking" = xyes; then
8853 continue
8854 else
8855 break
8856 fi
8857 ;;
059850b5 8858 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
0044e680 8859 # This compiler won't grok '-c -o', but also, the minuso test has
0fbeb4dc
AK
8860 # not run yet. These depmodes are late enough in the game, and
8861 # so weak that their functioning should not be impacted.
8862 am__obj=conftest.${OBJEXT-o}
8863 am__minus_obj=
8864 ;;
b9668ba4
AK
8865 none) break ;;
8866 esac
b9668ba4 8867 if depmode=$depmode \
0fbeb4dc 8868 source=sub/conftest.c object=$am__obj \
b9668ba4 8869 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
0fbeb4dc 8870 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
b9668ba4 8871 >/dev/null 2>conftest.err &&
5c706339 8872 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
b9668ba4 8873 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
0fbeb4dc 8874 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
b9668ba4
AK
8875 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
8876 # icc doesn't choke on unknown options, it will just issue warnings
8877 # or remarks (even with -Werror). So we grep stderr for any message
8878 # that says an option was ignored or not supported.
8879 # When given -MP, icc 7.0 and 7.1 complain thusly:
8880 # icc: Command line warning: ignoring option '-M'; no argument required
8881 # The diagnosis changed in icc 8.0:
8882 # icc: Command line remark: option '-MP' not supported
8883 if (grep 'ignoring option' conftest.err ||
8884 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
8885 am_cv_$1_dependencies_compiler_type=$depmode
8886 break
8887 fi
8888 fi
8889 done
8890
8891 cd ..
8892 rm -rf conftest.dir
8893else
8894 am_cv_$1_dependencies_compiler_type=none
8895fi
8896])
8897AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
8898AM_CONDITIONAL([am__fastdep$1], [
8899 test "x$enable_dependency_tracking" != xno \
8900 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
8901])
8902
8903
8904# AM_SET_DEPDIR
8905# -------------
8906# Choose a directory name for dependency files.
0044e680 8907# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
b9668ba4
AK
8908AC_DEFUN([AM_SET_DEPDIR],
8909[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
8910AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
8911])
8912
8913
8914# AM_DEP_TRACK
8915# ------------
8916AC_DEFUN([AM_DEP_TRACK],
0044e680
AK
8917[AC_ARG_ENABLE([dependency-tracking], [dnl
8918AS_HELP_STRING(
8919 [--enable-dependency-tracking],
8920 [do not reject slow dependency extractors])
8921AS_HELP_STRING(
8922 [--disable-dependency-tracking],
8923 [speeds up one-time build])])
b9668ba4
AK
8924if test "x$enable_dependency_tracking" != xno; then
8925 am_depcomp="$ac_aux_dir/depcomp"
8926 AMDEPBACKSLASH='\'
059850b5 8927 am__nodep='_no'
b9668ba4
AK
8928fi
8929AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
5c706339
AK
8930AC_SUBST([AMDEPBACKSLASH])dnl
8931_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
059850b5
AK
8932AC_SUBST([am__nodep])dnl
8933_AM_SUBST_NOTMAKE([am__nodep])dnl
b9668ba4
AK
8934])
8935
8936# Generate code to set up dependency tracking. -*- Autoconf -*-
8937
0044e680 8938# Copyright (C) 1999-2013 Free Software Foundation, Inc.
b9668ba4
AK
8939#
8940# This file is free software; the Free Software Foundation
8941# gives unlimited permission to copy and/or distribute it,
8942# with or without modifications, as long as this notice is preserved.
8943
b9668ba4
AK
8944
8945# _AM_OUTPUT_DEPENDENCY_COMMANDS
8946# ------------------------------
8947AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
47dc80f6 8948[{
0044e680 8949 # Older Autoconf quotes --file arguments for eval, but not when files
47dc80f6
AK
8950 # are listed without --file. Let's play safe and only enable the eval
8951 # if we detect the quoting.
8952 case $CONFIG_FILES in
8953 *\'*) eval set x "$CONFIG_FILES" ;;
8954 *) set x $CONFIG_FILES ;;
8955 esac
8956 shift
8957 for mf
8958 do
8959 # Strip MF so we end up with the name of the file.
8960 mf=`echo "$mf" | sed -e 's/:.*$//'`
8961 # Check whether this is an Automake generated Makefile or not.
0044e680 8962 # We used to match only the files named 'Makefile.in', but
47dc80f6
AK
8963 # some people rename them; so instead we look at the file content.
8964 # Grep'ing the first line is not enough: some people post-process
8965 # each Makefile.in and add a new line on top of each file to say so.
8966 # Grep'ing the whole file is not good either: AIX grep has a line
8967 # limit of 2048, but all sed's we know have understand at least 4000.
8968 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
8969 dirpart=`AS_DIRNAME("$mf")`
8970 else
8971 continue
8972 fi
8973 # Extract the definition of DEPDIR, am__include, and am__quote
0044e680 8974 # from the Makefile without running 'make'.
47dc80f6
AK
8975 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
8976 test -z "$DEPDIR" && continue
8977 am__include=`sed -n 's/^am__include = //p' < "$mf"`
0044e680 8978 test -z "$am__include" && continue
47dc80f6 8979 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
47dc80f6
AK
8980 # Find all dependency output files, they are included files with
8981 # $(DEPDIR) in their names. We invoke sed twice because it is the
8982 # simplest approach to changing $(DEPDIR) to its actual value in the
8983 # expansion.
8984 for file in `sed -n "
8985 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
0044e680 8986 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
47dc80f6
AK
8987 # Make sure the directory exists.
8988 test -f "$dirpart/$file" && continue
8989 fdir=`AS_DIRNAME(["$file"])`
8990 AS_MKDIR_P([$dirpart/$fdir])
8991 # echo "creating $dirpart/$file"
8992 echo '# dummy' > "$dirpart/$file"
8993 done
b9668ba4 8994 done
47dc80f6 8995}
b9668ba4
AK
8996])# _AM_OUTPUT_DEPENDENCY_COMMANDS
8997
8998
8999# AM_OUTPUT_DEPENDENCY_COMMANDS
9000# -----------------------------
9001# This macro should only be invoked once -- use via AC_REQUIRE.
9002#
9003# This code is only required when automatic dependency tracking
0044e680 9004# is enabled. FIXME. This creates each '.P' file that we will
b9668ba4
AK
9005# need in order to bootstrap the dependency handling code.
9006AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9007[AC_CONFIG_COMMANDS([depfiles],
9008 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
9009 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
9010])
9011
9012# Do all the work for Automake. -*- Autoconf -*-
9013
0044e680 9014# Copyright (C) 1996-2013 Free Software Foundation, Inc.
b9668ba4
AK
9015#
9016# This file is free software; the Free Software Foundation
9017# gives unlimited permission to copy and/or distribute it,
9018# with or without modifications, as long as this notice is preserved.
9019
b9668ba4
AK
9020# This macro actually does too much. Some checks are only needed if
9021# your package does certain things. But this isn't really a big deal.
9022
0044e680
AK
9023dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
9024m4_define([AC_PROG_CC],
9025m4_defn([AC_PROG_CC])
9026[_AM_PROG_CC_C_O
9027])
9028
b9668ba4
AK
9029# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9030# AM_INIT_AUTOMAKE([OPTIONS])
9031# -----------------------------------------------
9032# The call with PACKAGE and VERSION arguments is the old style
9033# call (pre autoconf-2.50), which is being phased out. PACKAGE
9034# and VERSION should now be passed to AC_INIT and removed from
9035# the call to AM_INIT_AUTOMAKE.
9036# We support both call styles for the transition. After
9037# the next Automake release, Autoconf can make the AC_INIT
9038# arguments mandatory, and then we can depend on a new Autoconf
9039# release and drop the old call support.
9040AC_DEFUN([AM_INIT_AUTOMAKE],
0044e680 9041[AC_PREREQ([2.65])dnl
b9668ba4
AK
9042dnl Autoconf wants to disallow AM_ names. We explicitly allow
9043dnl the ones we care about.
9044m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9045AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9046AC_REQUIRE([AC_PROG_INSTALL])dnl
5c706339
AK
9047if test "`cd $srcdir && pwd`" != "`pwd`"; then
9048 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9049 # is not polluted with repeated "-I."
9050 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9051 # test to see if srcdir already configured
9052 if test -f $srcdir/config.status; then
9053 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9054 fi
b9668ba4
AK
9055fi
9056
9057# test whether we have cygpath
9058if test -z "$CYGPATH_W"; then
9059 if (cygpath --version) >/dev/null 2>/dev/null; then
9060 CYGPATH_W='cygpath -w'
9061 else
9062 CYGPATH_W=echo
9063 fi
9064fi
9065AC_SUBST([CYGPATH_W])
9066
9067# Define the identity of the package.
9068dnl Distinguish between old-style and new-style calls.
9069m4_ifval([$2],
0044e680
AK
9070[AC_DIAGNOSE([obsolete],
9071 [$0: two- and three-arguments forms are deprecated.])
9072m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
b9668ba4
AK
9073 AC_SUBST([PACKAGE], [$1])dnl
9074 AC_SUBST([VERSION], [$2])],
9075[_AM_SET_OPTIONS([$1])dnl
5c706339 9076dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
0044e680
AK
9077m4_if(
9078 m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
9079 [ok:ok],,
5c706339 9080 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
b9668ba4
AK
9081 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9082 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9083
9084_AM_IF_OPTION([no-define],,
0044e680
AK
9085[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
9086 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
b9668ba4
AK
9087
9088# Some tools Automake needs.
9089AC_REQUIRE([AM_SANITY_CHECK])dnl
9090AC_REQUIRE([AC_ARG_PROGRAM])dnl
0044e680
AK
9091AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
9092AM_MISSING_PROG([AUTOCONF], [autoconf])
9093AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
9094AM_MISSING_PROG([AUTOHEADER], [autoheader])
9095AM_MISSING_PROG([MAKEINFO], [makeinfo])
0fbeb4dc
AK
9096AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9097AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
0044e680
AK
9098AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9099# For better backward compatibility. To be removed once Automake 1.9.x
9100# dies out for good. For more background, see:
9101# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
9102# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
9103AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
b9668ba4
AK
9104# We need awk for the "check" target. The system "awk" is bad on
9105# some platforms.
9106AC_REQUIRE([AC_PROG_AWK])dnl
9107AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9108AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9109_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
0fbeb4dc
AK
9110 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9111 [_AM_PROG_TAR([v7])])])
b9668ba4
AK
9112_AM_IF_OPTION([no-dependencies],,
9113[AC_PROVIDE_IFELSE([AC_PROG_CC],
0044e680
AK
9114 [_AM_DEPENDENCIES([CC])],
9115 [m4_define([AC_PROG_CC],
9116 m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
b9668ba4 9117AC_PROVIDE_IFELSE([AC_PROG_CXX],
0044e680
AK
9118 [_AM_DEPENDENCIES([CXX])],
9119 [m4_define([AC_PROG_CXX],
9120 m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
5c706339 9121AC_PROVIDE_IFELSE([AC_PROG_OBJC],
0044e680
AK
9122 [_AM_DEPENDENCIES([OBJC])],
9123 [m4_define([AC_PROG_OBJC],
9124 m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
9125AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
9126 [_AM_DEPENDENCIES([OBJCXX])],
9127 [m4_define([AC_PROG_OBJCXX],
9128 m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
b9668ba4 9129])
0044e680
AK
9130AC_REQUIRE([AM_SILENT_RULES])dnl
9131dnl The testsuite driver may need to know about EXEEXT, so add the
9132dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
9133dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
0fbeb4dc
AK
9134AC_CONFIG_COMMANDS_PRE(dnl
9135[m4_provide_if([_AM_COMPILER_EXEEXT],
9136 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
b9668ba4 9137
0044e680
AK
9138# POSIX will say in a future version that running "rm -f" with no argument
9139# is OK; and we want to be able to make that assumption in our Makefile
9140# recipes. So use an aggressive probe to check that the usage we want is
9141# actually supported "in the wild" to an acceptable degree.
9142# See automake bug#10828.
9143# To make any issue more visible, cause the running configure to be aborted
9144# by default if the 'rm' program in use doesn't match our expectations; the
9145# user can still override this though.
9146if rm -f && rm -fr && rm -rf; then : OK; else
9147 cat >&2 <<'END'
9148Oops!
9149
9150Your 'rm' program seems unable to run without file operands specified
9151on the command line, even when the '-f' option is present. This is contrary
9152to the behaviour of most rm programs out there, and not conforming with
9153the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
9154
9155Please tell bug-automake@gnu.org about your system, including the value
9156of your $PATH and any error possibly output before this message. This
9157can help us improve future automake versions.
9158
9159END
9160 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
9161 echo 'Configuration will proceed anyway, since you have set the' >&2
9162 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
9163 echo >&2
9164 else
9165 cat >&2 <<'END'
9166Aborting the configuration process, to ensure you take notice of the issue.
9167
9168You can download and install GNU coreutils to get an 'rm' implementation
9169that behaves properly: <http://www.gnu.org/software/coreutils/>.
9170
9171If you want to complete the configuration process using your problematic
9172'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
9173to "yes", and re-run configure.
9174
9175END
9176 AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
9177 fi
9178fi])
9179
9180dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
0fbeb4dc
AK
9181dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9182dnl mangled by Autoconf and run in a shell conditional statement.
9183m4_define([_AC_COMPILER_EXEEXT],
9184m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9185
b9668ba4
AK
9186# When config.status generates a header, we must update the stamp-h file.
9187# This file resides in the same directory as the config header
9188# that is generated. The stamp files are numbered to have different names.
9189
9190# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9191# loop where config.status creates the headers, so we can generate
9192# our stamp files there.
9193AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9194[# Compute $1's index in $config_headers.
5c706339 9195_am_arg=$1
b9668ba4
AK
9196_am_stamp_count=1
9197for _am_header in $config_headers :; do
9198 case $_am_header in
5c706339 9199 $_am_arg | $_am_arg:* )
b9668ba4
AK
9200 break ;;
9201 * )
9202 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9203 esac
9204done
5c706339 9205echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
b9668ba4 9206
0044e680 9207# Copyright (C) 2001-2013 Free Software Foundation, Inc.
b9668ba4
AK
9208#
9209# This file is free software; the Free Software Foundation
9210# gives unlimited permission to copy and/or distribute it,
9211# with or without modifications, as long as this notice is preserved.
9212
9213# AM_PROG_INSTALL_SH
9214# ------------------
9215# Define $install_sh.
9216AC_DEFUN([AM_PROG_INSTALL_SH],
9217[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
0fbeb4dc
AK
9218if test x"${install_sh}" != xset; then
9219 case $am_aux_dir in
9220 *\ * | *\ *)
9221 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9222 *)
9223 install_sh="\${SHELL} $am_aux_dir/install-sh"
9224 esac
9225fi
0044e680 9226AC_SUBST([install_sh])])
b9668ba4 9227
0044e680 9228# Copyright (C) 2003-2013 Free Software Foundation, Inc.
b9668ba4
AK
9229#
9230# This file is free software; the Free Software Foundation
9231# gives unlimited permission to copy and/or distribute it,
9232# with or without modifications, as long as this notice is preserved.
9233
b9668ba4
AK
9234# Check whether the underlying file-system supports filenames
9235# with a leading dot. For instance MS-DOS doesn't.
9236AC_DEFUN([AM_SET_LEADING_DOT],
9237[rm -rf .tst 2>/dev/null
9238mkdir .tst 2>/dev/null
9239if test -d .tst; then
9240 am__leading_dot=.
9241else
9242 am__leading_dot=_
9243fi
9244rmdir .tst 2>/dev/null
9245AC_SUBST([am__leading_dot])])
9246
9247# Check to see how 'make' treats includes. -*- Autoconf -*-
9248
0044e680 9249# Copyright (C) 2001-2013 Free Software Foundation, Inc.
b9668ba4
AK
9250#
9251# This file is free software; the Free Software Foundation
9252# gives unlimited permission to copy and/or distribute it,
9253# with or without modifications, as long as this notice is preserved.
9254
b9668ba4
AK
9255# AM_MAKE_INCLUDE()
9256# -----------------
9257# Check to see how make treats includes.
9258AC_DEFUN([AM_MAKE_INCLUDE],
9259[am_make=${MAKE-make}
9260cat > confinc << 'END'
9261am__doit:
0fbeb4dc 9262 @echo this is the am__doit target
b9668ba4
AK
9263.PHONY: am__doit
9264END
9265# If we don't find an include directive, just comment out the code.
9266AC_MSG_CHECKING([for style of include used by $am_make])
9267am__include="#"
9268am__quote=
9269_am_result=none
9270# First try GNU make style include.
9271echo "include confinc" > confmf
0044e680 9272# Ignore all kinds of additional output from 'make'.
0fbeb4dc
AK
9273case `$am_make -s -f confmf 2> /dev/null` in #(
9274*the\ am__doit\ target*)
9275 am__include=include
9276 am__quote=
9277 _am_result=GNU
9278 ;;
9279esac
b9668ba4
AK
9280# Now try BSD make style include.
9281if test "$am__include" = "#"; then
9282 echo '.include "confinc"' > confmf
0fbeb4dc
AK
9283 case `$am_make -s -f confmf 2> /dev/null` in #(
9284 *the\ am__doit\ target*)
9285 am__include=.include
9286 am__quote="\""
9287 _am_result=BSD
9288 ;;
9289 esac
b9668ba4
AK
9290fi
9291AC_SUBST([am__include])
9292AC_SUBST([am__quote])
9293AC_MSG_RESULT([$_am_result])
9294rm -f confinc confmf
9295])
9296
9297# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9298
0044e680 9299# Copyright (C) 1997-2013 Free Software Foundation, Inc.
b9668ba4
AK
9300#
9301# This file is free software; the Free Software Foundation
9302# gives unlimited permission to copy and/or distribute it,
9303# with or without modifications, as long as this notice is preserved.
9304
b9668ba4
AK
9305# AM_MISSING_PROG(NAME, PROGRAM)
9306# ------------------------------
9307AC_DEFUN([AM_MISSING_PROG],
9308[AC_REQUIRE([AM_MISSING_HAS_RUN])
9309$1=${$1-"${am_missing_run}$2"}
9310AC_SUBST($1)])
9311
b9668ba4
AK
9312# AM_MISSING_HAS_RUN
9313# ------------------
0044e680
AK
9314# Define MISSING if not defined so far and test if it is modern enough.
9315# If it is, set am_missing_run to use it, otherwise, to nothing.
b9668ba4
AK
9316AC_DEFUN([AM_MISSING_HAS_RUN],
9317[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
5c706339 9318AC_REQUIRE_AUX_FILE([missing])dnl
0fbeb4dc
AK
9319if test x"${MISSING+set}" != xset; then
9320 case $am_aux_dir in
9321 *\ * | *\ *)
9322 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9323 *)
9324 MISSING="\${SHELL} $am_aux_dir/missing" ;;
9325 esac
9326fi
b9668ba4 9327# Use eval to expand $SHELL
0044e680
AK
9328if eval "$MISSING --is-lightweight"; then
9329 am_missing_run="$MISSING "
b9668ba4
AK
9330else
9331 am_missing_run=
0044e680 9332 AC_MSG_WARN(['missing' script is too old or missing])
b9668ba4
AK
9333fi
9334])
9335
b9668ba4
AK
9336# Helper functions for option handling. -*- Autoconf -*-
9337
0044e680 9338# Copyright (C) 2001-2013 Free Software Foundation, Inc.
b9668ba4
AK
9339#
9340# This file is free software; the Free Software Foundation
9341# gives unlimited permission to copy and/or distribute it,
9342# with or without modifications, as long as this notice is preserved.
9343
b9668ba4
AK
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],
0044e680 9353[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
b9668ba4
AK
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
0044e680
AK
9367# Copyright (C) 1999-2013 Free Software Foundation, Inc.
9368#
9369# This file is free software; the Free Software Foundation
9370# gives unlimited permission to copy and/or distribute it,
9371# with or without modifications, as long as this notice is preserved.
9372
9373# _AM_PROG_CC_C_O
9374# ---------------
9375# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
9376# to automatically call this.
9377AC_DEFUN([_AM_PROG_CC_C_O],
9378[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9379AC_REQUIRE_AUX_FILE([compile])dnl
9380AC_LANG_PUSH([C])dnl
9381AC_CACHE_CHECK(
9382 [whether $CC understands -c and -o together],
9383 [am_cv_prog_cc_c_o],
9384 [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
9385 # Make sure it works both with $CC and with simple cc.
9386 # Following AC_PROG_CC_C_O, we do the test twice because some
9387 # compilers refuse to overwrite an existing .o file with -o,
9388 # though they will create one.
9389 am_cv_prog_cc_c_o=yes
9390 for am_i in 1 2; do
9391 if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
9392 && test -f conftest2.$ac_objext; then
9393 : OK
9394 else
9395 am_cv_prog_cc_c_o=no
9396 break
9397 fi
9398 done
9399 rm -f core conftest*
9400 unset am_i])
9401if test "$am_cv_prog_cc_c_o" != yes; then
9402 # Losing compiler, so override with the script.
9403 # FIXME: It is wrong to rewrite CC.
9404 # But if we don't then we get into trouble of one sort or another.
9405 # A longer-term fix would be to have automake use am__CC in this case,
9406 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
9407 CC="$am_aux_dir/compile $CC"
9408fi
9409AC_LANG_POP([C])])
9410
9411# For backward compatibility.
9412AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
b9668ba4 9413
0044e680 9414# Copyright (C) 2001-2013 Free Software Foundation, Inc.
b9668ba4
AK
9415#
9416# This file is free software; the Free Software Foundation
9417# gives unlimited permission to copy and/or distribute it,
9418# with or without modifications, as long as this notice is preserved.
9419
0044e680
AK
9420# AM_RUN_LOG(COMMAND)
9421# -------------------
9422# Run COMMAND, save the exit status in ac_status, and log it.
9423# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
9424AC_DEFUN([AM_RUN_LOG],
9425[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
9426 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
9427 ac_status=$?
9428 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
9429 (exit $ac_status); }])
9430
9431# Check to make sure that the build environment is sane. -*- Autoconf -*-
9432
9433# Copyright (C) 1996-2013 Free Software Foundation, Inc.
9434#
9435# This file is free software; the Free Software Foundation
9436# gives unlimited permission to copy and/or distribute it,
9437# with or without modifications, as long as this notice is preserved.
b9668ba4
AK
9438
9439# AM_SANITY_CHECK
9440# ---------------
9441AC_DEFUN([AM_SANITY_CHECK],
9442[AC_MSG_CHECKING([whether build environment is sane])
0fbeb4dc
AK
9443# Reject unsafe characters in $srcdir or the absolute working directory
9444# name. Accept space and tab only in the latter.
9445am_lf='
9446'
9447case `pwd` in
9448 *[[\\\"\#\$\&\'\`$am_lf]]*)
9449 AC_MSG_ERROR([unsafe absolute working directory name]);;
9450esac
9451case $srcdir in
9452 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
0044e680 9453 AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
0fbeb4dc
AK
9454esac
9455
0044e680 9456# Do 'set' in a subshell so we don't clobber the current shell's
b9668ba4
AK
9457# arguments. Must try -L first in case configure is actually a
9458# symlink; some systems play weird games with the mod time of symlinks
9459# (eg FreeBSD returns the mod time of the symlink's containing
9460# directory).
9461if (
0044e680
AK
9462 am_has_slept=no
9463 for am_try in 1 2; do
9464 echo "timestamp, slept: $am_has_slept" > conftest.file
9465 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
9466 if test "$[*]" = "X"; then
9467 # -L didn't work.
9468 set X `ls -t "$srcdir/configure" conftest.file`
9469 fi
9470 if test "$[*]" != "X $srcdir/configure conftest.file" \
9471 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9472
9473 # If neither matched, then we have a broken ls. This can happen
9474 # if, for instance, CONFIG_SHELL is bash and it inherits a
9475 # broken ls alias from the environment. This has actually
9476 # happened. Such a system could not be considered "sane".
9477 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9478 alias in your environment])
9479 fi
9480 if test "$[2]" = conftest.file || test $am_try -eq 2; then
9481 break
9482 fi
9483 # Just in case.
9484 sleep 1
9485 am_has_slept=yes
9486 done
b9668ba4
AK
9487 test "$[2]" = conftest.file
9488 )
9489then
9490 # Ok.
9491 :
9492else
9493 AC_MSG_ERROR([newly created file is older than distributed files!
9494Check your system clock])
9495fi
0044e680
AK
9496AC_MSG_RESULT([yes])
9497# If we didn't sleep, we still need to ensure time stamps of config.status and
9498# generated files are strictly newer.
9499am_sleep_pid=
9500if grep 'slept: no' conftest.file >/dev/null 2>&1; then
9501 ( sleep 1 ) &
9502 am_sleep_pid=$!
9503fi
9504AC_CONFIG_COMMANDS_PRE(
9505 [AC_MSG_CHECKING([that generated files are newer than configure])
9506 if test -n "$am_sleep_pid"; then
9507 # Hide warnings about reused PIDs.
9508 wait $am_sleep_pid 2>/dev/null
9509 fi
9510 AC_MSG_RESULT([done])])
9511rm -f conftest.file
9512])
b9668ba4 9513
0044e680 9514# Copyright (C) 2009-2013 Free Software Foundation, Inc.
b9668ba4
AK
9515#
9516# This file is free software; the Free Software Foundation
9517# gives unlimited permission to copy and/or distribute it,
9518# with or without modifications, as long as this notice is preserved.
9519
0044e680
AK
9520# AM_SILENT_RULES([DEFAULT])
9521# --------------------------
9522# Enable less verbose build rules; with the default set to DEFAULT
9523# ("yes" being less verbose, "no" or empty being verbose).
9524AC_DEFUN([AM_SILENT_RULES],
9525[AC_ARG_ENABLE([silent-rules], [dnl
9526AS_HELP_STRING(
9527 [--enable-silent-rules],
9528 [less verbose build output (undo: "make V=1")])
9529AS_HELP_STRING(
9530 [--disable-silent-rules],
9531 [verbose build output (undo: "make V=0")])dnl
9532])
9533case $enable_silent_rules in @%:@ (((
9534 yes) AM_DEFAULT_VERBOSITY=0;;
9535 no) AM_DEFAULT_VERBOSITY=1;;
9536 *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
9537esac
9538dnl
9539dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
9540dnl do not support nested variable expansions.
9541dnl See automake bug#9928 and bug#10237.
9542am_make=${MAKE-make}
9543AC_CACHE_CHECK([whether $am_make supports nested variables],
9544 [am_cv_make_support_nested_variables],
9545 [if AS_ECHO([['TRUE=$(BAR$(V))
9546BAR0=false
9547BAR1=true
9548V=1
9549am__doit:
9550 @$(TRUE)
9551.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
9552 am_cv_make_support_nested_variables=yes
9553else
9554 am_cv_make_support_nested_variables=no
9555fi])
9556if test $am_cv_make_support_nested_variables = yes; then
9557 dnl Using '$V' instead of '$(V)' breaks IRIX make.
9558 AM_V='$(V)'
9559 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
9560else
9561 AM_V=$AM_DEFAULT_VERBOSITY
9562 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
9563fi
9564AC_SUBST([AM_V])dnl
9565AM_SUBST_NOTMAKE([AM_V])dnl
9566AC_SUBST([AM_DEFAULT_V])dnl
9567AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
9568AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
9569AM_BACKSLASH='\'
9570AC_SUBST([AM_BACKSLASH])dnl
9571_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
9572])
9573
9574# Copyright (C) 2001-2013 Free Software Foundation, Inc.
9575#
9576# This file is free software; the Free Software Foundation
9577# gives unlimited permission to copy and/or distribute it,
9578# with or without modifications, as long as this notice is preserved.
059850b5 9579
b9668ba4
AK
9580# AM_PROG_INSTALL_STRIP
9581# ---------------------
0044e680 9582# One issue with vendor 'install' (even GNU) is that you can't
b9668ba4
AK
9583# specify the program used to strip binaries. This is especially
9584# annoying in cross-compiling environments, where the build's strip
9585# is unlikely to handle the host's binaries.
9586# Fortunately install-sh will honor a STRIPPROG variable, so we
0044e680 9587# always use install-sh in "make install-strip", and initialize
b9668ba4
AK
9588# STRIPPROG with the value of the STRIP variable (set by the user).
9589AC_DEFUN([AM_PROG_INSTALL_STRIP],
9590[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
0044e680
AK
9591# Installed binaries are usually stripped using 'strip' when the user
9592# run "make install-strip". However 'strip' might not be the right
b9668ba4 9593# tool to use in cross-compilation environments, therefore Automake
0044e680
AK
9594# will honor the 'STRIP' environment variable to overrule this program.
9595dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
b9668ba4
AK
9596if test "$cross_compiling" != no; then
9597 AC_CHECK_TOOL([STRIP], [strip], :)
9598fi
5c706339 9599INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
b9668ba4
AK
9600AC_SUBST([INSTALL_STRIP_PROGRAM])])
9601
0044e680 9602# Copyright (C) 2006-2013 Free Software Foundation, Inc.
5c706339
AK
9603#
9604# This file is free software; the Free Software Foundation
9605# gives unlimited permission to copy and/or distribute it,
9606# with or without modifications, as long as this notice is preserved.
9607
9608# _AM_SUBST_NOTMAKE(VARIABLE)
9609# ---------------------------
9610# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
9611# This macro is traced by Automake.
9612AC_DEFUN([_AM_SUBST_NOTMAKE])
9613
0fbeb4dc 9614# AM_SUBST_NOTMAKE(VARIABLE)
059850b5 9615# --------------------------
0fbeb4dc
AK
9616# Public sister of _AM_SUBST_NOTMAKE.
9617AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
9618
b9668ba4
AK
9619# Check how to create a tarball. -*- Autoconf -*-
9620
0044e680 9621# Copyright (C) 2004-2013 Free Software Foundation, Inc.
b9668ba4
AK
9622#
9623# This file is free software; the Free Software Foundation
9624# gives unlimited permission to copy and/or distribute it,
9625# with or without modifications, as long as this notice is preserved.
9626
b9668ba4
AK
9627# _AM_PROG_TAR(FORMAT)
9628# --------------------
9629# Check how to create a tarball in format FORMAT.
0044e680 9630# FORMAT should be one of 'v7', 'ustar', or 'pax'.
b9668ba4
AK
9631#
9632# Substitute a variable $(am__tar) that is a command
9633# writing to stdout a FORMAT-tarball containing the directory
9634# $tardir.
9635# tardir=directory && $(am__tar) > result.tar
9636#
9637# Substitute a variable $(am__untar) that extract such
9638# a tarball read from stdin.
9639# $(am__untar) < result.tar
0044e680 9640#
b9668ba4 9641AC_DEFUN([_AM_PROG_TAR],
059850b5
AK
9642[# Always define AMTAR for backward compatibility. Yes, it's still used
9643# in the wild :-( We should find a proper way to deprecate it ...
9644AC_SUBST([AMTAR], ['$${TAR-tar}'])
0044e680
AK
9645
9646# We'll loop over all known methods to create a tar archive until one works.
b9668ba4 9647_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
b9668ba4 9648
0044e680
AK
9649m4_if([$1], [v7],
9650 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
9651
9652 [m4_case([$1],
9653 [ustar],
9654 [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
9655 # There is notably a 21 bits limit for the UID and the GID. In fact,
9656 # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
9657 # and bug#13588).
9658 am_max_uid=2097151 # 2^21 - 1
9659 am_max_gid=$am_max_uid
9660 # The $UID and $GID variables are not portable, so we need to resort
9661 # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
9662 # below are definitely unexpected, so allow the users to see them
9663 # (that is, avoid stderr redirection).
9664 am_uid=`id -u || echo unknown`
9665 am_gid=`id -g || echo unknown`
9666 AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
9667 if test $am_uid -le $am_max_uid; then
9668 AC_MSG_RESULT([yes])
9669 else
9670 AC_MSG_RESULT([no])
9671 _am_tools=none
9672 fi
9673 AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
9674 if test $am_gid -le $am_max_gid; then
9675 AC_MSG_RESULT([yes])
9676 else
9677 AC_MSG_RESULT([no])
9678 _am_tools=none
9679 fi],
b9668ba4 9680
0044e680
AK
9681 [pax],
9682 [],
9683
9684 [m4_fatal([Unknown tar format])])
9685
9686 AC_MSG_CHECKING([how to create a $1 tar archive])
9687
9688 # Go ahead even if we have the value already cached. We do so because we
9689 # need to set the values for the 'am__tar' and 'am__untar' variables.
9690 _am_tools=${am_cv_prog_tar_$1-$_am_tools}
9691
9692 for _am_tool in $_am_tools; do
9693 case $_am_tool in
9694 gnutar)
9695 for _am_tar in tar gnutar gtar; do
9696 AM_RUN_LOG([$_am_tar --version]) && break
9697 done
9698 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
9699 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
9700 am__untar="$_am_tar -xf -"
9701 ;;
9702 plaintar)
9703 # Must skip GNU tar: if it does not support --format= it doesn't create
9704 # ustar tarball either.
9705 (tar --version) >/dev/null 2>&1 && continue
9706 am__tar='tar chf - "$$tardir"'
9707 am__tar_='tar chf - "$tardir"'
9708 am__untar='tar xf -'
9709 ;;
9710 pax)
9711 am__tar='pax -L -x $1 -w "$$tardir"'
9712 am__tar_='pax -L -x $1 -w "$tardir"'
9713 am__untar='pax -r'
9714 ;;
9715 cpio)
9716 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
9717 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
9718 am__untar='cpio -i -H $1 -d'
9719 ;;
9720 none)
9721 am__tar=false
9722 am__tar_=false
9723 am__untar=false
9724 ;;
9725 esac
9726
9727 # If the value was cached, stop now. We just wanted to have am__tar
9728 # and am__untar set.
9729 test -n "${am_cv_prog_tar_$1}" && break
9730
9731 # tar/untar a dummy directory, and stop if the command works.
9732 rm -rf conftest.dir
9733 mkdir conftest.dir
9734 echo GrepMe > conftest.dir/file
9735 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
9736 rm -rf conftest.dir
9737 if test -s conftest.tar; then
9738 AM_RUN_LOG([$am__untar <conftest.tar])
9739 AM_RUN_LOG([cat conftest.dir/file])
9740 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
9741 fi
9742 done
b9668ba4 9743 rm -rf conftest.dir
b9668ba4 9744
0044e680
AK
9745 AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
9746 AC_MSG_RESULT([$am_cv_prog_tar_$1])])
9747
b9668ba4
AK
9748AC_SUBST([am__tar])
9749AC_SUBST([am__untar])
9750]) # _AM_PROG_TAR
9751
This page took 1.524373 seconds and 5 git commands to generate.